モリカトロン株式会社運営「エンターテインメント×AI」の最新情報をお届けするサイトです。

TAG LIST
ディープラーニング機械学習CGCGへの扉安藤幸央GANニューラルネットワーク月刊エンタメAIニュース強化学習三宅陽一郎モリカトロンAIラボインタビュー敵対的生成ネットワーク音楽OpenAIQAスクウェア・エニックスシナリオNVIDIAデバッグCEDEC2019河合律子プロシージャルDeepMind人工知能学会FacebookキャラクターAIルールベースビヘイビア・ツリーGoogleCEDEC2020ゲームAI映画SIGGRAPH遺伝的アルゴリズム不完全情報ゲームメタAIナビゲーションAI畳み込みニューラルネットワーク深層学習マイクロソフトAIと倫理グーグルGDC 2021GDC 2019マルチエージェントVR森川幸人ボードゲーム自然言語処理ロボットStyleGAN自動生成GPT-3CNNVFXモリカトロンゲームプレイAIファッションHTN階層型タスクネットワークJSAI2020Microsoftイベントレポート水野勇太アニメーションガイスターNPCCLIPアートtoio吉本幸記JSAI2021スポーツディープフェイク汎用人工知能TensorFlowGDC SummerテストプレイeSportsBLUE PROTOCOL小説DALL-EStyleGAN2AlphaZeroカメラ環世界中島秀之懐ゲーから辿るゲームAI技術史研究DARPAドローンAI美空ひばり手塚治虫メタデータ通しプレイOpenAI Five本間翔太CM倫理ピクサーAdobe作曲中嶋謙互Amadeus CodeMicrosoft Azureキャリアeスポーツ音声認識PyTorchDQN眞鍋和子バンダイナムコスタジオシーマンUnity齊藤陽介マインクラフトお知らせAIアートサルでもわかる人工知能VAEUbisoftUbisoft La ForgeワークショップGenvid Technologies知識表現ウォッチドッグス レギオンIGDAどうぶつしょうぎジェイ・コウガミ音楽ストリーミングマシンラーニングクラウドコンピューティショナル・フォトグラフィーGPT-2完全情報ゲーム坂本洋典釜屋憲彦ウェイポイントパス検索藤澤仁生物学画像認識NFT長谷洋平鴫原盛之masumi toyota宮路洋一SIGGRAPH ASIAソニーCycleGANフェイクニュースシムピープルGPUALife人工生命オルタナティヴ・マシンサウンドスケープASBSマンガぱいどんTEZUKA2020ナビゲーションメッシュ松井俊浩スパーシャルAIElectronic ArtsマーケティングApex LegendsNinjaゲームTENTUPLAYMARVEL Future Fightタイムラプスバスキアブロックチェーン階層型強化学習WANN竹内将馬淵浩希岡島学映像セリア・ホデントUX認知科学ゲームデザインLUMINOUS ENGINELuminous Productionsパターン・ランゲージちょまどビッグデータアストロノーカ模倣学習ナラティブFPSマルコフ決定過程スタンフォード大学パラメータ設計テニスバランス調整レコメンドシステム対話型エージェント協調フィルタリング人狼知能Amazon軍事AlphaDogfight TrialsエージェントシミュレーションStarCraft IIFuture of Life InstituteIntelロボティクスLAIKARotomationドラゴンクエストライバルズ不確定ゲームDota 2モンテカルロ木探索ソーシャルゲームEmbeddingGTC2020NVIDIA MAXINE淡路滋ビデオ会議グリムノーツゴティエ・ボエダGautier Boeda階層的クラスタリングaiboJuliusSIETPRGバーチャル・ヒューマン・エージェントtoio SDK for Unityクーガー田中章愛石井敦銭起揚茂谷保伯MinecraftGDMC成沢理恵MITメディアラボ著作権マジック・リープMagic Leap OneMagendaノンファンジブルトークンDDSPサッカー里井大輝KaggleバスケットボールAssassin’s Creed OriginsSea of ThievesGEMS COMPANYmonoAI technologyアバター初音ミクOculus転移学習テストBaldur's Gate 3Candy Crush SagaSIGGRAPH ASIA 2020デバッギングBigGANMaterialGANリップシンキングRNNReBeL自動運転車VolvoRival Prakユービーアイソフト北尾まどかHALO将棋メタルギアソリッドVFSMナップサック問題汎用言語モデルSpotifyMITReplica StudioamuseChitrakar巡回セールスマン問題ジョルダン曲線5GMuZeroクラウドゲーミングRival Peak和田洋一リアリティ番組Stadiaジョンソン裕子MILEs対話エンジンインタラクティブ・ストリーミング斎藤由多加インタラクティブ・メディアリトル・コンピュータ・ピープルシーマン人工知能研究所Ludoゴブレット・ゴブラーズTransformerSIGGRAPH 2019ArtEmis絵画ARGROVERFAIRAIりんなチート検出オンラインカジノアップルRealFlowiPhoneシミュレーションDeep FluidsMeInGameAIGraphブレイン・コンピュータ・インタフェースBCILearning from Video予期知能ユクスキュルカント哲学ドラゴンクエストエージェントアーキテクチャPAIROCTOPATH TRAVELER西木康智OCTOPATH TRAVELER 大陸の覇者アルスエレクトロニカ2019StyleCLIPDeNAStyleRig逆転オセロニア奥村エルネスト純いただきストリート齋藤精一大森田不可止高橋智隆ロボユニザナック泉幸典仁井谷正充ロボコレ2019ぎゅわんぶらあ自己中心派Azure Machine Learning意思決定モデル脱出ゲームHybrid Reward ArchitectureウロチョロスSuper Phoenix理化学研究所Project Malmo教育TextWorldProject PaidiaProject LookoutWatch ForBingLEFT ALIVE長谷川誠ジミ・ヘンドリックスBaby Xカート・コバーンロバート・ダウニー・Jr.エイミー・ワインハウスMagentaYouTubeダフト・パンクSFGlenn MarshallThe Age of A.I.Story2HallucinationレコメンデーションJukeboxGTC2021テンセントSIFTDCGANMOBADANNCE人事ハーバード大学研修デューク大学mynet.aiローグライクゲームNetHack人工音声NeurIPS 2021はこだて未来大学プレイ動画ヒップホップサイレント映画NBA環境音現代アートエージェント粒子群最適化法進化差分法群知能下川大樹ウィル・ライト高津芳希シムシティ大石真史BEiTレベルデザインDETRSporeAIボイスアクターデノイズ南カリフォルニア大学画像処理NVIDIA CanvasSentropyCPUDiscordZorkCALMプログラミングソースコード生成GMAIシチズンデベロッパーTRPGGitHubウィザードリィMCN-AI連携モデルAI DungeonMCS-AI動的連携モデル西川善司並木幸介サムライスピリッツ森寅嘉ゼビウスSIGGRAPH 2021ストリートファイター半導体Topaz Video Enhance AI栗原聡DLSS山野辺一記NetEase大里飛鳥DynamixyzモーションキャプチャーU-Net13フェイズ構造アドベンチャーゲームADVXLandAGI手塚眞DEATH STRANDING不気味の谷Eric JohnsonOculus Questコジマプロダクション生体情報デシマエンジンインディーゲーム写真高橋ミレイ照明Maxim PeterJoshua Romoffハイパースケープ山崎陽斗深層強化学習立木創太CEDEC2021バンダイナムコ研究所ミライ小町GameGANパックマンソサエティ5.0SIGGRAPH 2020DIB-R3D広告

