1998年のLeNetは手書き数字が読めましたが、写真のような複雑な画像はまだ 苦手でした。長い停滞を経て2012年、AlexNetという畳み込みニューラルネットワーク (CNN)がImageNetという画像認識コンペで他を圧倒し、深層学習ブームに火が つきました。CNNの心臓部は「畳み込み」——小さなフィルタ(虫眼鏡)で画像全体を なぞり、線や丸みなどの特徴を検出する仕組みです。
手書き数字をCNNに見せる
前の展示室で描いた数字がそのまま引き継がれます(引き継がれない場合は 新しく描いてください)。
フィルタが滑る
フィルタを1枚選んで「再生」を押すと、3×3の小さな窓が入力画像の上を なぞりながら、特徴マップが1マスずつ塗られていく様子を見られます。
もっと詳しく: 畳み込みという計算
フィルタは3×3の小さな数字の表(重み)です。入力画像の3×3の範囲と フィルタの値をそれぞれ掛けて足し合わせると、1つの出力値になります。 この窓を1マスずつずらしながら画像全体をなぞると、フィルタが「反応する 場所」だけが明るくなった新しい画像(特徴マップ)ができあがります。 これが「畳み込み(コンボリューション)」です。
特徴マップ一覧
1層目(8枚)と2層目(16枚)、すべてのフィルタの反応を並べました。 縦線に反応するもの、丸みに反応するもの——フィルタごとに役割分担が 生まれていることが見えるでしょうか。
MLP対決
同じ絵に対して、第2展示室のMLP(全結合ネットワーク)と、このCNNが それぞれどう判断するかを見比べられます。
MLP(第2展示室)
CNN(この展示室)
歴史: 停滞とブームの再点火
1998年のLeNetの後、ニューラルネットワークの研究はしばらく停滞します。 計算資源が足りず、大きな画像で複雑なCNNを学習させるのは現実的では ありませんでした。転機は2012年。AlexNetというCNNが、ImageNetという 120万枚の画像分類コンペで2位に大差をつけて優勝しました。この勝因の一つが GPU(本来は3Dグラフィックス描画用のチップ)を使った並列計算です。 「画像認識にはCNN、CNNの学習にはGPU」という組み合わせが、その後10年の 深層学習ブームの出発点になりました。GPUの役割は、次の展示室でさらに 大きな意味を持つことになります。