Morikatron Engineer Blog

モリカトロン開発者ブログ

自動微分+XLA付き機械学習フレームワークJAXを使用してMNISTを学習させてみる

こんにちは、エンジニアの竹内です。 深層学習を行う際によく利用されるフレームワークといえばGoogleが開発しているTensorflowとFacebookが開発しているPytorchの2大巨頭に加えて、Kerasなどが挙げられるかと思いますが、今回はそのような選択肢の一つとし…

可搾取量(exploitability)で不完全情報ゲームの戦略を評価する

こんにちは、エンジニアの竹内です。 以前のブログ記事【CFR】不完全情報ゲームを学習するAIを実装してみる【KuhnPoker】 - Morikatron Engineer Blogにて二人不完全情報ゲームのナッシュ均衡を計算的に求めるCounterfactual Regret Minimizationというアル…

【GAIL】逆強化学習とGANを組み合わせた模倣学習アルゴリズムを実装してみる【CartPole】

こんにちは、エンジニアの竹内です。以前の記事でDQNに模倣学習の仕組みを取り入れたDeep Q-Learning from Demonstrationsというアルゴリズムを紹介しましたが、模倣学習には他にもいろいろなアプローチが存在します。 特にエキスパートの行動軌跡から環境の…

【CEDEC2020】模倣学習でAIに3Dアクションゲームを攻略させてみる(後編)【ML-Agents】

こんにちは、エンジニアの竹内です。 この記事は【CEDEC2020】模倣学習でAIに3Dアクションゲームを攻略させてみる(前編)【ML-Agents】 - Morikatron Engineer Blogの続きとなります。 前編ではUnity側で行った学習の準備を中心的に扱いましたが、後編ではPyt…

【CEDEC2020】模倣学習でAIに3Dアクションゲームを攻略させてみる(前編)【ML-Agents】

こんにちは。エンジニアの竹内です。 まずはじめに、この記事はCEDEC2020というゲーム開発者向けのカンファレンスで発表した内容(CEDEC2020: 攻略、接待、変更に強いAIプレイヤー開発のためのアプローチ)の模倣学習部分について、発表で網羅しきれなかった検…

【CFR】不完全情報ゲームを学習するAIを実装してみる【KuhnPoker】

こんにちは、エンジニアの竹内です。 これまでの記事ではDQfD、PPOといった深層強化学習のアルゴリズムを紹介してきましたが、今回は少し趣向を変えて、ニューラルネットを使わずに不完全情報ゲームの戦略を求めるアルゴリズムを扱いたいと思います。 不完全…

【Tensorflow2】強化学習アルゴリズムPPOを実装してみる【CartPole】

どうもこんにちは。エンジニアの竹内です。 強化学習、とりわけ方策や価値関数をニューラルネットによって近似する深層強化学習と呼ばれるものにはDQNを始めとして実に様々な手法が存在します。 今回はその中でもDQNと並んで割とポピュラーなProximal Policy…

【DQfD】人間のプレイを参考にして学習する強化学習アルゴリズムを実装してみる【後半】

はじめに Montezuma's Revengeについて 実装 学習の大枠 10ステップ分の状態遷移を保存 リプレイバッファの改造 Atariラッパーの追加 デモの作成 損失関数の導入 実験 結果 まとめ References はじめに こんにちは。モリカトロンでエンジニアをやっている竹…

【DQfD】人間のプレイを参考にして学習する強化学習アルゴリズムを実装してみる【前半】

はじめに 前提とする知識 DQfDとは 解説 デモンストレーションからのサンプル 損失関数の追加 事前学習 その他 まとめ 参考文献 はじめに こんにちは。モリカトロンでエンジニアをやっている竹内です。 ゲーム×AIと聞いてまず最初に思い浮かぶのは、やはり囲…