自然言語をプログラミング言語に翻訳。ソースコード生成AIの現状

2021.7.28先端技術

自然言語をプログラミング言語に翻訳。ソースコード生成AIの現状

自然言語で書かれたテキスト文を生成する近年の言語AIは、書いたのがAIなのか人間なのかを判別するのが困難なほどに高性能になりました。こうした言語AIを使って、自然言語からプログラミング言語を生成することが試みられています。この記事では、ソースコード生成AIの現状と課題を解説します。

シチズンデベロッパー拡大のために

マイクロソフトは5月25日、同社のアプリ開発プラットフォームMicrosoft Power Appsに言語AIのGPT-3を活用したソースコード生成機能を統合したことを発表しました。同言語AIは独立系の AI 研究開発企業であるOpenAIが開発したものですが、2020年9月にマイクロソフトが同AIのライセンスを取得していました。

GPT-3は、任意の英文を入力として渡すとその文の続きを出力するAIです。同AIの驚異的な性能はさまざまなアプリに応用されており、『AI Dungeon』のようなテキストアドベンチャーゲームも誕生しています。今回マイクロソフトが発表したソースコード生成機能は、プログラミング言語で実行したい内容を音声で入力すると、入力音声の内容を反映したソースコードをPower Appsで使われているプログラミング言語であるMicrosoft Power Fxで出力するようにGPT-3をファインチューニングすることで実現しました。

【関連記事】RPG内で目的を持って自律的に行動するNPCのAI:月刊エンタメAIニュース vol.11

以上の新機能を使えば、例えば「名前が “Kids” で始まる商品を探す」と音声入力すると、「Filter (‘BC Orders’ Left (‘Product Name’,4) =”Kids”)」というソースコードが出力されます。ソースコードは、ちょうど検索エンジンで複数の結果が返ってくるように複数提案されます。そうした選択肢から選ぶことになるので人間を代替する機能ではなく、労力を削減するものと言えます。

マイクロソフトのローコードアプリケーションプラットフォーム担当コーポレートバイスプレジデントのCharles Lamanna氏は、ソースコード生成機能によって「真の意味でのノーコード」になることで、コーディングに精通しているわけではない「シチズンデベロッパー」のような人々にPower Appsが利用されるようになるでしょう、と述べています。

AIとのペアプログラミングができるものも…

