人工知能プログラミングは、人間がよりインテリジェントな機械を作成するのに役立ちますか?

人工知能プログラミングは、人間がよりインテリジェントな機械を作成するのに役立ちますか?

テクノロジーが急速に進歩するにつれ、人工知能プログラミングはますます成熟しつつあります。その開発は、人間がよりインテリジェントな機械を作るのに役立つのでしょうか?

[[319939]]

プログラム合成とは、仕様に基づいてプログラムを自動的に生成する概念を指します。プログラムの検証とは異なります。プログラム検証は、正式な証明に基づいて、プログラムが正式な仕様に従って動作するかどうかを検証します。

1957 年、コーネル大学で開催された記号論理学会の夏季会議で、アロンゾ・チャーチは数学的要件に基づいたプログラムを合成しようと試みました。 1960 年代に、 AI 研究者はプログラム合成の概念を詳しく説明し、それを一般的な AI 研究に適用しました。

近年、ディープラーニングにより人工知能がタスクを達成する方法が変革しました。この進歩により、研究者たちは人間が得意とするタスクを人工知能に教えようと試みるようになった。重要な分野の一つは、人間が得意とする種類のタスクを人工知能が学習できるようにするメタ学習システムを作成することです。ニューラル プログラム合成とロボット工学に関する研究では、当初、プログラム合成を使用してロボットにタスクを正確に実行する方法を教えることができることが実証されました。

プログラム合成は、コンピュータプログラミングの実装を容易にするために最もよく使用されます。 AutoProf、FlashFill、Storyboard プログラミング ツールなどのアプリケーションを使用すると、学生はコードを記述せずに特定の概念を直接操作することで、より直感的な方法でプログラミングできます。

AI 研究者の François Jolet 氏は、論文「知能テスト」の中で、知能テストの問題をモデルにした ARC タスクを解決するための手法としてプログラム合成を紹介しています。

ジョレット氏は、自身の論文についてザ・ヴァージ誌のインタビューで次のように語った。「重要な点は、タスクが、これまで知られていなかった多数の問題にわたって新しいスキルを習得するメタタスクでない限り、どんなタスクでも高いスキルを習得することは知性の兆候ではないということです。まさにそれが、私が知性の基準と考えているものです。」

基本的に、システムの知能は、Chollet 氏が言うように、次の方法でテストする必要があります。「これは、システムがこれまで知らなかった新しいタスクのみを使用し、タスクの開始時にシステムの事前知識を測定し、システムのサンプリング効率 (つまり、タスクを実行するために学習するために必要なデータの量) を測定することを意味します。特定のスキル レベルに到達するのに必要な情報 (事前知識と経験) が少ないほど、そのシステムはよりインテリジェントです。今日の AI システムはまったくインテリジェントではありません。」

彼は後に、ARC タスクを Kaggle の抽象および推論問題チャレンジで解決すべき問題として投稿しました。この問題を解決するには、プログラミング合成の力を活用して、これまで知られていなかった ARC タスクを学習する必要があります。

プログラミング合成問題の分解

解決不可能と思われる問題はすべて、まず小さな問題に分解することができます。合成プログラミングを学んだことがない場合は、作業を開始する前に、問題が何であるか、そしてそれをどのように解決するかを理解してください。

1. プログラムスペースの問題

すべてのプログラミング合成問題には、最終的にはプログラム空間全体の検索が含まれます。検索方法は有効である必要があります。ツリー アルゴリズムを使用する場合、このツリーの枝を切り落とす方法が必ずあると考えてください。そうしないと、ツリーが成長するにつれて、無限に成長する可能性があります。

2. ユーザーの意図の問題

ユーザーの意図をテストするロジックの間には、曖昧な領域が存在することがよくあります。ユーザーが環境とやりとりすると、発見が起こります。ユーザーが参加すると、新しいデータによって、ユーザーの目にはまったく新しい問題が映るようになるかもしれません。

Kaggle チャレンジを成功裏に解決するには、必然的にこれら 2 つの問題を解決する必要があります。

