DeepMind が 3 つの新しいフレームワークを同時にオープンソース化しました。深層強化学習の応用は春の到来を告げるのでしょうか?

DeepMind が 3 つの新しいフレームワークを同時にオープンソース化しました。深層強化学習の応用は春の到来を告げるのでしょうか?

この記事はLeiphone.comから転載したものです。転載する場合は、Leiphone.com公式サイトにアクセスして許可を申請してください。

深層強化学習 (DRL) は、近年の人工知能における最大の進歩の中心となっています。しかし、DRL は大きく進歩しているにもかかわらず、ツールやライブラリが不足しているため、DRL メソッドを主流のソリューションに適用するのは依然として困難です。したがって、DRL はまだ主に研究の形で存在しており、機械学習の実際のアプリケーションはあまり見られていません。この問題を解決するには、より優れたツールとフレームワークが必要です。

つい最近、DeepMind は、DRL メソッドの適用を簡素化する 3 つの DRL フレームワーク (OpenSpiel、SpriteWorld、Bsuite) を含む一連の新しいオープン ソース テクノロジをリリースしました。

[[277341]]

DRLフレームワークの概要

新しいディープラーニング技術として、DRL の導入は、単にアルゴリズムを実装する以上の課題に直面します。たとえば、トレーニング データ セット、環境、監視最適化ツール、DRL テクノロジの適用を簡素化するための慎重に設計された実験などです。

DRL のメカニズムはほとんどの従来の機械学習手法とは異なるため、この違いは DRL の場合さらに顕著になります。 DRL エージェントは、特定の環境で試行錯誤を通じてタスクの習得を試みます。この文脈では、環境と実験の堅牢性が、DRL エージェントによって開発された知識において重要な役割を果たします。

DRL で大きな進歩を遂げ、それを主要な AI 課題にさらに適切に適用するために、DeepMind は、DRL エージェントの大規模なトレーニング、実験、管理を簡素化する独自のツールとフレームワークを多数構築しました。また、OpenSpiel、SpriteWorld、bsuite を含む 3 つの DRL フレームワークがオープンソース化されているため、他の研究者がそれらを使用して DRL 手法の最先端技術を進歩させることができます。

以下に、3 つのフレームワークと、対応するオープン ソース アドレスを紹介します。

オープンゲーム

他のデータセットとは異なり、ゲームは本質的に試行と報酬のメカニズムに基づいており、DRL エージェントのトレーニングに使用できます。しかし、これまで見てきたように、ゲーム環境は単純な組み立てとはほど遠いものです。

[[277342]]

OpenSpiel は、ゲームにおける一般的な強化学習と検索/計画を研究するための環境とアルゴリズムのコレクションです。 OpenSpiel は、一般的なゲームと同様に、競争よりも学習を重視しながら、さまざまなゲーム タイプにわたって一般的なマルチエージェント強化学習を促進することを目的としています。 OpenSpiel の現在のバージョンには、完全情報、同期移動、不完全情報、グリッド ワールド ゲーム、戦略ゲーム、一般的なフォーム/マトリックス ゲームなど、20 種類を超えるゲームの実装が含まれています。

OpenSpiel のコア実装は C++ と Python バインディングに基づいているため、さまざまなディープラーニング フレームワークに簡単に採用できます。このフレームワークは、DRL エージェントが協力的行動と競争的行動の両方を習得できるようにするゲームのポートフォリオで構成されています。同様に、OpenSpiel には、検索、最適化、単一エージェントなど、さまざまな DRL アルゴリズムの組み合わせが含まれています。 OpenSpiel には、学習ダイナミクスやその他の一般的な評価メトリックを分析するためのツールも含まれています。

OpenSpielがサポートするゲームタイプ

  • シングルおよびマルチプレイヤーゲーム

  • 完全に観測可能なゲーム(観測による)と不完全な情報ゲーム(情報状態と観測による)

  • ランダム性(ほとんどは非決定論的なイベントですが、暗黙的なランダム性は部分的にサポートされています)

  • n人用正規形「ワンショット」ゲームと(2人用)マトリックスゲーム

  • 連続アクションゲームと同時アクションゲーム

  • ゼロサムゲーム、一般サムゲーム、協力ゲーム(同一報酬ゲーム)

