【編集部注】著者のClaire Bretton氏はdaco.ioの共同設立者の1人である。daco.ioはディープラーニングを使ったユニークな競合トラッキングツールを開発するするスタートアップである。以前、彼女はパリに拠点を置くトップ戦略コンサルティング会社のマネージャーだった。ESCPヨーロッパから修士号を取得している。
21世紀の最大の課題の1つは、コンピューターをより人間の脳に似たものにすることだ。私たちは彼らに話し、理解し、そして問題を解いて欲しい – そして今、私たちは画像を見てその内容を認識して欲しいと思うのだ。
長い間盲目だった私たちの最も賢いコンピューターたちは、今や見ることができるようになった。
これは、ディープラーニングによって可能になった革命である。
機械学習:最初のステップ
機械学習を理解することはとても容易だ。そのアイデアは、大規模なデータベース上でアルゴリズムを訓練して、新しいデータに対して得られる出力を予測できるようにすることだ。
ここでは単純な例を示そう:私たちは樹齢を直径を使って予測したい。このデータベースには3種類のデータだけが含まれている:入力(x, 木の直径)、出力(y, 樹齢)、そして属性(a, b:木の種類, 森の位置)だ。これらのデータは、1次関数y = ax + bによって関連付けられている。このデータベースを使った訓練を通して、機械学習アルゴリズムは、xとyとの間の相関関係を理解して、属性の正確な値を定義することができるようになる。この訓練段階が完了すると、コンピューターは、新たな直径(x)から正しい樹齢(y)を予測することができるようになる 。
これは、過度に単純化した説明だが、画像認識について説明するときにはもっと複雑なものとなる。
コンピューターの場合、画像は数100万の画素の集まりだ – それは沢山のデータ処理を必要とし、1つのアルゴリズムで処理するには多すぎる入力である。そこで研究者たちはショートカットを見つけなければならなかった。最初のソリューションは、中間の特性を定義することだった。
コンピューターに猫を認識させたいと想像して欲しい。まず初めに、人間は主要な猫の特徴を全て定義しなければならない:丸い頭部、2つの尖った耳、1つの鼻…こうした主要な特徴が定義されれば、良く訓練されたニューラルネットワークアルゴリズムは、十分なレベルの正確さで、画像を分析しそれが猫であるか否かを判断することができる。
では、より複雑なアイテムを選んだ時にはどうなるだろう?
たとえば、ドレスをどのようにコンピューターに説明すればよいだろう?
あなたはここで画像認識のための基本的な機械学習の、最初の限界に突き当たったということだ:100パーセントに近い認識ポテンシャルを持つ識別特徴を定義することは、しばしば不可能なのである。
ディープラーニング:人間の介入なしに、見て学ぶ
2000年代になって、Stanford大学のAI LabとVision LabのディレクターであるFei-Fei Liが、重要な直感を得た:子供たちはどのようにものの名前を学ぶのだろうか?彼らはどうやって猫やドレスを認識することができるのだろう?両親いちいち特性を示しながら教えるわけではない、その代わり子供が対象を見るたびに、その物/動物の名前を教えるのだ。親たちは、視覚的な例を使って子供たちを訓練している。なぜ私たちは同じことをコンピューターに対してできないのだろう?
しかし、このとき2つの問題が残っていた:データベースの存在とコンピューティングパワーだ。
まず、「コンピューターに見ることを教える」ための十分に大きなデータベースはどのように入手することができるだろうか?この問題に取り組むため、Liと彼女のチームは、Image Netプロジェクトを2007年に立ち上げた。180カ国の50000人以上の人と協力して、彼らは世界最大の画像データベースを2009年に作成した:22000のカテゴリをカバーした、1500万枚の命名と分類が成された画像群だ。
コンピューターは今大規模な画像データベースで自分自身を訓練し、重要な特徴を特定することができるようになっている、そしてそれには人間の介入が不要なのだ。3歳の子供のように、コンピューターは名前の付いた数百万枚の画像を見て、自分自身でそれぞれのアイテムの主要な特徴を理解する。これらの複雑な特徴抽出アルゴリズムはディープニューラルネットワークを使い、何十億というノードを必要とする。
これはディープラーニングの始まりに過ぎない:私たちはなんとかコンピューターが3歳児のように見ることができるようにした。しかしLiがTED talkで話したようにまだこれからなのだ:「本当の挑戦はこれからです:私たちはどうすればコンピューターを3歳から13歳に、そしてそのはるか先へ進めることができるでしょうか?」。
[ 原文へ ]
(翻訳:Sako)