JP2023509482A - モーションセンサデータに記録されるユーザ、動作、および機器に特有な特徴を解きほぐすシステムおよび方法 - Google Patents

モーションセンサデータに記録されるユーザ、動作、および機器に特有な特徴を解きほぐすシステムおよび方法 Download PDF

Info

Publication number
JP2023509482A
JP2023509482A JP2022541627A JP2022541627A JP2023509482A JP 2023509482 A JP2023509482 A JP 2023509482A JP 2022541627 A JP2022541627 A JP 2022541627A JP 2022541627 A JP2022541627 A JP 2022541627A JP 2023509482 A JP2023509482 A JP 2023509482A
Authority
JP
Japan
Prior art keywords
segments
user
transformed
segment
processor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2022541627A
Other languages
English (en)
Other versions
JPWO2021140450A5 (ja
Inventor
トゥドア イオネスク,ラドゥ
リステア,ニコラエ-カタリン
マダィナ ノアイカ,クリスティナ
ヴラド,ラドゥ-ミハイ
ドゥミトラン,イオナット
Original Assignee
ヴェリディウム アイピー リミテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ヴェリディウム アイピー リミテッド filed Critical ヴェリディウム アイピー リミテッド
Publication of JP2023509482A publication Critical patent/JP2023509482A/ja
Publication of JPWO2021140450A5 publication Critical patent/JPWO2021140450A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • G06F18/2132Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on discrimination criteria, e.g. discriminant analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/316User authentication by observing the pattern of computer usage, e.g. typical user behaviour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0475Generative networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/086Learning methods using evolutionary algorithms, e.g. genetic algorithms or genetic programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/094Adversarial learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2218/00Aspects of pattern recognition specially adapted for signal processing
    • G06F2218/12Classification; Matching
    • G06F2218/16Classification; Matching by matching signal segments

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Social Psychology (AREA)
  • Medical Informatics (AREA)
  • Physiology (AREA)
  • Telephone Function (AREA)
  • Image Analysis (AREA)
  • Collating Specific Patterns (AREA)
  • User Interface Of Digital Computer (AREA)
  • Measuring Pulse, Heart Rate, Blood Pressure Or Blood Flow (AREA)
  • Measurement And Recording Of Electrical Phenomena And Electrical Characteristics Of The Living Body (AREA)

Abstract

機器のユーザの識別性の高い特徴を動き信号から解きほぐして携帯機器上でユーザを認証する方法およびシステムが提供される。この方法およびシステムの少なくとも一つの態様では、キャプチャされた動き信号のそれぞれは複数のセグメントへ分割される。そして、これらのセグメントは、1つまたは複数の訓練済み変換アルゴリズムを用いて変換されて変換されたセグメントとなる。セグメントおよび変換されたセグメントは機械学習システムへ提供される。そして、1つまたは複数の特徴抽出アルゴリズムを適用する機械学習システムを用いて、プロセッサによりユーザの識別性の高い特徴がセグメントおよび変換されたセグメントから抽出される。【選択図】 図1A

Description

関連出願への相互参照
本出願は、2020年1月6日に出願され、「モーションセンサデータに記録されるユーザ、動作、および機器に特有な特徴を解きほぐすシステムおよび方法(System and Method for Disentangling Features Specific to Users, Actions and Devices Recorded in Motion Sensor Data)」と題された米国仮特許出願第62/957,653号明細書に基づいており、当該出願に対する優先権を主張し、当該出願は、その全体が本明細書に明示的に記載されているかのように、参照により本明細書に援用される。
本出願は、ユーザの特徴を抽出するシステムおよび方法に関し、特に、ユーザに関連するモーションセンサデータから機器のユーザの識別性の高い特徴(discriminative feature)を抽出するシステムおよび方法に関する。
モーションセンサデータに基づいたスマートフォンのユーザ(所有者)の特定および認証用に設計された標準的な機械学習(ML)システムは、攻撃者が所有者のスマートフォン上で認証を試みた場合の性能および精度の深刻な(例えば10%より大きな)低下に苦しんでいる。この問題は、MLシステムがユーザの識別性の高い特徴をスマートフォン機器の識別性の高い特徴、または一般的な動作(例えば、電話をテーブルから取り上げる、電話に出る、など)の識別性の高い特徴から解きほぐす(disentangle)ことができない場合に必然的に起こる。この問題は、認証セッション中にモーションセンサ(例えば、加速度計やジャイロスコープ)により記録される信号が(ユーザ、動作、および機器を代表する)これらの特徴のすべてをまとめて含んでいるという事実により引き起こされる。
この問題を解決する一つの手法は、ユーザ登録中に、(a)ユーザに異なる動作(椅子に座っている、立っている、手を入れ替える、など)を行いながら多数の機器上で認証を行うよう依頼する、(b)(潜在的な攻撃を模倣するために)別の人に2~3の認証を行わせるようにスマートフォンの所有者に依頼する、を行うことで追加の動き信号を収集することである。しかし、これらの選択肢はいずれもユーザにとって不便である。
したがって携帯機器のユーザの識別性の高い特徴を抽出するための、より信頼性が高く、より効率的な方法が必要とされている。
第1態様では、機器のユーザの識別性の高い特徴を携帯機器によりキャプチャされる動き信号から解きほぐす、コンピュータ実装される方法が提供される。携帯機器は、1つまたは複数のモーションセンサ、記憶媒体、記憶媒体に記憶される命令、および命令を実行することで構成されるプロセッサを有する。この方法では、キャプチャされた動き信号のそれぞれはプロセッサにより複数のセグメントへ分割される。そして、これらのセグメントは、1つまたは複数の訓練済み変換アルゴリズムを用いてプロセッサにより変換されて変換されたセグメントとなる。セグメントおよび変換されたセグメントは、プロセッサにより機械学習システムへ提供される。そして、1つまたは複数の特徴抽出アルゴリズムを適用する機械学習システムを用いて、プロセッサによりユーザの識別性の高い特徴がセグメントおよび変換されたセグメントから抽出される。
別の態様では、ユーザの識別性の高い特徴は、ユーザが機器を将来使用する際にユーザを特定するのに用いられる。別の態様では、1つまたは複数のモーションセンサは、ジャイロスコープと加速度計の少なくとも1つを含む。別の態様では、1つまたは複数の動き信号は、ユーザと携帯機器の間の1つまたは複数のインタラクションに対応する。
別の態様では、動き信号は、ユーザの識別性の高い特徴、ユーザにより行われる動作の識別性の高い特徴、および携帯機器の識別性の高い特徴を含む。更なる態様では、1つまたは複数のキャプチャされた動き信号を複数のセグメントへ分割するステップにより、ユーザにより行われる動作の識別性の高い特徴が取り除かれる。更なる態様では、セグメントを変換して変換されたセグメントとするステップにより、携帯機器の識別性の高い特徴が取り除かれる。
別の態様では、1つまたは複数の訓練済み変換アルゴリズムは1つまたは複数のサイクル一貫性のある敵対的生成ネットワーク(Cycle-GAN)を含み、変換されたセグメントは別の機器に由来する動き信号を模した合成動き信号を含む。
別の態様では、1つまたは複数のキャプチャされた動き信号を複数のセグメントへ分割するステップは、各動き信号を一定数のセグメントへ分割することを含み、各セグメントは固定長である。
第2態様では、携帯機器によりキャプチャされる動き信号から携帯機器上でユーザを認証するためのコンピュータ実装される方法が提供される。携帯機器は、1つまたは複数のモーションセンサ、記憶媒体、記憶媒体に記憶される命令、および命令を実行することで構成されるプロセッサを有する。この方法では、1つまたは複数のキャプチャされた動き信号はプロセッサにより複数のセグメントへ分割される。これらのセグメントは、1つまたは複数の訓練済み変換アルゴリズムを用いてプロセッサにより変換されて変換されたセグメントとなる。セグメントおよび変換されたセグメントは、プロセッサにより機械学習システムへ提供される。そして、セグメントおよび変換されたセグメントのそれぞれにプロセッサにより得点を割り当てることで、セグメントおよび変換されたセグメントは認定ユーザに属する、または無認可ユーザに属する、と分類される。投票方式、またはメタ学習モデルが、プロセッサによりセグメントおよび変換されたセグメントに割り当てられた得点に適用される。そして、プロセッサにより、投票方式またはメタ学習モデルに基づいてユーザが認定ユーザであるかどうかが判定される。
別の態様では、分類するステップは、登録プロセスにおいてセグメントおよび変換されたセグメントを認定ユーザにより提供されたサンプルセグメントから抽出された、記憶媒体に記憶されている認定ユーザの特徴と比較することと、分類モデルに基づいて各セグメントに得点を割り当てることと、を含む。
別の態様では、1つまたは複数のモーションセンサは、ジャイロスコープと加速度計の少なくとも1つを含む。別の態様では、1つまたは複数のキャプチャされた動き信号を複数のセグメントへ分割するステップは、各動き信号を一定数のセグメントへ分割することを含み、各セグメントは固定長である。別の態様では、セグメントの少なくとも一部分は重なり合う。
別の態様では、1つまたは複数の訓練済み変換アルゴリズムは1つまたは複数のCycle-GANを含み、変換するステップは第1生成器(generator)を介してセグメントを変換して変換されたセグメントとすることであって、この変換されたセグメントは別の機器上で生成されるセグメントを模している、変換することと、第2生成器を介して変換されたセグメントを再変換して、携帯機器上で生成されるセグメントを模倣することと、を含む。
別の態様では、変換されたセグメントは別の機器に由来する動き信号を模した合成動き信号を含む。別の態様では、提供するステップは、1つまたは複数の特徴抽出手法を用いた処理により、セグメントおよび変換されたセグメントから特徴を抽出して特徴ベクトルを形成することと、学習済みの分類モデルをセグメントおよび変換されたセグメントに対応する特徴ベクトルに対して用いることと、を含む。
第3態様では、機器のユーザの識別性の高い特徴を携帯機器上でキャプチャされる動き信号から解きほぐして、携帯機器上でユーザを認証するシステムが提供され、携帯機器は少なくとも1つのモーションセンサを有する。このシステムは、ネットワーク通信インタフェースと、コンピュータ可読記憶媒体と、ネットワーク通信インタフェースおよびコンピュータ可読記憶媒体とインタラクションを行って記憶媒体に記憶される1つまたは複数のソフトウェアモジュールを実行するよう構成されているプロセッサとを備える。ソフトウェアモジュールは、
実行された場合に、キャプチャされた動き信号のそれぞれを複数のセグメントへ分割するようプロセッサを構成するセグメンテーションモジュールと、
実行された場合に、1つまたは複数のサイクル一貫性のある訓練済み敵対的生成ネットワーク(Cycle-GAN)を用いてセグメントを変換して変換されたセグメントとするようプロセッサを構成する変換モジュールと、
実行された場合に、機械学習システムを用いてプロセッサによりセグメントおよび変換されたセグメントからユーザの識別性の高い特徴を抽出するようプロセッサを構成する特徴抽出モジュールと、
実行された場合に、セグメントおよび変換されたセグメントに得点を割り当て、セグメントおよび変換されたセグメントのそれぞれの得点に基づいてセグメントおよび変換されたセグメントが認定ユーザに属するか、無認可ユーザに属するかを判定するようプロセッサを構成する分類モジュールと、
実行された場合に、ユーザに対応する記憶されたセグメントに基づいて投票方式またはメタ学習モデルをセグメントおよび変換されたセグメントに割り当てられた得点に適用するようプロセッサを構成するメタ学習モジュールと、
を含む。
別の態様では、少なくとも1つのモーションセンサは、ジャイロスコープと加速度計の少なくとも1つを含む。
別の態様では、変換モジュールは、第1生成器を介してセグメントを変換して変換されたセグメントとすることであって、この変換されたセグメントは別の機器上で生成されるセグメントを模している、変換することと、第2生成器を介して変換されたセグメントを再変換して、携帯機器上で生成されるセグメントを模倣することと、を行うようプロセッサを構成する。
別の態様では、特徴抽出モジュールはさらに、学習済みの分類モデルをセグメントおよび変換されたセグメントに対応する抽出された特徴に対して用いるよう構成される。
機器のユーザの識別性の高い特徴をモーションセンサデータから解きほぐし、モーションセンサデータからユーザを認証する、本明細書で開示される少なくとも1つの実施形態に係るシステムのハイレベル図を開示している。 機器のユーザの識別性の高い特徴をモーションセンサデータから解きほぐし、モーションセンサデータからユーザを認証する、本明細書で開示される少なくとも1つの実施形態に係るコンピュータシステムのブロック図である。 機器のユーザの識別性の高い特徴をモーションセンサデータから解きほぐし、モーションセンサデータからユーザを認証する、本明細書で開示される少なくとも1つの実施形態に係るソフトウェアモジュールのブロック図である。 機器のユーザの識別性の高い特徴をモーションセンサデータから解きほぐし、モーションセンサデータからユーザを認証する、本明細書で開示される少なくとも1つの実施形態に係るコンピュータシステムのブロック図である。 1つまたは複数の実施形態に係る、機械学習に基づく例示の標準的なスマートフォンユーザ特定システムおよびフロー図を示す図である。 1つまたは複数の実施形態に係る、例示の携帯機器システムを示す図および機械学習に基づいて動作の識別性の高い特徴を取り除くことによるユーザ特定のフロー図である。 1つまたは複数の実施形態に係る、信号間変換のための例示のサイクル一貫性のある敵対的生成ネットワーク(Cycle-GAN)の図である。 携帯機器のユーザの識別性の高い特徴をモーションセンサデータから解きほぐし、モーションセンサデータからユーザを認証する、1つまたは複数の実施形態に係るシステムおよびフロー図を示す。 携帯機器のユーザの識別性の高い特徴をモーションセンサデータから解きほぐし、モーションセンサデータからユーザを認証する、1つまたは複数の実施形態に係るシステムおよびフロー図を示す。 携帯機器のユーザの識別性の高い特徴をモーションセンサデータから解きほぐし、モーションセンサデータからユーザを認証する、1つまたは複数の実施形態に係るシステムおよびフロー図を示す。 携帯機器のユーザの識別性の高い特徴をモーションセンサデータから解きほぐし、モーションセンサデータからユーザを認証する、1つまたは複数の実施形態に係るシステムおよびフロー図を示す。 機器のユーザの識別性の高い特徴をモーションセンサデータから解きほぐす、本明細書で開示される少なくとも1つの実施形態に係る計算フローを示すハイレベルブロック図を開示している。 モーションセンサデータから携帯機器上でユーザを認証する、本明細書で開示される少なくとも1つの実施形態に係る計算フローを示すハイレベルブロック図を開示している。
概要および導入として、本明細書で開示されるものは、スマートフォンのユーザの識別性の高い特徴を動き信号から抽出して、または解きほぐして、ユーザが登録している間に追加の認証を行う必要なしにそれらの特徴を動作および機器を識別するのに有用な特徴から分離する、例示のシステムおよび方法である。この方法の1つまたは複数の実施形態に従い、第1段階では、動作を識別する特徴が、信号をより小さなチャンクへと小さくして機械学習システムをこれらのチャンクのそれぞれに独立して適用することで取り除かれる。「取り除く(eliminate)」という用語は、動作(または機器)に関する信号の特徴が結果として得られる動きデータ信号から取り除かれることを必ずしも意味しないことを理解されたい。そうではなく、このプロセスは、信号チャンクの独立した処理によりそれらの識別性の高い特徴を難読化することで動作の識別性の高い特徴を効果的に取り除く。別の言い方をすれば、システムは小さなチャンクから信号全体を再構成することはできないため、動き信号に対応するユーザの動作(例えば、指によるスワイプやジェスチャ)はもはや復元することも特定することもできず、それゆえ効果的に取り除かれる。第2段階では、機器を識別する特徴は、予め規定された一組の機器上での認証セッションを模倣するために生成モデル、例えば敵対的生成ネットワークを用いることで効果的に取り除かれる。生成モデルは機器からの信号のチャンクを入力として取り込み、入力機器の特徴を予め規定された組の中の他の機器に対する識別性の高い特徴に置き換える、類似した信号のチャンクを出力として提供するよう訓練される。異なる機器からの特徴を特定のユーザの信号へ注入した後に、機械学習システムは元の信号チャンクおよび模倣された信号チャンクから、どの特徴が複数の機器においても変化しないのかを学習することができる。これらの特徴は問題のユーザを識別する上で有用な特徴である。
本明細書に記載される方法およびシステムは、例えばスマートフォンのユーザ(所有者)の特定や認証のために設計された任意の機械学習システムに接続できる。記載される方法およびシステムは、ユーザの識別性の高い特徴を重視する一方で、機器および動作を識別する特徴は取り除く。方法およびシステムは一連の実験で確認され、その利益は実験的に示されている。
図1Aは、機器のユーザの識別性の高い特徴をモーションセンサデータから解きほぐし、モーションセンサデータからユーザを認証する、少なくとも1つの実施形態に係る本システム100のハイレベル図を開示している。本方法は、本システム100の1つまたは複数の態様を用いて、以下で更なる詳細が記載されるように実現できる。一部の実装では、システム100は、固定されたPCと通信を行うクラウドベースのシステムサーバプラットフォームと、ユーザにより操作される機器、例えばスマートフォン、タブレット、ノートパソコンなどを含む。
一構成では、システム100は、システムサーバ(バックエンドサーバ)105と、1つまたは複数の携帯機器101を含む1つまたは複数のユーザ機器とを備える。本システムおよび方法は概して、少なくとも1つの実施形態において一部は携帯機器(例えばスマートフォン)を用いて行われるものとして記載されるが、本システムおよび方法は他の種類のコンピュータ装置、例えばワークステーション、パソコン、ノートパソコン、アクセス制御装置や、他の適切なデジタルコンピュータなどにおいても実現できる。例えば、携帯機器101のようなユーザの側を向く機器は典型的には動き信号をキャプチャするが、ユーザの識別性の高い特徴を動き信号から解きほぐすこと、および認証/特定を目的とした例示の処理操作の1つまたは複数はシステムサーバ105により行うことができる。また、システム100は1つまたは複数のリモートコンピュータ装置102を含むこともできる。
システムサーバ105は、実用的にはユーザ機器およびリモートコンピュータ装置と通信可能で、本明細書にさらに記載されるように電子情報を受信、送信、記憶し、要求を処理することができる任意のコンピュータ装置またはデータ処理装置とすることができる。同様に、リモートコンピュータ装置102は、実用的にはシステムサーバまたはユーザ機器と通信可能で、本明細書にさらに記載されるように電子情報を受信、送信、記憶し、要求を処理することができる任意のコンピュータ装置またはデータ処理装置とすることができる。また、システムサーバまたはリモートコンピュータ装置は任意の数のネットワーク接続された、またはクラウドベースのコンピュータ装置とすることができることを理解されたい。
1つまたは複数の実施形態では、ユーザ機器、携帯機器101はシステムサーバ105またはリモートコンピュータ装置102と互いに通信を行って、システムサーバ105またはリモートコンピュータ装置102へ電子情報を送信して、システムサーバ105またはリモートコンピュータ装置102から電子情報を受信するよう構成することができる。ユーザ機器は、例えばユーザ124からの1つまたは複数のジェスチャ(インタラクション)に対応するユーザからの動き信号をキャプチャおよび処理するよう構成することができる。
携帯機器101は、限定しないが、パソコン、タブレットコンピュータ、携帯情報端末、携帯型電子機器、携帯電話、スマートフォン機器、および同種のものを含む、本明細書に記載されるシステムおよび方法を具現化可能な任意の携帯型コンピュータ装置またはデータ処理装置とすることができる。
図1Aはユーザの識別性の高い特徴を解きほぐして携帯機器101およびリモートコンピュータ装置102に対してユーザを認証するシステム100を示しているが、任意の数のそのような機器が本明細書に記載される方法でシステムとインタラクションを行うことができることに留意されたい。また、図1Aはユーザの識別性の高い特徴を解きほぐしてユーザ124に対する認証を行うシステム100を示しているが、任意の数のユーザが本明細書に記載される方法でシステムとインタラクションを行うことができることにも留意されたい。
さらに、限定しないが、携帯機器101、システムサーバ105、およびリモートコンピュータ装置102を含む、本明細書で言及される様々なコンピュータ装置および機械は、本明細書では個々の、または一つの機器および機械と呼ばれ、特定の実装では、言及された機器および機械、ならびにそれらに関連する、または付随する操作、特徴、および機能は、結合もしくは配置することができる、またはそうでなければ、当業者には知られているように、ネットワーク接続または有線接続などを介して多数のそのような機器または機械において用いることができる。
また、携帯機器101(スマートフォンとも呼ばれる)に関連して本明細書に記載される例示のシステムおよび方法は、特に携帯機器には限定されず、他の対応するコンピュータ装置を用いて実現できることも理解されたい。
ここで図1Bを参照すると、システム100の携帯機器101は、システムの操作を可能とする役割を果たす様々なハードウェアおよびソフトウェアの構成要素を含み、1つまたは複数のプロセッサ110、メモリ120、マイク125、ディスプレイ140、カメラ145、音声出力155、記憶装置190、および通信インタフェース150を含む。プロセッサ110は、メモリ120へロードすることができるソフトウェア命令の形のクライアントアプリケーションを実行する役割を果たす。プロセッサ110は、実装に応じて、任意の数のプロセッサ、中央処理装置(CPU)、グラフィック処理装置(GPU)、マルチプロセッサコア、または任意の他の種類のプロセッサとすることができる。
好ましくは、メモリ120および/または記憶装置190はプロセッサ110によりアクセス可能であり、そのためプロセッサはメモリおよび/または記憶装置上のコード化された命令を受信して実行し、携帯機器およびその様々なハードウェア構成要素に以下でより詳細に説明されるシステムおよび方法の態様に対する操作を実行させることができる。メモリは、例えば、ランダムアクセスメモリ(RAM)、または任意の他の適切な揮発性もしくは不揮発性のコンピュータ可読記憶媒体とすることができる。加えて、メモリは固定または取り外し可能とすることができる。記憶装置190は、実装に応じて様々な形を取り得る。例えば、記憶装置には1つまたは複数の構成要素もしくは機器を含むことができて、例えば、ハードドライブ、フラッシュメモリ、書換可能光ディスク、書換可能磁気テープ、または上記の何らかの組み合わせを含むことができる。また、記憶装置は固定または取り外し可能とすることもできる。
1つまたは複数のソフトウェアモジュール130は、記憶装置190および/またはメモリ120においてコード化することができる。ソフトウェアモジュール130は、プロセッサ110内で実行されるコンピュータプログラムコードまたは一連の命令を有する、1つまたは複数のソフトウェアプログラムもしくはアプリケーションを含むことができる。例示の実施形態では、図1Cに描かれるように、ソフトウェアモジュール130には好ましくは、プロセッサ110により実行されるユーザインタフェースモジュール170、特徴抽出モジュール172、セグメンテーションモジュール173、分類モジュール174、メタ学習モジュール175、データベースモジュール176、通信モジュール177、および変換モジュール178が含まれる。そのようなコンピュータプログラムコードまたは命令は、本明細書で開示されるシステムおよび方法の操作を実行するようプロセッサ110を構成し、1つまたは複数のプログラミング言語の任意の組み合わせで書くことができる。
具体的には、ユーザインタフェースモジュール170は、ユーザからの動き信号をキャプチャしてユーザの身元を認証することに関連するステップを行うための1つまたは複数のアルゴリズムを含むことができる。特徴抽出モジュール172は、ユーザの動き信号のセグメントおよび変換されたセグメントからユーザの識別性の高い特徴を抽出することに関連するステップを行うための1つまたは複数の特徴抽出アルゴリズム(例えば機械学習アルゴリズム)を含むことができる。セグメンテーションモジュール173は、キャプチャされた動き信号を複数のセグメントへ分割することに関連するステップを行うための1つまたは複数のアルゴリズムを含むことができる。変換モジュール178は、動き信号のセグメントを変換して変換されたセグメントとすることに関連するステップを行うための1つまたは複数の変換アルゴリズムを含む。分類モジュール174は、セグメントおよび変換されたセグメントを採点する(例えばセグメントおよび変換されたセグメントにクラス確率を割り当てる)ことに関連するステップを行うための1つまたは複数のアルゴリズムを含む。メタ学習モジュール175は、認証を行おうとしているユーザを特定する、または拒絶するためにセグメントおよび変換されたセグメントに割り当てられた得点を統合することに関連するステップを行うための1つまたは複数のアルゴリズム(例えば、投票方式またはメタ学習モデル)を含む。データベースモジュール176は、動き信号に関連するデータ、セグメント、または変換されたセグメントをデータベース185または記憶装置190へ格納または保存するための1つまたは複数のアルゴリズムを含む。通信モジュール177は、システム100のコンピュータ装置101、102、および/または105の間で信号を送信および受信するための1つまたは複数のアルゴリズムを含む。
プログラムコードは、スタンドアローンのソフトウェアパッケージとして完全に携帯機器101上で実行する、あるいは部分的に携帯機器上でかつ部分的にシステムサーバ105上で実行する、あるいは完全にシステムサーバまたは別のリモートコンピュータもしくは機器上で実行することができる。後者のシナリオでは、リモートコンピュータは、ローカルエリアネットワーク(LAN)、広域ネットワーク(WAN)、移動通信ネットワーク、セルラーネットワークを含む任意の種類のネットワークを経由して携帯機器101に接続できる、あるいは、(例えばインターネットサービスプロバイダを利用してインターネット経由で)外部コンピュータへ接続できる。
1つまたは複数の実施形態では、ソフトウェアモジュール130のプログラムコードおよび1つまたは複数のコンピュータ可読記憶装置(メモリ120および/または記憶装置190など)は、当業者には知られているように、本発明に従って製造および/または流通させることができるコンピュータプログラム製品を形成する。
一部の例示の実施形態では、ソフトウェアモジュール130のうちの1つまたは複数は、システム100内で使用するためにネットワーク上で別の機器またはシステムから通信インタフェース150を介して記憶装置190へダウンロードすることができる。加えて、本システムおよび方法の操作に関連する他の情報および/またはデータ(例えばデータベース185など)も記憶装置上に記憶できることに留意されたい。好ましくは、そのような情報は、セキュアな認証アプリケーションを実行するプロセッサにより収集、または生成される情報をセキュアに記憶するために特に割り当てられる、暗号化されたデータストア上に格納される。好ましくは、暗号化手段は携帯機器の記憶装置上に情報を局所的に記憶する、およびシステムサーバ105へ情報を送信するために使用される。例えば、そのようなデータは1024ビットのポリモーフィック型暗号、または輸出規制に応じてAES256ビットの暗号方式を用いて暗号化することができる。さらに、暗号化はリモート鍵(シード)またはローカル鍵(シード)を用いて行うことができる。当業者には理解されるように、別の暗号方式、例えばSHA256を使用することができる。
加えて、携帯機器101および/またはシステムサーバ105上に記憶されたデータは、ユーザのモーションセンサデータまたは携帯機器情報を暗号鍵として用いて暗号化することができる。一部の実装では、前述したものの組み合わせを使用して、好ましくは長さが少なくとも384ビットの楕円曲線暗号を用いて携帯機器上で暗号化することができる、ユーザ用の複雑な固有鍵を作成することができる。加えて、この鍵を使用して、携帯機器またはシステムサーバ上に記憶されるデータを保護することができる。
また、1つまたは複数の実施形態では、データベース185は記憶装置190上に記憶される。以下でより詳細に説明されるように、データベース185はユーザの識別性の高い特徴を解きほぐしてユーザを認証するシステム100および方法の様々な操作にわたって利用される、様々なデータ項目および要素を含む、または維持する。データベースに格納される情報は、限定しないが、本明細書でより詳細に説明される、ユーザモーションセンサデータテンプレートおよびプロファイル情報を含みうる。データベースは携帯機器101に局所的に構成されるものとして描かれているが、特定の実装では、データベースおよびデータベースに格納されるデータ要素のいくつかのものは、さらに、またはあるいは、遠隔(示されていないが、リモート機器102またはシステムサーバ105上など)に設置して、ネットワークを介して当業者には既知の方法で携帯機器に接続できることに留意されたい。
ユーザインタフェース115もプロセッサに動作可能に結合される。インタフェースは、1つまたは複数の入力機器もしくは出力機器とすることができて、電子コンピュータ装置の分野で理解されるように例えばスイッチ、ボタン、鍵、タッチスクリーン、マイクなどとすることができる。ユーザインタフェース115は、オンオフ指令やユーザ情報、ユーザ認識のためのシステム100の操作に関連する設定などのユーザからの指令のキャプチャを容易にする役割を果たす。例えば、少なくとも1つの実施形態では、インタフェース115は携帯機器101からの特定の情報、例えば、ユーザプロファイルを作成するためにシステムへ登録するユーザの個人情報などをキャプチャするのを容易にする役割を果たすことができる。
携帯機器101は、やはりプロセッサ110に動作可能に結合されるディスプレイ140も含むこともできる。ディスプレイは、ユーザの識別性の高い特徴を解きほぐしてユーザを認証するシステム100の操作に関してシステムがユーザへ命令する、またはそうでなければユーザへフィードバックを提供できるようにする、画面、または任意の他のそのような表示機器を含む。例として、ディスプレイはドットマトリックスディスプレイや他の2次元ディスプレイなどのデジタルディスプレイとすることができる。
更なる例として、携帯機器101などのスマートフォンでは一般的なように、インタフェースおよびディスプレイはタッチスクリーンディスプレイに組み込むことができる。その結果、ディスプレイは様々なデータを表示して、ユーザが情報を入力することを可能とするフィールドを含む「フォーム」を提供することができるグラフィカルユーザインタフェースを示すのにも使用される。グラフィカルユーザインタフェースの表示に対応する位置でタッチスクリーンに触れることで、人が機器と対話してデータを入力する、設定を変更する、機能を制御する、などが可能となる。そのため、タッチスクリーンに触れられると、ユーザインタフェースはこの変化をプロセッサに伝え、設定が変更できるようになり、ユーザが入力した情報をキャプチャしてメモリに記憶することができる。
携帯機器101はデジタル画像を撮影することができるカメラ145も含みうる。携帯機器101またはカメラ145は、1つまたは複数の発光体もしくは信号放出器(示されていないが、例えばLED)、例えば、可視光放射器、赤外光放射器、および同種のものなども含みうる。カメラは、例えば、限定しないがCCDやCMOSセンサであるセンサを組み込んだ前面カメラや背面カメラなどを携帯機器に組み込むことができる。当業者には理解されるように、カメラ145はズーム、フォーカス、絞り値、露出、シャッタースピード、および同種のものなどの画像撮影設定の調整に使用可能な、レンズや露出計(例えば照度計)などの追加のハードウェア、他の従来のハードウェア、およびソフトウェア機能も含みうる。あるいは、カメラは携帯機器101の外部とすることもできる。カメラおよび発光体の取り得る変形は、当業者には理解されるであろう。加えて、携帯機器は、当業者には理解されるように、音声録音をキャプチャするための1つまたは複数のマイク125も含みうる。
音声出力155もプロセッサ110に動作可能に結合される。音声出力は、当業者には理解されるように、電子オーディオファイルを再生するよう構成されている任意の種類のスピーカーシステムとすることができる。音声出力は携帯機器101に組み込む、あるいは携帯機器101の外部とすることができる。
様々なハードウェア装置またはセンサ160もプロセッサに動作可能に結合することができる。例えば、センサ160は、当業者には理解されるように、時刻を追跡するなどのために基板実装された時計、携帯機器の場所を判定するためのGPS対応機器、地球磁場を検出して携帯機器の3次元の方位を判定するための重力磁力計、携帯機器と他の物体の間の距離を検出するための近接センサ、RF放射線レベルを検出するためのRF放射線センサ、および他のそのような装置を含みうる。
携帯機器101は、ユーザ124からの動き信号をキャプチャするよう構成されている、加速度計135、および/またはジャイロスコープ136も備える。少なくとも1つの実施形態では、加速度計は携帯機器の方位および加速度を追跡するよう構成することもできる。携帯機器101は、加速度計およびジャイロスコープの値を、例えば特徴抽出モジュール172、分類モジュール174、およびメタ学習モジュール175を含む様々なソフトウェアモジュール130を実行するプロセッサ110へ提供するよう設定(構成)することもできる。
通信インタフェース150もプロセッサ110に動作可能に結合され、携帯機器101とシステムサーバ105を含む外部の機器、機械、および/または要素の間の通信を可能とする任意のインタフェースとすることができる。好ましくは、通信インタフェースは、限定しないが、モデム、ネットワークインタフェースカード(NIC)、統合ネットワークインタフェース、無線周波数送信機/受信機(例えば、ブルートゥース、セルラー、NFC)、衛星通信送信機/受信機、赤外線ポート、USB接続、ならびに/または、携帯機器を他のコンピュータ装置および/もしくはプライベートネットワークやインターネットなどの通信ネットワークへ接続するための任意の他のそのようなインタフェースを含む。そのような接続は有線接続または(例えば802.11標準を用いた)無線接続を含みうるが、通信インタフェースは実用的には携帯機器への/携帯機器からの通信を可能とする任意のインタフェースとしうることを理解されたい。
ユーザの識別性の高い特徴を解きほぐしてユーザを認証するシステム100の操作中の様々な時点において、携帯機器101は1つまたは複数のコンピュータ装置、例えばシステムサーバ105、および/またはリモートコンピュータ装置102などと通信を行うことができる。そのようなコンピュータ装置は、携帯機器101へデータを送信する、および/または携帯機器101からデータを受信し、それにより、以下でより詳細に説明されるように、好ましくはシステム100の操作を開始する、維持する、および/または強化する。
図1Dは、システムサーバ105の例示の構成を示すブロック図である。システムサーバ105は、ユーザの識別性の高い特徴を解きほぐしてユーザを認識するシステム100の操作を可能とする役割を果たす様々なハードウェアおよびソフトウェア構成要素に動作可能に結合されるプロセッサ210を含みうる。プロセッサ210は、以下でより詳細に説明されるように、ユーザ認識に関連する様々な操作を行うために命令を実行する役割を果たす。プロセッサ210は、特定の実装に応じて、多数のプロセッサ、マルチプロセッサコア、または何らかの他の種類のプロセッサとすることができる。
特定の実装では、メモリ220および/または記憶媒体290はプロセッサ210によりアクセス可能であり、そのためプロセッサ210はメモリ220および/または記憶装置290に記憶される命令を受信して実行することができる。メモリ220は、例えば、ランダムアクセスメモリ(RAM)、または任意の他の適切な揮発性もしくは不揮発性のコンピュータ可読記憶媒体とすることができる。加えて、メモリ220は固定または取り外し可能とすることができる。記憶装置290は、特定の実装に応じて様々な形を取り得る。例えば、記憶装置290には1つまたは複数の構成要素もしくは機器を含むことができて、例えば、ハードドライブ、フラッシュメモリ、書換可能光ディスク、書換可能磁気テープ、または上記の何らかの組み合わせを含むことができる。また、記憶装置290は固定または取り外し可能とすることもできる。
1つまたは複数のソフトウェアモジュール230は、記憶装置290および/またはメモリ220においてコード化される。ソフトウェアモジュール230のうちの1つまたは複数は、プロセッサ210内で実行されるコンピュータプログラムコードまたは一連の命令を有する、1つまたは複数のソフトウェアプログラムもしくはアプリケーションを含むことができる。一実施形態では、ソフトウェアモジュール230は、ソフトウェアモジュール130のうちの1つまたは複数を含むことができる。本明細書で開示されるシステムおよび方法の態様に対する操作を実行するそのようなコンピュータプログラムコードまたは命令は、当業者には理解されるように、1つまたは複数のプログラミング言語の任意の組み合わせで書くことができる。プログラムコードは、スタンドアローンのソフトウェアパッケージとして完全にシステムサーバ105上で実行する、あるいは部分的にシステムサーバ105上で部分的にリモートコンピュータ装置102などのリモートコンピュータ装置および/または携帯機器101上で実行する、あるいは完全にそのようなリモートコンピュータ装置上で実行することができる。1つまたは複数の実施形態では、図1Bに描かれるように、ソフトウェアモジュール230には好ましくは、システムサーバのプロセッサ210により実行することができる特徴抽出モジュール172、セグメンテーションモジュール173、分類モジュール174、メタ学習モジュール175、データベースモジュール176、通信モジュール177、および変換モジュール178が含まれる。
また、好ましくは、記憶装置290上に記憶されるのはデータベース280である。以下でより詳細に説明されるように、データベース280はシステム100の様々な操作にわたって利用される、限定しないが、本明細書でより詳細に説明されるユーザプロファイルを含む様々なデータ項目および要素を含む、または維持する。データベース280はコンピュータ装置105に局所的に構成されるものとして描かれているが、特定の実装では、データベース280、またはデータベース280に格納されるデータ要素のいくつかのものは、遠隔に設置されてネットワーク(示されていない)を介して当業者には既知の方法でシステムサーバ105に接続されるコンピュータ可読記憶装置または記憶媒体上に記憶できることに留意されたい。
通信インタフェース250もプロセッサ210に動作可能に結合される。通信インタフェース250は、システムサーバ105と外部の機器、機械、または要素の間の通信を可能とする任意のインタフェースとすることができる。特定の実装では、通信インタフェース250は、限定しないが、モデム、ネットワークインタフェースカード(NIC)、統合ネットワークインタフェース、無線周波数送信機/受信機(例えば、ブルートゥース、セルラー、NFC)、衛星通信送信機/受信機、赤外線ポート、USB接続、または、コンピュータ装置105を他のコンピュータ装置またはプライベートネットワークやインターネットなどの通信ネットワークへ接続するための任意の他のそのようなインタフェースを含む。そのような接続は有線接続または(例えば802.11標準を用いた)無線接続を含みうるが、通信インタフェース250は実用的にはプロセッサ210への/プロセッサ210からの通信を可能とする任意のインタフェースとしうることを理解されたい。
システム100ならびにその様々な要素および構成要素の操作は、以下で例えば図2、図3、図4、図5A~5D、図6A~6Bを参照して説明されるように、ユーザの識別性の高い特徴を解きほぐしてモーションセンサデータを用いてユーザを認証する方法を参照することでさらに理解することができる。本明細書で描写されるプロセスは、携帯機器101および/またはシステムサーバ105の観点から示されているが、これらのプロセスは、全体または一部を携帯機器101、システムサーバ105、および/もしくは他のコンピュータ装置(例えばリモートコンピュータ装置102)、または前述したものの任意の組み合わせにより行うことができることを理解されたい。図で示され本明細書に記載されるよりも多くの、またはより少ない操作が行われうることも理解されたい。これらの操作は、本明細書に記載されるものとは異なる順序で行うこともできる。また、ステップのうち1つまたは複数を携帯機器101、および/または他のコンピュータ装置(例えば、システムサーバ105やリモートコンピュータ装置102)により行うことができることも理解されたい。
スマートフォンユーザ向けのモーションセンサに基づくいくつかのユーザ挙動認証(UBA)システムが最近の文献で提案されている。トップレベルの正解率を得る最新システム、例えば、“N. Neverova, C. Wolf, G. Lacey, L. Fridman, D. Chandra, B. Barbello, G. Taylor Learning Human Identity from Motion Patterns. IEEE Access, vol. 4, pp. 1810-1820, 2016”は、識別モデルを学習するのに機械学習(ML)および深層学習の原理を頼りにしている。しかし、そのようなモデルは、機器1台に対して1人のユーザ(正規所有者)を有するスマートフォンのユーザから収集されるデータセットで評価される。
図2は、1つまたは複数の実施形態に係る、機械学習に基づく標準的なスマートフォンユーザ特定システムを示す、システムおよびプロセスフローが混成された図を表示している。具体的には、図2は、スマートフォンを用いて実現できる典型的なUBAシステム300の実行フローを表示している。図2に示されるように、典型的なUBAシステム300では、各認証セッション中または各登録セッション中に加速度計またはジャイロスコープの信号が記録される。そして、信号は機械学習システムへの入力として提供される。システム300は特徴を抽出し、ユーザ登録中に収集される一組の訓練用サンプルでモデルを学習させる。ユーザ認証中に、訓練されたモデルが信号を所有者に属する、(セッションを許可する)、または異なるユーザに属する(セッションを拒絶する)のどちらかとして分類する。UBAシステム300の特定の例示のステップは以下に示される。
1.ユーザ登録中または認証中に、加速度計やジャイロスコープなどの内蔵センサから信号をキャプチャ。
2.MLシステム内で、一連の特徴抽出手法を用いて信号から関連する特徴を抽出。
3.登録中に、MLシステム内で、ユーザ登録中に記録された信号に対応する特徴ベクトルで分類モデルを訓練。
4.認証中に、MLシステム内で対応する特徴ベクトルに対して学習済みの分類モデルを用いて、潜在的な攻撃者から正規ユーザ(スマートフォン所有者)を識別。
この状況では、MLシステムの決定境界は、ユーザの識別性の高い特徴よりもむしろ機器または動作の識別性の高い特徴の影響を受けることがある。この仮説をテストするために実験が行われた。実験の結果は、ユーザに対応する特徴よりも機器に対応する特徴を頼りにするのが実際にはより容易であることを示した。この問題はこれまでの文献では指摘されておらず、また対処もされていなかった。しかし、この問題は、攻撃者が正規ユーザの所有するスマートフォンを入手できてUBAシステムにより保護されるアプリケーションへの認証を試みる場合に、問題となる。さらに、攻撃者は、認証中に行われる動きを分析して模倣することで正規ユーザになりすますこともできる。MLシステムが機器または動作を特徴づけるより際だった特徴を頼りにする場合は、攻撃者にアプリケーションへのアクセスを認可する可能性が高い。それゆえ、MLシステムは偽陽性率が上昇し、そのような攻撃を拒絶することはできない。
この問題を解決するため、システム300は、異なる動作(例えば、認証を左手で、右手で、座りながら、立ちながら行うなど)を用いて多数の機器上で認証を行うようにユーザに依頼するよう構成することもできて、同じ機器での否定的なサンプルを得るために、システム300はユーザに対して他の誰かに自分の機器で幾度か認証セッションを行ってもらうよう指示することもできる。しかし、これらすべては、煩雑な登録プロセスをもたらす非実用的なソリューションである。
その結果、本明細書で提供されるのは、モーションセンサに基づいて、つまりユーザの識別性の高い特徴を機器または動作の識別性の高い特徴から解きほぐすことで、UBAシステムに内在する問題に対する実用的な二段階のソリューションを提供する方法およびシステムである。本出願の1つまたは複数の実施形態では、開示される方法は、以下の2つの第1次処理段階から成る。
1.ユーザの動きまたは動作(例えば指によるスワイプやジェスチャ)を識別する特徴を取り除くために、動き信号が非常に小さなチャンクへと切り分けられて、MLシステムが個々のチャンクのそれぞれに対して適用される。これらのチャンクから信号全体を再構成することはできないため、動作(ユーザにより行われる一般的な動作)はもはや特定することができない。しかし、元の信号のこれらの小さなチャンクは、ユーザと機器に対する識別性の高い特徴をいまだに含む。
2.機器を識別する特徴を取り除くために、予め規定された一組の機器上での認証セッションを模倣するために一組の変換アルゴリズム(例えば、サイクル一貫性のある敵対的生成ネットワーク、略してCycle-GANなどの生成モデル)が適用される。生成モデルは、信号のチャンクを入力として取り込むよう訓練され、予め規定された組の中から機器の特徴を含む類似のチャンクを出力として提供する。異なる機器からの特徴を特定のユーザの信号へ注入した後に、MLシステムはどの特徴が複数の機器においても変化しないのかを学習することができる。これらは、各ユーザを識別するのを助ける特徴である。
Cycle-GANなどの1つまたは複数の変換アルゴリズムを用いることで、第2段階では、スマートフォン間でのユーザ挙動の変換が実現され、スマートフォンのセンサを表現する特徴を隠してユーザの挙動を形作る特徴を明らかにするのを助ける。正規ユーザの挙動を明確にすることの肯定的結果は、UBAシステムがより慎重になってなりすますことがより困難になる、つまり、偽陽性率が低減されることである。1つまたは複数の実施形態では、開示されるシステム(例えばシステム100)および方法は強化UBAシステムを提供する、あるいはこのシステム及び方法を従来のUBAシステムへ組み込んで既存のUBAシステムを強化することができる。
従来は、PIN、図形状パスワード(graphical password)、指紋スキャンなどの一般的な携帯機器の認証の仕組みは、限定されたセキュリティを提供する。これらの仕組みは、推測(または指紋スキャンの場合はなりすまし)、および汚れ(smudge)、反射、ビデオキャプチャ攻撃などのサイドチャネル攻撃の影響を受けやすい。その結果、挙動による生体計測信号に基づく連続的な認証方法が、学術分野および工業分野の両方で注目を浴びている。
携帯機器ユーザの足取りを認識するために加速度計データを分析した最初の研究論文が、“E. Vildjiounaite, S.-M. Make la, M. Lindholm, R. Riihimaki, V. Kyllonen, J. Mantyjarvi, H. Ailisto. Unobtrusive multimodal biometrics for ensuring privacy and information security with personal devices. In: Proceedings of International Conference on Pervasive Computing, 2006”である。
それ以来、様々なUBAシステムが研究団体により提案されており、例えば、打鍵認証に焦点を当てた“N. Clarke, S. Furnell. Advanced user authentication for mobile devices. Computers & Security, vol. 26, no. 2, 2007”および“P. Campisi, E. Maiorana, M. Lo Bosco, A. Neri. User authentication using keystroke dynamics for cellular phones. Signal Processing, IET, vol .3, no. 4, 2009”、ならびに、機械学習または深層学習の手法に焦点を当てた“C. Shen, T. Yu, S. Yuan, S., Y. Li, X. Guan. Performance analysis of motion-sensor behavior for user authentication on smartphones. Sensors, vol. 16, no. 3, pp. 345-365, 2016”、“A. Buriro, B. Crispo, F. Del Frari, K. Wrona. Hold & Sign: A Novel Behavioral Biometrics for Smartphone User Authentication. In: Proceedings of Security and Privacy Workshops, 2016”、“G. Canfora, P. di Notte F. Mercaldo, C. A. Visaggio. A Methodology for Silent and Continuous Authentication in Mobile Environment. In: Proceedings of International Conference on E-Business and Telecommunications, pp. 241-265, 2016”、“N. Neverova, C. Wolf, G. Lacey, L. Fridman, D. Chandra, B. Barbello, G. Taylor. Learning Human Identity from Motion Patterns. IEEE Access, vol. 4, pp. 1810-1820, 2016”である。
研究文献や特許で提示される方法は、ユーザ、動作、および機器に特有な特徴を含む動き信号の問題にまったく対処していない。最近の研究では、ユーザが自分の機器上でそれぞれ認証を行う場合に高い性能レベルが報告されている。この状況では、機械学習モデルの高水準の正解率が、複数のユーザまたは複数の機器を識別するモデルの能力によるのかは不明確である。この問題は、各ユーザが自分の機器で認証を行い、機器がユーザ間で共有されていないために発生する。
各ユーザが各機器上で認証を行うように、一組の機器上で認証を行う一組のユーザに対して行った実験によって、ユーザ間で識別(精度は約93%)するよりも機器間で識別(精度は約98%)する方が、実際にはより簡単であることが明らかになった。これは、研究文献および特許で提示されるUBAシステムは、ユーザに特有な特徴よりも機器に特有な特徴を頼りにしているためにうまく機能する可能性がより高いことを示唆している。そのようなシステムは、攻撃者が所有者から盗まれた機器上で認証を行った際には、高い偽陽性率(攻撃者はシステムに認証される)となりやすい。
この問題は文献に記載されてこなかったので、少なくともスマートフォンのセンサの動き信号に基づくユーザ特定との関連において、開示されるシステムおよび方法は、ユーザ、動作、および機器に特有な特徴を解きほぐす作業に対処する最初のものである。少なくとも1つの実施形態では、この方法は、2つの段階/手法、すなわちユーザおよび機器に特有な特徴を動作に特有な特徴から解きほぐすことと、ユーザに特有な特徴を機器に特有な特徴から解きほぐすことのうちの1つまたは複数を含む。
後者の手法は、敵対的生成ネットワークに基づく画像のスタイル転移の最近の研究から着想を得た。“I. Goodfellow, J. Pouget-Abadie, M. Mirza, B. Xu, D. Warde-Farley, S. Ozair, A. Courville, Y. Bengio. Generative Adversarial Nets. In: Proceedings of Advances in Neural Information Processing Systems, pp. 2672-2680, 2014”において、著者は、2つのニューラルネットワーク、すなわち生成器(generator)および識別器(discriminator)から成るモデルである敵対的生成ネットワーク(GAN)を導入し、GANはカルバック・ライブラー発散の最小化により訓練用サンプルの分布を学習することで新しい(現実的な)画像を生成する。ソース画像のセットの分布をターゲット画像のセットへ写像する、すなわちスタイル転移を行う、いくつかの他のGANベースの手法が提案された。例えば、“J.Y. Zhu, T. Park, P. Isola, A.A. Efros. Unpaired image-to-image translation using cycle-consistent adversarial networks. In: Proceedings of IEEE International Conference on Computer Vision, pp. 2223-2232, 2017”や“J. Kim, M. Kim, H. Kang, K Lee. U-GAT-IT: Unsupervised generative attentional networks with adaptive layer-instance normalization for image-to-image translation. arXiv preprint arXiv: 1907.10830, 2019”などの方法は、ターゲットの分布とソースの分布の間のサイクル一貫性損失を追加する。しかし、これらの既存の方法は、画像のスタイル転移に特異的である。
本出願の1つまたは複数の実施形態では、深層生成ニューラルネットワークは、特徴をモーションセンサデータ信号から時間領域の信号へ転移させることに焦点を当てることで、動き信号データに適応する。より詳細には、深層生成ニューラルネットワークの中心的構成要素である畳み込み層およびプーリング層は、それぞれ畳み込み操作およびプーリング操作を時間領域のみで行うように変更される。さらに、少なくとも1つの実施形態では、サイクル一貫性のあるGANがマルチドメイン設定(例えば、3つ以上の機器を含みうるマルチ機器設定)で信号を転移するのに用いられる。一方で、既存のGANは画像ドメインで動作し、2つのドメインの間(例えば、自然画像と絵画)でスタイルを転移させるために適用される。
1つまたは複数の実施形態に従い、前述したように、ユーザの識別性の高い特徴を機器および動作の識別性の高い特徴から解きほぐすために、二段階の方法が提供される。
第1段階は基本的に、信号を入力としてMLシステムへ与える前の信号の前処理に基づいている。前処理は、信号をいくつかのチャンクへ分割することにある。チャンクの個数、チャンクの長さ、およびチャンクを選択するのに用いられる間隔は、提案される前処理段階のパラメータであり、これらは精度および時間に直接影響を与えうる。例えば、チャンクに対する一定数および各チャンクに対する固定長が設定される。この場合、チャンクを抽出する間隔は信号長を考慮することで信号から計算される。より高速な認証はより短い信号を作り出してチャンクが重なり合う恐れがある一方で、より低速な認証はより長い信号を作り出してチャンクは信号全体には広がらない(一部が失われる)恐れがある。別の例は、間隔および信号長を固定して、入力信号の長さに応じて異なる数のチャンクを得ることである。さらに別の例は、チャンクの個数を固定して、入力信号全体へ広げるために間隔および対応する長さを計算することである。すべての例示のケース(および、更なる類似のケース)は、開示されるシステムにより行われる本出願の前処理手法の対象となる。結果として得られるチャンクはさらに、図3に示される例示のUBAシステムの特徴抽出および分類パイプラインの対象となる。
図3は、1つまたは複数の実施形態に係る、例示の携帯機器システムを示す図および機械学習に基づいて動作の識別性の高い特徴を取り除くことによるユーザ特定のプロセスフロー図305を表示している。一実施形態では、プロセスはシステム100の1つまたは複数の要素を用いて(例えば、携帯機器100を単独で、またはシステムサーバ105と共に)実現できる。図3に示されるように、加速度計またはジャイロスコープの信号(動き信号)310が各認証セッション中に携帯機器101により記録される。そして信号310は、システム(例えば、携帯機器100のプロセッサ、および/またはシステムサーバ105)によりN個のより小さな(潜在的に重なり合う)チャンクまたはセグメント315へ分割される。チャンク315は独立したサンプルとみなされ、入力として機械学習システムへ提供される。そして、機械学習システムは特徴を抽出し、ユーザ登録中に収集される一組の訓練用サンプルでモデルを学習させる。ユーザ認証中に、機械学習システムはチャンク315を所有者に属する、または異なるユーザに属するのどちらかとして分類する。メタ学習手法、または(認証セッション中に記録された信号から抽出された)チャンクに割り当てられたラベルまたは得点に対する(重み付けされた)多数決を適用して、セッションを認可する、または拒絶することができる。
本明細書で開示される例示のシステムおよび方法は、暗黙的な、および/または明示的な認証セッション中にキャプチャされるモーションセンサデータを用いて実現できる。明示的な認証とは、ユーザが携帯機器を用いて規定された動作を行うよう促される認証セッションを指す。一方で、暗黙的な認証とは、ユーザに何らかの動作を行うよう明示的に促すことなく行われるユーザ認証セッションを指す。動き信号310のチャンク315への分割、つまり、上述した前処理を適用することの目標は、動作の識別性の高い特徴を取り除くことである。明示的な、または暗黙的な認証中に、ユーザは異なる動作を行うことができるが、明示的な認証によりばらつきを少なくすることができる。実際、明示的な認証セッションでは、ユーザは常に同じステップ、例えばQRコードをスキャンする、スマートフォンを顔に向ける、指紋スキャナに指を載せる、などを行う可能性が高い。しかし、これらのステップは片手(左手または右手)または両手を用いて行うことができて、ユーザはそれらのステップを椅子に座りながら、もしくは立ちながら、または歩きながら行うことができる。これらのケースのそれぞれにおいて、記録された動き信号は異なるであろう。ユーザが登録中に一方の手を用いて認証ステップを行い、認証中に他方の手を用いる場合、訓練済みのMLモデルはそのような変更をうまく一般化しないため、問題が起こり得る。この状況では、従来のシステムは正規ユーザを拒絶するので、偽陰性率が高い。同じ状況は、暗黙的なユーザ認証において、つまりユーザが銀行アプリケーションなどのデータの影響を受けやすい何らかのアプリケーションと対話する場合に、よりよく見られる。この状況では、例えば手が動く方法、またはユーザの姿勢が異なりうるだけでなく、ユーザにより行われる動作(画面上の異なる位置でのタップジェスチャ、異なる方向へのスワイプジェスチャなど)も異なりうる。そのような動作を区別する(分類する)ための最も直接的な方法は、記録の最初から最後までの動き信号の経時的な変化を見ることである。しかし、ここでの目標は、システムの動作を区別する能力を取り除くことである。スマートフォンユーザの識別性の高い特徴を動き信号から解きほぐすための開示されるシステムの1つまたは複数の実施形態により実現される手法におけるように、動き信号310が個別に扱われる小さなチャンク315へと分割される場合、MLシステムは、もはや記録された信号全体をまとまりとして見る可能性はない。どのチャンクがどこに行くかがわからないことで、MLシステムは、記録全体を見ることでのみ識別可能である動作を認識することができない。これが起こるのは、チャンクを異なる順序で元に戻すことは異なる動作に対応することになるからである。ユーザがMLシステムを訓練しながら一連の動作を行ってテスト中には異なる一連の動作を行った場合に、本方法の信号前処理段階は認識の精度を4%改善することが観測された。MLシステムは各チャンクに対して決定を行う(例えば、ラベルを生成する、または得点を計算する)ので、認証を行っているユーザが正規ユーザであるかどうかを判定するために、システムにより投票方式またはメタ学習モデルを認証に対応する一組の決定(ラベルまたは得点)に適用することができる。
“N. Khanna, A.K. Mikkilineni, A.F. Martone, G.N. Ali, G.T.C. Chiu, J.P. Allebach, E.J. Delp. A survey of forensic characterization methods for physical devices. Digital Investigation, vol. 3, pp. 17-28, 2006”に詳述されているように、ハードウェアセンサは、これらのセンサにより作られる出力を見ることで生来の欠陥から容易に特定することができるのはよく知られている。例えば、“K.R. Akshatha, A.K. Karunakar, H. Anitha, U. Raghavendra, D. Shetty. Digital camera identification using PRNU: A feature based approach. Digital Investigation, vol. 19, pp. 69-77, 2016”で、著者は撮影された写真を分析することでスマートフォンカメラを特定する方法について記載しているが、“A. Ferreira, L.C. Navarro, G. Pinheiro, J.A. dos Santos, A. Rocha. Laser printer attribution: Exploring new features and beyond. Forensic Science International, vol. 247, pp. 105-125, 2015”では、著者は印刷されたページを分析することでレーザー印刷機器を特定する手法を提示している。同様の方法で、加速度計およびジャイロスコープセンサは、作り出された動き信号を分析することで一意に特定することができる。これは、ユーザの登録および認証中に記録される動き信号は本質的に機器の識別性の高い特徴を含むということを意味する。従来のシステムからのデータに基づいて、記録された動き信号に基づいてスマートフォンを特定する(精度は98%)のは、ユーザを特定する(精度は93%)、または動作(精度は92%)を特定するよりもはるかに容易であると判断された。
信号をチャンクへ分割することで動作に対する識別性の高い特徴は取り除かれるが、機器に対する識別性の高い特徴による問題は緩和されない。主な問題は、機器の識別性の高い特徴およびユーザ(スマートフォン所有者)の識別性の高い特徴は、ユーザ登録中に記録される動き信号の中および前処理ステップの後に生じるチャンクの中で絡み合っていることである。
さらに際だった態様によれば、スマートフォンユーザの識別性の高い特徴を動き信号から解きほぐす、本明細書で開示されるシステムおよび方法は、一つの機器を用いた標準的な登録の他に追加のステップをユーザ(スマートフォンの所有者)が実行する必要のない、この問題に対するソリューションを提供する。機器のユーザの識別性の高い特徴をモーションセンサデータから解きほぐしてモーションセンサデータからユーザを認証する、開示される方法およびシステムは、一部は、スタイル転移を伴う画像から画像への変換におけるサイクル一貫性のある敵対的生成ネットワークの成功により着想を得た。“J.Y. Zhu, T. Park, P. Isola, A. A. Efros. Unpaired image-to-image translation using cycle-consistent adversarial networks. In: Proceedings of IEEE International Conference on Computer Vision, pp. 2223-2232, 2017”に示されるように、Cycle-GANは、画像のスタイルを内容を保ちながら異なるスタイルで置き換えることができる。同様の方法で、開示されるシステムおよび方法は、動き信号の記録に用いられる機器を、ユーザの識別性の高い特徴を保ちながら、異なる機器で置き換える。しかし、上述したように既存の方法は画像のスタイル転移に特異的であったが、本明細書で開示される手法は、具体的には特定の機器のモーションセンサデータ信号からの特徴を別の機器に対して時間領域で模倣した信号へと変換することを対象としている。
その結果、1つまたは複数の実施形態では、図4に示されるように、Cycle-GANなどの少なくとも1つの変換アルゴリズムが信号間変換のためにシステム100により実行される。具体的には、図4は、1つまたは複数の実施形態に係る信号間変換のための例示のサイクル一貫性のある敵対的生成ネットワーク(Cycle-GAN)400の図である。図4に示されるように、少なくとも1つの実施形態に従って、機器Xで記録された入力信号xが、あたかも異なる機器Yで記録されたように見せるために、生成器Gを用いて変換される。信号は、生成器Fを用いて元の機器Xへ変換される。識別器Dは、機器Yで記録された信号とGによって生成された信号とを識別する。生成器Gは、識別器Dを欺くよう最適化され、一方で識別器Dはサンプルを敵対的に区別するよう最適化される。加えて、敵対的生成ネットワーク(生成器G、Fと識別器Dから成る)は、信号xを元の機器Xへと変換した後に計算される再構成誤差を低減するよう最適化される。少なくとも1つの実施形態では、最適化は、当業者には理解されるようにニューラルネットワークを最適化するのに一般的に用いられるアルゴリズムである確率的勾配降下法(またはその多くの変形のうちの一つ)を用いて行われる。勾配は、当業者には理解されるように、損失関数に対して計算されて、連鎖律を用いてニューラルネットワークで誤差逆伝搬が行われる。1つまたは複数の実施形態では、ニューラルネットワークの最適化を進化的アルゴリズムを用いて行うことができる。ただし、開示される方法は勾配降下または進化的アルゴリズムによる最適化に限定されないことを理解されたい。
再構成誤差を総合的な損失関数に加えることで、サイクル一貫性が保証される。機器Xから機器Yへの変換に加えて、Cycle-GANは同時に機器Yから機器Xへの転移を行うように訓練される。それゆえ、結局、開示されるシステムおよび方法は信号を両方向へ変換する。1つまたは複数の実施形態では、Cycle-GANを両方向での信号間変換のために訓練するのに用いられる損失関数は、
Figure 2023509482000002
ここで、
GおよびFは生成器、
およびDは識別器、
xおよびyは、それぞれ、機器Xおよび機器Yからの動き信号(チャンク)、
λは、GAN損失に対するサイクル一貫性の重要性を制御するパラメータ。
Figure 2023509482000003
機器Xから機器Yへの変換に対応する交差エントロピー損失であり、E[■]は期待値であり、Pdata(■)はデータサンプルの確率分布である。
Figure 2023509482000004
機器Yから機器Xへの変換に対応する交差エントロピー損失である。
Figure 2023509482000005
両方の変換に対するサイクル一貫性損失の合計であり,||■||はlノルムである。
Cycle GANに加えて、あるいはCycle GANに代えて、“J. Kim, M. Kim, H. Kang, K Lee. U-GAT-IT: Unsupervised generative attentional networks with adaptive layer-instance normalization for image-to-image translation. arXiv preprint arXiv: 1907.10830, 2019”で導入されたU-GAT-ITモデルを信号間変換のために本システムおよび方法に組み込むことができる。U-GAT-ITモデルは、ソースドメインからターゲットドメインへの変換を改善する目的で、生成器と識別器の両方に注意モジュールを、そして正規化関数(適応層インスタンス正規化)を包含している。注視領域は補助分類器を用いて得られ、正規化関数のパラメータは訓練中に学習される。少なくとも1つの実施形態では、U-GAT-ITの訓練に用いられる損失関数は、
Figure 2023509482000006
ここで、
GおよびFは生成器、
およびDは識別器、
xおよびyは、それぞれ、機器Xおよび機器Yからの動き信号(チャンク)、
λ1、λ2、λ3、およびλ4は、様々な損失成分の重要度を制御するパラメータ。
Figure 2023509482000007
機器Xから機器Yへの変換に対応する最小二乗損失である。
Figure 2023509482000008
機器Yから機器Xへの変換に対応する最小二乗損失である。
Figure 2023509482000009
両方の変換に対するサイクル一貫性損失の合計であり,||■||はlノルムである。
Figure 2023509482000010
入力信号および出力信号の振幅分布が類似していることを保証する、アイデンティティ損失の合計である。
Figure 2023509482000011
注視領域を導入する最小二乗損失の合計である。
1つまたは複数の実施形態では、多数の機器にわたって一般化される転移結果を得るために、いくつかの機器の対の間で信号を転移するのにいくつかのCycle-GAN(またはU-GAT-IT)モデルが用いられる。少なくとも1つの実施形態では、スマートフォンに対する一定数Tが設定され、動き信号がT個の機器のそれぞれから収集される。1つまたは複数の実施形態では、T個の機器のそれぞれで登録を行うユーザに対する一定数が設定される。データ収集は、UBAシステムが生産される前に行われる、つまり、実行不可能であろうT個の機器での登録を行うようにエンドユーザが依頼されることはない。図5A~5Dに示されるように、各Cycle-GANが特定の機器からの信号をすべての他の機器へ変換するのを学習し、逆もまた同様となるように、訓練済みCycle-GANの個数はTであり、以下に更なる詳細が記載される。
本明細書で開示されるシステムおよび方法の一つの目標は、いくつかの元となる機器でキャプチャされた信号を、元となる機器とは関係ないT個の機器の組の中の一つへと変換することができる、一般的なCycle-GANモデルを得ることである。少なくとも1つの実施形態では、異なるGANアーキテクチャ、様々なネットワーク深さ、学習率、または最適化アルゴリズムを用いることで同じ対象範囲を実現できる。一般化能力は、ある機器から別の機器への変換を学習するだけでなく、多数の機器から一つの機器への変換を学習することで確保される。結果として、開示される実施形態の変換アルゴリズム(例えばCycle-GAN)は、変換アルゴリズム(例えばCycle-GANモデル)の訓練中にユーザがわからなくても、またはユーザが使用する機器についての情報がなくても、ユーザのいくつかの機器でキャプチャされた信号をT個の機器の組の中の一つへ変換するのに適用することができる。元の信号がT個の機器のうちの一つへ変換されるたびに、ユーザに特有な特徴を保持しながら、所有者の機器の特徴がT個の機器の組の中のある機器の特徴に置き換えられる。機器のユーザの識別性の高い特徴をモーションセンサデータから解きほぐすシステムの1つまたは複数の実施形態に係るMLシステムへ元の信号および変換された信号の両方を供給することで、MLシステムはもはや、元の機器に特有な識別性の高い特徴を学習することはできない。これは、MLシステムは同じクラスの元の信号および変換された信号を判別する(分類する)ためであり、そのような決定境界を獲得するのに最も関連する方法は、ユーザに対して識別性の高い特徴を見ることである。
例示の実施形態
本システムおよび方法の例示の実施形態が、この手法の実用的な適用例、および、携帯機器のモーションセンサによりキャプチャされる動き信号に基づいて機器のユーザの識別性の高い特徴を解きほぐして認証するシステムおよび方法が適用できる他の実用的なシナリオと共に、図5A~5D、図6A~6B、および図1A~1Dを参照して以下でさらに詳しく記載される。
1つまたは複数の実施形態では、本明細書で開示される方法は、変更されたUBA実行パイプラインを提供する。変更されたUBA実行パイプラインは、図5A~5Dに例示されるように、ユーザの識別性の高い特徴を動作および機器の識別性の高い特徴から解きほぐすことができる。図5A~5Dは、携帯機器のユーザの識別性の高い特徴をモーションセンサデータから解きほぐしてユーザを認証する、1つまたは複数の実施形態に係るシステムおよびフロー図を示す。図5A~5Dのフロー図におけるステップは、機器のユーザの識別性の高い特徴をモーションセンサデータから解きほぐす、例えば携帯機器101および/またはシステム100のシステムサーバ105を含む例示のシステムを用いて行うことができる。図5A~5Dのフロー図におけるステップは、以下で詳述される。
1.ユーザの登録中または認証中に、携帯機器101により加速度計やジャイロスコープなどの内蔵センサからの動き信号310がキャプチャされる。
2.動き信号310はより小さなチャンク315へ分割される。
3.一組の訓練済みCycle-GAN400を用いて、他の機器上でのユーザの認証セッションを模した新しい信号500(変換された信号)が生成される。
4.MLシステム505内で、一連の特徴抽出手法を用いて、元の信号および変換された信号のチャンクから関連する特徴が抽出されて、特徴ベクトルが形成される。
5.登録中に、MLシステム505内で、記録されて変換された信号のチャンク500に対応する特徴ベクトルで分類モデルが訓練される。
6.認証中に、MLシステム505内で、記録されて変換された信号のチャンクに対応する特徴ベクトルに対して学習済みの分類モデルが用いられる。
7.認証中に、潜在的な攻撃者から正規ユーザ(スマートフォン所有者)を識別するために、認証セッションに対応する記録されて変換されたチャンクに対して得られた得点またはラベルに対して、投票方式またはメタ学習モデルが用いられる。
これらのステップおよび他のステップは、図6A~6Bの以下の例示の方法においてさらに説明され、例示される。
1つまたは複数の実施形態に従い、図6Aは、機器のユーザの識別性の高い特徴をモーションセンサデータから解きほぐすための計算フローを示すハイレベルブロック図を開示する。1つまたは複数の実施形態では、図6Aの方法は図1Aの例示のシステム100などの本システムにより行うことができる。以下のステップの多くは携帯機器101(図1A)により行われるものとして記載されているが、特定の実施形態では、以下のステップのうちの1つまたは複数は携帯機器101と通信を行うシステムサーバ(バックエンドサーバ)105により行うことができる。
図5Aおよび図1A~1Dを参照すると、プロセスはステップS105で始まり、このステップにおいて携帯機器101のプロセッサは、1つまたは複数のソフトウェアモジュール(例えばユーザインタフェースモジュール170)を実行することで携帯機器の少なくとも1つのモーションセンサ(例えば、加速度計135やジャイロスコープ136)に1つまたは複数の動き信号の形のユーザからのデータをキャプチャさせるように構成される。1つまたは複数の実施形態では、動き信号は、指定された時間領域の間に携帯機器の少なくとも1つのモーションセンサから収集された、物理的動作またはユーザの機器とのインタラクションに対応する多軸信号である。ユーザの物理的動作は、「ジェスチャ」(例えば、指によるタップや指によるスワイプ)または携帯機器との他の物理的なインタラクション(例えば、携帯機器を手に取る)の形とすることができる。例えば、モーションセンサは、ユーザが自分のサインを空中で書くこと(「明示的な」インタラクション)またはユーザが自分の電話にタップすること(「暗黙的な」インタラクション)に対応する動き信号を収集またはキャプチャすることができる。したがって、動き信号は、ユーザ、ユーザにより行われる動作(例えばジェスチャ)、および特定の携帯機器に特有な(識別性の高い)特徴を含む。
1つまたは複数の実施形態では、携帯機器のモーションセンサによる動き信号の収集またはキャプチャは、1つまたは複数の所定の時間ウィンドウであって好ましくは短い時間ウィンドウの中で行うことができる。例えば、少なくとも1つの実施形態では、時間ウィンドウはおよそ2秒とすることができる。少なくとも1つの実施形態では、ユーザの登録の間などに、ユーザに特定のジェスチャまたは明示的なインタラクションを行うよう促すことでユーザからの動き信号を収集(キャプチャ)するように携帯機器を構成することができる。さらに、少なくとも1つの実施形態では、収集された動き信号が暗黙的なジェスチャまたはユーザの携帯機器とのインタラクションを表すように、ユーザを促すことなしに動き信号を収集するように携帯機器を構成することができる。1つまたは複数の実施形態では、1つまたは複数のソフトウェアモジュール(例えばデータベースモジュール176)を実行することでキャプチャされた動き信号を携帯機器のデータベース185に保存するように携帯機器101のプロセッサを構成することができる、あるいはキャプチャされた動き信号をバックエンドサーバ105のデータベース280に保存することができる。
ステップS110において、携帯機器のプロセッサは、1つまたは複数のソフトウェアモジュール(例えばセグメンテーションモジュール173)を実行することで1つまたは複数のキャプチャされた動き信号を複数のセグメントへ分割するよう構成される。具体的には、キャプチャされた動き信号はN個のより小さなチャンクまたはセグメントへ分割される。前述したように、開示されるシステムおよび方法は、一部は、動き信号において特定のユーザに特有または固有の特徴とユーザにより行われる動作の識別性の高い特徴を識別する問題に対処するよう構成される。したがって、動き信号を複数のセグメントへ分割することで、ユーザにより行われる動作の識別性の高い特徴が取り除かれる。1つまたは複数の実施形態では、1つまたは複数のキャプチャされた動き信号を複数のセグメントへ分割するステップは、各動き信号を一定数のセグメントへ分割することを含み、各セグメントは固定長である。1つまたは複数の実施形態では、複数のセグメントまたはチャンクの少なくとも一部は、重なり合うセグメントまたはチャンクである。
引き続き図5Aを参照すると、ステップS115において、携帯機器のプロセッサは、1つまたは複数のソフトウェアモジュール530(例えば変換モジュール178)を実行することでサイクル一貫性のある敵対的生成ネットワーク(Cycle-GAN)などの1つまたは複数の訓練済み変換アルゴリズムを用いてセグメントを変換して変換されたセグメントとするよう構成される。前述したように、本システムおよび方法は、一部は、動き信号において特定のユーザに特有または固有の特徴とユーザの携帯機器の識別性の高い特徴を識別する問題に対処するよう構成される。Cycle-GANを用いてセグメントを変換して変換されたセグメントとすることで、本方法は、MLモデルへ提供される収集された動きデータ信号から携帯機器の識別性の高い特徴を効果的に取り除く。
より詳細には、1つまたは複数の実施形態に従い、チャンク/セグメントは独立したサンプルとみなされて、これらのチャンク/セグメントは入力として1つまたは複数の変換アルゴリズム(例えばCycle-GAN)へ提供される。Cycle-GANを利用する1つまたは複数の実施形態では、各Cycle-GANは予め規定されたT個の異なる機器の組で収集された動き信号の別々のデータセットに対してオフラインで訓練される。あるセグメントが入力として与えられると、Cycle-GANは、ユーザの携帯機器とは異なる、予め規定されたT個の機器の組の中の機器で記録されていたかのように、変換されたセグメントがあるセグメントに対応するように、各セグメントを変換して変換されたセグメントとする。すなわち、変換されたセグメントは、別の機器に由来する動き信号を模した1つまたは複数の合成動き信号を含む。例えば、機器Xで記録された動き信号xの入力セグメントは、異なる機器Yで記録されたように見えるようにCycle-GAN(生成器)Gを用いて変換される。
元のセグメントがCycle-GANのうちの一つを用いて変換されるたびに、ユーザに特有な特徴を保持しながら、ユーザ自身の機器の特徴が予め規定されたT個の機器の組の中のある機器の特徴に置き換えられる。前述したように、プロセスの一つの目標は、動き信号においてユーザに特有な(識別性の高い)特徴とユーザにより利用される機器だけに特有な(識別性の高い)特徴を区別することである。したがって、少なくとも1つの実施形態に従い、多数の機器にわたってユーザを特定できるようにユーザに特有な結果を得るために、いくつかのCycle-GANモデル(またはU-GAT-ITもしくは他の変換アルゴリズム)が、いくつかの機器の間でセグメントを変換するのに用いられる。1つまたは複数の実施形態では、機器(例えばスマートフォン)に対する一定数Tが設定され、動き信号のセグメントがT個の機器のそれぞれから収集される。また、T個の機器のそれぞれで登録を行うユーザに対する一定数も設定される。したがって、図4Aに示されるように、各Cycle-GANが特定の機器からのセグメントを組の中のすべての他の機器へ変換すること、およびその逆も学習するように、設定された数のCycle-GANが訓練される。それゆえ、少なくとも1つの実施形態に従い、本システムは、いくつかの元の機器でキャプチャされた信号を元の機器とは関係なく予め規定されたT個の機器の組の中の別の機器へ変換することができる、一般的なCycle-GANモデルをもたらす。
少なくとも1つの実施形態では、異なるGANアーキテクチャ、様々なネットワーク深さ、学習率、または最適化アルゴリズムを用いることでこのステップを実現できることに留意されたい。一般化能力は、一つの機器から別の機器への変換を学習するだけでなく、多数の機器から一つの機器への変換を学習することで確保される。結果として、Cycle-GANは、ユーザの機器でキャプチャされた信号を、Cycle-GANモデルの訓練中にユーザがわからなくても、またはユーザが使用する機器についての情報がなくても、T個の機器の組の中の別の機器へ変換するのに適用することができる。元のセグメントがT個の機器の組の中の一つへ変換されるたびに、ユーザに特有な特徴を保持しながら、ユーザの機器の特徴がT個の機器の組の中の別の機器の特徴に置き換えられる。
ステップS115の1つまたは複数の実施形態では、入力されたセグメントが変換されたら、携帯機器のプロセッサは、1つまたは複数のソフトウェアモジュール(例えば変換モジュール178)を実行することでセグメントを変換して元に戻すよう構成される。例えば、先の例で述べたように、機器Xで記録された動き信号xの入力セグメントは、異なる機器Yで記録されたように見えるようにCycle-GAN(生成器)Gを用いて変換される。変換されたセグメントは、Cycle-GAN(生成器)Fを用いて元の機器Xへ変換される。少なくとも1つの実施形態に従い、識別器Dは機器Yで記録された信号とCycle-GAN(生成器)Gにより生成された信号とを識別する。生成器Gは識別器Dを欺くよう最適化され、一方で識別器Dはサンプルを敵対的に区別するよう最適化される。加えて、少なくとも1つの実施形態では、システム全体は、信号xを元の機器Xへと変換した後に計算される再構成誤差を低減するよう最適化される。再構成誤差を総合的な損失関数に加えることで、サイクル一貫性が保証される。
引き続き図5Aを参照すると、ステップS120において、携帯機器のプロセッサは、1つまたは複数のソフトウェアモジュール(例えば特徴抽出モジュール172)を実行することでセグメントおよび変換されたセグメントを機械学習システムへ提供するよう構成される。入力として機械学習システムへ提供されるセグメントおよび変換されたセグメントは、独立したサンプルとみなされる。
ステップS125において、携帯機器のプロセッサは、1つまたは複数のソフトウェアモジュールを実行することで1つまたは複数の特徴抽出アルゴリズムを適用する機械学習システムを用いてセグメントおよび変換されたセグメントからユーザの識別性の高い特徴を抽出するよう構成される。例えば、1つまたは複数の実施形態では、ユーザ登録プロセスにおいて、プロセッサはセグメントおよび変換されたセグメントから関連する特徴を抽出して、1つまたは複数の特徴抽出手法を用いて特徴ベクトルを形成するよう構成される。ステップS127において、プロセッサは、学習済みの分類モデルを用いてこの分類モデルをセグメントおよび変換されたセグメントに対応する特徴ベクトルで訓練するよう構成される。少なくとも1つの実施形態では、機械学習システムは、特徴抽出ステップ(S125)および分類ステップ(S127)の両方を含むエンドツーエンドのディープニューラルネットワークとすることができる。1つまたは複数の実施形態では、機械学習システムは、2つの構成要素(特徴抽出器および分類器)、または3つの構成要素(特徴抽出器、特徴選択法-示されていない、および分類器)から形成されうる。いずれかの実施形態では、訓練可能な構成要素、すなわちディープニューラルネットワークまたは分類器が存在する。訓練可能な構成要素は、当業者には理解されるように、訓練可能な構成要素が訓練用データサンプル(ユーザ登録中に収集された元のセグメントまたは変換されたセグメント)に対する正しいラベルをどれだけうまく予測するかを表す損失関数に対して最適化アルゴリズム、例えば勾配降下を適用して、典型的にはサンプルのデータセット(動き信号のチャンク)、および対応するラベル(ユーザ識別子)で訓練される。最適化アルゴリズムの目標は損失関数を最小化すること、つまり、訓練可能な構成要素の予測能力を向上させることである。ステップS130において、方法は終了する。
図6Bは、モーションセンサデータから携帯機器上でユーザを認証する少なくとも1つの実施形態に係る計算フローを示すハイレベルブロック図を開示している。ここで図5Bを参照すると、方法はステップS105で始まる。図6Bに示されるように、ステップS105~S120は図6Aで示された方法に対して上述された、同じステップである。具体的には、ステップS105において、ユーザからの1つまたは複数の動き信号が携帯機器によりキャプチャされ、ステップS110において、1つまたは複数のキャプチャされた動き信号が複数のセグメントへ分割される。ステップS115において、セグメントは1つまたは複数の訓練済み変換アルゴリズム(例えばCycle-GAN)を用いて変換されて変換されたセグメントとなり、ステップS120において、セグメントおよび変換されたセグメントは機械学習システムへ提供される。
引き続き図5Bおよび図1A~1Dを参照すると、ステップS120の後に、ステップS135において、携帯機器のプロセッサは、1つまたは複数のソフトウェアモジュール(例えば分類モジュール174)を実行することでセグメントおよび変換されたセグメントを分類する(例えば、採点する、クラスの確率を割り当てる)よう構成される。より詳細には、1つまたは複数の実施形態では、セグメントおよび変換されたセグメントを表す特徴ベクトルが分析されて採点される。1つまたは複数の実施形態では、図6AのステップS127においてユーザ登録中に収集されたデータで既に訓練された機械学習モデル、例えば分類器またはディープニューラルネットワークに従ってセグメントおよび変換されたセグメントが採点されるように、セグメントおよび変換されたセグメントは認証セッションに対応しうる。
ステップS140において、携帯機器は、1つまたは複数のソフトウェアモジュール130(例えばメタ学習モジュール175)を実行することでセグメントおよび変換されたセグメントへ割り当てられた認証セッション中に得られた得点(例えばクラス確率)に対して投票方式またはメタ学習モデルを適用するよう構成される。投票方式またはメタ学習モデルを適用することで、携帯機器はユーザを認可する、または拒絶するために全会一致の決定を提供するよう構成される。1つまたは複数の実施形態では、セッションに対する全会一致の決定は、すべてのセグメントおよび変換されたセグメントの得点に対して適用される投票方式またはメタ学習モデルに基づく。
最終的に、ステップS145において、携帯機器は、1つまたは複数のソフトウェアモジュール(例えばメタ学習モジュール175)を実行することで投票またはメタ学習ステップに基づいてユーザが認定ユーザかどうかを判定するよう構成される。前述したように、セグメントおよび変換されたセグメントは、既知のユーザを特定するために、登録中に訓練された機械学習モデルにより出力として与えられたクラス確率に従って採点される。したがって、セグメントおよび変換されたセグメントの得点にそれぞれ適用される投票方式またはメタ学習器に基づいて、プロセッサはセグメントおよび変換されたセグメントが特定の(認定)ユーザに属するかどうかを判定するよう構成され、その結果、最終的にはユーザが認定ユーザか無認可ユーザかを判定するよう構成される。本明細書で開示される認証プロセスは、1対1の認証(ユーザ検証)のことを指す。ステップS150において、モーションセンサデータに基づいてユーザを認証する方法は終了する。
実験結果
この章では、1つまたは複数の実施形態に係る、本明細書で開示される解きほぐす方法を用いて得られた実験結果が提示される。2つの異なるデータセットが以下の実験で使用された。第1データセット(以下では、5x5データベースと呼ばれる)は、5人が認証を行うために利用される場合の5台のスマートフォンの加速度計およびジャイロスコープから記録された信号から成る。この5人は認証中に位置を変える(つまり、立ち上がる、座る、右手または左手を使う)よう依頼されたので、異なる一般的な動作を行った。各位置で、50回の認証の信号がキャプチャされ、これは各人が5台のスマートフォンのそれぞれで合計1000回の認証を行ったことを意味する、つまり、セッションの総数は5000である。第2データセット(以下では、3x3データベースと呼ばれる)は、第1データセットの時と同じ位置変化により作成されたが、3人の異なる人で3台の異なるスマートフォンで作成された。
各データベースからの信号は前処理段階で25のチャンクへ分割された。5x5データセットから結果として得られる信号チャンクは、信号を5台の機器から/5台の機器へ変換する目的で5個のCycle-GANを訓練するために使用される。そして、3x3データベースから得られた信号チャンクのそれぞれが訓練済みのGANへ供給され、このようにして、まったく新しい一組の信号が得られる。これらの新しい(変換された)信号はさらに2つのサブセットへ分割されて、一方はMLシステムを訓練するのに用いられ、他方は動き信号に基づくユーザ特定についてMLシステムをテストするのに用いられる。
GANは高次のパラメータを有する非凸ミニマックスゲームでナッシュ均衡を見つける必要があるため、GANの訓練は極めて不安定で困難であるのはよく知られている。しかし、これらの実験では、生成ネットワークに対する損失関数の単調降下が観測され、これにより均衡点に達したという考えが裏付けられた。
信号をチャンクへ分割することで、ユーザの識別性の高い特徴がキャプチャされ、動き(動作)の重要性は最小化された。明白な証拠は、信号のチャンクを(GANを適用することなく)MLシステムへ供給することで、ユーザ認識における精度が4%上昇するのが観測されたことである。異なる携帯機器でのユーザの挙動を(GANを適用して)変換することで、ユーザ認識の精度が(信号チャンクのみを用いて得られた精度に対して)さらに3%上昇した。それゆえ、様々な機器の特徴を模倣することで、機器の特徴に対してよりロバストで不変であるMLシステムが得られたと結論付けることができる。
携帯機器の個数が多くなるにつれて、攻撃の頻度は著しく大きくなる。それゆえ、近年では、ユーザ認証中にモーションセンサによりキャプチャされた信号に基づくシステムを含む、様々なユーザ挙動分析アルゴリズムが提案された。今日モーションセンサデータに基づくアルゴリズムが直面する主な問題は、ユーザに特有な特徴を動作および機器に特有な特徴から解きほぐすのが非常に困難であるということである。本出願のシステムおよび方法は、動き信号をチャンクへ分割して、変換アルゴリズム(例えば、Cycle-GAN)を用いて、ユーザ登録プロセスになんら変更を要することなく信号を他の機器へ変換することでこの問題に対処している。
実際、信号をより小さなチャンクへ分割することは、(ユーザにより行われる)動作のMLシステムの決定境界への影響を低減するのを助け、上記の例で示されるようにユーザ特定の精度を4%上昇させる。さらに、異なる機器のセンサは、機器が同じ製造会社の同じモデルで同じ製造ラインで作られているとしても、製造プロセスのために異なることはよく知られている。この事実により、携帯機器のセンサはユーザ特定のためのMLシステムの決定境界に重大な影響を与える。1つまたは複数の実施形態に従い、本明細書で開示されるシステムおよび方法は、GANを利用して任意の機器で記録された動き信号に基づいて多数の機器での認証を模倣し、携帯機器のMLシステムに対する影響を軽減させて、ユーザに特有な特徴の影響を増加させる。開示されるシステムおよび方法はさらに、MLシステムの精度を約3%向上させる。その結果、全体としては、1つまたは複数の実施形態において、本システムおよび方法は性能を7%高めて、偽陽性率と偽陰性率をいずれも減少させることができる。
機器のユーザの識別性の高い特徴を動き信号から解きほぐして動き信号から携帯機器上でユーザを認証する例示のシステムおよび方法は、以下の項目で示される。
項目1.機器のユーザの識別性の高い特徴を1つまたは複数のモーションセンサ、記憶媒体、記憶媒体に記憶される命令、および命令を実行することで構成されるプロセッサを有する携帯機器によりキャプチャされる動き信号から解きほぐすためのコンピュータ実装される方法であって、
キャプチャされた動き信号のそれぞれをプロセッサにより複数のセグメントへ分割することと、1つまたは複数の訓練済み変換アルゴリズムを用いてプロセッサにより複数のセグメントを変換して変換されたセグメントとすることと、
プロセッサによりセグメントおよび変換されたセグメントを機械学習システムへ提供することと、
1つまたは複数の特徴抽出アルゴリズムを適用する機械学習システムを用いて、プロセッサによりユーザの識別性の高い特徴をセグメントおよび変換されたセグメントから抽出することと、
を含む方法。
項目2.ユーザの識別性の高い特徴は、ユーザが機器を将来使用する際にユーザを特定するのに用いられる、項目1の方法。
項目3.1つまたは複数のモーションセンサは、ジャイロスコープと加速度計の少なくとも1つを含む、項目1および2の方法。
項目4.1つまたは複数の動き信号は、ユーザと携帯機器の間の1つまたは複数のインタラクションに対応する、項目1~3の方法。
項目5.動き信号は、ユーザの識別性の高い特徴、ユーザにより行われる動作の識別性の高い特徴、および携帯機器の識別性の高い特徴を含む、項目1~4の方法。
項目6.1つまたは複数のキャプチャされた動き信号を複数のセグメントへ分割するステップにより、ユーザにより行われる動作の識別性の高い特徴が取り除かれる、項目5の方法。
項目7.セグメントを変換して変換されたセグメントとするステップにより、携帯機器の識別性の高い特徴が取り除かれる、項目5の方法。
項目8.1つまたは複数の訓練済み変換アルゴリズムは1つまたは複数のサイクル一貫性のある敵対的生成ネットワーク(Cycle-GAN)を含み、変換されたセグメントは別の機器に由来する動き信号を模した合成動き信号を含む、項目1~7の方法。
項目9.1つまたは複数のキャプチャされた動き信号を複数のセグメントへ分割するステップは、各動き信号を一定数のセグメントへ分割することを含み、各セグメントは固定長である、項目1~8の方法。
項目10.1つまたは複数のモーションセンサ、記憶媒体、記憶媒体に記憶される命令、および命令を実行することで構成されるプロセッサを有する携帯機器によりキャプチャされる動き信号から携帯機器上でユーザを認証するためのコンピュータ実装される方法であって、
1つまたは複数のキャプチャされた動き信号をプロセッサにより複数のセグメントへ分割することと、1つまたは複数の訓練済み変換アルゴリズムを用いてプロセッサにより複数のセグメントを変換して変換されたセグメントとすることと、
プロセッサによりセグメントおよび変換されたセグメントを機械学習システムへ提供することと、
プロセッサにより、セグメントおよび変換されたセグメントのそれぞれに得点を割り当てることで、セグメントおよび変換されたセグメントが認定ユーザに属する、または無認可ユーザに属する、と分類することと、
プロセッサにより投票方式、またはメタ学習モデルをセグメントおよび変換されたセグメントに割り当てられた得点に適用することと、
プロセッサにより、投票方式またはメタ学習モデルに基づいてユーザが認定ユーザであるかどうかを判定することと、
を含む方法。
項目11.採点するステップは、
登録プロセスにおいてセグメントおよび変換されたセグメントを認定ユーザにより提供されたサンプルセグメントから抽出された、記憶媒体に記憶されている認定ユーザの特徴と比較することと、
分類モデルに基づいて各セグメントに得点を割り当てることと、
を含む、項目10の方法。
項目12.1つまたは複数のモーションセンサは、ジャイロスコープと加速度計の少なくとも1つを含む、項目10または11の方法。
項目13.1つまたは複数のキャプチャされた動き信号を複数のセグメントへ分割するステップは、各動き信号を一定数のセグメントへ分割することを含み、各セグメントは固定長である、項目10~12の方法。
項目14.セグメントの少なくとも一部分は重なり合う、項目10~13の方法。
項目15.1つまたは複数の訓練済み変換アルゴリズムは1つまたは複数のCycle-GANを含み、変換するステップは、
第1生成器を介してセグメントを変換して変換されたセグメントとすることであって、この変換されたセグメントは別の機器上で生成されるセグメントを模している、変換することと、
第2生成器を介して変換されたセグメントを再変換して、携帯機器上で生成されるセグメントを模倣することと、
を含む、項目10~14の方法。
項目16.変換されたセグメントは別の機器に由来する動き信号を模した合成動き信号を含む、項目10~15の方法。
項目17.提供するステップは、
1つまたは複数の特徴抽出手法を用いた処理により、セグメントおよび変換されたセグメントから特徴を抽出して特徴ベクトルを形成することと、
学習済みの分類モデルをセグメントおよび変換されたセグメントに対応する特徴ベクトルに対して用いることと、
を含む、項目10~16の方法。
項目18.機器のユーザの識別性の高い特徴を少なくとも1つのモーションセンサを有する携帯機器上でキャプチャされる動き信号から解きほぐして、携帯機器上でユーザを認証するシステムであって、
ネットワーク通信インタフェースと、
コンピュータ可読記憶媒体と、
ネットワーク通信インタフェースおよびコンピュータ可読記憶媒体とインタラクションを行って記憶媒体に記憶される1つまたは複数のソフトウェアモジュールを実行するよう構成されているプロセッサと、
を備え、ソフトウェアモジュールは
実行された場合に、キャプチャされた動き信号のそれぞれを複数のセグメントへ分割するようプロセッサを構成するセグメンテーションモジュールと、
実行された場合に、1つまたは複数のサイクル一貫性のある訓練済み敵対的生成ネットワーク(Cycle-GAN)を用いてセグメントを変換して変換されたセグメントとするようプロセッサを構成する変換モジュールと、
実行された場合に、機械学習システムを用いてプロセッサによりセグメントおよび変換されたセグメントからユーザの識別性の高い特徴を抽出するようプロセッサを構成する特徴抽出モジュールと、
実行された場合に、セグメントおよび変換されたセグメントに得点を割り当て、セグメントおよび変換されたセグメントのそれぞれの得点に基づいてセグメントおよび変換されたセグメントが認定ユーザに属するか、無認可ユーザに属するかを判定するようプロセッサを構成する分類モジュールと、
実行された場合に、ユーザに対応する記憶されたセグメントに基づいて、セグメントおよび変換されたセグメントに割り当てられた得点に基づいて投票方式またはメタ学習モデルを適用するようプロセッサを構成するメタ学習モジュールと、
を含む、システム。
項目19.少なくとも1つのモーションセンサは、ジャイロスコープと加速度計の少なくとも1つを含む、項目18のシステム。
項目20.変換モジュールは、第1生成器を介してセグメントを変換して変換されたセグメントとすることであって、この変換されたセグメントは別の機器上で生成されるセグメントを模している、変換することと、第2生成器を介して変換されたセグメントを再変換して、携帯機器上で生成されるセグメントを模倣することと、を行うようプロセッサを構成する、項目18~19のシステム。
項目21.特徴抽出モジュールはさらに、学習済みの分類モデルをセグメントおよび変換されたセグメントに対応する抽出された特徴に対して用いるよう構成される、項目18~20のシステム。
現時点では、前述の説明の多くはユーザの識別性の高い特徴を解きほぐしてモーションセンサデータを用いてユーザを認証するシステムおよび方法を対象としているが、本明細書で開示されるシステムおよび方法は、言及されたシナリオを超えるシナリオ、状況、および設定でも同様に配備および/または実現できることに留意されたい。
本明細書は多くの特定の実装の詳細を含んでいるが、これらはいかなる実装及び特許請求されうる範囲に対する制約と解釈されるべきではなく、むしろ、特定の実装の特定の実施形態に特有でありうる特徴の説明であると解釈されるべきである。また、別々の実施形態に関連して本明細書に記載される特定の特徴を、単一の実施形態において組み合わせて実現することも可能である。逆に、単一の実施形態に関連して記載される様々な特徴を、多数の実施形態で別々に、または任意の適切な副結合で実現することも可能である。さらに、特徴は特定の組み合わせで作用するものとして上述され、さらにそのようなものとして当初は特許請求されていることがあるが、特許請求されている組み合わせの1つ又は複数の特徴は、場合によっては、その組み合わせから削除することが可能であり、特許請求されている組み合わせは副結合又は副結合の変形を対象としてもよい。
同様に、図面では操作が特定の順番で示されているが、これは、所望の結果を得るためにそのような操作が示されている特定の順番で行われる、もしくは順次行われる、または示されているすべての操作が行われる、ということが要求されると理解されるべきではない。特定の状況では、マルチタスク及び並列処理が有利になりうる。さらに、上述された実施形態における様々なシステム構成要素の分離は、すべての実施形態においてそのような分離が必要とされると理解されるべきではなく、説明されたプログラムコンポーネント及びシステムは、通常は単一のソフトウェア製品に統合される、又は多数のソフトウェア製品にまとめられることがあると理解されるべきである。
本明細書で使用される専門用語は特定の実施形態を説明する目的のためだけで、本発明を制限する意図はない。本明細書で使用される場合、単数形の“a”、“an”、および“the”は、文脈上明白にそうではないと示されていない限りは複数形も含む。さらに、「備える/含む(comprise)」および/または「備える/含む(comprising)」という用語は、本明細書で使用される場合、記述された特徴、整数、ステップ、操作、要素、および/または構成要素の存在を明記するが、1つまたは複数の他の特徴、整数、ステップ、操作、要素、構成要素、および/またはこれらの集まりの存在または追加を妨げるものではないことが理解されるであろう。請求の範囲において「第1」、「第2」、「第3」などの順序を示す用語を使用して請求項の要素を修飾することは、それ自体では請求項の一つの要素の別の要素に対する優先度、先行、もしくは順序、または方法の動作が行われる時間的順序を含まず、特定の名前を有する請求項の一つの要素を同じ名前を持つ別の要素と区別して請求項の複数の要素を区別するためのラベルとして使用されるに過ぎないことに留意されたい。また、本明細書で使用される言葉遣いおよび用語は説明を目的としており、制限的とみなされるべきではない。
本明細書における「含む(including)」、「備える/含む(comprising)」、「有する(having)」、「含む(containing)」、「含む(involving)」、およびその変形の使用は、その後にリストされる項目およびその均等物、ならびに追加の項目を網羅することが意図されている。図面における類似の数字はいくつかの図にわたって類似する要素を表し、図を参照して記載され、示される構成要素および/またはステップのすべてがすべての実施形態または構成で必要とされるわけではないことを理解されたい。
したがって、開示されるシステムおよび方法の例示の実施形態および構成は、モーションセンサデータを用いてユーザを認証する、コンピュータ実装される方法、コンピュータシステム、およびコンピュータプログラム製品を提供する。図中のフローチャートおよびブロック図は、様々な実施形態および構成に係るシステム、方法、およびコンピュータプログラム製品の取り得る実装のアーキテクチャ、機能、および操作を示す。これに関し、フローチャートまたはブロック図における各ブロックは、指定された論理機能を実行する1つまたは複数の実行可能命令を含むモジュール、セグメント、またはコードの一部分を表しうる。また、一部の別の実装では、ブロック内に記載された機能は図で記載された順序から外れて起こりうることにも留意されたい。例えば、連続して示される2つのブロックは、実際には、ほぼ同時に実行されることがあり、あるいは、それらのブロックは、関係する機能によっては、時には逆の順序で実行されることがある。また、ブロック図および/またはフローチャート図の各ブロック、ならびにブロック図および/またはフローチャート図におけるブロックの組み合わせは、指定された機能または動作を実行する専用のハードウェアベースのシステム、または専用ハードウェアとコンピュータ命令の組み合わせにより実現できることにも留意される。
上述した主題は例示として提供されているに過ぎず、限定していると解釈されるべきではない。例証され、説明された例示の実施形態および適用例に倣うことなく、また本発明の真の趣旨、および以下の請求項に記載される範囲を逸脱することなく、本明細書に記載された主題に対して様々な修正および変更を行うことが可能である。

Claims (21)

  1. 機器のユーザの識別性の高い特徴を1つまたは複数のモーションセンサを有する携帯機器によりキャプチャされる動き信号から解きほぐすためのコンピュータ実装される方法であって、
    前記携帯機器によりキャプチャされた1つまたは複数のキャプチャされた動き信号をプロセッサにおいて提供することと、
    キャプチャされた前記動き信号のそれぞれを前記プロセッサにより複数のセグメントへ分割することと、1つまたは複数の訓練済み変換アルゴリズムを用いて前記プロセッサにより前記複数のセグメントを変換して変換されたセグメントとすることと、
    前記プロセッサにより前記セグメントおよび前記変換されたセグメントを入力として機械学習システムへ提供することと、
    1つまたは複数の特徴抽出アルゴリズムを適用する前記機械学習システムを用いて、前記プロセッサにより前記ユーザの識別性の高い特徴を前記セグメントおよび前記変換されたセグメントから抽出することと、
    を含む方法。
  2. 前記ユーザの前記識別性の高い特徴は、前記ユーザが前記機器を将来使用する際に前記ユーザを特定するのに用いられる、請求項1に記載の方法。
  3. 前記1つまたは複数のモーションセンサは、ジャイロスコープと加速度計の少なくとも1つを含む、請求項1に記載の方法。
  4. 前記1つまたは複数の動き信号は、前記ユーザと前記携帯機器の間の1つまたは複数のインタラクションに対応する、請求項1に記載の方法。
  5. 前記動き信号は、前記ユーザの前記識別性の高い特徴、前記ユーザにより行われる動作の識別性の高い特徴、および前記携帯機器の識別性の高い特徴を含む、請求項1に記載の方法。
  6. 前記1つまたは複数のキャプチャされた動き信号を前記複数のセグメントへ分割するステップにより、前記ユーザにより行われる動作の前記識別性の高い特徴が取り除かれる、請求項5に記載の方法。
  7. 前記セグメントを変換して前記変換されたセグメントとするステップ、および前記セグメントおよび前記変換されたセグメントを前記機械学習システムへ提供するステップにより、前記携帯機器の前記識別性の高い特徴が効果的に取り除かれる、請求項5に記載の方法。
  8. 前記1つまたは複数の訓練済み変換アルゴリズムは1つまたは複数のサイクル一貫性のある敵対的生成ネットワーク(Cycle-GAN)を含み、前記変換されたセグメントは別の機器に由来する動き信号を模した合成動き信号を含む、請求項1に記載の方法。
  9. 前記1つまたは複数のキャプチャされた動き信号を前記複数のセグメントへ分割するステップは、前記動き信号のそれぞれを一定数のセグメントへ分割することを含み、前記セグメントのそれぞれは固定長である、請求項1に記載の方法。
  10. 1つまたは複数のモーションセンサを有する携帯機器によりキャプチャされる動き信号から前記携帯機器のユーザを認証するためのコンピュータ実装される方法であって、
    1つまたは複数のキャプチャされた動き信号をプロセッサにおいて提供することと、
    前記1つまたは複数のキャプチャされた動き信号を前記プロセッサにより複数のセグメントへ分割することと、1つまたは複数の訓練済み変換アルゴリズムを用いて前記プロセッサにより前記複数のセグメントを変換して変換されたセグメントとすることと、
    前記プロセッサにより前記セグメントおよび前記変換されたセグメントを入力として機械学習システムへ提供することと、
    前記機械学習システムを用いて、前記プロセッサにより前記セグメントおよび前記変換されたセグメントのそれぞれに得点を割り当てることで、前記セグメントおよび前記変換されたセグメントが認定ユーザに属する、または無認可ユーザに属する、と分類することと、
    前記プロセッサにより投票方式、またはメタ学習モデルを前記セグメントおよび前記変換されたセグメントに割り当てられた前記得点に適用することと、
    前記プロセッサにより、前記投票方式または前記メタ学習モデルに基づいて前記ユーザが認定ユーザであるかどうかを判定することと、
    を含む方法。
  11. 分類するステップは、
    登録プロセスにおいて前記セグメントおよび前記変換されたセグメントを前記認定ユーザのサンプルセグメントから抽出された、記憶媒体に記憶されている前記認定ユーザの特徴と比較することと、
    分類モデルに基づいて前記セグメントのそれぞれに得点を割り当てることと、
    を含む、請求項10に記載の方法。
  12. 前記1つまたは複数のモーションセンサは、ジャイロスコープと加速度計の少なくとも1つを含む、請求項10に記載の方法。
  13. 前記1つまたは複数のキャプチャされた動き信号を前記複数のセグメントへ分割するステップは、前記動き信号のそれぞれを一定数のセグメントへ分割することを含み、前記セグメントのそれぞれは固定長である、請求項10に記載の方法。
  14. 前記セグメントの少なくとも一部分は重なり合う、請求項10に記載の方法。
  15. 前記1つまたは複数の訓練済み変換アルゴリズムは1つまたは複数のCycle-GANを含み、変換するステップは、
    第1生成器を介して前記セグメントを変換して前記変換されたセグメントとすることであって、前記変換されたセグメントは別の機器上で生成されるセグメントを模している、変換することと、
    第2生成器を介して前記変換されたセグメントを再変換して、前記携帯機器上で生成されるセグメントを模倣することと、
    を含む、請求項10に記載の方法。
  16. 前記変換されたセグメントは別の機器に由来する動き信号を模した合成動き信号を含む、請求項10に記載の方法。
  17. 提供するステップは、
    1つまたは複数の特徴抽出手法を用いた処理により、前記セグメントおよび前記変換されたセグメントから特徴を抽出して特徴ベクトルを形成することと、
    学習済みの分類モデルを前記セグメントおよび前記変換されたセグメントに対応する前記特徴ベクトルに対して用いることと、
    を含む、請求項10に記載の方法。
  18. 機器のユーザの識別性の高い特徴を少なくとも1つのモーションセンサを有する携帯機器上でキャプチャされる動き信号から解きほぐして、前記携帯機器の前記ユーザを認証するシステムであって、
    ネットワーク通信インタフェースと、
    コンピュータ可読記憶媒体と、
    前記ネットワーク通信インタフェースおよび前記コンピュータ可読記憶媒体とインタラクションを行って前記記憶媒体に記憶される1つまたは複数のソフトウェアモジュールを実行するよう構成されているプロセッサと、
    を備え、前記ソフトウェアモジュールは、
    実行された場合に、キャプチャされた前記動き信号のそれぞれを複数のセグメントへ分割するよう前記プロセッサを構成するセグメンテーションモジュールと、
    実行された場合に、1つまたは複数のサイクル一貫性のある訓練済み敵対的生成ネットワーク(Cycle-GAN)を用いて前記セグメントを変換して前記変換されたセグメントとするよう前記プロセッサを構成する変換モジュールと、
    実行された場合に、機械学習システムを用いて前記プロセッサにより前記セグメントおよび前記変換されたセグメントから前記ユーザの識別性の高い特徴を抽出するよう前記プロセッサを構成する特徴抽出モジュールと、
    実行された場合に、前記セグメントおよび前記変換されたセグメントに得点を割り当て、前記セグメントおよび前記変換されたセグメントのそれぞれの得点に基づいて前記セグメントおよび前記変換されたセグメントが認定ユーザに属するか、無認可ユーザに属するかを判定するよう前記プロセッサを構成する分類モジュールと、
    実行された場合に、前記ユーザに対応する記憶されたセグメントに基づいて投票方式またはメタ学習モデルを前記セグメントおよび前記変換されたセグメントに割り当てられた前記得点に適用するよう前記プロセッサを構成するメタ学習モジュールと、
    を含む、システム。
  19. 前記少なくとも1つのモーションセンサは、ジャイロスコープと加速度計の少なくとも1つを含む、請求項18に記載のシステム。
  20. 前記変換モジュールは、第1生成器を介して前記セグメントを変換して前記変換されたセグメントとすることであって、前記変換されたセグメントは別の機器上で生成されるセグメントを模している、変換することと、第2生成器を介して前記変換されたセグメントを再変換して、前記携帯機器上で生成されるセグメントを模倣することと、を行うよう前記プロセッサを構成する、請求項18に記載のシステム。
  21. 前記特徴抽出モジュールはさらに、学習済みの分類モデルを前記セグメントおよび前記変換されたセグメントに対応する前記抽出された特徴に対して用いるよう構成される、請求項18に記載のシステム。
JP2022541627A 2020-01-06 2021-01-06 モーションセンサデータに記録されるユーザ、動作、および機器に特有な特徴を解きほぐすシステムおよび方法 Pending JP2023509482A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202062957653P 2020-01-06 2020-01-06
US62/957,653 2020-01-06
PCT/IB2021/050077 WO2021140450A1 (en) 2020-01-06 2021-01-06 System and method for disentangling features specific to users, actions and devices recorded in motion sensor data

Publications (2)

Publication Number Publication Date
JP2023509482A true JP2023509482A (ja) 2023-03-08
JPWO2021140450A5 JPWO2021140450A5 (ja) 2024-01-17

Family

ID=74550697

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022541627A Pending JP2023509482A (ja) 2020-01-06 2021-01-06 モーションセンサデータに記録されるユーザ、動作、および機器に特有な特徴を解きほぐすシステムおよび方法

Country Status (14)

Country Link
US (1) US20210209508A1 (ja)
EP (1) EP4088205B1 (ja)
JP (1) JP2023509482A (ja)
KR (1) KR20220123118A (ja)
CN (1) CN115087973A (ja)
AU (1) AU2021205292A1 (ja)
CA (1) CA3166863A1 (ja)
CO (1) CO2022011128A2 (ja)
ES (1) ES2967932T3 (ja)
MX (1) MX2022008396A (ja)
PE (1) PE20221863A1 (ja)
PL (1) PL4088205T3 (ja)
WO (1) WO2021140450A1 (ja)
ZA (1) ZA202207976B (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023136433A1 (ko) * 2022-01-12 2023-07-20 삼성전자 주식회사 휠체어와 관련된 운동 정보 산출 방법 및 웨어러블 디바이스
US20230377004A1 (en) * 2022-05-23 2023-11-23 Verizon Patent And Licensing Inc. Systems and methods for request validation
CN116664880B (zh) * 2023-07-31 2023-11-28 南昌大学 深度伪造反取证图像的生成方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11733780B2 (en) * 2018-03-16 2023-08-22 Veridium Ip Limited System and method for user recognition using motion sensor data
US10713569B2 (en) * 2018-05-31 2020-07-14 Toyota Research Institute, Inc. System and method for generating improved synthetic images
EP3841497A4 (en) * 2018-08-24 2022-04-06 Truu, Inc. MACHINE LEARNING BASED PLATFORM FOR USER IDENTIFICATION

Also Published As

Publication number Publication date
KR20220123118A (ko) 2022-09-05
AU2021205292A1 (en) 2022-08-11
MX2022008396A (es) 2022-11-30
EP4088205A1 (en) 2022-11-16
US20210209508A1 (en) 2021-07-08
CA3166863A1 (en) 2021-07-15
ZA202207976B (en) 2023-12-20
CO2022011128A2 (es) 2023-07-10
EP4088205B1 (en) 2023-11-15
WO2021140450A1 (en) 2021-07-15
CN115087973A (zh) 2022-09-20
PE20221863A1 (es) 2022-11-30
EP4088205C0 (en) 2023-11-15
PL4088205T3 (pl) 2024-03-04
ES2967932T3 (es) 2024-05-06

Similar Documents

Publication Publication Date Title
US9294475B2 (en) System and method for generating a biometric identifier
US10877568B2 (en) Three-dimensional in-the-air finger motion based user login framework for gesture interface
US20160057138A1 (en) System and method for determining liveness
EP4088205B1 (en) System and method for disentangling features specific to users, actions and devices recorded in motion sensor data
KR101938033B1 (ko) 카메라 장착 디바이스들과 관련된 생체인식 인증
KR102401170B1 (ko) 복합 인증 장치 및 방법
CN112639809A (zh) 生物测定认证的用户自适应
WO2016072920A1 (en) Creating templates for fingerprint authentication
US20160285866A1 (en) Biometric identity verification
WO2016072921A1 (en) Fingerprint authentication using stitch and cut
KR20160018318A (ko) 지문 인식 방법, 장치 및 시스템
Li et al. CNN-based continuous authentication on smartphones with conditional Wasserstein generative adversarial network
Smith-Creasey et al. Continuous face authentication scheme for mobile devices with tracking and liveness detection
Li et al. Adaptive deep feature fusion for continuous authentication with data augmentation
CN112861082A (zh) 用于被动认证的集成系统和方法
WO2016033184A1 (en) System and method for determining liveness
Chavez-Galaviz et al. Embedded biometric cryptosystem based on finger vein patterns
Ara et al. An efficient privacy-preserving user authentication scheme using image processing and blockchain technologies
Sumalatha et al. A Comprehensive Review of Unimodal and Multimodal Fingerprint Biometric Authentication Systems: Fusion, Attacks, and Template Protection
CN112334897A (zh) 认证用户的方法和电子设备
Hamme et al. Ai for biometric authentication systems
Chaitanya et al. Verification of pattern unlock and gait behavioural authentication through a machine learning approach
Ezz et al. Challenge-response emotion authentication algorithm using modified horizontal deep learning
Shibel et al. Deep learning detection of facial biometric presentation attack
Tambay Testing fuzzy extractors for face biometrics: generating deep datasets

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240109

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240109