AlphaCode がリリースされました! 「AlphaGo」のプログラミング版が静かに競争し、プログラマーの半数を破る

AlphaCode がリリースされました! 「AlphaGo」のプログラミング版が静かに競争し、プログラマーの半数を破る

本日、DeepMind の「Alpha」ファミリーに新しいメンバーが加わりました。

プログラミング競技の問題が解けるAlphaCodeが登場!

実際、AlphaCode は数か月前に「ひっそりと村に入り込んで」いたが、誰もそれに気づかなかった。

有名なウェブサイト Codeforces が最近開催した 10 回のプログラミング コンテストにひっそりと参加し、そのパフォーマンスは人間の半分を上回りました。

DeepMind が最終結果を発表したのは今日になってからだった。AlphaCode は Elo スコア 1238 で、これら 10 ゲームの上位 54.3% にランクインした。

さらに重要なのは、アルゴリズムの創造性をテストするプログラミング コンテストにおいて、AI がついに劣っていないことです。これはまさに、これまでの AI に欠けていたものです。

このスコアを過去 6 か月間全体で見ると、AlphaCode のパフォーマンスはさらに優れており、わずか 10 週間の質問でユーザーの上位 28% のレベルに達しています。

Codeforces は、ロシアのプログラマー Mikhail Mirzayanov によって設立されたプログラミング コンテストの Web サイトで、週に 1 回程度「Codeforces Rounds」と呼ばれるプログラミング コンテストを開催しています。

Codeforces の Elo スコアは、プログラマーのプログラミング レベルを測定できます。

△ Codeforces 創設者 ミハイル・ミルザヤノフ

AlphaCode の結果を見て、創設者のミルザヤノフ氏も驚きました。

プログラミングコンテストではアルゴリズムを考案する能力が最も難しいため、彼はもともと AI に対して懐疑的でした。しかし、予想外に、AlphaCode の結果は彼の期待を完全に上回りました。

DeepMindがこのメッセージを公開してからわずか半日で、Twitter上で2,000回以上リツイートされ、5,000回以上「いいね!」されました。

AlphaCodeのプログラミング方法

ここまで述べてきましたが、AlphaCode がどのようにして「プログラミング試験受験者」になったのかを見てみましょう。

Codeforces の 1553D の問題は次のとおりです。

