画像認識は複雑な仕事だ。Googleにとって、それは人工ニューラルネットワーク(神経回路網)、すなわち学習する能力を備えたソフトウェアのことだ。
このソフトウェアは、ヒトの脳の構造に基づいて作られており、大量の画像を見せられることで学習する。例えばそれが犬のシュナウツァーなのか、暖炉なのかを正確に見分けられるようになるまで頻繁に調整を繰り返していく。情報はニューロン層から次のニューロン層へとフィルタリングされ、最後の層に到達すると応答を返す。
ニューラルネットワークが画像を認識できるようになるというのは、このネットワークに画像を生成するツールを与えていた段階からすると、ほんのわずかな前進にすぎない。結論から言えば、ニューラルネットワークによる画像の生成を可能にすることは、極めて有用性が高い。
Google Researchのソフトウェアエンジニアリングチームはブログ投稿で「われわれのトレーニングは、ネットワークに学習させたいもののサンプルを数多く見せることだけであり、目の前にある物の本質を取り出し(例えばフォークなら持ち手が1本で歯が2~4本あるといった具合)、重要でないもの(フォークの形やサイズ、色、向きは問わないなど)は無視できるようになるのを期待している」と記した。
このようにして、ニューラルネットワークがどことなく間違った画像を返した場合、ニューラルネットワークのパラメータを調整することが可能になっている。サンプルとしてダンベルを使った例では、ニューラルネットワークが返した画像の中に、ダンベルを持った腕が含まれていた。この画像は、腕の部分を除去することで訂正された。
面白いのは、このニューラルネットワークに画像を見せ、ごく小さなものを探すように指示したときだ。ネットワークは、人の目が識別しないような画像を探し出す。
同ソフトウェアエンジニアリングチームによると、「われわれは、既存の画像から初めて、それをニューラルネットワークに見せている。ネットワークには、『見える物はなんでもいいから、もっと教えて欲しい』と指示している」という。
「これにより、フィードバックループが作られる。例えば、雲が少しだけ鳥のような形に見える場合、ネットワークはそれを、さらに実際の鳥に近い画像にする。こうして、次から、さらにしっかりとその鳥を認識させていくと、極めて細密な鳥の姿が映し出されるようになる。それは突然目の前に現れる」(Google Researchソフトウェアエンジニアリングチーム)
上の画像をクリックして、コンピュータが描く夢の中を覗いてみよう。
この記事は海外CBS Interactive発の記事を朝日インタラクティブが日本向けに編集したものです。
CNET Japanの記事を毎朝メールでまとめ読み(無料)
ものづくりの革新と社会課題の解決
ニコンが描く「人と機械が共創する社会」
ZDNET×マイクロソフトが贈る特別企画
今、必要な戦略的セキュリティとガバナンス