AIの仕組み/ディープラーニング
前章で解説したニューラルネットワークをさらに発展させ、隠れ層をより多層化したものが本章で解説したディープラーニング(深層学習とも)です。
ディープラーニングは、今日のAIブームの中核であり、画像認識・自然言語処理などの一般的なものから、新薬開発やアナログゲームの分析など、専門的な分野にも応用されています。
特に、将棋のようなアナログゲームではプロが棋譜の分析にAIを用いるケースが増えています。例えば、プロ将棋棋士である藤井聡太氏も「水匠」や「dlshogi」などの分析ソフトを使用して自身の指し手の善悪を分析・判断しています。
ディープラーニングは機械学習の内に含まれる手法であるため、集合関係としては次のように示せます。
人工知能 機械学習 ディープラーニング
すなわち、機械学習という枠組みの中にディープラーニングが位置づけられます。
これを実現するためには、単に層を深くするだけでなく、学習を安定させるためのアルゴリズム[† 1]の改良、GPU[† 2]などの計算機の進化、そして学習の燃料となるビッグデータの存在が不可欠でした。
ディープラーニングのメリット
[編集]従来のディープラーニングの手法とディープラーニングの決定的な違いは、「データから学ぶか」というアプローチにあります。
特徴量設計の自動化
[編集]従来の手法(ハンドエンジニアリング)
[編集]従来の手法では、人間が自らの専門領域に応じて特徴量を設計し(ハンドエンジニアリング)、その指定された特徴量を入力として学習を行う手法でした。例えば、画像認識であれば、エッジや角、テクスチャといった視覚的な要素を数値化するプログラム・処理を人間が考案し、それを入力として与えます。そのため、たとえ学習をしていても、実際は人間の手法によって大きく人工知能の性能が左右されていました。
ディープラーニング(表現学習)
[編集]ディープラーニングでは、人間は人工知能にほぼ生のデータを与えます[† 3]。
多層のニューラルネットワークでは、学習を通じてデータから判断基準である特徴量をデータから獲得します(表現学習)。そのため、人間の気づかないパターンや複雑な特徴も自律的に獲得できるようになったのです。
概念の階層構造
[編集]
ディープラーニングが高い性能を持つもう一つの理由として、概念の階層性が挙げられます。 ディープラーニングのモデルは多層構造を持つため、入力された情報を段階的に抽象化して学習します。
最初の層では画像のピクセルからエッジや色などの低レベルの基本的な特徴を捉えます。 次の層ではそれらを組み合わせ、目や耳、タイヤといった中レベルの部品的な特徴を形成します。 さらに深い層になると、これらの部品を統合して猫や車、人間といった高レベルの対象を認識するようになります。このように、単純な構成要素が積み重なって複雑な概念が表現される学習が、高い認識性能につながっています。
次元の呪いへの対処
[編集]機械学習には、「次元の呪い」と呼ばれる問題があります。これは処理をするデータの特徴(次元)が増えるにつれ、汎化性能が低下したり、計算資源の量が指数関数的に増加してしまう現象のことです。この問題をディープラーニングでは分散表現という方法を用いることで解決します。分散表現とは、一つの概念を一つのニューロンのみで表すのではなく、ネットワーク内にある複数のニューロンを用いて表現する手法です。
畳み込みニューラルネットワーク
[編集]畳み込みニューラルネットワーク(CNN, ConvNet: Convolutional Neural Network)は、主に画像の認識・分類においてよく使われる技術です。
再帰型ニューラルネットワーク
[編集]まだ
注釈
[編集]- ^ 活性化関数の一種であるReLU(ランプ関数)の採用や、過学習を防ぐドロップアウトなど。
- ^ 日本語では画像処理装置といいます。本来は画像処理を行うための半導体チップですが、並列演算性能が高いため、ディープラーニングの膨大な行列演算の学習に転用されています。
- ^ 「ほぼ生のデータ」とは、画像であれば各画素の明るさ、音声であれば時間ごとの振幅、文章であれば単語IDやトークンIDの列のように、人間の解釈が含まれていないデータのことです。
出典
[編集]
| << 3. ニューラルネットワーク | 目次 | 5. 生成AIの仕組み >> |