Google のオープンソースへのコミットメントが AI と ML のイノベーションを実現している方法
Google Cloud Japan Team
※この投稿は米国時間 2022 年 10 月 7 日に、Google Cloud blog に投稿されたものの抄訳です。
Google は、誰もが素早く簡単に人工知能(AI)のアイデアを実現できるべきであると考えています。オープンソース ソフトウェア(OSS)は、この目標を達成するためにますます重要になっており、AI と機械学習(ML)のエコシステムのイノベーションのペースに大きく影響します。この 20 年間、ML は、検索、YouTube、アシスタント、マップなどの Google サービスを変革してきました。そして、常にこの変革の基本にあるのは、プロジェクトや TensorFlow、Jax、PyTorch などのエコシステムへの投資を通じた「オープン ファースト」アプローチです。
多くの AI テクノロジーはクローズド アプローチや独占的アプローチに依存しているため、これらの OSS の取り組みは重要です。このウォールガーデン アプローチはデベロッパーの参入への高い障壁を作り出し、説明可能で倫理的で公平な AI を作り出す努力に制限をかけ、イノベーションを阻害します。私たちはオープン エコシステムに全力を注いでおり、一社が AI / ML のイノベーションを独占すべきではないと考えています。このブログ投稿では、近年の Google の最も重要な OSS AI と ML への貢献について、また、Google のオープン テクノロジーへの取り組みが、組織のイノベーションを加速させ、より柔軟にするためにどのように役立つかをご紹介します。
オープン化は、単一のプロジェクトとしてではなくエコシステムとして運用する方法
Google の OSS イニシアチブは、次の 3 つの柱により AI イニシアチブを拡大し、有効にします。
アクセス - OSS によって、開発者、研究者、あらゆる規模の組織は、最新の ML テクノロジーを使用できます。これは、ML におけるイノベーションの民主化、ソフトウェアの多様性とお客様のための選択肢の育成、スケールの加速と同時に実現する運用コストの低減における重要な役割です。
透明性 - オープンソース データセット、ML アルゴリズム、トレーニング モデル、フレームワーク、コンパイラは、より大きなコミュニティによりデュー デリジェンスと検証を保証します。これは、ML の再現性、説明力、公平性の確保、セキュリティの強化を支えるために重要です。
イノベーション - より多くのアクセスと透明性により、より多くのイノベーションが自然に生まれます。お客様やパートナーは、独自の OSS により、より多くのイノベーションを生み出すためにオープンソース ML ツールセットやフレームワークを利用できます。
Google のオープンソース AI への継続的な取り組み
Google のオープン スタンダードへの取り組みは、TensorFlow、JAX、TFX、MLIR、KubeFlow、Kubernetes などの OSS への貢献や、Project Jupyter や NumFOCUS などの重要な OSS データ サイエンス イニシアチブへのスポンサーなど、20 年以上にもおよびます。このような取り組みによって、Google は、Cloud Native Computing Foundation(CNCF)の主要な貢献者となりました。この取り組みをもとに、Google Cloud が OSS AI コミュニティとエコシステムのベスト プラットフォームとなるよう努力し続けます。
クローズド テクノロジーの危険性は ML パイプラインの多くの場面で現れる可能性があります。そのため、Google の OSS 戦略は、データの取得から、モデルのトレーニング、インフラストラクチャの管理、実験の促進やモデルの改良まで、「アイデアから本番環境まで」のライフサイクル全体を網羅しています。
データの取得: アイデアから本番環境で使える ML モデルまでのプロセスを始める
アイデアから本番環境 ML モデルまでのプロセスは、データから始まります。TensorFlow Datasets では、ユーザーが、すぐに使えて、カスタマイズ可能な、高度に最適化されたデータセット(画像、音声、テキストを含む)を取得できるようになるだけでなく、TensorFlow、Jax、他の ML フレームワークのどれで構築するかにかかわらず、自分のデータセットを整理するのに役立つ API も提供されています。
モデル開発とトレーニング: データから有用な ML への道のりを短縮する
OSS ライブラリは開発者や研究者が ML アルゴリズムのデザイン、実装、トレーニング、テスト、デバッグをする際に役に立ちます。この面での貢献は次のとおりです。
TensorFlow コア フレームワークは、データ サイエンティストや開発者が、GPU や TPU を利用した分散、加速されたインフラストラクチャ上で本番環境グレードの ML モデルを構築、トレーニングするのに役立つ API を提供します。
Google は PyTorch Foundation の創立メンバーで、PyTorch を使ったオープンソース プロジェクトのエコシステムを構築することで ML の採用を促進する立場にいます。
シンプルでパワフルな ML フレームワークである Keras は、TensorFLow と緊密に統合されているため、開発者は ML モデルを迅速に構築、トレーニングしたり、事前トレーニング済みの AI アプリケーションを利用したりしやすくなります。
Model Garden は、数多くの最先端のコンピュータ ビジョンや自然言語処理モデルの実装を提供し、Google に管理され、誰でもアクセス可能で、トレーニングと実験を加速するための API を提供します。
Jax は、自動微分(Autograd)と Accelerated Linear Algebra(XLA)を組み合わせた無駄のない直観的なコンポーザブル システムで、迅速なリサーチや本番環境のための高パフォーマンスな ML を提供するコンパイラを最適化します。
TensorFlow Hub は、微調整やデプロイの準備が整ったトレーニング済み ML モデルのリポジトリです。
MediaPipe オープンソース クロス プラットフォームは、テキストや動画を含むライブ ストリーミング メディア向けのカスタマイズ可能な ML ソリューションを活用できるようにします。
ML インフラストラクチャの管理: 強力なバックエンドで価値のあるモデルをスケーリング
ML 用インフラストラクチャへのアクセスと管理は、特に大規模の場合、多くの組織にとって障害になります。そのため Google は次のようなイニシアチブに投資しています。
TFX(TensorFlow Extended)プラットフォーム - MLOps のフルデプロイのためのソフトウェア フレームワークとツールを提供し、データの自動化、モデルのトラッキング、パフォーマンスのモニタリング、モデルの再トレーニングでデベロッパーを支援します。
Kubeflow - Kubernetes 上での ML ワークフローのデプロイをシンプルでポータブルかつスケーラブルなものにします。
TRC(TPU Research Cloud) - 1,000 以上の Cloud TPU デバイスのクラスタへのアクセス権を、査読済みの論文やオープンソース コードを公開する研究者に無料で提供します。
実験とモデルの最適化: 発見とイテレーションの促進
データ、モデル トレーニングのツール、インフラストラクチャは、実験と最適化の強力なプロセスがなければ達成できません。だからこそ、ローカルや Vertex AI 上で誰でも ML 実験を行い、トラッキングできる xManager や、モデル パフォーマンスの指標のトラッキングと可視化を容易にする Tensorboard のようなプロジェクトに貢献しているのです。
これらの注目分野は、Google のお客様だけでなくオープンソース AI コミュニティ全体の役に立ちます。今後数日、数か月の間、OSS ニュースをさらに共有できることを楽しみにしています。オープンソース AI の需要を満たすために多くの組織が Google Cloud を選ぶ理由については、「オープン クラウド」ページをご覧ください。また、Google Cloud Next ‘22 にご登録のうえ、最新のニュースをご確認ください。
このブログ投稿に協力してくれた Matt Vasey、George Elissaios、Warren Barkley、Manvinder Singh、James Rubin、Abhishek Ratna、Thea Lamkin、Amin Vahdat、Andrew Moore、Max Sapozhnikov、Gandhi、Vikram Kasivajhula に感謝します。
-インフラストラクチャ担当バイス プレジデント兼ゼネラル マネージャー Sachin Gupta