AI(人工知能)と聞くとみなさんとどんなものを想像しますか。一言でAIと言っても、その種類は多く、様々な手法があります。
近代のAIブームでは、特に機械学習と深層学習を用いた手法が主流になっています。
本記事ではその中でも最近よく耳にする、ニューラルネットワークとディープラーニングの違いについて解説していきます。
AI(人工知能)の分類
AI(人工知能:Artificial Intelligence)は、1956年アメリカで開催されたダートマス会議のときに、ジョン・マッカーシーによって初めて使われた言葉です。
AI(人工知能)とは、コンピュータによる知的な情報処理システムを設計、実現するための分野です。
AI(人工知能)の分類にはさまざまあり、役割の分類としては、「特化型人工知能(AGI)」と「汎用型人工知能(GAI)」があります。
個別の領域に特化して能力を発揮するのが「特化型人工知能(AGI)」、異なる領域で多様な問題を解決するのが「汎用型人工知能(GAI)」となります。
また、立場の分類としては人間の心を持ち行動できる人工知能を「強いAI」、人間の心は持つ必要なく便利な道具であればよいという「弱いAI」に分けられます。
では、これらAIを実現するための具体的な学習方法(手法)を分類してみましょう。
人間の学習能力、予測能力をコンピュータで実現しようとする手法を機械学習と言います。
機械学習には多種多様なアルゴリズムが含まれますが、ニューラルネットワークはこの機械学習の中のアルゴリズムの1つです。
そして、ニューラルネットワークを応用させたものがディープラーニング(深層学習)と呼ばれています。つまり、機械学習のニューラルネットワークの中にディープラーニングが含まれるということになります。
AIのアルゴリズムについてはこちらの記事で詳しく解説しています。
機械学習のニューラルネットワークやディープラーニングが学べるおすすめのセミナー!
AI研究所が開催している、AIエンジニア講習は、3日間集中講座で、会場・ライブウェビナー・eラーニングの3つのタイプから受講を選択できるセミナーで、短期集中でAIの発展知識や実装まで学べるセミナーとなっています。
内容は、今回の記事でご紹介する機械学習のニューラルネットワークやディープラーニングはもちろんのこと、AI基礎知識から、実務で使えるAIの実装技術と活用術までをも習得できるおすすめのセミナーです!
もちろん非エンジニアの方でも、ゼロからプログラムの実装方法を学ぶことができます。
機械学習—ニューラルネットワークについて
では、ここからニューラルネットワークとディープラーニングの違いをさらに詳しく見ていきましょう。
ニューラルネットワークとは、人間の脳の働きをコンピュータ上で模倣したものになります。
人間の脳には、大量の神経細胞(ニューロン)があり、この神経細胞(ニューロン)に電気信号の伝達をすることで脳内の情報が処理されます。この電気信号の伝達を数理モデルとして複数組み合わせたものがニューラルネットワークと言われています。
ニューラルネットワークは、入力が行われる「入力層」、中間にある「隠れ層(中間層)」、出力が行われる「出力層」から作られます。層と層の間には「重み」が入ります。
入力値にそれぞれ重みをかけ、それらを足し、クラスを判定するという流れの識別器のことをパーセプトロンと呼びます。パーセプトロンは重みをうまく調整することで様々な識別器となります。
ニューラルネットワークの原点は、隠れ層がない単純パーセプトロンというモデルでした。単純パーセプトロンは、入力をもとに出力を行うというもので線形分類しかできませんでした。
そこで、「隠れ層」という新たな関数を追加し、非線形分類もできるように多層パーセプトロンが現在のニューラルネットワークの基本形のモデルとなっています。
ニューラルネットワークの歴史は第一次AIブーム以前から始まっています。1943年にウォーレン・マッカロックとウォルター・ピッツがニューラルネットワーク理論を提唱したことが始まりです。
その後、単純パーセプトロンや多層パーセプトロン、バックプロパゲーション(誤差逆伝番学習法)や自己符号化器(オートエンコーダ)などが開発されていきました。
このような研究を積み重ねて、現代のニューラルネットワークが構築されています。
ニューラルネットワークの仕組みについてはこちらの記事でさらに詳しく解説しています。
深層学習—ディープラーニングについて
では、次にディープラーニングについて見ていきましょう。
ディープラーニングについて
ディープラーニングとは簡単に言うと、ニューラルネットワークの隠れ層を増やしたもののことを言います。
ニューラルネットワークでの隠れ層をもっと増やせばより複雑な関数を表現でき、より複雑な問題を解くことができるのではないかという考えから生まれたものです。
また、層が多くなること=層が深くなると言うことからディープラーニングは深層学習とも呼ばれます。このことから、ディープラーニングはディープニューラルネットワークとも呼ばれています。
ニューラルネットワークを多層化する考えは早くから考えられていましたが、多層化しても学習精度が上がらないことなどいろいろな問題点がありました。
しかし、2006年にジェフリー・ヒントンが提唱した自己符号化器(オートエンコーダ)の研究を皮切りに、さまざまな工夫が積み重ねられました。
データ量の増加やハードウェアの進化なども追い風となり学習精度が上がり、ここからディープラーニングは飛躍的に注目され始めました。
機械学習と深層学習(ディープラーニング)の大きな違いは、特徴量(注目すべきデータの特徴)を人間が決めるかコンピュータが決めるかというところです。
もともと、画像認識において機械学習がよく使われており、特徴量の選び方はそれを行う人によって大きく変わるものでした。
そんな中、2012年の「ILSVRC(Imagenet Large Scale Visual Recognition Challenge)」という画像認識の精度を競い合う競技会でディープラーニングが用いられました。
これまでエラー率26~28%台で競われていたのが、この年、エラー率15.3%という値をたたき出しました。
これもジェフリー・ヒントンが中心となって開発したものですが、この大会でディープラーニングが機械学習より優れていることが証明されました。
ディープラーニングについてはこちらの記事でより詳しく解説しています。
ディープラーニングの活用
ディープラーニングは、現在では様々な場面で活用されています。事例を見ていきましょう。
まず画像認識では、自動運転や防犯カメラ、画像素材を生成するサービスなどに応用されています。自然言語処理では、翻訳やチャットボットに応用されます。
音声認識では文字お越しなどにも使われます。身近なもので有名なものとして、音声認識×自然言語処理としてAIスピーカーもあります。
また、インフルエンザ予報などの予測やデータ分析、映像解析にも使われています。このようにすでに私たちの身の回りにはディープラーニングが実用化されています。
またこれらの技術はIot(Internet of Things)の発展にも大いに活用されています。
Iotとはコンピュータなどの情報・通信機器だけでなく、モノ自体に通信機能を持たせインターネットを通して自動認識などを行うことを言います。
つまり、モノが情報を収集し、そのデータを人間が働きかけずとも送りあえるのです。
これらのIot技術の発展にもディープラーニングは大きな働きをするでしょう。
まとめ
本記事では、ニューラルネットワークとディープラーニングの違いについて見てきました。AIの様々な分類についてから、ニューラルネットワークとディープラーニングについて詳しく説明しました。
簡単にまとめると、ニューラルネットワークを多層化して、特徴量を自動的に決定する手法がディープラーニングになります。
つまり、ニューラルネットワークがベースの手法であり、ニューラルネットワークを応用した手法がディープラーニングということです。
現在、ディープラーニングは多くの分野で応用・実用化され、私たちの身の回りのものにたくさん落とし込まれていることが分かったかと思います。
そして、そのディープラーニングはニューラルネットワーク無くしては進化していなかったのです。
実務で使えるニューラルネットワークおよびディープラーニングの知識をマスターするなら、ProskilllのAIエンジニア育成講座がおすすめです。3日間で必要なスキルを学べます。