「人に魚を与えれば一日で食べてしまうが、人に釣りを教えれば一生食べていける」という古いことわざがある。これはロボットでも同じだ（ただし、ロボットが糧とするのは電気だが）。

問題は、最良の教育方法を見つけることにある。ロボットに特定の物体の扱い方を教えるのであれば、命令を詳細なコードにして与えるのが一般的だ。しかし、物体の種類が変わるとロボットはパニックを起こしてしまう。学習した技術を見たことのないものに応用できるほど、機械たちはまだ優秀ではないからだ。

マサチューセッツ工科大学（MIT）が発表した新しい研究は、それを変えようとしている。同大学のエンジニアたちは、数種類の靴を視覚で学習させる方法を開発した。

まずロボットアームは、ヘビのように体をくねらせて、あらゆる角度から十分に観察する。その後、これまでロボットに見せたことのない別の種類の靴を置き、その靴を拾い上げるように命令する。そうすると、ロボットは人間が細かい指示なしに靴を持ち上げられるのだ。

つまり研究者たちはロボットに、「長靴を釣り上げる」方法を教えたわけだ。この技術は、人間の複雑な世界の手がかりをつかもうと奮闘しているロボットたちにとって、ビッグニュースになるかもしれない。

VIDEO COURTESY OF PETE FLORENCE AND TOM BUEHLER/MIT CSAIL

人間のサポートがいらない学習システム

ロボットに何かを教えるとき、普通は人がサポートを行う必要がある。方法のひとつは、人間が実際に物体を取り扱う方法をやってみせるもので、これは「模倣学習」と呼ばれる。

あるいは、「強化学習」という方法もある。これは、試行錯誤を繰り返すことによって物の扱い方を覚えさせる学習方法だ。

例えば、四角形のパーツを四角形の穴に入れる作業をロボットに学ばせるとしよう。ロボットはランダムに動くが、目標に近づくとポイントがもらえる。ただし、当然ながらこの方法は非常に時間がかかる。シミュレーションでも同様のことができるが、仮想のロボットが学んだ知識を実際の機械に移植するのは容易ではない。

MITの新しいシステムは、ほとんど手がかからないという点でユニークだ。研究者が機械の前にいくつかの靴を置くだけで、学習の大半は完了する。

「人間のサポートがなくとも、完全に自力で物体の詳細な視覚モデルを構築できるのです」。そう話すのは、このシステムを紹介した新しい論文の筆頭執筆者であり、MITコンピューター科学・人工知能研究所（CSAIL）でロボットを研究しているピート・フローレンスだ。

こうした視覚モデルは「靴の座標系」、言い換えれば「アドレスの集まり」と考えることができる。あるいは、ロボットが蓄積した靴の構造に関する概念の集まりと考えてもいい。こうした前知識をもっていることによって、トレーニングを終えたロボットは初めて見る靴を与えられても作業のコンテキストを理解できるのだ。

VIDEO COURTESY OF PETE FLORENCE AND TOM BUEHLER/MIT CSAIL

ロボットが「靴とは何か」を学習する

ロボットはカメラをさまざまな位置に動かして、異なる角度から靴を観察し、データを収集する。このデータを使って、特定のピクセルが何を意味するかという内部記述を作成しているのだ。

さらにロボットは画像同士を比較することで「靴ひもとは何か」「舌革とは何か」「靴底とは何か」といったことを理解していく。簡単なトレーニング期間を経たロボットは、この情報をもとに新しい靴の構造を理解するようになる。

「どこか魔法のようにも思えるのですが、ロボットはトレーニングに使った靴だけでなく、多くの新しい靴にも一貫して当てはまる視覚的なディスクリプションを構築したのです」と、フローレンスは言う。要するに、ロボットは「靴とは何か」を学習したのだ。

これを、一般的なマシンヴィジョン（機械視覚）の仕組みと比べてみよう。マシンヴィジョンでは、例えば歩行者や標識などに関して、人の手によるラベル付け（「アノテーション」とも呼ばれる）が行われる。このラベルがあることによって、自律走行車はそれらを識別できるようになる。

「われわれのシステムでは人間がアノテーションを行うかわりに、ロボットに自分で自分を監督させるのです」と、論文の共同執筆者であり、同じくMIT CSAILに所属するルーカス・マニュエリは言う。

人工知能を研究する非営利団体「OpenAI」のエンジニアであるマティアス・プラパートは、「この技術は、つかむのに適した位置を見つけることが難しい産業用途で非常に役立つと思います」と話す。プラパートは操作方法を自習する独自のロボットハンドのシステムを開発した［日本語版記事］が、今回の研究には参加していない。

MITのロボットの手は、人間の手を模倣した複雑なハンドではなく、「エンドエフェクタ」と呼ばれる2本指のハンドが使われている。このようにロボットハンドの構造が単純な場合は、物をつかむのははるかに簡単だとマティアスは付け加えた。

「Dex-Net」と組み合わせも

こうした技術は、ロボットたちが人間の邪魔をすることなく動き回るために必要となる。家庭用ロボットであれば、物体が何であるかだけでなく、それがどうやってできているかも理解していることが望ましい。

例えば、テーブルを持ち上げるのを手伝うようロボットに頼んだとしよう。テーブルの脚が少しグラついているように思えたときは、テーブルの天板だけを持つようにロボットに命じるだろう。そんなとき、現在の技術ではロボットにまず天板とは何かを教える必要がある。

さらにその後もテーブルの種類が変わるたびに、天板とは何かを改めて教えなくてはならない。ロボットは人間とは異なり、ひとつの例から一般論を引き出すことができないのだ。

事をさらに複雑にしているのが、つかみ方である。舌革を持って靴を持ち上げたり、天板を持ってテーブルを持ち上げたりすることが、ロボットにとって最良のつかみ方ではない場合があるのだ。こうした細かい操作は現代のロボット工学において引き続き大きな問題だが、機械の性能は向上を続けている。

例えば、カリフォルニア大学バークレー校が開発したコンピュータープログラム「Dex-Net［日本語版記事］」は、ロボットがさまざまな物体をつかむ上で最良の位置を計算することによって、ロボットのつかむ動作をサポートする。

霧吹きボトルの場合、われわれ人間にとっては、つかみやすいように設計された首の部分のほうがつかみやすくても、指が2本しかないロボットの場合は、ボトル下部の膨らんだ部分をつかむ方が成功する確率が高くなるかもしれないのだ。

ロボット研究者たちは、今回のMITの新しいシステムとDex-Netを組み合わせることもできるだろう。ロボットが物をつかむのに適していると思われるおおまかな位置をMITのシステムが特定し、Dex-Netがそのなかでも最良と思われる位置を提案するのだ。

家庭用ロボットに、マグカップを食器棚に戻してもらいたいとする。そのためにはロボットが、マグカップのさまざまな部位を識別する必要がある。

「マグカップをきちんと置くためには、マグカップの底とは何かを知らなくてはいけません」とマニュエリは説明する。「われわれのシステムを使えば、最上部や底、持ち手などの位置を理解させることができます。その後はDex-Netを使って、例えば縁を持つなど、最良の掴み方を判断させるのです」

ロボットに魚の釣り方を教えれば、キッチンをめちゃくちゃにされる可能性が低くなる──ということなのだ。