2016-03-24 7 views
-1

私はティックタックトゥを再生するニューラルネットワークを持っています。 (これには他にも優れた方法があると知っていますが、NNについて学びたい) NNはランダムなAIと対戦します。まず、許可された移動をすることを学ぶべきです。既に占有されているフィールドを選択しないでください。ニューラルネットワークの再生ティックタックトゥーは覚えていません

しかし、これで非常に遠く取得していません。 NNが違法な移動を選択すると、ランダムに選択された(法的な)フィールドまでの距離が最小になるように重みを最適化します。 (出力には1〜9の値が必要です)。

私の問題は、次のとおりです。重みを変えることで、以前は最適化された結果は今も変わっています。だから、私はこのような過大評価をしています。特定の状況に対して重みを最適化するために逆行するたびに、他のすべての状況の決定が悪化します。

私はおそらく9個の出力ニューロンの代わりに、1を持つべきであると私は、この缶混乱物事を想定すると、おそらく、ターゲットとしてランダムフィールドを使用しないでください知っています。私はこれを変更し始めています。

それでも、問題が残っているようです。明らかに。他のすべての状況を忘れることなく、1つの状況で決定を改善するにはどうすればよいですか? 私が思いついた解決策は、プレイしたすべてのゲームを「覚えて」、プレイしたすべてのゲームで同時に最適化することでした。

はしかし、しばらくすると、これは計算上非常に厳しいとなります。また、それはすべての可能なボード状況の完全なenumartionの方向に行くようです。これはTic Tac Toeで可能かもしれませんが、私が別のゲームに移動した場合、Goと言うと、これは実行不可能になります。

私の間違いはどこですか?どのように私はこの問題に一般的に取り組んでいますか?それともどこで読むことができますか?どうもありがとう!効率的にこの問題に取り組むために

答えて

0

、あなたの代わりにあなたが現在何をしているかを、強化学習法を検討しsould。あなたがしようとしているのは、チックタックトゥを演奏するエージェントの行動を学ぶことです。エージェントは、ゲームに勝ったときに高い報酬を、失ったときには高いペナルティを、違法な移動を行ったときにはさらに高いペナルティを得る。私の推測では、ニューラルネットワークを使ったQ学習などの方法を使用すると、非常に単純なニューラルネットでも完全に動作することになります。このトピックに関する有用な論文の1つは、https://www.cs.toronto.edu/~vmnih/docs/dqn.pdf、またはTD-Gammonに関する以前の論文(TD-Gammon、Q-learningなどのキーワードを使用して簡単にトピックに関するチュートリアルを見つけることができると思います)。

ところで、あなたのモデルがうまくいかない理由についてのより根本的な答えは、一見して1つのユニットを使ってカテゴリの出力を表現していることです.1とNの間の整数を表現する場合、 0と1の間の値を持つN個の出力ニューロンを使用してそれを表現し、最も高い値を持つニューロンを答えとして選択する必要があります。 1と9の間の値を持つ単一のニューロンを使用すると、出力間に不自然な相関が生成されます。たとえば、期待値が3の場合、ネットワークは2よりも9を出力する際に​​誤差が高くなります。ケース:すべての間違った答えが同じです。このことができます

希望、あなたの答えのための

ベスト

+0

感謝。 – Dan

+0

私は1つの出力が理想的ではないのに、NNはいつも同じフィールドを選んではいけないと覚えていなければなりません。とにかく、私はあなたが推奨するように分類に切り替えました。 しかし、私は他の問題を発見しました。私はMatlabの最適化関数を使用しました。この関数は、初期の重みがゼロに設定されていたため、常にゼロに近い勾配を持っていました。そして、それは決して最適化を開始しませんでした。したがって、私はNNにバイアスを入れました。 まだそれはまだよく学ばないが、私はそれに取り組んでおり、進歩している。 私はQ-ラーニングについて読んでいます。 よろしくお願いいたします。 ダニエル – Dan

関連する問題