このページの本文へ

今年もビルダーを魅了!AWS re:Invent 2019レポート 第4回

機械学習向けIDE「SageMaker Studio」からAIコードレビュー「CodeGuru」まで、機械学習関連の新発表

「平均的な開発者にも機械学習の力を」―AWSジャシーCEO基調講演

2019年12月24日 07時00分更新

文● 大塚昭彦/TECH.ASCII.jp

  • この記事をはてなブックマークに追加
  • 本文印刷

AIサービス:機械学習がコードレビューを支援「Amazon CodeGuru」

 機械学習モデルを自ら開発するのではなく、より手軽に機械学習の能力を活用したいユーザー向けには、あらかじめ学習済みモデルが組み込まれたMLサービス群も提供されている。ジャシー氏はこれらを「AIサービス」と呼ぶ。

 これまでに画像/映像解析(Rekognition)や音声テキスト化(Transcribe)、音声合成(Polly)、翻訳(Translate)、インサイト抽出(Comprehend)、チャットボット(Lex)などを展開してきた。昨年のre:Inventでもパーソナライズ(Personalize)や予測(Forecast)、OCR(Textract)を発表している。

 こうしたAIサービス群は、巨大なスケールで展開されているコンシューマービジネス(Amazon.com)における教師データ収集と実践で鍛えられてきたものだ。今回も、Amazonの現場から生まれたと言えるような、複数のサービス群が追加されている。

AWSは「機械学習フレームワーク/インフラ」「SageMaker」「AIサービス群」という3つのレイヤーでサービスを展開、あらゆるタイプのユーザーをカバーするとジャシー氏は説明する

 まず、アプリケーション開発におけるコードレビューやパフォーマンス改善を支援するMLサービス「Amazon CodeGuru」を発表している(プレビューリリース)。機械学習モデルに基づいてアプリケーションコードに含まれる問題点や脆弱性を指摘する「CodeGuru Reviewer」と、アプリケーションパフォーマンスを継続監視/分析する「CodeGuru Profiler」で構成される。

「Amazon CodeGuru」を発表。ベストプラクティスを学習したモデルに基づき、自動でコードレビューやパフォーマンス改善を支援

 CodeGuruの機械学習モデルは、Amazon社内のプロジェクトおよびGitHub上のオープンソースプロジェクトから得た大量のコードベースでトレーニングされており、いわば“ベストプラクティス”をモデル化したもの。ジャシー氏によると、CodeGuruは実際にAmazon社内で8万5000のアプリに適用されており、「Amazonプライムデー」におけるCPU使用率を325%向上させ、39%のコスト削減につなげた実績もあるという。

 CodeGuru Reviewerは、開発者が利用するコードリポジトリの「GitHub」や「AWS CodeCommit」と連携動作する仕組みだ。開発者がプルリクエストにCodeGuruを追加すると、CodeGuruは自動的にコードレビューを行い、問題のある箇所に推奨事項(修正のレコメンド)をコメントする。

 またCodeGuru Profilerは、エージェントを通じて本番環境のアプリケーションパフォーマンスを継続的に監視し、監視結果に基づいてコード内の「最もコストがかかる(処理にリソースを必要とする)」行の特定や、改善方法の推奨などを行う。

CodeGuru ReviewerとCodeGuru Profilerの概要

カテゴリートップへ

この連載の記事