AlexNetとは
2012年のImageNet画像認識コンペティションで圧勝し、深層学習ブームの契機となった畳み込みニューラルネットワーク
ひとことで言うと
2012年に画像認識コンテストで圧勝し、深層学習ブームのきっかけとなったAIモデル。
概要
AlexNetとは、2012年のImageNet大規模視覚認識チャレンジ(ILSVRC)において、従来手法を大差で上回る性能を示した畳み込みニューラルネットワーク(CNN)。 複数の畳み込み層とプーリング層を重ねた構造に加え、活性化関数にReLUを採用し、GPUを用いた並列計算によって大規模なネットワークの学習を実用的な時間で行った点が特徴。 この結果を契機に、CNNおよび深層学習全般への注目が急速に高まり、以降の画像認識研究・産業応用の起点になったモデルとして位置づけられている。
背景
AlexNet以前の画像認識では、人手で設計した特徴量抽出手法と従来の機械学習モデルを組み合わせる手法が主流であり、性能向上には限界があった。 AlexNetは、大規模データセットとGPU計算を組み合わせることで、深いCNNを直接学習させるアプローチが実用的であることを示すために開発された。
歴史
2012年: Krizhevsky・Sutskever・Hintonが、ILSVRC 2012において2位以下に大差をつけて優勝し、深層学習ブームの契機となる論文を発表。
アーキテクチャ
5つの畳み込み層と3つの全結合層からなり、各畳み込み層の後にReLU活性化関数とプーリング層を配置する構成をとる。 汎化性能を高めるため、全結合層にドロップアウトを適用し、当時のGPU(GTX 580、メモリ3GB)の制約に対応するため、ネットワークを2つのGPUに分割して並列に学習させた点も特徴的だった。
コード例
torchvisionでAlexNetを読み込む
import torchvision.models as models
model = models.alexnet(weights=models.AlexNet_Weights.DEFAULT)
model.eval()利点
欠点
- 現在の基準では層数が浅く、その後登場したより深いCNNアーキテクチャと比べ精度で劣る
- 全結合層のパラメータ数が多く、モデルサイズが大きい
- 現在では研究・教育目的で参照されることが多く、実運用ではより新しいアーキテクチャに置き換えられている