Pixel 4のタッチ操作を機械学習で改良(2/2)

モデル

1.Pixel 4のタッチ操作を機械学習で改良(2/2)まとめ

・「空間的特徴」に対応するCNNと「時間的進展」に対応するRNNを組み込んだネットワークを設計
・意図的にシンプルな構成に保ち推論コストを最小限(1 MB未満のメモリ消費量)に抑えた
・ユーザーは「強く押す事」と「長押しする事」を混同するので長押し操作として統合した

2.強いタッチと長いタッチの違い

以下、ai.googleblog.comより「Sensing Force-Based Gestures on the Pixel 4」の意訳です。元記事の投稿は2020年6月24日、Philip QuinnさんとWenxin Fengさんによる投稿です。

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

タッチ操作のための機械学習
私達はこれらのタッチ信号の分析をジェスチャー分類問題として取り組みました。つまり、圧力や接触の広がりなどの「抽象的なパラメータ」を予測するのではなく、ボタンやスイッチを操作しているかのような「ジェスチャー」を感知したかったのです。

これにより、分類を明確なユーザー体験に関連付け、トレーニング中にユーザーが快適な力と姿勢でジェスチャーを実行できるようになりました。

私達が設計した分類モデルは全て、タッチ操作に対するユーザーの高い期待に応える必要がありました。特に、タッチ操作は非常に遅延に敏感であり、リアルタイムで即座に反応する事が必要です。

ユーザーはアプリケーションが指の動きに沿って反応することを期待し、アプリケーション開発者はシステムがユーザーが実行した操作に関するタイムリーな情報が提供される事を期待しています。つまり、画面を押す操作はリアルタイムで分類が行われ、指の力が頂点に達した瞬間に操作が行われた事を検知できる必要があります。

そのため、畳み込み(CNN)と循環(RNN)を組み込んだニューラルネットワークを設計しました。CNNは信号として観察される「空間的特徴」に対応でき、RNNはその「時間的進展」に対応できます。

RNNは、実行状態を一貫して保持するためにも役立ちます。各フレームは、タッチセンサーから受信したときに(バッチ処理ではなく)ネットワークによって逐次処理され、RNNの状態ベクトルはフレーム間で保持されます。

ネットワークは、意図的にシンプルな構成に保たれています。スマートフォンなどのデバイス上で他のアプリケーションと同時に実行される事を考慮し、推論コストを最小限(フレームあたり約50µsの処理時間とTensorFlow Liteを使用して1 MB未満のメモリ消費量)に抑えるためです。


分類モデルのアーキテクチャの概要

モデルは、画面を押す操作やその他の一般的なタッチ操作(タップ、スクロール、ドラッグ、力を込めずに長押し)のデータセットでトレーニングされました。

モデルは個々のフレームの後に評価されるため、損失関数を時間の経過を考慮するように設計しています。
各サンプルのラベルの確率分布を時間的に形成するようにし、時間増加する重みをエラーに適用しています。
これにより、出力される確率が時間的に滑らかになり、正しいジェスチャー分類に収束することが保証されました。

ユーザー体験の統合
私達がユーザーによる使い勝手を調査した結果、、ユーザーが圧力に基づく操作方法を発見する事は困難である事がわかりました。また、ユーザーにとって接触している時間と加えている力の量を調整する事は難しく、「強く押す事」と「長押しする事」を混同することがよくありました。

従って、力の強弱に基づいて新しい操作を追加するのではなく、力を込めて押す操作と長押し操作を統合し、ユーザ体験を向上させることに焦点を当てました。

強く押す操作は、長押し操作と同じ結果をもたらします。しかし、時間的なしきい値は有効なままですが、力を込めて押された時はユーザーの操作とデバイスの応答の間により強いつながりを提供します。


ユーザーがアイコンを「長押し」(左)した場合と「強く押し」(右)した場合の違い

これは、開発者がアプリを更新せずとも、ユーザーがこのジェスチャーを利用できることも意味します。AndroidのGestureDetectorまたはView APIを使用しているアプリケーションは、既存の長押しハンドラーを介してこれらのプレス信号を自動的に取得できます。

カスタム長押し検出ロジックを実装する開発者は、Android Qで導入されたMotionEvent分類APIを介してこれらのプレス信号を受信できます。

この機械学習アルゴリズムと注意深い相互作用の設計を統合する事により、Pixelユーザーにより表現力豊かなタッチ体験を提供することができました。今後もこれらの機能の調査と開発を続け、Pixel上でのタッチ体験を改善し、新しい形式のタッチ操作を模索する予定です。

謝辞
このプロジェクトは、Android UX、Pixel software、およびAndroid framework teams間の共同作業です。

3.Pixel 4のタッチ操作を機械学習で改良(2/2)関連リンク

1)ai.googleblog.com
Sensing Force-Based Gestures on the Pixel 4

 

コメント

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