手続き型合成のためのユーティリティ

Python では、Z3 はプログラム合成用の Python パッケージです。こちらはAdrian SampsonによるZ3の優れたチュートリアルです。

彼の記事の例は次のとおりです。

次のように汎用ソルバーを構築します。

Adrian Sampson のブログからのコード

次に、実行する数式を定義します。

Adrian Sampson のブログからのコード

実行: print(solve(formula)) を実行して、任意の問題を解決します。詳細と例については彼のチュートリアルをお読みください。

手続き型合成についてさらに詳しく知りたいですか?

以下に、手続き型合成に関連する学習リソースをいくつか示します。

1. プログラム合成のためのディープラーニング https://sunblaze-ucb.github.io/program-synthesis/index.html

2. ディープコーダー: プログラムの書き方を学ぶ

https://openreview.net/pdf?id=ByldLrqlx

3. ディープラーニングプログラム合成Microsoft Research

https://www.microsoft.com/en-us/research/blog/deep-learning-program-synthesis/

François Jolet が提案した Kaggle チャレンジの解決に取り組んでいる場合、この記事が役立ちます。

「いかなる問題も、それを生み出したのと同じレベルの意識では解決できない。」 - アルバート・アインシュタイン

あらゆる「不可能」な課題は、問題解決を決してあきらめなかった人々によって一歩一歩解決されました。

さあ、君は最高だよ!

<<:  IoTドローンが都市を消毒する方法

>>:  AI監視の影響について知っておくべき3つのこと

推薦する

企業はアルゴリズムやデータを通じて、どのようにより深い堀を築くのでしょうか?

[51CTO.com からのオリジナル記事] データは今最もホットなものです。当時は「紙は洛陽と同...

調査レポート:2021年にAI機能を導入する企業が増加

[[360189]]今年、ほとんどの企業は、新型コロナウイルス感染症による混乱に対処し、リモートワー...

「小さいけれど優秀」な大規模言語モデル Zephyr 7B の詳細な説明

Zephyr は、Hugging Face がリリースした一連の大規模言語モデルであり、蒸留教師あり...

安定拡散法を使って超リアルな人間の顔を生成する3つの方法

翻訳者 |ブガッティレビュー | Chonglou他の人はAI画像を使って超リアルな顔を生成できるの...

公正な「データアクセス」の新秩序の構築 AIが都市統治に根付く

最近では、AI テクノロジーがさまざまな業界に大きな影響を与えていることがニュースで頻繁に紹介されて...

2030 年までにどの AI アプリケーションが普及するでしょうか?

何十年もの間、人工知能はSFの中で邪悪な力として描かれてきました。アーサー・C・クラークの『宇宙の旅...

AIが医薬品開発において適切な医薬品成分の特定にどのように役立つか

[[378110]]デジタル技術の導入に関しては、製薬業界では導入が遅れる傾向にあります。これまで、...

マスク氏はオープンAIの主任科学者に質問した。「いったい何を見てそんなに怖くなったのですか?」

2015年11月27日、イーロン・マスクはイリヤ・スツケヴァー氏がOpenAIの主任科学者として参...

ラスベガスの「チャイナナイト」:中国の人工知能が外国人に人生への疑問を抱かせ始める!

CES は世界最大かつ最も影響力のある消費者向け電子機器展示会です。米国時間1月8日、ラスベガスで...

5Gが企業に与える影響

画像ソース: https://pixabay.com/images/id-1069218/ 2024...

Java で実装されたいくつかの一般的なソートアルゴリズムの詳細な解釈

ソートアルゴリズムはさまざまな場所で使用されています。最近、そのアルゴリズムを読み直し、自分で簡単に...

研究報告によると、GPT-4の「知能」は大幅に低下している

7月20日、スタンフォード大学とカリフォルニア大学バークレー校の研究チームが最近GPT-4の詳細な研...

「統合インテリジェンス」について語るサンダーソフトはスマートカーの時代をリードする

[51CTO.comからのオリジナル記事] 5G+AIoTを中核とするさまざまなインテリジェント技術...

...