### トラブルを招く!
AI は、人間が GitHub でどのように更新 (コミット) を送信するかを「観察」し、人間のプログラマーを真似てコードを変更しました...最終的に、AI は無事に「訓練」されました インテリジェントなロボットが誕生しました: 冗談抜きで、OpenAIが発表した最近の研究では、この種の恐ろしいことが実際に起こっていました… もともと、研究者たちが解決したいと思っていたのは、知的ロボットに動きを学習させるという遺伝的プログラミング (GP) 問題でした。 (GP は進化的コンピューティングの特殊な分野です。主に、問題を独立して解決するプログラムを自動的に構築することを目的としています。) しかし、OpenAI は異なるアプローチを採用し、独自の大規模言語を使用します。モデル (LLM) ) を投入したところ、結果は大きな「予想外」でした。 これまで、知的エージェントが良い方向に発展するためには、知的エージェントの進化の過程で、人間の研究者が詳細な調整を行って進化の方向を決定することに参加する必要がありました。 現在、これらすべてのタスクは大きなモデルによって処理されます。学習して、独自のコードを作成し、自分で「調整」することができます: この論文の著者であるジョエル・リーマンがインターネット上に公開されるとすぐに、すぐにネチズンから多くの注目を集めました。 これを読んだプログラマーは、ネチズンは「(テクノロジーの)開発のペースについていけない」と述べています: OpenAI 自体も研究で次のように述べています: 人間の思考レベルで動作する進化的アルゴリズム間のギャップを埋めます。 それでは、AI はどのようにしてこの「魔法のような」ことを達成したのでしょうか? GitHub を見てみましょう。AI が自らコードを入力します 仮想環境で可動ロボットを設計することは、遺伝的アルゴリズム研究において非常に人気のあるプロジェクトです。 特に「ソーダレース」は計算量が少なく、プロセスの可視化が容易なため、非常に人気があります。 ルールはシンプルで、「関節」と「筋肉」で構成されたロボットがさまざまな地形を駆け巡ります。 OpenAI はまた、最新のプログラミング言語に対する新しい手法の多用途性を実証するために、競技プログラム全体を専用の遺伝コーディングから Python バージョンに意図的に書き直しました。 たとえば、この Python コード部分は初期シード ロボットとして使用できます。 正方形の4つの頂点ジョイントと端ジョイントを定義し、それらを「筋肉」で接続すると、結果は次のようになります。 #しかし、このような四角い構造物は全く動くことができないので、次に遺伝的アルゴリズムによってコードを修正する必要があります。 研究チームは、従来の遺伝的アルゴリズムを使用してコードを変更する場合と、人間のプログラマーが自分でコードを変更する場合との間には、効率性において依然として 2 つのギャップがあると考えています。 1 つは、ソフトウェアがますます複雑になっていることです。人間はモジュールを作成できますが、現在、最も高度な遺伝的アルゴリズムは、人間が使用するプログラミング言語でこれを行うことはできません。 もう 1 つは、ほぼすべての遺伝的アルゴリズムがランダムな突然変異に依存しており、人間のプログラマーがコードを変更するたびに、機能の追加、効率の向上、または修復のいずれかの目的があるということです。 では、人間がコードをどのように変更するかを AI が学習する方法はあるのでしょうか? はい、必要なトレーニング データはすべて GitHub に保存されています。 優秀なプログラマは、コードを提出するたびにコミットの説明を書き、この提出で何が変更されたかを明確に説明します。コミットの説明と、送信前後のコードを比較する差分データを組み合わせたものは、AI にとって優れた学習教材となります。
研究者らは、GPT-3 アーキテクチャ AI モデルをトレーニングするために、明確な説明と少量の修正コードを含む提出されたデータの一部を選別しました。
これは、AI にコードの一部を意図的に変更する方法を人間のプログラマーから学習させるのと同じです。
この論文で使用されるモデルは、GPT-3 のフルバージョンの 1,750 億個のパラメータほど大きい必要はなく、最大 7 億 5,000 万個のパラメータで十分です。
このようにして、遺伝的アルゴリズムにおける突然変異オペレーターの役割を果たす基本的な AI モデルが得られます。
AI に新しいロボットを設計させる次のプロセスは 3 つのステップに分かれています。
最初のステップは、従来の MAP-Elites アルゴリズムを使用してロボットの初期セットを生成することです。
これは、ロボットが異なる動作をし、すべてが高品質であることを保証する QD (Quality Diversity) アルゴリズムです。
2 番目のステップでは、最初のステップで生成された初期データを事前トレーニングに使用して、AI がまずトレーニング データ内でロボットの設計を学習できるようにします。分布。
これは、インターネット上のすべての人に衝撃を与えた冒頭のアニメーション画像で、AI が動かない「ブロック」を交互に跳ねる脚を備えた移動ロボットに段階的に変換する様子を示しています。
3 番目のステップは、AI がさまざまな地形条件に応じて環境に適応できるロボットを生成できるように、強化学習アルゴリズムを微調整することです。
最終的に、研究者らは効果を実証するために、最初の 3 つのシードから進化したロボットを選択しました。
構造や動作方法が全く異なることが分かります。
この研究が発表されると、一石で何千もの波を引き起こしたと言えます。
多くのネチズンは、「大規模モデル進化アルゴリズム」を組み合わせるこの斬新な方法に驚いています:
関連研究を行った研究者も、「考えもしなかった」と述べています。大規模なモデルを使用して差分形式で突然変異を学習できるということ:
研究モデルとそれ自体についての議論に加えて、一部のネチズンは次の写真も追加しました。
うーん...ちょっと似ていますね。
この研究のチームメンバーは全員 OpenAI の出身です。
この論文の最初の著者は、機械学習科学者の Joel Lehman です。重点分野には、人工知能セキュリティ、強化学習、オープン検索アルゴリズムが含まれます。
同時に、ジョエル・リーマンは以前、人工知能の開発についての考えに基づいた科学本「なぜ偉大さを計画できないのか: 客観性の秘密」を共著しました:
この研究の次のステップについては、Joel Lehman 自身が次のように述べています:
もう 1 つの重要な問題があります。それは、モデルが他の環境にどの程度適用できるかということです。
GP における変異の有効性は ELM によって大幅に改善できるようになり、幅広い新しい応用や研究の方向性を刺激することになります。
では、この研究はあなたに新たなインスピレーションを与えてくれましたか?
参考リンク:
[1]https://arxiv.org/abs/2206.08896
[2]https://twitter. com/joelbot3000/status/1538770905119150080?s=21&t=l8AASYjgC6RAEEimcQaFog
以上がAI はエージェントを進化させるために独自のコードを作成します。 OpenAIの大きなモデルは「人間の思考」のような味わいの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。