(57)【要約】【課題】モバイルアプリケーションのデイリーユーザ関与スコアおよびユーザプロフィールを提供すること。【解決手段】方法は、入力アプリケーションを介してモバイルデバイス上で受信されたユーザ入力を検出することと、ユーザ入力が検出された場合に、モバイルデバイス上でユーザ入力と特定のアプリケーションとを関連付け、モバイルデバイス上で特定のアプリケーションとのユーザ相互作用に対応するデータのログを取り、モバイルデバイスにおいてログを取られたデータの使用ログを形成することとを含む。ユーザ相互作用は、入力アプリケーションを介して特定のアプリケーションにユーザによって現在入力されているデータを含む。使用ログは、ユーザまたはモバイルデバイスに対する識別子、アプリケーション識別子、およびタイムスタンプを少なくとも含み、使用ログは、特定のアプリケーションに対するユーザ関与レベルを決定するように構成されている。【選択図】なし【特許請求の範囲】
【請求項１】
モバイルデバイス上で用いられる特定のアプリケーションのユーザ関与レベルを査定するためのコンピュータ実装方法であって、
前記方法は、
入力アプリケーションを介してモバイルデバイス上で受信されたユーザ入力を検出することであって、
前記入力アプリケーションは、前記モバイルデバイス上に少なくとも部分的に格納され、
前記入力アプリケーションは、特定のアプリケーションを含む複数の異なるアプリケーションに対する入力のためのユーザ入力データを受信するように構成されている、ことと、
前記ユーザ入力が検出された場合に、
前記モバイルデバイス上で、前記ユーザ入力と前記特定のアプリケーションとを関連付けることと、
前記モバイルデバイス上で、前記特定のアプリケーションとのユーザ相互作用に対応するデータのログを取ることであって、
前記ユーザ相互作用は、前記入力アプリケーションを介して前記特定のアプリケーションに前記ユーザによって現在入力されているデータを含む、ことと、
前記モバイルデバイスにおいて、前記ログを取られたデータの使用ログを形成することであって、
前記使用ログは、前記ユーザまたは前記モバイルデバイスに対する識別子、アプリケーション識別子、およびタイムスタンプを少なくとも含み、
前記使用ログは、前記特定のアプリケーションに対するユーザ関与レベルを決定するように構成されている、ことと
を行うことと
を含む、方法。
【請求項２】
前記モバイルデバイス上の前記使用ログを維持することと、
第１の間隔にわたって前記モバイルデバイスに対する複数の使用ログを集約することと、
ネットワークインターフェースを介して、前記集約された使用ログを遠隔のアプリケーション関与解析システムに伝送することであって、前記解析システムは、ユーザ関与レベルスコアを計算する、ことと
をさらに含む、請求項１に記載の方法。
【請求項３】
前記入力アプリケーションは、キーパッドアプリケーションであり、前記方法は、
前記モバイルデバイスのディスプレイ上に、グラフィカルキーボードまたはキーパッドを提示することであって、グラフィカル入力が、前記モバイルデバイス上に格納された前記キーパッドアプリケーションによって提供される、ことと、
前記キーパッドアプリケーションが前記モバイルデバイスの動作中にアクティブを維持していることを示すユーザ入力を受信することと
をさらに含む、請求項１に記載の方法。
【請求項４】
前記アプリケーション識別子は、前記特定のアプリケーションのカテゴリ、または、前記特定のアプリケーションが前記モバイルデバイス上に格納されているフォルダを識別する、請求項１に記載の方法。
【請求項５】
所定のユーザ入力は、前記モバイルデバイス上に格納された前記アプリケーションを選択することを含み、前記アプリケーションは、少なくとも１つのユーザ相互作用が要求されるユーザインターフェースを提供し、前記使用ログは、前記特定のアプリケーションのインストールの日または除去の日を含む、請求項１に記載の方法。
【請求項６】
前記特定のアプリケーションに対する複数の使用ログおよび対応する関与レベルスコアは、前記特定のアプリケーションとの前記ユーザの関与レベルを反映している減衰モデルを生成する、請求項１に記載の方法。
【請求項７】
前記特定のアプリケーションは、ウェブサイトであり、前記要求された少なくとも１つのユーザ相互作用は、テキスト入力を含む、請求項１に記載の方法。
【請求項８】
前記ユーザ入力は、所定の入力を含み、前記所定の入力は、
前記アプリケーションを前記モバイルデバイスのメモリ内に格納すること、または
前記モバイルデバイスのストレージから前記アプリケーションを除去すること
のうちのいずれか１つを含む、請求項１に記載の方法。
【請求項９】
モバイルデバイス上に格納されたアプリケーションに対するユーザ関与レベルを決定するためのコンピュータ実装方法であって、
前記方法は、
コンピューティングシステムにおいて、前記モバイルデバイス上で検出された１つ以上のイベントに対する使用ログを受信することであって、
前記１つ以上のイベントは、前記モバイルデバイス上に格納されたキーパッドアプリケーションとのユーザ相互作用を示し、
前記使用ログは、ユーザ選択されたアプリケーションに対するアプリケーション識別子を含み、
前記使用ログは、ユーザ識別子に関連付けられており、
前記ユーザ識別子は、前記ユーザまたは前記モバイルデバイスに関連付けられている、ことと、
前記選択されたアプリケーションに対してユーザ関与レベルを決定することであって、前記決定することは、
前記選択されたアプリケーションに対して前記使用ログに関連付けられた第１の時間間隔と、
前記第１の時間間隔中の使用値であって、前記使用値は、前記第１の時間間隔に関係して前記選択されたアプリケーションに対して入力イベントがいつ記録されたかを示す、使用値と、
前記選択されたアプリケーションに関連付けられた使用イベント値であって、使用イベントは、前記第１の時間間隔内の時間において発生し、前記使用イベント値は、前記選択されたアプリケーションに関連して記録された別個のイベントの数を示す、使用イベント値と、
前記選択されたアプリケーションに対してタイプされた文字の数、１分間あたりにタイプされた文字の数、１日あたりにタイプされた文字の数を示す使用カウント値と
を解析することを含む、ことと
を含む、方法。
【請求項１０】
前記コンピューティングシステムに連結されたデータベース上に前記使用ログを格納することであって、前記使用ログは、ユーザ、アプリケーション、およびタイムスタンプに関連して格納され、前記第１の時間間隔は、日で測定される、こと
をさらに含む、請求項９に記載の方法。
【請求項１１】
前記選択されたアプリケーションは、ユーザ識別子およびアプリケーション識別子を含み、前記決定することは、前記選択されたアプリケーションに対してユーザ相互作用スコアを決定することを含み、前記決定することは、線形スコア減衰モデルを決定することを含み、前記線形スコア減衰モデルは、現在の相互作用スコアにおける前記選択されたアプリケーションに対するユーザ入力アクティビティを有しない日数と、前記相互作用スコアがゼロに低減される場合におけるキーボードアクティビティを有しない日数とを含む、請求項９に記載の方法。
【請求項１２】
前記第１の時間間隔は、前記キーパッドアプリケーションによって決定され、
前記決定することは、前記使用値、前記使用イベント値、および前記使用カウント値を部分的に総和することにより、前記選択されたアプリケーションに対するユーザ相互作用スコアを生成することを含む、請求項９に記載の方法。
【請求項１３】
コンピューティングデバイスによって用いられるアプリケーションのユーザ関与レベルを予測するための方法であって、
前記方法は、
アプリケーションを選択することであって、前記アプリケーションは、アプリケーション識別子を含み、かつ、前記アプリケーションが格納されているモバイルデバイスのユーザに関連付けられている、ことと、
選択されたアプリケーションに対する最終関与レベルスコアを決定するために、アプリケーションデータベースにアクセスすることであって、
前記最終関与レベルスコアは、ユーザ使用ログから計算された数値であり、
前記使用ログは、前記コンピューティングデバイス上で検出された１つ以上のイベントを識別し、
前記１つ以上のイベントは、前記コンピューティングデバイス上に格納されたキーパッドアプリケーションとのユーザ相互作用を示す、ことと、
関与アクティビティが存在しない第１の間隔を定義することであって、前記第１の間隔は、前記アプリケーションに関連付けられたイベントが前記使用ログ内で検出されず、かつ、現在の関与レベルスコアが前記最終関与レベルスコアに等しい時間間隔を反映しており、
前記第１の間隔は、前記アプリケーションに関連付けられた平均時間分布の所定の範囲内にあり、
前記平均時間分布は、前記アプリケーションに対応する少なくとも１つの検出されたイベントを有する複数のユーザにわたって計算される、ことと、
関与アクティビティが存在しない第２の間隔を定義することであって、前記第２の間隔は、前記アプリケーションに関連付けられたイベントが前記使用ログ内で検出されず、かつ、現在の関与レベルスコアが前記最終関与レベルスコアから減少する時間間隔を反映しており、
前記第２の間隔は、前記第１の間隔の後に発生し、
前記第２の間隔は、前記アプリケーションに関連付けられた前記平均時間分布の前記所定の範囲外にある、ことと、
前記アプリケーションに関連付けられたイベントが前記使用ログ内で検出されない場合に、前記第１の間隔および前記第２の間隔で前記アプリケーション関与レベルスコアをモデル化することにより、前記アプリケーション関与レベルスコアを予測することと
を含む、方法。
【請求項１４】
前記第１の間隔は、式Ｅ（Ｔ）によって表され、前記第２の間隔は、Ｅ（Ｔ）＋３＊ＳＤ（Ｔ）によって表され、Ｔは、指定時間期間内で検出されたイベント間の時間を示す指数型ランダム変数である、請求項１３に記載の方法。
【請求項１５】
前記ユーザにユーザ識別子を割り当てることであって、前記ユーザ識別子は、前記ユーザの前記コンピューティングデバイスに関連付けられた前記アプリケーションデータベース上のアプリケーションを識別するために利用され、前記ユーザ識別子は、前記アプリケーションに対する前記最終関与レベルスコアを決定するために、前記アプリケーションデータベースにアクセスするために利用される、こと
をさらに含む、請求項１３に記載の方法。
【請求項１６】
前記ユーザに対するユーザアプリケーションプロフィールを生成することであって、前記ユーザアプリケーションプロフィールは、指定時間期間にわたる前記アプリケーションに対するユーザ識別子、現在の関与レベルスコア、および予測された関与レベルスコアを含む、こと
をさらに含む、請求項１５に記載の方法。
【請求項１７】
前記指定時間期間は、１日以上を含む、請求項１６に記載の方法。
【請求項１８】
前記ユーザアプリケーションプロフィールは、前記モバイルデバイス上に格納された２つ以上のアプリケーションに対して生成される、請求項１６に記載の方法。
【請求項１９】
前記アプリケーションに対するカテゴリを決定することであって、前記カテゴリは、前記アプリケーションに関連付けられた属性によって定義され、前記カテゴリは、前記モバイルデバイス上に格納された１つ以上のアプリケーションに割り当てられている、ことと、
前記カテゴリに割り当てられた各アプリケーションに対する前記最終関与レベルスコアを集約することと、
前記カテゴリに割り当てられたアプリケーションの数にわたって前記最終関与レベルスコアの平均を取ることと、
ユーザカテゴリプロフィールを生成することであって、前記ユーザカテゴリプロフィールは、ユーザ識別子、前記カテゴリ内の各アプリケーションに対する最終関与レベルスコアのリスト項目、および前記カテゴリに対する予測された関与レベルスコアを含む、ことと
をさらに含む、請求項１５に記載の方法。
【請求項２０】
前記ユーザカテゴリプロフィールは、前記モバイルデバイス上に格納された２つ以上のカテゴリに対して生成され、前記２つ以上のカテゴリのうちのカテゴリ内のアプリケーションに対して前記最終関与レベルスコアを重み付けすることをさらに含み、前記カテゴリは、より少ないユーザ相互作用を要求する、請求項１９に記載の方法。
【発明の詳細な説明】
【背景技術】
【０００１】
（背景）
２０１１年において毎年増加する国内総生産（ＧＤＰ）の平均が１５．１兆ドルを上ることに伴い、会社は、その製品／サービスを発展させ、かつ、適切な広告を用いて観衆を狙うという市場戦略を発展させるために、どんな製品／サービスが消費者の関心を得るかに関する見識を常に把握している。製品およびサービスであふれる市場において、何が実際に利用されるか、および何が使用および購入された後にすぐに無視されるかを決定することは、会社にとって常に難しい。様々な戦略は、フィードバックを求め、大抵、調査または他のフィードバック機構の形式への定量化可能な応答を提供するユーザを必要とするように発展させられている。
【０００２】
調査および他のフィードバック機構は、長年わたって、対面調査、紙およびメール調査、記録音声調査から、近年の電子調査までに進化している。その多くのは、対面でフィードバックを歴史的に収集する会社によって、または製品販売サイトに配布された調査のハードコピーによって、またはメールによって発展させられている。しかしながら、新しいテクノロジーの出現に伴い、消費者は、携帯電話および他のコンピューティングデバイスに、ますます増大する時間を費やすことにより、任意の求められたフィードバックが、より容易にアクセス可能であることが必要にされ、例えば、ウェブ形式を介してそれらの電子デバイスを通して利用可能になされ、より少ない時間消費になされることが必要とされる。しかしながら、電子調査において、応答は、常に、消費者が急いで応答し、製品に関する追加のコメントをめったに提供しないというスケール（例えば、１−１０または低−高）で測定されている。
【０００３】
テクノロジーの進歩にもかかわらず、多くの正確なフィードバックは、（例えば、個人インタビューまたは試験体での製品試験を介して）直接的なユーザ入力からくることが依然に残っており、個人インタビューおよび試験体での製品試験の両方が、常に代償および時間を必要とする。消費者フィードバックで収集された情報が重要であるが、そのフィードバックを求めることは、消費者がますますより時間的に制約されるようになる世界において挑戦的である。従って、会社は、現在、例えば、テレビ、モバイルデバイスおよびコンピュータのような電子デバイスとの相互作用を通して間接的な消費者フィードバックを測定する様々な手段を運用している。これは、販売業者、広告主、および製造業者が、何が消費者に関与し、かつ消費者の関心を引くかを決定することを容易にする。しかしながら、様々なデバイスへの消費者の相互作用および入力を監視することは、その情報を提供する消費者の明白な承諾を受け取ることなしに、プラバイシー侵害とみなされ得る。未だに、消費者は、会社が彼らの個人情報（例えば、テキスト、電子メールおよびアカウント情報）を監視することを可能にしそうもない。従って、消費者から直接的なフィードバックを求めることなしに、または、その消費者のプライバシーを侵害することなしに、製品に関心のある定量化可能なレベルを決定する手段が必要とされている。
【発明の概要】
【課題を解決するための手段】
【０００４】
このニーズは、上述した課題を克服するシステム、および追加の利益を提供するシステムに対して存在する。概して、ここでのいくつかの先行または関連のシステムの例、およびそれらの関連付けられた限定事項は、排他的なものではなく、例示的なものであるように意図されている。現存または先行のシステムの他の限定事項は、以下の詳細な説明を読むと、当業者にとって明白になる。
【０００５】
本発明の実施形態は、モバイルアプリケーションに関する関与レベル統計を提供するために、モバイルデバイス上のモバイルアプリケーション使用からのデータを利用するシステムおよび方法を提供する。任意の所与のアプリケーションに対するユーザ関与レベルは、使用ログに基づいて格納され得る。使用ログは、ユーザ入力アプリケーション（例えば、キーパッドアプリケーション）を通して収集される使用データを含み、ユーザ入力アプリケーションは、モバイルデバイスに格納され、ユーザ入力がモバイルデバイス上のモバイルアプリケーションを通して要求されるたびに起動され得る。キーパッドアプリケーションは、いつも、モバイルデバイス上に（しばしば、常にバックグラウンドアプリケーションとして）動作することが可能であり、その結果、所定のイベントが発生するたびに、キーボードは、モバイルデバイスのユーザに対してグラフィカル入力として提示される。ユーザがキーボードと相互作用するたびに、イベント時間、日付、および相互作用が発生されるアプリケーションを識別するアプリケーション識別子が記録される。いくつかの実施形態において、モバイルデバイスの位置も記録される。使用ログは、モバイルデバイス上の様々なアプリケーションに対して記録された複数のイベントを含み得る。
【０００６】
次に、使用ログは、特定のアプリケーションに対してユーザ関与レベルを計算するために、ネットワークにわたって関与解析システムに送信され得る。システムは、指定された時間間隔にわたって使用ログを解析し、その指定された時間間隔の間に、アプリケーション識別子に基づいて特定のアプリケーションに対してイベント（例えば、使用）を推定する。次に、関与レベルスコアは、指定された時間間隔の間の全ての記録されたアプリケーション使用、選択された日に記録されたイベントの数、および選択された日の使用量（例えば、１分あたりに入力された文字）にアクセスすることによって、時間間隔の間の選択された日に対して計算され得る。同様に、スコアは、指定された時間間隔にわたってユーザによって利用されたアプリケーションのカテゴリに対して計算され得る。（システムが日に基づいてスコアを生成するが、他の時間期間も使用され得る。）
【０００７】
アプリケーションに関連付けられたイベントが記録されない日に対して、システムは、その日に対して関与レベルスコアを予測するために、履歴使用ログをさらに解析して、関与レベルの減衰モデルを形成し得る。（減衰モデルは、限定された数のパラメータを含み、それによって広い範囲のアプリケーションに適用可能である。）減衰モデルは、最近の時間に対して同じスコアおよび関心を仮定するが、その後に関心の減衰を仮定する。次に、システムは、確率論を利用して、システムの複数のユーザに基づいて任意の所与のアプリケーションに対して、予測された関与レベルの統計モデルを生成し得る。例えば、モデルは、指定された時間間隔にわたって記録されたイベント（例えば、キーボードイベント）の確率的計算に基づき得て、（例えば、同様のシステムではなく、複数にわたるユーザに基づいて）使用のアプリケーション特有の平均レートを決定し、かつ、そのアプリケーションに対する最終ユーザに記録されたイベントを決定する。
【０００８】
システムは、最初に、特定のアプリケーションがインストールされることを示すログデータを有するユーザの数を決定し得る。次に、システムは、各キーボード使用が独立のイベントであると考えられるキーボードアプリケーションによって定義されるイベントを検出し得る。各イベントの発生を独立変数として維持することによって、システムは、時間をランダム変数として定義し、（例えば、入力のためにキーボードを提示する）アプリケーション内のキーボードの使用の間の時間を測定し得る。既知の使用レートを用いて、変数はその特定のアプリケーションに対する使用の間に時間の平均偏差および標準偏差を決定し得、概して、アプリケーションに対して、時間にわたる使用レートおよび使用曲線を決定し得る。
【０００９】
システムは、アプリケーションの一般公衆の関心を決定するために、広告をどのように狙うかを知りたい広告者、ならびに、アプリケーション開発者および流通業者にフィードバックをさらに提供し得る。フィードバックは、ユーザアプリケーションプロフィールおよびユーザカテゴリプロフィールで提供され得る。プロフィールは、（例えば、記録されたイベントを含む時間間隔に対して）計算されたスコア、および（例えば、記録されるイベントがない時間間隔に対して）予測されたスコアに基づき得る。スコア減衰モデルは、それらのプロフィールにおいて予測されたスコアを決定するために、アプリケーションの各々に対しても、アプリケーションのカテゴリに対しても生成され得る。
【００１０】
さらに、システムは、例えば、広告者またはアプリケーション開発者に対して、アプリケーションプログラミングインターフェース（ＡＰＩ）（例えば、ウェブサービス）を提供し得、アプリケーションプログラミングインターフェース（ＡＰＩ）は、アプリケーションに関する使用データを提供するだけではなく、追加のデータ、例えば、アプリケーションがインストール／除去された日付および時間（そのようなインストール／除去に関連付けられたＧＰＳデータを含む）、キーボード、音声認識、または他の入力システムを介するワードカウント、これらの入力システムを介するレターカウント、セッションデータ（所与の時間期間内のレターまたはワードの数）、動作システム（Ａｎｄｒｏｉｄ、ｉＯＳ等）を介して利用可能な任意の他のアプリケーションプログラミングインターフェース（ＡＰＩ）データ、および、外部ソースから得られた人口統計のデータも提供する。従って、システムは、アプリケーションに対して相互作用の強度（例えば、相互作用が所与のセッションに対して散在的であるか、または高強度であるか）を入手し得る。ユーザ特有のデータは、匿名ユーザＩＤで代替され得、アプリケーションとの相互作用は、アプリケーションカテゴリ（例えば、ニュースアプリケーション、スポーツアプリケーション、ゲーム、ビジネスアプリケーション等）に集約され得、アプリケーションカテゴリが、収集されたデータを匿名にすることをさらに助け得る。
【００１１】
本願明細書は、例えば、以下の項目も提供する。
（項目１）
モバイルデバイス上で用いられる特定のアプリケーションのユーザ関与レベルを査定するためのコンピュータ実装方法であって、
上記方法は、
入力アプリケーションを介してモバイルデバイス上で受信されたユーザ入力を検出することであって、
上記入力アプリケーションは、上記モバイルデバイス上に少なくとも部分的に格納され、
上記入力アプリケーションは、特定のアプリケーションを含む複数の異なるアプリケーションに対する入力のためのユーザ入力データを受信するように構成されている、ことと、
上記ユーザ入力が検出された場合に、
上記モバイルデバイス上で、上記ユーザ入力と上記特定のアプリケーションとを関連付けることと、
上記モバイルデバイス上で、上記特定のアプリケーションとのユーザ相互作用に対応するデータのログを取ることであって、
上記ユーザ相互作用は、上記入力アプリケーションを介して上記特定のアプリケーションに上記ユーザによって現在入力されているデータを含む、ことと、
上記モバイルデバイスにおいて、上記ログを取られたデータの使用ログを形成することであって、
上記使用ログは、上記ユーザまたは上記モバイルデバイスに対する識別子、アプリケーション識別子、およびタイムスタンプを少なくとも含み、
上記使用ログは、上記特定のアプリケーションに対するユーザ関与レベルを決定するように構成されている、ことと
を行うことと
を含む、方法。
（項目２）
上記モバイルデバイス上の上記使用ログを維持することと、
第１の間隔にわたって上記モバイルデバイスに対する複数の使用ログを集約することと、
ネットワークインターフェースを介して、上記集約された使用ログを遠隔のアプリケーション関与解析システムに伝送することであって、上記解析システムは、ユーザ関与レベルスコアを計算する、ことと
をさらに含む、上記項目に記載の方法。
（項目３）
上記入力アプリケーションは、キーパッドアプリケーションであり、上記方法は、
上記モバイルデバイスのディスプレイ上に、グラフィカルキーボードまたはキーパッドを提示することであって、グラフィカル入力が、上記モバイルデバイス上に格納された上記キーパッドアプリケーションによって提供される、ことと、
上記キーパッドアプリケーションが上記モバイルデバイスの動作中にアクティブを維持していることを示すユーザ入力を受信することと
をさらに含む、上記項目のいずれかに記載の方法。
（項目４）
上記アプリケーション識別子は、上記特定のアプリケーションのカテゴリ、または、上記特定のアプリケーションが上記モバイルデバイス上に格納されているフォルダを識別する、上記項目のいずれかに記載の方法。
（項目５）
所定のユーザ入力は、上記モバイルデバイス上に格納された上記アプリケーションを選択することを含み、上記アプリケーションは、少なくとも１つのユーザ相互作用が要求されるユーザインターフェースを提供し、上記使用ログは、上記特定のアプリケーションのインストールの日または除去の日を含む、上記項目のいずれかに記載の方法。
（項目６）
上記特定のアプリケーションに対する複数の使用ログおよび対応する関与レベルスコアは、上記特定のアプリケーションとの上記ユーザの関与レベルを反映している減衰モデルを生成する、上記項目のいずれかに記載の方法。
（項目７）
上記特定のアプリケーションは、ウェブサイトであり、上記要求された少なくとも１つのユーザ相互作用は、テキスト入力を含む、上記項目のいずれかに記載の方法。
（項目８）
上記ユーザ入力は、所定の入力を含み、上記所定の入力は、
上記アプリケーションを上記モバイルデバイスのメモリ内に格納すること、または
上記モバイルデバイスのストレージから上記アプリケーションを除去すること
のうちのいずれか１つを含む、上記項目のいずれかに記載の方法。
（項目９）
モバイルデバイス上に格納されたアプリケーションに対するユーザ関与レベルを決定するためのコンピュータ実装方法であって、
上記方法は、
コンピューティングシステムにおいて、上記モバイルデバイス上で検出された１つ以上のイベントに対する使用ログを受信することであって、
上記１つ以上のイベントは、上記モバイルデバイス上に格納されたキーパッドアプリケーションとのユーザ相互作用を示し、
上記使用ログは、ユーザ選択されたアプリケーションに対するアプリケーション識別子を含み、
上記使用ログは、ユーザ識別子に関連付けられており、
上記ユーザ識別子は、上記ユーザまたは上記モバイルデバイスに関連付けられている、ことと、
上記選択されたアプリケーションに対してユーザ関与レベルを決定することであって、上記決定することは、
上記選択されたアプリケーションに対して上記使用ログに関連付けられた第１の時間間隔と、
上記第１の時間間隔中の使用値であって、上記使用値は、上記第１の時間間隔に関係して上記選択されたアプリケーションに対して入力イベントがいつ記録されたかを示す、使用値と、
上記選択されたアプリケーションに関連付けられた使用イベント値であって、使用イベントは、上記第１の時間間隔内の時間において発生し、上記使用イベント値は、上記選択されたアプリケーションに関連して記録された別個のイベントの数を示す、使用イベント値と、
上記選択されたアプリケーションに対してタイプされた文字の数、１分間あたりにタイプされた文字の数、１日あたりにタイプされた文字の数を示す使用カウント値と
を解析することを含む、ことと
を含む、方法。
（項目１０）
上記コンピューティングシステムに連結されたデータベース上に上記使用ログを格納することであって、上記使用ログは、ユーザ、アプリケーション、およびタイムスタンプに関連して格納され、上記第１の時間間隔は、日で測定される、こと
をさらに含む、上記項目のいずれかに記載の方法。
（項目１１）
上記選択されたアプリケーションは、ユーザ識別子およびアプリケーション識別子を含み、上記決定することは、上記選択されたアプリケーションに対してユーザ相互作用スコアを決定することを含み、上記決定することは、線形スコア減衰モデルを決定することを含み、上記線形スコア減衰モデルは、現在の相互作用スコアにおける上記選択されたアプリケーションに対するユーザ入力アクティビティを有しない日数と、上記相互作用スコアがゼロに低減される場合におけるキーボードアクティビティを有しない日数とを含む、上記項目のいずれかに記載の方法。
（項目１２）
上記第１の時間間隔は、上記キーパッドアプリケーションによって決定され、
上記決定することは、上記使用値、上記使用イベント値、および上記使用カウント値を部分的に総和することにより、上記選択されたアプリケーションに対するユーザ相互作用スコアを生成することを含む、上記項目のいずれかに記載の方法。
（項目１３）
コンピューティングデバイスによって用いられるアプリケーションのユーザ関与レベルを予測するための方法であって、
上記方法は、
アプリケーションを選択することであって、上記アプリケーションは、アプリケーション識別子を含み、かつ、上記アプリケーションが格納されているモバイルデバイスのユーザに関連付けられている、ことと、
選択されたアプリケーションに対する最終関与レベルスコアを決定するために、アプリケーションデータベースにアクセスすることであって、
上記最終関与レベルスコアは、ユーザ使用ログから計算された数値であり、
上記使用ログは、上記コンピューティングデバイス上で検出された１つ以上のイベントを識別し、
上記１つ以上のイベントは、上記コンピューティングデバイス上に格納されたキーパッドアプリケーションとのユーザ相互作用を示す、ことと、
関与アクティビティが存在しない第１の間隔を定義することであって、上記第１の間隔は、上記アプリケーションに関連付けられたイベントが上記使用ログ内で検出されず、かつ、現在の関与レベルスコアが上記最終関与レベルスコアに等しい時間間隔を反映しており、
上記第１の間隔は、上記アプリケーションに関連付けられた平均時間分布の所定の範囲内にあり、
上記平均時間分布は、上記アプリケーションに対応する少なくとも１つの検出されたイベントを有する複数のユーザにわたって計算される、ことと、
関与アクティビティが存在しない第２の間隔を定義することであって、上記第２の間隔は、上記アプリケーションに関連付けられたイベントが上記使用ログ内で検出されず、かつ、現在の関与レベルスコアが上記最終関与レベルスコアから減少する時間間隔を反映しており、
上記第２の間隔は、上記第１の間隔の後に発生し、
上記第２の間隔は、上記アプリケーションに関連付けられた上記平均時間分布の上記所定の範囲外にある、ことと、
上記アプリケーションに関連付けられたイベントが上記使用ログ内で検出されない場合に、上記第１の間隔および上記第２の間隔で上記アプリケーション関与レベルスコアをモデル化することにより、上記アプリケーション関与レベルスコアを予測することと
を含む、方法。
（項目１４）
上記第１の間隔は、式Ｅ（Ｔ）によって表され、上記第２の間隔は、Ｅ（Ｔ）＋３＊ＳＤ（Ｔ）によって表され、Ｔは、指定時間期間内で検出されたイベント間の時間を示す指数型ランダム変数である、上記項目のいずれかに記載の方法。
（項目１５）
上記ユーザにユーザ識別子を割り当てることであって、上記ユーザ識別子は、上記ユーザの上記コンピューティングデバイスに関連付けられた上記アプリケーションデータベース上のアプリケーションを識別するために利用され、上記ユーザ識別子は、上記アプリケーションに対する上記最終関与レベルスコアを決定するために、上記アプリケーションデータベースにアクセスするために利用される、こと
をさらに含む、上記項目のいずれかに記載の方法。
（項目１６）
上記ユーザに対するユーザアプリケーションプロフィールを生成することであって、上記ユーザアプリケーションプロフィールは、指定時間期間にわたる上記アプリケーションに対するユーザ識別子、現在の関与レベルスコア、および予測された関与レベルスコアを含む、こと
をさらに含む、上記項目のいずれかに記載の方法。
（項目１７）
上記指定時間期間は、１日以上を含む、上記項目のいずれかに記載の方法。
（項目１８）
上記ユーザアプリケーションプロフィールは、上記モバイルデバイス上に格納された２つ以上のアプリケーションに対して生成される、上記項目のいずれかに記載の方法。
（項目１９）
上記アプリケーションに対するカテゴリを決定することであって、上記カテゴリは、上記アプリケーションに関連付けられた属性によって定義され、上記カテゴリは、上記モバイルデバイス上に格納された１つ以上のアプリケーションに割り当てられている、ことと、
上記カテゴリに割り当てられた各アプリケーションに対する上記最終関与レベルスコアを集約することと、
上記カテゴリに割り当てられたアプリケーションの数にわたって上記最終関与レベルスコアの平均を取ることと、
ユーザカテゴリプロフィールを生成することであって、上記ユーザカテゴリプロフィールは、ユーザ識別子、上記カテゴリ内の各アプリケーションに対する最終関与レベルスコアのリスト項目、および上記カテゴリに対する予測された関与レベルスコアを含む、ことと
をさらに含む、上記項目のいずれかに記載の方法。
（項目２０）
上記ユーザカテゴリプロフィールは、上記モバイルデバイス上に格納された２つ以上のカテゴリに対して生成され、上記２つ以上のカテゴリのうちのカテゴリ内のアプリケーションに対して上記最終関与レベルスコアを重み付けすることをさらに含み、上記カテゴリは、より少ないユーザ相互作用を要求する、上記項目のいずれかに記載の方法。
（摘要）
システムは、モバイルデバイス上のアプリケーション使用データのログを取り、解析システム上のデータを処理し、現在のスコアおよび予測されたスコアを、例えば第三者に出力する。システムは、アプリケーション関連使用データのログを取り、それは、例えばモバイルデバイス上のバックグラウンドで動作しているキーボードアプリケーションを介して収集される。その後、システムは、ログを取られた使用データと、特定のアプリケーションに対応するイベントとを評価する。イベントは、アプリケーションとのユーザ関与レベルをスコア付けするために解析され得る（例えば、１日あたりに所与のアプリケーションに対してより多くのイベントが記録されると、ユーザはそのアプリケーションにより多く関与している）。関与レベルは、さらに、スコア減衰モデルが生成され得る履歴使用ログデータに基づいて予測され得る。
【図面の簡単な説明】
【００１２】
【図１】図１は、本発明のいくつかの実施形態が実装され得るコンピューティング環境の例を例示する。
【００１３】
【図２】図２は、アプリケーションが格納されるモバイルデバイスまたは適切なコンピューティングデバイスにおけるコンポーネントのブロックダイヤグラムである。
【００１４】
【図３】図３は、図２のモバイルデバイスに格納されたアプリケーションに対してユーザ関与レベルを決定するように構成されたコンピューティングシステムにおけるブロックダイヤグラムである。
【００１５】
【図４】図４は、モバイルデバイスとのユーザ相互作用に基づいて、使用ログをコンパイルするためにモバイルデバイスへのユーザ入力を解析する方法を例示するフローダイヤグラムである。
【００１６】
【図５】図５は、モバイルデバイスに格納されたアプリケーションに対して関与レベルスコアを決定するためにユーザのモバイルデバイスからの使用ログを解析する方法を例示するフローダイヤグラムである。
【００１７】
【図６】図６は、線形減衰モデルに基づいてユーザの関与レベルスコアを予測する方法を例示するフローダイヤグラムである。
【００１８】
【図７】図７は、線形減衰モデルのグラフィカル表示を例示する。
【００１９】
【図８】図８は、図３のコンピューティングシステムによって生成された例示的なユーザアプリケーションプロフィールを例示する。
【００２０】
【図９】図９は、図３のコンピューティングシステムによって生成された例示的なユーザカテゴリプロフィールを例示する。
【発明を実施するための形態】
【００２１】
本発明の様々な実装がここで説明される。以下の説明は、これらの実装の徹底的な理解および実現可能な説明に具体的な詳細を提供する。しかしながら、当業者は、本発明がこれらの詳細の多数を伴わずに実践され得ることを理解する。加えて、様々な実装の関連説明を不必要に曖昧にすることを避けるために、いくつかの公知の構造および機能は、詳細に示されず、説明されなくてもよい。以下に示される説明に使用される専門用語は、たとえそれが本発明のある具体的な実装の詳細な説明に関連して使用されても、その最も広範囲で合理的な方法で解釈されるように意図されている。
【００２２】
この詳細な説明の範囲を限定することなしに、本開示の実施形態に従うシステム、装置、方法およびそれらの関連結果の実施例が以下に与えられる。他の方法で定義されない限り、本明細書に使用される全ての技術的および科学的用語は、本開示が関連する当業者によって共通に理解されるように、同じ意味を有する。矛盾する場合に、定義を含めて、本明細書は制御する。この詳細な説明に使用される用語は、概して、分野において、本開示内容の文脈において、および各用語が使用される具体的な文脈において、それらの一般的な意味を有する。便宜上、ある用語は、例えば、イタリック体および／または引用符を用いて強調され得る。強調の使用は、用語の範囲および意味に影響を与えず、同じ文脈において強調されるか否かにかかわらず、用語の範囲および意味は、同じである。同じものは２つ以上の方法で説明されることが認識される。
【００２３】
その結果として、代替的な言葉および同義語は、本明細書に議論される用語のうちの任意の１つ以上に対して使用され得、用語が本明細書において詳細に述べられ、議論されるか否かにかかわらず、代替的な言葉および同義語に特別な重要性は課されていない。ある用語の同義語が提供される。１つ以上の同義語の詳説は、他の同義語の使用を排除しない。本明細書において議論される任意の用語の例を含めて、本明細書におけるいずれの例の使用は、単に例示的であるが、本開示の範囲および意味、または任意の例として挙げられた用語の範囲および意味をさらに限定するように意図されていない。同様に、本開示は、この明細書において与えられる様々な実施形態に限定されない。
【００２４】
（システム概説）
本明細書における議論は、本願発明の局面が実装され得る適切なコンピューティング環境の簡単な一般的説明を提供する。必要とされないが、システムの局面は、汎用のコンピュータ、例えば、モバイルデバイス、サーバコンピュータまたはパーソナルコンピュータによって実行されるルーチンのようなコンピュータ実行可能な命令の一般的文脈で説明される。当業者は、システムが、他の通信、データ処理、またはコンピュータシステム構成で実践され得ることを認識し、システムは、インターネット機器、手持ちデバイス（パーソナルデジタルアシスタント（ＰＤＡ）を含む）、あらゆる種類のセルラーまたはモバイルフォン、着用可能なコンピュータ、内蔵システム、車両ベースのコンピュータ、マルチプロセッサシステム、マイクロプロセッサベースまたはプログラマブル消費者電子機器、セットトップボックス、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ等を含む。実際に、用語「コンピュータ」、および「モバイルデバイス」は、本明細書において概して互換可能で使用され、上述したデバイスおよびシステムのいずれ、および、任意のデータプロセッサを指す。
【００２５】
システムの局面は、本明細書において詳細に説明されるコンピュータ実行可能な命令ののうちの１つ以上を行うように特別にプログラム化、構成または構築される特殊用途のコンピューティングデバイスまたはデータプロセッサに内蔵され得る。システムの局面はまた、分散型コンピューティング環境で実践され得、そこにおいて、タスクまたはモジュールは、通信ネットワーク（例えば、ローカルエリアネットワーク（ＬＡＮ）、広域エリアネットワーク（ＷＡＮ）、またはインターネット）を通してリンクされるリモート処理デバイスによって行われる。分散型コンピューティング環境において、プログラムモジュールは、ローカルおよびリモートメモリストレージデバイスの両方に位置し得る。
【００２６】
システムの局面は、コンピュータ読み取り可能な媒体に格納または分散され得、コンピュータ読み取り可能な媒体は、磁気または光学読み取り可能なディスク、有線または事前にプログラム化されたチップ（例えば、ＥＥＰＲＯＭまたはフラッシュ半導体チップ）、ナノテクノロジーメモリ、生体メモリ、または他のデータストレージ媒体を含む。代替的に、コンピュータに実装された命令、データ構造、スクリーンディスプレイ、およびシステムの局面の下での他のデータは、インターネットにわたって、または（ワイヤレスネットワークを含む）他のネットワークにわたって、期間に対して伝播媒体（例えば、電磁波、音波等）上の伝播信号に分散され得、または、それらは、任意のアナログまたはデジタルネットワーク（パケット交換方式、回路交換方式、または他の方式）上に提供され得る。当業者は、システムの一部分がサーバコンピュータに駐在するが、対応する部分がクライアントコンピュータ（例えば、モバイルまたはポータブルデバイス）に駐在し、従って、あるハードウェアプラットフォームが本明細書において説明されるが、システムの局面がネットワークのノードに同等に適用可能であることを認識する。代替的な実施形態において、モバイルデバイスまたはポータブルデバイスは、サーバ部分を表し得るが、サーバは、クライアント部分を表し得る。
【００２７】
本発明の局面は、ここで説明される。最初に、本発明が実装され得る適切または代表的な環境は、図１を参照して提供される。環境は、アプリケーション使用データをアプリケーション関与解析システムに提供する様々な入力に連結されたネットワークを含む。様々な入力は、モバイルデバイス（電話）およびオンラインモバイルアプリケーションストアを含む。アプリケーション関与解析システムは、アプリケーション関与レベルを決定する様々な方法を行うシステムによって処理されるデータを格納する様々なデータベースにさらに連結される。モバイルデバイス、解析システムおよび対応する方法の各々のさらなる詳細は、残りの図面を参照してさらに説明される。
【００２８】
（代表的なシステム環境）
図１は、本発明の実施形態が実装され得るコンピューティング環境１００の例を例示する。図１に示されるように、１つ以上のアプリケーションは、モバイルデバイス１１０、例えば、スマートフォン、電子リーダー、タブレットコンピュータ、ラップトップコンピュータ、またはアプリケーションを格納し、かつ動作させることが可能な他のコンピューティングデバイスに格納され得る。モバイルデバイス１１０は、ワイヤレス接続（例えば、セルラーまたはＷｉＦｉ）を介してネットワーク１２０に連結され得るか、または有線（示されていない）を介して、ネットワーク（例えば、インターネット）に連結されるコンピュータに連結され得る。モバイルデバイス１１０は、ユーザ相互作用（例えば、音声、テキスト、および／または手書き入力）を受信するための様々な入力機構（例えば、マイクロフォン、キーパッド／キーボード、および／またはタッチスクリーン）を含み得る。特に、キーボード機構は、モバイルデバイス１１０に格納されるバックグラウンドキーボードまたはキーパッドアプリケーションによって提供され得、ユーザ相互作用のログを取り、かつ、ネットワーク１２０を介してそれらをアプリケーション関与解析システム１２２に通信することが可能であり得る。（キーパッドアプリケーションは、便宜のために概して以下に説明されるが、システムは、本明細書に説明される機能を提供する任意のユーザ入力アプリケーションを同等に使用し得る。さらに、システムは、概してアプリケーションとのユーザの相互作用に対するデータを提供するように説明されるが、ウェブサイトまたは任意の他のデータとのユーザの相互作用、または実行可能なユーザの相互作用は、システムによって提供され得る。）
【００２９】
システム環境は、ネットワーク１２０に連結される様々な他のエンティティをさらに含み、様々な他のエンティティは、アプリケーション関与解析システム１２２にアプリケーションデータを提供することが可能である。例えば、アプリケーション「ａｐｐ」ストアは、様々なサービスプロバイダ（例えば、Ａｍａｚｏｎ（Ａｐｐｓｔｏｒｅ）、Ａｐｐｌｅ（Ａｐｐ  Ｓｔｏｒｅ）、Ｇｏｏｇｌｅ（Ｇｏｏｇｌｅ  Ｐｌａｙ）、Ｂｌａｃｋｂｅｒｒｙ（Ａｐｐ  Ｗｏｒｌｄ）、Ｍｉｃｒｏｓｏｆｔ（Ｗｉｎｄｏｗｓ（登録商標）Ｐｈｏｎｅ  Ｓｔｏｒｅ）、Ｎｏｋｉａ（Ｎｏｋｉａ  Ｓｔｏｒｅ）、およびＳａｍｓｕｎｇ（Ｓａｍｓｕｎｇ  Ａｐｐｓ））を通して提供される。これらのストアの各々は、アプリケーションデータ（例えば、アプリケーション名前、開発者、購入価格、デイリーダウンロードレート、アプリケーションカテゴリ等）を提供し得、このデータは、本明細書に説明されるシステムによって、取得、格納、操作および報告され得る。
【００３０】
アプリケーション関与解析システム１２２、および／またはキーパッドアプリケーションのためのシステム管理者１１８はまた、アプリケーションデータ、更新等をシステムに提供するために、例えば、コンピュータを通して、ネットワークにアクセスし得る。第三者１１６（例えば、統計データを生成または提供するデータ収集代理店）はまた、ネットワーク１２０を通してシステム１２２にデータを提供し得る。
【００３１】
アプリケーション関与解析システム（「システム」とも呼ばれる）は、ワイヤレス接続または有線接続（例えば、Ｅｔｈｅｒｎｅｔ（登録商標）、ＩＥＥＥ８０２．１１、またはシステムとネットワークとの間で形成される当分野に既知の他の通信チャンネル）を介してネットワークに連結されたサーバコンピュータであり得る。アプリケーション関与解析システムは、特定のユーザの、アプリケーションとの関与レベルを決定するために、ネットワークを通して様々なソースからアプリケーションデータを収集する。
【００３２】
システム１２２は、アプリケーション使用ログ１２４、一般アプリケーションデータ１２６（例えば、カテゴリ、名前、識別子、プラットフォーム）、およびデバイス関連データ１２８（例えば、識別番号、格納されたアプリケーション項目、たとえ付加的または代替的でも、ユーザ関連データが、例えば、関連ユーザ名前で可能され得る）を格納するために使用される様々なデータベースにさらに連結され得る。概して、システムは、個々のユーザデータを追跡しないが、むしろデバイスを追跡する（ただし、時々、この両方が本明細書において互換可能に使用され得る）。アプリケーション使用ログは、本明細書において、使用ログ、キーパッドまたはキーボードログ、またはアプリケーションログとも呼ばれ得る。ログは、モバイルデバイスに格納された別のアプリケーションのインターフェース内に示されるキーパッドアプリケーションによって生成されるキーボードとのユーザ相互作用からなる。
【００３３】
本明細書において「一実施形態」または「実施形態」への参照は、実施形態に関連して説明される特定の特徴、構造、または特性が本開示の少なくとも１つの実施形態内に含まれることを意味する。本明細書の様々な箇所での「一実施形態内」という言葉の出現は、必ずしも、全て同じ実施形態を指さず、互いに他の実施形態を排他的である別個または代替的な実施形態でもない。さらに、いつくかの実施形態によって示されるが、他の実施形態に示されない様々な特徴が説明される。同様に、いくつかの実施形態にとって必要条件であるが、他の実施形態にとってそうでもない様々な必要条件が説明される。
【００３４】
（モバイルデバイス）
図２は、本発明の実施形態に利用され得るモバイルデバイス２００のブロックダイヤグラムを例示する。モバイルデバイス２００は、命令を用いて符号化されたストレージ媒体を有するコンピューティングデバイスであり得、命令は、これらの命令内に開示される方法を行うプロセッサによって実行されることが可能である。モバイルデバイス２００は、スマートフォン、タブレットコンピュータ、ネットブック、モバイルＧＰＳナビゲーションデバイス、固定電話または通信コンソールまたは装置、表面またはタブレットトップコンピュータ、デスクトップコンピュータ、ｅリーダー、パーソナルワイヤレスデバイス（例えば、モバイルホットスポット）、またはアプリケーションを格納し、かつモバイルデバイス２００のディスプレイ上に仮想キーボードを生成することが可能な任意の他のデバイスであり得る。モバイルデバイス２００は、アプリケーション関与解析システムに情報を提供し、かつ、ユーザ相互作用、またはモバイルデバイス２００上の仮想キーボードへの入力を記録し、一時的に格納するように構成された様々なハードウェアおよびソフトウェアコンポーネントを含む。モバイルデバイス２００内のコンポーネントの各々は、これらのコンポーネントの間でデータを転送することが可能なシステムバス（示されていない）に接続され得る。モバイルデバイス２００は、電源（例えば、バッテリー）を有し得、電源は、モバイルデバイス２００内のコンポーネントの各々に電力を提供することが可能である。
【００３５】
モバイルデバイス２００は、セルラー通信ネットワーク（例えば、ＧＳＭ（登録商標）、ＣＤＭＡ、３Ｇ、４Ｇ）を有する無線ネットワーク、インターネットを有するローカルワイヤレスエリアネットワーク（ＷｉＦｉ）、近接場通信（ＮＦＣ、ＲＦＩＤ）、Ｂｌｕｅｔｏｏｔｈ（登録商標）、および衛星（ＧＰＳ）を介して通信可能な１つ以上のアンテナを含む。アンテナ２０２は、プロセッサ２１０に連結され得、プロセッサ２１０は、前述したネットワークおよびモバイルデバイス２００に通信信号を送信し、それらからの通信信号を受信することが可能である。様々な入力２０６および出力２０４も、モバイルデバイス２００内に含まれる。例えば、入力は、タッチスクリーン、キーまたはボタン、加速度計、カメラ、およびマイクロフォンをさらに含み得る。出力は、例えば、スピーカおよびディスプレイを含み得る。入力および出力の各々は、プロセッサに連結され、プロセッサは、モバイルデバイスの機能を行う（例えば、入力を通してデータを受信し、出力にデータ送信し、およびモバイルデバイス２００上のメモリ要素またはストレージからのデータを格納し、読み出す）ことが可能である。
【００３６】
プロセッサ２１０は、デバイス２００のメモリ要素２１２内に格納されたデータまたはアプリケーションと通信し得る。プロセッサは、モバイルデバイス２００内のさらなるコンポーネントに依存して、デジタル信号プロセッサ（ＤＳＰ）、アプリケーション／グラフィックプロセッサ、または他のタイプのプロセッサをさらに含み得る。プロセッサ２１０は、１つ以上のメモリ要素に連結され得、１つ以上のメモリ要素は、一時的および／または永久的ストレージと、読み取り専用および書き込み可能の両方のメモリ（例えば、静的および動的ランダムアクセスメモリ（Ｓ／ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、書き込み可能な不揮発性メモリ（例えば、ＦＬＡＳＨメモリ）、ハードドライブ、ＳＩＭベースのコンポーネント、および他のコンピュータ読み取り可能なストレージ媒体）との組み合わせを含み得る。メモリ要素２１２は、様々なプログラムコンポーネントまたはモジュール（例えば、動作システム２１４）、様々なアプリケーション２１６（例えば、アプリケーションストアからモバイルデバイス２００までダウンロードされるアプリケーション）、およびキーパッドアプリケーション２１８、またはプログラム、および対応するプログラムサブルーチンを用いて符号化される。
【００３７】
キーパッドアプリケーションは、アプリケーションの機能を行う様々なプログラムまたはモジュールを含み得る。例えば、キーパッドアプリケーションは、キーパッド生成モジュール２２０、キーパッドログモジュール２２２、およびイベント検出モジュール２２４を含み得る。イベント検出モジュール２２４は、いつ所定のユーザ相互作用、または入力がキーボードの使用を認可するモバイルデバイス上に発生したかを検出し得る。例えば、ユーザが、例えばタッチスクリーンのような入力機構を介して電子メール（ｅｍａｉｌ）アプリケーションまたはウェブサイト内のテキストエントリフィールドを選択する場合、イベント検出モジュールは、そのユーザ入力をイベントとして検出し得る。別の例において、ユーザがアプリケーションストアからダウンロードするようにアプリケーションを選択する場合、イベント検出モジュールは、そのユーザ入力をイベントとして決定し得る。
【００３８】
次に、イベント検出モジュール２２４によって検出されるイベントは、モバイルデバイスのタッチセンサ式のディスプレイスクリーン上に仮想キーボードを提示するようにキーパッド生成モジュール２２０をトリガし得る。デバイス上に物理的キーボードを含むモバイルデバイスに対して、キーパッド生成モジュールが省略され得るが、有線またはワイヤレスキーボードを受け入れるそれらは、そのようなキーボードへの接続を検出し得る。キーパッド生成モジュール２２０はまた、ユーザがセッションを完了した（すなわち、特定のエントリを完了した）とき、ディスプレイから仮想キーボードを除去し、ユーザの好みおよびモバイルデバイスの物理的位置に依存してキーボードのサイズ、言語および位置を変化させることができる。
【００３９】
キーパッドログモジュール２２２は、各トリガされるイベントに対して、および各セッションに対して一時的にキーボードエントリ、または入力、統計を記録するために利用され得る。例えば、キーパッドログモジュールは、番号または他のＩＤ、キー入力イベントの数、時間および日付、ならびに、使用されたアプリケーションを有するセッション（例えば、セッション１２３４５６、２３キーイベント、０１／０１／２０１３、９：３４Ａ、ａｐｐ１２３４として）のログを取り得る。この例において、ディスプレイ上に示されたキーボードは、セッション（ここでセッション「１２３４５６」として）の開始を示す。利用されるキーの数は、「２３キー」によって示され得る（ただし、実際に入力されたキーがログを取られていない）。イベントが発生したアプリケーションは、アプリケーション識別子「ａｐｐ１２３４」によって示され得、アプリケーション識別子は、アプリケーション関与解析システム１２２アプリケーションデータベース１２６上にも利用される。
【００４０】
所定の時間間隔内に発生する各セッションは、増分的に番号付けられ得る。他の実施形態において、セッションは、各使用ログで番号付けられ得、使用ログは、所定の時間間隔にわたって（例えば、時、日、週、月等によって）記録され、従って、日付およびタイムスタンプによって互いから区別される。他の実施形態において、使用ログは、所定の数のキー入力イベントがログを取られるまでに記録され得る。さらなる実施形態において、使用ログは、所定の量のメモリがモバイルデバイス２００上に使用されるまで、または、使用ログのファイルサイズが大きくなりすぎて、関与解析システム１２２に送信できないときに、記録され得る。
【００４１】
任意数のイベントまたはイベント属性は、キーパッドアプリケーション２１８を通してモバイルデバイス２００によってログを取られ得る。いくつかの実施形態において、イベント属性、またはイベントの特性は、モバイルデバイスによって検出または決定され、そのデバイス内のメモリ内に格納され得る。他の実施形態において、使用ログに記録された異なるタイプおよび数のイベント／属性は、キーパッドアプリケーション２１８、キーパッドアプリケーション２１８のバージョン、およびキーパッドアプリケーションが利用されるプラットフォームによって決定され得る。代替的には、使用ログ内の属性のタイプおよび数は、キーパッドアプリケーションがコールされるアプリケーションによって決定され得る。
【００４２】
前述したように、キーパッドアプリケーション２１８は、モバイルデバイス２００のメモリ２１２内に格納され得、常に「オン」であり、モバイルデバイスのバックグラウンドで動作し得る。従って、イベントがデバイス上に発生するときはいつでも、キーボードは、ユーザに対して提示され得、デバイスは、入力イベントのログを取り得る。キーパッドアプリケーションは、モバイルデバイス上のインストールの後、またはデバイスのユーザの手動セットアップを通して、常に動作し得る。代替的には、キーパッドアプリケーションは、ユーザによってコールされるときのみ、起動され、ディスプレイ上に提示される。例えば、ユーザがデバイス上のアプリケーション内のテキストフィールドを選択する場合、ユーザは、キーパッドアプリケーションを起動するボタンまたはボタンの選択も選択し得る。従って、キーパッドアプリケーションのユーザ相互作用または入力およびその後の起動は、キーパッドアプリケーションによってイベントとして認識され得る。
【００４３】
（アプリケーション関与解析システム）
図３は、アプリケーション関与解析システムが実装され得るシステムコンピュータ３００を例示する。システムコンピュータ３００は、インターネットのようなネットワークを介して使用ログを受信するネットワークインターフェース３０２を含む。インターフェース３０２は、ワイヤレスインターフェース（例えば、８０２．１１ＩＥＥＥ標準に基づく）、または有線インターフェース（例えば、標準ＲＪ４５コネクタを受信するＥｔｈｅｒｎｅｔ（登録商標）ポート）を含み得る。システムコンピュータ３００コンポーネントは、例えば、周辺デバイスのような様々な入力３０４および出力３０６を含み得る。システムコンピュータ３００は、動作システム３０９、システムコンピュータ３００のプロセッサ３０８によって行われる方法のための命令を含む様々なモジュール３１２、３１４、３１６、３１８、３２０、３２２、および上記命令を行うときにプロセッサ３０８によって利用されるデータを格納する様々なデータベース３２４、３２６、３２８をさらに含む。ネットワークインターフェース３０２、およびシステムコンピュータ３００の他のコンポーネントは、システムバス（示されていない）に接続され得、システムバスは、それらのコンポーネントの各々と、システムプロセッサ３０８（例えば、中央処理ユニット（ＣＰＵ））との間でデータを転送することが可能である。プロセッサは、様々な上述したモジュールの方法を行うための、コンピュータ読み取り可能な媒体（ＣＲＭ）３１０に格納される命令を実行することが可能である。
【００４４】
モジュールは、ユーザ識別モジュール３１２、ログ解析モジュール３１４、関与スコア計算モジュール３１６、スコア減衰モデル生成モジュール３１８、ユーザアプリケーションプロフィール生成モジュール３２０、およびアプリケーションカテゴリプロフィール生成モジュール３２２を含み得る。モジュールの各々は、そのモジュールに特有の方法を行うために、コンピュータシステム３００に連結されたデータベース３２４、３２６、３２８のうちの１つ以上内に格納されたデータにアクセスし得る。
【００４５】
ユーザ識別モジュール３１２は、例えば、適切なデータベースロケーションに使用ログデータを格納するためのネットワークインターフェースを通して、新しい使用データが受信されるモバイルデバイスおよび対応するユーザＩＤを決定し得る。さらに、ユーザ識別モジュール３１２は、以下に議論されるように、その特定のユーザに対してスコアを付ける方法および／または予測方法を行う前に、データベース内に格納された特定のユーザの対応するデータを見つけ、読み出すために利用され得る。いくつかの実施形態において、ユーザ識別モジュール３１２は、システムコンピュータ３００内においてユーザ識別番号をユーザに割り当てるためにさらに利用され得る。例えば、ユーザがモバイルデバイス番号を介して（例えば、ハードウェア識別（例えば、ＩＭＥＩまたはｉＤＥＮ番号）またはソフトウェア再設定可能な番号（例えば、Ａｎｄｒｏｉｄ  ＩＤ）によって）識別される場合、システムは、ユーザに関する個人の識別可能な情報を格納することを容易にするために、より短い識別番号をそのデバイスおよびユーザまたは（ランダム割り当てられたＩＤを含む）他の番号に割り当て得る。
【００４６】
ログ解析モジュール３１４は、システム上に受信され、かつ関連付けられたユーザＩＤによって識別された各ログに対して使用ログデータを解析し得る。前に議論されたように、使用ログは、モバイルデバイスとのユーザの相互作用に関連付けられた任意数の属性に関連するデータを含み得る。使用ログ解析モジュール３１４は、特有の属性（例えば、ユーザＩＤ、日付、（キーボードが起動される）アプリケーション等）に従ってログデータをインデックス付けし得る。使用ログ解析モジュール３１４は、各ログに対するさらなる統計を決定するために、各ログをさらに解析し得る。例えば、ログ内に発生するイベントの数、ログ（またはセッションあたりおよび／またはアプリケーションまたはイベントあたり）に対して入力されたキーストロークの総和、イベントが毎日、毎週または毎月等で発生したアプリケーションの数。関与解析システム上に前述のログ解析を提供することは、モバイルデバイス上の使用ログデータにとって必要な処理を軽減する。
【００４７】
関与スコア計算モジュール３１６は、キーボードが起動されるアプリケーションに対して関与スコアを決定するために、使用ログデータおよび対応する統計を利用する。スコアは、データが使用ログ内に提供される３つの変数について定義され得る。スコアが計算される３つの変数は、ユーザ、アプリケーションおよび日付を含む。３つの変数のみが本実施形態内において利用されるが、任意数の変数がスコアをさらに定義するために利用され得ることは理解されるべきである。さらに、変数は、例えば、ユーザのグループ、アプリケーションのカテゴリまたは（例えば、開発者による）他のグループ分け、スコアが定義される週または他の期間を含む。
【００４８】
関与スコア計算モジュール３１６は、例えば、当初の入力計算（使用データが解析され、システムコンピュータ３００に連結された使用ログデータベース３２４に格納され、かつ、使用ログデータもすでに使用ログデータベース３２４に格納される）の間に、ネットワークインターフェースから受信される使用ログデータを利用し得る。例えば、関与スコア計算モジュール３１６は、以前のＮ日の間における（例えば、１週間長の間隔に対して）キーボード使用の日数を計算し得る。この統計を決定するために、関与スコア計算モジュール３１６は、使用ログデータベース３２４を参照し得る。スコアを計算するための方法は、図４を参照して以下の段落においてさらに説明される。
【００４９】
スコアが計算されると、関与スコア計算モジュールは、システムコンピュータ３００に連結されたアプリケーションデータベース３２６に、３つの変数について定義されたスコアを格納し得る。従って、そのアプリケーションに対する最終計算された関与スコアは、システムコンピュータ３００において現在かつ利用可能に維持される。特定のユーザ、アプリケーションおよび日付に対する単一の数値スコアから、そのアプリケーションにおけるユーザの関心のある一般的レベルは、任意の所与の日または他の時間期間について推測され得る。
【００５０】
スコア減衰モデル生成モジュール３１８は、キーボード使用がそのアプリケーションにおいてモバイルデバイス上に発生しない日にそのアプリケーションに対してスコアを予測するために、任意の所与のアプリケーションに対して前述の現在スコアを利用し得る。例えば、アプリケーションが開かれたり、ナビゲートされたり、閉じられるが、テキストの入力または他の入力が必要とされない場合、モバイルデバイスは、イベントがトリガされなかったとして、その特定の日に対して、そのアプリケーションのいずれの使用を記録しなくてもよい。しかしながら、ユーザは、アプリケーションを使用した。スコア減衰モデルは、そのアプリケーションの履歴使用に基づいて、予測された関与レベルを通してその使用を承認するように生成される。従って、スコア減衰モデルは、関与スコア計算モジュール３１６において関与レベルを計算するときに説明された変数に基づく。スコア計算に対して入力された特定のパラメータに依存して、スコア減衰モデルは、特定のアプリケーション、ユーザ、アプリケーションのセット、アプリケーションカテゴリ、または、スコア計算モジュール３１６において計算されたスコアを定義する他の属性に対して計算され得る。
【００５１】
スコア減衰モデル生成モジュール３１８は、特定の時間間隔にわたって減衰モデルを生成するために、使用ログデータベース３２４内に格納された履歴データを利用し得る。減衰モデルが計算される時間変数（例えば、２つの検出されたキーボードイベントの間の時間、または２つのセッションの間の時間）は、任意の以前または将来のキーボード使用に無関係であるランダムの指数型変数であり得る。線形のスコア減衰モデルを生成するために利用される２つの入力パラメータは、（１）現在のスコアにおいてキーボードアクティビティがない日数と、（２）スコアがゼロ（０）に低減されるべきであるキーボードアクティビティがない日数とを含み得る。スコア減衰モデル、減衰モデル方程式、およびそれらの生成は、図６〜７を参照して以下の段落においてさらに議論される。
【００５２】
生成されたスコア減衰モジュール３１８は、新しいスコアが、例えば、特定のアプリケーション、ユーザまたはアプリケーションのカテゴリに対して計算されるまでに、システムコンピュータ使用ログデータベース３２４上に維持され得る。言い換えると、アプリケーションに関連付けられた現在のスコアを代替する新しい使用ログデータが受信されるまでに、スコア減衰モデルは、指定された日についてアプリケーションスコアを予測するように利用され得る。他の入力が可変である場合、または、パラメータが特定のアプリケーションに対して定義される（例えば、アプリケーションがカテゴリに含まれる）場合、または、スコアが様々な時間間隔に対して生成される場合、スコア減衰モデル、およびそれらの変数と一致する、そのアプリケーションに対して予測されるスコアは、それらの特定の変数がスコアおよび／または減衰モデルを再計算するために利用されるときのみに変更される。従って、アプリケーションデータベース内に格納された任意の所与のアプリケーションは、多数の関連付けられたスコアを有し得、その各々は、それらを定義する異なるパラメータを有する。
【００５３】
ユーザアプリケーションプロフィール生成モジュール３２０は、特定のユーザに関連付けられたアプリケーションに対する関与プロフィールを生成し得る。プロフィールは、ユーザのアプリケーションのリスト項目、対応する現在のスコア（例えば、使用ログデータベース３２４上に維持される最終計算されたスコア）、特定の日に対する予測されたスコアを含み得る。システムユーザは、予測されたスコアが提供される日に手動で入力することが可能であり、または、システムは、（例えば、現在のスコア減衰モデルを通して）ユーザがそのプロフィールを観察する際の特定の日に対する予測されたスコアを決定し得る。他の実施形態において、システムは、多数の日についての予測されるスコアを生成し得、ユーザが、特定のアプリケーションスコアが減衰し始めるか（すなわち、特定の時間間隔内にログを取られた使用がないこと）を決定することを可能にする。さらなるアプリケーション属性、例えば、ユーザＩＤ、アプリケーションＩＤ、プロフィールが生成される日および／または時間間隔、アプリケーション使用ランキング（例えば、モバイルデバイスに格納され、および／または指定された時間間隔内に使用された他のアプリケーションと比較された使用レート）、およびアプリケーション使用に関連し、かつアプリケーション使用ログから決定され得る任意の他の属性はまた、ユーザアプリケーションプロフィール内に示され得る。アプリケーションユーザプロフィールは、図８に例示されるプロフィールを参照してさらに説明される。
【００５４】
アプリケーションカテゴリプロフィール生成モジュール３２２は、アプリケーションカテゴリに基づいて特定のユーザのアプリケーションに対するプロフィールを生成し得る。カテゴリは、ユーザ、開発者、アプリケーションストア、管理者、または第三者のアプリケーションプロバイダによって割り当てられ得る。例えば、ユーザは、それらのモバイルデバイス上のアプリケーションのフォルダを有し得る。各フォルダは、ユーザによって割り当てられる特定のカテゴリ識別子を用いてラベル付けされ得る。従って、そのカテゴリに関連付けられたアプリケーションの各々は、そのカテゴリに対する特定の関与レベルを計算するために、一緒に解析され得る。他の実施形態において、開発者またはアプリケーションストアは、特定のカテゴリおよび／またはサブカテゴリ識別子を、ユーザデバイスへのダウンロードに対して利用可能になされる各アプリケーションに割り当て得る。例えば、アプリケーションストアは、スポーツ、ショッピング、エンターテイメント、ゲーム、参照、ソーシャルネットワーキング、写真等としてアプリケーションを分類し得る。次に、生成されたアプリケーションカテゴリプロフィールは、特定のユーザに対するアプリケーションの各カテゴリのリスト項目、そのカテゴリ内の各アプリケーションに対する現在の（最終計算された）スコアのリスト項目、プロフィールが観察される時間間隔、そのカテゴリに対する予測されたスコアを含み得る。予測されたスコアは、最終計算されたスコアの総和、時間間隔内に発生するイベント／セッションのレート、およびそれらのアプリケーションの各々に対する以前に生成された予測されたスコアに基づいて生成され得る。多数のアプリケーションが１つのカテゴリ内に関連付けられるので、その１つのアプリケーションが最近の検出されたレベルを有した可能性は高い。従って、予測されたスコアは、例えば、特定の日についての各アプリケーションに対する予測および計算されたスコアの平均を含み得る。アプリケーションカテゴリプロフィール生成モジュール３２２によって提供される機能のさらなる説明は、アプリケーションカテゴリプロフィールが例示される図８を参照して提供される。
【００５５】
前述したデバイス上に実装され得る方法、および図１〜３に例示されたシステムがここで説明される。それらのシステムおよびデバイス内の特定のコンポーネントへの参照は、それらの図面に対応する数値識別子によって識別され得る。
【００５６】
（データ収集：使用ログ）
図４は、モバイルデバイスに格納されたキーパッドアプリケーションから使用データを収集するための方法のフローチャートを提供する。方法は、キーパッドアプリケーションのインストール、キーパッドアプリケーションによるイベントの検出およびログを取ること、ならびに、アプリケーション関与解析システムへのログを取られた使用データのその後の転送を含む。
【００５７】
ブロック４０２において、ユーザは、彼または彼女のモバイルデバイス２００上にキーパッドアプリケーションをダウンロードし、格納し得るが、多くの場合において、アプリケーションが購入時点にデバイスに格納され得る。ユーザは、ワイヤレスＬＡＮを介してインターネットに接続し、アプリケーションストアに訪問し得、例えば、１つのアプリケーションストアが、モバイルデバイスが動作するプラットフォーム（例えば、ＡｐｐｌｅまたはＷｉｎｄｏｗｓ（登録商標））によって、または、第三者のアプリケーションストア（例えば、Ａｍａｚｏｎ）によってサポートされる。ユーザがキーパッドアプリケーションダウンロードしたとき、ユーザは、アプリケーションを動作させるように選択し得、または、アプリケーションが自動的に動作し得る。次に、アプリケーションは、バックグラウンドアプリケーションとして常に動作し得るが、キーボードは、タッチスクリーンディスプレイの場合のモバイルデバイスのディスプレイ上に常に視覚的に現れはしない。他の実施形態において、ユーザは、モバイルデバイス上の現在のキーパッドアプリケーションを無効にし、および／またはユーザがテキストを入力したいたびにアプリケーションを選択するために、アプリケーション設定を手動に選択および変更し得る。さらなる実施形態において、アプリケーションは、そのモバイルデバイスとの任意のユーザ相互作用の前に、モバイルデバイスに事前にロードされ得る。
【００５８】
ブロック４０４において、キーパッドアプリケーションがモバイルデバイスのバックグラウンドで動作していることに伴い、デバイスとの各ユーザ相互作用（例えば、入力イベント）は、アプリケーションによって監視され得る。所定の基準に合う各相互作用は、イベントであり得る。イベントは、キーパッドアプリケーションがモバイルデバイスのディスプレイスクリーン上に仮想キーボードを提示し、セッションに対するそのキーボードへの入力を記録し始めるべきであることを示す。キーパッドアプリケーションによって生成されるキーボード（または他の入力デバイス）を介してユーザテキスト、音声および他のアクセス可能な入力を求め得る任意のユーザ相互作用は、イベントとしてみなされ得る。さらに、他のシステム入力（例えば、アプリケーションのダウンロードおよびインストール、および／またはアプリケーションの検出および除去）は、イベントとしてみなされ得る。
【００５９】
ブロック４０６において、キーパッドアプリケーションは、イベントが検出されたかどうかを決定し得る。イベントが検出されなかった場合には、キーパッドアプリケーションは、ブロック４０８において、モバイルデバイスを監視することを継続する。イベントが検出された場合には、キーパッドアプリケーションは、完全に起動される。したがって、ブロック４０８において、イベントがデバイス上で検出され、そして、ユーザがパスワードのためのテキストを入力するように促されるか、または、ユーザがモバイルデバイス上に既に格納されたアプリケーション内のテキストフィールドを選択する場合、仮想キーボードがユーザに対して提示される。
【００６０】
キーボードは、ユーザプリファレンス内でユーザによって選択された任意の言語または形式であり得る。さらに、そのキーボードに対する追加的な「アドオン」が、キーパッドアプリケーションによって記録される入力を追加的に提供し得る。例えば、ユーザは、異なる言語のキーボードを提供するために、あるいは、アイコン、ピクチャまたはアートを含めるために、追加的なアドオンをインストールし得る。ログを取られた各イベントに対して、キーボードはまた、入力を生成するために用いられる言語を記録し得る。いくつかの実施形態において、マイクロフォンが、キーボード上のキーの選択によって、または、キーパッドアプリケーションがユーザに対してキーボードを提示するたびに、起動され得る。上述した実施形態のいずれかにおいて、３つ以上のアドオンが同時に利用され得、キーパッドアプリケーションが同時にこれらのアドオンのうちの２つに対する使用データを記録することを伴う。例えば、言語アドオンがキーパッドアプリケーションによって提示されたキーボードに統合された場合、キーパッドアプリケーションは、キーボードがその言語で利用されるたびに使用データのログを取り得る。
【００６１】
キーパッドアプリケーションは、デバイス上の単一のフォアグラウンドアプリケーションと主に相互作用する。したがって、キーボードがモバイル上の別のアプリケーション内で起動されるたびに、フォアグラウンドアプリケーション内のデータログは、キーボードが提示されるアプリケーションデータを含む。例えば、キーボードがアプリケーション（例えば、ショートメッセージサービス（ＳＭＳ）アプリケーション）内に提示された場合、キーパッドアプリケーションは、イベントを作成し得、そして、ＳＭＳアプリケーションのためのログ内に使用データを記録し得る。言語アドオンがＳＭＳアプリケーション内で利用された場合、キーパッドアプリケーションは、言語アドオンに対するログ内において、および／または、ＳＭＳアプリケーションと同じイベントおよび使用ログ内において、イベントを作製すること、および／または、使用データを記録することを、追加的に行い得る。マイクロフォンが起動される実施形態において、マイクロフォン／スピーカの使用時間は、イベントおよびアプリケーション使用ログに関連して記録され得る。
【００６２】
ブロック４１０において、キーパッドアプリケーションによってユーザに対して提示されたキーボードを通して受信される任意の入力が、そのアプリケーションに対応する使用ログ内に記録される。使用ログは、仮想キーボードの提示をトリガした特定のイベントにさらに関連付けられ得る。多くの使用統計は、法的に許容された際に、必要であれば、モバイルデバイスのユーザによって同意された場合に、記録される。例えば、キーストロークの数、単語の数、キーボードの言語、その中でキーボードが提示されるアプリケーション、入力の間に経過した時間、キーボードが最初に提示された時間、日付等が、使用ログ内に記録され得る。
【００６３】
ブロック４１２において、キーパッドアプリケーションは、入力イベントが完了し、セッションが終了したかどうかを決定する。例えば、単一のセッションにおいて、キーボードは、複数回起動され得る。ユーザがアプリケーションＡを開き、テキストメッセージ（例えば、ＳＭＳ、ＩＭ、電子メール等）を入力するためのテキストボックスを選択した場合、キーパッドアプリケーションは、イベント（イベント１）のログを取り得、ユーザは、そのイベントの間に、受信された応答テキストを介して、テキストを入力することを停止し得るか、かつ／または、中断し得る。したがって、キーパッドアプリケーションは、例えば、キーボード入力が発生しない所定の時間間隔の後（タイムアウト）に、例えば「ｅｎｔｅｒ」等の特定の入力キーがキーボード上で選択された場合、アプリケーションが閉じられた場合、モバイルデバイスがスリープまたは低電力モードに入った場合等において、セッションが終了したことを決定し得る。セッションが完了していない場合、キーパッドアプリケーションは、ブロック４１０において、モバイルデバイス上の提示されたキーパッドとのユーザ相互作用に対応するデータのログを取ることを継続する。キーパッドアプリケーションが、セッションが完了しており、かつ、同様の新たな入力イベントが存在しないことを決定した場合、ブロック４１４において、モバイルデバイスのディスプレイからキーボードが除去される。
【００６４】
ブロック４１６において、キーパッドアプリケーションは、アプリケーション関与解析システム３００に、使用ログを送信する。各セッションがモバイルデバイス上で完了しことが決定された後に、使用ログが送信され得る。他の実施形態においては、使用ログは、所定の時間間隔で送信されるか、または、モバイルデバイスの一時ストレージが閾値限界に到達した場合に、送信される。
【００６５】
モバイルデバイス上のアプリケーションの各々に対する使用ログデータならびに関与レベルのスコアリングおよび予測されたスコアリングは、図５〜８を参照して以下のセクションに記載される。
【００６６】
（アプリケーション関与スコアリング）
図５は、本発明の実施形態におけるアプリケーション関与スコアリングを計算するための方法のフローチャートを提供している。方法は、モバイルデバイスからの使用ログの受信と、受信されたデータの解析およびインデックス付けと、特定のアプリケーションに対する関与レベルスコアの計算および格納とを含む。
【００６７】
ブロック５０２において、使用ログが、モバイルデバイス２００から受信される。各使用ログは、ユーザのモバイルデバイス上に格納された特定のアプリケーションに対応し得る。使用ログは、モバイルデバイスのディスプレイ上に提示された仮想キーボードとのユーザ相互作用（すなわち、入力）についての統計を提供し得る。使用ログデータは、イベントに基づいて記録され得る。
【００６８】
ブロック５０４において、アプリケーション関与解析システムは、システムに連結された１つ以上のデータベース上に使用ログデータを格納し得る。例えば、システムは、全ての未加工または非圧縮データが格納される使用ログデータベースを含み得る。あるいは、システムは、ブロック５０２において受信された使用ログを解析することにより、各ログが対応しているアプリケーションおよび／またはユーザを決定し、各対応するログをアプリケーションデータベースまたはユーザデータベース上に格納し得る。各使用ログ内のデータが、例えば日付、アプリケーションＩＤおよびユーザＩＤ等によって識別されるので、使用ログは、同様に、これらのパラメータにしたがって、使用ログデータベース内でインデックス付けされ得る。
【００６９】
ブロック５０６において、特定のアプリケーションが、ユーザの関与レベルを決定するために選択され得る。いくつかの実施形態において、選択は、システムのユーザ（例えば、管理者または広告者）に基づく手動選択である。他の実施形態において、システムは、所定の時間間隔を有しており、これにより、指定されたユーザおよび／またはアプリケーションが、システム内の現在のスコアを更新するために解析され、そして、ユーザに対して自動的に報告される。さらに別の実施形態において、システムは、システムによって受信された場合に、各新たな使用ログを自動的に解析する。
【００７０】
ブロック５０８において、特定のアプリケーションに対して使用ログデータが解析される時間間隔Ｎが決定される。例えば、任意の所与の日に対するアプリケーション関与レベルが、計算された関与スコアによって決定され得る。特定の日に対する関与レベルは、履歴使用ログデータに対して測定される。したがって、アプリケーション関与レベルは、過去の日、複数の日、週、月等に対する比較において計算され得る。それに対して関与レベルスコアが計算される時間間隔は、多くのファクターに依存している。例えば、新たにダウンロードされたアプリケーションに対しては、使用ログアクティビティの数日だけが、システムの使用ログデータベース上で利用可能であることがあり得る。別の例においては、アプリケーションは、過去の週に発生している日に対する使用データしか有していないことがあり得、時間間隔の長さが週であることを必要とし得る。より長い時間間隔が定義されると、より正確な関与レベルが計算される。
【００７１】
ブロック５１０において、Ｎによって定義された時間間隔に対して、アプリケーション関与レベル解析システムは、使用データがそのアプリケーションに対して記録される日数を決定する。例えば、時間間隔が週であり、そしてアプリケーションＡが、別個の２日に発生する３つの関連付けられたイベントしか有していない場合、日数は２である。
【００７２】
ブロック５１２において、システムは、関与レベルスコアが計算された日に発生したセッションの数またはイベントの数を決定する。既に議論したように、モバイルデバイス上のバックグラウンドで動作しているキーパッドアプリケーションによって所定のパラメータの指定されたセットが検出されるたびに、ユーザに対してキーパッドが提示されることをトリガするイベントが発生する。しかしながら、キーボードが短い時間間隔にわたって（例えば、ＩＭセッションの間）アプリケーション内でユーザに対して複数回提示される場合、キーボードの複数の提示が、単一のイベント内に含まれ得る。したがって、キーボードがモバイルデバイスディスプレイ上に１０回出現しても、３回のイベントだけがその日に記録されることがあり得る。
【００７３】
ブロック５１４において、関与解析システムは、関与レベルスコアが計算されている日において、タイプされた文字の数、または１分あたりにタイプされた文字の数を決定する。１分あたりにタイプされた文字は、可変統計量である。その他の実施形態において、変数は、単語の数、特定のキーの使用（例えば、「ｅｎｔｅｒ」）、またはシステムによって定義された別の変数を含み得る。例えば、関与スコアが計算されている日に発生する上述した３つのイベントを用いることにより、システムは、２分間にわたってセッション１内に４０個のキーがタイプされたこと、３分間にわたってセッション２内に１４０個のキーがタイプされたこと、および、６分間にわたってセッション３内に２０個のキーがタイプされたことを決定し得る。１分あたりにタイプされたキーの数は、約１８として計算される。
【００７４】
ブロック５１６において、アプリケーションの関与レベルに対する数値スコアを決定するために、上述した入力のそれぞれが総和され得る。総和の成分は、（例えば、重み付け量によって乗算されることにより）さらに重み付けされ得る。例えば、２０１１年１月１日における、ユーザＡ、アプリケーション１２３４に対する１つ以上の使用ログが、関与解析システムによって受信され得る。過去のＮ日における上述したキーボード使用を２として、キーボードセッションの数を３として、そして、１分あたりにタイプされた文字の数を１８として用いることにより、関与レベルスコアは、以下のように計算され得る。
【００７５】
Ｓｃｏｒｅ（Ａ，１２３４，０１／０１／１１）
＝０．３＊（２）＋０．２＊（３）＋０．１＊（１８）
＝３．０      （式１）
【００７６】
アプリケーション関与スコアリング計算は、ユーザが日単位ではない場合に、週単位で何らかのアプリケーションを利用する場合に機能する。しかしながら、いくつかのアプリケーションは、ユーザによってそれほど頻繁にアクセスされないことがあり得る。例えば、ユーザは、請求書が期限のときに１か月に１回または２回、バンキングアプリケーションにアクセスし得る。ユーザは、アプリケーションが依然として月単位で用いられているので、アプリケーションとの関与を維持する。しかしながら、当該アプリケーションは、日単位または週単位でアクセスされることはなく、例えば月の中間にアクセスされた場合には、関与レベルスコアに歪みを適用し得る。同様に、アプリケーションの関与レベルスコアをスコアリングすることにおけるファクターのうちの１つは、そのアプリケーションに関連付けられたキーボード相互作用に基づいているので、いくつかのアプリケーションは、アクセスされたときに発生するイベントをレジスタすることすら行わないことがあり得る。例えば、あるアプリケーションにおいて、ユーザは、主に読み取りまたは入力を、テキストよりもむしろタッチを介して行う。したがって、予測モデルは、ユーザの履歴の使用日付および計算された関与レベルスコアに基づいて、各アプリケーションおよび／またはアプリケーションのカテゴリに対して生成され得る。この予測モデルは、スコア減衰モデルと呼ばれ、図６〜８を参照して以下に続くセクションにおいてさらに記載される。
【００７７】
（アプリケーション関与予測：スコア減衰モデル）
図６は、アプリケーション関与解析システム上のアプリケーションに対してスコア減衰モデルを生成する方法のフローチャートを示している。方法は、特定のアプリケーションに対する格納されたスコアデータの検索と、そのアプリケーションに対する使用ログの解析と、減衰モデルの生成と、ユーザアプリケーションプロフィールおよびアプリケーションカテゴリプロフィールの生成とを含む。図７は、図６における方法から生成され得る例示的な線形スコア減衰モデルを示す。図７は、図６の議論において参照される。
【００７８】
図６を参照すると、ブロック６０２において、スコア減衰モデルが計算されるアプリケーションが選択される。いくつかの実施形態において、アプリケーションのカテゴリが選択される。スコア減衰モデルは、入力としてわずか数個のパラメータのみを用いて、時間経過につれて関心を失っているユーザの基本的なアイディアを捕捉し、これは、減衰モデルの複雑性を低減させる。特に、関与レベルスコア減衰モデルは、予測されたスコア出力の挙動を決定する２つのパラメータを有している。両方のパラメータは、任意の所与のアプリケーションに対するキーボード使用の間の生成された平均時間期間に関係する。パラメータは、それぞれ、関与アクティビティが検出されなかった（例えば、そのアプリケーションに対する使用ログ内にイベントが検出されなかった、または、示されなかった）時間間隔として表され得る。第１の間隔は、予測された関与レベルスコアが最終関与レベルスコアに等しい時間間隔であり得る。第２の間隔は、予測された関与レベルスコアが（例えば、線形的に）減少する時間間隔であり得る。
【００７９】
ブロック６０４において、システムは、スコア減衰モデルが生成されているアプリケーションの最終関与レベルスコアを決定する。最終関与レベルスコアは、スコア減衰モデルが開始する基本スコアを提供し、そして、システムに連結されたアプリケーションデータベース上に格納され得る。最終関与レベルスコアは、同じパラメータを用いてアプリケーションに対して計算される最終スコアである。
【００８０】
ブロック６０６において、システムは、次に、所与のモバイルアプリケーションに対する平均（関与）減衰レートに対応する分布曲線を計算する。平均減衰レートが、検出されたイベントを有する（すなわち、関与アクティビティを有する）少なくとも２つの使用ログを含む時間期間にわたって定義された時間間隔の間にキーボード使用の平均レートを最初に計算することによって決定され得る。ここにいう各ログは、１つ以上のセッションに対するデータを有し得る。平均レートは、変数λによって表され得、そのアプリケーションに関連付けられたキーボード使用ログの履歴集合を用いることにより推定される。履歴使用ログは、（例えば、使用ログ内のダウンロードイベントを介して）どのユーザがアプリケーションをインストールしたかを最初に決定し、次に、これらのユーザのそれぞれに対する定義された間隔にわたって平均レートを決定することにより、識別され得る。履歴使用ログは、システム内の使用ログデータベース上に格納され得、そして、複数のユーザに対するキーボード使用に関連付けられ得る。
【００８１】
上記時間間隔にわたるキーボード使用の平均レートを決定した後に、キーパッドアプリケーションイベント（例えば、キーボード使用）の発生の間の待機時間が、パラメータとして、平均レートλと共に、指数型ランダム変数Ｔとして、モデル化され得る。第１の間隔Ｗおよび第２の間隔Ｒに対するスコア減衰モデルは、以下の式によって表され得る。
Ｗ＝Ｅ（Ｔ）      （式２）
Ｒ＝Ｅ（Ｔ）＋３＊ＳＤ（Ｔ）      （式３）
【００８２】
標準偏差は、ＳＤ（Ｔ）によって表され得、線形減衰は、Ｗプラス分布曲線のピークから３つの標準偏差の範囲において０に到達するものとして推定され得る。次に、第１の間隔Ｗおよび第２の間隔Ｒが、キーボード使用の推定された平均レート（例えば、Ｅ（Ｔ）＝１／λ、ＳＤ（Ｔ）＝１／λとして、定義された時間間隔にわたって計算されたレート）を利用することにより、計算され得る。そして、別個のスコア減衰モデルが、アプリケーションの計算された使用の平均レートに基づいて、各アプリケーションによって定義される。
【００８３】
ブロック６０８において、第１の間隔（Ｗ）が、Ｅ（Ｔ）＝１／λの計算に基づいて定義される。そのアプリケーションに対する現在のスコアは、第１の時間間隔（Ｗ）の間に一定に保持される。スコア減衰モデルのグラフ７００は、図７に例示されている。スコア減衰モデル７００は、関与レベルスコアに相当するｙ軸７１０と、日単位（または、時間間隔が定義される任意のその他の時間単位）で測定されたｘ軸７０８とを有している。グラフ７００は、グラフ７００においてＳＬａｓｔ＝０．８として示されている現在のスコアを有する第１の時間間隔７０４が、その第１の間隔７０４内にシステムに対して知られているさらなる使用データが存在せず、かつ、ブロック６０４において決定された最終関与レベルスコアのみが唯一の知られた値なので、最初に一定に保持されることを示している。
【００８４】
ブロック６１０において、第２の時間間隔Ｒが、Ｅ（Ｔ）＋３＊ＳＤ（Ｔ）（但し、Ｅ（Ｔ）＝１／λ、ＳＤ（Ｔ）＝１／λ）の計算に基づいて定義される。第２の間隔７０６は、関与レベルスコアが０に等しくなるまで、例えば、図７に例示されている第１の間隔のエンドポイント（すなわち、平均関与レベルスコア）から３つの標準偏差にあることが推定されるまで、（例えば、Ｗ＝１／λにおいて）第１の間隔のエンドポイント７０２から減少する。第１の間隔７０４と同様に、第２の間隔７０６は、検出されたイベントが存在しない、または、関与アクティビティが存在しない、時間期間を反映する。第２の時間間隔は、最終関与レベルスコア（ＳＬａｓｔ）に等しい開始値と、ゼロの終了値とを有する。
【００８５】
ブロック６１４において、スコア減衰モデルが、アプリケーションに対して、最終関与レベルスコア値、Ｗの値、およびＲの値といった値を用いて形成され得る。各アプリケーションに対するスコア減衰モデルは、アプリケーションデータベースにおいて等、システム上に格納され得る。スコア減衰モデルは、手動ユーザ入力によって、または、１つ以上のモバイルデバイスからシステムによって受信された新たな使用ログデータに基づいて、定期的に更新され得る。
【００８６】
ブロック６０８〜６１２において提供されたステップのそれぞれは、実質的に同時に計算され得る。さらに、スコア減衰モデルは、分布曲線に依存して、減衰レートを推定するために、付加的なまたはより少ない標準偏差を含み得る。別の実施形態においては、経時的な関与レベル傾向を決定するために、膨大なスコア減衰モデルが解析され得る。例えば、コストをかけて市場に新たに発表されたモバイルアプリケーションは、発表後２、３か月、および／または、購入価格が下落するかまたは完全に除去された場合とで実質的に異なるスコア減衰モデルを有し得る。例えば広告者または開発者に対して、単一のグラフ上に並置される膨大なスコア減衰モデルを生成することにより、そのアプリケーションまたは類似したアプリケーションに対する将来の市場に関する相対的フィードバックを提供することが可能になる。
【００８７】
ブロック６１４において、システムは、使用ログデータが利用可能な場合に、日単位のユーザ関与レベルを予測するために、任意の所与のアプリケーションに対してスコア減衰モデルを利用することが可能である。例えば、図７を参照すると、ユーザは、関与レベルスコアが（例えば、図５における方法を用いて）計算されたＤａｙ  ０において０．８の最終関与レベルを有する。Ｄａｙ  １は、記録されたイベントを何も有しておらず、Ｄａｙ  ２は、使用ログ内に記録されたイベントを何も有していない。システムは、そのアプリケーションに対するユーザ関与レベルスコアを予測するために、Ｄａｙ  １においてアプリケーションに対するスコア減衰モデルを生成することが可能である。次に、システムは、Ｄａｙ  ３、４、５、６等における関与レベルスコアを予測するために、スコア減衰モデルを利用し得る。したがって、図７において、Ｄａｙ  ４の予測されたスコアは、依然として０．８である。しかしながら、Ｄａｙ  ８に対する予測は、０．５５のスコアへの０．２５の下落を示している。この関与レベルの下落は、例えばピクチャまたはマルチメディメッセージング（ＭＭＳ）のピクチャを通してスクロールする等、何らかの記録されていない関与アクティビティが発生しても、その特定のアプリケーションに対する関与レベルは、減少するということを示している。ユーザが関心を失ったが、キーボード使用が不可欠な当該アプリケーション内の任意のアクティビティに関与していないだけである場合、システムはまた、この関与レベルを、アプリケーションのスコア減衰モデルに基づいて予測し得る。これは、確率論的に、一人以上のユーザがアプリケーションを利用しており、かつ、短い時間スパンにおいてそのアプリケーションにおける膨大なイベントを記録した場合、減衰レートが、使用の量を反映し得るからである。しかしながら、アプリケーションが頻繁に利用されるが、キーボード使用をあまり要求しない場合（例えば、わずか数個のイベントがより長い時間のスパンにわたって記録される場合）、減衰レートはまた、使用の量またはタイプを反映し得る。
【００８８】
一部の実施形態において、システムは、特定の日に対するユーザ関与レベルスコアを予測するために、例えば別のユーザに対して、スコア減衰モデルが既に生成されたかどうかを決定するために、アプリケーションデータベースをチェックし得る。したがって、スコア減衰モデルは、ユーザが指定された時間期間にわたって特定のアプリケーションに対する関与アクティビティを何も有しないたびに生成されないことがあり得る。その他の実施形態において、システムは、最後に生成されたスコア減衰モデルの日付を決定し、これにより、そのモデルが最新のものであるかどうかと、新たなモデルが生成された可能性があるかどうかとを決定し得る。
【００８９】
スコア減衰モデルと、実際に計算されたスコアとは、例えば販売業者、広告者、開発者等に対して、ユーザ関与レベルの膨大な表現（視覚表現を含む）を提供し得る。例えば、上述したスコア減衰モデルは、現在の関与レベルスコアと、予測されたスコアとを反映する。別の例において、現在のスコアおよび予測されたスコアは、アプリケーションユーザプロフィールならびにカテゴリプロフィールを生成するために利用され得る。これらのプロフィールは、図８〜９を参照して以下のセクションにおいてさらに記載される。
【００９０】
（アプリケーションプロフィール）
図８〜９は、ユーザアプリケーションおよびユーザカテゴリのそれぞれに対するプロフィールを示している。図８は、選択された日におけるユーザアプリケーションに対するプロフィールを示している。図９は、選択された日における、それぞれが所定のカテゴリに入る、膨大なアプリケーションに対するプロフィールを示している。
【００９１】
ここで図８を参照すると、ユーザアプリケーションプロフィールが示されている。プロフィール８００は、識別子カラム（ｃｏｌｕｍｎ）８０８と、最終スコアカラム８０２と、予測されたスコアカラム８０４とを含む３つのカラムを含んでいる。さらに、プロフィールは、プロフィール識別情報８０６（例えば、ユーザＩＤ）と、ユーザ関与スコアが提供されている、時間間隔（例えば、日）を提供し得る。プロフィールを生成するために利用される任意の数のユーザ属性は、識別情報内にリストされ得る。プロフィール８００はまた、任意の数のカラムを含み得る。例えば、アプリケーションが解析されている所与の日に対する使用ログデータを有している場合、計算されたスコアまたは現在のスコアを含む付加的なカラムが、含まれ得る。図８に提供されている実施形態において、予測されたスコアは、使用ログデータを用いて計算されたスコアを反映し得るか、または、特定のアプリケーションに対するスコア減衰モデルから予測され得る。
【００９２】
識別子カラム８０８は、ユーザ１２３のモバイルデバイス上にインストールされた各アプリケーションのリスト項目を含み得る。いくつかの実施形態において、最終関与レベルスコアまたは予測されたスコアがゼロに等しいアプリケーションがリストされる。識別子カラム８０８は、名前またはシステムによって知られているその他の識別子によって、各アプリケーションをリストし得る。最終スコアカラム８０２は、対応するアプリケーションにおいてそのユーザに対して最後に計算された関与レベルスコアを反映する。例えば、アプリケーション「バンキングＡｐｐ」に対して、「０．２」の最終スコアは、「バンキングＡｐｐ」に対する記録された使用ログデータから計算された最終スコアを反映する。いくつかの実施形態において、最終スコアはまた、スコア減衰モデルから計算された最終スコアを反映し得る（例えば、予測されたスコア）。例えば、新たな使用ログデータが「バンキングＡｐｐ」に対して記録されていないときに、システムがユーザアプリケーションプロフィール８０８を生成し、かつ、そのプロフィールを更新する場合、最終スコア８０２は、過去の予測されたスコア８０４を反映し得る。したがって、予測されたスコア８０４は、関与アクティビティが存在しないこと、および、そのアプリケーションのスコア減衰モデル上の下向きのスロープに起因して低くなり得る、更新された予測されたスコア８０４を反映し得る。いくつかの実施形態において、更新された予測されたスコア８０４は、０個の関与を反映し得、これは、アプリケーションがユーザアプリケーションプロフィール８００から完全に除去されることを引き起こし得るか、または、促進し得る。
【００９３】
上述したように、予測されたスコア８０４カラムは、ユーザのアプリケーションのそれぞれを反映し得る。ここにいうユーザのアプリケーションは、ユーザモバイルデバイス上にインストールされ、そして、何らかの関与アクティビティ（例えば、イベント）がキーパッドアプリケーションによって記録されているものである。予測されたスコアは、スコア減衰モデルが生成された時間期間内の任意の所与の日におけるアプリケーションに対する関与レベルスコアを反映し得る。例えば、モデルは３日、１週、または３週に対して生成され得る。関与レベルスコアが予測されている日がより遠いと、最終スコアと予測されたスコアとの間でより大きな変動が見られ得る。
【００９４】
図９は、アプリケーションカテゴリプロフィール９００を示しており、これは、図８におけるプロフィールと同様のデータを提供している。しかしながら、カテゴリプロフィール９００は、指定された時間間隔（例えば、１日）の間に各カテゴリの「予測されたスコア」９０４を形成するために利用される入力値のリスト項目を提供する。リスト項目は、「カテゴリ値」９０２カラムに提供される。カテゴリ値は、ユーザカテゴリプロフィール９００内の各カテゴリ９０６に対して、数において変動し得る。カテゴリ９０６は、アプリケーション開発者、アプリケーションストア、第三者アプリケーションストア、またはユーザによって割り当てられたカテゴリを含み得る。カテゴリは、とりわけ、ニュース、スポーツ、社会、エンターテイメント、ファイナンス、ショッピング、およびユーティリティを含み得る。そして、カテゴリが割り当てられるアプリケーションのカテゴリフィールドは、そのカテゴリに対するカテゴリ値９０２および予測されたスコア９０４を決定するために、アプリケーション使用ログをサーチおよびコンパイルするために利用され得る。別の実施形態において、カテゴリがユーザ選択された場合、ユーザは、（例えば、モバイルデバイス製造者によって定義された）複数の所定の「フォルダ」を自身のモバイルデバイス上に有し得る。フォルダは、例えば「スポーツ」、「エンターテイメント」等のカテゴリによってラベル付けされ得、ユーザはこれらのカテゴリフォルダのそれぞれにどのアプリケーションを適用するかを選定し得る。上述した実施形態のいずれかにおいて、システムは、カテゴリ化されたアプリケーションスコア値を総和し得、所定の時間間隔に対する予測された値として平均スコアを決定し得る。予測された値は、そのカテゴリに対する関与の平均レートにさらに基づいており、これは、そのカテゴリ内のアプリケーションに対する平均レートでもあり得る。
【００９５】
カテゴリ内のアプリケーションのリスト項目、ユーザＩＤ、予測されたスコアを決定するために用いられる時間間隔、カテゴリに対する関与の平均レート、および／または、任意のその他の付加的なアプリケーション特有情報等の付加的なカラムもまた、ユーザカテゴリプロフィール９００内に含まれ得る。システムは、１つの実施形態においては、ユーザカテゴリプロフィール９００に対して所定のカラムを含み得る。別の実施形態において、システムのユーザは、プロフィール９００内に含まれるカラムを選定し得る。プロフィールは、各カテゴリに対するスコア減衰グラフ、または、使用ログおよびアプリケーションデータに基づいてシステムによって計算されるその他の解析量を付加的に含み得る。
【００９６】
（むすび）
文脈上明らかに要求されていない限り、明細書および特許請求の範囲の全体にわたり、「含む（ｃｏｍｐｒｉｓｅ）」、「含んでいる（ｃｏｍｐｒｉｓｉｎｇ）」および同様の用語は、排他的または網羅的な意味とは反対に、すなわち、いわば「含むが、それには限定されない」という意味で、内包的な意味として考えられるべきである。さらに、「ここにおいて（ｈｅｒｅｉｎ）」、「上記（ａｂｏｖｅ）」、「下記（ｂｅｌｏｗ）」という用語および同様の意味の用語は、本願において用いられる場合には、本願の何らかの特定の部分ではなく全体として本願を参照しているものである。また、文脈上許容される場合、単数形または複数形を用いている上記詳細な説明における用語は、それぞれ単数形または複数形を含み得る。２つ以上の事項のリストを参照している場合の用語「または（ｏｒ）」は、リスト内の事項のうちの任意のもの、リスト内の事項のうちの全てのもの、および、リスト内の事項の任意の組み合わせという、用語の解釈の全てをカバーする。
【００９７】
上述した例の発明の詳細な説明は、網羅的であることは意図されておらず、上述した通りの形式に本発明を限定することも意図されていない。本発明に対する特定の例が、例示目的で上述されたが、関連分野の当業者が認識し得る様々な等価な改変が本発明の範囲内で可能である。例えば、プロセスまたはブロックが所与の順序で提示されているが、代替的な実装は、異なる順序の複数のステップを有するルーチンを形成し得る、または、異なる順序で複数のブロックを有するシステムを採用することがあり得、いくつかのプロセスまたはブロックは、代替物または小結合を提供するために、削除、移動、付加、細分化、結合、および／または、改変され得る。これらのプロセスまたはブロックのそれぞれは、様々な異なる態様で実装され得る。また、プロセスまたはブロックは、直列的に実行されるものとして同時に示されているが、これらのプロセスまたはブロックは、代わりに、並列的に実行または実装され得る、または、異なる時点において実行され得る。
【００９８】
本明細書中に適用されている本発明の教示は、必ずしも上述したシステムであるとは限らないその他のシステムに対して適用され得る。上述されている様々な例の要素および動作は、本発明のさらなる実装を提供するために組み合され得る。
【００９９】
これらの変更およびその他の変更が、上記詳細な説明を踏まえて本発明に対して行われ得る。上記詳細な説明は、本発明の特定の例を記載しており、構想されるベストモードを記載しているが、上記のものがいくら詳細に文中に示されていても、本発明は、多くの態様で実践され得る。システムの詳細は、その特定の実装において相当に変動し得るが、依然として、本明細書中に開示されている本発明によって包含され得る。上述したように、本発明の特定の特徴または局面を記載する際に用いられる特定の用語は、その用語が、その用語が関連している本発明の何らかの特定の特性、特徴、または局面に制限されるように、本明細書中で再定義されていることを示唆していると解釈されるべきではない。一般的に、以下の特許請求の範囲において用いられている用語は、上記詳細な説明セクションがそのような用語を明示的に定義している場合を除き、本発明を明細書中に開示されている特定の例に制限していると考えられるべきではない。したがって、本発明の実際の範囲は、開示されている例のみを包含するものではなく、特許請求の範囲のもとで本発明を実践または実施するすべての等価な態様をも包含している。
【０１００】
本発明の特定の局面は、特定の請求項の形式で、以下に提示されているが、出願人は、任意の数の請求項の形式での本発明の様々な局面を構想している。例えば、本発明の１つの局面のみが、３５  Ｕ．Ｓ．Ｃ．１１２条、第６項のもとで、ミーン・プラス・ファンクションクレームとして記載されているが、その他の局面が、ミーン・プラス・ファンクションクレームとして、または、その他の形式で（例えば、コンピュータ読み取り可能媒体において）、同様に具現化され得る（３５  Ｕ．Ｓ．Ｃ．１１２条、第６項のもとで扱われることが意図されている任意の請求項は、「〜のための手段（ｍｅａｎｓ  ｆｏｒ）」という用語で終わっているが、任意のその他の文脈における「〜のための（ｆｏｒ）」という用語の使用が、３５  Ｕ．Ｓ．Ｃ．１１２条、第６項のもとでの取り扱いを訴えることが意図されていないものであり得る）。したがって、出願人は、本願を出願した後にさらなる請求項を付加し、本発明のその他の局面を形成するそのようなさらなる請求項の審査を求める権利を留保するものである。
【図１】
2015060598.tif 000002
【図２】
2015060598.tif 000003
【図３】
2015060598.tif 000004
【図４】
2015060598.tif 000005
【図５】
2015060598.tif 000006
【図６】
2015060598.tif 000007
【図７】
2015060598.tif 000008
【図８】
2015060598.tif 000009
【図９】
2015060598.tif 000010