コンピュータプログラミングはかつてないほど簡単になりました。 当初、プログラマーはグラフ用紙に記号を書き、それをカードに打ち込んでコンピューターが処理できるように手作業でプログラムを作成していました。 1 つのマークが不正確な場合は、プロセス全体をやり直す必要がある場合があります。 今日、プログラマーは作業の多くを自動化するさまざまな強力なツールを使用しています。しかし、些細なバグでもソフトウェア全体をダウンさせる可能性があり、システムが複雑になるにつれて、こうしたバグを追跡することがますます困難になります。 最近、Intel の科学者は、マサチューセッツ工科大学 (MIT) およびジョージア工科大学 (Georgia Tech) の研究者と共同で、新しいマシン プログラミング (MP) システムである Machine Inferred Code Similarity (MISIM) を発表しました。このシステムは、コードの構造を調査し、同様の動作をする他のコードの構文上の違いを分析することで、ソフトウェアが何をすべきかを学習するように設計された自動エンジンです。 MISIM システムのパフォーマンスは、現在の最先端のシステムの 40 倍であり、コード推奨から自動エラー修復までの応用展望を示しています。 論文アドレス: https://arxiv.org/pdf/2006.05265.pdf MISIM: 開発効率を向上、最先端の類似性システムの40倍の性能異機種コンピューティングの台頭により、ハードウェア システムとソフトウェア システムはますます複雑になっています。この複雑さと、複数のアーキテクチャにわたって専門レベルでプログラミングできるプログラマーの不足が相まって、新しい開発方法論の必要性が浮き彫りになりました。 自動コード生成は長年にわたって注目されている研究テーマです。 Microsoft は、広く使用されているソフトウェア開発ツールに基本的なコード生成機能を組み込んでいます。 Facebook は小規模なプログラムを自動化できる Aroma というシステムを開発しており、DeepMind は人間が設計したものよりも効果的な単純なアルゴリズム バージョンを提供できるニューラル ネットワークを開発しました。 OpenAI の GPT-3 言語モデルでも、自然言語プロンプトから簡単なコード スニペットを生成できます。 マシンプログラミングは、自動化ツールの使用を通じて開発効率を向上させることを目的とした論文「マシンプログラミングの 3 つの柱」で Intel Labs と MIT が提案した用語です。 これらの新しいマシン プログラミング ツールの重要なテクノロジはコードの類似性であり、これにより、特定のソフトウェア開発プロセスを正確かつ効果的に自動化して、このニーズを満たすことができます。 しかし、正確なコード類似性システムを構築することは未解決の問題です。これらのシステムは、2 つのコード スニペットが類似の特性を示しているか、類似の目標を達成するように設計されているかを判断しようとします。ソースコードだけを研究するのは難しい作業です。 そのため、研究者は、新しいエンドツーエンドのコード類似性システムである Machine Inferred Code Similarity (MISIM) を提案しました。 MISIM は、2 つのコードが異なるデータ構造とアルゴリズムを使用している場合でも、2 つのコードが類似の計算を実行するタイミングを正確に推測できます。
「これは、マシンプログラミングのより壮大なビジョンに向けた重要な一歩です」と、インテル研究所の主任科学者兼マシンプログラミング研究ディレクターのジャスティン・ゴットシュリッヒ氏は語った。 MISIM と既存のコード類似性システムの主な違いは、コードが実際に何を行うかを理解し、コード構文から意味的な意味を高めることを目的としている、新しい Context-Aware Semantic Structure (CASS) にあります。 他の既存の方法とは異なり、CASS を特定のコンテキストに合わせて構成できるため、より高いレベルでコードを記述する情報を取得できます。 CASS は、コードの方法論ではなく、コードの機能に関するより具体的な洞察を提供できます。 さらに、MISIM は、人間が読めるソース コードをコンピューターが実行できるマシン コードに変換するコンパイラを使用せずにコードを評価できます。 MISIM には、開発者が現在作成中の不完全なコード スニペットを実行する機能など、既存のシステムに比べて多くの利点があり、これはレコメンデーション システムや自動バグ修正にとって重要な実用的な機能です。 MISIMシステムの概要 MISIM は、学習可能なパラメータを持つさまざまなニューラル ネットワーク アーキテクチャを介して実装できる、ニューラル ベースのコード類似性スコアリング アルゴリズムを提供します。 コードの構造が CASS に統合されると、ニューラル ネットワーク システムは、コード スニペットが実行するように設計された作業に基づいて、コード スニペットに類似性スコアを提供します。 言い換えれば、2 つのコードの構造が大きく異なっているように見えても、同じ機能を実行する場合、ニューラル ネットワークはそれらをほぼ類似していると評価します。 研究者らは最終的に、MISIM をコードの類似性を検出するための 3 つの最先端システムと比較しました。 (i) コード2ベクトル (ii)神経コードの理解 (iii)香り 研究者らは、これらの原理を統合システムに組み合わせることで、MISIM が現在の最先端システムよりも最大 40 倍正確に類似のコードを識別できることを発見しました。 研究から実証まで: 開発コストを削減するコード推奨Intel は MISIM の機能セットを拡張中ですが、Intel のさまざまな異種アーキテクチャにわたるプログラミングを行うすべてのソフトウェア開発者を支援するコード推奨エンジンを作成することを目標に、MISIM を研究活動からデモンストレーション活動へと移行しました。 このタイプのシステムは、開発者が入力した単純なアルゴリズムの背後にある意図を認識し、意味的には類似しているがパフォーマンスが向上した候補コードを提供することができます。
「ほとんどの開発者は、機械がバグを見つけて修正してくれるなら喜ぶだろうと思う」とゴットシュリッヒ氏は言う。 これにより、開発者自身を助けるだけでなく、雇用主の頭痛の種を軽減することができます。 ケンブリッジ大学ジャッジビジネススクールが発表した調査によると、プログラマーは勤務時間の 50.1% をプログラミングに費やし、残りの半分をデバッグに費やしているそうです。年間の総運用コストは3,120億ドルと見積もられています。これには多くのエネルギーと資金が必要であることがわかります。 Intel マシン プログラミング ラボは、Intel のソフトウェア グループと協力して、MISIM を日常の開発に統合する方法を模索しています。 MISIM のような AI を活用したコード推奨およびレビュー ツールは、開発コストを大幅に削減すると同時に、プログラマーがより創造的で反復性の少ないタスクに集中できるようにします。 「機械プログラミングに成功すれば、究極の目標の一つは誰もがソフトウェアを作成できるようになることだ」とゴットシュリッヒ氏はインタビューで語った。 |
<<: 経済不況が来ていますが、AIを拒否しないでください!
>>: 危険が迫っています!マスク氏、AIが5年以内に人間を超える可能性があると警告
【51CTO.comオリジナル記事】 [[337243]]よくよく数えてみると、一般的に誰もが悩まさ...
昨年、ハーバード大学は大きなことを成し遂げました。彼らは CS50 コースに AI ツールの完全なセ...
この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...
機械学習の手法を使用して円の面積を計算します。円の面積はいくらかと誰かに尋ねると、r²だと答えるでし...
人工知能 (AI) は、自然科学のさまざまな分野を網羅しており、主に特定の種類の知的な人間の活動をモ...
最近、中山大学は常識に基づいた偏りのない視覚的質問応答データセット (Knowledge-Route...
8月14日、科技日報によると、国家電網電力宇宙科技有限公司と華北電力大学などが開発した送電線赤外線...
今日、ますます多くの企業が IoT のメリットを活用しています。機械学習、人工知能、即時フィードバッ...
[[414747]]この記事はAI新メディアQuantum Bit(公開アカウントID:QbitA...