コンテンツに移動
AI & 機械学習

OPPO によるモバイル デバイスの AI 機能を強化するための Google Vertex AI 活用法

2023年5月18日
Google Cloud Japan Team

※この投稿は米国時間 2023 年 5 月 5 日に、Google Cloud blog に投稿されたものの抄訳です。

昨今の消費者にはこれまで以上に多くのオプションがあります。そのため、企業はエンドユーザーに可能な限り最良のデバイス性能を提供することに専念する必要があります。大手モバイル デバイス メーカー OPPO では、クラウドや AI などの最新テクノロジーをより有効に活用できる方法を常に模索しています。その一例が AndesBrain 戦略です。この戦略では、モバイル デバイスの AI モデルの開発プロセスにおいて、クラウドツールをモバイル ハードウェアと統合することで、エンドデバイスのスマート化を目指しています。

OPPO がこの戦略を採用したのは、モバイル デバイスにおける AI 機能の可能性を信じているからです。エンドデバイス上で AI モデルを実行し、ユーザーデータをクラウドに送信せず、モバイル ハードウェア上に保持することにより、ユーザーのプライバシー保護をさらに強化できます。その一方で、より複雑な AI モデルに対応するためにモバイルチップのコンピューティング能力が急速に向上しています。クラウド プラットフォームを AI モデル トレーニング用のモバイルチップとリンクすることで、クラウド コンピューティング リソースを活用し、さまざまなモバイル ハードウェアに適応する高性能な ML モデルを開発できます。

2022 年に、OPPO は StarFire 上で AI エンジニアリング戦略の実装を開始しました。StarFire は、クラウドとエンドデバイスを統合してサービスを提供する自社開発の ML プラットフォームであり、AndesBrain の 6 つの機能の 1 つを形成しています。当社では、StarFire を通じて、さまざまな先進的なクラウド技術を活用し、自社の開発ニーズに応えることができるようになりました。また、AI モデルの開発プロセスを容易にし、モバイル デバイスの AI 機能を強化するため、Google Cloud および Qualcomm Technologies と協力して、Google Cloud Vertex AI Neural Architecture Search(Vertex AI NAS)を初めてスマートフォンに組み込みました。では OPPO が学んだことを詳しく見ていきましょう。

モバイル デバイスの AI モデル開発における課題

モバイル デバイスの AI モデルを開発する際の大きなボトルネックの 1 つは、コンピュータ チップに比べてモバイルチップのコンピューティング能力が限られていることです。Vertex AI NAS を使用する前は、OPPO のエンジニアは主に 2 つのメソッドを使用して、モバイル デバイスが対応できる AI モデルを開発していました。1 つは、クラウド プラットフォームでトレーニングしたニューラル ネットワークを、ネットワークのプルーニングやモデルの圧縮によって単純化し、モバイルチップに適したものにすることです。もう 1 つは、空間方向の分離可能な畳み込みなどのテクノロジーに基づいて構築された、より軽量なニューラル ネットワーク アーキテクチャを採用することです。

この 2 つのメソッドには、次の 3 つの課題があります。

  1. 長い開発期間: AI モデルがモバイル デバイス上でスムーズに動作するかどうかを確認するためには、テストを繰り返し、ハードウェアの特性に合わせて手動でモデルを調整する必要があります。モバイル デバイスごとに備えているコンピューティング能力やメモリが異なるため、AI モデルのカスタマイズは多大な人件費を要し、開発期間が長期化する要因にもなります。

  2. 精度の低さ: モバイルデバイスは、その限られたコンピューティング能力のため、軽量な AI モデルにしか対応できません。しかし、クラウド プラットフォームでトレーニング済みの AI モデルをプルーニングや圧縮すると、モデルの精度が低下します。クラウド環境で 95% の精度を持つ AI モデルを開発できても、エンドデバイスでは実行できません。

  3. パフォーマンスの妥協: モバイル デバイスに搭載される各 AI モデルは、精度、レイテンシ、消費電力のバランスを取る必要があります。高精度、低レイテンシ、低消費電力を同時に達成することはできません。その結果、パフォーマンスの妥協は避けられません。

AI モデル開発における Vertex AI NAS の優位性

ニューラル アーキテクチャ検索技術は、デベロッパーのニーズに応じてニューラル ネットワークのパフォーマンスを最適化するようトレーニングされた AI を作るために、2017 年に Google Brain チームによって初めて開発されました。特定のタスクに最適なニューラル ネットワークのアーキテクチャを自動的に検出、設計するニューラル アーキテクチャ検索技術により、デベロッパーはより簡単に AI モデルのパフォーマンス向上を実現できます。