OpenSpielがサポートする言語

  • C++ 11

  • Python3 について

  • Swiftで提供されている言語の一部

ゲームとユーティリティ関数 (例: 計算) は C++ で記述されています。これらは、pybind11 python (2.7 および 3) バインディングを使用しても利用できます。メソッド名は、C++ では CamelCase、Python では SnakeCase です (たとえば、C++ の Apple アクションは、Python では Test.Apple になります)。名前間の完全なマッピングについては、open_spiel/python/pybind11/pyspel.cc の pybind11 定義を参照してください。

OpenSpiel は Linux (Debian 10 および Ubuntu 19.04) でテストされていますが、MacOS や Windows ではまだテストされていません。コードは MacOS や Windows でも利用できる無料のツールを使用しているため、DeepMind はこれらのプラットフォームでコンパイルして実行する際に (大きな) 問題は発生しないと予想しています。

GitHub アドレス: https://github.com/deepmind/open_spiel

pybind11 アドレス: https://pybind11.readthedocs.io/en/stable/

スプライトワールド

数か月前、DeepMind は、教師なしターゲット検索と好奇心主導型 (Curious Object-Based search Agent、COBRA) に基づく強化学習モデルを紹介する論文を発表しました。このモデルでは、強化学習を使用して特定の環境内のオブジェクトを識別します (関連論文は https://arxiv.org/abs/1905.09275 で参照できます)。

このモデルは、数字を自由に動かすことができる一連の 2 次元ゲームを使用してトレーニングされました。 COBRA モデルのトレーニングに使用される環境は、DeepMind によって最近オープンソース化された 3 つの主要な DRL フレームワークの 1 つである SpriteWorld です。

SpriteWorld は、自由に移動できるシンプルな形状の 2D アリーナで構成された Python ベースの強化学習環境です。より具体的には、SpriteWorld は、衝突することなく自由に配置およびレンダリングできる、さまざまな数の色のスプライトを含む 2D の正方形のアリーナです。 SpriteWorld 環境は、いくつかの主要な機能に基づいています。

  • マルチオブジェクト アリーナは現実世界の構成を反映しており、雑然としたオブジェクトのシーンは、特徴を共有しながらも独立して移動することができます。これにより、タスクに依存しない機能/ターゲットの堅牢性と組み合わせの一般化をテストする方法も提供されます。

  • 連続クリックおよびプッシュアクション空間の構造は、ワールド空間と動きの構造を反映しています。また、エージェントは目に見えるオブジェクトを任意の方向に移動することもできます。

  • 目標の概念は、特権的な方法で提供されるものではなく (たとえば、アクション スペースには目標固有のコンポーネントはありません)、エージェントによって完全に検出可能です。

SpriteWorld は、各 DRL エージェントに対して 3 つの主要なトレーニング タスクを提供します。

  • ターゲット検索。エージェントは、妨害要因(緑色以外のターゲットなど)を無視して、一連のターゲット(いくつかの特徴によって識別可能、たとえば緑色のターゲット)を画面上の隠れた場所に持ってくる必要があります。

  • 選別。エージェントは各ターゲットをその色に基づいて指定された場所に移動する必要があります。

  • クラスタリング。エージェントは、色に基づいてオブジェクトをクラスターにグループ化する必要があります。

SpriteWorldは強化学習以外の目的にも使用できます。たとえば、論文「空間ブロードキャスト デコーダー: VAE での分離された表現を学習するためのシンプルなアーキテクチャ」(Watters 他、2019、https://arxiv.org/abs/1901.07017) のように、制御された因子分布を持つ画像データセットを生成するために使用されます。

また、単純な物理的な力 (バネ、重力など) と相互作用するオブジェクトのデータセットを生成するように簡単に拡張できるため、視覚ダイナミクスの教師なし学習研究に役立ちます。

GitHub アドレス: https://github.com/deepmind/spriteworld

ビスイート

私たちは、bsuite (Behavior Suite for Reinforcement Learning) を強化学習の MNIST にしようとしています。

具体的には、bsuite はエージェントのスケーラビリティの重要なポイントを強調するように設計された一連の実験です。これらの実験は、探索や記憶などの基本的な疑問に、簡単にテストして反復できる方法で取り組みます。 bsuite には 2 つの主な目標があります。

  • 効率的で一般的な学習アルゴリズムの設計における主要な問題を捉える、明確で有益かつスケーラブルな質問を収集します。

  • エージェントの動作は、これらの共有ベンチマークを実行することによって研究されます。

bsuite の現在の実装では、さまざまな環境での手動実験が自動化され、DRL エージェントのトレーニングを簡素化できる対応するメトリックが収集されます。また、bsuite は実験のコレクションであるため、experiments サブディレクトリで定義されます。各サブディレクトリは実験に対応しており、次のものが含まれます。

  • 強化学習環境を定義するファイル。異なる難易度レベルや異なるランダムシード (例) を提供するように構成できます。

  • 実験の sweep.py ファイルの設定変数で定義されている、この環境のキーワード引数のシーケンス。

  • 提供された Jupyter マシンで使用されるプロットを定義する analysis.py ファイル。

bsuite は、load 関数と record* 関数によって環境がロードされると、各環境の結果を記録することによって機能します。これは、エージェントやアルゴリズムの構造に制限されることなく、あらゆる実験でコンピューターを使用した分析に適した形式でデータが自動的に出力されることを意味します。

GitHub アドレス: https://github.com/deepmind/bsuite

<<:  Suning製品セマンティックリコールにおけるDSSMテキストマッチングモデルの適用

>>:  Baidu Brain CVサービスでは、100~1000元のクーポンを提供しています。

ブログ    
ブログ    
ブログ    
ブログ    

推薦する

AIと機械学習がDevOpsをどう変えるのか

人工知能と機械学習が DevOps に新たな自動化機能をもたらすにつれて、これらのテクノロジーが組織...

2020 年に台頭する AI と機械学習の 6 つのトレンド

人工知能ソリューションの市場は急速に成長を続けており、数百億ドルの収益をもたらしています。調査会社I...

...

...

Baidu PaddlePaddle EasyDL リテール版シェルフステッチングサービスのアーキテクチャとアルゴリズムの詳細な説明

日用消費財業界の商品識別需要シナリオでは、日用消費財ブランドの営業担当者は、販売のために端末店舗を訪...

1万語の要約 | 2023年のビッグモデルと自動運転の論文を簡単に見る

この記事は、Heart of Autonomous Driving の公開アカウントから許可を得て転...

...

人工知能は石油・ガス生産者の業務改善と温室効果ガス排出削減に貢献

[[437362]]石油・ガス生産者の操業実績を測る指標は数多くあり、効率性の向上、コストの削減、油...

異常検出に機械学習を使用する際に尋ねるべき 7 つの質問

導入異常検出に関するいくつかの入門的な質問。質問することは学習するための最良の方法の一つです。しかし...

家庭では人工知能がどのように活用されているのでしょうか?

人工知能(AI)は現在、私たちの家族構造にますます統合されています。さらに、快適性、利便性、安全性、...

...

EU AI法が規則を承認

欧州連合の人工知能法(AI法)は、政策立案者が画期的な規制のルールをうまく策定したことで、法律化に向...

AI、メタバース、職場におけるDEI

AI とメタバースが仕事を変えるにつれて、リーダーは DEI に影響を与える新興テクノロジーの 3...

新型コロナウイルスが猛威を振るう中、AI技術は流れを変えることができるのか?

最近、謎の新型コロナウイルスが驚くべき速さで猛威を振るっています。先週木曜日、世界保健機関(WHO)...