以上の発表から約1か月後の6月29日、マイクロソフト傘下でソフトウェア開発プラットフォームを運営するGitHubもソースコード生成機能「GitHub Copilot」を発表しました。同機能はマイクロソフトが提供するソースコードエディタであるVisual Studio Codeの拡張機能として使え、自然言語でプログラミングしたい内容をコメントとして入力すると、その内容を反映したソースコードが出力されます。ソースコードの最終的な決定権は人間のユーザにあるので、同機能はあくまでサポート役に徹しします。

驚くべきなのは、GitHub Copilotの対応プログラミング言語の多さです。Python、JavaScript、TypeScript、Ruby、さらにはGoについては高品質な出力が期待でき、そのほかの数十のプログラミング言語にも対応しています。こうした広範囲の対応はGitHubで公開されている大量のソースコードを学習データとして活用して、OpenAIが開発したソースコード生成AIである「OpenAI Codex」を訓練したことによって実現しました。

もっとも、GitHub Copilotには言語AIに特有な問題を抱えています。一般に言語AIは学習データに含まれている不適切な表現を反復あるいは増幅してしまうことがありますが、GitHub Copilotも例外ではありません。具体的にはセキュリティ的に望ましくないソースコードや、不快を与えてしまうテキスト文を出力することがあるのです。こうした欠陥に対してGitHubは継続的な改善を約束していますが、不適切な出力を撲滅するのは困難だと考えられます。不適切な出力の可能性を皆無にできないからこそ、ソースコードの最終的な決定権は人間のユーザにあるべき、とも言えます。

GitHub Copilotについて報じたビジネスメディアVenture Beatは7月8日に公開した記事は、GitHub Copilotが大規模AIモデルであるが故の問題点を指摘しています。同AIの稼働には大量の電力消費が伴うため、間接的に二酸化炭素大量排出の原因になってしまうのです。

以上のようにGitHub Copilotは画期的なAIツールであると同時にいくつかの問題も抱えていますが、長期的にはプログラミング業務の在り方を世界規模で刷新するポテンシャルを秘めています。

大規模言語AIの民主化のために

以上のMicrosoft Power Appsのソースコード生成機能とGitHub Copilotは、両方ともその技術的基盤としてOpenAIが開発した大規模言語AIであるGPT-3を活用しています。同AIは悪用を予防する目的からAPIのみが公開されており、そのアクセス権はOpenAIが管理しています。それゆえ、同AIを活用したオープンソース開発はできません。

こうした現状に対して、GPT-3に匹敵するオープンソースの言語AI「EleutherAI(エレウテールAI)」を開発するプロジェクトが進行しています。EleutherAIを特集したWIRED.JPの記事によると、同AIの訓練に使う学習データの収集に際しては、GPT-3より入念な精査を行っている、とのこと。精査の一環として、不適切な表現が含まれている可能性がある英語圏最大の掲示板サイト「Reddit」の記述は学習データから排除しています。

テック系メディアAnalytics India Magazineは7月12日、EleutherAIの最新モデルGPT-JとGPT-3の性能を比較した記事を公開しました。このふたつの言語AIのソースコード生成能力に関しては、BuzzFeed所属のデータサイエンティストMax Woolf氏がテストセットを自作して比較してみました。テストの結果、GPT-JがGPT-3を凌駕しました。GPT-Jのパラメータ数はGPT-3の約30分の1の60億しかないことを考慮すると、驚きのテスト結果です。

もっとも、以上の比較実験ではGPT-3を使っているので、ソースコード生成のためにファインチューニングしたMicrosoft Power Appsの当該機能やGitHub Copiloと比較した場合、GPT-Jがこれらの言語AIより性能が劣っている可能性があります。しかしながら、オープンソースで開発された言語AIが大手テック系企業によって開発されたそれに匹敵するという事実は、言語AIの応用範囲を大きく広げることにつながります。

ソースコード生成AIは、今後急速にソフトウェア開発現場で普及すると予想されます。こうしたAIは決して人間のソフトウェア開発者を駆逐するようなものではなく、強力にサポートしてくれるものなのです。それゆえ、これからのソフトウェア開発者には「ソースコード生成AIをうまく使いこなせる」ことが必須スキルのひとつになることでしょう。

Writer:吉本幸記、Image by Microsoft

RELATED ARTICLE関連記事

【お知らせ】モリカトロン開発者ブログ、始めました。

2020.3.24先端技術

【お知らせ】モリカトロン開発者ブログ、始めました。

Unityを活用した自動運転車の開発環境:月刊エンタメAIニュース vol.12

2020.12.18先端技術

Unityを活用した自動運転車の開発環境:月刊エンタメAIニュース vol.12

CGへの扉 Vol.30:SIGGRAPH2021レポート「ディープフェイクとの戦い」

2021.9.16先端技術

CGへの扉 Vol.30:SIGGRAPH2021レポート「ディープフェイクとの...

RANKING注目の記事はこちら