機械学習システム用のIBMプロジェクトであるCodeNet 

IBMロゴ

IBMが発表 最近彼の新しいプロジェクトと呼ばれるものは、 「コードネット」 これ 機械学習技術を使用して実験するためのデータセットを研究者に提供することを目的としています あるプログラミング言語から別のプログラミング言語へのトランスレータや、コード ジェネレータやアナライザを作成します。

CodeNet には、14 万件のコード例のコレクションが含まれています。 4053 の一般的なプログラミングの問題を解決します。 このコレクションには合計で約 500 億行のコードが含まれており、C++、Java、Python、Go などの最新言語と、COBOL、Pascal、FORTRAN などのレガシー言語の両方を含む 55 のプログラミング言語をカバーしています。

「ソフトウェアが世界を食い尽くしている」と、著名なアメリカの起業家マーク・アンドリーセンは 2011 年に書きました。今日に目を向けると、ソフトウェアは金融サービス、ヘルスケア、スマートフォン、スマート ホームなどに使われています。 今では自動車にも 100 億行を超えるコードが含まれています。

プロジェクトの開発は Apache 2.0 ライセンスに基づいて配布され、データ セットはパブリック ドメインで配布される予定です。

これらの例には注釈が付けられており、異なるプログラミング言語で同一のアルゴリズムを実装しています。。 提案されたスイートは、注釈付き画像の ImageNet データベースが画像認識とコンピューター ビジョンの開発にどのように役立ったかから類推して、機械学習システムのトレーニングと自動コード変換と分析の分野でのイノベーションの開発に役立つと考えられています。 コレクション形成の主な情報源の XNUMX つとして、さまざまなプログラミング コンテストが挙げられます。

Project CodeNet は特に、人間の言語に適用したものと同じように、ストリームごとのモデルを使用してこのコンテキストを抽出するアルゴリズムの革新を推進し、情報の処理ではなく機械によるコードの理解に大きな影響を与えることができます。

翻訳ルールに基づいた従来の翻訳者とは異なり、 機械学習システムは、コードの使用状況をキャプチャして考慮に入れることができます。。 あるプログラミング言語から別のプログラミング言語に変換する場合、コンテキストは人間の言語から別の言語に翻訳する場合と同様に重要です。 コンテキスト認識の欠如により、COBOL などのレガシー言語からコードを変換できなくなります。

さまざまな言語でのアルゴリズム実装の大規模なベースの存在は、特定の言語間のライブ翻訳の代わりに、特定のプログラミング言語に依存せず、コードのより抽象的な表現を操作する汎用的な機械学習システムの作成に役立ちます。

このようなシステムは、サポートされている言語で送信されたコードを内部の抽象表現に翻訳するトランスレータとして使用でき、そこから多くの言語のコードを生成できます。

このシステムを組み込むことで、双方向の変換を実行できます。 たとえば、銀行や政府機関は従来の COBOL プロジェクトを引き続き使用します。 機械学習トランスレーターは、COBOL コードを Java 表現に変換し、オプションで Java スニペットを COBOL コードに変換し直すことができます。

言語間の翻訳に加えて、CodeNet アプリケーション領域についても言及されています インテリジェントなコード検索システムの作成やクローン検出の自動化、自動コード修正のためのオプティマイザやシステムの開発などです。

特に CodeNet で提示される例には、パフォーマンス テストの結果を説明するメタデータが提供されます。、結果のプログラムのサイズ、メモリ消費量、および正しいコードとエラー コードを区別できる状態 (正しいコードと間違ったコードを区別するために、エラーのある例がコレクションに特別に含まれており、共有そのうち 29,5 は XNUMX%)。

機械学習システムは、このメタデータを考慮して、最適なコードを生成したり、分析されたコードの回帰を検出したりできます (システムは、アルゴリズムが送信されたコードに最適に実装されていないこと、またはエラーが含まれていることを理解できます)。

最後に CodeNet についてさらに詳しく知りたい場合は、 詳細を確認できます 次のリンクで.


コメントを残す

あなたのメールアドレスが公開されることはありません。 必須フィールドには付いています *

*

*

  1. データの責任者:AB Internet Networks 2008 SL
  2. データの目的:SPAMの制御、コメント管理。
  3. 正当化:あなたの同意
  4. データの伝達:法的義務がある場合を除き、データが第三者に伝達されることはありません。
  5. データストレージ:Occentus Networks(EU)がホストするデータベース
  6. 権利:いつでも情報を制限、回復、削除できます。