(リンク: https://codeforces.com/problemset/problem/1553/D)

文字列は s と t の 2 つあり、どちらも小文字で構成されています。文字列 s の場合、文字列全体を前から後ろへスキャンします。

Backspace キーを押すと、カーソルから削除されていない最後の文字までのすべての文字が削除されます。

たとえば、文字列 s が「abcbd」の場合、それぞれ 1 番目と 4 番目の位置で Backspace キーを押すと、文字列「bd」が表示されます。

最初のカーソル位置の前に文字がないため、最初はアクションは発生しません。 4 番目のカーソル位置の前の文字は c で、削除されていない前の文字は a なので、Backspace キーを押すと最初の 3 文字「bd」が削除されます。

さて、ここで質問です。

文字列 s を前から後ろまでスキャンして、 s を t に変更できますか?はいの場合は YES を出力し、そうでない場合は NO を出力します。

AlphaCode によって与えられたコードは次のとおりです。

 t = int(入力())
iが範囲内(t)の場合:
s = 入力()
t = 入力()
a=[]
b=[]
s 内の j の場合:
a.append(j)
j が t の場合:
b.append(j)
a.reverse()
b.リバース()
c=[]
len(b)!=0かつlen(a)!=0の場合:
a[0]==b[0]の場合:
c.append(b.pop(0))
a.pop(0)
a[0]!=b[0]かつlen(a)!=1の場合:
a.pop(0)
a.pop(0)
a[0]!=b[0]かつlen(a)==1の場合:
a.pop(0)
len(b)==0の場合:
印刷("はい")
それ以外:
印刷("いいえ")

上記のプログラムに 4 セットの文字列を入力します。

 4
アババ

アババ
bb
ああ
ああ
アババ
アババ

出力は次のようになります。

はい
いいえ
いいえ
はい

ここで、AlphaCode はもはやブラック ボックスではありません。

問題が正常に解決されるだけでなく、コードの対応する場所と強調表示された領域も表示されます。

あるネットユーザーはこう言った。「AIはこんなに注意深く見ることができるのだから、コードの後に​​コメントを追加できるともっと良いだろう。」

その他の事例については、AlphaCode の Web サイトをご覧ください。

原理

DeepMindは、Codeforcesコンテストで求められる問題解決能力は既存のAIシステムの能力を超えていると述べた。

AlphaCode モデルのプロセス全体は次のとおりです。

  1. 標準の言語モデリング目標を使用して、GitHub で Transformer ベースの言語モデルを事前トレーニングします。このモデルは、人間が書いたコードの空間を適切に表現し、問題の検索空間を大幅に削減します。
  2. 競技プログラミング データセットでモデルを微調整し、GOLD とテンパリングをトレーニング目標として使用して、検索空間をさらに縮小し、事前トレーニングを使用して競技プログラミング データの少量を補います。
  3. 各問題に対してモデルから非常に多数のサンプルを生成します。
  4. サンプルはフィルタリングされ、インスタンス テストとクラスタリングを活用してプログラムの動作に基づいてサンプルを選択し、非表示のテスト ケースで評価される候補の送信の小さなセット (最大 10 個) が取得されます。

要約すると、大規模な Transformer モデルと大規模なサンプリングおよびフィルタリングを組み合わせることで、DeepMind は解決できる問題の数において、以前の研究よりも桁違いに多くの進歩を遂げました。

試験問題を練習する人は反対する

Codeforces の創設者が言ったように、アルゴリズムを発明することがプログラミングの問題の中で最も難しい部分です。

世界的なプログラミングコンテストのウェブサイトで常に上位にランクされている Google エンジニアの Petr Mitrichev 氏は、次のように述べています。

プログラミング競技の問題を解くのは非常に難しいことです。問題解決には、優れたコーディング スキルと人間の創造性の両方が必要です。

AlphaCode は最初のプログラミング ツールではありません。Codex と GitHub Copilot はどちらも印象的な印象を与えています。

しかし、DeepMind は AlphaCode が以前のものとは大きく異なると考えています。

最近の大規模言語モデルは、コード生成において優れた能力を発揮しており、単純なプログラミングタスクを実行できるようになりました。しかし、これらのモデルは、命令をコードに変換する以上の問題解決スキルを必要とする、より複雑で目に見えない問題で評価すると、依然としてパフォーマンスが低下します。

Twitterとはまったく対照的に、Codeforcesの専門家はより抵抗力があります。

あるプログラマーはこう考えました。「この AI は本当に初心者だ。」

AlphaCode の得点は学生レベルに相当する 1238 ポイントのみであるため、情報オリンピックに参加する中学生でもこのレベルに到達できます。

DeepMind は AlphaCode が人間を支援することを目的としていると主張しているが、一部のプログラマーは懸念し始めている。

今では問題解決の世界さえも AI に奪われてしまいました。本来はプログラマー同士が学び合う場でした。AI は適切なタイミングで立ち止まり、プログラマーのために清らかな土地を残すべきです。


<<:  機械知能に取って代わられない5つのスキル

>>:  実は不滅なんです!冬季オリンピックの水中聖火リレーはロボットでどのように行われたのでしょうか?どのようなハイテク技術が使われたのでしょうか?

ブログ    
ブログ    

推薦する

...

AIチップと人工知能産業は密接に連携している

[[355495]]人類社会は情報化から知能化へと移行しています。人工知能は知能化を実現するための重...

人工知能が中国の古典「古いドラマ」と「古い映画」に新たな表情を与える

映画「トンネル戦争」修復前と修復後の比較。画像はインタビュー対象者より提供新華社北京1月1日(記者フ...

人工知能は医療従事者の燃え尽き症候群を軽減すると期待されている

[[266831]]臨床医は世界で最も困難な仕事の一つです。彼らは、高齢の患者層に対応するために24...

自動車業界における人工知能の5つの主要な応用

[51CTO.com からのオリジナル記事] 自動車業界における人工知能の応用を考えるとき、最初に思...

2018 年に最も人気のあるディープラーニング フレームワークはどれでしょうか?この科学的なランキングからわかることは

ディープラーニングは、機械学習の分野で最も注目されているテクノロジーです。ディープラーニング フレー...

AIの冷却:ディープラーニングは万能薬ではない

[[202706]]近年、ディープラーニングはある程度の流行状態に入り、人々はこの技術を使ってあらゆ...

人工知能は諸刃の剣です。EUは利益を促進し、害を避けるための規制を導入しました。

近年、交通と環境に対する要求が継続的に高まっており、わが国の新エネルギー自動車は急速な発展を遂げてい...

パンデミック後、AI教育はどのように存在していくのでしょうか?

現在の教育における人工知能の応用は、依然として「弱い人工知能」になりがちですが、教育の効率性を向上さ...

ビッグデータとリアルタイム分析のためのアルゴリズム分類

今日、ビッグデータ技術の発展と進歩により、大量のデータを収集および送信するための新しい、より効率的な...

...

蔡子星院士:オープンソースは人工知能開発の新たなトレンド

[[397103]] 「AIコア技術の躍進は産業の高度化の原動力であり、オープンソースはAI発展の新...

人工知能の影響を受ける低リスクおよび高リスク職業トップ10

囲碁は伝統的な高知能ゲームです。旗取りのプレイヤーは、正方形の格子模様のチェス盤と白黒の丸いチェスの...

2021年のAIに関する10の大胆な予測

2020年は忘れられない年です。今年に入って、新型コロナウイルスの感染拡大に伴い、人工知能(AI)が...

2020年を振り返ると、我が国のドローンは4つの新たな変化を遂げた。

2020年は紆余曲折の多い年であり、ドローン開発にとっては革新と変化の年です。今年、我が国のドロー...