ユニティ・テクノロジーズは月曜日、同社のUnity 3Dゲーム開発プラットフォームを機械学習による自律エージェントコードの開発とトレーニングにより適したものにするML-Agentsツールキットのバージョン0.5をリリースした。
1年前にベータ版としてリリースされたバージョン0.5には、いくつかの改良が加えられています。Gym(強化学習アルゴリズムの開発とテストのためのツールキット)のラッパー、エージェントが複数のアクションを同時に選択できるようにする機能と、エージェントが特定のアクションを実行できないようにする機能のサポート、そしてMarathon Environmentsと呼ばれる環境セットの刷新などが含まれています。
これらの仮想空間において、AI研究者はソフトウェアエージェントに正しい行動に対して報酬を与えることで、特定のタスクを実行するよう学習させることができます。この種の強化学習は、ビデオゲームのようなデジタル環境に限定することも、現実世界のソフトウェア駆動型マシンにマッピングすることも可能です。
Unity は最新のコード アップデートを通じて、Unity 3D を AI 研究の主要ツールとして位置づけています。これは、同社のコード専門家が「Unity: インテリジェント エージェント向けの汎用プラットフォーム」と題するプレプリント論文で説明している目標です。
「この参考資料では、他の同様のプラットフォームの機能を基にして拡張するシミュレーションプラットフォームとしてのUnityのビジョンを説明し、研究ツールとしてのML-Agentsツールキットの概要を説明し、基本設計と追加機能の両方について説明しています」と、Unity Technologiesのディープラーニング担当シニアソフトウェアエンジニア、アーサー・ジュリアーニ氏はブログ投稿で説明している。
過去数年間、深層強化学習や関連 AI 技術を使用してソフトウェア エージェントをトレーニングするために、Arcade Learning Environment (Atari ビデオ ゲームのシミュレーションを制御するための Python インターフェイスを提供する)、DeepMind Lab、Project Malmo、Gym、Gym Retro などのシミュレーターが使用されてきました。
論文の共著者の一人であるジュリアーニ氏とその同僚は、「AI研究に使用されている既存のシミュレーションプラットフォームは、真に人間のような人工知能の開発を可能にするには不十分である」と主張している。
複雑さには利点があった
彼らは、Unity 3D は他のプラットフォームに比べて、優れた感覚的複雑さ (リアルタイム ライティングとカスタム シェーダー経由)、物理的複雑さ (物理エンジン経由)、認知的複雑さ (C# スクリプトと GameObject 構造経由)、および社会的複雑さ (組み込みのマルチプレイヤー ネットワーク経由) を提供すると主張しています。
そして彼らは、機械学習で使用される近似ポリシー最適化アルゴリズムを用いたベンチマークテストに挑戦しました。これらのパフォーマンス数値はUnityの論文に記載されています。
トップビデオゲーム開発の中枢UnityがAIのトレーニングに利用可能に
続きを読む
ジュリアーニ氏はThe Registerへのメールで、Unity 3Dには多くの利点があるが、研究者にとって最も優れたものの一つはUnityエディターだと述べた。「実験においては迅速な反復作業が非常に重要なので、エディターUIがあれば、コードだけを操作するよりも環境のさまざまな側面をはるかに直感的に調整できます」と彼は述べた。
バックエンドでは、Unity は 7 月に Google Cloud Platform との提携を締結しました。
「人間のような人工知能」のように解釈の余地が広い基準が実現可能か、あるいは望ましいものなのかどうかは判断が難しい。意見が違うという理由で命令を拒否するコードを誰が望むだろうか?しかし、研究者によると、Unity 3Dは、ロボットのナビゲーションを支援するUnityベースの学習機能を持つAI2Thorや、ロボットハンドに物体を掴むことを教えるOpenAIプロジェクトといったプロジェクトで実証されているという。
AI 実践者が Unity 3D に好感を抱くと想定して、同社はコンピューター ビジョンや生成モデリングなど、より多くの種類の機械学習をサポートするつもりだと Juliani 氏は言います。
「様々な研究者がそれぞれのニーズに合わせて変更しやすいよう、APIを徐々に拡張していく予定です」と彼は述べた。「現在は比較的(強化学習に)重点を置いていますが、v0.5ではprotobuf定義をリリースしました。これにより、通信APIを変更し、Unityの新たな機能をPythonで利用できるようになります。今後もこの方向性を継続していく予定です。」®