ロボットを動かすのは、学習済みのモデルだけではありません。道具を呼び出し、失敗を記録し、やり直すタイミングを決める周辺プログラム[1]も必要です。ケホン・ゴン氏らのTinyAstral[2]は、大きなモデルの重みを変えずに、まずこの周辺プログラムを改善しました。その後、改良した仕組みの中で働く小さなモデルを学習させました。

プログラミング用のエージェントが過去の実行記録を読み、周辺プログラムの修正を提案します。修正は、同じ条件で比べる統計的な試験に合格したときだけ採用します。次に、大きなモデルが失敗から立て直す様子も記録し、小さなモデルに学ばせました。大きなモデルから小さなモデルへ知識を移す方法を知識蒸留[3]と呼びます。ロボットのモーターやセンサーを新しくしたわけではありません。

仮想のRoboTwinでは、周辺プログラムの改善によって教師モデルの成功率が33.4%から63.6%へ上がりました。40億パラメーターの生徒モデルは、同じ仕組みで62.8%を達成しました。測定した実行例では、生徒が使った計算用アクセラレーターの時間は教師のおよそ五分の一でした。これは計算の負担を示す数字で、ロボット全体の価格ではありません。

興味深いのは、モデルを大きくするより、周りのソフトの働きを整える方が役立つ場合があることです。ただし、仮想課題での成功が、人の近くで自動修正したコードを安全に使える保証にはなりません。確かめるには、実行記録、比較条件、周辺プログラムの正確な版が必要です。