事例紹介 Lose It! - ML Kit を使用して
栄養成分ラベルからデータを抽出し、
ユーザー エクスペリエンスを改善
栄養成分ラベルからデータを抽出し、
ユーザー エクスペリエンスを改善
「Lose It!」は 2008 年以来、3,000 万を超える人々が 5,000 万ポンド(約 4,500 万ポンド)減量するのに貢献しています。このアプリは、食事の記録をできる限り簡単にすることでユーザーの食事管理を支援し、プロダクト チームは物事をさらにシンプルにする新しい方法を常に探しています。
Lose It! の背後にあるチームは、最初に Snap It を導入しました。これは、ユーザーが写真を撮影するだけでお気に入りの食べ物を記録できるようにするオブジェクト認識アルゴリズムです。しかし、アルゴリズムの計算コストが高いため、GPU サーバーを使用しなければなりませんでした。そのため、GPU サーバーをリアルタイムで活用することができませんでした。
同時に、チームは栄養ラベルのスキャン機能も追加したいと考えていましたが、サーバーの分析に要する時間は、ユーザーが自分で情報を入力した場合よりもわずかに高速でした。さらに、モバイル ネットワークの通信速度やシグナルは変動するため、ユーザー エクスペリエンスが損なわれる可能性があるため、一貫したパフォーマンスは保証されませんでした。
Lose It! のチームは、ユーザーにこの両方の機能を気に入っていただけると確信していましたが、リアルタイムをリアルタイムで提供できるスピードを実現できる場合に限ります。では、どうすれば迅速に進められるでしょうか。
Eyecon の取り組み
チームは、速度に関する問題を解決するために ML Kit に目を向けました。「ML Kit は、当社の食品認識機能である Snap It を圧縮、量子化した TF Lite モデルを使用してデプロイするのに非常に有用であることが証明されています」と Edward W 氏は言います。Lowe, Jr. Ph.D.、Lose It のデータ サイエンスおよび AI 担当ディレクター以前は、Snap It アルゴリズムがサーバーにデプロイされていたため、推論のために食品画像をサーバーに転送する必要がありました。「ML Kit でホストされるカスタムモデルで、量子化した Snap It モデルをデバイスにシームレスに実装できました。ユーザーはこの機能をデータ接続なしでリアルタイムで利用できます。また、オンデバイスのテキスト認識 API を活用することで、栄養成分ラベルを読み取る際の画像分析時間を大幅に短縮できました。」
「重要なことに、ML Kit では Firebase でモデルをホストできます」と Lowe 氏は述べています。「アプリをアップデートせずにデバイス上でモデルをシームレスに更新することができ、アプリのサイズの削減にもつながります。また、モデル バージョンの A/B テストを行うこともできます。モデルのデプロイをアプリのリリースから切り離すことで、変化するユーザー行動に迅速に対応し、ドリフトに適切に対応できるようになりました。"
結果
ML Kit のおかげで、Lose It! は幅広く利用可能な高性能栄養素ラベル リーダーを立ち上げることができました。ユーザーは、栄養成分ラベルを簡単にスキャンして、新しい食品の栄養情報をすぐに入力できるようになりました。栄養成分ラベルスキャナーは、ほとんどの場合 1 秒以内に情報を認識します。ユーザーは写真を撮影する必要すらありません。アプリはカメラビューから情報をリアルタイムで pull できます。