JP2016510451A - モバイルデバイス挙動の効率的分類のために増強決定株ならびに連動した特徴選択および選別アルゴリズムを使用する方法およびシステム - Google Patents

モバイルデバイス挙動の効率的分類のために増強決定株ならびに連動した特徴選択および選別アルゴリズムを使用する方法およびシステム Download PDF

Info

Publication number
JP2016510451A
JP2016510451A JP2015550850A JP2015550850A JP2016510451A JP 2016510451 A JP2016510451 A JP 2016510451A JP 2015550850 A JP2015550850 A JP 2015550850A JP 2015550850 A JP2015550850 A JP 2015550850A JP 2016510451 A JP2016510451 A JP 2016510451A
Authority
JP
Japan
Prior art keywords
mobile device
classifier model
augmented
determinants
behavior
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.)
Granted
Application number
JP2015550850A
Other languages
English (en)
Other versions
JP6258970B2 (ja
JP2016510451A5 (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 JP2016510451A publication Critical patent/JP2016510451A/ja
Publication of JP2016510451A5 publication Critical patent/JP2016510451A5/ja
Application granted granted Critical
Publication of JP6258970B2 publication Critical patent/JP6258970B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/043Distributed expert systems; Blackboards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • G06N5/025Extracting rules from data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Debugging And Monitoring (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Telephone Function (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

モバイルデバイス挙動を分類するための方法およびシステムは、増強決定株への変換に好適な有限状態機械および/またはモバイルデバイス挙動が良性であるかまたはモバイルデバイスの劣化を経時的に引き起こすかを判断することに関連する特徴の全部または多くを記述する有限状態機械を含むフル分類器モデルを生成するために、モバイルデバイス挙動の大きいコーパスを使用するサーバを構成するステップを含む。モバイルデバイスは、フル分類器モデルを受信し、そのモデルを使用して増強決定株のフルセットを生成し得、増強決定株のフルセットから、より合焦されたまたはリーンな分類器モデルが、フルセットを選別してモバイルデバイス挙動が良性であるかどうかを効率的に判断するのに好適なサブセットにすることによって生成される。増強決定株は、試験条件の限定されたセットに依存するすべての増強決定株を選択することによって選別され得る。

Description

関連出願
本出願は、参照によりそれらのすべての全体が本明細書に組み入れられている、2013年9月5日に出願した「Methods and Systems of Using Boosted Decision Stumps and Joint Feature Selection and Pruning Algorithms for the Efficient Classification of Mobile Device Behaviors」と題する米国特許仮出願第61/874,129号、2013年1月2日に出願した「On-Device Real-Time Behavior Analyzer」と題する米国特許仮出願第61/748,217号、および2013年1月2日に出願した「Architecture for Client-Cloud Behavior Analyzer」と題する米国特許仮出願第61/748,220号の優先権の利益を主張する。
セルラー通信技術およびワイヤレス通信技術は、過去数年の間に爆発的な発展をとげてきた。この発展は、より優れた通信、ハードウェア、より大きいネットワーク、およびより信頼できるプロトコルによって促進されている。結果として、ワイヤレスサービスプロバイダは現在、情報、リソース、および通信に対する前例のないレベルのアクセスを顧客に提供することができる。
これらのサービス向上と歩調を合わせて、モバイル電子デバイス(たとえば、携帯電話、タブレット、ラップトップなど)は、これまでよりも強力かつ複雑になってきている。この複雑さは、悪性であるソフトウェア、ソフトウェアの衝突、ハードウェアの欠陥、および他の同様のエラーまたは現象が、モバイルデバイスの長期の継続的な性能および電力利用レベルに悪影響を与える新たな機会を生み出した。したがって、モバイルデバイスの長期の継続的な性能および電力利用レベルに悪影響を与える可能性がある条件および/またはモバイルデバイス挙動を特定して修正することは、消費者に対する便益である。
様々な態様は、モバイルデバイス内でリーン挙動分類器モデル(lean behavior classifier model)を生成する方法を含み、そのモデルは、有限状態機械を含むフル分類器モデル(full classifier model)をモバイルデバイスのプロセッサ内で受信するステップと、モバイルデバイス内でリーン分類器モデルを生成するためにフル分類器モデルを使用するステップとを含むことができる。有限状態機械は、複数の増強決定株としての変換または表示に好適な情報を含み、増強決定株の各々は、試験条件および重み値を含むことができる。一態様では、方法は、モバイルデバイスの挙動を良性であるまたは良性でない(すなわち、悪性である、性能を劣化させる、など)のいずれかであるとして分類するために、モバイルデバイス内でリーン分類器モデルを使用するステップをさらに含むことができる。
一態様では、フル分類器モデルに基づいてリーン分類器モデルを生成するステップは、フル分類器モデル内に含まれる有限状態機械を増強決定株のリストに変換するステップと、増強決定株のリスト内に含まれる増強決定株に基づいてリーン分類器モデルを生成するステップとを含むことができる。
一態様では、フル分類器モデルに基づいてリーン分類器モデルを生成するステップは、モバイルデバイスの処理、メモリ、またはエネルギーの資源の量を過剰に消費することなくモバイルデバイス挙動を分類するために、評価されるべき特有の試験条件の数を決定するステップと、増強決定株のリストを連続的にトラバースする(traverse)ことによって試験条件のリストを生成し、試験条件のリストが規定された数の特有の試験条件を含み得るまで、連続的にトラバースされた増強決定株の各々と関連付けられた試験条件を試験条件のリストに挿入するステップと、生成された試験条件のリスト内に含まれる複数の試験条件のリストのうちの1つを試験するそれらの増強決定株だけを含むようにリーン分類器モデルを生成するステップとをさらに含むことができる。
一態様では、方法は、収集された挙動情報をリーン分類器モデル内の増強決定株の各々に適用することによってモバイルデバイスの挙動を良性であるまたは良性でないのいずれかであるとして分類するためにモバイルデバイス内のリーン分類器モデルを使用するステップと、収集された挙動情報をリーン分類器モデル内の増強決定株の各々に適用した結果の加重平均を計算するステップと、加重平均としきい値とを比較するステップとを含むことができる。
一態様では、フル分類器モデルに基づいてリーン分類器モデルを生成するステップは、フル分類器モデル内に含まれる有限状態機械を増強決定株のリストに変換するステップと、増強決定株のリスト内に含まれる増強決定株に基づいてリーン分類器モデルのファミリーを生成するステップとを含み得、リーン分類器モデルのファミリーはリーン分類器モデルおよび複数の追加のリーン分類器モデルを含み、複数の追加のリーン分類器モデルの各々は異なる数の特有の試験条件を含む。
一態様では、リーン分類器モデルを生成するステップは、異なる重み値および異なるしきい値を使用して第1の条件を試験する決定株をそれぞれ含む複数のリーン分類器モデルを生成するステップを含むことができる。一態様では、方法は、フル分類器モデルに基づいてモバイルデバイス内に生成された複数のリーン分類器モデル内の増強決定株と関連付けられたしきい値を再計算するステップを含むことができる。一態様では、方法は、フル分類器モデルに基づいてモバイルデバイス内に生成された複数のリーン分類器モデル内の増強決定株と関連付けられた重み値を再計算するステップを含むことができる。
一態様では、方法は、モバイルデバイス挙動についての情報のコーパスをサーバ内で受信することによってサーバ内でフル分類器モデルを生成するステップと、複数の増強決定株に変換するのに好適なデータを含むためにモバイルデバイス挙動についての情報のコーパスに基づいて有限状態機械を生成するステップと、有限状態機械をフル分類器モデルとしてモバイルデバイスに送信するステップとを含むことができる。一態様では、複数の試験条件の各々が確率値と関連付けられ、その確率値が、モバイルデバイス挙動が良性であるかどうかをモバイルデバイスが判断することを、その関連付けられた試験条件が可能にする尤度を特定し、方法は、有限状態機械をフル分類器モデルとしてモバイルデバイスに送信する前に、確率値に基づいて有限状態機械内の増強決定株を編成するステップをさらに含む。
さらなる態様は、上記で説明した方法の動作を実行するようにプロセッサ実行可能命令で構成されたプロセッサを有するモバイルコンピューティングデバイスを含む。
さらなる態様は、上記に記載された方法の動作をモバイルデバイス内のプロセッサに実行させるように構成されたプロセッサ実行可能ソフトウェア命令を記憶している非一時的コンピュータ可読記憶媒体を含む。
さらなる態様は、デバイスプロセッサを含むモバイルデバイスと、モバイルデバイス挙動についての情報のコーパスを受信するステップ、情報のコーパスに基づいて、試験条件および重み値をそれぞれ含む複数の増強決定株への変換に好適なデータを含むために有限状態機械を生成するステップ、および有限状態機械をフル分類器モデルとしてモバイルデバイスに送信するステップを含む動作を実行するようにサーバ実行可能命令で構成されたサーバとを含むシステムを含む。一態様では、デバイスプロセッサは、フル分類器モデルを受信するステップと、受信されたフル分類器モデルに基づいてモバイルデバイス内にリーン分類器モデルを生成するステップと、モバイルデバイスの挙動を良性であるまたは良性でないのいずれかであるとして分類するためにリーン分類器モデルを使用するステップとを含む動作を実行するようにプロセッサ実行可能命令で構成され得る。
一態様では、デバイスプロセッサは、フル分類器モデルに基づいてリーン分類器モデルを生成するステップが、フル分類器モデル内に含まれる有限状態機械を増強決定株のリストに変換するステップと、モバイルデバイスの処理、メモリ、またはエネルギーの資源の量を過剰に消費することなくモバイルデバイスの挙動を分類するために、評価されるべき特有の試験条件の数を決定するステップと、増強決定株のリストを連続的にトラバースすることによって試験条件のリストを生成し、試験条件のリストが規定された数の特有の試験条件を含むまで、連続的にトラバースされた増強決定株の各々と関連付けられた試験条件を試験条件のリストに挿入するステップと、生成された試験条件のリスト内に含まれる複数の試験条件のうちの1つを試験する増強決定株のリスト内に含まれる増強決定株を含むようにリーン分類器モデルを生成するステップとを含むような動作を実行するようにプロセッサ実行可能命令で構成され得る。
一態様のシステムでは、モバイルデバイスの挙動を分類するためにリーン分類器モデルを使用するステップが、収集された挙動情報をリーン分類器モデル内の増強決定株の各々に適用するステップと、収集された挙動情報をリーン分類器モデル内の増強決定株の各々に適用した結果の加重平均を計算するステップと、加重平均としきい値とを比較するステップとを含むような動作を実行するように、デバイスプロセッサがプロセッサ実行可能命令で構成され得る。一態様のシステムでは、フル分類器モデルに基づいてリーン分類器モデルを生成するステップが、フル分類器モデル内に含まれる有限状態機械を増強決定株のリストに変換するステップと、増強決定株のリスト内に含まれる増強決定株に基づいてリーン分類器モデルのファミリーを生成するステップとを含み、リーン分類器モデルのファミリーがリーン分類器モデルおよび複数の追加のリーン分類器モデルを含み、複数の追加のリーン分類器モデルの各々が異なる数の特有の試験条件を含むような動作を実行するように、デバイスプロセッサがプロセッサ実行可能命令で構成され得る。
一態様のシステムでは、フル分類器モデルに基づいてリーン分類器モデルを生成するステップが、異なる重み値および異なるしきい値を使用して第1の条件を試験する決定株をそれぞれ含む複数のリーン分類器モデルを生成するステップを含むような動作を実行するように、デバイスプロセッサがプロセッサ実行可能命令で構成され得る。一態様のシステムでは、複数のリーン分類器モデル内の増強決定株と関連付けられたしきい値および重み値を再計算するステップをさらに含む動作を実行するように、デバイスプロセッサがプロセッサ実行可能命令で構成され得る。
一態様のシステムでは、複数の試験条件の各々が確率値と関連付けられ、その確率値が、モバイルデバイス挙動が良性であるかどうかをモバイルデバイスが判断することを、その関連付けられた試験条件が可能にする尤度を特定するような動作を実行するように、サーバがサーバ実行可能命令で構成され得る。一態様のシステムでは、有限状態機械をフル分類器モデルとしてモバイルデバイスに送信する前に、確率値に基づいて有限状態機械内の増強決定株を編成するステップをさらに含む動作を実行するように、サーバがサーバ実行可能命令で構成され得る。
本明細書に組み込まれ、本明細書の一部をなす添付の図面は、本発明の例示的な態様を示し、上記の全般的な説明および下記の発明を実施するための形態とともに、本発明の特徴を説明するのに役立つ。
様々な態様で使用するのに好適である例示的な電気通信システムのネットワーク構成要素を示す通信システムのブロック図である。 特定のモバイルデバイス挙動が悪性であるか、性能劣化させるか、疑わしいか、または良性であるかを判断するように構成された一態様のモバイルデバイスにおける例示的な論理構成要素および情報フローを示すブロック図である。 特定のモバイルデバイス挙動が悪性であるか、性能を劣化させるか、疑わしいか、または良性であるかを判断するためにモバイルデバイスと協同して働くように構成されたネットワークサーバを含む一態様のシステム内の例示的な構成要素および情報フローを示すブロック図である。 データ、挙動ベクトルまたは分類器モデルを再訓練することなくフル分類器モデルからターゲットとされるリーン分類器モデルを生成するように構成されたモバイルデバイスを含む一態様のシステム内の例示的な構成要素および情報フローを示すブロック図である。 ネットワークサーバから受信されたフル分類器モデル内に含まれる特徴およびデータポイントのサブセットを含むリーン分類器モデルをモバイルデバイス内に生成する、一態様のモバイルデバイスの方法を示すプロセスフロー図である。 モバイルデバイス内でローカルにリーン分類器モデルを生成する別の態様のモバイルデバイスの方法を示すプロセスフロー図である。 モバイルデバイスの挙動を分類するために、ローカルに生成されたリーン分類器モデルを使用する、一態様のモバイルデバイスの方法を示すプロセスフロー図である。 モバイルデバイス内でリーン分類器モデルを生成する、さらに別の態様のモバイルデバイスの方法を示すプロセスフロー図である。 より合焦されたリーンな分類器モデルを生成することにおいてモバイルデバイスによる使用に好適な増強決定株を含むフル分類器モデルをネットワークサーバ内で生成する、一態様のネットワークサーバの方法を示すプロセスフロー図である。 様々な態様による、増強決定株分類器を生成するのに好適な例示的な方法を示すプロセスフロー図である。 一態様による、増強決定株を含む分類器モデルを生成する例示的な方法のプロセスフロー図である。 リーン分類器モデルを生成するために一態様のサーバプロセッサによって生成され、モバイルデバイスプロセッサによって使用され得る例示的な増強決定株の一例である。 一態様による、動的および適応的観測を実行するように構成された観測器モジュール内の例示的な論理構成要素および情報フローを示すブロック図である。 別の態様による、観測器デーモンを実装するコンピューティングシステム内の論理構成要素および情報フローを示すブロック図である。 モバイルデバイス上で適応的観測を実行するための一態様の方法を示すプロセスフロー図である。 一態様において使用するのに好適なモバイルデバイスの構成要素のブロック図である。 一態様において使用するのに好適なサーバデバイスの構成要素のブロック図である。
様々な態様について添付の図面を参照して詳細に説明する。可能な場合はどこでも、同じ参照番号は、図面全体を通して同じまたは同様の部分を指すために使用される。特定の例および実装形態に行われる参照は、説明を目的とし、本発明の範囲または特許請求の範囲を限定するものではない。
「例示的な」という言葉は、「例、事例、または例示として機能すること」を意味するように本明細書で使用される。本明細書に「例示的な」と記載されるいかなる実装形態も、必ずしも他の実装形態よりも好ましいか、または有利であると解釈されるべきではない。
概して、様々な態様が、モバイルデバイスの性能および/または電力利用のレベルをしばしば経時的に劣化させる条件および/またはモバイルデバイス挙動を効率的に特定し、分類し、モデリングし、防止し、および/または修正するためのネットワークサーバ、モバイルデバイス、システム、および方法を含む。ネットワークサーバは、中央データベース(たとえば、「クラウド」)から様々な条件、特徴、挙動および修正措置についての情報を受信することと、モバイルデバイスによって1つまたは複数のリーン分類器モデルに迅速に変換され得るフォーマットまたは構造で挙動情報の大きいコーパスを記述するフル分類器モデル(すなわち、データまたは挙動のモデル)を生成するためにこの情報を使用することとを行うように構成され得る。
一態様では、フル分類器モデルは、挙動情報の大きいコーパスの有限状態機械の記述または表現であり得る。一態様では、有限状態機械は、複数の増強決定株としての表示に好適な情報を含むことができる。たとえば、有限状態機械は、モバイルデバイス挙動が良性であるかまたはそのモバイルデバイスの性能の劣化を経時的に引き起こすかを判断することに関連するすべてまたは多くの特徴およびデータポイントを一括して特定、記述、試験、または評価する増強決定株のファミリーとして表示され得る情報構造であってよい。次に、ネットワークサーバは、フル分類器モデル(すなわち、有限状態機械および/または増強決定株のファミリーなどを含む情報構造)をモバイルデバイスに送信することができる。
モバイルデバイスは、リーン分類器モデルまたは変化するレベルの複雑さ(または「リーン性」)のリーン分類器モデルのファミリーを生成するためにフル分類器モデルを受信して使用するように構成され得る。これを達成するために、モバイルデバイスは、ネットワークサーバから受信されたフル分類器モデル(本明細書では「フル増強決定株分類器モデル」)内に含まれる増強決定株のロバストなファミリーを選別して、低減された数の増強決定株を含み、かつ/または限られた数の試験条件を評価するリーン分類器モデルを生成することができる。フル増強決定株分類器モデルのこの選別は、増強決定株を選択することと、選択された決定株と同じモバイルデバイスの状態、特徴、挙動または条件に依存する(およびしたがって、1つの決定結果に基づいて適用され得る)すべての他の増強決定株を特定することと、同じモバイルデバイスの状態、特徴、挙動または条件に依存する選択されたおよびすべての特定された他の増強決定株をリーン分類器モデル内に含むことと、リーン分類器モデル内に未だ含まれていない限られた数の選択された増強決定株に対してプロセスを反復することとによって達成され得る。このようにして、限られた数の異なるモバイルデバイスの状態、特徴、挙動または条件に依存するすべての増強決定株を含むリーン分類器モデルが、生成され得る。次に、モバイルデバイスは、その処理、メモリ、またはエネルギーの資源の量を過剰に消費することなくモバイルデバイス挙動を迅速に分類するために、このローカルに生成されたリーン分類器モデルを使用することができる。
一態様では、モバイルデバイスは、異なる程度のリーン性のリーン分類器モデルのファミリーを生成するために、異なる数の異なるモバイルデバイスの状態、特徴、挙動、または条件を使用して何回か、フル増強決定株分類器モデルを選別する動作を実行することができる。リーン分類器モデルを作成するために使用される異なるモバイルデバイスの状態、特徴、挙動、または条件の数が大きいほど、モデルは、悪性のまたは疑わしい挙動を正確に特定する可能性がより高くなるが、消費される処理電力はより多くなる。したがって、一態様では、モバイルデバイスは、リーン分類器モデルのファミリーのうちの最もリーンなモデル(すなわち、最小の数の異なるモバイルデバイスの状態、特徴、挙動、または条件に基づくモデル)を定期的に適用するように構成され得る。最もリーンな分類器モデルによって生成された結果が疑わしい場合、モバイルデバイスプロセッサは、挙動が悪性であるまたは良性であると特定され得るかどうかを判断するためにより多くのデバイスの状態、特徴、挙動、または条件を評価する、より強い(すなわち、それほどリーンでない)分類器モデルを適用することができる。そのそれほどリーンでない分類器モデルを適用することによって生成された結果が依然として疑わしい場合、さらに強い(さらにそれほどリーンでない)分類器モデルが適用され得、挙動が悪性であるまたは良性であると断定的に分類されるまで、同様に繰り返される。
中央データベース(たとえば、「クラウド」)におけるそのような挙動および修正措置についての情報を記憶すること、ならびに中央データベース内に記憶された情報を使用して各モバイルデバイスの性能および電力使用レベルにおける劣化を経時的に引き起こしているファクタを知的におよび効率的に特定するために、モバイルデバイスおよびネットワークサーバを互いに連携して働くように構成することによって、モバイルデバイスが、モバイルデバイスの性能を限定する条件および望ましくない動作条件をより正確にかつ効率的に特定してそれらに対応することを、様々な態様が可能にする。
加えて、ネットワークサーバ内に増強決定株を含む分類器モデルを生成し、これらの分類器/モデルをモバイルデバイスに送信することによって、モバイルデバイスが、訓練データにアクセスすることなくまたはネットワークサーバ、中央データベース、もしくはクラウドネットワーク/サーバとさらに通信することなく、上記で説明した方法で増強決定株の数を選別することによってモバイルデバイス内にリーンな(またはより合焦された)分類器モデルをより迅速におよび効率的に生成することを、様々な態様が可能にする。これは、モバイルデバイスのネットワークへの依存を著しく低減し、さらに、モバイルデバイスの性能および電力消費特性を改善する。
いくつかの異なるセルラーおよびモバイル通信サービスおよび規格が利用可能であるか、または将来考えられ、それらのすべてが様々な態様を実装し、様々な態様から利益を受けることができる。そのようなサービスおよび規格は、たとえば、第3世代パートナーシッププロジェクト(3GPP)、ロングタームエボリューション(LTE)システム、第3世代ワイヤレスモバイル通信技術(3G)、第4世代ワイヤレスモバイル通信技術(4G)、広域移動通信システム(GSM(登録商標))、ユニバーサルモバイル通信システム(UMTS)、3GSM(登録商標)、汎用パケット無線サービス(GPRS)、符号分割多元接続(CDMA)システム(たとえば、cdmaOne、CDMA1020TM)、GSM(登録商標)進化型高速データレート(EDGE:enhanced data rates for GSM evolution)、高度移動電話システム(AMPS:advanced mobile phone system)、デジタルAMPS(IS-136/TDMA)、エボリューションデータ最適化(EV-DO)、digital enhanced cordless telecommunications(DECT)、ワールドワイドインターオペラビリティフォーマイクロウェーブアクセス(WiMAX:worldwide interoperability for microwave access)、ワイヤレスローカルエリアネットワーク(WLAN)、Wi-Fi Protected Access I & II(WPA、WPA2)、およびintegrated digital enhanced network(iden)を含む。これらの技術の各々は、たとえば、音声、データ、シグナリング、および/またはコンテンツメッセージの送信および受信を伴う。個々の電気通信規格または技術に関連した用語および/または技術的詳細に対するいかなる参照も、例示目的にすぎず、請求項の文言に具体的に記載されない限り、請求項の範囲を特定の通信システムまたは技術に限定することは意図していないことを理解されたい。
「モバイルコンピューティングデバイス」および「モバイルデバイス」という用語は、携帯電話、スマートフォン、パーソナルまたはモバイルマルチメディアプレーヤー、携帯情報端末(PDA)、ラップトップコンピュータ、タブレットコンピュータ、スマートブック、ウルトラブック、パームトップコンピュータ、ワイヤレス電子メール受信機、マルチメディアインターネット対応携帯電話、ワイヤレスゲームコントローラ、ならびに、性能が重要であるメモリとプログラム可能プロセッサを含み、節電方法が有益であるようなバッテリー電源で動作する同様の個人用電子デバイスのうちの、任意の1つまたはすべてを指すように、本明細書では交換可能に使用される。様々な態様は、限られたリソースを有し、バッテリーで動作する、スマートフォンなどのモバイルコンピューティングデバイスに対して特に有用であるが、これらの態様は、概して、プロセッサを含み、アプリケーションプログラムを実行する任意の電子デバイスにおいて有用である。
概して、モバイルデバイスの性能および電力効率は、時間がたつにつれて劣化する。近年、アンチウイルス会社(たとえば、McAfee、Symantecなど)は、この劣化を遅くすることを狙いとするモバイル用アンチウイルス、ファイアウォール、および暗号化製品のマーケティングを開始した。しかしながら、これらの解法の多くは、モバイルデバイス上で計算負荷の大きいスキャニングエンジンを周期的に実行することに依存しており、そのことが、モバイルデバイスの処理およびバッテリーリソースの多くを消費し、モバイルデバイスを遅くさせるかまたはより長い時間期間の間使えなくさせ、および/または場合によってはユーザエクスペリエンスを劣化させる。加えて、これらの解法は、一般に、知られているウイルスおよびマルウェアの検出に限定され、複数の複雑なファクタおよび/または(たとえば、性能劣化がウイルスまたはマルウェアによって引き起こされない場合に)経時的なモバイルデバイスの劣化に寄与するようにしばしば結びつく相互作用に対処しない。これらのおよび他の理由によって、既存のアンチウイルス、ファイアウォールおよび暗号化製品は、経時的なモバイルデバイスの劣化に寄与することがある多くのファクタを特定するため、モバイルデバイスの劣化を予防するため、または経年劣化したモバイルデバイスをそれの初期状態に効率的に回復させるために十分な解法を提供していない。
機械学習技法を使用することによって、またはコンピューティングデバイス上で実行するプロセスもしくはアプリケーションプログラムの挙動をモデリングすることによって悪性のソフトウェアを検出するために、様々な他の解法が存在する。しかしながら、これらの解法の多くは、非常に大きいデータのコーパスを評価することを必要とするか、個別のアプリケーションプログラムまたはプロセスを評価することに限定されるか、またはモバイルデバイスにおいて計算負荷の大きいプロセスの実行を必要とするので、モバイルデバイス上の使用には適さない。したがって、モバイルデバイス内のそのような解法を実施または実行することは、モバイルデバイスの応答性、性能、または電力消費特性に負のおよび/またはユーザが気付く重大な影響を及ぼすことがある。これらおよび他の理由によって、既存のモデリングおよび機械学習解法は、近代的なモバイルデバイスの複雑ではありながら資源を制約されたシステムにおける使用には十分に好適ではない。
たとえば、既存の機械学習ベースの解法は、特徴ベクトルを入力としてとるモデルを導出するために訓練データのコーパスを使用するようにコンピューティングデバイスを構成することを含むことがある。しかしながら、そのような解法は、試験条件および重み値をそれぞれ含む複数の増強決定株への変換または複数の増強決定株としての表示に好適な有限状態機械(または他の類似の情報構造)を含むフル分類器モデル(または分類器モデルのファミリー)を生成しない。少なくともこの理由のために、そのような解法は、モバイルデバイスの応答性または性能または電力消費特性に著しい負のまたはユーザが気付く影響を及ぼすことなく、迅速におよび効率的にモバイルデバイス挙動を特定、分析および/または分類するために使用される増強決定株の合焦されたセットを含むリーン分類器モデルを迅速におよび効率的に生成するためにモバイルデバイスプロセッサによって使用されることはできない。
モバイルデバイスは、比較的限定された処理、メモリ、およびエネルギーの資源を有する、資源を制限されたシステムである。近代的なモバイルデバイスはまた複雑なシステムであり、悪性であるかまたは場合によってはモバイルデバイスの性能劣化を引き起こすことがあるすべての様々なデータフロー、データ動作(読取り、書込み、データ符号化、データ送信など)、プロセス、構成要素、挙動、またはファクタ(またはそれらの組合せ)を評価することは、しばしば実行不可能である。これらおよび他の理由のために、問題の根源を正確かつ効率的に特定すること、および/または特定された問題に対して十分な改善措置を提供することは、ユーザ、オペレーティングシステム、および/またはアプリケーションプログラム(たとえば、アンチウイルスソフトウェアなど)にとってますます困難となっている。結果として、モバイルデバイスの性能および電力利用のレベルにおける経時的な劣化を防止するための改善措置を、モバイルデバイスユーザは、現在、ほとんど持っていない。
様々な態様が、モバイルデバイスの性能および/または電力利用のレベルをしばしば経時的に劣化させる条件および/またはモバイルデバイス挙動を効率的に特定し、分類し、モデリングし、防止し、および/または修正するためのネットワークサーバ、モバイルデバイス、システム、および方法を含む。
一態様では、観測器プロセス、デーモン、モジュール、またはモバイルデバイスのサブシステム(本明細書では「モジュール」と総称される)は、様々なレベルのモバイルデバイスシステムにおいて、様々なAPI、レジスタ、カウンタまたは他の構成要素(本明細書では総称して「機器を装着された構成要素(instrumented component)」)を装着するかまたは協調させることができる。観測器モジュールは、機器を装着された構成要素から挙動情報を収集することによってモバイルデバイス挙動を連続的に(または略連続的に)モニタすることができる。モバイルデバイスはまた分析器モジュールを含み、観測器モジュールは、収集された挙動情報をモバイルデバイスの分析器モジュールに、(たとえば、メモリ書込み動作、関数呼出しなどを介して)伝達することができる。分析器モジュールは、挙動情報を受信し使用して挙動ベクトルを生成し、挙動ベクトルに基づいて空間的および/または時間的相関関係を生成し、この情報を使用して、特定のモバイルデバイス挙動、サブシステム、ソフトウェアアプリケーション、またはプロセスが良性であるか、疑わしいか、悪性であるか、または性能を劣化させるかを判断する。
分析器モジュールは、モバイルデバイス挙動が良性であるかまたは良性でない(たとえば、悪性であるまたは性能を劣化させる)かを判断するために、収集された挙動情報に対してデータ、アルゴリズム、分類器、または挙動のモデル(本明細書では総称して「分類器モデル」)を実行すること(performing)、実施すること(executing)、および/または適用することを含み得る実時間挙動分析動作を実行するように構成され得る。各分類器モデルは、モバイルデバイス挙動の特定の態様を評価するためにモバイルデバイスプロセッサによって使用され得る情報を含む挙動モデルであり得る。分類器モデルは、モバイルデバイス上にプレインストールされるか、ダウンロードされるか、ネットワークサーバから受信されるか、モバイルデバイス内で生成されることがあり、またはそれらの任意の組合せであることがある。分類器モデルは、機械学習および他の同様の技法を使用することによって生成され得る。
各分類器モデルは、フル分類器モデルまたはリーン分類器モデルとしてカテゴリ化され得る。フル分類器モデルは、数千の特徴および数十億のエントリを含み得る大きい訓練データセットの関数として生成されるロバストなデータモデルであり得る。リーン分類器モデルは、特定のモバイルデバイス挙動が良性であるかまたは良性でない(たとえば、悪性であるかまたは性能を劣化させる)かを判断することに最も関連性のある特徴/エントリだけを含む縮小されたデータセットから生成される、より合焦されたデータモデルであり得る。
上述のように、モバイルデバイスの劣化の原因または根源を適切に特定するために分析を必要とする数千の特徴/ファクタおよび数十億のデータポイントが存在することがある。それゆえ、分析器モジュールによって使用される各分類器モデルは、モバイルデバイスが、特定のモバイルデバイス挙動が良性であるかまたは良性でない(たとえば、悪性であるかまたは性能を劣化させる)かに関して正確な決断を下すことができるように、非常に多数の特徴、ファクタ、およびデータポイントに対して訓練されなければならない。さらに、モバイルデバイスは資源を制約されたシステムであるので、分析器モジュールがすべてのこれらの特徴、ファクタ、およびデータポイントを評価することは、しばしば実行不可能である。それゆえ、分析器モジュールは、場合によってはモバイルデバイス挙動を分類するときに分析が必要なすべての特徴、ファクタ、およびデータポイントに対して、ターゲットとされるサブセットを評価することに合焦するリーン分類器モデルを適用することが重要である。
様々な態様は、モバイルデバイス挙動が良性であるか良性でない(たとえば、悪性であるまたは性能を劣化させる)かを判断することに最も関連性のある特徴、ファクタ、およびデータポイントを知的におよび効率的に特定するために互いに連携して働くように構成されたモバイルデバイスおよびネットワークサーバを含む。ネットワークサーバ内に増強決定株を含む分類器モデルを生成することおよびこれらの分類器/モデルをモバイルデバイスに送信することによって、モバイルデバイスがモバイルデバイス内でリーン分類器モデルを迅速におよび効率的に生成することを、様々な態様が可能にする。
様々な態様では、ネットワークサーバは、モバイルデバイス挙動を特性化している間に、クラウドサービス/ネットワークからモバイルデバイス挙動および状態、特徴、ならびに条件に関する大量の情報を受信するように構成され得る。この情報は、モバイルデバイス挙動ベクトルの非常に大きいクラウドコーパスの形態であり得る。ネットワークサーバは、挙動ベクトルの非常に大きいクラウドコーパスを正確に記述するフル分類器モデル(すなわち、ロバストなデータ/挙動モデル)を生成するためにこの情報を使用することができる。ネットワークサーバは、いくつかの異なるモバイルデバイスのうちのいずれかに対して経時的に劣化を引き起こすことがあるすべてのまたは大半の特徴、データポイント、および/またはファクタを含むようにフル分類器モデルを生成することができる。
一態様では、ネットワークサーバは、増強決定株または増強決定株のファミリーなど、有限状態機械表示または表現を含むようにフル分類器モデルを生成することができる。この有限状態機械表示または表現は、モバイルデバイスプロセッサにおいて選別アルゴリズムの適用を介してモバイルデバイス内での使用または実施に好適なリーン分類器モデルに、迅速におよび効率的に選別、修正または変換され得る。有限状態機械表示または表現は、試験条件、状態情報、状態遷移規則、および他の同様の情報を含む情報構造であり得る。一態様では、有限状態機械表示または表現は、条件、特徴、ファクタ、またはモバイルデバイスの挙動の態様をそれぞれ評価または試験する大きいまたはロバストな増強決定株のファミリーを含む情報構造であり得る。
モバイルデバイスは、ネットワークサーバからフル分類器モデルを受信し、受信されたフル分類器モデルを使用してモバイルデバイス内でローカルにリーン分類器モデル(すなわち、データ/挙動モデル)を生成するように構成され得る。モバイルデバイスは、受信されたフル分類器モデル内に含まれる増強決定株のセットを選別して、縮小もしくは限定された数の異なるモバイルデバイスの状態、特徴、挙動、または条件を特定、試験、評価しおよび/またはそれらに依存する増強決定株のサブセットにすることによってこれらのローカルなリーン分類器モデルを生成することができる。増強決定株のフルセットのこの選別は、増強決定株を選択することと、選択された決定株と同じモバイルデバイスの状態、特徴、挙動または条件に依存する(およびしたがって、1つの判断結果に基づいて適用され得る)すべての他の増強決定株を特定することと、同じモバイルデバイスの状態、特徴、挙動または条件に依存する選択されたおよびすべての特定された他の増強決定株をリーン分類器モデル内に含むことと、リーン分類器モデル内に未だ含まれていない縮小された/限られた数の選択された増強決定株に対してプロセスを反復することとによって達成され得る。試験される異なる数のモバイルデバイスの状態、特徴、挙動、または条件を使用してプロセスを反復することによって、評価される状態、特徴、挙動、または条件の数によって決定される、変化するリーン性の程度を有するリーン分類器モデルのファミリーが生成され得る。加えて、これらのリーン分類器モデルの各々は、別のリーン分類器モデルと同じ特徴または条件の一部または全部を、評価される試験結果、特徴、または条件の重要性に対して割り当てられた異なるしきい値および/または異なる重みを使用して試験または評価することができる。したがって、リーン分類器モデルを生成または再生するプロセスは、決定株と関連付けられたしきい値および/または重みを再計算するステップを含むことができる。
これらのリーン分類器モデルは、(フル分類器モデルと比較して)試験されなければならない状態、特徴、挙動、または条件の縮小されたサブセットを含むので、観測器モジュールおよび/または分析器モジュールは、モバイルデバイスの処理、メモリ、またはエネルギーの資源の量を過剰に消費することなく、モバイルデバイス挙動が良性であるかまたはモバイルデバイスの性能の劣化を引き起こしているかどうかを迅速におよび正確に判断するためにそれらを使用することができる。上述のように、モデルが良性または悪性のいずれかであるとしてカテゴリ化できない(およびそれゆえモデルによって疑わしいとしてカテゴリ化される)挙動に遭遇するまで、リーン分類器モデルのファミリーのうちの最もリーンなモデル(すなわち、最小数の試験条件に基づくリーン分類器モデル)が規定通りに適用され得、その時点において、よりロバストな(すなわち、それほどリーンでない)リーン分類器モデルが、良性または悪性のいずれかであるとして挙動をカテゴリ化する試みにおいて適用され得る。挙動の断定的な分類が達成されるまで、生成されたリーン分類器モデルのファミリー内のより一層ロバストなリーン分類器モデルのアプリケーションが適用され得る。このようにして、観測器モジュールおよび/または分析器モジュールは、最も完全なものの使用を制限するが、挙動を断定的に分類するためにロバストな分類器モデルが必要とされる状況に対する資源集約的リーン分類器モデルによって、効率性と正確さとの間のバランスをとることができる。
様々な態様では、モバイルデバイスは、有限状態機械表現/表示を増強決定株に変換すること、フル分類器モデル内に含まれる増強決定株のフルセットを選別して、限られた数の異なるモバイルデバイスの状態、特徴、挙動、または条件に依存する増強決定株の1つまたは複数のサブセットにすること、および増強決定株の1つまたは複数のサブセットを使用してモバイルデバイス挙動を知的にモニタ、分析、および/または分類することによって、1つまたは複数のリーン分類器モデルを生成するように構成され得る。増強決定株を使用することで、観測器モジュールおよび/または分析器モジュールが、データを再訓練するためにクラウドまたはネットワークと通信することなくリーンデータモデルを生成および適用することが可能になり、そのことで、モバイルデバイスのネットワークサーバおよびクラウドへの依存が著しく低減される。これは、モバイルデバイスとネットワークサーバとの間のフィードバック通信を省略し、さらに、モバイルデバイスの性能および電力消費特性を改善する。
増強決定株は、厳密に1つのノード(したがって1つの試験質問(test question)または試験条件)と重み値とを有し、したがってデータ/挙動の二項分類における使用に十分に好適な、1レベル決定木である。すなわち、挙動ベクトルを増強決定株に適用することで、2値の答え(たとえば、はいまたはいいえ)がもたらされる。たとえば、増強決定株によって試験される質問/条件が「ショートメッセージサービス(SMS)送信の周波数が毎分x未満であるか」である場合、「3」の値を増強決定株に適用することで、(「3未満」のSMS送信に対して)「はい」の答えまたは(「3以上」のSMS送信に対して)「いいえ」の答えのいずれかがもたらされる。
増強決定株は、それらが非常に単純で原初的である(したがって処理資源をあまり必要としない)ので、効率的である。増強決定株はまた、高度に並列化可能であり、したがって多くの株が並列に/同時に(たとえば、モバイルデバイス内の複数のコアまたはプロセッサによって)適用または試験され得る。
以下で説明するように、ネットワークサーバ(または別のコンピューティングデバイス)は、増強決定木モデルなど、モバイルデバイス挙動の別のより複雑なモデルから増強決定株タイプのフル分類器モデルを生成することができる。そのような複雑なモデルは、精緻な分類システムにおけるモバイルデバイス挙動を特徴付けるデバイスの状態、動作、およびモニタされるノードの間の相互作用のフルセット(または略フルセット)を相関させることができる。上述のように、サーバまたは他のコンピューティングデバイスは、多数のモバイルデバイスから収集されたモバイルデバイスの挙動ベクトルのクラウドコーパスを記述するモデルを生成するために、機械学習技法を適用することによって複雑なフル分類器モデルを生成することができる。一例として、増強決定木分類器モデルは、現在のモバイルデバイス挙動が悪性であるかまたは良性であるかの判断に到達するために、試験可能条件の決定ノードを通る数百の経路をトレースすることがある。そのような複雑なモデルは、いくつかの知られている学習および相関のモデリング技法を使用してサーバ内で生成され得る。そのような複雑なモデルは、数百のモバイルデバイスからのデータから学習することによって悪性の挙動を正確に認識するのに十分に有効となり得るが、特定のモバイルデバイスの構成および挙動に対するそれらの適用は、特にモデルが複雑でマルチレベルの決定木を伴う場合に著しい処理を必要とすることがある。モバイルデバイスは、一般的に資源が限られているので、そのようなモデルを使用することは、デバイス性能およびバッテリー寿命に強い影響を与えることがある。
モバイルデバイスによる使用をより助長するロバストな分類器モデルを提供するために、サーバ(たとえば、クラウドサーバまたはネットワークサーバ)または別のコンピューティングデバイス(たとえば、モバイルデバイスまたはモバイルデバイスに結合するコンピュータ)は、複雑な分類器モデルを大きい増強決定株モデルに変換することができる。決定株に関わるより単純な判断およびそのような分類器モデルを並列処理で適用する能力によって、モバイルデバイスが、ネットワークサーバによって実行される分析からより恩恵を受けることが可能になる。同じく、以下で説明するように、増強決定株のフル分類器モデルが、以下で説明する態様方法を使用してリーン分類器モデルを生成するためにモバイルデバイスによって使用され得る。
一態様では、増強決定株のフル分類器モデルを生成するサーバまたは他のコンピューティングデバイスは、以下でより詳細に説明する態様プロセスに従うことによって、そのように実施することができる。要約すると、サーバまたは他のコンピューティングデバイスは、複雑なフル分類器モデル(たとえば、増強決定木モデル)内でノードを選択し、ノードが悪性の挙動を予測する機会のパーセンテージ(percentage of the time)を決定するためにモデルを適用することができる。言い換えれば、サーバまたは他のコンピューティングデバイスは、ノードの1つの分岐を選択し、その分岐に接続されるすべての後続のノードおよび経路を追従して、分岐が悪性の挙動の判断に導く機会の割合を決定することができる。一態様では、機会のこの割合は、ノードに対する「重み」ファクタを計算するために使用され得る。たとえば、後続の経路が機会の80%で悪性の挙動の結論をもたらす1つの分岐を有する決定ノードが、0.8の重みファクタと関連付けられてよく、この単一の決定ノードが潜在的に悪性の(したがって疑わしい)挙動の高信頼のインジケータであることを示している。別の例として、その分岐が等しく悪性の挙動の結論につながり得る複雑な分類器モデル内の決定ノードは、悪性の挙動を認識することにおいて支援をほとんど提供せず、したがって非常に低い重みファクタまたは優先度を与えられてよい。
各決定ノードからの結果を追跡するプロセスにおいて、サーバまたは他のコンピューティングデバイスは、決定ノードが2値(すなわち、「はい」または「いいえ」)でない場合、多様な試験条件を各ノードに適用することができる。たとえば、複雑な分類器モデルは、値(たとえば、1分当たりに送信されるSMSメッセージの数)の範囲を調整することができ、最終結論は値に依存する。しかしながら、値の範囲は、決定株の2値の性質と矛盾する。したがって、サーバまたは他のコンピューティングデバイスは、値によって特徴付けられた条件を助長するそのようなノードに対して、2値の決定または試験の範囲を拡張することができる。たとえば、サーバまたは他のコンピューティングデバイスは、「1超」、「10超」および「100超」など、いくつかのしきい値の試験または条件を、複雑な分類器モデルを介して生成し試験することができる。そのようなしきい値試験は、複雑なモデルを研究することによってサーバが到達できる結論に基づいてサーバによって特定または選択され得る。次に、そのようなしきい値ベースの試験の各々は、その予測値およびしたがってそのブースティングファクタを決定するために試験され得る単一の決定株として扱われ得る。
複雑な分類器モデル内のすべての決定ノードを通ってこのプロセスを追従することによって、サーバまたは他のコンピューティングデバイスは、複雑な多層決定モデルを多数の増強決定株の単層モデルに変換することができる。次に、サーバまたは他のコンピューティングデバイスは、非常に小さい予測または分類の恩恵しか提供しない試験条件(たとえば、「電源はオンか」)を除去するために、その値がしきい値より低い決定株を除去することによってモデルをトリミングすることができる。
結果として得られたそのような株の数は、フル分類器モデル内で大きいことがあるが、株の2値の性質は、とりわけ資源を制約されているプロセッサにおいて、それらの適用を容易にすることができる。一態様では、サーバまたは他のコンピューティングデバイスは、増強決定株のフル分類器モデルを、それらの使用のためにモバイルデバイスに提供することができる。
増強決定株の大きい分類器モデルを生成するプロセスは、多くのモバイルデバイスからの入力を分析し、複雑な挙動のフル分類器モデルを生成するクラウドサーバによって生成され得る。というのは、そのようなサーバは、分析を完了するための処理資源および処理時間を有することになるからである。しかしながら、上述のように、態様方法はまた、モバイルデバイスさえも含む別のコンピューティングデバイスによっても実行され得る。この態様では、サーバ(たとえば、クラウドまたはネットワークサーバ)は、複雑な挙動のフル分類器モデルを他のコンピューティングデバイスに配信し、他のコンピューティングデバイスは、次に、上記で概説し以下でより詳細に述べるようにそのモデルを処理し、それを増強決定株モデルに変換することができる。たとえば、ユーザが自分のモバイルデバイスに結合するパーソナルコンピュータは、複雑な挙動のフル分類器モデルをダウンロードし、次に態様方法を実行して、パーソナルコンピュータがモバイルデバイスに対して(たとえば、ワイヤードまたはワイヤレスのデータリンクを介して)利用可能にする大きい増強決定株モデルを生成することができる。別の例として、モバイルデバイスは、複雑な挙動のフル分類器モデルをダウンロードし、次に、デバイスが充電されていて使用されていない深夜の時間帯の間などに態様方法を実行して、デバイスがメモリ内に記憶する大きい増強決定株モデルを生成することができる。サーバまたは別のコンピューティングデバイスによって実施されるプロセスは非常に似ているので、態様方法は、サーバによって実行されるときに以下でより詳細に説明される。しかしながら、その説明は例示を目的とし、態様方法をサーバ上で実行されるものと限定することは、特許請求の範囲において明確にそのように記載されている場合を除いて、意図されていない。
さらなる態様では、モバイルデバイスは、訓練データにアクセスすることなく、およびモバイルデバイスの処理、メモリ、またはエネルギーの資源の量を過剰に消費することなく、決定株内で試験される限られた数のファクタを選択することによってリーン分類器モデルを構築するために受信されたまたは自己生成された増強決定株の大きい分類器モデルを使用するように構成され得る。分析器モジュールは、マルウェアを特定し、デバイス挙動を悪性または良性であるとして分類するために選択された増強決定株のリーン分類器モデルを使用することができる。以下でより十分に説明するように、モバイルデバイスは、試験されることになるモニタする特徴の数(たとえば、15)を決定することと、第1の特徴を選択し、その特徴の試験を含む増強決定株のすべて(たとえば、モニタされた特徴から取得された値に基づくしきい値試験を有するすべての株)をリーン分類器に組み込むことと、リーン分類器モデル内で取り組まれる特徴の数が決定された数になるまでこのプロセスを反復することとによって、リーン分類器モデルを生成することができる。そのようなリーン分類器モデル内の増強決定株の数は、特徴の数より相当に大きくなることがあることは注目に値する。
一態様では、モバイルデバイスは、複数の増強決定株への変換に好適な有限状態機械を含むフル分類器モデルを受信するように構成され得る。モバイルデバイスは、フル分類器モデルに基づいてリーン分類器モデルを生成し得、そのことは、フル分類器モデルの有限状態機械を増強決定株に変換し、これらの増強決定株をリーン分類器モデルとして使用することによって達成され得る。
様々な態様は、図1に示す例示的な通信システム100などの様々な通信システム内で実装され得る。典型的なセル電話ネットワーク104は、ネットワーク運用センタ108に結合された複数のセル基地局106を含み、ネットワーク運用センタ108は、たとえば電話陸上通信線(たとえば、図示していないPOTSネットワーク)およびインターネット110を介して、モバイルデバイス102(たとえば、セルフォン、ラップトップ、タブレットなど)と他のネットワーク宛先との間のボイス呼およびデータを接続するように動作する。モバイルデバイス102と電話ネットワーク104との間の通信は、4G、3G、CDMA、TDMA、LTEおよび/または他のセル電話通信技術などの双方向ワイヤレス通信リンク112を介して遂行され得る。電話ネットワーク104は、インターネット110への接続を提供するネットワーク運用センタ108に結合されるかまたはネットワーク運用センタ108内の、1つまたは複数のサーバ114も含み得る。
通信システム100は、電話ネットワーク104およびインターネット110に接続されたネットワークサーバ116をさらに含み得る。ネットワークサーバ116と電話ネットワーク104との間の接続は、インターネット110を介するかまたは(破線の矢印で示すように)私的ネットワークを介することができる。ネットワークサーバ116はまた、クラウドサービスプロバイダネットワーク118のネットワークインフラストラクチャ内のサーバとして実装され得る。ネットワークサーバ116とモバイルデバイス102との間の通信は、電話ネットワーク104、インターネット110、私的ネットワーク(図示せず)、またはそれらの任意の組合せを介して達成され得る。
ネットワークサーバ116は、モバイルデバイス102にリーンなデータ/挙動モデルを送り、モバイルデバイス102は、疑わしいまたは性能劣化させるモバイルデバイス挙動、ソフトウェアアプリケーション、プロセスなどを特定するためにリーンなデータ/挙動モデルを受信して使用することができる。ネットワークサーバ116はまた、モバイルデバイスのデータ/挙動モデルを交換、更新、生成および/または維持するために、分類情報とモデリング情報とをモバイルデバイス102に送ることができる。
モバイルデバイス102は、挙動、状態、分類、モデリング、成功率および/または統計的情報をモバイルデバイス102内に収集し、収集された情報を分析のために(たとえば、電話ネットワーク104を介して)ネットワークサーバ116に送ることができる。ネットワークサーバ116は、モバイルデバイス102から受信された情報を使用してリーンなデータ/挙動モデルを更新もしくは精細化すること、または分類/モデリング情報を使用してさらに標的化および/または低減される特徴のサブセットを含むことができる。
一態様では、モバイルデバイス102は、収集された挙動の状態、分類、モデリング、成功率、および/または統計情報を使用して、モバイルデバイス102内にさらなる、ターゲットとされおよび/または縮小された特徴のサブセットを含むリーン分類器モデル(またはデータ/挙動モデル)を生成、更新または精細化するように構成され得る。これは、モバイルデバイスとネットワークサーバ116との間のフィードバック通信の量を低減し、モバイルデバイス102の性能および電力消費特性を改善する。
図2は、特定のモバイルデバイス挙動、ソフトウェアアプリケーション、またはプロセスが、悪性である/性能劣化させるか、疑わしいか、または良性であるかを判断するように構成された一態様のモバイルデバイス102における例示的な論理構成要素と情報フローとを示す。図2に示す例では、モバイルデバイス102は、挙動観測器モジュール202と、挙動分析器モジュール204と、外部コンテキスト情報モジュール206と、分類器モジュール208と、アクチュエータモジュール210とを含む。一態様では、分類器モジュール208は、挙動分析器モジュール204の一部として実装され得る。一態様では、挙動分析器モジュール204は、1つまたは複数の分類器モジュール208を生成するように構成され得、1つまたは複数の分類器モジュール208の各々は、1つまたは複数の分類器を含み得る。
モジュール202〜210の各々は、ソフトウェア、ハードウェアまたはそれらの任意の組合せで実装され得る。様々な態様では、モジュール202〜210は、オペレーティングシステムの一部の中(たとえば、カーネル内、カーネル空間内、ユーザ空間内など)、個別のプログラムもしくはアプリケーション内、専用のハードウェアバッファもしくはプロセッサ内、またはそれらの任意の組合せに実装され得る。一態様では、モジュール202〜210のうちの1つまたは複数は、モバイルデバイス102の1つまたは複数のプロセッサ上で遂行されるソフトウェア命令として実装され得る。
挙動観測器モジュール202は、アプリケーションプログラミングインターフェース(API)をモバイルデバイスの様々なレベル/モジュールにおいて取り付けるかまたは連携させるように構成され、取り付けられたAPIを介して様々なレベル/モジュールにおいてモバイルデバイスの動作および事象(たとえば、システム事象、状態変化など)をモニタ/観測し、観測された動作/事象に関する情報を収集し、収集された情報を知的にフィルタ処理し、フィルタ処理された情報に基づいて1つまたは複数の観測値を生成し、ならびに生成された観測値をメモリ内(たとえば、ログファイルなどの中)に記憶しおよび/または生成された観測値を挙動分析器モジュール204に(たとえば、メモリ書込み、関数呼出しなどを介して)送ることができる。
挙動観測器モジュール202は、アプリケーションフレームワークまたはランタイムライブラリ、システムコールAPI、ファイルシステムおよびネットワーキングサブシステム動作、デバイス(センサーデバイスを含む)状態変化、ならびに他の同様の事象内のライブラリアプリケーションプログラミングインターフェース(API)呼出しに関する情報を収集することによって、モバイルデバイスの動作および事象をモニタ/観測することができる。挙動観測器モジュール202はまた、ファイルシステム活動をモニタでき、ファイルシステム活動には、ファイル名、ファイルアクセスのカテゴリ(パーソナル情報またはノーマルデータファイル)を探索すること、ファイル(たとえば、type exe、zipなど)を生成または削除すること、ファイル読出し/書込み/シーク動作、ファイルパーミッションを変更することなどが含まれる。
挙動観測器モジュール202はまた、データネットワーク活動をモニタでき、データネットワーク活動には、接続のタイプ、プロトコル、ポート数、デバイスが接続されるサーバ/クライアント、接続数、通信の容量または周波数などが含まれる。挙動観測器モジュール202は、電話ネットワーク活動をモニタでき、電話ネットワーク活動には、送り出された、受信された、またはインターセプトされた呼またはメッセージ(たとえば、SMSなど)のタイプおよび数(たとえば、かけられた報奨金の呼の数)をモニタすることを含み得る。
挙動観測器モジュール202はまた、フォークの数、メモリアクセス動作、開いたファイルの数などをモニタすることを含み得る、システムリソース使用をモニタできる。挙動観測器モジュール202は、ディスプレイはオンかまたはオフか、デバイスはロックされているかまたはロックされていないか、バッテリーの残量、カメラの状態など、様々なファクタをモニタすることを含み得る、モバイルデバイスの状態をモニタできる。挙動観測器モジュール202はまた、たとえば、重要なサービス(ブラウザ、コントラクトプロバイダなど)への意図、プロセス間通信(IPC)の程度、ポップアップウィンドウなどをモニタすることによってプロセス間通信をモニタできる。
挙動観測器モジュール202はまた、カメラ、センサー、電子ディスプレイ、WiFi通信構成要素、データコントローラ、メモリコントローラ、システムコントローラ、アクセスポート、タイマー、周辺デバイス、ワイヤレス通信構成要素、外部メモリチップ、電圧レギュレータ、発振器、フェーズロックループ、周辺ブリッジ、およびモバイルコンピューティングデバイス上で動作するプロセッサおよびクライアントをサポートするために使用される他の同様の構成要素を含み得る、1つまたは複数のハードウェア構成要素のドライバ統計および/またはステータスをモニタ/観測できる。
挙動観測器モジュール202はまた、モバイルコンピューティングデバイスおよび/またはモバイルデバイスサブシステムの状態またはステータスを示す1つまたは複数のハードウェアカウンタをモニタ/観測できる。ハードウェアカウンタは、モバイルコンピューティングデバイス内で発生するハードウェア関連の活動または事象のカウントまたは状態を記憶するように構成されたプロセッサ/コアの専用レジスタを含み得る。
挙動観測器モジュール202はまた、ソフトウェアアプリケーションの活動または動作、アプリケーションダウンロードサーバ(たとえば、Apple(登録商標)App Store server)からのソフトウェアダウンロード、ソフトウェアアプリケーションによって使用されるモバイルデバイス情報、呼情報、テキストメッセージ情報(たとえば、SendSMS、BlockSMS、ReadSMSなど)、メディアメッセージ情報(たとえば、ReceiveMMS)、ユーザアカウント情報、ロケーション情報、カメラ情報、加速度計情報、ブラウザ情報、ブラウザベース通信のコンテンツ、音声ベース通信のコンテンツ、短距離無線通信(たとえば、Bluetooth(登録商標)、WiFiなど)、テキストベース通信のコンテンツ、記録されたオーディオファイルのコンテンツ、電話帳または連絡先情報、連絡先リストなどをモニタ/観測できる。
挙動観測器モジュール202は、ボイスメールを含む通信(VoiceMailComm)を含むモバイルデバイスの送信または通信、デバイス識別子(DeviceIDComm)、ユーザアカウント情報(UserAccountComm)、カレンダー情報(CalendarComm)、ロケーション情報(LocationComm)、記録されたオーディオ情報(RecordAudioComm)、加速度計情報(AccelerometerComm)などをモニタ/観測できる。
挙動観測器モジュール202は、コンパス情報、モバイルデバイス設定、バッテリー寿命、ジャイロスコープ情報、圧力センサー、磁気センサー、スクリーン活動などの使用をモニタ/観測し、それらを更新/変更することができる。挙動観測器モジュール202は、ソフトウェアアプリケーション(AppNotifications)、アプリケーション更新などへおよびそれらから通信される通知をモニタ/観測できる。挙動観測器モジュール202は、第2のソフトウェアアプリケーションのダウンロードおよび/またはインストールを要求している第1のソフトウェアアプリケーションに関する条件または事象をモニタ/観測できる。挙動観測器モジュール202は、パスワードのエントリなど、ユーザ照合に関する条件または事象をモニタ/観測できる。
挙動観測器モジュール202はまた、アプリケーションレベル、無線レベルおよびセンサーレベルを含む、モバイルデバイスの複数のレベルにおける条件または事象をモニタ/観測できる。アプリケーションレベルの観測は、顔認識ソフトウェアを介してユーザを観測すること、ソーシャルストリームを観測すること、ユーザによって入力された注釈を観測すること、PassBook/Google Wallet/Paypalの使用に関する事象を観測することなどを含み得る。アプリケーションレベルの観測はまた、バーチャルプライベートネットワーク(VPN)の使用に関する事象、および同期、音声探索、音声制御(たとえば、1語を発することによる電話のロック/アンロック)、言語翻訳機、計算に対するデータのオフロード、ビデオストリーミング、ユーザ活動のないカメラの使用、ユーザ活動のないマイクロフォンの使用などに関する事象を観測することを含み得る。
無線レベルの観測は、無線通信リンクを設立するかまたは情報を送信する前のモバイルデバイスとのユーザの対話、二重/多重加入者識別モジュール(SIM)カード、インターネット無線、携帯電話テザリング、計算に対するデータのオフロード、デバイス状態通信、ゲームコントローラまたはホームコントローラとしての使用、車両通信、モバイルデバイス同期などのうちのいずれかまたは複数の存在、実在、または量を判断するステップを含むことができる。無線レベルの観測はまた、位置決め、ピアツーピア(p2p)通信、同期、車両対車両通信、および/または機械対機械(m2m)通信のための無線(WiFi、WiMax、Bluetooth(登録商標)など)の使用をモニタするステップを含み得る。無線レベルの観測は、ネットワークトラフィックの使用、統計、またはプロファイルをモニタするステップをさらに含み得る。
センサーレベルの観測は、モバイルデバイスの使用環境および/または外部環境を判断するために磁気センサーまたは他のセンサーをモニタするステップを含み得る。たとえば、モバイルデバイスプロセッサは、電話が(たとえば、ホルスター内の磁石を検知するように構成された磁気センサーを介して)ホルスター内にあるかまたは(たとえば、カメラまたは光センサーによって検出される光の量を介して)ユーザのポケット内にあるかを判断するように構成され得る。たとえば、モバイルデバイスがホルスターに入れられている間に発生する、ユーザによるアクティブな使用(たとえば、写真またはビデオを撮ること、メッセージを送ること、音声呼を行うこと、音を録音することなど)に関する活動および機能は、(たとえば、ユーザを追跡またはスパイするために)デバイス上で遂行している不正なプロセスのサインであり得るので、モバイルデバイスがホルスター内にあることを検出することは、疑わしい挙動を認識することに関連し得る。
使用環境または外部環境に関するセンサーレベルの観測の他の例には、近距離場通信(NFC)を検出すること、クレジットカードスキャナ、バーコードスキャナ、またはモバイルタグリーダから情報を収集すること、ユニバーサルシリアルバス(USB)電力充電源の存在を検出すること、キーボードまたは補助デバイスがモバイルデバイスに結合されていることを検出すること、モバイルデバイスが(たとえば、USBなどを介して)コンピューティングデバイスに結合されていることを検出すること、LED、フラッシュ、フラッシュライト、または光源が修正または(たとえば、緊急シグナリングアップなどを悪意を持ってディセーブルして)ディセーブルされているかどうかを判断すること、スピーカまたはマイクロフォンがスイッチオンまたは電源オンにされていることを検出すること、充電事象または電力事象を検出すること、モバイルデバイスがゲームコントローラとして使用されていることを検出することなどを含み得る。センサーレベルの観測はまた、医療もしくはヘルスケアのセンサーからまたはユーザの体をスキャンすることから情報を収集すること、USB/オーディオジャックに差し込まれた外部センサーから情報を収集すること、(たとえば、振動インターフェースなどを介して)触知センサーまたは触覚センサーから情報を収集すること、モバイルデバイスの熱状態に関する情報を収集することなどを含み得る。
一態様では、モニタされるファクタの数を管理可能レベルまで低減するために、挙動観測器モジュール202は、モバイルデバイスの劣化に寄与する可能性があるすべてのファクタの小さいサブセットである初期の挙動またはファクタのセットをモニタ/観測することによって粗い観測を実行できる。一態様では、挙動観測器モジュール202は、ネットワークサーバ116および/またはクラウドサービスもしくはネットワーク118内の構成要素から挙動および/またはファクタの初期のセットを受信できる。一態様では、挙動/ファクタの初期のセットは、ネットワークサーバ116またはクラウドサービス/ネットワーク118から受信されたデータ/挙動モデル内で規定され得る。一態様では、挙動/ファクタの初期のセットは、低減された特徴モデル(RFM)内で規定され得る。
挙動分析器モジュール204および/または分類器モジュール208は、挙動観測器モジュール202から観測値を受信し、受信された情報(すなわち、観測値)を外部コンテキスト情報モジュール206から受信されたコンテキスト情報と比較し、デバイスの劣化に経時的に寄与する(または寄与しそうである)かまたは場合によってはデバイスに問題を引き起こす可能性がある、受信された観測値に関連するサブシステム、プロセス、および/またはアプリケーションを特定することができる。
一態様では、挙動分析器モジュール204および/または分類器モジュール208は、デバイスの劣化に経時的に寄与するまたは寄与しそうであるかまたは場合によってはデバイスに問題を引き起こす可能性がある、挙動、プロセス、またはプログラムを特定するために、情報の限定されたセット(すなわち、粗い観測値)を利用するための知性を含み得る。たとえば、挙動分析器モジュール204は、様々なモジュール(たとえば、挙動観測器モジュール202、外部コンテキスト情報モジュール206など)から収集された(たとえば、観測値の形の)情報を分析し、モバイルデバイスの正常動作挙動を学習し、比較結果に基づいて1つまたは複数の挙動ベクトルを生成するように構成され得る。挙動分析器モジュール204は、生成された挙動ベクトルをさらなる分析のために分類器モジュール208に送ることができる。
分類器モジュール208は、挙動ベクトルを受信し、それらを1つまたは複数の挙動モジュールと比較して、特定のモバイルデバイス挙動、ソフトウェアアプリケーション、またはプロセスが性能劣化させる/悪性であるか、良性であるか、または疑わしいかを判断する。
挙動、ソフトウェアアプリケーション、またはプロセスが悪性であるまたは性能劣化させると分類器モジュール208が判断するとき、分類器モジュール208はアクチュエータモジュール210に通知し、アクチュエータモジュール210は、悪性であるまたは性能劣化させると判断されるモバイルデバイス挙動を修正するために様々な活動または動作を実行し、および/または特定された問題を直す、矯正する、隔離する、または場合によっては解決するための動作を実行することができる。
分類器モジュール208が、挙動、ソフトウェアアプリケーション、またはプロセスが疑わしいと判断するとき、分類器モジュール208は挙動観測器モジュール202に通知し、挙動観測器モジュール202は、それの観測の細分性(すなわち、モバイルデバイス挙動が観測される詳細さのレベル)の調節および/または分類器モジュール208から受信された情報(たとえば、実時間分析動作の結果)に基づいて観測される挙動の変更を行い、新しいまたは追加の挙動情報を生成または収集し、かつさらなる分析/分類のために新しい/追加の情報を挙動分析器モジュール204および/または分類器モジュール208に送ることができる。挙動観測器モジュール202と分類器モジュール208との間のそのようなフィードバック通信は、疑わしいもしくは性能劣化させるモバイルデバイス挙動の原因が特定されるまで、処理またはバッテリーの消費のしきい値に到達するまで、または観測細分性をさらに増加させても疑わしいまたは性能劣化させるモバイルデバイス挙動の原因が特定され得ないとモバイルデバイスプロセッサが判断するまで、モバイルデバイス102が繰り返し、観測の細分性を増加させる(すなわち、より微細にまたはより詳細に観測する)ことまたは観測される特徴/挙動を変更することを可能にする。そのようなフィードバック通信はまた、モバイルデバイス102が、モバイルデバイスの処理、メモリ、またはエネルギーのリソースの量を過剰に消費することなく、データ/挙動モデルをモバイルデバイス内でローカルに調節または修正することを可能にする。
一態様では、挙動観測器モジュール202および挙動分析器モジュール204は、限定された粗い観測値から疑わしい挙動を特定するため、より詳細に観測するために挙動を動的に判断するため、および観測のために必要な詳細さのレベルを動的に判断するために、コンピューティングシステムの挙動の実時間挙動分析を個別にまたは集合的に提供できる。この方式では、挙動観測器モジュール202は、デバイス上にプロセッサ、メモリまたはバッテリーのリソースを多量に必要とすることなく、モバイルデバイス102が問題を効率的に特定し、モバイルデバイス上で問題が発生するのを防止することを可能にする。
図3および図4は、モバイルデバイス102の処理、メモリ、またはエネルギーのリソースの量を過剰に消費することなく、アクティブに悪性であるもしくは不完全に記述されたソフトウェアアプリケーションおよび/または疑わしいもしくは性能劣化させるモバイルデバイス挙動を、モバイルデバイス102上で知的かつ効率的に特定するために、クラウドサービス/ネットワーク118と連動して働くように構成されたネットワークサーバ116を含む、一態様のシステム300における例示的な構成要素および情報フローを示す。図3に示す例では、ネットワークサーバ116はクラウドモジュール302と、モデル発生器モジュール304と、訓練データモジュール306とを含む。モバイルデバイス102は挙動観測器モジュール202と、分類器モジュール208と、アクチュエータモジュール210とを含む。一態様では、分類器モジュール208は、挙動分析器モジュール204(図2に示す)の中にまたは一部として含まれ得る。一態様では、モデル発生器モジュール304は、実時間オンライン分類器であり得る。
クラウドモジュール302は、クラウドサービス/ネットワーク118から大量の情報を受信し、モバイルデバイスの劣化に経時的に寄与する可能性がある特徴、データポイント、および/またはファクタのすべてまたは大半を含む、完全またはロバストなデータ/挙動モデルを生成するように構成され得る。
モデル発生器モジュール304は、クラウドモジュール302内で生成された完全なモデルに基づいてリーンなデータ/挙動モデルを生成するように構成され得る。一態様では、リーンなデータ/挙動モデルを生成するステップは、クラウドモジュール302によって生成された完全なモデル内に含まれる特徴およびデータポイントのサブセットを含む1つまたは複数の低減された特徴モデル(RFM)を生成するステップを含み得る。一態様では、モデル発生器304は、特定のモバイルデバイス挙動が良性であるかまたは悪性である/性能劣化させるかを分類器モジュール208が最終的に判断することを可能にする最高の確率を有するように決定された情報を含む初期の特徴セット(たとえば、初期の低減された特徴モデル)を含むリーンなデータ/挙動モデルを生成できる。モデル発生器304は、生成されたリーンモデルを挙動観測器モジュール202に送ることができる。
挙動観測器モジュール202は、受信されたモデルに基づいてモバイルデバイス挙動をモニタ/観測し、観測値を生成し、観測値を分類器モジュール208に送ることができる。分類器モジュール208は、モバイルデバイス挙動が良性であるか、疑わしいか、または悪性である/性能劣化させるかを判断するために、挙動観測器モジュール202によって収集された挙動情報にデータ/挙動モデルを適用するステップを含み得る実時間分析動作を実行できる。挙動が良性であるかまたは悪性であるかのいずれであるかを分類するまたは最終的に判断するのに十分な情報を分類器モジュール208が持たないとき、分類器モジュール208は、モバイルデバイス挙動は疑わしいと判断できる。
デバイス挙動が疑わしいと分類器モジュール208が判断するとき、分類器モジュール208は、それの実時間分析動作の結果を挙動観測器モジュール202に伝達するように構成され得る。挙動観測器モジュール202は、それの観測の細分性(すなわち、モバイルデバイス挙動が観測される詳細さのレベル)の調節および/または分類器モジュール208から受信された情報に基づいて(たとえば、実時間分析動作の結果に基づいて)観測される挙動の変更を行い、新しいまたは追加の挙動情報を生成または収集し、かつ(たとえば、新しいモデルの形態における)さらなる分析/分類のために新しい/追加の情報を分類器モジュールに送ることができる。この方式では、疑わしいもしくは性能劣化させるモバイルデバイス挙動の原因が特定されるまで、処理またはバッテリー消費のしきい値に到達するまで、または観測細分性をさらに増加させても疑わしいまたは性能劣化させるモバイルデバイス挙動の原因が特定され得ないとモバイルデバイスプロセッサが判断するまで、モバイルデバイス102が繰り返し、観測の細分性を増加させる(すなわち、より微細にまたはより詳細に観測する)ことまたは観測される特徴/挙動を変更することを行うことができる。
モバイルデバイス102は、それの動作の結果、および/またはモデルのアプリケーションに関連する成功率をネットワークサーバ116に送ることができる。ネットワークサーバ116は、モデル発生器304による使用に対する結果/成功率に基づいて訓練データを(たとえば、訓練データモジュール306を介して)生成できる。モデル発生器は、訓練データに基づいて更新されたモデルを生成し、更新されたモデルをモバイルデバイス102に送ることができる。
図4に示す例では、モバイルデバイス102とネットワークサーバ116との間にフィードバック通信は存在しない。むしろ、モバイルデバイス102は、フルモデル発生器404内で生成され、ネットワークサーバ116から受信されたフルモデルまたはよりロバストなモデルに基づいて合焦された/ターゲットとされる挙動モデルまたは分類器を生成するように構成されたリーンモデル発生器モジュール402を含む。すなわち、ネットワークサーバ116は、フル分類器モデルをモバイルデバイス102に送信するように構成され、モバイルデバイス102は、フル分類器モデルに基づいてリーン分類器モデルを生成するように構成され得る。これは、分類器モデル内の増強決定株の使用(または含有)によってモバイルデバイスの処理またはバッテリーの資源の量を過剰に消費することなく達成され得る。すなわち、ネットワークサーバ116内に増強決定株を含む分類器モデルを生成し、これらの分類器/モデルをモバイルデバイス102に送信することによって、リーンモデル発生器モジュール402が、訓練データにアクセスすることなくまたはネットワークサーバ116もしくはクラウドネットワーク/サーバ118とさらに通信することなく、フル分類器モデル内に含まれる増強決定株の数を選別することによってモバイルデバイス102内にリーンな(またはより合焦された)分類器モデルをより迅速におよび効率的に生成することを、様々な態様が可能にする。これは、モバイルデバイスのネットワーク通信への依存を著しく低減し、さらに、モバイルデバイス102の性能および電力消費特性を改善する。
図5Aは、モバイルデバイス内のリーンなまたは合焦された分類器/挙動モデル(たとえば、モデル発生器モジュール402内で生成されたモデルなど)を生成する態様方法500を示す。方法500は、モバイルデバイス内の処理コアによって実行され得る。
方法500のブロック502において、処理コアは、有限状態機械、増強決定株のリストまたは他の同様の情報構造であるかまたはそれを含むフル分類器モデルを受信することができる。一態様では、フル分類器モデルは、複数の増強決定株を表示するのに好適な情報を含む有限状態機械、および/またはモバイルデバイスによる複数の増強決定株への変換に好適な情報を含む有限状態機械を含む。一態様では、有限状態機械は、増強決定株の順序付けられたリストまたは優先順位付けられたリストであり得る(またはそれを含むことができる)。増強決定株の各々は、試験条件および重み値を含むことができる。
上記で説明したように、増強決定株は、厳密に1つのノード(したがって1つの試験質問または試験条件)と重み値とを有し、したがってデータ/挙動の二項分類における使用に十分に好適な、1レベル決定木である。これは、特徴ベクトルまたは挙動ベクトルを増強決定株に適用することで、2値の答え(たとえば、はいまたはいいえ)がもたらされることを意味する。たとえば、増強決定株によって試験される質問/条件が「SMS送信の周波数が毎分x未満であるか」である場合、「3」の値を増強決定株に適用することで、(「3未満」のSMS送信に対して)「はい」の答えまたは(「3以上」のSMS送信に対して)「いいえ」の答えのいずれかがもたらされることになる。
図5Aに戻ると、方法500のブロック504において、処理コアは、モバイルデバイスの処理、メモリ、またはエネルギーの資源の量を過剰に消費することなく、モバイルデバイス挙動を悪性または良性のいずれかであるとして正確に分類するために評価されるべき特有の試験条件の数を決定することができる。これは、モバイルデバイス内で利用可能な処理、メモリ、および/またはエネルギーの資源の量、条件を試験するために必要なモバイルデバイスの処理、メモリ、またはエネルギーの資源の量を決定することと、条件を試験することによってモバイルデバイス内で分析または評価されるべき挙動または条件と関連付けられた優先度および/または複雑さを決定することと、モバイルデバイスの利用可能な処理、メモリ、またはエネルギーの資源の消費、条件を試験することによって達成されるべき挙動分類の正確さ、および条件によって試験される挙動の重要性または優先度の間のバランスをとるかまたは折り合いをつけるために特有の試験条件の数を選択/決定することとを含むことができる。
ブロック506において、処理コアは、特有の試験条件の決定された数を有する選択された試験条件のリストに追加する(populate)ために増強決定株のリストを最初からトラバースすることができる。一態様では、処理コアはまた、選択された試験条件の各々に対する絶対的または相対的な優先度値を決定し、選択された試験条件のリスト内のそれらの対応する試験条件に関連する絶対的または相対的優先度値を記憶することができる。
ブロック508において、処理コアは、選択された試験条件のうちの1つを試験するフル分類器モデル内に含まれるすべての増強決定株を含むリーン分類器モデルを生成することができる。一態様では、処理コアは、重要性または優先度の値の順番に増強決定株を含むかまたは表示するリーン分類器モデルを生成することができる。
随意のブロック510において、特有の試験条件の数は、ブロック506においてより大きい数の試験条件のために増強決定株のリストをトラバースする動作を反復すること、およびブロック508において別のリーン分類器モデルを生成することによって別のよりロバストな(すなわち、それほどリーンでない)リーン分類器モデルを生成するために増加され得る。これらの動作は、リーン分類器モデルのファミリーを生成するために反復され得る。
図5Bは、モバイルデバイス内でデータモデルを生成する別の態様方法511を示す。方法511は、モバイルデバイス内の処理コアによって実行され得る。方法511のブロック512において、処理コアは、有限状態機械を含むフル分類器モデルを受信することができる。有限状態機械は、複数の増強決定株への変換に好適な情報を含む情報構造であり得る。ブロック514において、処理コアは、フル分類器モデル内に含まれる有限状態機械を試験条件および重み値を含む増強決定株に変換することができる。
一態様では、処理コアはまた、ブロック512において有限状態機械から生成される増強決定株の各々に対する優先度値を計算または決定することができる。処理コアは、モバイルデバイスの処理、メモリ、またはエネルギーの資源の消費、挙動分類の正確さなどの間のトレードオフの均衡をとるために増強決定株の優先度を決定することができる。処理コアはまた、それらの関連付けられた重み値、挙動を正確に分類するための試験条件の相対的なまたは予測された重要性などに基づいて増強決定株の優先度を決定することができる。
同じく、ブロック512において、処理コアは、それらの優先度に従っておよび/またはそれらの重要性の順番に、有限状態機械から生成された増強決定株を含み、照合し、特定し、および/または編成する第1のリスト(または他の情報構造)を生成することができる。たとえば、処理コアは、第1の項目(item)として最高の優先度を有する株、それに続いて2番目に高い優先度値を有する株、以下同様、を含む順位リストとなる第1のリストを生成することができる。重要性のこの順番はまた、クラウドコーパスから集められる情報、ならびに選別アルゴリズムが実施されているデバイスに固有の情報を考慮に入れることができる。
ブロック516において、処理コアは、リーン分類器モデルを適用するときに評価されるべき特有の試験条件(すなわち、増強決定株内で試験され得るモバイルデバイスの状態、特徴、挙動、または条件)の数を計算または決定することができる。特有の試験条件のこの数を計算または決定することは、モデルを適用するのに必要なモバイルデバイスの処理、メモリ、またはエネルギーの資源の消費とリーン分類器モデルによって達成されるべき挙動分類の正確さの間のバランスをとるかまたは折り合いをつけることを伴うことがある。そのような決定は、モバイルデバイス内で利用可能な処理、メモリ、および/またはエネルギーの資源の量を決定することと、分析されるべき挙動と関連付けられた優先度および/または複雑さを決定することと、挙動の優先度および/または複雑さを用いて利用可能な資源の均衡をとることとを含むことができる。
ブロック518において、処理コアは、増強決定株の第1のリストを連続的にトラバースすることによって第2のリストを生成し、トラバースされた増強決定株の各々と関連付けられた試験条件を第2のリストに挿入することができる。処理コアは、第2のリストの長さが特有の試験条件の決定された数に等しくなるまで、または第2のリストがすべての決定された数の特有の試験条件を含むまで、第1のリストをトラバースすることおよび値を第2のリストに挿入することを継続することができる。
ブロック520において、処理コアは、第1のリスト内に含まれる増強決定株に基づいてリーン分類器モデルを生成することができる。一態様では、処理コアは、第2のリスト(すなわち、ブロック518において生成された試験条件のリスト)内に含まれる試験条件のうちの1つを試験する増強決定株だけを含むようにリーン分類器モデルを生成することができる。
随意のブロック522において、特有の試験条件の数は、ブロック518においてより大きい数の試験条件のために増強決定株のリストをトラバースする動作を反復すること、およびブロック520において別のリーン分類器モデルを生成することによって別のよりロバストな(すなわち、それほどリーンでない)リーン分類器モデルを生成するために増加され得る。これらの動作は、リーン分類器モデルのファミリーを生成するために反復され得る。
図5Cは、モバイルデバイスの挙動を分類するためにリーン分類器モデルを使用する態様方法524を示す。方法524は、モバイルデバイス内の処理コアによって実行され得る。
方法524のブロック526において、処理コアは、モバイルデバイスシステムの様々なレベルにおいて機器を装着された様々な構成要素から挙動情報を収集するために観測を実行することができる。一態様では、これは、図2を参照しながら上記で説明した挙動観測器モジュール202を介して達成され得る。ブロック528において、処理コアは、観測値、収集された挙動情報、および/またはモバイルデバイス挙動を特徴付ける挙動ベクトルを生成することができる。同じく、ブロック528において、処理コアは、リーン分類器モデルまたは変化するレベルの複雑さ(または「リーン性」)のリーン分類器モデルのファミリーを生成するために、ネットワークサーバから受信されたフル分類器モデルを使用することができる。これを達成するために、処理コアは、フル分類器モデル内に含まれる増強決定株のファミリーを選別して、低減された数の増強決定株を含むリーン分類器モデルおよび/または限られた数の試験条件を評価するリーン分類器モデルを生成することができる。
ブロック529において、処理コアは、モバイルデバイスによって未だ評価または適用されていないリーン分類器モデル(すなわち、最小数の異なるモバイルデバイスの状態、特徴、挙動、または条件に基づくモデル)のファミリー内の最もリーンな分類器を選択することができる。一態様では、これは、処理コアが分類器モデルの順位リスト内の第1の分類器モデルを選択することによって達成され得る。
ブロック530において、処理コアは、収集された挙動情報または挙動ベクトルを選択されたリーン分類器モデル内の増強決定株の各々に適用することができる。増強決定株は2値決定であり、リーン分類器モデルは同じ試験条件に基づく多くの2値決定を選択することによって生成されるので、リーン分類器モデル内の増強決定株に挙動ベクトルを適用するプロセスは、並列動作で実行され得る。代替として、ブロック530において適用される挙動ベクトルは、リーン分類器モデル内に含まれる限られた数の試験条件パラメータをちょうど含むように打ち切られるかまたはフィルタリングされ得、それによってモデルを適用することにおける計算量はさらに低減される。
ブロック532において、処理コアは、収集された挙動情報をリーン分類器モデル内の増強決定株の各々に適用した結果の加重平均を計算または決定することができる。ブロック534において、処理コアは、計算された加重平均としきい値とを比較することができる。判断ブロック535において、処理コアは、この比較の結果および/または選択されたリーン分類器モデルを適用することによって生成された結果が疑わしいかどうかを判断することができる。たとえば、処理コアは、これらの結果が、高度の信頼度で悪性または良性のいずれかであるとして挙動を分類するために使用され得るかどうかを判断し得、使用できない場合、挙動を疑わしいとして取り扱う。
結果が疑わしいと処理コアが判断する(たとえば、判断ブロック535=「はい」の)場合、処理コアは、挙動が高度の信頼度で悪性または良性であるとして分類されるまで、より多くのデバイスの状態、特徴、挙動、または条件を評価するより強い(すなわち、それほどリーンでない)分類器モデルを選択および適用するために、ブロック529〜534における動作を反復することができる。挙動が高度の信頼度で悪性または良性のいずれかであるとして分類され得ると判断することによるなど、結果が疑わしくない(たとえば、判断ブロック535=「いいえ」)と処理コアが判断する場合、ブロック536において、処理コアは、ブロック534において生成された比較の結果を使用して、良性であるまたは潜在的に悪性であるとしてモバイルデバイスの挙動を分類することができる。
図5Dに示す代替の態様方法540では、ブロック518および520を参照しながら上記で説明した動作は、リーン分類器モデル内に未だ存在しない増強決定株を連続的に選択することと、選択された決定株と同じモバイルデバイスの状態、特徴、挙動または条件に依存する(およびしたがって、1つの決定結果に基づいて適用され得る)すべての他の増強決定株を特定することと、同じモバイルデバイスの状態、特徴、挙動または条件に依存する選択されたおよびすべての特定された他の増強決定株をリーン分類器モデル内に含むことと、試験条件の決定された数に等しい数の回数に対してプロセスを反復することとによって達成され得る。選択された増強決定株と同じ試験条件に依存するすべての増強決定株が毎回リーン分類器モデルに追加されるので、このプロセスが実行される回数を限定することが、リーン分類器モデル内に含まれる試験条件の数を限定することになる。
図5Dを参照すると、ブロック542において、処理コアは、リーン分類器モデル内で評価されるべき特有の試験条件(すなわち、増強決定株内で試験され得るモバイルデバイスの状態、特徴、挙動、または条件)の数(N)を計算または決定することができる。特有の試験条件のこの数を計算または決定することは、モデルを適用するのに必要なモバイルデバイスの処理、メモリ、またはエネルギーの資源の消費と、リーン分類器モデルによって達成されるべき挙動分類の正確さとの間のバランスをとるかまたは折り合いをつけることを伴うことがある。そのような決定は、モバイルデバイス内で利用可能な処理、メモリ、および/またはエネルギーの資源の量を決定することと、分析されるべき挙動と関連付けられた優先度および/または複雑さを決定することと、挙動の優先度および/または複雑さを用いて利用可能な資源の均衡をとることとを含むことができる。
ブロック544において、処理コアは、ループカウント変数の値をゼロ(0)に等しくなるように設定するか、または場合によっては決定された回数のN回実行されるループを初期化することができる。ブロック546において、処理コアは、増強決定株のフルセット内に含まれるかもしくはそこから生成され、かつリーン分類器モデルのリスト内に含まれない増強決定株を選択することができる。ループを通る初回は、リーン分類器モデルのリスト内に増強決定株が存在しないので、第1の増強決定株が選択されることになる。本明細書で説明するように、フル分類器モデルは、フルセットにおける第1の増強決定株が悪性または良性の挙動を認識する最高の確立を有するように構成され得る。ブロック548において、処理コアは、選択された決定株と関連付けられた試験条件を決定することができる。ブロック550において、処理コアは、選択された決定株の試験条件と同じ試験条件に依存するか、それを含むか、または試験するフル分類器モデル内に含まれるかまたはそこから生成される決定株のすべてを特定することができる。ブロック552において、処理コアは、選択された増強決定株と、同じ試験条件に依存するか、それを含むかまたは試験する特定された増強決定株のすべてとをリーン分類器モデルのリストに追加することができる。
ブロック554において、処理コアは、ループカウント変数の値を増分することができる。判断ブロック556において、処理コアは、ループカウント変数の値がブロック542において決定された特有の試験条件の数N以上であるかどうかを判断することができる。ループカウント変数の値が特有の試験条件の数以上ではない(すなわち、判断ブロック556=「いいえ」)と処理コアが判断すると、処理コアは、ブロック546〜554における動作を反復することができる。ループカウント変数の値が特有の試験条件の数以上である(すなわち、判断ブロック556=「はい」)と処理コアが判断すると、ブロック558において、処理コアは、リーン分類器モデルのリスト内のすべての増強決定株を含むようにリーン分類器モデルを生成することができる。
この方法540は、リーン分類器モデル内の特有の試験条件の数Nを変えることによって、ロバスト性またはリーン性の程度を変化させるリーン分類器モデルのファミリーを生成するために回数を使用することができる。たとえば、随意のブロック560において、モバイルデバイスプロセッサは、より多くの試験条件を組み入れる別のリーン分類器モデルを生成するために、ブロック542において決定される特有の試験条件の数Nを増加することができる。随意の判断ブロック562において、プロセッサは、増加する数Nが試験条件の最大数(max N)を超えるかどうかを判断することができる。試験条件の最大数は、最大性能ペナルティまたは分類し難い挙動を評価するのに望ましい資源投資に基づいて(たとえば、開発者、サービスプロバイダ、ユーザによって、またはアルゴリズムを介して)決定され得る。増加した数Nが最大数max Nより小さい(すなわち、判断ブロック562=「いいえ」の)場合、上記で説明したブロック544〜560の動作が、別のリーン分類器モデルを生成するために反復され得る。特有の試験条件の最大数がリーン分類器モデル内に含まれる(すなわち、判断ブロック562=「はい」)と、リーン分類器モデルを生成するプロセスは終了する。
図5A、図5Bおよび図5Dは、増強決定株のフルセットをトラバースする全プロセスを反復することによってリーン分類器モデルのファミリーを生成することを説明しているが、同様の結果は、生成されたリーン分類器モデル(すなわち、ブロック508、520および558のいずれかにおいて生成されたモデル)から開始し、かつ追加された試験条件の数に対して増強決定株のフルセットをトラバースして、生成されたリーン分類器モデル内に未だ含まれていない試験条件に応じて増強決定株をそのモデルに追加することによって達成され得る。
同じく、図5A、図5Bおよび図5Dは最もリーンから最もロバストまでリーン分類器モデルのファミリーを生成することを説明しているが、リーン分類器モデルはまた、単に、試験条件の最大数(たとえば、N=max N)から開始し、かつ数を毎回減じることによって、最もロバストから最もリーンまで生成され得る。
図6Aは、サーバまたはクラウド内にフル分類器を生成する態様方法600を示す。方法600は、クラウドネットワークに結合されるサーバコンピューティングデバイス内の処理コアによって実行され得る。
ブロック602において、処理コアは、多数のデバイスの状態、構成および挙動、ならびに悪性の挙動が検出されたかどうかに関する情報を含む挙動データのコーパスを、多くのモバイルデバイスから集めることができる。ブロック604において、処理コアは、挙動データのコーパスから、デバイスの状態、構成、および挙動の中で試験され得る特定の2値の質問/試験条件を特定することができる。デバイスの状態、構成および挙動のすべてを特徴付けるために、多数のそのような2値の質問/試験条が、一般的に特定されることになる。次に、ブロック606において、特定された2値の質問の各々に対して、処理コアは、悪性の挙動が2値の質問に対する答えの一方または他方に該当した回数の割合またはパーセンテージを決定するためにデータベースを試験することができる。ブロック608において、処理コアは、該当のパーセンテージに基づいて決定された重み値を有する第1の決定株として、悪性の挙動への最高の該当を有する2値の質問を選択することができる。ブロック610において、処理コアは、図6Bを参照しながら以下で説明するように、誤分類されたサンプル/試験条件の重みを増強することができる。
次に、サーバの処理コアは、この場合に悪性の挙動への最高の該当を有する質問を特定するために、第1の質問の答えが悪性の挙動と関連付けられない値(たとえば、「いいえ」)であると仮定して2値の質問を走査するプロセスを反復することができる。次に、質問は、モデル内の第2の2値の質問として設定され、その重み値はその該当のパーセンテージに基づいて決定される。次に、サーバは、この場合に悪性の挙動への最高の該当を有する次の質問/試験条件を特定するために、第2の質問/試験条件の答えが悪性の挙動と関連付けられない値(たとえば、「いいえ」)であると仮定して2値の質問を走査するプロセスを反復する。次に、その質問/試験条件は、モデル内の第3の2値の質問/試験条件であり、その重み値はその該当のパーセンテージに基づいて決定される。このプロセスは、特定された2値の質問/試験条件のすべてを通して継続されて、完全なセットを構築する。
2値の質問/試験条件を生成するプロセスにおいて、サーバは、前の時間間隔内の通信の周波数または通信の数などの範囲を有するデータを評価し、挙動を分類するのを支援する形でその範囲を包含する一連の2値の質問/試験条件を策定することができる。したがって、1つの2値の質問/試験条件はデバイスが前の5分間に1つ以上のデータ送信を送信した(それは低い相関を有する)かどうかであってよく、第2の2値の質問/試験条件はデバイスが前の5分間に11以上のデータ送信を送信した(それは中間の相関を有する)かどうかであってよく、第3の2値の質問/試験条件はデバイスが前の5分間に101以上のデータ送信を送信した(それは高い相関を有する)かどうかであってよい。
悪性の挙動に対して決定された重みまたは相関がしきい値より小さい(たとえば、統計的有意に満たない)質問/試験条件を除去することなどのために、フル分類器セットがモバイルデバイスに送信される前に、質問/試験条件の最終のセットの何らかの選別が、サーバによって行われることがある。たとえば、悪性の挙動に対する相関が約50/50である場合、両方の答えは、現在の挙動が悪性であるかまたは良性であるかの質問に答えることを支援をしないので、その決定株を使用する利点はほとんどないことがある。
図6Bは、様々な態様に従って使用するのに好適な増強決定木/分類器を生成するために好適な例示的な増強方法620を示す。動作622において、プロセッサは、決定木/分類器を生成および/または実施し、決定木/分類器の実施によって訓練サンプルを収集し、訓練サンプルに基づいて新しい分類器モデル(h1(x))を生成することができる。訓練サンプルは、モバイルデバイス挙動、ソフトウェアアプリケーション、またはモバイルデバイス内のプロセスについての前の観測または分析から収集された情報を含むことができる。訓練サンプルおよび/または新しい分類器モデル(h1(x))は、前の分類器内に含まれる質問または試験条件のタイプに基づいて、ならびに/あるいは挙動分析器モジュール204の分類器モジュール208内の前のデータ/挙動モデルまたは分類器の実施/適用によって収集された正確さまたは性能特性に基づいて生成され得る。動作624において、プロセッサは、第2の新しい木/分類器(h2(x))を生成するために、生成された決定木/分類器(h1(x))によって誤分類されたエントリの重みを増強(または増加)することができる。一態様では、訓練サンプルおよび/または新しい分類器モデル(h2(x))は、分類器の前の実施または使用(h1(x))の誤り率に基づいて生成され得る。一態様では、訓練サンプルおよび/または新しい分類器モデル(h2(x))は、分類器の前の実施または使用においてデータポイントの誤り率または誤分類を引き起こしたと判断される属性に基づいて生成され得る。
一態様では、誤分類されたエントリは、それらの相対的な正確さまたは有効性に基づいて重み付けられ得る。動作626において、プロセッサは、第3の新しい木/分類器(h3(x))を生成するために、生成された第2の木/分類器(h2(x))によって誤分類されたエントリの重みを増強(または増加)することができる。動作628において、624〜626の動作が、新しい木/分類器(ht(x))の数「t」を生成するために反復され得る。
第1の決定木/分類器(h1(x))によって誤分類されたエントリの重みを増強または増加することによって、第2の木/分類器(h2(x))が、第1の決定木/分類器(h1(x))によって誤分類されたエントリをより正確に分類し得るが、第1の決定木/分類器(h1(x))によって正しく分類されたエントリのうちのいくつかを誤分類することもある。同様に、第3の木/分類器(h3(x))は、第2の決定木/分類器(h2(x))によって誤分類されたエントリをより正確に分類し得るが、第2の決定木/分類器(h2(x))によって正しく分類されたエントリのうちのいくつかを誤分類することもある。すなわち、木/分類器(h1(x))〜(ht(x))のファミリーを生成することは、全体として収束するシステムをもたらすのではなく、並列に実施され得るいくつかの決定木/分類器をもたらす。
図7は、モバイルデバイスの処理、メモリ、またはエネルギーの資源の量を過剰に消費することなく、アクティブに悪性であるもしくは不完全に記述されたソフトウェアアプリケーションおよび/または疑わしいもしくは性能を劣化させるモバイルデバイス挙動を、モバイルデバイス102上で知的におよび効率的に特定するために使用され得る増強決定株を含む分類器モデルを生成する例示的な方法700を示す。方法700の動作1において、ネットワークサーバ内のオフライン分類器が、クラウドサービス/ネットワークから受信された情報に基づいてフルのまたはロバストな分類器モデルを生成することができる。たとえば、フル分類器は、40の特有の条件を試験する100の増強決定株を含むことができる。方法700の動作2において、フル分類器モデルは、モバイルデバイス102内の分析器/分類器モジュール208に送信され得る。方法700の動作3において、分析器/分類器モジュール208は、フル分類器モデルを分析することに基づいて増強決定株の形態のリーンデータ/挙動モデル分類器のセットを生成することができる。これは、モバイルデバイスが、クラウド訓練データにアクセスする必要なしにオンザフライでリーンモデルを生成すること、分類の正確さを強化するためにアプリケーション当たりの分類器を動的に再構成すること、および各分類器に対して決定論的複雑さ(たとえば、O(株の#))を指定することを可能にする「連動した特徴選択および選別」動作を実行することによって達成され得る。「連動した特徴選択および選別」動作はまた、特徴選択動作を実行することを含むことができる。
図8は、モバイルデバイス内でリーン分類器モデルを生成するために、一態様のサーバプロセッサによって生成され、デバイスプロセッサによって使用され得る例示的な増強決定株800を示す。図8に示す例では、増強決定株800は、プロセッサによって実施または実行されると、断定的な2値の答え(たとえば、真または偽、悪性または良性など)のいずれかをもたらし得る質問または試験条件(たとえば、F1、F3、F5)をそれぞれ含む複数の決定ノードW1〜W4を含む。各決定ノードW1〜W4はまた、重み値と関連付けられ得る。
図8はまた、図7を参照しながら上記で説明した「連動した特徴選択および選別」動作を実行する方法802を示す。方法802は、2つの特有の条件を試験するリーン分類器を生成する必要があると判断するモバイルデバイスの分析器モジュールを含むことがあり、その場合、特徴選択動作は、第1の2つの特有の条件(たとえば、図8のF1およびF3)が発見されるまで100の増強決定株のリストをトラバースすることを含むことがある。次に、分析器/分類器モジュール208は、特徴選択動作(たとえば、F1およびF3)によって特定された条件だけを試験することができ、それは、100の増強決定株の全リストをトラバースして異なる条件(たとえば、F5)を試験する株を消去することによって達成され得る。残っている増強決定株(すなわち、条件「F1」および「F3」を試験する株)が、データを再訓練することなくリーン分類器として使用され得る。分析器/分類器モジュール208は、残っている増強決定株(すなわち、条件「F1」および「F3」を試験する株)の各々に挙動情報を適用し、残っている株から受信されたすべての答えの加重平均を計算し、加重平均を使用してモバイルデバイス挙動が悪性であるかまたは良性であるかを判断することができる。
増強決定株が特徴選択および選別プロセスを介して生成されると、選択された決定株は、現在のデバイスの状態、設定および挙動に対して比較され得る分類器または挙動モデルとして使用され得る。決定株は独立した2値の試験であるので、挙動ベクトルに要約され得る観測された挙動とモデルとを比較する挙動分析プロセスは、並列に実行され得る。同じく、株は非常に単純(基本的に2値)であるので、各株を実行するための処理は非常に単純であり、したがってより小さい処理オーバーヘッドで迅速に達成され得る。各決定株は、重み値を有する答えをもたらし、挙動が悪性であるかまたは良性であるかに関する最終的な決定が、同じく単純な計算である、すべての結果の加重和として決定され得る。
ノードと関連付けられた重みは、モバイルデバイス挙動、ソフトウェアアプリケーション、またはモバイルデバイス内のプロセスについての前の観測または分析から収集された情報に基づいて計算され得る。各ノードと関連付けられた重みはまた、データのコーパス(たとえば、データまたは挙動ベクトルのクラウドコーパス)のどれだけ多くのユニットが増強決定株を構築するために使用されるかに基づいて計算され得る。
図9は、一態様による、動的および適応的観測を実行するように構成されたコンピューティングシステムの挙動観測器モジュール202における例示的な論理構成要素および情報フローを示す。挙動観測器モジュール202は、適応フィルタモジュール902と、スロットルモジュール904と、観測器モードモジュール906と、高レベル挙動検出モジュール908と、挙動ベクトル発生器910と、セキュアバッファ912とを含み得る。高レベル挙動検出モジュール908は、空間相関モジュール914と時間相関モジュール916とを含み得る。
観測器モードモジュール906は、分析器ユニット(たとえば、図2を参照して上記で説明した挙動分析器モジュール204)および/またはアプリケーションAPIを含み得る様々なソースから制御情報を受信できる。観測器モードモジュール906は、様々な観測器モードに関する制御情報を適応フィルタモジュール902および高レベル挙動検出モジュール908に送ることができる。
適応フィルタモジュール902は、複数のソースからデータ/情報を受信し、受信された情報を知的にフィルタ処理し、受信された情報から選択された情報のより小さいサブセットを生成することができる。このフィルタは、分析器モジュールから、またはAPIを介して通信するより高いレベルのプロセスから受信された情報または制御に基づいて適合され得る。フィルタ処理された情報は、スロットルモジュール904に送られ得、スロットルモジュール904は、高レベル挙動検出モジュール908が要求または情報で氾濫するかまたは過負荷になることがないことを確実にするために、フィルタから流れる情報の量を制御する役割を果たすことができる。
高レベル挙動検出モジュール908は、スロットルモジュール904からのデータ/情報と、観測器モードモジュール906からの制御情報と、モバイルデバイスの他の構成要素からのコンテキスト情報とを受信できる。高レベル挙動検出モジュール908は、受信された情報を使用して空間相関および時間相関を実行し、準最適レベルで実行することをデバイスに行わせ得る高レベル挙動を検出または特定することができる。空間相関および時間相関の結果は、挙動ベクトル発生器910に送られ得、挙動ベクトル発生器910は相関情報を受信し、特定のプロセス、アプリケーション、またはサブシステムの挙動を記述する挙動ベクトルを生成することができる。一態様では、挙動ベクトル発生器910は、特定のプロセス、アプリケーション、またはサブシステムの各高レベル挙動が挙動ベクトルの要素であるように挙動ベクトルを生成できる。一態様では、生成された挙動ベクトルは、セキュアバッファ912内に記憶され得る。高レベル挙動検出の例は、特定の事象の存在、別の事象の量または頻度、複数の事象間の関係、事象が発生する順序、いくつかの事象の発生の間の時間差などの検出を含み得る。
様々な態様では、挙動観測器モジュール202は、適応的観測を実行し、観測の細分性を制御することができる。すなわち、挙動観測器モジュール202は、観測されるべき関連挙動を動的に特定し、特定された挙動が観測されるべき詳細さのレベルを動的に決定することができる。この方式では、挙動観測器モジュール202は、様々なレベル(たとえば、複数の粗いレベルおよび微細なレベル)においてシステムがモバイルデバイスの挙動をモニタすることを可能にする。挙動観測器モジュール202は、観測されているものにシステムが適応することを可能にすることができる。挙動観測器モジュール202は、多様なソースから取得され得る情報の集中的なサブセットに基づいて観測されているファクタ/挙動を、システムが動的に変更することを可能にすることができる。
上記で説明したように、挙動観測器モジュール202は、適応的観測技法を実行し、様々なソースから受信された情報に基づいて観測の細分性を制御することができる。たとえば、高レベル挙動検出モジュール908は、スロットルモジュール904、観測器モードモジュール906からの情報と、モバイルデバイスの他の構成要素(たとえば、センサー)から受信されたコンテキスト情報とを受信できる。一例として、時間相関を実行する高レベル挙動検出モジュール908は、カメラが使用されたことと、モバイルデバイスがピクチャをサーバへのアップロードを試みていることとを検出できる。高レベル挙動検出モジュール908はまた、デバイスがホルスターに入れられ、ユーザのベルトに取り付けられていた間にモバイルデバイス上のアプリケーションがピクチャを撮ったかどうかを判断するために、空間相関を実行できる。高レベル挙動検出モジュール908は、この検出された高レベル挙動(たとえば、ホルスターに入れたままでカメラを使用すること)が容認できるまたは一般的な挙動であるかどうかを判断し得、そのことは、モバイルデバイスの現在の挙動と過去の挙動とを比較することによって、および/または複数のデバイスから収集された情報(たとえば、クラウドソーシングサーバから受信された情報)にアクセスすることによって達成され得る。ホルスターに入れられている間にピクチャを撮り、それらをサーバにアップロードすることは、(ホルスターに入れられている状況で観測される通常の挙動から判断され得るように)異常な挙動であるので、この状況では、高レベル挙動検出モジュール908は、これを、潜在的に危険な(threatening)挙動と認識し、適切な対応(たとえば、カメラを遮断する、警報を鳴らすなど)を開始することができる。
一態様では、挙動観測器モジュール202は、複数の部分に実装され得る。
図10は、一態様の観測器デーモンを実装するコンピューティングシステム1000内の論理構成要素および情報フローをより詳細に示す。図10に示す例では、コンピューティングシステム1000は、ユーザ空間内に挙動検出器1002モジュール、データベースエンジン1004モジュールおよび挙動分析器モジュール204と、カーネル空間内にリングバッファ1014、フィルタルール1016モジュール、スロットリングルール1018モジュールおよびセキュアバッファ1020とを含む。コンピューティングシステム1000は、ユーザ空間内に挙動検出器1002およびデータベースエンジン1004と、カーネル空間内にセキュアバッファマネージャ1006、ルールマネージャ1008およびシステムヘルスモニタ1010とを含む観測器デーモンをさらに含み得る。
様々な態様は、システム挙動を特徴付けるためにwebkit、SDK、NDK、カーネル、ドライバ、およびハードウェアを包含する、モバイルデバイス上のクロスレイヤ観測を提供できる。挙動観測は、実時間で行われ得る。
観測器モジュールは、適応的観測技法を実行し、観測の細分性を制御することができる。上記で説明したように、モバイルデバイスの劣化に寄与する可能性のある多数(すなわち、数千)のファクタが存在し、デバイスの性能の劣化に寄与する可能性のある異なるファクタのすべてをモニタ/観測することは実現不可能である。これを克服するために、様々な態様は、観測されるべきである関連挙動を動的に特定し、特定された挙動が観測されるべき詳細さのレベルを動的に決定する。
図11は、一態様による、動的かつ適応的観測を実行するための例示的な方法1100を示す。ブロック1102で、モバイルデバイスプロセッサは、モバイルデバイスの劣化に寄与する可能性のある多数のファクタ/挙動のサブセットをモニタ/観測するとによって、粗い観測を実行できる。ブロック1103で、モバイルデバイスプロセッサは、粗い観測を特徴付ける挙動ベクトルおよび/または粗い観測に基づくモバイルデバイス挙動を生成できる。ブロック1104で、モバイルデバイスプロセッサは、モバイルデバイスの劣化に潜在的に寄与する可能性のある粗い観測に関連するサブシステム、プロセス、および/またはアプリケーションを特定できる。これは、たとえば、複数のソースから受信された情報とモバイルデバイスのセンサーから受信されたコンテキスト情報とを比較することによって達成され得る。ブロック1106で、モバイルデバイスプロセッサは、粗い観測に基づいて挙動分析動作を実行できる。態様では、ブロック1103および1104の一部として、モバイルデバイスプロセッサは、図2〜図10を参照して上記で説明した動作のうちの1つまたは複数を実行できる。
判断ブロック1108で、疑わしい挙動または潜在的問題が特定され、挙動分析の結果に基づいて修正され得るかどうかを、モバイルデバイスプロセッサが判断できる。疑わしい挙動または潜在的問題が特定され、挙動分析の結果に基づいて修正され得るとモバイルデバイスプロセッサが判断する(すなわち、判断ブロック1108=「Yes」)とき、ブロック1118で、プロセッサは、挙動を修正するためのプロセスを開始し、ブロック1102に戻って追加の粗い観測を実行することができる。
疑わしい挙動または潜在的問題が、挙動分析の結果に基づいて特定および/または修正され得ないとモバイルデバイスプロセッサが判断する(すなわち、判断ブロック1108=「No」)とき、判断ブロック1109で、モバイルデバイスプロセッサは、問題の可能性があるかどうかを判断できる。一態様では、モバイルデバイスプロセッサは、モバイルデバイスが潜在的問題に遭遇することおよび/または疑わしい挙動に関与することの確率を計算し、計算された確率が所定のしきい値よりも大きいかどうかを判断することによって、問題の可能性があるかどうかを判断できる。計算された確率が所定のしきい値よりも大きくない、ならびに/あるいは疑わしい挙動または潜在的問題が存在するおよび/または検出可能である可能性はないとモバイルデバイスプロセッサが判断する(すなわち、判断ブロック1109=「No」)とき、プロセッサは、ブロック1102に戻って追加の粗い観測を実行することができる。
疑わしい挙動または潜在的問題が存在するおよび/または検出可能である可能性があるとモバイルデバイスプロセッサが判断する(すなわち、判断ブロック1109=「Yes」)とき、ブロック1110で、モバイルデバイスプロセッサは、特定されたサブシステム、プロセスまたはアプリケーションに対して、よりディープなロギング/観測または最終のロギングを実行できる。ブロック1112で、モバイルデバイスプロセッサは、特定されたサブシステム、プロセスまたはアプリケーションに対して、よりディープでより詳細な観測を実行できる。ブロック1114で、モバイルデバイスプロセッサは、よりディープでより詳細な観測に基づいて、より広範および/またはよりディープな挙動分析を実行できる。判断ブロック1108で、モバイルデバイスプロセッサは、よりディープな挙動分析の結果に基づいて、疑わしい挙動または潜在的問題が特定され修正され得るかどうかを再び判断できる。よりディープな挙動分析の結果に基づいて疑わしい挙動または潜在的問題が特定され修正され得ないとモバイルデバイスプロセッサが判断する(すなわち、判断ブロック1108=「No」)とき、詳細さのレベルが問題を特定するのに十分に微細になるまで、または詳細さを追加しても問題が特定され得ないかまたは問題が存在しないと判断されるまで、プロセッサはブロック1110〜1114で動作を繰り返すことができる。
よりディープな挙動分析の結果に基づいて疑わしい挙動または潜在的問題が特定され修正され得るとモバイルデバイスプロセッサが判断する(すなわち、判断ブロック1108=「Yes」)とき、ブロック1118で、モバイルデバイスプロセッサは、問題/挙動を修正するための動作を実行し、プロセッサはブロック1102に戻って追加の動作を実行することができる。
一態様では、方法1100のブロック1102〜1118の一部として、モバイルデバイスプロセッサは、限定された粗い観測値から疑わしい挙動を特定するため、より詳細に観測するために挙動を動的に判断するため、および観測のために必要な詳細さの正確なレベルを動的に決定するために、システムの挙動の実時間挙動分析を実行できる。これは、デバイス上のプロセッサ、メモリまたはバッテリーのリソースを多量に使用する必要なしに、モバイルデバイスプロセッサが問題を効率的に特定し、問題が発生するのを防止することを可能にする。
様々な態様が、多様なコンピューティングデバイス上に実装され得、それらの一例が、スマートフォンの形で図12に示されている。スマートフォン1200は、内部メモリ1204と、ディスプレイ1212と、スピーカ1214とに結合されたプロセッサ1202を含み得る。加えて、スマートフォン1200は、プロセッサ1202に結合されたワイヤレスデータリンクおよび/またはセルラー電話トランシーバ1208に接続され得る、電磁放射を送信および受信するためのアンテナを含むことができる。スマートフォン1200は通常、ユーザ入力を受け取るためのメニュー選択ボタンまたはロッカースイッチ1220も含む。
一般的なスマートフォン1200はまた、マイクロフォンから受信された音をワイヤレス送信に適したデータパケットにデジタル化し、受信された音のデータパケットを復号し、スピーカに供給されるアナログ信号を生成して音を発生する音符号化/復号(CODEC)回路1206を含む。同じく、プロセッサ1202、ワイヤレストランシーバ1208およびCODEC 1206のうちの1つまたは複数は、デジタル信号プロセッサ(DSP)回路(個別に示されず)を含み得る。
態様の方法の一部は、態様の方法を実行している間にモバイルデバイスプロセッサによってアクセスされ得る正常動作挙動のデータベースを維持することなど、サーバ内で発生する処理のいくつかによって、クライアントサーバアーキテクチャ内で遂行され得る。そのような態様は、図13に示すサーバ1300のような、種々の市販のサーバデバイスのいずれにおいても実装され得る。そのようなサーバ1300は通常、揮発性メモリ1302と、ディスクドライブ1303のような大容量の不揮発性メモリとに結合された、プロセッサ1301を含む。サーバ1300はまた、プロセッサ1301に結合された、フロッピー(登録商標)ディスクドライブ、コンパクトディスク(CD)またはDVDディスクドライブ1304も含み得る。サーバ1300はまた、他のブロードキャストシステムコンピュータおよびサーバに結合されたローカルエリアネットワークなど、ネットワーク1305とデータ接続を確立するための、プロセッサ1301に結合されたネットワークアクセスポート1306も含み得る。
プロセッサ1202、1301は、以下で説明する様々な態様の機能を含む、様々な機能を実施するためのソフトウェア命令(アプリケーション)によって構成され得る、任意のプログラマブルマイクロプロセッサ、マイクロコンピュータ、または1つもしくは複数の多重プロセッサチップであり得る。いくつかのモバイルデバイスでは、1つのプロセッサをワイヤレス通信機能専用にし、1つのプロセッサを他のアプリケーションの実行専用にするように、複数のプロセッサ1202を設けることができる。一般的には、ソフトウェアアプリケーションは、それらがアクセスされ、プロセッサ1202、1301にロードされる前に、内部メモリ1204、1302、1303内に記憶され得る。プロセッサ1202、1301は、アプリケーションソフトウェア命令を記憶するのに十分な内部メモリを含み得る。
「性能劣化」という用語は、本明細書では、長い処理時間、遅い実時間応答性、短いバッテリー寿命、個人データの喪失、悪性である経済活動(たとえば、無許可の報奨金のSMSメッセージを送信すること)、サービス拒否(DoS)、モバイルデバイスを乗っ取ることまたはスパイもしくはボットネット活動のために電話を利用することに関する動作など、多種多様な望ましくないモバイルデバイスの動作および特性を指すために使用される。
様々な態様の動作を遂行するためにプログラマブルプロセッサ上で遂行するためのコンピュータプログラムコードすなわち「プログラムコード」は、C、C++、C#、Smalltalk、Java(登録商標)、JavaScript(登録商標)、Visual Basic、Structured Query Language (たとえば、Transact-SQL)、Perlなどの高レベルプログラミング言語で、または様々な他のプログラミング言語で記述され得る。本出願で用いられるように、コンピュータ可読記憶媒体に記憶されるプログラムコードまたはプログラムは、そのフォーマットがプロセッサによって理解可能であるマシン言語コード(オブジェクトコードなど)を指すことがある。
多くのモバイルコンピューティングデバイスのオペレーティングシステムのカーネルは、(非特権コードが動作する場合)ユーザ空間内に編成され、(特権コードが動作する場合)カーネル空間内に編成される。この分離は、カーネル空間の一部であるコードがGPL許諾される必要がある一方で、ユーザ空間内で動作するコードがGPL許諾されなくてもよい、Android(登録商標)および他の一般公有使用許諾(GPL)環境において特に重要である。本明細書で説明する様々なソフトウェア構成要素/モジュールは、明示的に別段の記述がない場合、カーネル空間またはユーザ空間のいずれかに実装され得ることを理解されたい。
上記の方法の説明およびプロセスフロー図は、単に説明のための例として提供したものであり、様々な態様のステップを提示された順序で実施しなければならないことを要求または暗示するものではない。当業者が諒解するように、上記の態様におけるステップの順序は、どのような順序で実施されてもよい。「その後」、「次いで」、「次」などの言葉は、ステップの順番を限定するものではなく、これらの言葉は単に、読者に本方法の説明を案内するために使用される。さらに、たとえば、冠詞「a」、「an」または「the」の使用による単数形での請求要素へのいかなる言及も、その要素を単数に限定するものとして解釈されるべきではない。
本出願で使用されるように、「構成要素」、「モジュール」、「システム」、「エンジン」、「発生器」、「マネージャ」などの用語は、限定はしないが、特定の動作または機能を実行するように構成された、ハードウェア、ファームウェア、ハードウェアとソフトウェアの組合せ、ソフトウェア、または実行中のソフトウェアなど、コンピュータ関連のエンティティを含むものとする。たとえば、構成要素は、プロセッサ上で作動しているプロセス、プロセッサ、オブジェクト、実行ファイル、実行スレッド、プログラム、および/またはコンピュータであり得るが、これらに限定されない。例を挙げると、コンピューティングデバイス上で作動しているアプリケーションとコンピューティングデバイスの両方が、構成要素と呼ばれてよい。1つまたは複数のコンポーネントは、プロセスおよび/または実行スレッドの中に存在してよく、1つのコンポーネントは、1つのプロセッサまたはコアに局在してよく、かつ/または2つ以上のプロセッサまたはコアの間に分散してよい。加えて、これらの構成要素は、様々な命令および/またはデータ構造を記憶している様々な非一時的コンピュータ可読媒体から実行することができる。構成要素は、ローカルおよび/またはリモートプロセス、関数呼出しまたはプロシージャ呼出し、電子信号、データパケット、メモリ読出し/書込み、ならびに他の知られているネットワーク、コンピュータ、プロセッサ、および/または通信方法に関するプロセスによって通信できる。
本明細書で開示された態様に関して記載された、様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、または両方の組合せとして実装することができる。ハードウェアとソフトウェアのこの互換性を明確に示すために、様々な例示的な構成要素、ブロック、モジュール、回路、およびステップを、上記では概してそれらの機能に関して説明した。そのような機能をハードウェアとして実装するか、ソフトウェアとして実装するかは、特定の適用例および全体的なシステムに課される設計制約に依存する。当業者は、説明した機能を特定の適用例ごとに様々な方法で実装し得るが、そのような実装の決定は、本発明の範囲からの逸脱を生じるものと解釈すべきではない。
本明細書で開示された態様に関して記載された様々な例示的な論理、論理ブロック、モジュール、および回路を実装するために使用されるハードウェアは、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)もしくは他のプログラマブル論理デバイス、個別ゲートもしくはトランジスタ論理、個別のハードウェアコンポーネント、または、本明細書に記載された機能を実行するように設計されたそれらの任意の組合せで、実装または実行され得る。汎用プロセッサは多重プロセッサであり得るが、代替として、プロセッサは任意の従来のプロセッサ、コントローラ、マイクロコントローラ、または状態機械であり得る。プロセッサはまた、コンピューティングデバイスの組合せ、たとえば、DSPと多重プロセッサとの組合せ、複数の多重プロセッサ、DSPコアと連携する1つまたは複数の多重プロセッサ、あるいは任意の他のそのような構成として実装され得る。代替として、いくつかのステップまたは方法は、所与の機能に固有の回路によって実行され得る。
1つまたは複数の例示的な態様では、記載された機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せに実装することができる。機能は、ソフトウェアで実装される場合、1つまたは複数のプロセッサ実行可能命令またはコードとして、非一時的コンピュータ可読記憶媒体または非一時的プロセッサ可読記憶媒体に記憶され得る。本明細書で開示された方法またはアルゴリズムのステップは、非一時的コンピュータ可読またはプロセッサ可読の記憶媒体上に常駐できるプロセッサ実行可能ソフトウェアモジュール内で具現化することができる。非一時的コンピュータ可読記憶媒体またはプロセッサ可読記憶媒体は、コンピュータまたはプロセッサによってアクセスされ得る任意の記憶媒体であってよい。限定ではなく例として、そのような非一時的コンピュータ可読媒体またはプロセッサ可読媒体は、RAM、ROM、EEPROM、フラッシュメモリ、CD-ROMもしくは他の光ディスク記憶装置、磁気ディスク記憶装置もしくは他の磁気記憶デバイス、または、命令もしくはデータ構造の形式で所望のプログラムコードを記憶するために使用され得るとともに、コンピュータによってアクセスされ得る任意の他の媒体を含み得る。本明細書で使用する場合、ディスク(disk)およびディスク(disc)は、コンパクトディスク(CD)、レーザーディスク(登録商標)、光ディスク、デジタル多用途ディスク(DVD)、フロッピー(登録商標)ディスク、およびブルーレイディスクを含み、ディスク(disk)は、通常、磁気的にデータを再生し、ディスク(disc)は、レーザーで光学的にデータを再生する。上記の組合せも非一時的コンピュータ可読媒体およびプロセッサ可読媒体の範囲内に含まれる。加えて、方法またはアルゴリズムの動作は、コンピュータプログラム製品に組み込まれ得る、非一時的プロセッサ可読媒体および/またはコンピュータ可読媒体上のコードおよび/または命令の、1つまたは任意の組合せ、またはそのセットとして存在し得る。
開示された態様の上記の説明は、任意の当業者が本発明を製作または使用できるようになされている。これらの態様への様々な修正が当業者には容易に明らかであり、本明細書で定義された一般的な原理は、本発明の趣旨または範囲を逸脱することなく、他の態様に適用することができる。したがって、本発明は、本明細書で示された態様に限定されるものではなく、以下の特許請求の範囲ならびに本明細書で開示された原理および新規の特徴に合致する、最も広い範囲を与えられるべきである。
100 通信システム
102 モバイルデバイス
104 セル電話ネットワーク
106 セル基地局
108 ネットワーク運用センタ
110 インターネット
112 双方向ワイヤレス通信リンク
114 サーバ
116 ネットワークサーバ
118 クラウドサービスプロバイダネットワーク、クラウドサービス/ネットワーク
202 挙動観測器モジュール
204 挙動分析器モジュール
206 外部コンテキスト情報モジュール
208 分類器モジュール
210 アクチュエータモジュール
300 システム
302 クラウドモジュール
304 モデル発生器モジュール
306 訓練データモジュール
402 リーンモデル発生器モジュール
404 フルモデル発生器
700 方法
800 増強決定株
802 方法
902 適応フィルタモジュール
904 スロットルモジュール
906 観測器モードモジュール
908 高レベル挙動検出モジュール
910 挙動ベクトル発生器
912 セキュアバッファ
914 空間相関モジュール
916 時間相関モジュール
1000 コンピューティングシステム
1002 挙動検出器モジュール
1004 データベースエンジンモジュール
1006 セキュアバッファマネージャ
1008 ルールマネージャ
1010 システムヘルスモニタ
1014 リングバッファ
1016 フィルタルールモジュール
1018 スロットリングルールモジュール
1020 セキュアバッファ
1100 方法
1200 スマートフォン
1202 プロセッサ
1204 内部メモリ
1206 CODEC
1208 ワイヤレストランシーバ
1212 ディスプレイ
1214 スピーカ
1220 ロッカースイッチ
1300 サーバ
1301 プロセッサ
1302 揮発性メモリ
1303 ディスクドライブ
1304 DVDディスクドライブ
1305 ネットワーク
1306 ネットワークアクセスポート

Claims (30)

  1. モバイルデバイス内でデータモデルを生成する方法であって、
    各増強決定株が試験条件および重み値を含む複数の増強決定株として表示するのに好適な情報を含む有限状態機械を含むフル分類器モデルを前記モバイルデバイスのプロセッサ内で受信するステップと、
    前記フル分類器モデルに基づいて前記モバイルデバイス内でリーン分類器モデルを生成するステップとを含む、方法。
  2. 前記モバイルデバイスの挙動を良性であるまたは良性でないのいずれかであるとして分類するために前記モバイルデバイス内で前記リーン分類器モデルを使用するステップをさらに含む、請求項1に記載の方法。
  3. 前記フル分類器モデルに基づいて前記リーン分類器モデルを生成するステップが、
    前記フル分類器モデル内に含まれる前記有限状態機械を増強決定株のリストに変換するステップと、
    増強決定株の前記リスト内に含まれる増強決定株に基づいて前記リーン分類器モデルを生成するステップとを含む、請求項1に記載の方法。
  4. 前記フル分類器モデルに基づいて前記リーン分類器モデルを生成するステップが、
    前記モバイルデバイスの処理、メモリ、またはエネルギーの資源の量を過剰に消費することなく、モバイルデバイス挙動を分類するために評価されるべき特有の試験条件の数を決定するステップと、
    増強決定株の前記リストを連続的にトラバースすることによって試験条件のリストを生成し、試験条件の前記リストが前記決定された数の特有の試験条件を含むまで、連続的にトラバースされた増強決定株の各々と関連付けられた前記試験条件を試験条件の前記リストに挿入するステップと、
    前記生成された試験条件のリスト内に含まれる複数の試験条件のうちの1つを試験する増強決定株だけを含むように前記リーン分類器モデルを生成するステップとをさらに含む、請求項3に記載の方法。
  5. 前記モバイルデバイスの挙動を、
    収集された挙動情報を前記リーン分類器モデル内の増強決定株の各々に適用することと、
    前記収集された挙動情報を前記リーン分類器モデル内の増強決定株の各々に適用した結果の加重平均を計算することと、
    前記加重平均としきい値とを比較することとによって、良性であるまたは良性でないのいずれかであるとして分類するために、前記モバイルデバイス内で前記リーン分類器モデルを使用するステップをさらに含む、請求項4に記載の方法。
  6. 前記フル分類器モデルに基づいて前記リーン分類器モデルを生成するステップが、
    前記フル分類器モデル内に含まれる前記有限状態機械を増強決定株のリストに変換するステップと、
    増強決定株の前記リスト内に含まれる増強決定株に基づいてリーン分類器モデルのファミリーを生成するステップとを含み、リーン分類器モデルの前記ファミリーが前記リーン分類器モデルおよび複数の追加のリーン分類器モデルを含み、前記複数の追加のリーン分類器モデルの各々が異なる数の特有の試験条件を含む、請求項1に記載の方法。
  7. リーン分類器モデルを生成するステップが、
    異なる重み値および異なるしきい値を使用して第1の条件を試験する決定株をそれぞれ含む複数のリーン分類器モデルを生成するステップを含む、請求項1に記載の方法。
  8. 前記フル分類器モデルに基づいて前記モバイルデバイス内に生成された複数のリーン分類器モデル内の増強決定株と関連付けられたしきい値を再計算するステップをさらに含む、請求項1に記載の方法。
  9. 前記フル分類器モデルに基づいて前記モバイルデバイス内に生成された複数のリーン分類器モデル内の増強決定株と関連付けられた重み値を再計算するステップをさらに含む、請求項1に記載の方法。
  10. 前記フル分類器モデルをサーバ内で、
    モバイルデバイス挙動についての情報のコーパスを前記サーバ内で受信することと、
    前記複数の増強決定株への変換に好適なデータを含むために、モバイルデバイス挙動についての情報の前記コーパスに基づいて前記有限状態機械を生成することと、
    前記有限状態機械を前記フル分類器モデルとして前記モバイルデバイスに送信することとによって生成するステップをさらに含む、請求項1に記載の方法。
  11. 各試験条件が確率値と関連付けられ、前記確率値が、モバイルデバイス挙動が良性であるかどうかを前記モバイルデバイスが判断することを、その関連付けられた試験条件が可能にする尤度を特定し、前記方法が、
    前記有限状態機械を前記フル分類器モデルとして前記モバイルデバイスに送信する前に、確率値に基づいて前記有限状態機械内に前記複数の増強決定株を編成するステップをさらに含む、請求項10に記載の方法。
  12. モバイルコンピューティングデバイスであって、
    動作を実行するようにプロセッサ実行可能命令で構成されたプロセッサを備え、前記動作が、
    各増強決定株が試験条件および重み値を含む複数の増強決定株として表示するのに好適な情報を含む有限状態機械を含むフル分類器モデルを受信するステップと、
    前記フル分類器モデルに基づいてリーン分類器モデルを生成するステップとを含む、モバイルコンピューティングデバイス。
  13. 前記フル分類器モデルに基づいて前記リーン分類器モデルを生成するステップが、
    前記フル分類器モデル内に含まれる前記有限状態機械を増強決定株のリストに変換するステップと、
    前記モバイルコンピューティングデバイスの処理、メモリ、またはエネルギーの資源の量を過剰に消費することなく、モバイルデバイス挙動を分類するために評価されるべき特有の試験条件の数を決定するステップと、
    増強決定株の前記リストを連続的にトラバースすることによって試験条件のリストを生成し、試験条件の前記リストが前記決定された数の特有の試験条件を含むまで、連続的にトラバースされた増強決定株の各々と関連付けられた前記試験条件を試験条件の前記リストに挿入するステップと、
    前記生成された試験条件のリスト内に含まれる複数の試験条件のうちの1つを試験する増強決定株の前記リスト内に含まれる増強決定株を含むように前記リーン分類器モデルを生成するステップとを含むような動作を実行するように、前記プロセッサがプロセッサ実行可能命令で構成される、請求項12に記載のモバイルコンピューティングデバイス。
  14. 前記プロセッサが、
    収集された挙動情報を前記リーン分類器モデル内の増強決定株の各々に適用することと、
    前記収集された挙動情報を前記リーン分類器モデル内の増強決定株の各々に適用した結果の加重平均を計算することと、
    前記加重平均としきい値とを比較することとによって、挙動を良性であるまたは良性でないのいずれかであるとして分類するために前記リーン分類器モデルを使用するステップをさらに含む動作を実行するようにプロセッサ実行可能命令で構成される、請求項13に記載のモバイルコンピューティングデバイス。
  15. 前記フル分類器モデルに基づいて前記リーン分類器モデルを生成するステップが、
    前記フル分類器モデル内に含まれる前記有限状態機械を増強決定株のリストに変換するステップと、
    増強決定株の前記リスト内に含まれる増強決定株に基づいてリーン分類器モデルのファミリーを生成するステップとを含むような動作を実行するように、前記プロセッサがプロセッサ実行可能命令で構成され、リーン分類器モデルの前記ファミリーが前記リーン分類器モデルおよび複数の追加のリーン分類器モデルを含み、前記複数の追加のリーン分類器モデルの各々が異なる数の特有の試験条件を含む、請求項12に記載のモバイルコンピューティングデバイス。
  16. リーン分類器モデルを生成するステップが、
    異なる重み値および異なるしきい値を使用して第1の条件を試験する決定株をそれぞれ含む複数のリーン分類器モデルを生成するステップを含むような動作を実行するように、前記プロセッサがプロセッサ実行可能命令で構成される、請求項12に記載のモバイルコンピューティングデバイス。
  17. 前記プロセッサが、
    前記フル分類器モデルに基づいて生成された複数のリーン分類器モデル内の前記増強決定株と関連付けられたしきい値および重み値を再計算するステップをさらに含む動作を実行するようにプロセッサ実行可能命令で構成される、請求項12に記載のモバイルコンピューティングデバイス。
  18. プロセッサ実行可能ソフトウェア命令を記憶された非一時的コンピュータ可読記憶媒体であって、前記プロセッサ実行可能ソフトウェア命令が、モバイルデバイス内のプロセッサに、
    各増強決定株が試験条件および重み値を含む複数の増強決定株として表示するのに好適な情報を含む有限状態機械を含むフル分類器モデルを受信するステップと、
    前記フル分類器モデルに基づいてリーン分類器モデルを生成するステップとを含む動作を実行させるように構成される、非一時的コンピュータ可読記憶媒体。
  19. 前記記憶されたプロセッサ実行可能ソフトウェア命令が、前記モバイルデバイス内のプロセッサに、前記フル分類器モデルに基づいて前記リーン分類器モデルを生成するステップが、
    前記フル分類器モデル内に含まれる前記有限状態機械を増強決定株のリストに変換するステップと、
    前記モバイルデバイスの処理、メモリ、またはエネルギーの資源の量を過剰に消費することなく、モバイルデバイス挙動を分類するために評価されるべき特有の試験条件の数を決定するステップと、
    増強決定株の前記リストを連続的にトラバースすることによって試験条件のリストを生成し、試験条件の前記リストが前記決定された数の特有の試験条件を含むまで、連続的にトラバースされた増強決定株の各々と関連付けられた前記試験条件を試験条件の前記リストに挿入するステップと、
    前記生成された試験条件のリスト内に含まれる複数の試験条件のうちの1つを試験する増強決定株の前記リスト内に含まれる増強決定株を含むように前記リーン分類器モデルを生成するステップとを含むような動作を実行させるように構成される、請求項18に記載の非一時的コンピュータ可読記憶媒体。
  20. 前記記憶されたプロセッサ実行可能ソフトウェア命令が、前記モバイルデバイス内のプロセッサに、
    収集された挙動情報を前記リーン分類器モデル内の増強決定株の各々に適用することと、
    前記収集された挙動情報を前記リーン分類器モデル内の増強決定株の各々に適用した結果の加重平均を計算することと、
    前記加重平均としきい値とを比較することとによって、前記モバイルデバイスの挙動を良性であるまたは良性でないのいずれかであるとして分類するために、前記モバイルデバイス内の前記リーン分類器モデルを使用するステップをさらに含む動作を実行させるように構成される、請求項19に記載の非一時的コンピュータ可読記憶媒体。
  21. 前記記憶されたプロセッサ実行可能ソフトウェア命令が、前記モバイルデバイス内のプロセッサに、前記フル分類器モデルに基づいて前記リーン分類器モデルを生成するステップが、
    前記フル分類器モデル内に含まれる前記有限状態機械を増強決定株のリストに変換するステップと、
    増強決定株の前記リスト内に含まれる増強決定株に基づいてリーン分類器モデルのファミリーを生成するステップとを含むような動作を実行させるように構成され、リーン分類器モデルの前記ファミリーが前記リーン分類器モデルおよび複数の追加のリーン分類器モデルを含み、前記複数の追加のリーン分類器モデルの各々が異なる数の特有の試験条件を含む、請求項18に記載の非一時的コンピュータ可読記憶媒体。
  22. 前記記憶されたプロセッサ実行可能ソフトウェア命令が、前記モバイルデバイス内のプロセッサに、リーン分類器モデルを生成するステップが、
    異なる重み値および異なるしきい値を使用して第1の条件を試験する決定株をそれぞれ含む複数のリーン分類器モデルを生成するステップを含むような動作を実行させるように構成される、請求項18に記載の非一時的コンピュータ可読記憶媒体。
  23. 前記記憶されたプロセッサ実行可能ソフトウェア命令が、前記モバイルデバイス内のプロセッサに、
    前記フル分類器モデルに基づいて生成された複数のリーン分類器モデル内の前記増強決定株と関連付けられたしきい値および重み値を再計算するステップをさらに含む動作を実行させるように構成される、請求項18に記載の非一時的コンピュータ可読記憶媒体。
  24. デバイスプロセッサを備えるモバイルデバイスと、
    モバイルデバイス挙動についての情報のコーパスを受信するステップ、
    試験条件および重み値をそれぞれ含む複数の増強決定株への変換に好適なデータを含む有限状態機械を、情報の前記コーパスに基づいて生成するステップ、および
    前記有限状態機械をフル分類器モデルとして前記モバイルデバイスに送信するステップを含む動作を実行するようにサーバ実行可能命令で構成されたサーバとを備え、
    前記デバイスプロセッサが、
    前記フル分類器モデルを受信するステップと、
    前記受信されたフル分類器モデルに基づいて前記モバイルデバイス内でリーン分類器モデルを生成するステップと、
    前記モバイルデバイスの挙動を良性であるまたは良性でないのいずれかであるとして分類するために前記リーン分類器モデルを使用するステップとを含む動作を実行するようにプロセッサ実行可能命令で構成される、システム。
  25. 前記フル分類器モデルに基づいて前記リーン分類器モデルを生成するステップが、
    前記フル分類器モデル内に含まれる前記有限状態機械を増強決定株のリストに変換するステップと、
    前記モバイルデバイスの処理、メモリ、またはエネルギーの資源の量を過剰に消費することなく、前記モバイルデバイスの前記挙動を分類するために評価されるべき特有の試験条件の数を決定するステップと、
    増強決定株の前記リストを連続的にトラバースすることによって試験条件のリストを生成し、試験条件の前記リストが前記決定された数の特有の試験条件を含むまで、連続的にトラバースされた増強決定株の各々と関連付けられた前記試験条件を試験条件の前記リストに挿入するステップと、
    前記生成された試験条件のリスト内に含まれる複数の試験条件のうちの1つを試験する増強決定株の前記リスト内に含まれる増強決定株を含むように前記リーン分類器モデルを生成するステップとを含むような動作を実行するように、前記デバイスプロセッサがプロセッサ実行可能命令で構成される、請求項24に記載のシステム。
  26. 前記モバイルデバイスの前記挙動を分類するために前記リーン分類器モデルを使用するステップが、
    収集された挙動情報を前記リーン分類器モデル内の増強決定株の各々に適用するステップと、
    前記収集された挙動情報を前記リーン分類器モデル内の増強決定株の各々に適用した結果の加重平均を計算するステップと、
    前記加重平均としきい値とを比較するステップとを含むような動作を実行するように、前記デバイスプロセッサがプロセッサ実行可能命令で構成される、請求項24に記載のシステム。
  27. 前記フル分類器モデルに基づいて前記リーン分類器モデルを生成するステップが、
    前記フル分類器モデル内に含まれる前記有限状態機械を増強決定株のリストに変換するステップと、
    増強決定株の前記リスト内に含まれる前記増強決定株に基づいてリーン分類器モデルのファミリーを生成するステップとを含むような動作を実行するように、前記デバイスプロセッサがプロセッサ実行可能命令で構成され、リーン分類器モデルの前記ファミリーが前記リーン分類器モデルおよび複数の追加のリーン分類器モデルを含み、前記複数の追加のリーン分類器モデルの各々が異なる数の特有の試験条件を含む、請求項24に記載のシステム。
  28. 前記フル分類器モデルに基づいて前記リーン分類器モデルを生成するステップが、
    異なる重み値および異なるしきい値を使用して第1の条件を試験する決定株をそれぞれ含む複数のリーン分類器モデルを生成するステップを含むような動作を実行するように、前記デバイスプロセッサがプロセッサ実行可能命令で構成される、請求項24に記載のシステム。
  29. 前記デバイスプロセッサが、
    前記複数のリーン分類器モデル内の前記増強決定株と関連付けられたしきい値および重み値を再計算するステップをさらに含む動作を実行するようにプロセッサ実行可能命令で構成される、請求項28に記載のシステム。
  30. 各試験条件が確率値と関連付けられ、前記確率値が、モバイルデバイス挙動が良性であるかどうかを前記モバイルデバイスが判断することをその関連付けられた試験条件が可能にする尤度を特定するように前記有限状態機械を生成するステップを、前記有限状態機械を生成するステップが含むような動作を実行するように、前記サーバがサーバ実行可能命令で構成され、
    前記有限状態機械を前記フル分類器モデルとして前記モバイルデバイスに送信する前に、前記確率値に基づいて前記有限状態機械内で前記複数の増強決定株を編成するステップをさらに含む動作を実行するように、前記サーバがサーバ実行可能命令で構成される、請求項24に記載のシステム。
JP2015550850A 2013-01-02 2013-12-30 モバイルデバイス挙動の効率的分類のために増強決定株ならびに連動した特徴選択および選別アルゴリズムを使用する方法およびシステム Active JP6258970B2 (ja)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
US201361748220P 2013-01-02 2013-01-02
US201361748217P 2013-01-02 2013-01-02
US61/748,220 2013-01-02
US61/748,217 2013-01-02
US201361874129P 2013-09-05 2013-09-05
US61/874,129 2013-09-05
US14/090,261 2013-11-26
US14/090,261 US9684870B2 (en) 2013-01-02 2013-11-26 Methods and systems of using boosted decision stumps and joint feature selection and culling algorithms for the efficient classification of mobile device behaviors
PCT/US2013/078352 WO2014107439A2 (en) 2013-01-02 2013-12-30 Methods and systems of using boosted decision stumps and joint feature selection and culling algorithms for the efficient classification of mobile device behaviors

Publications (3)

Publication Number Publication Date
JP2016510451A true JP2016510451A (ja) 2016-04-07
JP2016510451A5 JP2016510451A5 (ja) 2017-11-02
JP6258970B2 JP6258970B2 (ja) 2018-01-10

Family

ID=51018354

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015550850A Active JP6258970B2 (ja) 2013-01-02 2013-12-30 モバイルデバイス挙動の効率的分類のために増強決定株ならびに連動した特徴選択および選別アルゴリズムを使用する方法およびシステム

Country Status (6)

Country Link
US (1) US9684870B2 (ja)
EP (1) EP2941741A2 (ja)
JP (1) JP6258970B2 (ja)
KR (1) KR101826865B1 (ja)
CN (1) CN104885099B (ja)
WO (1) WO2014107439A2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017505935A (ja) * 2013-12-06 2017-02-23 クアルコム,インコーポレイテッド モバイルデバイスの挙動の効率的な分類のためにアプリケーション固有のモデルおよびアプリケーションの種類に固有のモデルを使用する方法およびシステム
JP2017099274A (ja) * 2015-11-25 2017-06-01 フルークコーポレイションFluke Corporation 集約されたケーブル試験結果データを適用するためのシステム及び方法

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9298494B2 (en) 2012-05-14 2016-03-29 Qualcomm Incorporated Collaborative learning for efficient behavioral analysis in networked mobile device
US9690635B2 (en) 2012-05-14 2017-06-27 Qualcomm Incorporated Communicating behavior information in a mobile computing device
US9202047B2 (en) 2012-05-14 2015-12-01 Qualcomm Incorporated System, apparatus, and method for adaptive observation of mobile device behavior
US9609456B2 (en) 2012-05-14 2017-03-28 Qualcomm Incorporated Methods, devices, and systems for communicating behavioral analysis information
US9324034B2 (en) 2012-05-14 2016-04-26 Qualcomm Incorporated On-device real-time behavior analyzer
US9330257B2 (en) 2012-08-15 2016-05-03 Qualcomm Incorporated Adaptive observation of behavioral features on a mobile device
US9495537B2 (en) 2012-08-15 2016-11-15 Qualcomm Incorporated Adaptive observation of behavioral features on a mobile device
US9319897B2 (en) 2012-08-15 2016-04-19 Qualcomm Incorporated Secure behavior analysis over trusted execution environment
US9747440B2 (en) 2012-08-15 2017-08-29 Qualcomm Incorporated On-line behavioral analysis engine in mobile device with multiple analyzer model providers
US9686023B2 (en) 2013-01-02 2017-06-20 Qualcomm Incorporated Methods and systems of dynamically generating and using device-specific and device-state-specific classifier models for the efficient classification of mobile device behaviors
US10089582B2 (en) 2013-01-02 2018-10-02 Qualcomm Incorporated Using normalized confidence values for classifying mobile device behaviors
US9742559B2 (en) 2013-01-22 2017-08-22 Qualcomm Incorporated Inter-module authentication for securing application execution integrity within a computing device
US9491187B2 (en) 2013-02-15 2016-11-08 Qualcomm Incorporated APIs for obtaining device-specific behavior classifier models from the cloud
US9420029B2 (en) * 2013-07-01 2016-08-16 Cellco Partnership Mobile device application rating
US9947028B1 (en) * 2014-02-27 2018-04-17 Intuit Inc. System and method for increasing online conversion rate of potential users
US9703962B2 (en) * 2014-10-09 2017-07-11 Qualcomm Incorporated Methods and systems for behavioral analysis of mobile device behaviors based on user persona information
US9578049B2 (en) 2015-05-07 2017-02-21 Qualcomm Incorporated Methods and systems for using causal analysis for boosted decision stumps to identify and respond to non-benign behaviors
US20160350657A1 (en) * 2015-06-01 2016-12-01 Qualcomm Incorporated Cross-Module Behavioral Validation
US20170024660A1 (en) * 2015-07-23 2017-01-26 Qualcomm Incorporated Methods and Systems for Using an Expectation-Maximization (EM) Machine Learning Framework for Behavior-Based Analysis of Device Behaviors
EP3136270B1 (en) 2015-08-26 2021-02-24 Viavi Solutions Inc. Raw material identification using spectroscopy
KR101715759B1 (ko) * 2015-09-22 2017-03-15 한국전자통신연구원 멀티코어 환경에서의 악성코드 분석 장치 및 방법
US20170308701A1 (en) * 2016-04-22 2017-10-26 Qualcomm Incorporated Methods and Systems for Intelligently Detecting Malware and Attacks on Client Computing Devices and Corporate Networks
CN108573147B (zh) * 2017-03-10 2020-10-13 武汉安天信息技术有限责任公司 一种恶意样本的筛选装置及方法
WO2018209106A2 (en) 2017-05-10 2018-11-15 Embee Mobile, Inc. System and method for the capture of mobile behavior, usage, or content exposure
JP6767924B2 (ja) 2017-05-19 2020-10-14 東芝映像ソリューション株式会社 システム、方法及びプログラム
JP6767926B2 (ja) 2017-05-23 2020-10-14 東芝映像ソリューション株式会社 電子装置、方法及びプログラム
CN107741899B (zh) * 2017-10-16 2021-07-27 北京小米移动软件有限公司 处理终端数据的方法、装置及系统
CN109308411B (zh) * 2018-08-20 2022-08-30 中国电力科学研究院有限公司 基于人工智能决策树的分层检测软件行为缺陷的方法和系统
US11641406B2 (en) * 2018-10-17 2023-05-02 Servicenow, Inc. Identifying applications with machine learning
TW201921893A (zh) * 2018-12-14 2019-06-01 就肆電競股份有限公司 資料傳輸加速裝置
TWI686064B (zh) * 2019-03-14 2020-02-21 就肆電競股份有限公司 點對點網路加速系統
CN110198244B (zh) * 2019-06-19 2022-02-18 北京百度网讯科技有限公司 面向异构云服务的资源配置方法和装置
US11900273B2 (en) * 2019-09-30 2024-02-13 Juniper Networks, Inc. Determining dependent causes of a computer system event
US20210272025A1 (en) * 2019-12-27 2021-09-02 Stmicroelectronics, Inc. Method and system for updating machine learning based classifiers for reconfigurable sensors
US11948056B2 (en) 2020-12-08 2024-04-02 International Business Machines Corporation Communication-efficient data parallel ensemble boosting
US20240054399A1 (en) * 2021-03-05 2024-02-15 University Of Pittsburgh-Of The Commonwealth System Of Higher Education Nanosecond execution of machine learning algorithms and nanosecond anomaly detection and encoded data transmission using autoencoders with decision tree grid in field programmable gate array and other electronic devices
CN113516189B (zh) * 2021-07-16 2022-08-26 广西师范大学 基于两阶段随机森林算法的网站恶意用户预测方法
US20230096108A1 (en) * 2021-09-30 2023-03-30 Acronis International Gmbh Behavior analysis based on finite-state machine for malware detection

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012087685A1 (en) * 2010-12-23 2012-06-28 Intel Corporation Signature-independent, system behavior-based malware detection

Family Cites Families (196)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5870735A (en) 1996-05-01 1999-02-09 International Business Machines Corporation Method and system for generating a decision-tree classifier in parallel in a multi-processor system
US9195784B2 (en) 1998-08-31 2015-11-24 Cadence Design Systems, Inc. Common shared memory in a verification system
US6532541B1 (en) 1999-01-22 2003-03-11 The Trustees Of Columbia University In The City Of New York Method and apparatus for image authentication
US6647260B2 (en) 1999-04-09 2003-11-11 Openwave Systems Inc. Method and system facilitating web based provisioning of two-way mobile communications devices
US6681331B1 (en) 1999-05-11 2004-01-20 Cylant, Inc. Dynamic software system intrusion detection
US6643802B1 (en) 2000-04-27 2003-11-04 Ncr Corporation Coordinated multinode dump collection in response to a fault
EP1182552A3 (en) 2000-08-21 2003-10-01 Texas Instruments France Dynamic hardware configuration for energy management systems using task attributes
US7234126B2 (en) 2000-08-23 2007-06-19 Interuniversitair Microelektronica Centrum Task concurrency management design method
US7600014B2 (en) 2000-11-16 2009-10-06 Symantec Corporation Method and system for monitoring the performance of a distributed application
US20040068721A1 (en) 2000-11-17 2004-04-08 O'neill Patrick Network for updating firmware and / or software in wireless communication devices
US20030037237A1 (en) 2001-04-09 2003-02-20 Jean-Paul Abgrall Systems and methods for computer device authentication
US7051327B1 (en) 2001-05-08 2006-05-23 Gateway Inc. System for providing data backup and restore with updated version by creating data package based upon configuration data application data and user response to suggestion
US7849360B2 (en) 2001-05-21 2010-12-07 Vir2Us, Inc. Computer system and method of controlling communication port to prevent computer contamination by virus or malicious code
US7401359B2 (en) 2001-12-21 2008-07-15 Mcafee, Inc. Generating malware definition data for mobile computing devices
US7290282B1 (en) 2002-04-08 2007-10-30 Symantec Corporation Reducing false positive computer virus detections
US7694139B2 (en) 2002-10-24 2010-04-06 Symantec Corporation Securing executable content using a trusted computing platform
US7103772B2 (en) 2003-05-02 2006-09-05 Giritech A/S Pervasive, user-centric network security enabled by dynamic datagram switch and an on-demand authentication and encryption scheme through mobile intelligent data carriers
US8201249B2 (en) 2003-05-14 2012-06-12 Northrop Grumman Systems Corporation Steady state computer intrusion and misuse detection
US8458805B2 (en) 2003-06-23 2013-06-04 Architecture Technology Corporation Digital forensic analysis using empirical privilege profiling (EPP) for filtering collected data
WO2005060396A2 (en) 2003-08-18 2005-07-07 The General Hospital Corporation Nanotopographic compositions and methods for cellular organization in tissue engineered structures
KR100623552B1 (ko) 2003-12-29 2006-09-18 한국정보보호진흥원 자동침입대응시스템에서의 위험수준 분석 방법
US7694150B1 (en) 2004-06-22 2010-04-06 Cisco Technology, Inc System and methods for integration of behavioral and signature based security
TW200618610A (en) 2004-07-20 2006-06-01 Qualcomm Inc Method and apparatus for motion vector processing
US7793262B2 (en) 2004-07-29 2010-09-07 International Business Machines Corporation Method and apparatus for facilitating software testing and report generation with interactive graphical user interface
US7559053B2 (en) 2004-08-24 2009-07-07 Microsoft Corporation Program and system performance data correlation
WO2006028558A1 (en) 2004-09-03 2006-03-16 Virgina Tech Intellectual Properties, Inc. Detecting software attacks by monitoring electric power consumption patterns
KR100645735B1 (ko) 2004-10-14 2006-11-15 주식회사 팬택 모바일 플랫폼의 컨텐츠 오동작 통신 검출 장치 및 방법
US8108929B2 (en) 2004-10-19 2012-01-31 Reflex Systems, LLC Method and system for detecting intrusive anomalous use of a software system using multiple detection algorithms
US7561877B2 (en) 2005-03-18 2009-07-14 Qualcomm Incorporated Apparatus and methods for managing malfunctions on a wireless device
US7881291B2 (en) 2005-05-26 2011-02-01 Alcatel Lucent Packet classification acceleration using spectral analysis
US20060288209A1 (en) 2005-06-20 2006-12-21 Vogler Dean H Method and apparatus for secure inter-processor communications
US20070006304A1 (en) 2005-06-30 2007-01-04 Microsoft Corporation Optimizing malware recovery
US8161548B1 (en) 2005-08-15 2012-04-17 Trend Micro, Inc. Malware detection using pattern classification
US8045958B2 (en) 2005-11-21 2011-10-25 Research In Motion Limited System and method for application program operation on a wireless device
US7809670B2 (en) 2005-12-09 2010-10-05 Microsoft Corporation Classification of malware using clustering that orders events in accordance with the time of occurance
US8381297B2 (en) 2005-12-13 2013-02-19 Yoggie Security Systems Ltd. System and method for providing network security to mobile devices
EP1977334A4 (en) 2006-01-25 2011-01-12 Greystripe Inc SYSTEM AND METHOD FOR MANAGING CONTENT IN PRE-EXISTING MOBILE APPLICATIONS
US8490194B2 (en) 2006-01-31 2013-07-16 Robert Moskovitch Method and system for detecting malicious behavioral patterns in a computer, using machine learning
IL181041A0 (en) 2007-01-29 2007-07-04 Deutsche Telekom Ag Improved method and system for detecting malicious behavioral patterns in a computer, using machine learning
US7831237B2 (en) 2006-02-03 2010-11-09 Broadcom Corporation Authenticating mobile network provider equipment
KR100791290B1 (ko) 2006-02-10 2008-01-04 삼성전자주식회사 디바이스 간에 악성 어플리케이션의 행위 정보를 사용하는장치 및 방법
US20070220327A1 (en) 2006-02-23 2007-09-20 Evergrid, Inc., A Delaware Corporation Dynamically Controlled Checkpoint Timing
EP1999925B1 (en) 2006-03-27 2011-07-06 Telecom Italia S.p.A. A method and system for identifying malicious messages in mobile communication networks, related network and computer program product therefor
WO2007117636A2 (en) 2006-04-06 2007-10-18 Smobile Systems, Inc. Malware detection system and method for comprssed data on mobile platforms
US20070283170A1 (en) 2006-06-05 2007-12-06 Kabushiki Kaisha Toshiba System and method for secure inter-process data communication
KR101225374B1 (ko) 2006-06-09 2013-01-22 삼성전자주식회사 이동 통신 단말에 대한 디바이스 관리 장치 및 방법
US20080016339A1 (en) 2006-06-29 2008-01-17 Jayant Shukla Application Sandbox to Detect, Remove, and Prevent Malware
US20080047009A1 (en) 2006-07-20 2008-02-21 Kevin Overcash System and method of securing networks against applications threats
US8788829B2 (en) 2006-08-17 2014-07-22 Aol Inc. System and method for interapplication communications
US7774599B2 (en) 2006-09-15 2010-08-10 Panasonic Corporation Methodologies to secure inter-process communication based on trust
US8201244B2 (en) * 2006-09-19 2012-06-12 Microsoft Corporation Automated malware signature generation
WO2008043109A2 (en) 2006-10-06 2008-04-10 Smobile Systems, Inc. System and method of reporting and visualizing malware on mobile networks
EP1921545A3 (en) 2006-11-07 2013-09-04 Magix Ag Application-Specific Intelligent Backup and Restore System
WO2008067335A2 (en) 2006-11-27 2008-06-05 Smobile Systems, Inc. Wireless intrusion prevention system and method
US8225093B2 (en) 2006-12-05 2012-07-17 Qualcomm Incorporated Providing secure inter-application communication for a mobile operating environment
US7650317B2 (en) 2006-12-06 2010-01-19 Microsoft Corporation Active learning framework for automatic field extraction from network traffic
US7778792B2 (en) 2006-12-08 2010-08-17 Chumby Industries, Inc. Systems and methods for location, motion, and contact detection and tracking in a networked audiovisual device
JP4805116B2 (ja) 2006-12-11 2011-11-02 株式会社日立製作所 情報処理システム、情報処理システムの制御方法、サービス利用装置及びサービス提供装置
US7945955B2 (en) 2006-12-18 2011-05-17 Quick Heal Technologies Private Limited Virus detection in mobile devices having insufficient resources to execute virus detection software
US8769099B2 (en) 2006-12-28 2014-07-01 Yahoo! Inc. Methods and systems for pre-caching information on a mobile computing device
US9021605B2 (en) 2007-01-03 2015-04-28 International Business Machines Corporation Method and system for protecting sensitive data in a program
US7996005B2 (en) 2007-01-17 2011-08-09 Eagency, Inc. Mobile communication device monitoring systems and methods
JP2008271126A (ja) 2007-04-19 2008-11-06 Ntt Docomo Inc 移動端末装置、移動端末装置の診断方法
US8331987B2 (en) 2007-04-19 2012-12-11 Apple Inc. Personal area network systems and devices and methods for use thereof
JP4956292B2 (ja) 2007-06-25 2012-06-20 パナソニック株式会社 情報セキュリティ装置およびカウンタ制御方法
US8713680B2 (en) 2007-07-10 2014-04-29 Samsung Electronics Co., Ltd. Method and apparatus for modeling computer program behaviour for behavioural detection of malicious program
US8245295B2 (en) 2007-07-10 2012-08-14 Samsung Electronics Co., Ltd. Apparatus and method for detection of malicious program using program behavior
US7890443B2 (en) 2007-07-13 2011-02-15 Microsoft Corporation Learning classifiers using combined boosting and weight trimming
WO2009017231A2 (ja) 2007-08-02 2009-02-05 Nec Corporation パターン検査システム、パターン検査装置、方法およびパターン検査用プログラム
CN101350054B (zh) 2007-10-15 2011-05-25 北京瑞星信息技术有限公司 计算机有害程序自动防护方法及装置
EP2249253A1 (en) 2008-01-02 2010-11-10 SanDisk IL Ltd. Storage device having direct user access
US8160975B2 (en) 2008-01-25 2012-04-17 Mcafee, Inc. Granular support vector machine with random granularity
US8719936B2 (en) 2008-02-01 2014-05-06 Northeastern University VMM-based intrusion detection system
US8595834B2 (en) 2008-02-04 2013-11-26 Samsung Electronics Co., Ltd Detecting unauthorized use of computing devices based on behavioral patterns
US7676573B2 (en) 2008-02-08 2010-03-09 Microsoft Corporation Node monitor client cache synchronization for mobile device management
US8320329B2 (en) 2008-03-24 2012-11-27 Cisco Technology, Inc. Policy for a roaming terminal based on a home internet protocol (IP) address
US20090288080A1 (en) 2008-05-13 2009-11-19 Partridge Lucas W Method of Delivering Software Over a Network
US8108323B2 (en) 2008-05-19 2012-01-31 Yahoo! Inc. Distributed spam filtering utilizing a plurality of global classifiers and a local classifier
US20090293121A1 (en) 2008-05-21 2009-11-26 Bigus Joseph P Deviation detection of usage patterns of computer resources
IL191744A0 (en) 2008-05-27 2009-02-11 Yuval Elovici Unknown malcode detection using classifiers with optimal training sets
US20090327168A1 (en) 2008-06-26 2009-12-31 Yahoo! Inc. Playful incentive for labeling content
JP2010016443A (ja) 2008-07-01 2010-01-21 Toshiba Corp 状況認識装置、状況認識方法、及び無線端末装置
JP4710933B2 (ja) 2008-07-09 2011-06-29 ソニー株式会社 学習装置、学習方法、およびプログラム
GB2461870B (en) 2008-07-14 2012-02-29 F Secure Oyj Malware detection
US8069128B2 (en) 2008-08-08 2011-11-29 Yahoo! Inc. Real-time ad-hoc spam filtering of email
US8775333B1 (en) 2008-08-20 2014-07-08 Symantec Corporation Systems and methods for generating a threat classifier to determine a malicious process
US8095964B1 (en) 2008-08-29 2012-01-10 Symantec Corporation Peer computer based threat detection
US8245315B2 (en) 2008-09-10 2012-08-14 Qualcomm Incorporated Remote diagnosis of unauthorized hardware change
US8504504B2 (en) 2008-09-26 2013-08-06 Oracle America, Inc. System and method for distributed denial of service identification and prevention
US8490188B2 (en) 2008-10-16 2013-07-16 Qualys, Inc. Systems and methods for assessing the compliance of a computer across a network
US8984628B2 (en) 2008-10-21 2015-03-17 Lookout, Inc. System and method for adverse mobile application identification
US8533844B2 (en) 2008-10-21 2013-09-10 Lookout, Inc. System and method for security data collection and analysis
US9235704B2 (en) 2008-10-21 2016-01-12 Lookout, Inc. System and method for a scanning API
US8347386B2 (en) 2008-10-21 2013-01-01 Lookout, Inc. System and method for server-coupled malware prevention
US8087067B2 (en) 2008-10-21 2011-12-27 Lookout, Inc. Secure mobile platform system
US9537613B2 (en) 2008-10-24 2017-01-03 Qualcomm Incorporated Acknowledgment based on short cell radio network temporary identifier
US20100107257A1 (en) 2008-10-29 2010-04-29 International Business Machines Corporation System, method and program product for detecting presence of malicious software running on a computer system
IL195081A0 (en) 2008-11-03 2011-08-01 Deutche Telekom Ag Acquisition of malicious code using active learning
JP4576452B2 (ja) 2008-11-06 2010-11-10 イーソル株式会社 オペレーティングシステムおよび情報処理装置
DE102008043954A1 (de) 2008-11-21 2010-05-27 Robert Bosch Gmbh Sensornetzwerksystem, Übertragunsprotokoll, Verfahren zum Wiedererkennen eines Objekts sowie Computerprogramm
US8549625B2 (en) 2008-12-12 2013-10-01 International Business Machines Corporation Classification of unwanted or malicious software through the identification of encrypted data communication
US20100153371A1 (en) 2008-12-16 2010-06-17 Yahoo! Inc. Method and apparatus for blending search results
CN101770453A (zh) 2008-12-31 2010-07-07 华建机器翻译有限公司 基于领域本体结合机器学习模型的汉语文本共指消解方法
US20100192222A1 (en) 2009-01-23 2010-07-29 Microsoft Corporation Malware detection using multiple classifiers
US8793758B2 (en) 2009-01-28 2014-07-29 Headwater Partners I Llc Security, fraud detection, and fraud mitigation in device-assisted services systems
US20100192201A1 (en) 2009-01-29 2010-07-29 Breach Security, Inc. Method and Apparatus for Excessive Access Rate Detection
EP2222048A1 (en) 2009-02-24 2010-08-25 BRITISH TELECOMMUNICATIONS public limited company Detecting malicious behaviour on a computer network
US8266698B1 (en) * 2009-03-09 2012-09-11 Symantec Corporation Using machine infection characteristics for behavior-based detection of malware
US8763127B2 (en) 2009-03-13 2014-06-24 Rutgers, The State University Of New Jersey Systems and method for malware detection
US8490187B2 (en) 2009-03-20 2013-07-16 Microsoft Corporation Controlling malicious activity detection using behavioral models
US8683554B2 (en) 2009-03-27 2014-03-25 Wavemarket, Inc. System and method for managing third party application program access to user information via a native application program interface (API)
US8161130B2 (en) 2009-04-10 2012-04-17 Microsoft Corporation Bottom-up analysis of network sites
EP2425365A4 (en) 2009-04-30 2016-08-24 Ericsson Telefon Ab L M DEVIATING BEHAVIOR OF A USER TERMINAL
US8356001B2 (en) 2009-05-19 2013-01-15 Xybersecure, Inc. Systems and methods for application-level security
US8694624B2 (en) 2009-05-19 2014-04-08 Symbol Technologies, Inc. Systems and methods for concurrent wireless local area network access and sensing
US8332945B2 (en) 2009-06-05 2012-12-11 The Regents Of The University Of Michigan System and method for detecting energy consumption anomalies and mobile malware variants
US9074897B2 (en) 2009-06-15 2015-07-07 Qualcomm Incorporated Real-time data with post-processing
US8701192B1 (en) 2009-06-30 2014-04-15 Symantec Corporation Behavior based signatures
US20110013528A1 (en) 2009-07-16 2011-01-20 Chen Byron H Method for providing presence and location information of mobiles in a wireless network
US8776218B2 (en) 2009-07-21 2014-07-08 Sophos Limited Behavioral-based host intrusion prevention system
US8311956B2 (en) 2009-08-11 2012-11-13 At&T Intellectual Property I, L.P. Scalable traffic classifier and classifier training system
US8953472B2 (en) 2009-09-01 2015-02-10 Nec Europe Ltd. Method for monitoring a network and network including a monitoring functionality
CA2712002C (en) 2009-09-09 2016-08-30 Aastra Technologies Limited Diagnostics methods for a communications device
US8509755B2 (en) 2009-10-30 2013-08-13 Research In Motion Limited System and method for activating a component on an electronic device
US8397301B2 (en) 2009-11-18 2013-03-12 Lookout, Inc. System and method for identifying and assessing vulnerabilities on a mobile communication device
EP2326057A1 (en) 2009-11-20 2011-05-25 British Telecommunications public limited company Detecting malicious behaviour on a network
US20110161452A1 (en) 2009-12-24 2011-06-30 Rajesh Poornachandran Collaborative malware detection and prevention on mobile devices
JP2011138219A (ja) 2009-12-25 2011-07-14 Toshiba Corp 並列プログラム解析結果表示装置および並列プログラム解析結果表示方法
US20120254333A1 (en) 2010-01-07 2012-10-04 Rajarathnam Chandramouli Automated detection of deception in short and multilingual electronic messages
US8458809B2 (en) 2010-01-20 2013-06-04 Research In Motion Limited Apparatus, and an associated method, for facilitating secure operations of a wireless device
CN102859967A (zh) 2010-03-01 2013-01-02 诺基亚公司 用于基于用户交互数据来估计用户特征的方法和设备
US20110219449A1 (en) 2010-03-04 2011-09-08 St Neitzel Michael Malware detection method, system and computer program product
KR101051641B1 (ko) 2010-03-30 2011-07-26 주식회사 안철수연구소 이동통신 단말 및 이를 이용한 행위기반 악성 코드 진단 방법
US8694744B1 (en) 2010-03-31 2014-04-08 Emc Corporation Mobile device snapshot backup
US9043254B2 (en) 2010-04-12 2015-05-26 Siemens Aktiengesellschaft Method for computer-aided closed-loop and/or open-loop control of a technical system
US8521836B2 (en) 2010-04-26 2013-08-27 Blackberry Limited Mobile wireless communications device providing enhanced file transfer management features and related methods
US8570993B2 (en) 2010-05-20 2013-10-29 At&T Mobility Ii Llc Wi-Fi intelligent selection engine
DE102010021825A1 (de) 2010-05-28 2011-12-01 Christmann Informationstechnik + Medien Gmbh & Co. Kg Mehrprozessor-Computersystem
US9449175B2 (en) 2010-06-03 2016-09-20 Nokia Technologies Oy Method and apparatus for analyzing and detecting malicious software
CN101882000B (zh) 2010-06-18 2012-08-22 华南理工大学 一种基于加速度传感器的手势识别方法
US20120180126A1 (en) 2010-07-13 2012-07-12 Lei Liu Probable Computing Attack Detector
US20120016633A1 (en) 2010-07-16 2012-01-19 Andreas Wittenstein System and method for automatic detection of anomalous recurrent behavior
US9294946B2 (en) 2010-08-27 2016-03-22 Qualcomm Incorporated Adaptive automatic detail diagnostic log collection in a wireless communication system
US8424093B2 (en) 2010-11-01 2013-04-16 Kaspersky Lab Zao System and method for updating antivirus cache
US8683591B2 (en) 2010-11-18 2014-03-25 Nant Holdings Ip, Llc Vector-based anomaly detection
US8875286B2 (en) 2010-12-01 2014-10-28 Cisco Technology, Inc. Method and apparatus for detecting malicious software using machine learning techniques
US20120151479A1 (en) 2010-12-10 2012-06-14 Salesforce.Com, Inc. Horizontal splitting of tasks within a homogenous pool of virtual machines
US9710645B2 (en) 2010-12-23 2017-07-18 Ebay Inc. Systems and methods to detect and neutralize malware infected electronic communications
US8762298B1 (en) 2011-01-05 2014-06-24 Narus, Inc. Machine learning based botnet detection using real-time connectivity graph based traffic features
CN102591696A (zh) 2011-01-14 2012-07-18 中国科学院软件研究所 一种手机软件行为数据提取方法及系统
US9326698B2 (en) 2011-02-18 2016-05-03 The Trustees Of The University Of Pennsylvania Method for automatic, unsupervised classification of high-frequency oscillations in physiological recordings
US8695095B2 (en) 2011-03-11 2014-04-08 At&T Intellectual Property I, L.P. Mobile malicious software mitigation
US8554912B1 (en) 2011-03-14 2013-10-08 Sprint Communications Company L.P. Access management for wireless communication devices failing authentication for a communication network
JP5665188B2 (ja) 2011-03-31 2015-02-04 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation ソフトウエア更新を適用した情報処理装置を検査するシステム
US8533857B2 (en) 2011-04-12 2013-09-10 Teletech Holdings, Inc. Methods for providing cross-vendor support services
KR101906834B1 (ko) 2011-04-19 2018-10-11 삼성전자주식회사 휴대단말기의 어플리케이션 리소스 선택장치 및 방법
US9323928B2 (en) 2011-06-01 2016-04-26 Mcafee, Inc. System and method for non-signature based detection of malicious processes
US8819471B2 (en) 2011-06-03 2014-08-26 Apple Inc. Methods and apparatus for power state based backup
US20120317306A1 (en) 2011-06-10 2012-12-13 Microsoft Corporation Statistical Network Traffic Signature Analyzer
US9152882B2 (en) 2011-06-17 2015-10-06 Microsoft Technology Licensing, Llc. Location-aided recognition
US9286182B2 (en) 2011-06-17 2016-03-15 Microsoft Technology Licensing, Llc Virtual machine snapshotting and analysis
CN102202102B (zh) 2011-07-05 2014-08-13 施昊 基于云计算架构的网络服务聚合系统及其聚合方法
WO2013015994A1 (en) 2011-07-27 2013-01-31 Seven Networks, Inc. Monitoring mobile application activities for malicious traffic on a mobile device
US20130203440A1 (en) 2011-07-27 2013-08-08 Qualcomm Labs, Inc. Selectively performing a positioning procedure at an access terminal based on a behavior model
US8782412B2 (en) 2011-08-31 2014-07-15 AstherPal Inc. Secured privileged access to an embedded client on a mobile device
US20130066815A1 (en) 2011-09-13 2013-03-14 Research In Motion Limited System and method for mobile context determination
EP2610776B1 (en) 2011-09-16 2019-08-21 Veracode, Inc. Automated behavioural and static analysis using an instrumented sandbox and machine learning classification for mobile security
US8793593B2 (en) 2011-09-21 2014-07-29 Facebook, Inc. Integrating structured objects and actions generated on external systems into a social networking system
US8886925B2 (en) 2011-10-11 2014-11-11 Citrix Systems, Inc. Protecting enterprise data through policy-based encryption of message attachments
WO2013080096A1 (en) 2011-11-29 2013-06-06 Sony Mobile Communications Ab System and method for providing secure inter-process communications
US9413538B2 (en) 2011-12-12 2016-08-09 Microsoft Technology Licensing, Llc Cryptographic certification of secure hosted execution environments
US9071636B2 (en) 2011-12-21 2015-06-30 Verizon Patent And Licensing Inc. Predictive scoring management system for application behavior
JP2015508540A (ja) 2012-01-06 2015-03-19 オプティオ ラブス リミテッド ライアビリティ カンパニー モバイルコンピューティングにおけるセキュリティを強化するためのシステムおよび方法
US8943204B2 (en) 2012-01-23 2015-01-27 Cellco Partnership Method and system for conserving network resources when sending information to mobile devices
US9832211B2 (en) 2012-03-19 2017-11-28 Qualcomm, Incorporated Computing device to detect malware
US9439077B2 (en) 2012-04-10 2016-09-06 Qualcomm Incorporated Method for malicious activity detection in a mobile station
US9690635B2 (en) 2012-05-14 2017-06-27 Qualcomm Incorporated Communicating behavior information in a mobile computing device
US20130304677A1 (en) 2012-05-14 2013-11-14 Qualcomm Incorporated Architecture for Client-Cloud Behavior Analyzer
US9298494B2 (en) 2012-05-14 2016-03-29 Qualcomm Incorporated Collaborative learning for efficient behavioral analysis in networked mobile device
US9609456B2 (en) 2012-05-14 2017-03-28 Qualcomm Incorporated Methods, devices, and systems for communicating behavioral analysis information
US9324034B2 (en) 2012-05-14 2016-04-26 Qualcomm Incorporated On-device real-time behavior analyzer
US9202047B2 (en) 2012-05-14 2015-12-01 Qualcomm Incorporated System, apparatus, and method for adaptive observation of mobile device behavior
EP2680182B1 (en) 2012-06-29 2016-03-16 GSMK Gesellschaft für sichere Mobile Kommunikation mbH Mobile device and method to monitor a baseband processor in relation to the actions on an application processor
US20140032358A1 (en) 2012-07-25 2014-01-30 Aro, Inc. Sharing Recommendation Agents
US9319897B2 (en) 2012-08-15 2016-04-19 Qualcomm Incorporated Secure behavior analysis over trusted execution environment
US9495537B2 (en) 2012-08-15 2016-11-15 Qualcomm Incorporated Adaptive observation of behavioral features on a mobile device
US20140150100A1 (en) 2012-08-15 2014-05-29 Qualcomm Incorporated Adaptive Observation of Driver and Hardware Level Behavioral Features on a Mobile Device
US9747440B2 (en) 2012-08-15 2017-08-29 Qualcomm Incorporated On-line behavioral analysis engine in mobile device with multiple analyzer model providers
US9330257B2 (en) 2012-08-15 2016-05-03 Qualcomm Incorporated Adaptive observation of behavioral features on a mobile device
US20140096246A1 (en) 2012-10-01 2014-04-03 Google Inc. Protecting users from undesirable content
US9686023B2 (en) 2013-01-02 2017-06-20 Qualcomm Incorporated Methods and systems of dynamically generating and using device-specific and device-state-specific classifier models for the efficient classification of mobile device behaviors
US10089582B2 (en) 2013-01-02 2018-10-02 Qualcomm Incorporated Using normalized confidence values for classifying mobile device behaviors
US9742559B2 (en) 2013-01-22 2017-08-22 Qualcomm Incorporated Inter-module authentication for securing application execution integrity within a computing device
US9491187B2 (en) 2013-02-15 2016-11-08 Qualcomm Incorporated APIs for obtaining device-specific behavior classifier models from the cloud
WO2014165230A1 (en) 2013-03-13 2014-10-09 Lookout, Inc. System and method for changing security behavior of a device based on proximity to another device
US20140279745A1 (en) 2013-03-14 2014-09-18 Sm4rt Predictive Systems Classification based on prediction of accuracy of multiple data models

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012087685A1 (en) * 2010-12-23 2012-06-28 Intel Corporation Signature-independent, system behavior-based malware detection

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
工藤 拓: "部分木を素性とするDecision StumpsとBoosting Algorithmの適用", 電子情報通信学会技術研究報告 VOL.103 NO.407、NLC2003−25〜34 言語理解とコ, JPN6017042867, 30 October 2003 (2003-10-30), JP, pages p.55−62 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017505935A (ja) * 2013-12-06 2017-02-23 クアルコム,インコーポレイテッド モバイルデバイスの挙動の効率的な分類のためにアプリケーション固有のモデルおよびアプリケーションの種類に固有のモデルを使用する方法およびシステム
JP2017099274A (ja) * 2015-11-25 2017-06-01 フルークコーポレイションFluke Corporation 集約されたケーブル試験結果データを適用するためのシステム及び方法

Also Published As

Publication number Publication date
JP6258970B2 (ja) 2018-01-10
US20140188781A1 (en) 2014-07-03
WO2014107439A2 (en) 2014-07-10
KR20150103173A (ko) 2015-09-09
WO2014107439A3 (en) 2015-01-29
CN104885099B (zh) 2018-05-08
KR101826865B1 (ko) 2018-02-07
EP2941741A2 (en) 2015-11-11
US9684870B2 (en) 2017-06-20
CN104885099A (zh) 2015-09-02

Similar Documents

Publication Publication Date Title
JP6258970B2 (ja) モバイルデバイス挙動の効率的分類のために増強決定株ならびに連動した特徴選択および選別アルゴリズムを使用する方法およびシステム
US10089582B2 (en) Using normalized confidence values for classifying mobile device behaviors
KR101848576B1 (ko) 이동 디바이스 거동들의 효율적인 분류를 위한 애플리케이션-특정 및 애플리케이션-타입-특정 모델들을 이용하는 방법들 및 시스템들
US9324034B2 (en) On-device real-time behavior analyzer
JP6235000B2 (ja) クライアントクラウド挙動アナライザのためのアーキテクチャ
US20160078362A1 (en) Methods and Systems of Dynamically Determining Feature Sets for the Efficient Classification of Mobile Device Behaviors
US20170046510A1 (en) Methods and Systems of Building Classifier Models in Computing Devices
US20160232353A1 (en) Determining Model Protection Level On-Device based on Malware Detection in Similar Devices
JP2018533105A (ja) モバイルデバイス挙動を分類するために正規化信頼性値を使用すること
WO2017014901A1 (en) Methods and systems for using an expectation-maximization (em) machine learning framework for behavior-based analysis of device behaviors
JP2018522319A (ja) 非良性挙動を特定し、それに応じるために、ブーストされた判定株の原因分析を使用するための方法およびシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161208

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170921

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20170921

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20171024

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171026

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171113

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171207

R150 Certificate of patent or registration of utility model

Ref document number: 6258970

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250