Federated Learningでスマートフォンのテキスト選択機能を改善(1/2)

AI

1.Federated Learningでスマートフォンのテキスト選択機能を改善(1/2)まとめ

・Smart Text Selectionはユーザーが目的としている文字範囲を予測しコピーを楽にする機能
・従来はWebページ内要素を検索エンジンに説明するために使われているデータで学習していた
・Federated learningを採用し実際の場面に基づいたデータを使って学習可能になった

2.Smart Text Selectionとは?

以下、ai.googleblog.comより「Predicting Text Selections with Federated Learning」の意訳です。元記事は2021年11月22日、Florian Hartmannさんによる投稿です。

アイキャッチ画像のクレジットはPhoto by Kelly Sikkema on Unsplash

2017年に「Android O」の機能の一部として提供を開始した「Smart Text Selection(スマートテキスト選択機能)」は、Androidの最も頻繁に使用される機能の一つであり、ユーザーがタップした周辺にある目的の単語や単語のセットを予測し、自動的に選択範囲を適切に拡大することで、ユーザーが簡単かつ迅速にテキストを選択、コピー、使用できるようにします。

この機能により、選択範囲が自動的に拡大されるため利便性が高まります。そして、住所や電話番号などの定義済み実体に関しては、ユーザーにどのアプリを起動するかの選択肢も提供されるため、ユーザーの時間をさらに節約することができます。

本日は、連合学習(Federated Learning)を利用して、ユーザーのプライバシーを守りつつ、責任を持ってユーザーのやり取りをニューラルネットワークモデルに学習させることで、スマートテキスト選択の性能を向上させた手法について説明します。

この作業は、Androidの新しいセキュアな環境であるPrivate Compute Coreの一部であり、モデルの選択精度を、いくつかの種類の実体(entities)で最大20%向上させることができました。

実体を選択する際の学習に使ったサーバ側の代替データ

Smart Linkifyと同じ技術であるSmart Text Selectionでは、任意の選択を予測するのではなく、住所や電話番号などの明確に定義された実体に焦点を当て、それらの範疇の選択境界を予測しようとしています。

また、複数の単語で構成される実体が存在しない場合には、複数の単語を誤って選択する頻度を最小限に抑えるために、1つの単語のみを選択するようにモデルを学習します。

Smart Text Selectionは、もともとschema.orgで定義されている注釈をウェブページ内に記載しているデータを使用して学習しています。つまり、学習用に作成したデータではなく、代替データを用いて学習させています。これらのデータはランダムなテキスト内に存在しているため、モデルは実体周辺のテキストに影響されることなく、実体のみを選択するようにトレーニングされました。

schema.orgの注釈データで学習するこのアプローチはうまくいきましたが、いくつかの制限がありました。このデータは、ユーザーがスマートフォンなどのデバイス上で見ることを想定したテキストとはかなり異なっていました。

例えば、schema.orgの注釈を持つウェブサイトは、通常、ユーザーが携帯電話で入力するよりも適切な書式を設定した実体を持っています。また、学習用に実体を埋め込んだテキストのサンプルはランダムであり、スマートフォン上で見るような文章ではありませんでした。

連合学習用に端末上でフィードバック信号を得る

今回の新発売では、範囲予測に代替データを使用せず、端末上で実際の操作を学習させる連合学習(Federated Learning)を採用しています。これは、機械学習モデルの学習手法の一つで、中央サーバーが多数のデバイスに分割されたモデルの学習を調整するため、学習に使用する生データは個々のスマートフォン内に留めたままにできるというものです。

標準的な連合学習による学習プロセスは以下の通りです。

サーバーはまずモデルを初期化します。
次に繰り返し処理が始まります。

(a)配下の端末を選択し、(b)選択された端末が端末内ルデータを使ってモデルを改良し、(c)改良されたモデルのみを送信します。この際、学習に使用したデータは送信しないのでプライバシーが保たれます。

そして、サーバーは受け取った更新を平均化し、次の繰り返し時に送信するモデルを作成します。

Smart Text Selectionでは、ユーザーがテキストを選択するためにタップしてモデルの提案を修正するたびに、モデルが予測すべき選択範囲をAndroid OSが的確にフィードバックします。

ユーザーのプライバシーを守るため、選択した候補はサーバー側からは見えず、一時的に端末上に保持され、その後、連合学習技術を適用してモデルを改善するために使用されます。この手法には、モデルが推論時に実際に見る事になるデータと同じ種類のデータでモデルを学習させる事ができるという利点があります。

連合学習とプライバシー

連合学習方式の利点の一つは、生のデータがサーバーに公開されないため、ユーザーのプライバシーを守ることができる点です。その代わり、サーバーは更新されたモデルの重みを受け取るだけです。しかしそれでも、様々な脅威から保護するために、私たちはデバイス上のデータを保護し、勾配を安全に集約し、モデルが記憶されるリスクを低減する方法を検討しました。

Federated Smart Text Selectionモデルをトレーニングするためのオンデバイスコードは、AndroidのPrivate Compute Coreセキュア環境の一部であり、ユーザーデータを安全に扱うのに特に適した環境となっています。

これは、Private Compute Coreのトレーニング環境がネットワークから隔離されており、データの出入りは、連合学習形式やその他のプライバシー保護技術が適用された場合にのみ許可されるからです。また、Private Compute Coreのデータは、ネットワークから隔離されているだけでなく、使用方法を制限するポリシーによって保護されているため、デバイスに入り込んだ悪意のあるコードから保護されます。

3.Federated Learningでスマートフォンのテキスト選択機能を改善(1/2)関連リンク

1)ai.googleblog.com
Predicting Text Selections with Federated Learning

タイトルとURLをコピーしました