ゲーム「原神」では実際に深層強化学習が使われ、オープンソース化されている

ゲーム「原神」では実際に深層強化学習が使われ、オープンソース化されている

[[425402]]

『原神』で魚が釣れないとまだ悩んでいますか?テイワットでの釣りについての遅ればせながらのガイドです。

ゲーム好きの方なら、プレイしたことはないかもしれませんが、「原神」というゲームの名前を聞いたことがあるはずです。

賛否両論のゲームではありますが、「原神」が現在最もホットなゲームの一つであることは認めざるを得ません。

特に海外では『原神』は絶大な人気を誇っていると言えます。

パブリックベータ版以来、国内外の話題やモバイルゲーム収益ランキングで繰り返しトップを獲得してきたこのオープンワールドアドベンチャーゲームは、今年9月にバージョンアップし、マップを追加/強化し、ミニゲーム「釣り」をリリースしました。ゲームには複数の水域に釣りスポットがあり、場所によって釣れる魚が異なります。

これは非常に一般的な遊び方ですが、それでもプレイヤーを惹きつけ、長居させています。一般的に釣りは、竿を投げる→魚が食いつくのを待つ→竿を上げるという3つのステップに分かれます。関係する原則には、デジタル画像処理と機械学習に関する一定の基礎知識が必要です。このモデルは、魚群の位置と識別、および竿を引くこと(魚と遊ぶこと)の 2 つの部分に分かれています。

多くのプレイヤーが釣りガイドを探しています。『原神』で魚が釣れないとまだ悩んでいますか?今日はテイワットでの釣りガイドを遅ればせながらお届けします。

この釣りガイドは完全にあなたの手を解放すると言えます。操作を必要とせず、プログラムを起動するだけで完了します。オンラインになってからわずか数日で、700 以上の星を獲得しました。

GitHubアドレス: https://github.com/7eu7d7/genshin_auto_fish

興味のある方は、Bilibili でこの動画を視聴することもできます。動画はオンラインになってからまだ 3 日も経っていませんが、再生回数は 44 万回を超えています。画面を埋め尽くすコメントの集中砲火はとんでもないものだ。

すでに一部のネットユーザーはこれを使い始めており、「導入され、一晩でアナコンダがダウンロードされました」とコメントしています。

Bステーションアドレス: https://www.bilibili.com/video/BV1964y1b7vV?spm_id_from=333.905.b_7570566964656f.3

プロジェクト紹介

Genshin Impactの自動釣りAIは、 YOLOXとDQNの2つのモデルで構成されています。さらに、このプロジェクトでは、トレーニングに転移学習と半教師あり学習も使用しました。このモデルには、OpenCV などの従来のデジタル画像処理方法を使用して実装された学習不可能な部分も含まれています。

  • YOLOX は、魚の位置を特定して種類を識別し、釣り竿の落下地点を特定するために使用されます。
  • DQN は、力が最適な領域内に収まるように、釣りのプロセスでクリックを適応的に制御するために使用されます。

インストール

このプロジェクトは Python ランタイム環境で使用されます。まず Python をインストールする必要があります。Anaconda が推奨されます。

環境を構成する: Anaconda プロンプト (コマンド ライン インターフェイス) を開き、新しい Python 環境を作成してアクティブ化します (Python 3.7 以下を推奨)。

  1. conda create -n ysfish python= 3.6
  2. conda ysfish をアクティブ化

プロジェクト コードをダウンロードします。git を使用してダウンロードするか、GitHub Web ページから直接ダウンロードして直接解凍します。

  1. gitクローンhttps://github.com/7eu7d7/genshin_auto_fish.git

依存ライブラリのインストール: コマンド ラインをこのプロジェクトが配置されているディレクトリに切り替えます。

  1. cd genshin_auto_fish

依存関係をインストールするには、次のコマンドを実行します。

  1. python -m pip インストール -U pip
  2. Python 要件.py

グラフィック カードをアクセラレーションに使用する場合は、CUDA と cudnn をインストールする必要があります。インストール後、上記のコマンドを無視し、次のコマンドを使用して GPU バージョンをインストールします。

  1. pip インストール -U pip
  2. python requirements.py --cuda [cuda バージョン]
  3. # たとえば、CUDA11.x をインストールした場合
  4. Python 要件.py --cuda 110

yolox をインストールします。コマンド ラインをこのプロジェクトが配置されているディレクトリに切り替え、次のコマンドを実行して yolox をインストールします。

  1. python セットアップ.py 開発

事前トレーニング済みの重みのダウンロード: 事前トレーニング済みの重み (.pth ファイル)、yolox_tiny.pth をダウンロードします。ダウンロード後、重みファイルをプロジェクト ディレクトリ/weights に配置します。

