ニューラルネットワークで距離の概念を理解できますか?


10

赤いピクセルと青いピクセルを除いた黒い画面のゲームを想像してみてください。このゲームを人間に与えると、矢印キーを押すと赤いピクセルが移動することが最初にわかります。次に試みるのは、赤のピクセルを青のピクセルに移動することです。

このゲームをAIに与えると、赤のピクセルがランダムに移動し、100万回試行すると青のピクセルに誤って移動して報酬を獲得します。AIに赤と青のピクセル間の距離の概念がある場合、この距離を最小化しようとする可能性があります。

距離の概念を実際にプログラミングせずに、ゲームのピクセルをとると、「エントロピー」などの数を計算できます。これは、ピクセルが互いに接近しているときよりも離れているときの方が低くなるでしょうか。ピクセルの他の構成で動作するはずです。1つは良いピクセルで、もう1つは悪いピクセルが3つあるゲームなど。画面がどのように見えるかについてニューラルネットワークにもっと感覚を与えるためだけですか?次に、NNに「ボードのエントロピーを最小限に抑え、報酬を獲得しようとする」などの目標を設定します。

現在の研究でこれに似ていることはありますか?


私はあなたがそれを距離を表す数値のセット、垂直距離、水平距離、などを養うでしょうあなたが直接それに画像を送るだろうと思うし、それが距離を見つけることが...むしろません
FreezePhoenix

@Pheoはい、しかし、「ゲーム」のすべてのタイプに対して異なる値をフィードする必要があります。私が言っていることとは対照的に、ピクセルがグループ化されている場合は高く、ピクセルが離れている場合は低いグローバルタイプの値を使用できますか?
zooby

「彼らが次に試みることは、赤いピクセルを青いピクセルに移動することです。」「赤」と「青」はほとんどの場合敵であるので、青のピクセルが気づく前に距離を増やし始めます。
Lee

回答:


1

回答

私はあなたの質問を額面通りに受け止め、このトピックを本当に深く掘り下げます。

はい、できます。典型的な人間の心はできます。しかし、人間の心を考慮してください。数十億とは言わないまでも数百万のニューロン。実際、距離は人間の概念と考えることができ、単に世界との相互作用から発展した理論です。

したがって、1〜2年で、大量のニューロンが手元にあれば、このシナリオを再現できます。それはあなたのコンピュータが人間の心と同じくらいの場合です。短い説明は、人間の心は非常に平行しているということです。

ただし、AIではなくプログラムを使用して距離を計算し、結果をAIにフィードして決定を行う方が簡単です。

画面の表示に費やした時間を考慮してください。2つのピクセル間の(おおよその)距離がわかる場合、ニューラルネットワークも同様です。ただし、生きて学習に費やした時間を方程式に追加すると、災害になります。

参考文献

人間の脳は平行です

これは、人間の脳内のすべてのニューロンが互いに独立しているという事実の結果です。ニューロンのブロックは他の操作とは無関係に「考える」ことができるため、真の同時アクションを実行できるため、画像の解釈などのアクションが非常に簡単になり、「ラグ」になるものをごくわずかな量に制限できます。


1

AIを作成して、人間として「見る」ことができます。あなたが言ったように、人間に鍵を与えると、彼はランダムにクリックします。画面上の他のオブジェクトに近づくために押すキーを知る必要があるだけです。AIの基本はオブジェクトの認識だと思います。ゲームの画面オブジェクトをマップするスクリプトを作成してみます。Pythonには正当な例があります。

