この記事はWeChatの公開アカウント「Zhibin's Python Notes」から転載したもので、著者はAn Keです。この記事を転載する場合は、Zhibin の Python Notes 公開アカウントにご連絡ください。 みなさんこんにちは、私はZhibinです〜 ジビンは今、チェスの終盤を迎えており、黒側にはキングが 1 体だけ、白側にはポーン 1 個とキング 1 体だけしか残っていない。これで、ジビンは、白がチェックして黒が勝つか、引き分けかという 2 つの結果が起こり得ることを知っています。 では結末は?次はディープラーニング人工ニューラルネットワークアルゴリズムを使って答えを出していきましょう~ 1. ルールの紹介プログラムをコンパイルする前に、チェスのルールを簡単に理解する必要があります。ルールは次のとおりです。 チェス盤のサイズは 8 x 8 で、黒と白のチェスの駒がそれぞれ 16 個あります。つまり、キング 1 個、クイーン 1 個、ルーク 2 個、ゾウ 2 個、ナイト 2 個、ポーン 8 個です。 兵士: 前進のみ可能 (中国将棋と同様に後退は不可)、一度に 1 マスしか移動できません。ただし、チェスのポーンが最初の動きをするときは、1 マスまたは 2 マス移動できます。ポーンが駒を取る方法は、移動方向によって異なります。ポーンは、まっすぐ移動して駒を取ります。つまり、ポーンの斜め前方のマスの中に相手の駒があれば、それを取ってそのマスを占領することができます。 王:水平、垂直、斜めに移動できますが、一度に移動できるのは 1 ステップだけです。しかし、中国のチェスと比較すると、王は食べ物を与えることができません。つまり、王は敵が支配するマスに入ることができません。そうでなければ、「王を送る」という反則とみなされます。合計 3 回のファウルは負けになります。 勝ち負け:相手の最高司令官である王を捕らえると勝ち、相手を動けなくすると引き分けとなります。 2. 解決策1 トレーニングセットを読む krkopt.data トレーニング セットを読み取ります。コードは次のとおりです。
読み取り結果の表示: 上記の各データ行はトレーニング サンプルです。以下に示すように、最初のデータ行を分析の例として取り上げます。 a1、b3、c2 は 3 つのチェスの駒の座標を示します。黒のキングは図に示すように位置 a1 にあり、白のキングは図に示すように位置 b3 にあり、白のポーンは図に示すように位置 c2 にあります。この時、黒キングはもう打つ手がない状態となり、ゲームは引き分けに終わります。そのため、最終引き分けは引き分けを意味します。データの最後のラベルが 6 であると仮定すると、白は最大 6 手で黒を倒すことができることを意味します。 2 トレーニングを開始する まず、トレーニングに必要な Python ライブラリをインストールします。
次に、データセット全体を 3 つの部分に分割します。コードは次のとおりです。
次に、Scikit-learn の Scaler クラスを使用して、平均を減算し、分散で割ることで標準を正規化します。コードは次のとおりです。
ニューラル ネットワークを作成します。コードは次のようになります。 その中には、layer=[6, 20, 20, 20, 2] 入力は6次元、出力は2次元、合計3層のニューラルネットワークがあり、各層には20個のニューロンがあります。
トレーニング開始後、COST 損失関数は継続的に減少しているのに対し、認識率の精度はゆっくりと増加し、1 に限りなく近づいていることがわかりました。 コードは次のとおりです。 上記の分析の結果、白が勝つ確率は非常に高く、ほぼ 1 に近いことがわかります。 3. まとめ1. この記事では、チェスの終盤を例に、人工ニューラル ネットワーク アルゴリズムの実装方法を説明します。後でまた練習していただければ幸いです。 2. この記事は学習参考のみを目的としており、他の目的には使用できません。 コラムニスト:強化学習とマルチエージェントコラボレーションを研究している大学院生、An Ke。勉強が好き、学ぶのが大好き、共有する意欲があり、そして何よりも、彼女は美しい女性です〜 |
<<: 中国消費者協会:所有者や消費者は顔認識を強制されることはない。情報が漏洩すると非常に有害だからだ。
[[416631]]現在、NLP分野ではTransformerベースのモデルが人気を博しており、大規...
現在、ビジョントランスフォーマー (ViT) の分野には 2 つの大きな問題点があります。1. Vi...
サザンメソジスト大学(SMU)とNASAの研究者らは、科学的データに関する質問に答えることができる人...
[[361228]]スペインは、感染者数が170万人を超え、欧州で新型コロナウイルスのパンデミック...
最近、中国サイバースペース管理局は「インターネット情報サービスアルゴリズム推奨管理規則(草案)」(以...
[[341117]]この記事はWeChatの公開アカウント「Invincible Coder」から転...
世界的なパンデミックは2年近く続いており、リモートワークで何日も過ごし、他の人との物理的な接触を切望...
言語は人間にとって最も重要なコミュニケーションツールであり、人工知能の分野における最も挑戦的な研究対...
学習と進化ご存知のとおり、量子という概念は120年前にドイツの物理学者プランクによって提唱されました...
オートエンコーダー (AE) と生成的敵対的ネットワーク (GAN) は、複雑な分布に対する教師なし...
著者 | 王 睿平今日、大規模言語モデル技術が継続的に成熟するにつれ、専門家はそれを活用してインテリ...
AI やロボットについて話すとき、多くの人の頭に最初に浮かぶのは、しばしば「終末後の時代」に猛威を振...
昨晩、娘がぼんやりしてリビングルームに立っていたので、私は彼女に尋ねました。「何をしているの?」彼女...