機械学習とディープラーニング(深層学習)の違いからわかる、具体的な用途と適用範囲
生成AIの登場および一般への浸透も起爆剤となり、AI分野の技術革新はますます活発化しています。この流れは、ITエンジニアなどの開発者にとって他人事と捉えることは難しいでしょう。AI技術の進化への対応は、これからのエンジニアにとってマストともいえる課題です。
AI技術に関する学びを段階的に深めていくために重要となるのは、やはり基礎となる部分です。AI開発の核心的な要素といえる「機械学習」「ディープラーニング(深層学習)」とはなにか、これら基礎知識の理解を盤石とすべく、両者の違いやディープラーニングの種類などについて解説します。
POINT
- 機械学習は比較的単純なアルゴリズムにて、与えられたデータを解析してパターンを学習する技術
- ディープラーニング(深層学習)は人間の神経細胞を模倣した「ニューラルネットワーク」を用いる、機械学習の一分野に該当する技術
- 機械学習は構造化データの分析に強く、データ予測や分類などに使用されるのに対し、ディープラーニングは画像や音声、テキストなど非構造化データの解析に優れ、音声認識や画像認識などに使用される
Contents
機械学習とディープラーニング(深層学習)の違い
AI技術を支える代表的な学習・分析手法である「機械学習」と「ディープラーニング」はしばしば混同されますが、両者が意味する技術や手法は明確に異なります。
- 機械学習(Machine Learning):コンピュータやAIがデータを解析し、そのパターンを学習することで、タスクの実行などのパフォーマンスを向上させる技術
- ディープラーニング(Deep Learning):人間の神経細胞の仕組みをまねたニューラルネットワークを用いて、データを処理・解析する技術
つまり関係性としては、ディープラーニングは機械学習の一分野の位置づけです。
機械学習とディープラーニングの主な違いは、使用するアルゴリズムとデータ処理の方法にあります。機械学習では比較的単純なアルゴリズムが用いられ、与えられたデータからパターンを学習して予測や判断を実行します。一方、ディープラーニングは複雑なニューラルネットワークを用い、非構造化データなどを対象とする高精度な分析に活用されます。
また、両者の大きな違いに、特徴量の指定の有無も挙げられます。なお特徴量とは、分析対象となるデータの特徴を数値などで表したものです。
- 機械学習:学習を行わせる人間側が特徴量を指定する
- ディープラーニング:特徴量の指定も機械側が判断して実行する
シンプルなアルゴリズムが用いられることが多い機械学習では、人間が特定の特徴量を選択してモデルを構築します。一方、ディープラーニングでは画像、音声、テキストなどの大量のデータから自動的に特徴量を抽出します。
なお、近年のビッグトレンドになっている生成AIにもディープラーニングの手法が反映されており、AIが自ら学習を重ねて新たな画像やテキストなどを生みだしています。
これらの特徴から、機械学習とディープラーニングの違いは次のようにまとめられます。
機械学習 | ディープラーニング | |
---|---|---|
定義 | AIがデータを解析し、パターンを学習することで、タスク実行などのパフォーマンスを向上させる技術 | 多層のニューラルネットワークを活用して、大量のデータを処理・解析する技術 |
具体的な用途 | 与えられたデータに対し、機械学習アルゴリズムが予測や分類を行う | 大量のデータの取り扱いに優れ、音声認識や画像認識、自然言語処理などの分野に応用される |
適用範囲 | 構造化データに強い | 非構造化データ(画像、音声、テキスト)に強い |
データ量と 計算資源 |
比較的少ないデータと計算資源で動作する | 大量のデータと高性能な計算資源が必要になる |
特徴量 | 人間が特徴量を設計する | 自動的に特徴量を抽出する |
本記事では、機械学習とディープラーニング、両者の手法をさらに深掘りしていきます。
機械学習とは
AIなどコンピュータに学習させる機械学習の主な手法には、「教師あり学習」「教師なし学習」「強化学習」の3種類があります。
教師あり学習 | 正解となるデータの結果とともに学習データを与え、データから関係性を学習する |
---|---|
教師なし学習 | 正解となるデータの結果を与えずに、データの類似点や相違点を学習させ、データ同士の関連を学習する |
強化学習 | ある行動をしたときにどのような結果になったのか、フィードバックを繰り返し学習させる。たとえば目的にマッチするよい結果が得られた際にはプラスの得点を、悪い結果が得られたときにはマイナスの得点を与え、得点を最大化できる行動パターンを導き出す |
教師あり学習
教師あり学習では、たとえば画像が「リンゴ」か「バナナ」かを判別させるために、画像にラベルを付与し学習させることで、コンピュータはリンゴの特徴を把握できるようになり、新たに与えられた画像がどちらに当てはまるのかを導き出せるようになります。
教師あり学習は、具体的には次のような分野に用いられています。
- 不正行為の検出
- 株価の予測
- 気象分析
- 機械の故障予測
- 電子メールのスパム判定
このように、教師あり学習は正解が明確であるものに多く活用されています。不正行為の検出や電子メールのスパム判定などがその代表例です。また、株価や気象予測など、学習に利用可能な過去データが多数そろっている分析にも用いられています。
教師なし学習
教師なし学習では、正解のない学習データを大量に与えることで、機械がデータの特徴やパターンを認識し、AI自身が正解・不正解を判断できるようになります。
教師なし学習は、具体的には次のような分野に用いられています。
- 自動運転のAI
- 人工歯のデザイン
- 購買データの分析
このように、教師なし学習はデータの特徴から各データを自動でグルーピングするサービスに活用されています。
たとえば自動運転では、対向車や信号、標識、歩行者など、さまざまなものを認識・識別しなければなりません。しかし教師あり学習の手法では、学習データの用意に膨大な時間と作業が必要です。そこで、正解・不正解のデータの用意が求められない教師なし学習が利用されているのです。
強化学習
強化学習では、機械が行動を繰り返し、それに評価をフィードバックすることで適切な行動を判断できるようになります。
たとえば、マウスが「ボタンを押すと餌を受け取れる」仕組みを、実際の行動の繰り返しから理解するように、特定の環境のなかで、目的として設定された報酬(評価)を得るために、反復行動によって報酬を最大化するための行動を学習するプロセスが強化学習にあたります。
強化学習は、具体的には次のような分野に用いられています。
- AlphaGo(AIを活用した囲碁)
- レコメンデーション
- 完全自動運転を実現する自動車の開発
- ゲーム開発のテスト作業
強化学習が注目されるようになったきっかけのひとつであるAlphaGoは、教師あり学習と強化学習を組み合わせることで最適な指し手を導き出す囲碁のAIです。
また、広告や動画配信サービスなどで「おすすめ」が表示されるレコメンデーションや、完全自動運転自動車の開発、ゲーム開発におけるテスト作業の効率化にも強化学習が用いられています。
ディープラーニング(深層学習)とは
ディープラーニング(深層学習)は、前述した基本的な機械学習をより高度化させた機械学習の手法で、ヒトの神経細胞(ニューロン)の仕組みを再現した技術であるニューラルネットワークを用いることが特徴です。
ヒトの脳内にある神経細胞は、外部の情報をキャッチアップし、情報を統合して結論を出力する、いわば高度な並列コンピュータに類似します。
多層のニューラルネットワークによって学習プロセスを高精度化するディープラーニングは、この機序を参考に開発されたものであり、具体的には次のような分野に用いられています。
画像認識 | 大量の画像データから分類対象の共通点などの規則性(特徴量)を見つけ出し、そのパターンに従って新たな画像データを分類する |
---|---|
音声認識 | 音声データの特徴を抽出してデータ化し、さらに音声を母音や子音などに処理して学習する。それらに加え、発音辞書や言語モデルを用いることで単語や文章を認識するようになる |
自然言語処理 | 日本語など自然言語データから、人間が使用する言語を学習し、情報を抽出する |
データ予測 | 過去の実績やデータから学習し予測モデルを構築する |
画像認識
画像認識は、画像から物体やシーン、領域などを抽出して分類する技術です。スマートフォンの顔認証システムなどに用いられており、画像内の特徴を自動で抽出・分類します。
画像に何が写っているのかをAIが理解するためには、大量の画像データを与えて学習させるプロセスが必要です。たとえば、人間と信号機の写真を見分ける作業をさせるために、それぞれの画像データを与えてそれぞれの特徴・規則性を発見させるようにします。
特徴を把握したAIは、その後新たな画像データを与えられた際には、その画像に写っているものが人間なのか信号機なのか、特徴から分類できるようになります。
音声認識
音声認識は、音声データをテキストデータに変換し活用する技術です。ヒトの音声に自動で対応するスマートスピーカーなどに用いられており、次の4つのプロセスを経て音声を認識します。
音響分析 |
|
---|---|
音響モデル |
|
発言辞書 |
|
言語モデル |
|
これらの工程を経て、AIは音声を認識し、テキストデータに変換できるようになります。
自然言語処理
自然言語処理は、文章や音声など、人間が日常的に使用する言葉を分析する技術です。文章や音声が意味するものを正確に判別するために、形態素解析、構文解析、意味解析、固有表現認識などの処理がなされます。
形態素解析 |
|
---|---|
構文解析 |
|
意味解析 |
|
固有表現認識 |
|
自然言語処理では、これらの処理を組み合わせ、機械翻訳や自動応答システムなどのサービスを実現しています。
データ予測
データ予測は、ニューラルネットワークに学習用の大量のデータを与え経験を積ませ、その経験をもとに未来を予測する技術であり、「学習」と「推論」のフェーズに分類されます。
人間がさまざまな経験から学習し知識を身につけるように、ニューラルネットワークに画像や音声など大量のデータを与え、目的にあわせた学習済みのネットワークを構成します。推論の際には、学習済みのネットワークに新たなデータを与えることで、そのデータから推論や予測を行えるようになる仕組みです。
ニューラルネットワークの種類
ディープラーニングに用いられるニューラルネットワークは、その学習方法や出力の特徴に応じて次のように分類できます。
種類 | 学習方法と特徴 |
---|---|
ディープニューラルネットワーク(DNN) |
|
畳み込みニューラルネットワーク(CNN) |
|
再帰型ニューラルネットワーク(RNN) |
|
長・短期記憶(LSTM) |
|
敵対的生成ネットワーク(GAN) |
|
ディープニューラルネットワーク(DNN)
ディープニューラルネットワーク(DNN)は、ニューラルネットワークをより深い階層に適応させたものです。一般的なニューラルネットワークを構成する「入力層」「中間層」「出力層」の3層から、中間層を複数の層に分類して4層以上の構造とし、より複雑な情報を処理します。
たとえば、「画像に何が写っているのか」を判別させたい場合、入力層に画像データを与え、中間層が画像に写っているモノや色などの特徴を認識し、さらに次の中間層では過去データから類似するものがないかを検索するアプローチを実行します。これらのプロセスを経て、出力層が画像に写っているものを判別する仕組みです。
ディープニューラルネットワークは、主に次のような分野に活用されています。
- 画像認識
- 音声認識
- 自動運転技術
- レコメンデーション
DNNは、画像認識や音声認識、自動運転技術、レコメンデーションなどに活用されています。
畳み込みニューラルネットワーク(CNN)
畳み込みニューラルネットワーク(CNN)は、ディープニューラルネットワークの一種で、「畳み込み層」や「プーリング層」と呼ばれる独自の構造から情報を処理し、主に画像認識に用いられているモデルです。
- 畳み込み層:画像内の局所的な特徴量を抽出する層で、エッジや色の変化などを検出します
- プーリング層:畳み込み層で抽出された特徴が、移動をしても影響を受けないよう処理を行います。これは、畳み込み層で抽出した特徴が画像の上側にあった場合、下側にあるものをうまく判別できないためです。プーリング層では、抽出した特徴をそのままに、位置に関する情報を取り除くことで重要な情報を保持します
畳み込みニューラルネットワークは、主に次のような分野に活用されています。
- 顔認証システム
- 自動運転技術
- 医療における画像診断や検査
CNNは、画像認識のなかでも「一般物体認識」と呼ばれる画像認識タスクを得意としています。画像のなかにある人の顔や車、動物など、それぞれの物体の認識に優れていることから、顔認証システムや、自動運転技術、さらに医療分野での画像診断や検査などに活用されています。
再帰型ニューラルネットワーク(RNN)
再帰型ニューラルネットワーク(RNN)は、従来のニューラルネットワークとは異なり、連続的な情報を記憶し利用できる特徴があります。
再帰型ニューラルネットワークは、「入力層」「中間層」「出力層」の3層で構成され、中間層での演算結果を出力層に出力するとともに、再び中間層に入力して再演算をします。このとき、何度目の再演算が行われるのかを明確にするために、時間軸が用いられます。
こうした仕組みにより、たとえば自然言語処理のケースでは、「文脈を踏まえた意味把握」が可能になります。
一般的な言語処理では、文章を単語や文節に区切り、それぞれの関係性を無視した状態で各単語を把握して、文法に照らし合わせて文章を理解しています。一方、再帰型ニューラルネットワークでは、最初に翻訳した単語との関係性を踏まえたうえで、新たな単語を翻訳して、さらにこれまでに翻訳した全単語との関係を踏まえ、という要領で、ループするように処理を行います。これにより、前後の流れを踏まえた意味把握が可能になる仕組みです。
再帰型ニューラルネットワークは、次のようなものに活用されています。
- 音声認識
- 言語翻訳
- 財務予測
- 気象予測
- 画像認識
RNNは音声認識や自然言語処理に活用されることが多く、スマートスピーカーや機械翻訳に用いられています。
長・短期記憶(LSTM)
長・短期記憶(LSMT)は、「忘却ゲート」「入力ゲート」「出力ゲート」の3つのゲートで構成される、主に自然言語処理に用いられている仕組みです。
- 忘却ゲート:入力データおよび記憶セルに保存されているデータをどれだけ忘れるかを決定する
- 入力ゲート:入力されたデータから新たに保存する情報を決定する
- 出力ゲート:最終的に出力する情報を決定する
長・短期記憶の特徴は、上述した再帰型ニューラルネットワークの弱点を3つのゲートで補強し、学習できることにあります。
再帰型ニューラルネットワークには記憶セルがないため、計算が行われる過程で特徴量が消えてしまい、機械学習が進まなくなるという課題があります。そこで、必要なデータを記憶セルに残しながら計算を行う長・短期記憶を用いることで、再帰型ニューラルネットワークの課題を解消しています。
長・短期記憶は、次のようなものに活用されています。
- 音声認識
- 自然言語処理
- 文章生成
- 株価予測
LSMTは、再帰型ニューラルネットワークと同様に音声認識や自然言語処理に活用されているほか、記憶セルによって長い文章にも対応できることから文章生成にも活用されています。
敵対的生成ネットワーク(GAN)
敵対的生成ネットワーク(GAN)は、「Generator」と「Discriminator」の2つのブロックで構成される生成モデルです。この2つのブロックでは、データの生成と生成されたデータの識別が行われます。
- Generator:受け取った数値に基づいて新しいデータを出力する
- Discriminator:入力されたデータがGeneratorで生成された「偽物」か、訓練データとして用意された正解のものかを判別する
Generatorは「偽物」と判別できないような精巧なデータを作れるように学習し、DiscriminatorはGeneratorが作るデータを訓練データと区別できるように学習していきます。このように、2つのブロックの関係が敵対的であることが、敵対的生成ネットワークの名の由来です。
敵対的生成ネットワークは、次のようなものに活用されています。
- 画像の生成
- テキストからの画像生成
- 画像とテキストの合成
- 動画生成
- 音声生成
- 異常検知
このように、GANはさまざまなデータから画像や音声を生成するサービスに用いられています。
機械学習とディープラーニングどちらを活用すべきか
AI開発に携わる場面にて、機械学習とディープラーニングのどちらを活用すべきか。両者の特徴を踏まえ考えていきます。
機械学習の活用
比較的単純なアルゴリズムを用いる機械学習は、学習スピードが速く、計算に必要とされるデータ量も少ないため、迅速に分析結果を出力したいケースや、出力予測、傾向の発見などのプロジェクトに主に使用されています。
また、機械学習は限定的かつ構造化されたデータを用意できる場合の活用に向いています。
ディープラーニングの活用
ディープラーニングは、画像の分類や画像内の識別など、より複雑なプロジェクトに主に使用されます。ただし、学習のために大量のデータを用意する必要があること、機械学習と比較して学習に時間を要する傾向にあることを理解しましょう。
また、ディープラーニングではマシンのハードウェアや計算能力に依存して、学習に費やされる時間が大幅に変動する点にも留意しなくてはいけません。
- 機械学習は比較的単純なアルゴリズムにて、与えられたデータを解析してパターンを学習する技術
- ディープラーニングは人間の神経細胞を模倣した「ニューラルネットワーク」を用いる、機械学習の一分野に該当する技術
- 機械学習が比較的少ないデータと計算資源で動作するのに対し、ディープラーニングでは大量のデータと高性能な計算資源が必要
- 機械学習は構造化データの分析に強く、データ予測や分類などに使用されるのに対し、ディープラーニングは画像や音声、テキストなど非構造化データの解析に優れ、音声認識や画像認識などに使用される
- 機械学習の主な手法には、「教師あり学習」「教師なし学習」「強化学習」の3種類がある
- ディープラーニングに用いられるニューラルネットワークは、学習方法に応じて、複数の種類に分類される
- 機械学習は速い結果出力や構造化データに適用する、ディープラーニングは複雑なプロジェクトや非構造化データに適用するといった使い分けも重要