私はこのような道をたどろうとします:

  • 矢印またはWASDをクリックすることでAIが理解するようにします。これはコンテキストGAMEであり、方向に応じてピクセルを移動するオブジェクトであり、メインの作成者(プレーヤー)を表します。

  • 並行して:領域のすべての境界をマップし、その領域内の異なるオブジェクトにインデックスを付けて、自動的に座標ドメインとオブジェクトの距離を取得します。AIは、オブジェクトを分類するために、ゲームと画像を通してSEE(ストリーミング)する必要があります。分かりますか

  • 並行して:AIは、画面に表示されているすべてのテキストと情報(すべてマップされている、覚えていますか?)を認識する必要があります。テキストが変更されたとき、または何か別のことが起こったときを理解する必要があります。たとえば、彼が各フェーズの初期位置に戻るたびに、カウントがあるたびに、coutがゼロまたは別のタイプの変更を生成する一般的な数に達したときに何が起こりますか。

  • 彼はすべての「リスポーン」で繰り返されることを理解する必要があります。「リスポーン」とは何かを理解する必要もあります。画面上のカウントが終了するたびに返されるすべてのマップ上の特定のマップ位置。または、特定のタイプのオブジェクト(マップされたオブジェクト)に遭遇したとき

正直なところ、超インテリジェントロボットを作成する場合は、さまざまな人間の頭や最高の人間、または各ゲームのルールを通過するすべての手順を実行できます。ただし、特定のボットを作成して特定のタスクを実行する方が簡単な場合もあります。何をしたいかによります


彼はあなたにそれをどのように行う尋ねたのではなく、むしろあなたはそれを行うことができるのですか。
FreezePhoenix

いくつかの方法でそれを行うことが可能です。テンプレートを作成する方法をパスしました。それは理論ではなく、AIの進化に応じて他のプロセスを包含することができるプロセスです。
ギルヘルムIA

1

あなたがそこに言及しているのは、AIで広く研究されている経路計画の完璧な例です。

Aスターアルゴリズムと、ニューラルネットワークでそれを強化する方法を探してください:)


1

問題は次のように分類できます。

<x0,y0,x1,y1>(x0y0)2+(x1y1)2

<x0,y0,x1,y1>

もちろん、2つの別個のニューラルネットワークでこれを行う理由はないので、2つのエンドツーエンドを組み合わせて、画像を入力として、距離を出力として取得するモデルを作成できます。

ただし、このモデルはラベル付きデータでトレーニングする必要があるため、自分でデータを生成するか、画像にラベルを付ける必要があります。

しかし、教師なしで距離を縮めるという概念を学習したい場合は、強化学習を使用する必要があります。この場合、距離を縮めるためにエージェントにインセンティブを与える環境をセットアップする必要があります。これは、アクションが距離を縮めた場合に報酬を得るのと同じくらい簡単かもしれません。

別のアプローチは、将来の報酬を使用してエージェントにインセンティブを与えることです。つまり、報酬は次の即時状態の結果からのみ得られるのではなく、次の可能な状態からの貢献、およびその後の貢献などもあります。これがDeep Q-Learningの背後にある考え方であり、このノートブックに簡単な例(あなたが説明しているものと非常によく似ています)を実装します。

それで、今問題は次のとおりです:この実装は、成功への道をたどるまでランダムに動き回る以外の何かをしましたか?

あなたの例では、目標に到達したときにエージェントに報酬を与えることについて話します。しかし、私が説明したように、目標に近づくことによって報酬を獲得しました(Q関数を介して、または環境から直接)。これは、距離の抽象的な概念を学習することで可能になります(教師ありバージョンで説明できます)。

人間がこれを学ぶとき、それは同じ正確な理由のためです:人間は、将来の報酬の感覚を通してその方向に動くことに対する報酬を得ています。

十分なトレーニングとデータがあれば、強化学習はこの概念を簡単に学ぶことができると思います。ボードに存在する他の報酬(たとえば、「ボードのエントロピーを最小化し、報酬を得ようとする」)に関しては、自分が何を求めているのかを考える必要があります。むしろエージェントは距離を最小化するか、報酬を最大化しますか?原因は、通常、両方を行うことはできません。2つの間のバランスを探している場合、実際には、距離を考慮して報酬を再定義しています。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.