- 会員限定
- 2021/06/07 掲載
畳み込みニューラルネットワークとは? 「画像・音声認識」の核となる技術のカラクリ
連載:図でわかる3分間AIキソ講座
畳み込みニューラルネットワークとは
畳み込みニューラルネットワーク(CNN: Convolutional Neural Network)というのは、人間の視覚神経を参考にしたアルゴリズムである「ネオコグニトロン」というアルゴリズムを多層ニューラルネットワークに応用したアルゴリズムです。そもそも、ニューラルネットワーク自体が人間の神経ネットワークを参考につくられたものですが、その中でも「視覚」にフォーカスしたものが、畳み込みニューラルネットワークということになります。「ディープラーニングが画像認識タスクに強い」というのは、主に畳み込みニューラルネットワークの話です。細かく言えば、画像認識が苦手なディープラーニングもあるということです。
また、畳み込みニューラルネットワークは音声認識にも有効です。現在、広く普及しているディープラーニングの用途の多くが「画像認識」や「音声認識」であることを踏まえると、畳み込みニューラルネットワークさえ理解することができれば、世の中で話題となっているAIのアルゴリズムの基本的な部分は、ほとんど理解できているということになるでしょう。
では、畳み込みニューラルネットワークは、普通のニューラルネットワークとは何が違うのでしょうか。
「畳み込みで特徴を捉える」とは
畳み込みニューラルネットワークの原型が誕生してからすでに20年以上も経過しているのでさまざまな派生型や発展型が誕生していますが、あらゆる畳み込みニューラルネットワークで共通する重要な要素は「畳み込み」と「プーリング」です。この2つの作業はディープラーニングにおける「特徴を強調して処理する」という点で、大きな役割を果たします。ディープラーニングの強みは「特徴を抜き出す」部分にあり、たとえば画像の特徴を1つとっても、あらゆる種類の“特徴”があります。具体的には、直線や曲線といった「線」の特徴、赤や黄色といった「色」の特徴、明るさ・暗さ・色合いの「コントラスト」の特徴、など数え上げたらキリがありません。そして、場合によってはその要素単体でも画像の対象はかなり絞り込まれます。
そうした特徴を一度にまとめて捉えられれば良いのですが、普通のニューラルネットワークだと、それぞれの特徴がバラバラに現れたり、混ざって平均化されたりしてしまった結果、輪郭が綺麗に取れなかったり、色がぼやけてしまったり、うまく特徴を捉えきれませんでした。そこで、ありとあらゆる特徴を一度に抽出するのではなく、“特徴ごとに”上手に切り分けるようにしようというのが「畳み込み」というわけです。
1種類の特徴を切り出すだけでも「畳み込み」と呼びますが、畳み込みニューラルネットワークでは複数の特徴に対して、それ以上のニューラルネットワークの層を用意します。複雑な画像認識であればあるほど、抜き出すべき特徴の種類は増えていくので、その分ニューラルネットワークの層が分厚くなることが分かります。
この畳み込みを何かに例えるならば「似顔絵」ではないでしょうか。似顔絵はその人の顔とはまったく違ったものですが、特徴をうまく捉えていて第三者にもすぐにその人だと分かります。逆に精巧過ぎる絵は本物の顔との微妙な違いが違和感となって現れ、かえって分かりにくくなることがあります。その人を認識するための無駄な情報は徹底的に削ぎ落とし、重要な特徴だけで判断できるようにするのが畳み込みというわけです。
ただし、似顔絵には特徴をうまく表現するためにテクニックが必要です。これは学習と訓練によって向上させていくしかありません。畳み込みニューラルネットワークも同様で、この特徴を抜き出すテクニックを機械学習によって向上させています。
【次ページ】情報を減らす作業「プーリング」とは
関連コンテンツ
関連コンテンツ
PR
PR
PR