Vertex AI NAS は現在、パブリック クラウド プラットフォームで利用できる唯一のフルマネージド ニューラル アーキテクチャ検索サービスです。OPPO の ML プラットフォーム StarFire はクラウドベースであるため、Vertex AI NAS とこのプラットフォームを容易に接続して AI モデルを開発できます。それに加え、デバイスの AI モデル開発に Vertex AI NAS を採用したのは、以下の 3 つの利点があるからです。

  1. ニューラル ネットワーク設計の自動化: 前述のとおり、モバイル デバイスの AI モデル開発には、労力も時間もかかります。Vertex AI NAS によってニューラル ネットワークの設計が自動化されるため、開発時間を大幅に短縮し、さまざまなモバイルチップに AI モデルを容易に適応できます。

  2. カスタム報酬パラメータ: Vertex AI NAS は、NAS ツールの中では珍しくカスタム報酬パラメータに対応しています。これは、検索制約を自由に追加できることを意味し、この検索制約のために AI モデルを最適化する必要があります。この特長を活用することで、検索制約という機能を追加することができ、モバイル デバイスの AI モデル消費電力を 27% 削減することに成功しました。

  3. モバイル デバイス向けに AI モデルを圧縮する必要がない: 接続されたモバイルチップから送り返されるリアルタイムの報酬に基づき、Vertex AI NAS はモバイル デバイスに適したニューラル ネットワーク アーキテクチャを直接設計できます。そのため、追加処理を行うことなく、そのままエンドデバイスで実行でき、AI モデルの適応化に要する時間と労力を節約できます。

OPPO がモバイル デバイスの AI モデルのエネルギー効率を高めるために、どのように Vertex AI NAS を活用しているか

モバイル デバイス上の AI モデル、特にマルチメディアや画像処理に関連するコンピューティング集約型モデルの優れたユーザー エクスペリエンスを実現するためには、消費電力を下げることが重要になります。AI モデルの消費電力が高すぎると、モバイル デバイスが過熱し、バッテリーの寿命が短くなる可能性があります。そのため、OPPO では Vertex AI NAS を使用してモバイル デバイス上の AI 処理のエネルギー効率を高めることを主な目的としています。

この目標を達成するために、私たちはまず、デフォルトではレイテンシとメモリの報酬にしか対応していない Vertex AI NAS に、カスタム検索制約を追加しました。これにより、Vertex AI NAS は、電力、レイテンシ、メモリの報酬に基づいてニューラル ネットワークを検索できるようになり、レイテンシとメモリ消費量を望ましいレベルに抑えつつ、AI モデルの消費電力を削減できています。

次に、Cloud Storage を介して StarFire プラットフォームと Vertex AI NAS を接続しました。これと同時に、Qualcomm が提供する SDK を使用して、Qualcomm の Snapdragon 8 Gen 2 チップセットを搭載したスマートフォンと StarFire を連携させました。この仕組みのもと、Vertex AI NAS は最新のニューラル ネットワーク アーキテクチャを Cloud Storage 経由で StarFire に常時送信し、StarFire はそのモデルをチップセットにエクスポートしてテストできます。テスト結果は、StarFire と Cloud Storage を通じて再び Vertex AI NAS に返され、Vertex AI NAS はその報酬をもとに次のアーキテクチャ検索ができます。

目標を達成するまでこの処理を繰り返した結果、最終的には、最適化前と同じレベルの精度を維持しながら、AI モデルの消費電力を 27%、演算レイテンシを 40% 削減することに成功しました。

https://storage.googleapis.com/gweb-cloudblog-publish/images/oppo.max-1000x1000.jpg

用途の幅を広げる

Vertex AI NAS を通じて、初めて AI モデルの最適化に成功したことは、OPPO にとって実に喜ばしいことです。このエネルギー効率の高い AI モデルを将来の OPPO スマートフォンにデプロイし、Vertex AI NAS が対応している同じモデル トレーニング プロセスを他の AI プロダクトのアルゴリズム開発にも導入する予定です。また、電力だけでなく、帯域幅やオペレーター操作性など、他の報酬パラメータも検索制約として Vertex AI NAS に追加し、より包括的なモデル最適化を実現したいと考えています。

Vertex AI NAS は OPPO スマートフォンの AI 機能の最適化を大幅に進めましたが、まだまだ大きな可能性を秘めていると考えています。今後も Google Cloud と連携し、Vertex AI NAS の活用を拡大していきます。Vertex AI NAS の採用に興味をお持ちのデベロッパーの方で、カスタム検索制約が必要な場合は、開発プロセスを開始する前に最も関連性の高いハードウェア報酬パラメータをターゲットとし、検索空間の構築方法を理解しておくことをおすすめします。


- OPPO、シニア アルゴリズム エンジニア Hongyu Li 氏
- OPPO、AI Platform 責任者 Leslie Li 氏
投稿先