JP6655180B2 - 個別化されたエンティティ・リポジトリ - Google Patents

個別化されたエンティティ・リポジトリ Download PDF

Info

Publication number
JP6655180B2
JP6655180B2 JP2018520605A JP2018520605A JP6655180B2 JP 6655180 B2 JP6655180 B2 JP 6655180B2 JP 2018520605 A JP2018520605 A JP 2018520605A JP 2018520605 A JP2018520605 A JP 2018520605A JP 6655180 B2 JP6655180 B2 JP 6655180B2
Authority
JP
Japan
Prior art keywords
entities
entity
repository
user
fixed
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.)
Active
Application number
JP2018520605A
Other languages
English (en)
Other versions
JP2018534690A (ja
Inventor
マシュー・シャリフィ
ジョージ・ペレイラ
ドミニク・ロブレック
ジュリアン・オデル
コン・リ
デイヴィッド・ペトロー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of JP2018534690A publication Critical patent/JP2018534690A/ja
Application granted granted Critical
Publication of JP6655180B2 publication Critical patent/JP6655180B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/36Creation of semantic tools, e.g. ontology or thesauri
    • G06F16/367Ontology
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/60Subscription-based services using application servers or record carriers, e.g. SIM application toolkits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/235Update request formulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2358Change logging, detection, and notification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/248Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/587Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using geographical or spatial information, e.g. location
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/907Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/62Text, e.g. of license plates, overlay texts or captions on TV images
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/18Information format or content conversion, e.g. adaptation by the network of the transmitted or received information for the purpose of wireless delivery to users or terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computational Linguistics (AREA)
  • Computer Hardware Design (AREA)
  • Library & Information Science (AREA)
  • Mathematical Physics (AREA)
  • Multimedia (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Animal Behavior & Ethology (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

関連出願の記載
本願は、発明の名称を「個別化されたエンティティ・リポジトリ」とした2015年12月8日出願の米国非仮特許出願14/962、415号の継続出願でありそれに対する優先権を主張し、当該米国非仮特許出願は発明の名称を「個別化されたエンティティ・リポジトリ」とした2015年10月22日出願の米国仮特許出願62/245、241号に対する優先権を主張し、本願はそれらの両方を全体として参照により本明細書に組み込む。
スマートフォン、ウェラブルデバイス、タブレット、ラップトップ等のようなモバイル・デバイスの利用が増大している。ユーザにより参照されたコンテンツおよびユーザにより取られたアクションを理解することにより、当該モバイル・デバイスは、例えば、個別化された予測および支援を当該ユーザに提供することにより、かなり良好なユーザ・エクスペリエンスを構築することができる。当該コンテンツおよびアクションを理解することの一部には、当該デバイススクリーンの当該コンテンツで認識されたエンティティを識別し分類することが含まれる。当該エンティティは知識ベースまたはビジョン・モデルのようなエンティティ・リポジトリに存在してもよく、当該エンティティ・リポジトリはエンティティに関する事実と情報を格納する。大規模なパブリックエンティティ・リポジトリが、何百万ものかかるエンティティを含んでもよい。大抵のコンピューティング・デバイス、スマートフォンおよびタブレットのような特にモバイルコンピューティング・デバイスは記憶が制限されており、サーバとの接続を介して当該エンティティ・リポジトリを使用する。
実装は、エンティティ・リポジトリを幾つかの固定セットまたはスライスに分割する。セットは位置ベース、トピックベース、アクションベース、または機能的であってもよい。当該システムは、当該セットをサーバで決定してもよく、これらのセットのみをその特定のクライアントに関連するクライアント・デバイスに提供する。当該クライアントにダウンロードされた当該セットは、当該サーバへの接続なしにアクセスされうる個別化されたエンティティ・リポジトリである。当該クライアント・デバイスが、セット識別エンジンを含んでもよい。当該セット識別エンジンが、幾つかのテキスト、画像、または他の特徴が与えられたときに1つまたは複数のセットを予測する予測モデルを含んでもよい。当該予測モデルを、どのセットが当該ユーザに最も有益であるかを判定するために使用してもよい。当該セット識別エンジンはまた、当該ユーザの位置を追跡して、どの位置セットが最も関連しうるかを判定してもよい。
セットを、例えば、当該ユーザの位置、ユーザの検索履歴、当該ユーザが当該デバイスで視聴してきたコンテンツ、日時、他のデバイスからの信号等に基づいて、当該クライアント・デバイスの当該ユーザに対して順位付けてもよい。したがって、例えば、ユーザがハワイへの旅行を調べ始めた場合、当該システムは、ハワイに関するエンティティを有するセットが当該ユーザに特に関連すると判定してもよい。ユーザがニューヨークからロサンゼルスに飛行機で移動する場合、当該システムはロサンゼルスに対する位置セットが関連すると判定してもよい。当該クライアント・デバイスを使用してもよい。当該順位を使用して、どのセットを抽出すべきかおよびどれをメモリから削除すべきかを判定する。例えば、以前にダウンロードされたセットがもはや関連しない場合、当該システムはそのセットを削除して、別のセットのために空きを作ってもよい。当該システムは、セット利用パラメータを使用して、任意の時点で当該個別化されたエンティティ・リポジトリにどのセットを含めるべきかを判定してもよい。幾つかの実装では、当該ユーザは当該セット利用パラメータを確立し制御してもよい。セットを更新するステップが、当該クライアント・デバイスに転送されるデータを削減するための当該セットに対するデルタを決定するステップを含んでもよい。幾つかの実装では、当該セットが、例えば、その結果スキーマ変更が当該モデルを用いて当該アプリケーションを壊さないように、バージョン管理されてもよい。
当該開示の特定の態様によれば、モバイル・デバイスはディスプレイ・デバイス、メモリに格納された個別化されたエンティティ・リポジトリを含み、当該個別化されたエンティティ・リポジトリは、サーバに格納されたエンティティ・リポジトリからのエンティティの複数の固定セットを含み、各固定セットは各識別子を有し、当該セット内の当該エンティティに関する情報、少なくとも1つのプロセッサ、および当該少なくとも1つのプロセッサにより実行されたとき、当該モバイル・デバイスに動作を実施させる命令を格納したメモリを含む。当該動作は、当該モバイル・デバイスのユーザに関連する当該エンティティ・リポジトリの固定セットを、当該モバイル・デバイスに関連付けられたコンテキストに基づいて識別するステップと、関連性により当該固定セットを順位づけるステップと、当該識別された固定セットから選択されたセットを当該順位および当該ユーザに適用可能なセット利用パラメータを用いて決定するステップと、当該選択されたセットを用いて当該個別化されたエンティティ・リポジトリを更新するステップとを含む。
当該開示の特定の態様によれば、方法は、モバイル・デバイスのディスプレイ上でコンテンツを表示するように構成されたスクリーン・キャプチャされた画像を受信するステップと、テキスト認識を当該画像で実施し、当該テキストをセット予測モデルに提供することで当該画像内のテキストを決定するステップであって、当該セット予測モデルは、エンティティの1つまたは複数の固定セットを予測するようにトレーニングされる、ステップと、エンティティの当該予測された固定セットのエンティティの少なくとも1つの固定セットを、当該モバイル・デバイス上のメモリ内の個別化されたエンティティ・リポジトリに格納するステップとを含む。
当該開示の特定の態様によれば、方法が、エンティティの複数の固定セットをエンティティ・リポジトリから生成するステップを含んでもよい。当該固定セットは位置ベースのセットであって、各位置ベースのセットは、セル内部の位置を有する当該エンティティ・リポジトリからのエンティティを含み、当該セルは当該セットに関連付けられる、位置ベースのセット、およびトピックベースのセットであって、当該トピックベースのセットの少なくとも幾つかは、埋込み類似性を介して互いに関連する当該エンティティ・リポジトリからのエンティティを含む、トピックベースのセットとを含む。当該方法はまた、エンティティの当該固定セットのサブセットをクライアント・デバイスに提供するステップであって、当該クライアント・デバイスは、当該クライアント・デバイスの位置および当該クライアント・デバイスで表示するために生成されたコンテンツで識別される認識されたアイテムに基づいて当該サブセットを要求する、ステップを含んでもよい。
一般的な態様では、コンピュータ可読記憶デバイスで具現化されたコンピュータプログラム製品は、基板内に形成された少なくとも1つのプロセッサにより実行されたとき、コンピューティング・デバイスに当該開示された方法、動作、またはプロセスの何れかを実施させる命令を含む。別の一般的な態様は、実質的に、図面のうち少なくとも1つと関連して図示および/または説明され、添付の特許請求の範囲でより十分に説明されるように、エンティティ・リポジトリ内のエンティティの固定セットを生成するステップおよび当該固定セットの幾つかをパーソナルコンピューティング・デバイスにパーソナル・エンティティ・リポジトリを提供するステップとのためのシステムおよび/または方法を含む。
本明細書で説明した主題の実装の1つまたは複数を、以下の利点の1つまたは複数を実現するために、実装することができる。1例として、エンティティの固定セットを生成するステップにより、当該システムは、パーソナルまたはカスタムエンティティ・リポジトリをスケーラブルな方法で提供することができる。当該カスタマイズされたエンティティ・リポジトリは、オンデバイステキスト分析および画像分析を支援して、ネットワークへの接続なしにユーザ支援能力をサポートすることができる。当該ユーザは当該パーソナル・エンティティ・リポジトリに割かれたリソースの量を制御してもよく、当該システムは、どのセットが最も良く当該割り当てられたリソースを利用するかを自動的に判定してもよい。別の例として、当該システムは、どのセットがユーザに最も関連するかを予測してもよい。当該予測は、当該ユーザに関連付けられたまたは当該デバイスに既知な他のコンピューティング・デバイスからの位置、日時、信号、当該コンピューティング・デバイスでの最近のアクティビティ等のような、当該ユーザおよび/または当該パーソナルコンピューティング・デバイスに固有な幾つかの因子に基づいてもよい。別の例として、実装が、当該セット内の当該情報を再構成する変更が当該セットを使用するアプリケーションを壊さないように、当該セットのバージョン管理をサポートしてもよい。
1つまたは複数の実装の詳細を添付図面および以下の説明で説明する。他の特徴は当該説明と図面から、および添付の特許請求の範囲から明らかであろう。
開示された主題に従う例示的なシステムを示すブロック図である。 開示された主題に従う、個別化されたエンティティ・リポジトリに対するセット利用パラメータを指定するためのユーザ・インタフェースの例示的な表示を示す図である。 開示された実装に従う、どのセットがコンピューティング・デバイスのユーザに最も関連するかを判定するためのコンテキストを提供するコンテンツの例示的な表示を示す図である。 開示された実装に従う、個別化されたエンティティ・リポジトリに含めるための追加のセットを提案するためのユーザ・インタフェースの例示的な表示を示す図である。 開示された実装に従う、個別化されたエンティティ・リポジトリに含めるための追加のセットを提案するためのユーザ・インタフェースの別の表示の例を示す図である。 開示された実装に従う、エンティティの固定セットを生成し更新するための例示的なプロセスの流れ図である。 開示された実装に従うエンティティの固定セットを用いてパーソナル・エンティティ・リポジトリを構築するための例示的なプロセスの流れ図である。 開示された実装に従う、クライアント・デバイスのユーザに関連するエンティティの固定セットを識別するための例示的なプロセスの流れ図である。 開示された実装に従う、セット利用パラメータに基づいて、エンティティの固定セットをクライアント・デバイスのユーザに関連するエンティティの固定セットから選択するための1つの例示的なプロセスの流れ図である。 説明された技術を実装するために使用することができるコンピュータ・デバイスの例を示す図である。 説明された技術を実装するために使用できる分散コンピュータ・デバイスの例を示す図である。
様々な図面における同様な参照記号は同様な要素を示す。
図1は、例示的な実装に従うパーソナル・エンティティ・リポジトリシステムのブロック図である。システム100を使用して、事前に計算されたエンティティまたはエンティティの固定セットの選択からの個別化されたエンティティ・リポジトリを構築してもよい。当該セットは、それらがセットに対する任意の特定の要求の前に計算されるか、または換言すれば、セットに対する要求に応答して生成される意味で固定される。システム100はどのセットが特定の時点で最も有用であるかを決定しもよく、当該個別化されたエンティティ・リポジトリを更新して、当該個別化されたリポジトリ内のエンティティが当該ユーザに関連することを保証してもよい。当該個別化されたエンティティ・リポジトリを更新するステップは、以前より現時点で当該ユーザにあまり関連しないセットを削除し、関連するようになった新たなセットを追加するステップを含む。当該個別化されたエンティティ・リポジトリを使用して、コンピューティング・デバイスに表示するために生成されたコンテンツ内のエンティティを決定し、当該コンピューティング・デバイス上のユーザ・エクスペリエンスを個別化してもよい。当該ユーザ・エクスペリエンスを個別化するステップはアクション、トピック、単語、またはフレーズ等を予測するステップを含むことができる。図1におけるシステム100がクライアント・サーバ・システムとして示され、幾つかのデータ処理またはデータ記憶はサーバ110で発生し、他のデータ処理はクライアント・デバイス150で発生する。しかし、他の構成およびアプリケーションを使用してもよく、実装は図示した厳密な構成に限定されない。
個別化されたエンティティ・リポジトリシステム100がサーバ110を含んでもよい。サーバ110は、幾つかの異なるデバイス、例えば、標準サーバ、1群のかかるサーバ、またはラック・サーバシステムの形態をとるコンピューティング・デバイスまたはデバイスであってもよい。例えば、サーバ110を複数のコンピューティング・デバイスにわたって分散方式で実装してもよい。さらに、サーバ110をパーソナル・コンピュータ、例えば、ラップトップコンピュータで実装してもよい。サーバ110は、図9に示すようにコンピュータ・デバイス900、または図11に示すようにコンピュータ・デバイス1100の例であってもよい。サーバ110が、1つまたは複数の機械実行可能命令またはソフトウェア、ファームウェア、またはそれらの組合せを実行するように構成された基板に形成された1つまたは複数のプロセッサを含んでもよい。当該プロセッサは半導体ベースであることができる。即ち、当該プロセッサはデジタル論理を実施できる半導体材料を含むことができる。
サーバ110はエンティティ・リポジトリ130を格納してもよく、または、それへのアクセスを有してもよい。エンティティ・リポジトリ130はエンティティに関する情報を格納してもよい。エンティティは、場所、アイテム、アイデア、トピック、単語、フレーズ、抽象概念、具体的な要素、他の適切なもの、またはこれらの任意の組合せであってもよい。幾つかの実装では、エンティティ・リポジトリ130は知識ベースであってもよい。知識ベースはエンティティに関する情報を格納する。幾つかの実装では、知識ベースはエンティティ間の関係の形でエンティティに関する情報を格納する。例えば、知識ベース内のエンティティは、関係を表すラベル付けされたエッジにより互いに関連してもよい。当該知識ベースはまた、エンティティの属性を格納してもよい。幾つかの知識ベースは大きく、ときどき何百万ものエンティティを含む。多数のエンティティおよび有限数の関係を有する知識ベースは何十億もの接続を有してもよい。
エンティティ・リポジトリ130はまた、画像内のエンティティを識別するために使用できる画像認識エンティティを含んでもよい。例えば、エンティティ・リポジトリ130が、当該エンティティの既知の画像および/または当該画像の特性を表し、(例えば、画像類似性技術を用いて)画像認識プロセスにおいて使用して画像内のエンティティを識別するエンティティを含んでもよい。例えば、当該特性は、画像認識モデル(例えば、機械学習アルゴリズム)に提供される特徴であってもよい。エンティティ・リポジトリ130は、単一の知識ベース、異なる知識ベース、画像認識エンティティの組合せ、および/または知識ベースおよび画像情報の組合せを表してもよい。幾つかの実装では、エンティティ・リポジトリ130をサーバ110にアクセス可能な外部記憶デバイスに格納してもよい。幾つかの実装では、エンティティ・リポジトリ130は複数の記憶デバイスおよび/または複数のコンピューティング・デバイス、例えば、複数のサーバにわたって分散してもよい。当該エンティティおよび知識ベース内の関係は例えば、インデックスを介して検索可能であってもよい。例えば、当該インデックスが、エンティティがそれにより参照されているテキストを含んでもよい。したがって、当該知識ベースへの参照は等価なテキストを用いてエンティティを発見するのを促進するインデックスを含むと理解されうる。
サーバ110はまた、1つまたは複数のコンピュータ・メモリを含むことができる。当該メモリ、例えば、メイン・メモリは、1つまたは複数のデータを、一時的に、永続的に、準永続的に、またはそれらの組合せの何れかで格納するように構成されてもよい。当該メモリが、当該1つまたは複数のプロセッサにより読み出しかつ/または実行できるフォーマットで情報を格納する任意のタイプの記憶デバイスを含んでもよい。当該メモリが、揮発性メモリ、不揮発性メモリ、またはそれらの組合せを含んでもよく、当該1つまたは複数のプロセッサにより実行されたとき、特定の動作を実施するモジュールまたはエンジンを格納してもよい。幾つかの実装では、当該モジュールを外部記憶デバイスに格納し、サーバ110のメモリにロードしてもよい。幾つかの実装では、当該モジュールが、エンティティ・セット生成エンジン120を含んでもよい。エンティティ・セット生成エンジン120は、エンティティ・リポジトリ130内のエンティティを固定されたエンティティ・セット132に分割してもよい。当該固定されたエンティティ・セット132内の各セットは、幾つかの基準により関係付けられるエンティティを含むエンティティ・リポジトリ130のスライスと考えてもよい。幾つかの実装では、スライスは、エンティティに関するメタデータ(例えば、名前、説明、標準的な画像)、他のエンティティとの関係、および/または、共通名、エイリアス、短縮系、ニックネーム、および他の信号のようなテキスト内のエンティティを検出するために使用される情報を含んでもよい。当該固定されたエンティティ・セット132内の各エンティティの固定セットは、特定のセットがアプリケーションまたはクライアント・デバイスにより追跡、識別、および要求されうるように、識別子を有してもよい。
幾つかの実装では、エンティティ・セット生成エンジン120は、位置ベースのセット、トピックベースのセット、または機能セットのような様々なタイプのセットを生成してもよい。位置ベースのセットが、特定の地理的セルに関連付けられたエンティティを含んでもよい。地理的セルは、境界、例えば、2つの緯度の線および2つの経度の線により画される地球の表面の領域である。かかるセルは、グーグル・マップのような地図アプリケーションに対して一般的である。位置ベースのエンティティの固定セットが、当該セル内に配置されることが知られている任意のエンティティを含んでもよい。エンティティ・リポジトリ130が、エンティティに対する位置を指定する属性を含んでもよく、または、当該位置を識別するメタデータを含んでもよい。例えば、エンティティ・リポジトリ130内のレストランエンティティは特定のジオセルまたはセルまたは緯度/経度座標を指定する位置属性を有してもよい。ジオセル、即ち、地図アプリケーションで使用されるセルは一般に同様なサイズであり、位置ベースのエンティティ・セットは1つのジオセルに対応する必要はなく、かわりに、当該領域内に配置された指定された数のエンティティを有する当該領域に基づいてもよい。したがって、例えば、ニューヨーク市における位置ベースの1組のエンティティに対するセルは、ニューヨーク市の人口密度が高いので非常に小さく(例えば、10平方マイル)てもよく、西部ワイオミングにおける位置ベースの1組のエンティティに対するセルは、ニューヨーク市のセルと同数のエンティティを有するが何百万平方マイルであってもよい。したがって、例えば、エンティティ・セット生成エンジン120は、マージされたセルに関連付けられたエンティティの量がは最小量に到達し、エンティティの固定セットに対する位置ベースのセルを形成するまで、隣接するジオセルをマージしてもよい。
エンティティ・セット生成エンジン120はまた、トピックベースのエンティティの固定セットを生成してもよい。幾つかの実装では、エンティティ・セット生成エンジン120は、どれくらいエンティティが関連するかに基づいて、従来のクラスタ化技術を用いて当該エンティティをクラスタ化することによって、トピックベースのセットを生成してもよい。例えば、当該クラスタ化が、当該エンティティの特性、例えば、検索レコード上でまたは検索エンジンに対してインデックス化されたドキュメントからのテキストのようなテキスト上でトレーニングされた埋込みに基づいてもよい。幾つかの実装では、エンティティ・セット生成エンジン120が、シード・エンティティを与えられてもよく、当該シード・エンティティに基づいてクラスタを形成してもよい。幾つかの実装では、1つまたは複数のトピックベースのセットは当該エンティティ・リポジトリで識別される集合に基づいてもよい。例えば、エンティティ・リポジトリ130内のエンティティが、当該エンティティが属する1つまたは複数の集合の指示を含んでもよいか、または、エンティティ・リポジトリ130が、集合定義、または換言すれば当該集合に含めるための要件を含んでもよく、エンティティを当該要件に対して評価して、当該集合内のメンバを決定してもよい。エンティティ・セット生成エンジン120は当該集合内のエンティティメンバを使用して、当該トピックベースのセットの1つまたは複数を生成してもよい。幾つかの実装では、エンティティ・セット生成エンジン120はトピック関連のスライスごとに埋込みを計算してもよい。当該埋込みを使用して、例えば、セット識別エンジンにより生成されたクエリ埋込みとの類似性を計算し、どのセットが当該クエリ埋込みに最も類似するかを判定してもよい。例えば、当該埋込みがクラスタ中心を表してもよい。
エンティティ・セット生成エンジン120はまた、エンティティの機能セットを生成してもよい。機能セットが、最も人気があると見做されるエンティティ、例えば、検索クエリ内の出現に基づく、最も頻繁に検索されたまたはアクセスされたエンティティを含んでもよい。機能セットはまた、能力、例えば、1つの言語から別の言語に変換するための能力に基づいてもよい。別の例として、機能セットが、特定のアプリケーションにより使用または要求されるとき遭遇する可能性のあるエンティティを含んでもよい。勿論、これらの機能セットは例として提供されるにすぎず、機能的エンティティ・セットが、特定の目的、特性、または関数に共通なエンティティの任意の集合を含んでもよい。幾つかの実装では、エンティティ・セット生成エンジン120は、上の組合せであるエンティティの固定されたセットを生成してもよい。例えば、エンティティ・セット生成エンジン120は、カリフォルニアのサンノゼにおけるレストランに対するエンティティの固定セットまたはフランスのパリにおける芸術鑑賞のための別のセットを生成してもよい。幾つかの実装では、エンティティ・セット生成エンジン120が、ユーザがエンティティの1つまたは複数の固定セットをキュレートできるようにするユーザ・インタフェースを含んでもよい。
エンティティ・セット生成エンジン120はまた、エンティティの固定セット132を定期的に更新してもよい。例えば、エンティティがエンティティ・リポジトリ130内で追加、削除、または更新されると、エンティティ・セット生成エンジン120は当該固定セットに対する変更を決定してもよい。幾つかの実装では、エンティティ・セット生成エンジン120は、各セットに対するデルタ、例えば、当該固定セットから削除されるべきエンティティのリストおよび当該固定セットに追加されるべきエンティティのリストを決定してもよい。エンティティ・セット生成エンジン120は、プッシュまたはプルの何れかとして、当該デルタをクライアント・デバイス150に提供してもよい。当該デルタは、依然としてクライアント・デバイス150が最も現在のエンティティ・セットを有するのを可能としつつ、サーバ110およびクライアント・デバイス150の間で送信されるデータの量を削減する。これは特に、映画を表す1組のエンティティのような、特定の固定されたエンティティ・セットが頻繁に変化するときに有用である。幾つかの実装では、エンティティ・セット生成エンジン120はまた、スライスとも称される固定セットの各々をバージョン管理してもよい。例えば、エンティティ・セット生成エンジン120は当該スライスのデータ・フォーマットを変更してもよく、または、当該スキーマを破壊する別の方法で当該スライスを変更してもよい。当該スキーマが壊れているとき、当該スライスを使用するアプリケーションは、新たなスライスを使用するための対応する更新を必要としてもよい。したがって、エンティティ・セット生成エンジン120は、更新されていないアプリケーションが、故障することなく古いバージョンを使用し続けることができるように、当該固定セットをバージョン管理してもよい。幾つかの事例では、クライアント・デバイス150が、古いスキーマを使用するアプリケーションが更新されるまで、同一の固定されたスライス(例えば、特定の位置を表すスライス)の2つのバージョンを含んでもよい。
幾つかの実装では、エンティティ・セット生成エンジン120はまた、セット予測モデル122をトレーニングし維持してもよい。セット予測モデル122のようなセット予測モデルは、1組の特徴または信号が与えられたときエンティティの固定セットを予測できる、長短期メモリ(LSTM)ニューラルネットワーク、フィードフォワードニューラルネットワーク、サポート・ベクトル・マシン(SVM)分類器等のような任意のタイプの機械学習アルゴリズムであってもよい。当該特徴が、デバイス位置、コンテンツ(例えば、ドキュメント、検索レコード等)内のテキストまたは画像、一般に様々なタスクに使用されるアプリケーション等を含んでもよい。機械学習アルゴリズムとして、当該セット予測モデルは2つのモード、トレーニング・モードおよび推論モードを有する。例えば、当該トレーニング・モードにおいて、セット予測モデル122は、ラベル付けされた検索レコード134およびラベル付けされたクロールされたドキュメント136を使用して、1組の信号が与えられた場合にエンティティの1つまたは複数の固定セットを固定されたエンティティ・セット132から予測してもよい。当該ラベルは自動的にまたは人間のエキスパートにより生成されてもよい。当該信号が、デバイス150のようなクライアント・デバイス上で生成されたコンテンツからまたは、検索レコード134のような検索レコードから、または、スクリーン・キャプチャ・インデックス172のようなユーザ固有レコードから取得されてもよい。トレーニング・モードにおいて、セット予測モデル122はまた、位置を信号(例えば、現在のジオセル位置、座標等)として取り込んで、当該所与の位置に対する1組のエンティティを予測してもよい。トレーニングの間に、当該モデルのパラメータは、トレーニングドキュメント内のテキストに割り当てられたラベルをより良く反映するように更新される。推論モードでは、セット予測モデル122は、当該信号を表す1組の特徴に応答して、1つまたは複数の固定されたエンティティ・セットを固定されたエンティティ・セット132から予測する。各予測されたセットは、提供された当該特徴が当該特定のエンティティの固定セットを予測する或るレベルの具体性を示す、関連付けられた信頼性スコアまたは確率スコアを有してもよい。幾つかの実装では、当該信頼性スコアは、セットのタイプに応じて異なりうる類似性測定値に基づいてもよい。例えば、位置ベースのセットに対する当該信頼性スコアは、指定された位置からの物理距離、例えば、コンピューティング・デバイスの現在の位置に基づいてもよい。トピックベースのセットに対する信頼性スコアは、クライアント・デバイスからの信号に基づいて生成された埋込みのような、クエリを有する埋込み距離に基づいてもよい。かかる信号は、スクリーンで最近見られたテキスト、外部デバイスの状態または近接性、最近の検索コンテンツ、表明されたユーザ関心、またはクライアント・デバイスでインストールされるかまたは実行されるアプリケーション、タイムスタンプ等を含むことができる。
いったんトレーニングされ、ついで更新を考慮するために定期的にトレーニングされると、エンティティ・セット生成エンジン120は、セット予測モデル122をクライアント・デバイス150に提供してもよい。クライアント・デバイス150は当該モデルをセット予測モデル164として格納してもよい。幾つかの実装では、クライアント・デバイス150は、さらにトレーニングを実施することでセット予測モデル164を個別化してもよい。当該トレーニングは、ユーザに関連付けられた検索レコードから、例えば、クライアント・デバイス150またはスクリーン・キャプチャ・インデックス172に格納された検索レコードからの情報を使用してもよい。したがってセット予測モデル164はセット予測モデル122のコピーまたはセット予測モデル122の個別化されたコピーであってもよい。
サーバ110が、検索レコード134およびクロールされたドキュメント136を含んでもよい。検索レコード134が、検索ログ、クエリから収集された集約されたデータ、またはクエリに基づく任意の他のデータを含んでもよい。幾つかの実装では、検索レコード134が、検索結果を生成する正常なプロセスにおいて検索エンジンにより生成されてもよい。幾つかの実装では、検索レコード134を、サーバ110にアクセス可能な異なるコンピューティング・デバイスに格納してもよい。幾つかの実装では、当該検索レコードを、複数のコンピューティング・デバイスにわたって分散してもよい。当該クロールされたドキュメント136は、例えば、既知のまたは後に開発されるウェブ・クローリング技術を用いて取得されたドキュメントであってもよい。幾つかの実装では、当該クロールされたドキュメント136はインターネットで利用可能なドキュメントを表し、当該ドキュメントのインデックス化された形態であってもよい。
個別化されたエンティティ・リポジトリシステム100が、コンピューティング・デバイス150を含んでもよい。コンピューティング・デバイス150は、従来のオープンウェブベース環境ではなく閉モバイル環境で動作する、任意のモバイルコンピューティング・デバイスのようなスマートフォンまたは他のハンドヘルドコンピューティング・デバイス、タブレット、ウェラブルコンピューティング・デバイス等であってもよい。コンピューティング・デバイス150はまた、ラップトップまたはネットベースのコンピュータ、デスクトップコンピュータ、プロセッサを有するテレビ等のような他のタイプのパーソナル電子コンピューティング・デバイスであってもよい。コンピューティング・デバイス150は、図10に示すように、コンピュータ・デバイス1000または1050の例であってもよい。コンピューティング・デバイス150は単一のユーザにより使用されるコンピューティング・デバイスであってもよく、または、複数のユーザにより共有されるコンピューティング・デバイスであることができる。
コンピューティング・デバイス150が、1つまたは複数の機械実行可能命令またはソフトウェア、ファームウェア、またはそれらの組合せを実行するように構成された基板に形成された1つまたは複数のプロセッサを含んでもよい。当該プロセッサは半導体ベースであることができる。即ち、当該プロセッサはデジタル論理を実施できる半導体材料を含むことができる。コンピューティング・デバイス150はしたがって、1つまたは複数のデータを、一時的に、永続的に、準永続的に、またはそれらの組合せの何れかで格納するように構成された1つまたは複数のコンピュータ・メモリを含んでもよい。コンピューティング・デバイス150はしたがって、アプリケーション155を含んでもよい。アプリケーション155はソフトウェア、ファームウェア、またはその組合せの形で機械実行可能命令を表す。アプリケーション155で識別される当該コンポーネントは当該オペレーティング・システムの一部であってもよく、または、当該オペレーティング・システムを用いて実行するように開発されたアプリケーションであってもよい。幾つかの実装では、アプリケーション155はモバイル・アプリケーションであってもよい。従来、モバイル・アプリケーションは閉環境で動作し、これは、当該ユーザが別々のアプリケーションを使用してウェブベースのブラウザ環境で従来実施されるアクティビティを実施することを意味する。例えば、bookit.comに行ってホテルを予約するのではなく、コンピューティング・デバイス150のユーザはbookit.comにより提供されるアプリケーション155内のモバイル・アプリケーションを使用することができる。アプリケーション155はまたウェブ・アプリケーションを含んでもよい。当該ウェブ・アプリケーションは、当該モバイル・アプリケーションをミラーしてもよく、例えば、当該モバイル・アプリケーションと同一のまたは同様なコンテンツを提供する。幾つかの実装では、アプリケーション155が、コンピューティング・デバイス150のオペレーティング・システムにより実施される機能を含んでもよい。
アプリケーション155が、スクリーン・コンテンツ・エージェント160およびセット識別エンジン162を含んでもよい。幾つかの実装では、これらのアプリケーションの1つまたは複数を、コンピューティング・デバイス150のオペレーティング・システム(図示せず)により提供することができる。幾つかの実装では、これらのアプリケーションの1つまたは複数をダウンロードし、ユーザによりインストールすることができる。
スクリーン・コンテンツ・エージェント160は様々な機能を含むことができる。幾つかの実装では、スクリーン・コンテンツ・エージェント160は、当該コンピューティング・デバイスのスクリーンに表されたテキスト情報をアプリケーションプログラムインタフェース(API)から取得するように構成されてもよい。幾つかの実装では、スクリーン・コンテンツ・エージェント160を当該オペレーティング・システムに組み込んでもよく、当該オペレーティング・システムは、当該スクリーンに表示されたテキストフィールドのコンテンツを決定することができる。当該テキスト情報がスクリーン・キャプチャされたコンテンツを考慮してもよく、当該APIへの各呼出しまたはテキストフィールドのコンテンツが決定される各時刻をスクリーン・キャプチャと考えてもよい。幾つかの実装では、スクリーン・コンテンツ・エージェント160は、当該デバイスのフレームバッファのコンテンツをコピーまたは読み出すことによって、当該スクリーンに表示された画像をキャプチャするように構成されてもよい。したがって、当該キャプチャされたスクリーンは画像であってもよく、キャプチャされた画像と称されてもよい。スクリーン・コンテンツ・エージェント160は当該スクリーンをある間隔でキャプチャしてもよい。当該間隔は短くてもよく、例えば、毎半秒または毎秒であることができる。幾つかの実装では、スクリーン・コンテンツ・エージェント160は、明示的なユーザ要求またはコマンドに応答して、または当該デバイスが1つのモバイル・アプリケーションから別のモバイル・アプリケーションに遷移するときに、タッチ・イベントが発生するたびに(例えば、当該ユーザがスクリーンをタッチしてリンクをスクロール、ズーム、クリック等するたびに)当該スクリーンをキャプチャするように構成されてもよい。幾つかの実装では、スクリーン・コンテンツ・エージェント160は、当該スクリーンが変化しないときスクリーン・キャプチャが発生する間隔を増大してもよい。換言すれば、当該スクリーンが静的であるとき、スクリーン・コンテンツ・エージェント160は画像をあまり頻繁にキャプチャしなくてもよい。
スクリーン・コンテンツ・エージェント160は当該キャプチャされたコンテンツまたはスクリーン画像およびメタデータを認識エンジンに提供してもよい。認識エンジンはスクリーン・コンテンツ・エージェント160の一部であってもよく、コンピューティング・デバイス150に配置されてもよい。幾つかの実装では、認識エンジンはサーバ110のようなサーバに配置されてもよい。スクリーン・キャプチャ画像が認識エンジンに提供されると、認識エンジンは画像テキスト認識を当該画像に実施して、当該スクリーン・キャプチャ画像のコンテンツ内の単語、エンティティ、ロゴ等を識別してもよい。認識エンジンは、文字認識、画像認識、ロゴ認識等のような様々なタイプの認識を、従来のまたは後に開発される技術を用いて実施するように構成されてもよい。したがって、認識エンジンは認識されたコンテンツを生成してもよく、当該認識されたコンテンツは単語からおよび画像からのものでありうる。
スクリーン・コンテンツ・エージェント160はまた、当該スクリーン・キャプチャ画像に関するメタデータを決定し使用してもよい。当該メタデータが、タイムスタンプ、モバイル・デバイスのタイプ、モバイル・デバイス識別子、当該コンテンツがキャプチャされたときに実行しているモバイル・アプリケーション、例えば、当該スクリーンに表示されたコンテンツを描画するアプリケーション等を含んでもよい。幾つかの実装では、当該メタデータはまた、どのアプリケーションがアクティブであるか、当該デバイスの位置、周辺光、当該デバイスの動き等を含んでもよい。幾つかの実装では、当該メタデータが、他のコンピューティング・デバイスからの信号を含んでもよい。例えば、スクリーン・コンテンツ・エージェント160は、クライアント・デバイス150と通信するように構成される機器、テレビ、パーソナルアシスタント、音楽デバイス、アラームシステム等のような外部デバイスから情報を提供または取得してもよい。例えば、デバイスを構成する音声起動された電子リストが、購入すべき日用品のリストを格納してもよい。このリストが、デバイスを構成する当該電子リストから直接、または、ユーザ・アカウント情報を介しての何れかでクライアント・デバイス150に送信されてもよい。別の例として、情報を共有するタブレットおよびスマートフォンをユーザが有してもよく、または情報を共有するスマートフォンを夫と妻が有してもよい。したがって、幾つかの実装では、クライアント・デバイス150に利用可能な情報が、他のデバイスにより提供される情報を含んでもよい。この情報の一部または全部は、スクリーン・キャプチャ画像に関連付けられたメタデータに含まれうる。
当該システムは、スクリーン・キャプチャ画像を介して取得されたメタデータおよび情報を使用して、当該情報を分析してモバイル・デバイスで実施されるタスクでユーザを支援するオンデバイスインテリジェンスを支援してもよい。例えば、友達との会話をもつユーザが、映画を観る提案を含んでもよい。オンデバイスインテリジェンスが、当該提案を識別し、映画レビューを参照するかまたはチケットを購入するためのアクションを提供してもよい。スクリーン・コンテンツ・エージェント160はエンティティ・リポジトリを使用して、認識されたコンテンツが既知のエンティティを含むかどうかを判定してもよい。スクリーン・コンテンツ・エージェント160はエンティティ・リポジトリ130のようなパブリックエンティティ・リポジトリを使用してもよく、これはサーバ110との接続を要求し、認識およびアクションの提案プロセスを遅らせることができる。したがって、クライアント・デバイス150は、クライアント・デバイス150に格納された個別化されたエンティティ・リポジトリ176を有してもよい。当該個別化されたエンティティ・リポジトリ176はエンティティの固定セットの集合であってもよく、エンティティの固定セットの集合はサーバ110から、例えば、固定されたエンティティ・セット132から取得される。当該個別化されたエンティティ・リポジトリ176はセット識別エンジン162により生成され維持されてもよい。
幾つかの実装では、スクリーン・コンテンツ・エージェント160は、キャプチャされたコンテンツをインデックス付けするように構成されたインデックス付けエンジンを含むことができる。当該インデックスはまた、スクリーン・キャプチャ画像を当該画像で識別されるテキスト、エンティティ、画像、ロゴ等と関連付けてもよい。したがって、例えば、インデックス付けエンジンは、キャプチャされた画像およびキャプチャされたコンテンツに対する(例えば、スクリーン・キャプチャ・インデックス172に格納された)インデックス・エントリを生成してもよい。幾つかの実装では、インデックス付けエンジンはサーバ110のようなサーバ上にあってもよく、スクリーン・コンテンツ・エージェント160はキャプチャされた画像およびキャプチャされたコンテンツを当該サーバに提供してもよい。当該インデックスは、キー値(例えば、単語、フレーズ、エンティティ、画像、ロゴ等)が当該キー値を含む画像のリスト(例えば、キャプチャされたスクリーン画像のコピー)に関連付けられる、反転インデックスであってもよい。当該インデックスが、当該リスト内の各キャプチャされた画像に関連付けられたメタデータ(例えば、当該キー値が発生したキャプチャされた画像上の場所、当該画像に対する当該キー値のランク等)を含んでもよい。幾つかの実装では、当該インデックスはまた、タイムスタンプによりインデックス化されたキャプチャされた画像のリストを含んでもよい。インデックス付けエンジンは、当該インデックスをメモリ、例えば、スクリーン・キャプチャ・インデックス172に格納してもよい。勿論、幾つかの実装では、当該システムは、コンピューティング・デバイス150に加えてまたはその代わりにサーバ上のユーザ・アカウントに当該インデックスを格納してもよい。コンピューティング・デバイス150のユーザは、スクリーン・コンテンツ・エージェント160がアクティブであるときを制御することができる。例えば、当該ユーザは、他の指定されたアプリケーション155が実行されているときのみ(例えば、ソーシャル・メディア・モバイル・アプリケーションにおけるときのみ)スクリーン・コンテンツ・エージェント160がアクティブであると指定してもよい。ユーザはまた、例えば、設定アプリケーションを介して、スクリーン・コンテンツ・エージェント160を手動でオンおよびオフにしてもよい。幾つかの実装では、ユーザはスクリーン・コンテンツ・エージェント160をジェスチャまたはアクションで起動してもよい。スクリーン・コンテンツ・エージェント160の無効化により、本明細書で説明した個別化されたエンティティ・リポジトリの予測と維持を無効にしてもよい。
コンピューティング・デバイス150はまた、セット識別エンジン162を含んでもよい。セット識別エンジン162は、固定されたエンティティ・セット132内のどのエンティティのセットが当該個別化されたエンティティ・リポジトリ176に含まれるべきであるかを判定するように構成されてもよい。セット識別エンジン162は、スクリーン・コンテンツ・エージェント160により収集または生成された情報ならびにどのセットが潜在的にユーザに関連するかを判定しこれらのセットをサーバ110から取得するためのセット予測モデル164およびセット利用パラメータを使用してもよい。例えば、セット識別エンジン162は、セット予測モデル164に対する入力として信号を収集してもよい。当該信号は、デバイス位置、日時、クライアント・デバイス150と通信する様々な外部デバイスの状態、他のデバイスへの近接性、スクリーン・キャプチャ画像または一連のスクリーン・キャプチャ画像内のコンテンツからの情報、ユーザに対するスクリーン・キャプチャ・インデックス172または検索レコードからの情報、ユーザ・プロフィール内の情報等のような情報およびメタデータを含むことができる。上述のように、機器、テレビ、パーソナルアシスタント、音楽デバイス、アラームシステム等のような外部デバイスはクライアント・デバイス150と通信してステータス情報をクライアント・デバイス150に提供するように構成されてもよく、当該ステータス情報は識別エンジン162により生成された信号に含まれてもよい。信号を生成するために使用される当該情報をメタデータとしてスクリーン・キャプチャ・インデックス172に格納してもよく、または、セット識別エンジン162が個別化されたエンティティ・リポジトリ176に対して適切なエンティティの固定セットを決定する時点で生成または収集してもよい。
前述のように、セット予測モデル164はセット予測モデル122のコピーであってもよく、または、セット予測モデル122の個別化されたバージョンであってもよい。予測モデル164が個別化されたバージョンであるとき、セット識別エンジン162は、クライアント・デバイス150に格納されたデータからまたはクライアント・デバイス150のユーザに関連付けられたユーザ・プロフィールから、トレーニング例を提供してもよい。例えば、当該トレーニング例は、スクリーン・キャプチャ・インデックス172またはユーザ180に対する検索レコードを用いて生成されてもよい。幾つかの実装では、クライアント・デバイスは、ユーザ許可により、当該セット予測モデルが多数のクライアント・デバイスで生成された予測から学習できるように、サーバ110上のセット予測モデル122に更新を提供してもよい。
セット識別エンジン162は、信号を、例えば、1組の特徴として、推論モードにおいてセット予測モデル164に提供してもよい。応答して、セット予測モデル164はついで、エンティティの1つまたは複数の予測された固定セットの識別子をセット識別エンジン162に提供してもよい。セット識別エンジン162はついで、エンティティの予測された固定セットを順位づけてもよい。クライアント・デバイス150は小型のフォーム・ファクタを有するデバイスであってもよく、当該デバイスは当該デバイスの記憶空間を制限する。したがって、セット識別エンジン162は、どの固定セットを個別化されたエンティティ・リポジトリ176に含めるべきかを判定するために、エンティティの予測された固定セットを順位付けしてもよい。幾つかの実装では、セット識別エンジン162は、クライアント・デバイスのユーザにより選択されたセット利用パラメータ内で動作してもよい。当該セット利用パラメータが、クライアント・デバイスに格納するための最大量の固定セット、当該個別化されたエンティティ・リポジトリ176により使用される最大量の記憶、最小順位、またはこれらの組合せを含んでもよい。当該量の予測されたセットをクライアント・デバイス150に収容できない場合、セット識別エンジン162は、当該セット利用パラメータが収容するのと同じくらい多くのセットを、最高順位のセットから選択してもよい。
幾つかの実装では、当該順位がセット予測モデル164により決定されてもよい。幾つかの実装では、セット識別エンジン162は、セット予測モデル164により提供される順位を調整してもよい。例えば、特定の固定セットが、ユーザが頻繁にアクセスするかまたはちょうどインストールしたウェブ・アプリケーションにより必要とされる場合、セット識別エンジン162はその特定の固定セットの順位をブーストしてもよい。セット識別エンジン162はまた、メタデータを使用して順位を調節してもよい。例えば、AliceおよびTedが旅行しておりデータの共有に同意した場合、Aliceのクライアント・デバイスは、Tedのクライアント・デバイスが既に、彼のデバイス上の個別化されたエンティティ・リポジトリに含まれる特定の固定セットを有すると判定してもよい。したがって、Aliceのクライアント・デバイスがTedのデバイスを非常に近くで検出したとき、Aliceのデバイスのセット識別エンジン162は、彼女のデバイス上のその特定の固定セットの順位を格下げしてもよい。
幾つかの実装では、セット識別エンジン162は、予測された固定セットの順位を定期的に、または、新たなアプリケーションのインストール、予め決定された期間使用されていないアプリケーションの起動、利用可能な空間が変化したとき、例えば、当該デバイスのディスク空間が減少したとき(例えば、指定されたパーセント未満に低下)または指定された割合の空間を解放する幾つかのアクション、ユーザが位置を変更したとき等のような幾つかのイベントの後に生成してもよい。セット識別エンジン162はまた、当該順位に応答して当該個別化されたエンティティ・リポジトリ176を更新してもよい。例えば、セット識別エンジン162は、当該個別化されたエンティティ・リポジトリ176を定期的に、特定のエンティティの固定セットを使用するアプリケーションがインストールされたとき、またはエンティティの固定セットの順位が現在当該個別化されたエンティティ・リポジトリ176内にあるセットのうち1つより高く順位づけられるようになったとき、更新してもよい。例えば、Aliceがハワイへの旅行を調べ始める場合、最終的にセット予測モデル164は、Aliceが視聴している(例えば、スクリーン・キャプチャ・インデックス172または検索レコードからの)コンテンツに基づいて、ハワイに関する固定されたスライスを予測する。このセットは、個別化されたエンティティ・リポジトリ176に含まれるほど十分に以前に高く順位付けられたことがないので、順位がいったん現在当該個別化されたエンティティ・リポジトリ176内にあるセットの順位を超えるか、または、順位の変化が幾つかの予め決定された閾値を超えたとき、セット識別エンジン162は、当該個別化されたエンティティ・リポジトリ176を自動的に更新してもよく、または、この特定のセットを含める前にAliceから承認を得てもよい。いったんAliceがハワイから戻るか、または、彼女が或る期間ハワイに行かずハワイのコンテンツにアクセスしていない場合、当該特定のスライスの順位は低下してもよく、例えば、当該個別化されたエンティティ・リポジトリ176内にない別のスライスより下に低下してもよく、または予め決定されたパーセント低下してもよい。別のスライス(即ち、別のエンティティの固定セット)が当該個別化されたエンティティ・リポジトリ176内の定位置につくように、これがセット識別エンジン162の実行をトリガしてもよい。
当該個別化されたエンティティ・リポジトリ176を更新するステップを多数の方法で実現してもよい。幾つかの実装では、リポジトリ全体は、順位および当該セット利用パラメータに基づいて選択された固定セットにより削除され置換えられる。幾つかの実装では、当該セット利用パラメータをユーザにより設定し制御してもよい。幾つかの実装では、セット識別エンジン162は、当該個別化されたエンティティ・リポジトリ176にあるべき特定の固定セットが既に当該個別化されたエンティティ・リポジトリ176に存在するかどうかを判定してもよい。そうである場合、セット識別エンジン162は何もしないか、または、当該セットが変化したかどうか、例えば、サーバ110で更新されているかどうかを判定してもよい。更新が行われた場合、セット識別エンジン162は、セット全体をダウンロードしてもよく、または、当該セットに適用するためのデルタをダウンロードしてもよい。セット識別エンジン162は、当該個別化されたエンティティ・リポジトリ176からセットを削除して、より高い順位を有するセットのために空きを作ってもよい。
コンピューティング・デバイス150は、サーバ110および他のモバイル・デバイスとネットワーク140上で通信してもよい。ネットワーク140は例えば、インターネットであってもよく、またはネットワーク160は例えば、ゲートウェイデバイス、ブリッジ、スイッチ等を用いて実装された有線または無線ローカル・エリアネットワーク(LAN)、広域ネットワーク(WAN)等であることができる。ネットワーク140はまた、セルラ通信ネットワークを表してもよい。ネットワーク140を介して、サーバ110はコンピューティング・デバイス140と通信してデータを送受信してもよく、コンピューティング・デバイス140は他のモバイル・デバイス(図示せず)と通信してもよい。
個別化されたエンティティ・リポジトリシステム100は1つの例示的な構成を表し、実装は他の構成を組み込んでもよい。例えば、幾つかの実装は、スクリーン・コンテンツ・エージェント160、セット識別エンジン162、またはセット予測モデル164のコンポーネントの1つまたは複数を単一のモジュールまたはエンジンに結合してもよい。同様に、幾つかの実装はエンティティ・セット生成エンジン120またはセット予測モデル122の1つまたは複数を単一のモジュールまたはアプリケーションに結合してもよい。別の例として、スクリーン・キャプチャ・インデックス172、個別化されたエンティティ・リポジトリ176、またはクライアント・デバイス150またはエンティティ・リポジトリ130上のユーザ・プロフィール、固定されたエンティティ・セット132、検索レコード134、またはクロールされたドキュメント136のようなデータ・ストアの1つまたは複数を、単一のデータ・ストアに結合してもよく、または、複数のコンピューティング・デバイスにわたって分散してもよく、または、別の位置に格納してもよい。
個別化されたエンティティ・リポジトリシステム100がユーザ固有のデータを収集し格納するかまたは個人情報を利用しうる範囲で、ユーザに、ユーザ情報の集合(例えば、ユーザのソーシャルネットワーク、ソーシャルアクションまたはアクティビティ、ユーザの嗜好、またはユーザの現在の位置に関する情報)を制御する機会、またはスクリーン・キャプチャ画像およびコンテンツを格納するかどうかおよび/またはその方法を制御する機会を提供してもよい。例えば、当該システムは、銀行アプリケーション、健康アプリケーション、または他の同様なアプリケーションのような特定のアプリケーションに対して、または、かかるコンテンツをキャプチャすることがサービスの条項に違反する場合に、コンテンツをキャプチャするのを控えてもよい。さらに、ユーザに、特定のアプリケーションまたはアプリケーションのカテゴリに対するスクリーンコンテンツのキャプチャを無効にする機会を提供してもよい。さらに、特定のデータを、個人的に識別可能な情報が除去されるように、それが格納または利用される前に1つまたは複数の方法で処理してもよい。例えば、個人的に識別可能な情報をユーザに対して決定できないようにユーザのアイデンティティを処理してもよく、ユーザの地理的位置を、ユーザの特定の位置を決定できないように、位置情報が取得される場所で(例えば都市、ZIPコード、または州レベルに)一般化してもよい。したがって、ユーザは、どのように情報がユーザに関して収集され個別化されたエンティティ・リポジトリシステムにより使用されるかに対する制御を有しうる。
図2は、開示された主題に従う、個別化されたエンティティ・リポジトリに対するセット利用パラメータを指定するためのユーザ・インタフェース200の例示的な表示を示す。当該ディスプレイは、図1のクライアント・デバイス150のようなモバイル・デバイスのディスプレイまたは他のパーソナルコンピューティング・デバイスであってもよい。幾つかの実装では、ユーザ・インタフェースを、クライアント・デバイスのオペレーティング・システムにより提供してもよく、または、特定のアプリケーションにより、例えば、図1のアプリケーション155から提供してもよい。ユーザ・インタフェース200は、図1のコンテンツ・エージェント160のようなコンテンツ・エージェントに対するコントロール205を含む。コントロール205は、当該コンテンツ・エージェントがアクションを実施するかどうかおよびどのように実施するか、ならびに、どのアクションを当該コンテンツ・エージェントが実施するかを規制してもよい。ユーザ・インタフェース200はまた、個別化されたエンティティ・リポジトリに対するセット利用パラメータを含んでもよい。当該セット利用パラメータが、最大記憶210、最大数のセット215、または記憶220のパーセントの1つまたは複数を含んでもよい。最大記憶210は、図1の個別化されたエンティティ・リポジトリ176のような個別化されたエンティティ・リポジトリにより使用されるメモリの量に制限を設定してもよい。クライアント・デバイスは、エンティティの固定セット(スライス)をダウンロードし記憶してもよいが、最大記憶210を超えてはならない。
当該セット利用パラメータはまた最大セット215を含んでもよい。最大セット215は、クライアント・デバイスが個別化されたエンティティ・リポジトリ内に含むエンティティの固定セットの数を制限する。換言すれば、クライアント・デバイスは指定された数のセットのみをダウンロードし記憶してもよい。記憶220のパーセントは、柔軟な制限を当該個別化されたエンティティ・リポジトリのサイズに提供してもよい。例えば、クライアント・デバイスがより多くのメモリを有するとき、記憶220のパーセントのパラメータはより大きな個別化されたエンティティ・リポジトリを可能としうるが、クライアント・デバイスの空間が消えると、当該パラメータは当該個別化されたエンティティ・リポジトリに格納されるセットを制限してもよい。ユーザ・インタフェース200によりまた、ユーザはセット利用パラメータの組合せを、例えば、チェックボックスを介して選択して、セット利用パラメータをオンまたはオフにすることができてもよい。したがって、ユーザはそれらのデバイス上の個別化されたエンティティ・リポジトリのサイズを制御することができ、これは、どのスライスが当該リポジトリに含まれるかを制御する。ユーザ・インタフェース200はまた、特に当該個別化されたエンティティ・モデルに含めるためのエンティティの1つまたは複数のセットをユーザが選択できるようにするコントロール225を含んでもよい。ユーザが特にコントロール225を使用して当該エンティティ・リポジトリのスライスを選択すると、当該システムはそのスライスの関連性を高く順位付けして、それが常に当該個別化されたエンティティ・モデルに含まれるようにしてもよい。
図3は、開示された実装に従う、どのセットがコンピューティング・デバイスのユーザに最も関連するかを判定するためのコンテキストを提供するコンテンツの例示的なディスプレイ300を示す。ディスプレイ300は、図1のクライアント・デバイス150のようなモバイル・デバイスのディスプレイまたは他のコンピューティング・デバイスであってもよい。図3の例において、当該テキスト「Alien Invaders」が選択されている。当該選択はユーザにより行われていてもよく、または、クライアント・デバイス(例えば、クライアント・デバイスで実行されているコンテンツ・エージェントまたは動作提案アプリケーション)により自動的に行われていてもよい。当該システムは、選択305に対する4つの提案された動作、即ち動作340を提供している。動作340は、ローカル映画時間、映画レビュー動作325、および映画データベース動作320を提供するモバイル・アプリケーションに対するものであってもよい。ユーザ・インタフェースは、選択305の識別に基づいて、当該個別化されたエンティティ・リポジトリに存在するエンティティとして、動作340、325、および320を選択しているかもしれない。したがって、当該システムは、サーバへの接続およびサーバベースのエンティティ・リポジトリへの接続がなくても、ディスプレイ300を提供しうる。
図4は、開示された実装に従う、個別化されたエンティティ・リポジトリに含めるための追加のスライスを提案するためのユーザ・インタフェース400の例示的な表示を示す。ユーザ・インタフェース400が、図1のクライアント・デバイス150のようなモバイル・デバイスまたは他のコンピューティング・デバイスで生成されてもよい。図4の例において、ユーザはテキストを検索インタフェース405に入力している。検索インタフェース405はブラウザまたはブラウザ風のモバイル・アプリケーションに対するものであってもよいが、任意のアプリケーション内の任意の検索バーからのものでありうる。当該システムは、検索インタフェース405に提供されたテキストを分析して、例えば、セット予測モデルを用いるセット識別エンジンを介して、当該テキストがトピックベースのエンティティの固定セットに強く関連すると判定してもよい。当該高い関連性が、当該セット予測モデルからの高い信頼性スコアまたは確率に基づいて決定されてもよい。当該高い関連性が、ユーザ・インタフェース400のコンテンツに基づいてもよいだけでなく、以前に提供されたコンテンツに基づいてもよい。例えば、ユーザがハワイのホテルを予約アプリケーションで見ていたかもしれず、または、ハワイで見るべきものに関して読んでいるかもしれない。クライアント・デバイスは現在の個別化されたエンティティ・リポジトリ内にハワイに関するエンティティを有さないかもしれないが、当該セット予測モデルは当該セットを予測する幾つかの単語または画像を認識してもよい。幾つかの実装では、当該セット識別エンジンは関連するモデルに関するテキストを連続的に分析してもよい。幾つかの実装では、当該セット識別エンジンを検索インタフェースの利用の間に起動してもよい。
当該エンティティの固定セットの確率が高い関連性を示すとき、当該システムは、ハワイ・スライスとも称される、ハワイに対する当該エンティティの固定セットを自動的にダウンロードし格納してもよい。幾つかの実装では、これは、ハワイに配置された全てのエンティティに対する位置ベースのセット、またはトピックベースのセット、またはこれらの組合せであってもよい。幾つかの実装では、ユーザ・インタフェースが、確認ウィンドウ410を含んでもよい。確認ウィンドウ410により、ユーザが当該提案を受理または拒絶できてもよい。ユーザが当該提案を拒絶した場合、当該システムはハワイ・スライスをダウンロードしなくてもよい。ユーザが当該提案を受け入れた場合、当該システムはハワイ・スライスをダウンロードしてもよく、図7に関してより詳細に説明するように、現在当該個別化されたエンティティ・リポジトリ内にある1つまたは複数のスライスを除去して、新たなスライスのために空きを作ってもよい。
図5は、開示された実装に従う、パーソナル・エンティティ・リポジトリに含めるための追加のセットを提案するためのユーザ・インタフェース500の別の表示の例を示す。ユーザ・インタフェース500が、図1のクライアント・デバイス150のようなモバイル・デバイスまたは他のコンピューティング・デバイスで生成されてもよい。図5の例において、ユーザは夕食予約アプリケーション505をちょうどインストールした。当該インストールプロセスに応答して、当該セット識別エンジンは、アプリケーション505が特定のエンティティの固定セットを明示的に要求したと判定するか、または、例えば、セット予測エンジンを用いて、当該特定の固定セットを参照する可能性が高いと判定してもよい。したがって、ユーザに確認ウィンドウ510を提供してもよい。確認ウィンドウ410と同様に、確認ウィンドウ510は、ユーザが当該特定のスライスのダウンロードを選択するかまたは当該ダウンロードを拒否する機会を提供してもよい。幾つかの実装では、アプリケーション505はウィンドウ510を生成してもよい。幾つかの実装では、当該アプリケーションインストールプロセス(図示せず)または当該セット識別エンジンは当該特定のエンティティの固定セットを自動的にダウンロードしてもよい。
図6は、開示された実装に従う、エンティティの固定セットを生成し更新するための1つの例示的なプロセス600の流れ図を示す。プロセス600を、図1のシステム100のような個別化されたエンティティ・リポジトリシステムにより実施してもよい。プロセス600を使用して、エンティティ・リポジトリの様々なスライス、即ち、エンティティの固定セットを生成し維持してもよい。当該エンティティ・リポジトリは、任意の大規模なエンティティ・リポジトリ、例えば、図1のエンティティ・リポジトリ130であってもよい。プロセス600は、エンティティの位置ベースのセットを生成するステップにより開始してもよい(605)。位置ベースのエンティティのセットは、特定のセルに配置されたエンティティ・リポジトリ内の任意のエンティティであってもよい。当該セルを境界により、例えば、3つ以上の地理的座標を接続する線により定義してもよい。当該セルは1つまたは複数のジオセル(例えば、地図アプリケーションにより定義されるセル)に対応してもよい。当該システムはまた、トピックベースのエンティティの固定セットを生成してもよい(610)。トピックベースのセットを、クラスタ化により、シード・エンティティとの類似性またはそれへの接続により、集合内のメンバにより形成してもよい等である。当該システムはまた、エンティティの機能セットを生成してもよい(615)。当該機能セットは、位置ベースのセットおよびトピック・セットの組合せであってもよく、特定のアプリケーションによる使用に基づいてもよく、人気度(即ち、エンティティに対して最も共通的に検索されたものおよび/または最もクロールされたドキュメントに出現するもの)に基づいてもよく、タスクまたはアクション等に基づいてもよい。ステップ605乃至615を最初の時点で実施してセットを更新してもよい。例えば、最初の時点で、当該システムはステップ605乃至615を実施して、エンティティの初期セットを生成してもよい。続いて、当該システムは、ステップ605乃至615を実施して当該初期セットを更新し、新たなセットを追加してもよい等である。
当該システムはエンティティの固定セットをバージョン管理してもよい。例えば、当該セットへのフォーマット変更が当該セットを使用するアプリケーションを故障させるとき、当該システムは古いバージョンを保持し、スキーマ変更の後に新たなバージョン生成してもよい。このように、当該システムは、クライアント・デバイスでエラーを引き起こさないようにスキーマ変更を処理してもよい。したがって、当該システムは、新たに生成されたセットがスキーマ変更を含むかどうかを判定してもよい(620)。その場合、(例えば、ステップ605乃至615から)当該新たに生成されたセットに新たなバージョン識別子を割り当ててもよい(625)。当該バージョン識別子は、当該セットを使用するアプリケーションが、適切なバージョンを正しくダウンロードし使用できるようにする。当該更新がスキーマ変更を含むとき、デルタセットは必要とされない。スキーマ変更がない場合(620、いいえ)、当該システムは各セットに対するデルタを生成してもよい(630)。個別化されたエンティティ・モデル内の全ての固定されたセットを削除し続いてそのデバイスに対する最高順位の固定されたエンティティ・セットの直近のセットを格納するのではなく、クライアント・デバイスが変更のみをエンティティの固定セットにダウンロードするときに当該デルタが使用される。デルタは除去すべきエンティティのリストおよび追加すべきエンティティのリストであってもよい。したがって、エンティティの更新、例えば、名前変更、メタデータまたは属性変更等は、当該エンティティを削除し続いて当該エンティティを読み取ることであってもよい。デルタにより、当該システムは、当該セットが維持されるサーバと当該セットが使用されるクライアント・デバイスとの間でデータをあまり送信しなくてもよい。しかし、ステップ630は任意であり、全てのセットに対して実施されなくてもよく、または、任意のセットに対してすら実施しなくてもよい。例えば、クライアント・デバイスは、当該個別化されたエンティティ・リポジトリを更新するとき、全ての現在格納されているスライスを削除し、所望のスライス(例えば、セット利用パラメータ内に入る予測されたスライス)をフェッチし、これらを個別化されたエンティティ・モデルとして格納してもよい。各エンティティの固定セットは一意な識別子を有してもよい。幾つかの実装では、当該一意な識別子は当該固定セットのコンテンツのハッシュであってもよい。プロセス600は次いで終了する。プロセス600を定期的に繰り返して、エンティティの固定セットが最新であることを保証してもよい。
図7は、開示された実装に従う、エンティティの事前に計算されたセットを用いてパーソナル・エンティティ・リポジトリを構築するための1つの例示的なプロセス700の流れ図を示す。プロセス700を、図1のシステム100のような個別化されたエンティティ・リポジトリシステムにより実施してもよい。プロセス700をクライアント・デバイスに実施して、どのエンティティの固定セットまたはスライスがクライアント・デバイスに格納された個別化されたエンティティ・リポジトリに含まれるかを判定してもよい。クライアント・デバイスは、連続的に、定期的に、ネットワーク接続変更の際に、新たなアプリケーションのインストール、着信、新たな連絡先の追加等、または同期のユーザ要求のようなトリガ・イベントの際に、プロセス700を実施してもよい。プロセス700を、セット識別エンジン162のようなセット識別エンジンにより実施してもよい。
プロセス700は、クライアント・デバイスのユーザに関連するエンティティの固定セットを識別するステップにより開始してもよい(705)。当該セットが、当該セットがステップ705の一部としてではなくステップ705の実施の前に決定されるという意味で、固定されてもよい。換言すれば、当該セットは、任意の特定のユーザまたはエンティティ・リポジトリに対するクエリと独立に決定される。ステップ705の一部として識別されたセットは、固定セットの総数よりかなり少ないサブセットである。当該固定セットの識別は、例えば、クライアント・デバイスに関連付けられたコンテキストに基づいてもよい。例えば、セット予測モデルに、例えば、コンテンツ・エージェント、検索履歴、ユーザ・プロフィール等を介してクライアント・デバイスで生成されたコンテンツから収集されたメタデータおよび情報を含みうる多数の信号(即ち、コンテキスト)から生成された1組の特徴が提供されてもよい。幾つかの実装では、信号として使用される情報が、クライアント・デバイスに近いデバイスから、例えば、家のモノのインターネット内の機器または他のコンピューティング・デバイスから、ユーザまたはユーザの家庭等に関連付けられた他のパーソナルコンピューティング・デバイスからの情報を含んでもよい。かかる信号は別のデバイスから生ずるが、当該近接性はクライアント・デバイスに関連付けられたコンテキストである。幾つかの実装では、当該情報が、当該コンピューティング・デバイスの位置、タイムスタンプ、ユーザに対する検索履歴の内容、スクリーン・キャプチャ・インデックスの内容、ユーザ・プロフィールに関連付けられたコンテンツ、クライアント・デバイスにインストールされたアプリケーション、ユーザにより実施されるアクティビティ(例えば、デバイス設定の変更、アプリケーションのインストール)等を含んでもよい。当該信号を、セット予測モデル122またはセット予測モデル164のようなセット予測モデルに提供してもよい。当該セット予測モデルは、1つまたは複数の予測されたエンティティの固定セットを提供してもよい。ステップ705で識別されるエンティティの固定セットはまた、デバイスの位置、デバイスにインストールされたアプリケーション、デバイスで一般的に実施されるタスクまたはアクティビティ等に基づいてもよい。
当該システムはついで、識別されたエンティティの固定セットを関連性により順位付けしてもよい(710)。当該関連性は、セット予測モデルにより提供される確率スコアに基づいてもよい。幾つかの実装では、当該システムは、デバイスの位置、日時、近くの他のデバイス等のような他の情報に基づいてその確率を調整してもよい。例えば、2人の旅の同伴者がそれらのデバイスをリンクした場合、第1の同伴者のデバイスは、例えば、デバイス間信号送信を介して、第2の同伴者のデバイスが当該エンティティ・リポジトリの特定のスライスを格納していると判定してもよく、当該第1の同伴者のデバイスは、例えば、当該2つのデバイスのうち1つが既に当該エンティティ・リポジトリのそのスライスを当該個別化されたエンティティ・リポジトリに格納しているので、そのスライスの関連性を格下げしてもよい。別の例として、ユーザのデバイスは、当該エンティティ・リポジトリの特定のスライスを要求する特定のアプリケーションを有してもよく、当該システムはその特定のスライスの関連性をブーストしてもよい。別の例として、当該システムは、例えば、図2のコントロール225を介してユーザにより指定されたスライスの関連性をブーストしてもよい。位置ベースのエンティティの固定セットに対して、当該システムは、当該セットにより表されるセルからのクライアント・デバイスの距離に基づいて、当該セットに対する関連性スコアを設定してもよい。例えば、クライアント・デバイスが当該セル内に配置されるとき、当該関連性は非常に高くてもよい。より長い距離がより低い関連性を生み出すように、他のセルの関連性は当該セルの中心とクライアント・デバイスの現在位置との間の距離に基づいてもよい。
当該システムは、当該セット利用パラメータおよび順位に基づいて当該個別化されたエンティティ・リポジトリに対する選択されたセットを決定してもよい(715)。幾つかの実装では、当該システムは当該セット利用パラメータに基づく関連性閾値およびユーザに関連するとして識別された固定されたエンティティ・セットの順位を決定してもよい。当該閾値を満たす関連性スコアを有する任意のセットが、当該個別化されたエンティティ・リポジトリに対して選択されたセットに含まれてもよい。図9は、当該セット利用パラメータおよび順位に基づく当該セットの選択の別の例である。当該システムはついで、当該個別化されたエンティティ・リポジトリを更新する必要があるかどうかを判定してもよい(720)。例えば、エンティティの当該選択された固定セットが当該個別化されたエンティティ・リポジトリに現在含まれるセットと同一であるが、当該システムが更新を最近チェックしていない場合、当該システムは当該リポジトリを更新してもよい(720、はい)。別の例として、当該システムが、当該選択されたセット内の固定セットのうち1つに対する更新を通知された場合、当該システムは当該リポジトリを更新してもよい(720、はい)。エンティティの固定セットが当該選択されたセット内にあるが現在当該個別化されたエンティティ・リポジトリ内にない場合、当該システムは当該リポジトリを更新してもよい(720、はい)。当該システムが当該リポジトリを更新する必要はない場合(720、いいえ)、プロセス700は終了する。
当該システムが当該リポジトリを更新する場合(720、はい)、当該システムは当該選択されたセットのうち最高順位のセットを選択してもよい(725)。説明の簡単さのため、この最高順位のセットを当該第1のセットと称してもよい。当該システムはこの第1のセットが既に当該個別化されたエンティティ・リポジトリ内にあるかどうかを判定してもよい(730)。当該リポジトリにおいてそうである場合(730、はい)、当該システムは、更新が必要とされる場合、クライアント・デバイス上の当該第1のセットを更新してもよい(735)。当該システムは、当該第1のセットを当該サーバからプルすることにより、または、更新が存在するとの当該サーバからの通知により、更新が必要とされるかどうかを判定してもよい。当該更新は、デルタ、例えば、削除すべきエンティティのリストおよび当該固定セットに追加すべきエンティティのリストの形であってもよい。当該第1のセットが当該個別化されたエンティティ・リポジトリ内にない場合(730、いいえ)、当該システムは、当該パーソナル・エンティティ・リポジトリが当該第1のセットに対する空きを有するかどうかを判定してもよい(740)。例えば、当該パーソナル・エンティティ・リポジトリは、当該リポジトリ内のセットの数、当該リポジトリにより使用されるメモリ、またはその両方に対する制限を有してもよい。当該第1のセットの追加が当該制限を超える場合(740、いいえ)、当該システムは、削除できる固定セットが現在当該個別化されたエンティティ・リポジトリ内にあるかどうかを判定してもよい(745)。現在当該個別化されたエンティティ・リポジトリ内にあるセットがエンティティの当該選択された固定セット、即ち、ステップ715で識別されたものの中にない場合、現在当該個別化されたエンティティ・リポジトリ内にあるセットを削除することができる。セットはまた、それが当該第1のセットより低い順位を有する場合、削除することができる。削除すべきセットがある場合(745、はい)、当該システムは当該セットを当該個別化されたエンティティ・リポジトリから削除し(750)、ステップ740に戻ってもよい。セットを削除できない場合(745、いいえ)、プロセス700は終了してもよい。
当該個別化されたエンティティ・リポジトリ内の当該第1のセットに空きがあるとき(740、はい)、当該システムは、当該第1のセットを当該モバイル・デバイス上の当該個別化されたエンティティ・リポジトリに追加してもよい(755)。当該システムはついで、当該選択されたセット内に次の最高順位のセットがあるかどうかを判定してもよい(760)。次の最高セットがある場合(760、はい)、当該システムは当該次のセットに対してステップ725乃至760を実施してもよい。この次のセットはついで、説明の簡単さのため第1のセットとなる。したがって、例えば、当該システムは当該次のセット、即ち、この時点では当該第1のセット、が既に当該個別化されたエンティティ・リポジトリ内にあるかどうかを判定してもよい(730)等である。当該選択されたセット内の全てのセットがステップ730乃至760を介して処理されると(760、いいえ)、当該システムは当該個別化されたエンティティ・リポジトリを更新しており、プロセス700は終了する。
図8は、開示された実装に従う、クライアント・デバイスのユーザに関連するエンティティの固定セットを識別するための1つの例示的なプロセス800の流れ図を示す。プロセス800を、図1のシステム100のような個別化されたエンティティ・リポジトリシステムにより実施してもよい。プロセス800を、図7のステップ705の一部としてクライアント・デバイスに実施して、どのエンティティの固定セットまたはスライスがユーザに関連するかを判定してもよい。プロセス800はクライアント・デバイスの位置を決定するステップにより開始する(805)。当該位置を、座標、例えば、全地球測位システム(GPS)座標として、またはジオセルの識別子、または地球上の位置を表現する幾つかの他の方法として表現してもよい。当該システムは、クライアント・デバイスから当該位置ベースの固定セットにより表される当該セルへの距離に基づいて、位置ベースのエンティティの固定セットの関連性を割り当ててもよい(810)。当該距離を、クライアント・デバイスの位置から当該セルの中心に測定してもよい。当該関連性はまた、より短い距離がより高い関連性を有するように、当該距離に対して逆関係を有してもよい。クライアント・デバイスが特定のエンティティの固定セットに対するセル内に配置されているとき、当該特定のエンティティの固定セットは最高関連性スコアを受信してもよい。
当該システムはまた、ユーザに関連するトピックベースのエンティティの固定セットを決定してもよい(815)。当該トピックベースのセットは、特徴に基づいて予測されたエンティティの固定セットに対する1つまたは複数の識別子を提供する、セット予測モデル164またはセット予測モデル122のようなセット予測モデルで決定されてもよい。当該特徴は、デバイスの位置、検索レコード内のコンテンツ、ユーザ・プロフィール、またはスクリーン・キャプチャコンテンツ、例えば、クライアント・デバイスとデータを交換する、クライアント・デバイスに近接するデバイスからのデータ、タイムスタンプ、その時点でインストールまたは実行されるアプリケーション等のような幾つかの情報アイテムに基づいてもよい。当該システムは、各トピックベースのエンティティの固定セットの関連性スコアを類似性クライアント・デバイスのユーザに対する埋込みとの類似性に設定してもよい(820)。幾つかの実装では、当該類似性が当該セット予測モデルにより提供される固定セットに関連付けられた確率であってもよい。当該システムはまた、機能エンティティの固定セットを決定してもよい(825)。当該機能セットは、最も人気があるとみなされるエンティティ、例えば、最も共通的に検索されたエンティティ、最も共通的にアクセスされたエンティティ、クロールされたドキュメント内で最も頻繁に発見されたエンティティ等であってもよい。当該機能セットはまた、特定のタスク、アクション、またはアプリケーションに使用されるエンティティを含んでもよい。例えば、機能セットが、当該デバイスがOCRを特定の言語で実施できるようにするエンティティ、または、絵画鑑賞アプリケーションにより使用されるエンティティ等を含んでもよい。機能セットはまた、位置ベースのおよびトピックベースのセットの組合せ、例えば、オレゴン州ポートランドの映画館またはワシントンDCのナショナル・モニュメントを含んでもよい。幾つかの実装では、当該システムはエンティティ人気度を、機能的なエンティティの固定セットに対する関連性スコアとして使用してもよい。幾つかの実装では、固定セットを、ユーザがインストールしたアプリケーションに基づいて高く順位付けてもよい。次いで、コンピューティング・デバイスのユーザに関連するエンティティの固定セットを識別し関連性スコアを各セットに割り当てて、プロセス800は終了する。
図9は、開示された実装に従う、セット利用パラメータに基づいて、エンティティの固定セットをクライアント・デバイスのユーザに関連するエンティティの固定セットから選択するための1つの例示的なプロセス900の流れ図を示す。プロセス900を、図1のシステム100のような個別化されたエンティティ・リポジトリシステムにより実施してもよい。プロセス900を図7のステップ715の一部としてクライアント・デバイスに実施して、どのユーザに関連するエンティティの固定セットまたはスライスがセット利用パラメータおよび順位に基づいてパーソナル・エンティティ・リポジトリに含めるために選択されるかを判定してもよい。プロセス900は、セットのカウントおよびモデルサイズ変数を初期化するステップにより開始する。当該セットのカウントをゼロに設定してもよく、当該リポジトリ・サイズはまた、ゼロに設定されてもよい。当該システムはついで、関連すると識別された固定セットから最高順位をもつ固定セットを選択してもよい(910)。当該システムは当該セット利用パラメータが量パラメータを含むかどうかを判定してもよい(915)。当該量パラメータは図2の最大セット215であり、当該個別化されたエンティティ・リポジトリ内にありうる固定セットの数に対する制限を表す。量パラメータがある場合(915、はい)、当該システムは当該セットのカウントを1だけ増大してもよい(920)。当該システムはついで、当該セットのカウントが当該量パラメータより大きいかどうかを判定してもよい(925)。そうである場合、当該固定セットが当該セット利用パラメータにより表される制限を超えるであろうので、プロセス900は終了してもよい。しかし、最高順位のセットに対して、当該セットのカウントが当該量パラメータより大きくなく(925、No)、そのため当該システムはステップ930で継続する。
当該システムは、当該セット利用パラメータが空間パラメータを含むかどうかを判定する(930)。当該空間パラメータを、指定された量のメモリ(例えば、図2の最大記憶210)または利用可能なメモリのパーセント(例えば、図2の記憶220のパーセント)、またはこれらの組合せと表現してもよい。当該セット利用パラメータが空間パラメータを含む場合(930、はい)、当該システムは、検査されている固定セットのサイズを当該リポジトリ・サイズに追加してもよい(953)。当該サイズは既知であってもよく、または、例えば、エンティティの固定セットの平均サイズに基づいて推定してもよい。当該システムは当該リポジトリ・サイズが当該空間パラメータより大きいかどうかを判定してもよい(940)。そうである場合(940、はい)、当該固定セットは当該セット利用パラメータにより確立された制限に違反するであろうので、プロセス900は終了する。そうでなければ(940、いいえ)、当該システムは当該セットを当該選択されたセットに追加する(945)。当該選択されたセットは、当該セット利用パラメータが確立した限界を満たすユーザに関連するとして識別された最高順位の固定セットである。当該識別されたセット内の別のセット(例えば、ユーザに関連するとして識別された固定セット)がある場合(950、はい)、当該システムは次の最高順位のセットを選択し(955)、上述のステップ915乃至950で継続してもよい。他のセットが当該識別されたセットに存在しない場合(950、いいえ)、当該セット利用パラメータに基づいて当該リポジトリに含まれるべきセットを識別して、プロセス900は終了する。
図10は汎用コンピュータ・デバイス1000の例を示す。汎用コンピュータ・デバイス1000は図1のサーバ110、および/またはクライアント・デバイス150として動作してもよく、それらを本明細書で説明した技術とともに使用してもよい。コンピューティング・デバイス1000は、ラップトップ、デスクトップ、ワークステーション、パーソナルデジタルアシスタント、携帯電話、スマートフォン、タブレット、サーバ、およびウェラブルデバイスを含む他のコンピューティング・デバイスのような様々な例示的な形態のコンピューティング・デバイスを表すことを意図する。本明細書で示したコンポーネント、それらの接続および関係、およびそれらの機能は例にすぎず、本明細書で説明および/またはクレームされた本発明の実装を限定することを意味しない。
コンピューティング・デバイス1000は、インタフェース1008を介して接続されたプロセッサ1002、メモリ1004、記憶デバイス1006、および拡張ポート1010を含む。幾つかの実装では、コンピューティング・デバイス1000が、他のコンポーネントのうち、インタフェース1008を介して接続されたトランシーバ1046、通信インタフェース1044、およびGPS(全地球測位システム)受信機モジュール1048を含んでもよい。デバイス1000は通信インタフェース1044を通じて無線で通信してもよく、通信インタフェース1044が、必要に応じてデジタル信号処理回路を含んでもよい。当該コンポーネント1002、1004、1006、1008、1010、1040、1044、1046、および1048の各々を共通マザーボードにまたは必要に応じて他の方式でマウントしてもよい。
プロセッサ1002は、ディスプレイ1016のような外部入出力デバイス上のGUIに対するグラフィカル情報を表示するためのメモリ1004または記憶デバイス1006に格納された命令を含む、コンピューティング・デバイス1000内で実行するための命令を処理することができる。ディスプレイ1016はモニタまたはフラットタッチスクリーンディスプレイであってもよい。幾つかの実装では、複数のプロセッサおよび/または複数のバスを複数のメモリおよびメモリのタイプとともに必要に応じて使用してもよい。また、複数のコンピューティング・デバイス1000を接続してもよく、各デバイスは必要な動作の部分を(例えば、サーバ・バンク、1群のブレードサーバ、またはマルチプロセッサシステムとして)提供する。
メモリ1004は情報をコンピューティング・デバイス1000内に記憶する。1実装では、メモリ1004は1つまたは複数の揮発性メモリ・ユニットである。別の実装において、メモリ1004は1つまたは複数の不揮発性メモリ・ユニットである。メモリ1004はまた、磁気または光ディスクのような別の形態のコンピュータ可読媒体であってもよい。幾つかの実装では、メモリ1004が、拡張インタフェースを通じて提供される拡張メモリを含んでもよい。
記憶デバイス1006は大容量記憶をコンピューティング・デバイス1000に提供することができる。1実装では、記憶デバイス1006は、記憶領域ネットワークまたは他の構成でのデバイスを含む、フロッピディスクデバイス、ハード・ディスクデバイス、光ディスクデバイス、またはテープ・デバイス、フラッシュ・メモリまたは他の同様な固体メモリデバイス、またはデバイスのアレイのようなコンピュータ可読媒体であるかまたはそれを含んでもよい。コンピュータプログラム製品をかかるコンピュータ可読媒体で有形に具現化することができる。
当該コンピュータプログラム製品はまた、実行されたとき、上述したもののような1つまたは複数の方法を実施する命令を含んでもよい。当該コンピュータまたはマシン可読媒体はメモリ1004、記憶デバイス1006、またはプロセッサ上のメモリ1002のような記憶デバイスである。
インタフェース1008は当該コンピューティング・デバイスに対する帯域幅集約的動作を管理する高速コントローラ1000または低帯域幅集約的動作を管理する低速コントローラ、またはかかるコントローラの組合せであってもよい。外部インタフェース1040をデバイス1000の他のデバイスとの近領域通信を可能とするために提供してもよい。幾つかの実装では、コントローラ1008を記憶デバイス1006および拡張ポート1014に接続してもよい。様々な通信ポート(例えば、USB、Bluetooth(登録商標)、Ethernet、無線Ethernet)を含みうる拡張ポートをキーボード、ポインティング・デバイス、スキャナのような1つまたは複数の入出力デバイス、または例えば、ネットワークアダプタを通じてスイッチまたはルータのようなネットワーク・デバイスに接続してもよい。
コンピューティング・デバイス1000を、図面で示すように幾つかの異なる形態で実装してもよい。例えば、それを、標準サーバ1030として、または1群のかかるサーバ内で複数回実装してもよい。それをまた、ラック・サーバシステムの一部として実装してもよい。さらに、それを、ラップトップコンピュータ1032、パーソナル・コンピュータ1034、またはタブレット/スマートフォン1036のようなコンピューティング・デバイスで実装してもよい。システム全体が互いに通信する複数のコンピューティング・デバイス1000で構成されてもよい。他の構成が可能である。
図11は汎用コンピュータ・デバイス1100の例を示す。これは図1のサーバ110であってもよく、これを本明細書で説明した技術で使用してもよい。コンピューティング・デバイス1100は、サーバ、ブレードサーバ、データ・センタ、メインフレーム、および他の大規模コンピューティング・デバイスのような様々な例示的な形態の大規模データ処理デバイスを表すものである。コンピューティング・デバイス1100は、1つまたは複数の通信ネットワークにより相互接続される、おそらくネットワーク取付記憶ノードを含む複数のプロセッサを有する分散システムであってもよい。本明細書で示したコンポーネント、それらの接続および関係、およびそれらの機能は例にすぎず、本願で説明および/またはクレームした本発明の諸実装を限定することを意味しない。
分散コンピューティング・システム1100が、任意数のコンピューティング・デバイス1180を含んでもよい。コンピューティング・デバイス1180が、ローカルまたは広域ネットワーク、専用光リンク、モデム、ブリッジ、ルータ、スイッチ、有線または無線ネットワーク等を介して通信するサーバまたはラック・サーバ、メインフレーム等を含んでもよい。
幾つかの実装では、各コンピューティング・デバイスが、は複数のラックを含んでもよい。例えば、コンピューティング・デバイス1180aは複数のラック1158a−1158nを含む。各ラックが、プロセッサ1152a−1152nおよび1162a−1162nのような1つまたは複数のプロセッサを含んでもよい。当該プロセッサが、データプロセッサ、ネットワーク取付記憶デバイス、および他のコンピュータ制御されたデバイスを含んでもよい。幾つかの実装では、或るプロセッサはマスタプロセッサとして動作してもよく、スケジューリングおよびデータ分散タスクを制御してもよい。プロセッサは1つまたは複数のラックスイッチ1158を介して相互接続されてもよく、1つまたは複数のラックを、スイッチ1178を通じて接続してもよい。スイッチ1178は複数の接続されたコンピューティング・デバイス1100間の通信を扱ってもよい。
各ラックが、メモリのようなメモリ1154およびメモリ1164、および、1156および1166のような記憶を含んでもよい。記憶1156および1166は大容量記憶を提供してもよく、記憶領域ネットワークまたは他の構成内のデバイスを含む、ネットワーク取付ディスク、フロッピディスク、ハード・ディスク、光ディスク、テープ、フラッシュ・メモリまたは他の同様な固体メモリデバイス、またはデバイスのアレイのような揮発性または不揮発性記憶を含んでもよい。記憶1156または1166は複数のプロセッサ、複数のラック、または複数のコンピューティング・デバイスの間で共有されてもよい、当該プロセッサの1つまたは複数により実行可能な命令を格納するコンピュータ可読媒体を含んでもよい。メモリ1154および1164が、例えば、磁気または光ディスク、フラッシュ・メモリ、キャッシュ、ランダム・アクセスメモリ(RAM)、読取専用メモリ(ROM)、およびそれらの組合せのような1つまたは複数の揮発性メモリ・ユニット、1つまたは複数の不揮発性メモリ・ユニット、および/または他の形態のコンピュータ可読媒体を含んでもよい。メモリのようなメモリ1154がまた、プロセッサ1152a−l152nの間で共有されてもよい。インデックスのようなデータ構造を例えば記憶1156およびメモリ1154にわたって格納してもよい。
コンピューティング・デバイス1100が、コントローラ、バス、入出力デバイス、通信モジュール等のような図示していない他のコンポーネントを含んでもよい。
サーバ110のようなシステム全体が、互いに通信する複数のコンピューティング・デバイス1100で構成されてもよい。例えば、デバイス1180はデバイス1180b、1180c、および1180dと通信してもよく、これらは集合的にサーバ110として知られ得る。別の例として、図1のシステム100が、1つまたは複数のコンピューティング・デバイス1100を含んでもよい。当該コンピューティング・デバイスの幾つかが互いと地理的に近接して配置されてもよく、その他が地理的に離れて配置されてもよい。システム1100のレイアウトは例にすぎず、当該システムは他のレイアウトまたは構成をとってもよい。
当該開示の特定の態様によれば、モバイル・デバイスはディスプレイ・デバイス、メモリに格納された個別化されたエンティティ・リポジトリを含む。当該個別化されたエンティティ・リポジトリは、サーバに格納されたエンティティ・リポジトリからのエンティティの複数の固定セットを含み、各固定セットは各識別子を有し、当該セット内の当該エンティティに関する情報、少なくとも1つのプロセッサ、および当該少なくとも1つのプロセッサにより実行されたとき、当該モバイル・デバイスに動作を実施させる命令を格納したメモリを含む。当該動作は、当該モバイル・デバイスのユーザに関連する当該エンティティ・リポジトリの固定セットを、当該モバイル・デバイスに関連付けられたコンテキストに基づいて識別するステップと、関連性により当該固定セットを順位づけるステップと、順位およびユーザに適用可能なセット利用パラメータを用いて、および当該個別化されたエンティティ・リポジトリを更新するステップ当該選択されたセットを用いて、当該識別された固定セットから選択されたセットを決定するステップとを含む。
この態様および他の態様は以下の特徴の1つまたは複数を含むことができる。例えば、当該個別化されたエンティティ・リポジトリを更新するステップを、第1の固定された1組の当該識別された固定セットは当該個別化されたエンティティ・リポジトリに存在しないと判定したことに応答して、行ってもよい。別の例として、当該個別化されたエンティティ・リポジトリを更新するステップは、選択されたセットではない当該個別化されたエンティティ・リポジトリ内のセットを除去するステップを含むことができる。別の例として、当該セット利用パラメータは固定セットの量および/または当該個別化されたエンティティ・リポジトリに割り当てられるメモリの量を含むことができ、当該量はユーザにより設定される。別の例として、当該個別化されたエンティティ・リポジトリに格納された当該複数の固定セットは位置セットを含むことができる。位置セット内のエンティティは同一のセルに配置される。別の例として、当該個別化されたエンティティ・リポジトリに格納された当該複数の固定セットはトピック・セットを含み、トピック・セット内のエンティティは、エンティティ特性に基づいてクラスタ化されたエンティティである。幾つかの実装では、第1のトピック・セットの順位は、当該ディスプレイ・デバイスで表示するために生成されたコンテンツで認識されたアイテムに基づいて予測モデルにより割り当てられた順位である。別の例として、当該個別化されたエンティティ・リポジトリを更新するステップは、当該個別化されたエンティティ・リポジトリに現在存在していない固定セットを追加し、当該個別化されたエンティティ・リポジトリに存在する固定セットのデルタを使用するステップを含むことができる。
別の例として、当該動作はまた、当該個別化されたエンティティ・リポジトリを用いて当該ディスプレイ・デバイスで表示するために生成されたコンテンツ内のエンティティを識別するステップを含んでもよい。別の例として、当該複数のセットの各々はバージョン識別子を有し、当該バージョン識別子は、特定のセットへの更新が当該個別化されたエンティティ・リポジトリのスキーマを壊したときに変化する。別の例として、当該動作はまた、第1の固定セットを当該選択されたセットから識別する情報およびユーザが当該第1の固定セットのインスタレーションを受け入れることを可能とするように構成されたコントロールの表示を開始するステップおよびユーザがインストールを受け入れたとき、当該第1の固定セットをダウンロードし、それを当該個別化されたエンティティ・リポジトリに追加するステップとを含んでもよい。別の例として、当該コンテキストに基づいてユーザに関連する当該エンティティ・リポジトリの固定セットを識別するステップは、当該モバイル・デバイスの位置を決定して、当該位置を用いてユーザに関連する位置ベースの固定セットを決定するステップと、セット予測モデルを用いて、ユーザに関連するトピックベースのセットを識別するステップと、当該モバイル・デバイスにインストールされた少なくとも1つのアプリケーションにより識別されたセットを決定するステップとを含むことができる。別の例として、当該コンテキストに基づいてユーザに関連する当該エンティティ・リポジトリの固定セットを識別するステップは、当該モバイル・デバイスで以前に参照されたコンテンツを決定するステップおよび以前に参照された当該コンテンツを、少なくとも1つのトピックベースのセットを以前に参照された当該コンテンツから予測するように構成されたセット予測モデルに提供するステップおよび/または当該モバイル・デバイスで行われた最近の検索を決定するステップおよび当該最近の検索からの当該コンテンツを、少なくとも1つのトピックベースのセットを当該コンテンツから予測するように構成されたセット予測モデルに提供するステップとを含むことができる。別の例として、当該コンテキストに基づいてユーザに関連する当該エンティティ・リポジトリの固定セットを識別するステップは、当該モバイル・デバイスのユーザにより実施されたアクティビティを決定するステップおよび当該アクティビティに基づいて、エンティティの固定セットを予測するステップとを含むことができる。
当該開示の特定の態様によれば、方法は、モバイル・デバイスのディスプレイ上でコンテンツを表示するように構成されたスクリーン・キャプチャされた画像を受信するステップと、テキスト認識を当該画像で実施し、当該テキストをセット予測モデルに提供することで当該画像内のテキストを決定するステップであって、当該セット予測モデルは、エンティティの1つまたは複数の固定セットを予測するようにトレーニングされる、ステップと、エンティティの当該予測された固定セットのエンティティの少なくとも1つの固定セットを、当該モバイル・デバイス上のメモリ内の個別化されたエンティティ・リポジトリに格納するステップとを含む。
これらのおよび他の態様は以下の特徴の1つまたは複数を含むことができる。例えば、当該方法はまた、当該個別化されたエンティティ・リポジトリを用いてスクリーン・キャプチャ画像内のエンティティを識別するステップを含んでもよい。当該方法はまた、スクリーン・キャプチャ画像において認識されたコンテンツに関連付けられた位置を決定するステップと、当該位置を当該セット予測モデルに提供するステップであって、当該セット予測モデルは、当該位置に基づいてエンティティの少なくとも1つの位置ベースの固定セットを予測する、ステップと、当該位置ベースのエンティティの固定セットを当該個別化されたエンティティ・リポジトリに格納するステップとを含んでもよい。別の例として、当該予測モデルは、エンティティの複数の予測された固定セットを予測してもよく、当該方法はまた、エンティティの当該予測された固定セットの各々を順位づけるステップと、セット利用パラメータおよび順位を用いて、エンティティの選択された固定セットをエンティティの当該予測された固定セットから決定するステップおよびエンティティの当該選択された固定セットを当該個別化されたエンティティ・リポジトリに格納するステップとを含む。
当該開示の特定の態様によれば、方法が、エンティティの複数の固定セットをエンティティ・リポジトリから生成するステップを含んでもよい。当該固定セットは、位置ベースのセットであって、各位置ベースのセットは、セル内部の位置を有する当該エンティティ・リポジトリからのエンティティを含み、当該セルは当該セットに関連付けられる、位置ベースのセット、およびトピックベースのセットであって、当該トピックベースのセットの少なくとも幾つかは、埋込み類似性を介して互いに関連する当該エンティティ・リポジトリからのエンティティを含む、トピックベースのセットとを含む。当該方法はまた、エンティティの当該固定セットのサブセットをクライアント・デバイスに提供するステップであって、クライアント・デバイスは、クライアント・デバイスの位置およびクライアント・デバイスで表示するために生成されたコンテンツで識別される認識されたアイテムに基づいて当該サブセットを要求する、ステップを含んでもよい。
これらのおよび他の態様は以下の特徴の1つまたは複数を含むことができる。例えば、当該方法はまた、当該エンティティ・リポジトリに追加された少なくとも1つのエンティティを識別するステップと、当該追加されたエンティティが属する少なくとも1つの固定セットを判定するステップと、当該追加されたエンティティを含む当該少なくとも1つの固定セットに対するデルタを生成するステップとを含んでもよい。別の例として、当該方法はまた、当該エンティティ・リポジトリに追加された少なくとも1つのエンティティを識別するステップと、当該追加されたエンティティが属する少なくとも1つの固定セットを判定するステップと、当該固定セットのスキーマが変更されたと判定するステップと、当該少なくとも1つの固定セットの新たなバージョンを生成するステップであって、当該新たなバージョンは当該追加されたエンティティを含み、新たなバージョン識別子を有する、ステップとを含んでもよい。別の例として、当該トピックベースのセットの少なくとも幾つかがシード・エンティティと同様なエンティティを含んでもよく、かつ/または、当該固定セットはまた機能セットを含んでもよく、当該機能セットのうち少なくとも1つは最も人気があるとみなされるエンティティを含む。
様々な実装は、記憶システム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスとデータおよび命令を送受信するように接続された、特殊目的または汎用目的でありうる少なくとも1つのプログラム可能プロセッサを含むプログラム可能システムで実行可能および/または解釈可能な1つまたは複数のコンピュータプログラムでの実装を含むことができる。
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーションまたはコードとしても知られる)はプログラム可能プロセッサに対するマシン命令を含み、高レベル手続き型および/またはオブジェクト指向プログラミング言語、および/またはアセンブリ/マシン言語で実装することができる。本明細書で使用する際、「マシン可読媒体」「コンピュータ可読媒体」という用語は、マシン命令および/またはデータをプログラム可能プロセッサに提供するために使用される、任意の非一時的コンピュータプログラム製品、装置および/またはデバイス(例えば、磁気ディスク、光ディスク、(読取りアクセスメモリを含む)メモリ、プログラム可能論理デバイス(PLD))を指す。
本明細書で説明したシステムおよび技術を、バックエンドコンポーネントを(例えば、データサーバとして)含むか、またはミドルウェアコンポーネント(例えば、アプリケーションサーバ)を含むか、またはフロントエンドコンポーネント(例えば、ユーザがそれを通じて本明細書で説明したシステムおよび技術の実装と対話できるグラフィカルユーザ・インタフェースまたはウェブ・ブラウザを有するクライアントコンピュータ)、またはかかるバックエンド、ミドルウェア、またはフロントエンドコンポーネントの任意の組合せを含むコンピューティング・システムで実装することができる。当該システムの当該コンポーネントを、任意の形態または媒体のデジタルデータ通信(例えば、通信ネットワーク)により相互接続することができる。通信ネットワークの例はローカル・エリアネットワーク(「LAN」)、広域ネットワーク(「WAN」)、およびインターネットを含む。
コンピューティング・システムはクライアントおよびサーバを含むことができる。クライアントおよびサーバは一般に互いから離れており、一般に通信ネットワークを通じて対話する。クライアントおよびサーバの当該関係は、当該夫々のコンピュータ上で実行され互いに対してクライアント・サーバ関係を有するコンピュータプログラムにより生ずる。
幾つかの実装を説明した。それにも関わらず、添付の特許請求の範囲で定義される本発明の範囲から逸脱せずに、様々な修正を行ってもよい。さらに、図面で示した論理フローは所望の結果を実現するために、示した特定の順序、または逐次的順序を要求しない。さらに、他のステップを提供してもよいか、またはステップを当該説明されたフローから削除してもよく、他のコンポーネントを当該説明されたシステムに追加するか、または、そこから削除してもよい。
したがって、他の実装は添付の特許請求の範囲内にある。
110 サーバ
120 エンティティ・セット生成エンジン
122 セット予測モデル
130 エンティティ・リポジトリ
132 固定エンティティ・セット
134 検索レコード
136 クロールされたドキュメント
140 ネットワーク
150 クライアント・デバイス
155 アプリ
157 データ
160 スクリーン・コンテンツ・エージェント
162 セット識別エンジン
164 セット予測モデル
172 スクリーン・キャプチャ・インデックス
176 個別化されたエンティティ・リポジトリ
190 クライアント・デバイス
195 モバイル・アプリ
197 データ

Claims (17)

  1. サーバに格納されたエンティティ・リポジトリ内のエンティティの固定セットを識別するステップであって、エンティティの各識別された固定セットは、前記エンティティ・リポジトリ内に格納されたエンティティのサブセットを含み、ユーザ要求と独立に計算され、モバイル・デバイスに関連付けられたコンテキストに基づいて前記モバイル・デバイスのユーザに関連するとして識別される、ステップであって、前記コンテキストは、前記モバイル・デバイスで生成されたコンテンツから収集されたメタデータおよび情報を含む信号であり、前記識別された固定セットは、セット予測モデルに前記信号を提供することによって、前記セット予測モデルによって提供された1つまたは複数の予測されたエンティティの固定セットである、ステップと、
    前記識別された固定セットを関連性により順位付けするステップであって、前記関連性は、前記セット予測モデルによって提供される確率スコアに基づく、ステップと、
    前記順位および前記ユーザに適用可能なセット利用パラメータを用いて、前記識別された固定セットから選択されたセットを決定するステップと、
    前記選択されたセットを用いて前記モバイル・デバイスのメモリに格納された個別化されたエンティティ・リポジトリを更新するステップであって、前記個別化されたエンティティ・リポジトリは前記サーバで格納された前記エンティティ・リポジトリからのエンティティの複数の固定セットを含み、各固定セットは各識別子を有し、前記セット内の前記エンティティに関する情報を含む、ステップと、
    を含む、方法。
  2. 前記個別化されたエンティティ・リポジトリを更新するステップは、前記選択されたセットの第1の固定セットは前記個別化されたエンティティ・リポジトリに存在しないと判定したことに応答して行われる、請求項1に記載の方法。
  3. 前記個別化されたエンティティ・リポジトリを更新するステップは、選択されたセットではない前記個別化されたエンティティ・リポジトリ内のセットを除去するステップを含む、請求項1または2に記載の方法。
  4. 前記セット利用パラメータは固定セットの量を含む、請求項1、2、または3に記載の方法。
  5. 前記セット利用パラメータは前記個別化されたエンティティ・リポジトリに割り当てられたメモリの量を含み、前記量は前記ユーザにより設定される、請求項1乃至4の何れか1項に記載の方法。
  6. 前記個別化されたエンティティ・リポジトリに格納された前記複数の固定セットは位置セットを含み、位置セット内のエンティティは同一の地理的領域内に配置される、請求項1乃至5の何れか1項に記載の方法。
  7. 前記個別化されたエンティティ・リポジトリに格納された前記複数の固定セットはトピック・セットを含み、トピック・セット内のエンティティは、エンティティ特性に基づいてクラスタ化されたエンティティである、請求項1乃至6の何れか1項に記載の方法。
  8. 第1のトピック・セットの前記順位は、ディスプレイ・デバイスに表示するために生成されたコンテンツに対応するエンティティに基づいて、予測モデルにより割り当てられた順位である、請求項7に記載の方法。
  9. 前記個別化されたエンティティ・リポジトリを更新するステップは、前記固定セットから削除されるべきエンティティのリストおよび前記固定セットに追加されるべきエンティティのリストを使用することによって、前記個別化されたエンティティ・リポジトリを更新するステップを含む、請求項1乃至8の何れか1項に記載の方法。
  10. 前記個別化されたエンティティ・リポジトリ内の、ディスプレイ・デバイスに表示するために生成されたコンテンツにおいて使用されるエンティティを識別するステップをさらに含む、請求項1乃至9の何れか1項に記載の方法。
  11. 前記複数のセットの各々はバージョン識別子を有し、前記バージョン識別子は、特定のセットへの更新により前記個別化されたエンティティ・リポジトリのスキーマが変更されたときに変化する、請求項1乃至10の何れか1項に記載の方法。
  12. 第1の固定セットを前記選択されたセットから識別する情報および前記ユーザが前記第1の固定セットのインストールを受け入れることを可能とするように構成されたコントロールの表示を開始するステップと、
    前記ユーザがインストールを受け入れたとき、前記第1の固定セットをダウンロードし、前記個別化されたエンティティ・リポジトリに追加するステップと、
    をさらに含む、請求項1乃至11の何れか1項に記載の方法。
  13. 前記コンテキストに基づいて前記ユーザに関連する前記エンティティ・リポジトリ内のエンティティの固定セットを識別するステップは、
    前記モバイル・デバイスの位置を決定して、前記位置を用いて前記ユーザに関連する位置ベースの固定セットを決定するステップと、
    セット予測モデルを用いて、前記ユーザに関連するトピックベースのセットを識別するステップと、
    前記モバイル・デバイスにインストールされた少なくとも1つのアプリケーションにより識別されたセットを決定するステップと、
    を含む、請求項1乃至12の何れか1項に記載の方法。
  14. 前記コンテキストに基づいて前記ユーザに関連する前記エンティティ・リポジトリ内のエンティティの固定セットを識別するステップは、
    前記モバイル・デバイスで以前に参照されたコンテンツを決定するステップと、
    前に参照された前記コンテンツに対応する少なくとも1つのトピックベースのセットを予測するように構成されたセット予測モデルに、以前に参照された前記コンテンツを提供するステップと、
    を含む、請求項1乃至13の何れか1項に記載の方法。
  15. 前記コンテキストに基づいて前記ユーザに関連する前記エンティティ・リポジトリ内のエンティティの固定セットを識別するステップは、
    前記モバイル・デバイスで行われた最近の検索を決定するステップと、
    前記最近の検索から得られたコンテンツに対応する少なくとも1つのトピックベースのセットを予測するように構成されたセット予測モデルに、前記最近の検索から得られたコンテンツを提供するステップと、
    を含む、請求項1乃至14の何れか1項に記載の方法。
  16. 前記コンテキストに基づいて前記ユーザに関連する前記エンティティ・リポジトリ内のエンティティの固定セットを識別するステップは、
    前記モバイル・デバイスの前記ユーザにより実施されたアクティビティを決定するステップと、
    前記アクティビティに基づいて、エンティティの固定セットを予測するステップと、
    を含む、請求項1乃至15の何れか1項に記載の方法。
  17. ディスプレイ・デバイスと、
    少なくとも1つのプロセッサと、
    前記少なくとも1つのプロセッサにより実行されたとき、前記モバイル・デバイスに請求項1乃至16のうち何れか1項に記載の方法を実施させる命令を格納する、メモリと、
    を備える、モバイル・デバイス。
JP2018520605A 2015-10-22 2016-10-18 個別化されたエンティティ・リポジトリ Active JP6655180B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562245241P 2015-10-22 2015-10-22
US62/245,241 2015-10-22
US14/962,415 US10178527B2 (en) 2015-10-22 2015-12-08 Personalized entity repository
US14/962,415 2015-12-08
PCT/US2016/057473 WO2017070079A1 (en) 2015-10-22 2016-10-18 Personalized entity repository

Publications (2)

Publication Number Publication Date
JP2018534690A JP2018534690A (ja) 2018-11-22
JP6655180B2 true JP6655180B2 (ja) 2020-02-26

Family

ID=58557676

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018520605A Active JP6655180B2 (ja) 2015-10-22 2016-10-18 個別化されたエンティティ・リポジトリ

Country Status (9)

Country Link
US (4) US10178527B2 (ja)
EP (1) EP3347835B1 (ja)
JP (1) JP6655180B2 (ja)
KR (1) KR102077289B1 (ja)
CN (2) CN108463817B (ja)
DE (1) DE112016004859T5 (ja)
GB (1) GB2558472A (ja)
RU (1) RU2696225C1 (ja)
WO (1) WO2017070079A1 (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9824079B1 (en) 2014-07-11 2017-11-21 Google Llc Providing actions for mobile onscreen content
US9965559B2 (en) 2014-08-21 2018-05-08 Google Llc Providing automatic actions for mobile onscreen content
US10970646B2 (en) 2015-10-01 2021-04-06 Google Llc Action suggestions for user-selected content
US10055390B2 (en) 2015-11-18 2018-08-21 Google Llc Simulated hyperlinks on a mobile device based on user intent and a centered selection of text
US10007867B2 (en) * 2016-04-04 2018-06-26 Google Llc Systems and methods for identifying entities directly from imagery
US10535005B1 (en) 2016-10-26 2020-01-14 Google Llc Providing contextual actions for mobile onscreen content
US11237696B2 (en) 2016-12-19 2022-02-01 Google Llc Smart assist for repeated actions
US10902444B2 (en) * 2017-01-12 2021-01-26 Microsoft Technology Licensing, Llc Computer application market clusters for application searching
US11429833B2 (en) * 2017-06-19 2022-08-30 Kyndryl, Inc. Cognitive communication assistant services
US20190026473A1 (en) * 2017-07-21 2019-01-24 Pearson Education, Inc. System and method for automated feature-based alert triggering
US10867128B2 (en) 2017-09-12 2020-12-15 Microsoft Technology Licensing, Llc Intelligently updating a collaboration site or template
US10742500B2 (en) * 2017-09-20 2020-08-11 Microsoft Technology Licensing, Llc Iteratively updating a collaboration site or template
US10691734B2 (en) 2017-11-21 2020-06-23 International Business Machines Corporation Searching multilingual documents based on document structure extraction
US10817313B2 (en) * 2018-02-23 2020-10-27 Adobe Inc. Machine learning techniques for adaptation of initial workspace
US10635979B2 (en) * 2018-07-20 2020-04-28 Google Llc Category learning neural networks
KR102055920B1 (ko) * 2018-12-19 2019-12-13 (주)린치핀 온라인 파츠북 서비스 제공 방법 및 시스템
TWI712977B (zh) * 2019-03-28 2020-12-11 第一商業銀行股份有限公司 主動勸募系統
CN111431968B (zh) * 2020-02-26 2021-09-21 华为技术有限公司 服务元素的跨设备分配方法、终端设备及存储介质
CN113204967B (zh) * 2021-05-25 2022-06-21 山东师范大学 简历命名实体识别方法及系统
US11709691B2 (en) * 2021-09-01 2023-07-25 Sap Se Software user assistance through image processing
US11928161B2 (en) * 2022-03-04 2024-03-12 Humane, Inc. Structuring and presenting event data for use with wearable multimedia devices
US20230325818A1 (en) * 2022-04-08 2023-10-12 Capital One Services, Llc Methods and systems for binding entity-restricted access tokens

Family Cites Families (152)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100348915B1 (ko) 1994-05-12 2002-12-26 마이크로소프트 코포레이션 텔레비젼프로그램선택방법및그시스템
US5946647A (en) 1996-02-01 1999-08-31 Apple Computer, Inc. System and method for performing an action on a structure in computer-generated data
US6662226B1 (en) 2000-01-27 2003-12-09 Inbit, Inc. Method and system for activating and capturing screen displays associated with predetermined user interface events
US8224776B1 (en) 2000-07-26 2012-07-17 Kdl Scan Designs Llc Method and system for hosting entity-specific photo-sharing websites for entity-specific digital cameras
AU2002210300A1 (en) 2000-10-18 2002-04-29 Chipworks Design analysis workstation for analyzing integrated circuits
WO2002041176A1 (en) * 2000-11-20 2002-05-23 British Telecommunicaitons Public Limited Company Method of updating interests
US7421153B1 (en) 2002-04-05 2008-09-02 Bank Of America Corporation Image and data processing system
AU2003224846A1 (en) 2002-04-05 2003-10-27 At And T Corp. Method and system for detecting and extracting named entities from spontaneous communications
US7054917B1 (en) 2002-08-07 2006-05-30 Propel Software Corporation Method for accelerating delivery of content in a computer network
US7376696B2 (en) 2002-08-27 2008-05-20 Intel Corporation User interface to facilitate exchanging files among processor-based devices
US20050083413A1 (en) 2003-10-20 2005-04-21 Logicalis Method, system, apparatus, and machine-readable medium for use in connection with a server that uses images or audio for initiating remote function calls
US8151280B2 (en) * 2003-10-27 2012-04-03 Microsoft Corporation Simple and dynamic configuration of network devices
EP1709625A1 (en) 2004-01-20 2006-10-11 Koninklijke Philips Electronics N.V. Method and system for determining the topic of a conversation and obtaining and presenting related content
US7707039B2 (en) 2004-02-15 2010-04-27 Exbiblio B.V. Automatic modification of web pages
US7536382B2 (en) 2004-03-31 2009-05-19 Google Inc. Query rewriting with entity detection
US7639387B2 (en) 2005-08-23 2009-12-29 Ricoh Co., Ltd. Authoring tools using a mixed media environment
US8745483B2 (en) 2004-10-07 2014-06-03 International Business Machines Corporation Methods, systems and computer program products for facilitating visualization of interrelationships in a spreadsheet
US8812551B2 (en) 2004-11-18 2014-08-19 International Business Machines Corporation Client-side manipulation of tables
US7702611B2 (en) 2005-01-07 2010-04-20 Xerox Corporation Method for automatically performing conceptual highlighting in electronic text
JP3993887B2 (ja) * 2005-02-28 2007-10-17 株式会社パンダネット 囲碁の対局システム
US7702128B2 (en) 2005-03-03 2010-04-20 Cssn Inc. Card Scanning Solutions System and method for scanning a business card from within a contacts address book and directly inserting into the address book database
US7809722B2 (en) 2005-05-09 2010-10-05 Like.Com System and method for enabling search and retrieval from image files based on recognized information
US20070008321A1 (en) 2005-07-11 2007-01-11 Eastman Kodak Company Identifying collection images with special events
US7548915B2 (en) 2005-09-14 2009-06-16 Jorey Ramer Contextual mobile content placement on a mobile communication facility
US7752209B2 (en) 2005-09-14 2010-07-06 Jumptap, Inc. Presenting sponsored content on a mobile communication facility
US7933897B2 (en) 2005-10-12 2011-04-26 Google Inc. Entity display priority in a distributed geographic information system
US7822759B2 (en) 2005-12-13 2010-10-26 Microsoft Corporation Query-driven sharing and syndication
US20070168379A1 (en) 2006-01-17 2007-07-19 Patel Sushma B Method and apparatus for cataloging screen shots of a program
US20080010605A1 (en) * 2006-06-12 2008-01-10 Metacarta, Inc. Systems and methods for generating and correcting location references extracted from text
CN101075236A (zh) 2006-06-12 2007-11-21 腾讯科技(深圳)有限公司 一种加快浏览器网页显示的装置和方法
US8347237B2 (en) 2006-06-27 2013-01-01 Palo Alto Research Center Incorporated Method, apparatus, and program product for efficiently detecting relationships in a comprehension state of a collection of information
US7917514B2 (en) 2006-06-28 2011-03-29 Microsoft Corporation Visual and multi-dimensional search
US20080046175A1 (en) * 2006-07-31 2008-02-21 Nissan Technical Center North America, Inc. Vehicle navigation system
US8489987B2 (en) 2006-07-31 2013-07-16 Ricoh Co., Ltd. Monitoring and analyzing creation and usage of visual content using image and hotspot interaction
CN101201827B (zh) 2006-12-14 2013-02-20 阿里巴巴集团控股有限公司 一种网页显示的方法和系统
US8671341B1 (en) 2007-01-05 2014-03-11 Linguastat, Inc. Systems and methods for identifying claims associated with electronic text
KR101370895B1 (ko) 2007-01-19 2014-03-10 엘지전자 주식회사 콘텐츠 표시 방법 및 이를 이용한 단말기
US8869191B2 (en) 2007-01-23 2014-10-21 Cox Communications, Inc. Providing a media guide including parental information
US8214367B2 (en) 2007-02-27 2012-07-03 The Trustees Of Columbia University In The City Of New York Systems, methods, means, and media for recording, searching, and outputting display information
US20080275701A1 (en) 2007-04-25 2008-11-06 Xiaotao Wu System and method for retrieving data based on topics of conversation
EP2156316A4 (en) 2007-05-07 2013-03-06 Fourthwall Media Inc PROVISION OF PERSONALIZED RESOURCES ON REQUEST BY A BROADBAND NETWORK TO APPLICATIONS OF A CONSUMER DEVICE
US8688089B2 (en) * 2007-06-26 2014-04-01 Gosub 60, Inc. Methods and systems for providing in-game hot spots
GB2462399A (en) 2007-06-28 2010-02-10 Taptu Ltd Search result ranking
US7921069B2 (en) 2007-06-28 2011-04-05 Yahoo! Inc. Granular data for behavioral targeting using predictive models
US8700604B2 (en) 2007-10-17 2014-04-15 Evri, Inc. NLP-based content recommender
US8594996B2 (en) 2007-10-17 2013-11-26 Evri Inc. NLP-based entity recognition and disambiguation
WO2009054619A2 (en) 2007-10-22 2009-04-30 Moon Key Lee Augmented reality computer device
US9159034B2 (en) 2007-11-02 2015-10-13 Ebay Inc. Geographically localized recommendations in a computing advice facility
US20110246471A1 (en) 2010-04-06 2011-10-06 Selim Shlomo Rakib Retrieving video annotation metadata using a p2p network
US8255386B1 (en) 2008-01-30 2012-08-28 Google Inc. Selection of documents to place in search index
JP5336748B2 (ja) 2008-03-06 2013-11-06 インターナショナル・ビジネス・マシーンズ・コーポレーション コンテンツ中のアクセシビリティに関する問題箇所を他人へ効果的に伝達するためのコンピュータ、方法、プログラム
US7970808B2 (en) 2008-05-05 2011-06-28 Microsoft Corporation Leveraging cross-document context to label entity
US8630972B2 (en) 2008-06-21 2014-01-14 Microsoft Corporation Providing context for web articles
US20100010912A1 (en) * 2008-07-10 2010-01-14 Chacha Search, Inc. Method and system of facilitating a purchase
CN101667185B (zh) 2008-09-05 2012-10-17 深圳富泰宏精密工业有限公司 行动装置及其图片快速显示方法
CN101763357B (zh) 2008-11-13 2016-09-14 北京搜狗科技发展有限公司 一种用于浏览器加载互联网资源的方法及系统
EP2380106B1 (en) 2008-12-18 2018-05-30 Koninklijke Philips N.V. Software bug and performance deficiency reporting system
US20100228767A1 (en) * 2009-02-06 2010-09-09 Slinker Scott W Determining relationships between individuals in a database
EP2399385B1 (en) 2009-02-18 2019-11-06 Google LLC Automatically capturing information, such as capturing information using a document-aware device
US8229883B2 (en) 2009-03-30 2012-07-24 Sap Ag Graph based re-composition of document fragments for name entity recognition under exploitation of enterprise databases
WO2010114543A1 (en) 2009-04-01 2010-10-07 Hewlett-Packard Development Company, L.P. Screen capture
US8370762B2 (en) 2009-04-10 2013-02-05 Cellco Partnership Mobile functional icon use in operational area in touch panel devices
US8533223B2 (en) 2009-05-12 2013-09-10 Comcast Interactive Media, LLC. Disambiguation and tagging of entities
US20100325127A1 (en) * 2009-06-18 2010-12-23 Nokia Corporation Method and apparatus for automatic geo-location and social group indexing
CN101587495A (zh) 2009-07-08 2009-11-25 伍帝州 通过浏览器下载部署应用并提供应用入口的方法及系统
US8571319B2 (en) 2009-07-28 2013-10-29 International Business Machines Corporation Enhanced screen capture for form manipulation
US9135277B2 (en) 2009-08-07 2015-09-15 Google Inc. Architecture for responding to a visual query
KR101651128B1 (ko) 2009-10-05 2016-08-25 엘지전자 주식회사 이동 단말기 이것의 애플리케이션 실행 제어 방법
JP2011096173A (ja) * 2009-11-02 2011-05-12 Nec Corp 情報提供システム、情報提供端末、情報提供サーバ、情報提供方法および情報提供プログラム
US8515185B2 (en) * 2009-11-25 2013-08-20 Google Inc. On-screen guideline-based selective text recognition
US20110128288A1 (en) 2009-12-02 2011-06-02 David Petrou Region of Interest Selector for Visual Queries
US8977639B2 (en) 2009-12-02 2015-03-10 Google Inc. Actionable search results for visual queries
US9405772B2 (en) 2009-12-02 2016-08-02 Google Inc. Actionable search results for street view visual queries
US20110145692A1 (en) 2009-12-16 2011-06-16 Peter Noyes Method for Tracking Annotations with Associated Actions
US20110225152A1 (en) 2010-03-15 2011-09-15 Microsoft Corporation Constructing a search-result caption
EP2393056A1 (en) * 2010-06-02 2011-12-07 Layar B.V. Acquiring, ranking and displaying points of interest for use in an augmented reality service provisioning system and graphical user interface for displaying such ranked points of interests
US9158846B2 (en) 2010-06-10 2015-10-13 Microsoft Technology Licensing, Llc Entity detection and extraction for entity cards
US8468110B1 (en) 2010-07-22 2013-06-18 Intuit Inc. Real-time user behavior prediction
US20120083294A1 (en) 2010-09-30 2012-04-05 Apple Inc. Integrated image detection and contextual commands
US9189549B2 (en) 2010-11-08 2015-11-17 Microsoft Technology Licensing, Llc Presenting actions and providers associated with entities
CA2819369C (en) 2010-12-01 2020-02-25 Google, Inc. Identifying matching canonical documents in response to a visual query
US8880555B2 (en) 2010-12-17 2014-11-04 Facebook, Inc. Ranking of address book contacts based on social proximity
KR101741551B1 (ko) 2010-12-20 2017-06-15 엘지전자 주식회사 이동 단말기 및 이것의 애플리케이션 제어 방법
US9542501B2 (en) 2011-01-28 2017-01-10 Radware Ltd. System and method for presenting content in a client/server environment
US8849931B2 (en) * 2011-03-15 2014-09-30 Idt Messaging, Llc Linking context-based information to text messages
US8341156B1 (en) * 2011-04-04 2012-12-25 Google Inc. System and method for identifying erroneous business listings
US8977629B2 (en) 2011-05-24 2015-03-10 Ebay Inc. Image-based popularity prediction
JP2012252742A (ja) 2011-06-02 2012-12-20 Elpida Memory Inc 半導体装置
CN103890695B (zh) 2011-08-11 2017-10-13 视力移动技术有限公司 基于手势的接口系统和方法
US8713004B1 (en) * 2011-08-26 2014-04-29 Google Inc. Method and system for prioritizing points of interest for display in a map using category score
US8204966B1 (en) 2011-09-26 2012-06-19 Google Inc. Map tile data pre-fetching based on user activity analysis
US8280414B1 (en) 2011-09-26 2012-10-02 Google Inc. Map tile data pre-fetching based on mobile device generated event analysis
US9305108B2 (en) 2011-10-05 2016-04-05 Google Inc. Semantic selection and purpose facilitation
US20150212695A1 (en) 2011-10-05 2015-07-30 Google Inc. Suggested action feedback
US20130097507A1 (en) 2011-10-18 2013-04-18 Utc Fire And Security Corporation Filmstrip interface for searching video
EP2587745A1 (en) 2011-10-26 2013-05-01 Swisscom AG A method and system of obtaining contact information for a person or an entity
WO2013067000A1 (en) 2011-11-01 2013-05-10 Google Inc. Launching applications from webpages
US20130117252A1 (en) 2011-11-09 2013-05-09 Google Inc. Large-scale real-time fetch service
US9665643B2 (en) 2011-12-30 2017-05-30 Microsoft Technology Licensing, Llc Knowledge-based entity detection and disambiguation
US8832116B1 (en) * 2012-01-11 2014-09-09 Google Inc. Using mobile application logs to measure and maintain accuracy of business information
EP2810216B1 (en) 2012-01-31 2017-11-15 Given Imaging Ltd. System and method for displaying motility events in an in vivo image stream
US9230212B2 (en) * 2012-02-02 2016-01-05 Peel Technologies, Inc. Content based recommendation system
US9171068B2 (en) 2012-03-07 2015-10-27 Ut-Battelle, Llc Recommending personally interested contents by text mining, filtering, and interfaces
US20130263098A1 (en) 2012-03-29 2013-10-03 Pawel Piotr Duda Method and system for testing of mobile web sites
US9836545B2 (en) * 2012-04-27 2017-12-05 Yahoo Holdings, Inc. Systems and methods for personalized generalized content recommendations
AU2013263340B2 (en) * 2012-05-16 2015-05-14 Okta, Inc. Systems and methods for providing and managing distributed enclaves
CN104471575A (zh) * 2012-05-18 2015-03-25 文件档案公司 使用内容
WO2013173940A1 (en) 2012-05-22 2013-11-28 Beijing Baina Info - Tech,Co., Ltd A method and system for providing application data
US9582146B2 (en) 2012-05-29 2017-02-28 Nokia Technologies Oy Causing display of search results
US8849567B2 (en) * 2012-05-31 2014-09-30 Google Inc. Geographic data update based on user input
US9075974B2 (en) 2012-07-25 2015-07-07 Google Inc. Securing information using entity detection
US10091552B2 (en) * 2012-09-19 2018-10-02 Rovi Guides, Inc. Methods and systems for selecting optimized viewing portions
US9165406B1 (en) 2012-09-21 2015-10-20 A9.Com, Inc. Providing overlays based on text in a live camera view
US9274839B2 (en) * 2012-09-27 2016-03-01 Intel Corporation Techniques for dynamic physical memory partitioning
US9726510B2 (en) * 2012-10-25 2017-08-08 Intel Corporation Route optimization including points of interest
US9407824B2 (en) 2012-11-01 2016-08-02 Google Inc. Multi-directional content capture on mobile devices
US8990194B2 (en) * 2012-11-02 2015-03-24 Google Inc. Adjusting content delivery based on user submissions of photographs
EP2728481A1 (en) 2012-11-04 2014-05-07 Rightware Oy Evaluation of page load performance of web browser
US20140146200A1 (en) 2012-11-28 2014-05-29 Research In Motion Limited Entries to an electronic calendar
US9245372B2 (en) 2012-12-04 2016-01-26 Nintendo Co., Ltd. Map systems and methods for displaying panoramic images
US20150317649A1 (en) * 2012-12-17 2015-11-05 Nokia Corporation Method and apparatus for providing passphrase enabled point of interest
US20150178786A1 (en) 2012-12-25 2015-06-25 Catharina A.J. Claessens Pictollage: Image-Based Contextual Advertising Through Programmatically Composed Collages
US20140188956A1 (en) 2012-12-28 2014-07-03 Microsoft Corporation Personalized real-time recommendation system
US20140188889A1 (en) 2012-12-31 2014-07-03 Motorola Mobility Llc Predictive Selection and Parallel Execution of Applications and Services
US20150169701A1 (en) 2013-01-25 2015-06-18 Google Inc. Providing customized content in knowledge panels
EP2962224A4 (en) 2013-03-01 2016-10-19 Quixey Inc GENERATING SEARCH RESULTS WITH STATUS LINKS ON APPLICATIONS
US20140279013A1 (en) 2013-03-13 2014-09-18 Ebay Inc. Online and offline ecommerce connections
US9247309B2 (en) 2013-03-14 2016-01-26 Google Inc. Methods, systems, and media for presenting mobile content corresponding to media content
WO2014146265A1 (en) 2013-03-20 2014-09-25 Nokia Corporation Method and apparatus for personalized resource recommendations
US9690831B2 (en) * 2013-04-19 2017-06-27 Palo Alto Research Center Incorporated Computer-implemented system and method for visual search construction, document triage, and coverage tracking
US20140316890A1 (en) 2013-04-23 2014-10-23 Quixey, Inc. Entity Bidding
US9721107B2 (en) 2013-06-08 2017-08-01 Apple Inc. Using biometric verification to grant access to redacted content
KR102136602B1 (ko) 2013-07-10 2020-07-22 삼성전자 주식회사 휴대단말기의 컨텐츠 처리 장치 및 방법
US9329692B2 (en) 2013-09-27 2016-05-03 Microsoft Technology Licensing, Llc Actionable content displayed on a touch screen
US9465800B2 (en) * 2013-10-01 2016-10-11 Trunomi Ltd. Systems and methods for sharing verified identity documents
US9436918B2 (en) 2013-10-07 2016-09-06 Microsoft Technology Licensing, Llc Smart selection of text spans
US9354778B2 (en) 2013-12-06 2016-05-31 Digimarc Corporation Smartphone-based methods and systems
CN103888455B (zh) * 2014-03-13 2018-01-23 北京搜狗科技发展有限公司 图片的智能推荐方法、装置和系统
CN104036002A (zh) * 2014-06-16 2014-09-10 深圳市英威诺科技有限公司 一种智能推荐数据的技术方法
US9824079B1 (en) 2014-07-11 2017-11-21 Google Llc Providing actions for mobile onscreen content
WO2016018039A1 (en) * 2014-07-31 2016-02-04 Samsung Electronics Co., Ltd. Apparatus and method for providing information
US8954836B1 (en) 2014-08-19 2015-02-10 Adlast, Inc. Systems and methods for directing access to products and services
US9965559B2 (en) 2014-08-21 2018-05-08 Google Llc Providing automatic actions for mobile onscreen content
US10044775B2 (en) * 2014-08-29 2018-08-07 Microsoft Technology Licensing, Llc Calculating an entity'S location size via social graph
US9348336B2 (en) * 2014-09-12 2016-05-24 Toyota Jidosha Kabushiki Kaisha Robot assistance for detecting, managing, and mitigating risk
US9606716B2 (en) 2014-10-24 2017-03-28 Google Inc. Drag-and-drop on a mobile device
US20160140671A1 (en) * 2014-11-17 2016-05-19 Jin Hong System and Method for Dynamically Generating A Content Correlated Service Based Mobile Social Network
CN104486350B (zh) * 2014-12-24 2017-11-10 电子科技大学 一种基于用户行为的网络内容加速方法
WO2016113602A1 (en) * 2015-01-12 2016-07-21 Yogesh Chunilal Rathod Real-time presenting on-demand service providers and users or customers and facilitating them
US9703541B2 (en) 2015-04-28 2017-07-11 Google Inc. Entity action suggestion on a mobile device
US10970646B2 (en) 2015-10-01 2021-04-06 Google Llc Action suggestions for user-selected content
US10055390B2 (en) 2015-11-18 2018-08-21 Google Llc Simulated hyperlinks on a mobile device based on user intent and a centered selection of text

Also Published As

Publication number Publication date
WO2017070079A1 (en) 2017-04-27
CN114780737A (zh) 2022-07-22
GB2558472A (en) 2018-07-11
KR102077289B1 (ko) 2020-04-07
US20210368313A1 (en) 2021-11-25
US11716600B2 (en) 2023-08-01
US20230379678A1 (en) 2023-11-23
US20200226187A1 (en) 2020-07-16
CN108463817A (zh) 2018-08-28
KR20180070683A (ko) 2018-06-26
EP3347835A4 (en) 2019-05-01
US20170118576A1 (en) 2017-04-27
DE112016004859T5 (de) 2018-07-19
EP3347835A1 (en) 2018-07-18
US11089457B2 (en) 2021-08-10
CN108463817B (zh) 2022-04-08
JP2018534690A (ja) 2018-11-22
RU2696225C1 (ru) 2019-07-31
EP3347835B1 (en) 2021-12-08
US10178527B2 (en) 2019-01-08
GB201806100D0 (en) 2018-05-30

Similar Documents

Publication Publication Date Title
JP6655180B2 (ja) 個別化されたエンティティ・リポジトリ
JP7201730B2 (ja) 意図推薦方法、装置、機器及び記憶媒体
US20210027203A1 (en) Action suggestions for user-selected content
CN110476176B (zh) 用户目标辅助技术
KR102189854B1 (ko) 개인적 엔티티들을 모델링
CN108700987B (zh) 移动设备上的模拟超链接
US9268655B2 (en) Interface for resolving synchronization conflicts of application states
US9965559B2 (en) Providing automatic actions for mobile onscreen content
US11734581B1 (en) Providing contextual actions for mobile onscreen content
US11355123B2 (en) Network data aligning
US20170351674A1 (en) Personalized task continuation assistant

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180618

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190530

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190617

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190917

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: 20200106

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200131

R150 Certificate of patent or registration of utility model

Ref document number: 6655180

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