AIが書いたコードの品質向上目指す--マイクロソフトの「Jigsaw」プロジェクト

Liam Tung (Special to ZDNET.com) 翻訳校正: 村上雅章 野崎裕子

2022-04-15 07:30

 Microsoftによると、機械が自動生成したコードは「楽観的な見方と警戒心」をもって取り扱われるべきだという。その理由として同社は、大規模な言語モデルによってプログラミングの自動化が可能であるとはいえ、生成されたコードは必ずしも信頼できるわけではないという点を挙げている。

 大規模な訓練済み言語モデルの実例として、OpenAIの「OpenAI Codex」や、Googleの自然言語処理モデル「BERT」、DeepMindのコード生成システム「AlphaCode」などがある。なお、2021年8月にプライベートベータ版がリリースされたCodexは、Microsoft傘下にあるGitHubの「GitHub Copilot」で利用されている。

 Microsoftのリサーチャーらは、これらの言語モデルによって生み出されるコードの品質面での課題に取り組むために「Jigsaw」というツールを開発した。このツールは、「プログラムのシンタックスやセマンティクスを解釈した上で、ユーザーからのフィードバックを活用して将来的なパフォーマンスを向上させるというポストプロセッシング技法」を用いることで、これらモデルのパフォーマンス向上を図るものだという。

 Microsoftによると同ツールは現在のところ、マルチモーダル入力を用いて「pandas」のAPI用コードを生成するよう設計されているという。pandasは、プログラミング言語Pythonを使用しているデータサイエンティスト向けの、人気の高いデータ操作/分析用ライブラリーだ。

 Codexのような言語モデルでは、開発者による英語での説明をコード片に適用することができるため、同モデルは意図通りのコードをPythonやJavaScriptなどの言語で生成できる。しかしMicrosoftによると、生成されたコードは誤っているかもしれず、コンパイルや実行に失敗するかもしれないため、使用にあたっては開発者側でコードをチェックする必要があるという。

 Microsoft ResearchのJigsawチームは、「われわれはJigsawプロジェクトにおいて、こうしたチェック作業を自動化し、Codexのような大規模言語モデルを使用してコードを生成している開発者の生産性を向上させたいと考えている」と説明している。

ZDNET Japan 記事を毎朝メールでまとめ読み(登録無料)

ZDNET Japan クイックポール

マイナンバーカードの利用状況を教えてください

NEWSLETTERS

エンタープライズコンピューティングの最前線を配信

ZDNET Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]