YOLOX トレーニング ワークフロー: YOLOX 部分では、ラベル付けに半教師あり学習を使用します。少数のサンプルにラベルを付けた後、トレーニング モデルは残りのサンプルに対して疑似ラベルを生成し、手動で修正して継続的に反復することで精度を向上させます。サンプルサイズが小さいため、COCO 事前トレーニング済みモデルで転移学習と微調整を使用します。

yolox/exp/yolox_tiny_fish.py の self.data_dir の値を、解凍後に 2 つのフォルダーが配置されるパスに変更します。

トレーニングコード:

  1. python yolox_tools/train.py -f yolox/exp/yolox_tiny_fish.py -d 1 -b 8 --fp16 -o -c weights/yolox

DQN トレーニング ワークフロー: 制御強度は、強化学習モデル DQN を使用してトレーニングされます。 2 つの進捗の差は、モデルの学習方向を提供するための報酬として使用されます。モデルと環境間のインタラクティブな学習。

Genshin Impactで直接トレーニングするには時間がかかります。まず、漁獲力制御操作を大まかにシミュレートするシミュレーション環境を作成する必要があります。シミュレーションでモデルを事前トレーニングします。このモデルはその後、ドメイン間の移行を実現するために Genshin Impact に移行されました。

シミュレーション環境の事前トレーニングコード:

  1. python トレーニングシミュレーション.py

Genshin Impact ゲーム内トレーニング:

  1. python トレイン.py

走る

上記の準備が完了したら、釣り AI を実行できます。コマンドライン ウィンドウは管理者権限で起動する必要があることに注意してください。

グラフィック アクセラレーション:

  1. python fishing.py イメージ -f yolox/exp/yolox_tiny_fish.py -c weights/best_tiny3.pth --conf 0.25 --nms 0.45 --tsize 640 --device gpu

CPU操作:

  1. python fishing.py イメージ -f yolox/exp/yolox_tiny_fish.py -c weights/best_tiny3.pth --conf 0.25 --nms 0.45 --tsize 640 --device cpu

実行後、init ok が表示されたら、r キーを押して釣りを開始します。Genshin Impact は全画面にする必要があります。パフォーマンス上の理由により、検出ボックスはリアルタイムで表示されず、処理操作はバックグラウンドで実行されます。

実装の詳細については、元のプロジェクトを参照してください。

<<:  AIを活用したリアルタイムの脅威インテリジェンスでサイバー脅威に対抗する方法

>>:  リザーブプールコンピューティングにおける新たなブレークスルー:ニューロン数が少なくなり、コンピューティング速度が最大100万倍に高速化

ブログ    
ブログ    

推薦する

...

AIがテキストを元に「抽象画」を描いたらどうなるでしょうか? |DeepMindの新アルゴリズム

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

ファイアウォールではできないことを人工知能で実現できるでしょうか?

[[183545]]ハッカーが徐々に人工知能システムに適応するにつれて、プログラマーも積極的に新し...

詳細 | EUの人工知能法案が進行中:公共の場での顔認識の禁止を求める、市場シェアを獲得するために厳しい監視が必要

最近、EUの人工知能規制に新たな展開がありました。欧州データ保護委員会(EDPB)と欧州データ保護監...

...

AIと自動化がプロセスマイニングを改善する6つの方法

企業のデジタル ツインを作成し、ロボティック プロセス オートメーション (RPA) などの自動化テ...

テキストマイニングからの分類、クラスタリング、情報抽出などのアルゴリズムのレビュー

テキストマイニングは、推奨システム、検索システム、その他の広範なアプリケーションなど、テキストマイニ...

...

形式言語を認識する能力が不十分で、不完全なトランスフォーマーは自己注意の理論的欠陥を克服する必要がある

トランスフォーマー モデルは多くのタスクで非常に効果的ですが、一見単純な形式言語ではうまく機能しませ...

...

健康コードがないと旅行するのは難しいですか?顔認識により健康コードのバリアフリー利用が可能に

「公共交通機関では健康コードの提示が求められますが、提示できない場合はどうすればよいですか?」予防と...

制御核融合における新たなマイルストーン! AIがプラズマの裂け目を予測することに成功し、ネイチャー誌に掲載され、クリーンエネルギーの「聖杯」に一歩近づいた。

制御された核融合に新たな進歩がありました!核融合は長い間、プラズマ不安定性の問題という「幽霊」に悩ま...

人工知能技術は子供たちにどのような影響を与えるのでしょうか?

人工知能技術は、おもちゃ、オンライン アプリケーション、ビデオ ゲームに組み込まれています。AI ア...

...

...