JP7017568B2 - デジタルコンテンツ配信におけるレイテンシを削減するためのデジタルコンテンツ配信加速化 - Google Patents

デジタルコンテンツ配信におけるレイテンシを削減するためのデジタルコンテンツ配信加速化 Download PDF

Info

Publication number
JP7017568B2
JP7017568B2 JP2019528533A JP2019528533A JP7017568B2 JP 7017568 B2 JP7017568 B2 JP 7017568B2 JP 2019528533 A JP2019528533 A JP 2019528533A JP 2019528533 A JP2019528533 A JP 2019528533A JP 7017568 B2 JP7017568 B2 JP 7017568B2
Authority
JP
Japan
Prior art keywords
digital content
data
terminal device
location
user
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
JP2019528533A
Other languages
English (en)
Other versions
JP2019536172A (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 JP2019536172A publication Critical patent/JP2019536172A/ja
Application granted granted Critical
Publication of JP7017568B2 publication Critical patent/JP7017568B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • 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/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
    • 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/29Geographical information databases
    • 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/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Description

本開示は、デジタルコンテンツ配信におけるレイテンシを削減するためのデジタルコンテンツ配信加速化に関する。
優先権の主張
本出願は、米国特許法第119条(e)の下、参照によりその内容全体が本明細書に組み込まれている、2016年11月28日に出願された米国特許出願第62/426,907号の優先権を主張するものである。
コンピュータシステムは全地球測位システム(Global Positioning System(GPS))データを使用してデバイスの地理的なロケーションを決定する。デバイスはGPSデータを使用して決定された地理的なロケーションに関連性があるデジタルコンテンツを配信することができる。
本文書は、キー付きデータを記憶するためのキー付きデータベースと、キー付きデータの項目を受信したことに応じてi)キー付きデータの項目に関連付けられる検索履歴を示す検索データ、ii)キー付きデータの項目に関連付けられる端末デバイスによってアクセスされた1つもしくは複数のウェブページを示すウェブ履歴データ、またはiii)i)およびii)の両方、のうち1つを取得する、データ取得エンジンと、検索データおよびウェブ履歴データから1つまたは複数の属性を抽出し、1つまたは複数の属性は検索データおよびウェブ履歴データを特徴づける、解析エンジンと、1つまたは複数の属性に基づいて地理的なロケーションについての確率分布を生成し、確率分布の確率はキー付きデータの項目に関連付けられた1つまたは複数の端末デバイスがその確率に関連付けられた地理的なロケーションに関連付けられたデジタルコンテンツを要求する尤度を示すものである、端末デバイスネットワークアクセスエンジンと、デジタルコンテンツプロバイダから、複数の地理的なロケーションのうち特定の地理的なロケーションに関連付けられ、特定の地理的なロケーションは他の地理的なロケーションに関連付けられる他の確率に対するより大きな確率に関連付けられる、デジタルコンテンツを取得する、コンテンツ選択エンジンと、特定の地理的なロケーションに関連付けられたデジタルコンテンツを、キー付きデータの項目に関連付けられる端末デバイスに送信するために、事前組み立てし、それによってデジタルコンテンツがシステムが要求に応じて受信するのに先立ってレンダリングのために組み立てられ、デジタルコンテンツをデジタルコンテンツのための端末デバイス上で表示用に提供する、デジタルコンテンツ組み立てエンジンとを含む、デジタルコンテンツ加速化システムについて説明する。
いくつかの実装形態において、キー付きデータは端末デバイスのユーザの検索履歴および/または閲覧履歴を含む。いくつかの実装形態において、システムは、事前組み立てされたデジタルコンテンツを端末デバイスがオンラインの時の期間、かつデジタルコンテンツについての要求が端末デバイスから送信されるのに先立って、端末デバイスに送信するように構成され、それによって端末デバイスがオフラインの時の期間に、引き続きユーザがデジタルコンテンツに対して要求を発行する事象において、デジタルコンテンツが端末デバイスのユーザにとって利用可能となる。
いくつかの実装形態において、確率分布を生成するステップは、1つまたは複数のトピッククラスタに、1つまたは複数の属性をクラスタリングするステップであって、1つまたは複数のトピッククラスタはそれぞれ所定のトピックのリストのトピックを示す、ステップと、訓練されたモデルを使用して1つまたは複数のトピッククラスタをユーザに関連付けられる1つまたは複数の地理的なロケーションを示すロケーションデータに変換するステップと、変換するステップに基づいて、1つまたは複数の地理的なロケーションのそれぞれの地理的なロケーションをユーザが訪れる確率を生成するステップとを含む。いくつかの実装形態において、変換するステップは、1つまたは複数の機械学習アルゴリズムを実行するステップを含む。
いくつかの実装形態において、解析エンジンはユーザに関連付けられる購買層データを抽出し、1つまたは複数の属性はさらに購買層データを特徴づける。
いくつかの実装形態において、検索データおよびウェブ履歴データはそれぞれタイミングデータに関連付けられ、端末デバイスネットワークアクセスエンジンはタイミングデータに基づいて、確率の分布を生成する。
いくつかの実装形態において、データ取得エンジンはユーザが訪れた1つまたは複数の地理的なロケーションを示す地理的なロケーション履歴データをフェッチし、1つまたは複数の属性は地理的なロケーション履歴データをさらに特徴づける。
いくつかの実装形態において、1つまたは複数の属性はキーワードおよびキーフレーズのうち1つまたは複数を含む。いくつかの実装形態において、解析エンジンは行列因子分解または低ランク近似に基づいて、1つまたは複数の属性を抽出する。いくつかの実装形態において、取得されたデジタルコンテンツは仮想地理的地図上の位置についてブランド名がついたピンを含み、ブランド名がついたピンはデジタルコンテンツに関連付けられる特定の地理的なロケーションを表現している。いくつかの実装形態において、デジタルコンテンツはデジタルコンテンツに関連付けられる特定の地理的なロケーションに位置しているエンティティについてのコンテンツ項目を含む。
説明されるシステムは、デジタルコンテンツへの要求に応じてリモートのデジタルコンテンツプロバイダからデジタルコンテンツを取得することによって引き起こされるデジタルコンテンツをサービングする際のレイテンシを削減するなどの1つまたは複数の利益を提供することができる。デジタルコンテンツはシステムのメモリまたはシステムのディスクに記憶することができる。メモリにデジタルコンテンツを記憶することは、システムはデータクエリおよびデータベースからの取得を実施することなくデジタルコンテンツをサービングするため、要求に応じてリアルタイムにデジタルコンテンツをサービングする際のレイテンシを削減する。デジタルコンテンツは、発行元のコンテンツなどの他のコンテンツを伴ってサービングすることができ、そのため端末デバイスには発行元のコンテンツとの区別がつかない。説明されるシステムはユーザにより関連性のあるデジタルコンテンツをサービングする。説明されるシステムは、キー付きデータを使用し、キャッシュされたデータの取得速度を向上させ、またクライアントデバイスのデバイス識別情報を要求することなくキャッシュされたデータをユーザデータと関連付ける。説明されるシステムは、アプリケーションの他のコンテンツを伴ってキャッシュされたデジタルコンテンツを表示し、デジタルコンテンツに関連付けられるウェブページ上で空白の表示を削減する。
1つまたは複数の実施形態の詳細が添付の図面および以下の発明を実施するための形態において説明される。本明細書において説明される手法の他の特徴、目的、および利点は、発明を実施するための形態、図面、および特許請求の範囲から明らかになるであろう。
デジタルコンテンツ配信加速化についてのネットワーク化された環境の概念図である。 デジタルコンテンツ配信加速化についてのユーザインターフェースの例を示す。 デジタルコンテンツ配信加速化についてのユーザインターフェースである。 デジタルコンテンツ配信加速化についてのユーザインターフェースである。 デジタルコンテンツ配信加速化についてのユーザインターフェースである。 デジタルコンテンツ配信加速化について取られるアクションを示す図である。 デジタルコンテンツ配信加速化について取られるアクションを示す流れ図である。 デジタルコンテンツ配信加速化について取られるアクションを示す流れ図である。 デジタルコンテンツ配信加速化についてのシステムのコンポーネントのブロック図である。
様々な図面における同様の符号は、同様の要素を指す。
本文書は、端末デバイスがインターネットを閲覧している際などの、端末デバイスへのデジタルコンテンツの配信を加速化させるシステムについて説明する。いくつかの状況においては、デジタルコンテンツは地理的なロケーションまたは施設に関連する。システムは、キー付きデータベースを使用して維持されるキー付きデータをアクセスすることによってコンテンツの配信を加速化させる。一般的に、以下でさらに詳細に説明するように、キー付きデータはキー(例えば、一意の識別子)に関連付けられる(例えば、それと記憶された、それと伝送された、それを指し示す、など)データおよび/またはキー自身を含む。一般的に、キー付きデータベースは、例えば、後続の取得のために、データエントリまたはレコードがキーに関連付けられた、またはインデックスを付けられた、データベースを含む。キー付きデータを処理すること、および評価に基づいて、システムは、端末デバイスのアプリケーションに関連性があるロケーションまたは施設の予測を生成し、予測に基づいて、コンテンツを事前取得およびキャッシングする。一般的に、本明細書において議論する加速化とは、コンテンツ配信におけるレイテンシの減少、例えば、事前取得およびキャッシングと無関係なコンテンツの配信で発生するレイテンシに対するものなど、を含む。しかしながら、未来のロケーションを予測するために有用なロケーションデータはまばらであり、端末デバイスがデジタルコンテンツを要求するかも知れない未来のロケーションについて予測を行うには好適ではない。システムは、検索データおよびウェブ履歴データなどの他のデータを使用して、端末デバイスによって要求されるかも知れないデジタルコンテンツについてのロケーションの予測を行う。検索データおよびウェブ履歴データは、端末デバイスがデジタルコンテンツを要求するかも知れないロケーションについて予測を行うために、端末デバイスに関するより強固なデータソースを提供する。
端末デバイスが発行元システムのようなシステムにデジタルコンテンツを要求する際、要求に応じていくつかの処理が開始される。端末デバイスにサービングされるウェブページまたはアプリケーションインターフェースを組み立てるために使用されるこれらの処理は、インターネットによって接続される様々なシステムに対して行われる1つまたは複数の要求および様々なシステムによる計算を含み、時間を要する。以下で説明するコンテンツ配信加速システムは、コンテンツ配信加速システムを使用することに無関係な端末デバイスへのウェブページの組み立ておよびサービスのレイテンシに対して、端末デバイスのデジタルコンテンツについての要求と、デジタルコンテンツの組み立ておよび端末デバイスへのサービスとの時間レイテンシを削減する。コンテンツ配信加速システムは、必要とされるデータを事前計算して要求することによって、端末デバイスによってデジタルコンテンツが要求されるのに先立って処理を完了させることによってレイテンシを削減する。
例えば、コンテンツ配信加速システムは評価結果(例えば、オークションの結果、スコアリングの結果、または別の評価処理の結果)を事前計算し(例えば、要求の受信の前に)、端末デバイスがデジタルコンテンツを要求するのに先立って、デジタルコンテンツ(例えば、動画クリップ、音声クリップ、画像、テキスト、またはそれらの組み合わせ)をコンテンツプロバイダシステム(例えば、サードパーティのコンテンツプロバイダ)に要求する。説明されるシステムは、デジタルコンテンツの取得によって引き起こされるレイテンシ無しに、関連性があるデジタルコンテンツを端末デバイスにサービングするなどの、1つまたは複数の利益をもたらすことができる。
図1を参照すると、ネットワーク化された環境100は、発行元システム104、端末デバイス106、およびデジタルコンテンツプロバイダ108と(例えば、ネットワーク110上で)通信するように構成されたデジタルコンテンツ配信加速化システム02を含む。デジタルコンテンツ配信加速化システム02はコンピューティングシステム(例えば、サーバシステム)を含む。デジタルコンテンツ配信加速化システム02は、インターフェース144、データ取得エンジン130、端末デバイスネットワークアクセスエンジン124、評価エンジン126、検索エンジン128、パラメータ化エンジン132、ロケーションデータキャッシュ134、検索履歴キャッシュ136、ウェブ履歴キャッシュ138、ロケーション履歴キャッシュ140、およびキー付きデジタルコンテンツキャッシュ142、解析エンジン152、コンテンツ選択エンジン154、およびデジタルコンテンツ組み立てエンジン156を含む。例えば、上述の1つまたは複数のキャッシュは、個別のデータレコードがキー(例えば、ユーザ識別子、または他の一意の識別子)に関連付けられているようなキー付きデータベースである。キー付きデータベースは端末デバイス106から受信したキー付きデータ120を記憶するように構成される。エンジンは、コンピュータプロセッサ、サーバ、サーバシステム、ソフトウェアモジュール、またはそれらのあらゆる組み合わせのうち、1つまたは複数からなる。
デジタルコンテンツ配信加速化システム02は、ネットワーク110を介して端末デバイス106などの1つまたは複数の端末デバイスから、キー付きデータ120を受信する。キー付きデータは、例えば識別子などの一意のキーに関連付けられるデータを含む。キー付きデータには、例えば、ユーザの検索履歴、ユーザのウェブ履歴(例えば、閲覧履歴)、ユーザのロケーション履歴(例えば、より以前の地理的なロケーション、または訪れたことのあるランドマーク)、デバイス106のアプリケーションについての識別子、および端末デバイス106の過去の挙動に関する他のデータを含む、様々な種類がある。デジタルコンテンツ配信加速化システム02は端末デバイス106から受信したキー付きデータ120に基づいて、どのロケーション(例えば、仮想地理的地図上の地理的ロケーション)が端末デバイス106のアプリケーションに関連性があるかを予測する。デジタルコンテンツ配信加速化システム02はキー付きデータ120および予測されたロケーションに基づいて、どのデータが、もしくはどの機能が、別のデバイスもしくはシステムによって要求されるかを予測する。デジタルコンテンツ配信加速化システム02は、発行元システム104および端末デバイス106などの別のデバイスまたはシステムによってデータ(またはコンテンツ)が要求されるのに先立って、機能を実施するか、または関連性のあるデータを取得することができる。
デジタルコンテンツ配信加速化システム02は予測されたロケーションに基づいて、アプリケーションユーザインターフェースにおいて含めるものなど、1つまたは複数のアプリケーションのための使用するためにどのデータをフェッチするかを予測する。デジタルコンテンツ配信加速化システム02は予測されたロケーションのうち1つまたは複数に関連付けられる(例えば、それを標的とする、それに関する、それに関連性のある、など)データをフェッチする。例えば、端末デバイス106が全地球測位システム(GPS)アプリケーションを使用している場合、デジタルコンテンツ配信加速化システム02はロケーションデータを受信し、キー付きデータ120およびユーザの現在のロケーションに基づいて、近くのどのロケーションが端末デバイス106のユーザに関連性があるかを予測する。
デジタルコンテンツ配信加速化システム02は、アプリケーションデータ146についての期待された要求に応じて、端末デバイス106に配信することについて予測されたロケーションのうち1つまたは複数について、アプリケーションデータ146をフェッチする(詳細は後述する)。例えば、特定のロケーションについて高い関連性を示すキー付きデータ120に基づいて、デジタルコンテンツ配信加速化システム02は特定のロケーションに関連付けられたデジタルコンテンツをフェッチし、デジタルコンテンツへの要求を見越して端末デバイス106に送信されることになるデジタルコンテンツを準備することができる。
その関連性のある特定のロケーションに関連付けられる(例えば、それに関連性のある、それに関する、それを標的とする、それと提示される、それと記憶される、それを指し示す、など)デジタルコンテンツが要求されると、デジタルコンテンツ配信加速化システム02はデータをフェッチすることによって引き起こされるレイテンシ無しにデジタルコンテンツを送信することができる。例えば、デジタルコンテンツ配信加速化システム02は、特定のロケーションに関連付けられたデータの決定された関連性に基づいて、どのデジタルコンテンツが端末デバイス106に送信するかを決定することができる。そのように、デジタルコンテンツ配信加速化システム02は、端末デバイス106の機能に関連性のない他のデータに対してより関連性のあるデータを送信することによって、ネットワークトラフィックを削減し、帯域幅要件を低下させる。例えば、データの取得または表示について、関連性は低いがロケーションが近いものに対して、関連性は高いが離れたロケーションはランクを下げられ得る、などのように、関連性はキー付きデータ120および端末デバイス106の現在のロケーションに基づいている。例えば、デジタルコンテンツ配信加速化システム02はキー付きデータ120に基づいて関連性を決定するが、デジタルコンテンツの取得および表示のために関連性を決定するために端末デバイス106の現在のロケーションは使用しない。
デジタルコンテンツ配信加速化システム02は端末デバイス106上にインストールされている、または端末デバイス106上で実行されているアプリケーションを含むことができる。アプリケーションはユーザインターフェースにおける表示のためなど、後の使用のためデジタルコンテンツを取得することができる。例えば、デジタルコンテンツ配信加速化システム02は、端末デバイス106がオンラインの時、デジタルコンテンツを取得してそれを端末デバイス106に送信することができ、それによって後に端末デバイス106がオフラインで使用される間、またはローカルネットワークもしくはWiFiネットワークの替わりにモバイルネットワークが使用されているなど、帯域幅制限または費用が増加している際、デジタルコンテンツを使用することができる。
例えば、端末デバイス106は近くのロケーションの検索を実施し、その近くのロケーションに関するデジタルコンテンツまたはアプリケーションデータ146を要求することができる。アプリケーションデータ146は画像ファイル、音声ファイル、テキストファイル、方法もしくはシステムファイル、検索結果、キャッシュされたデータ、または端末デバイス106などのコンピューティングデバイス用のアプリケーションの動作のために使用される他のリソースを含む。デジタルコンテンツ配信加速化システム02は、端末デバイス106の所定の半径内、所定の数まで、または閾値関連性を超えるなど、端末デバイス106付近のロケーションのサブセットを表現するアプリケーションデータ146をキー付きデータ120に基づいて送信することができる。
どのロケーションがロケーションのサブセットおよびランキングの一部であるかを決定することは、それぞれのレストランが端末デバイス106にどれくらい関連性があるかに基づいていてもよい。ロケーションがデジタルコンテンツ配信加速化システム02によって決定された関連性閾値を超えるかどうかなど、サブセットにおけるロケーションについて、デジタルコンテンツ配信加速化システム02はそのロケーションに関連付けられるアプリケーションデータ146を取得し、アプリケーションデータ146をロケーションデータキャッシュ134に記憶する。
アプリケーションデータ146が端末デバイス106または別のデバイス(発行元システム104など)によって要求されると、デジタルコンテンツ配信加速化システム02は、デジタルコンテンツ配信加速化システム02が要求に応じてアプリケーションデータ146をフェッチする場合に発生したであろうレイテンシ無しにアプリケーションデータ146を送信することができる。例えば、アプリケーションデータ146のデジタルコンテンツは、ロケーションの名称またはロケーションの他の識別子、ロケーションに関連付けられるウェブサイトのURL、ロケーションの広告、そのロケーションについてのニュース記事、そのロケーションのレビュー、そのロケーションの地理的なロケーションを示す仮想地理的地図上で視覚的に表示されるアイコン(例えば、地図ピン)、端末デバイス106の現在のロケーションからそのロケーションまでの方向、そのロケーションについての画像または動画、などである。例えば、デジタルコンテンツ配信加速化システム02は、ロケーションのサブセットにおけるロケーションの決定された関連性に基づいて、1つまたは複数のロケーションを訪れること、または1つまたは複数のロケーションを訪れる経路を提案または推奨する。
いくつかの状況において、デジタルコンテンツ配信加速化システム02は予測されたロケーションに基づいて、どのウェブページが端末デバイス106によって発行元システム104に要求されることになるかを予測する。したがって、デジタルコンテンツ配信加速化システム02は、評価結果データ118についての要求116に応じて、デジタルコンテンツのどの評価(例えば、オークション)を実施して発行元システムにサービングするかを決定する。評価はウェブページの1つまたは複数のデジタルコンテンツスロットについてであってもよい。デジタルコンテンツ配信加速化システム02は発行元システム104への評価結果データについての要求116に先立って評価を実施する。例えば、デジタルコンテンツ配信加速化システム02は評価結果を事前キャッシュする。
評価結果データが要求されると、デジタルコンテンツ配信加速化システム02は事前キャッシュした評価結果を、要求116に応じて評価を実施することによって引き起こされるレイテンシ無しに送信することによって応答する。例えば、デジタルコンテンツ配信加速化システム02は、ウェブページのデジタルコンテンツスロットをポピュレートするために、事前にフェッチしてきたデジタルコンテンツデータ150で応答する。したがって、デジタルコンテンツ配信加速化システム02は、要求116に応じてデジタルコンテンツデータ150をフェッチすることによって引き起こされる遅延無しに応答する。例えば、評価結果データ118は、発行元システム104によって提供されるコンテンツとの表示または発行元システム104によってホスティングされるもしくは提供されるウェブページ上に含めるものなど、発行元システム104によって提供されるコンテンツとともに含まれることになるデジタルコンテンツデータ150(例えば、識別子またはURLを使用して)を示すデジタルコンテンツタグを含むことができる。
発行元システム104はデジタルコンテンツ(例えば、ウェブページデータ112)を端末デバイス106など他のシステムに配信する要求を受信するように構成されるコンピューティングシステム(例えば、サーバシステム)を含む。発行元システム104はデータをデジタルコンテンツ配信加速化システム02に要求し、端末デバイス106にデジタルコンテンツをサービングする前に発行元の様々なウェブページ上のデジタルコンテンツスロットを埋める。デジタルコンテンツスロットは、ウェブページ上にコンテンツタグ(例えば、デジタルコンテンツタグ)によって指定されるロケーションを含む。ページ組み立て動作は、デジタルコンテンツスロットに関連付けられる(例えば、参照する、それを指し示す、それについて選択される、など)デジタルコンテンツタグに基づいてコンテンツスロットをデジタルコンテンツデータでポピュレートする。
端末デバイス106はラップトップ、タブレット、携帯電話、または他のコンピューティングデバイスなどのコンピューティングデバイスを含む。端末デバイス106はデジタルコンテンツ(例えば、ウェブページ要求114)についての要求を発行元システム104、デジタルコンテンツ配信加速化システム02、またはその両方に送信(例えば、伝送)する。端末デバイス106は端末デバイス106のロケーションを決定するためのGPS受信機を含むことができる。例えば、端末デバイス106上のアプリケーションまたは他の実行中のプログラムはアプリケーションデータ146をデジタルコンテンツ配信加速化システム02に要求することができる。いくつかの状況において、端末デバイス106上で実行中の地図アプリケーションはデジタルコンテンツ配信加速化システム02に記憶されている地図データを要求する。例えば、端末デバイス106は別のシステムにアプリケーションデータ146を要求し、またデジタルコンテンツ配信加速化システム02にも要求を送信し、それによってデジタルコンテンツ配信加速化システム02はアプリケーションデータ146が事前にフェッチされているかどうかを確認して判断することができる。端末デバイス106はキー付きデータ120をデジタルコンテンツ配信加速化システム02に送信する。例えば、キー付きデータ120は端末デバイス106のデバイス識別子とは異なっている。例えば、キー付きデータ120は、端末デバイス106にインストールされた、そうでなければ端末デバイス106上で実行中のアプリケーションについての、またはデジタルコンテンツ配信加速化システム02に関連付けられる(例えば、それと対話するように構成される、など)プログラムについてのユーザのプロファイルを示すユーザ識別子を含む。例えば、端末デバイス106がユーザ識別子を示すキー付きデータ120を送信しているため、そのユーザ識別子は端末デバイス106に関連付けられる(例えば、それとグループ化される、それを指し示す、など)。例えば、ユーザ識別子はユーザの購買層を示す。キー付きデータ120はデジタルコンテンツ配信加速化システム02によって受信され、検索履歴キャッシュ136、ウェブ履歴キャッシュ138、およびロケーション履歴キャッシュ140のうち1つまたは複数に記憶される。
デジタルコンテンツプロバイダ108は、デジタルコンテンツ要求148などのデジタルコンテンツデータ(例えば、アプリケーションデータ146またはデジタルコンテンツデータ150)についての要求を受信するように構成され、デジタルコンテンツデータ150をデジタルコンテンツ配信加速化システム02に送信するなど、要求されたデジタルコンテンツデータ150を要求に対する応答としてサービングする。デジタルコンテンツプロバイダ108は、端末デバイス106上で実行する、または端末デバイス106に関連付けられる(例えば、それにインストールされている、など)アプリケーションの、アプリケーションデータ146をサービングするアプリケーションサーバを含むことができる。例えば、デジタルコンテンツプロバイダ108はウェブページに関するコンテンツタグによって示される、またはウェブページでの表示のために評価エンジン126によって選択される、デジタルコンテンツデータ150を送信するサーバを含む。
デジタルコンテンツ配信加速化システム02は、評価結果データ118、検索結果、アプリケーションデータ146、デジタルコンテンツデータ150、ならびにいくつかのモジュールおよびサブシステムを使用する他のデータのうち1つまたは複数について、ネットワーク110(例えば、インターネット)を介して要求を受信して応答する。デジタルコンテンツ配信加速化システム02はネットワーク110を介して、発行元システム104、端末デバイス106もしくはデジタルコンテンツプロバイダ108のうち1つまたは複数と通信するように構成される、通信インターフェース144を含む。通信インターフェース144はネットワーク110から受信した要求のデータを、評価エンジン126、検索エンジン128またはデータ取得エンジン130などのデジタルコンテンツ配信加速化システム02の1つまたは複数のサブシステムまたはモジュールに通信する。
データ取得エンジン130はデジタルコンテンツ配信加速化システム02によって処理されるデータを解析し、データを端末デバイスネットワークアクセスエンジン124、パラメータ化エンジン132、評価エンジン126または検索エンジン128などの適切なサブシステムにルーティングする。データ取得エンジン130は(例えば、未来の動作のために)デジタルコンテンツ配信加速化システム02の1つまたは複数のキャッシュにデータを記憶し、データを要求するサブシステムにその記憶したデータを送信する。例えば、1つまたは複数のキャッシュは検索履歴キャッシュ136、ウェブ履歴キャッシュ138、ロケーション履歴キャッシュ140、およびキー付きデジタルコンテンツキャッシュ142を含む。例えば、データ取得エンジン130は端末デバイス106からキー付きデータ120の項目を受信するのに応じて、検索履歴キャッシュ136からキー付きデータの項目に関連付けられた(例えば、それに関する、それと記憶される、など)検索履歴を示す検索データ、ウェブ履歴キャッシュ138から端末デバイス106によってアクセスされた1つまたは複数のウェブページを示すウェブ履歴データ、ロケーション履歴キャッシュ140からのロケーションデータ、などのうち1つまたは複数、を取得する。
キー付きデータ120が受信されると、デジタルコンテンツ配信加速化システム02の解析エンジン152は、キー付きデータ120を端末デバイスネットワークアクセスエンジン124によって使用されるためなど、1つまたは複数のキャッシュに記憶された属性について解析する。デジタルコンテンツ配信加速化システム02は属性を端末デバイス106またはユーザに関連付けることができる。データ共起が決定され、端末デバイスネットワークアクセスエンジン124に記憶または送信することができる。デジタルコンテンツ配信加速化システム02はデータ共起を決定するために、交互最小二乗法、特異値分解など、行列因子分解、低ランク近似などの1つまたは複数の手法を使用する。決定されたデータ共起またはデータにおける関連性は1つまたは複数のキャッシュに記憶するか、端末デバイスネットワークアクセスエンジン124に送信することができる。
例えば検索のために、データ共起はともに使用されるかまたは関連するやり方で使用されるキーワードまたはキーフレーズを含む。例えば、データ共起は連続して見られる、または連続して頻繁に見られるウェブページの識別子、連続してもしくは時間の閾値期間内に訪れられたもしくは検索されたロケーション、などを含む。例えば、データ共起は、ガソリンスタンド、レストランなど、性質として類似しているロケーションの種類を含む。
キー付きデータ120の属性は時間データである。デジタルコンテンツ配信加速化システム02は、キー付きデータ120の他のデータと関連付けられた(例えば、それに関する)時間データを比較することによってデータ共起を決定する。例えば、別のウェブページよりも前に、特定のウェブページをいつも、または非常に頻繁に訪れる場合、そのデータ共起はデジタルコンテンツ配信加速化システム02によって時間において非対称であることがわかる。例えば、一連のロケーションを特定の順で頻繁に訪れるか検索する場合、デジタルコンテンツ配信加速化システム02は予測を行うためにその情報を使用する。
端末デバイスネットワークアクセスエンジン124は1つまたは複数のキャッシュからのデータを使用して、端末デバイス106の機能についてどのロケーションが関連性があるかの予測を行う。端末デバイスネットワークアクセスエンジン124はディープラーニングネットワークを使用して、端末デバイス106など、複数の端末デバイスから取得されたキー付きデータ120を使用してモデルを訓練する。いくつかの端末デバイス106はロケーション履歴を有するが、すべての端末デバイスがロケーション履歴を有しているわけではない。デジタルコンテンツ配信加速化システム02はロケーション履歴を有する複数の端末デバイスのロケーション履歴データを使用して機械学習モデルを訓練する。例えば、デジタルコンテンツ配信加速化システム02は、同一の端末デバイスによって、他のロケーションに比べてどのロケーションが毎日、毎週、毎時など定期的に訪れる可能性が高いかを決定する。例えば、デジタルコンテンツ配信加速化システム02はどのロケーションを、連続してまたは特定の時刻に通常訪れているかを決定する(例えば、ダンスクラブに行くよりも朝コーヒーショップに行くことの可能性がより高い、など)。
デジタルコンテンツ配信加速化システム02は訓練されたモデルおよび端末デバイス106のキー付きデータ120を使用して、その端末デバイス106についてのロケーション予測を行う。これによって、ロケーション履歴が少ししかないか、もしくは全くないか、またはデジタルコンテンツ配信加速化システム02に少ししか知られていないか、もしくは全く知られていない、端末デバイス106について、デジタルコンテンツ配信加速化システム02がロケーションの予測を行うことができるようになる。多くの端末デバイスはある程度またはすべての時間で非アクティブ化されるロケーション履歴を有するため、訓練されたモデルおよびキー付きデータ120および決定されたデータ共起の使用によって、これらの端末デバイスについて行われるロケーション予測が可能となる。例えば、端末デバイス106のキー付きデータ120が最近複数回特定のロケーションをいくつか検索したことを示す場合、デジタルコンテンツ配信加速化システム02は端末デバイス106のユーザが特定のロケーションを、恐らく訪れたことがあるか、恐らく訪れるであろう、と判断する。この尤度は、1つまたは複数の他のシステムに送信され、他の機能、例えば、特定のロケーションに関するデジタルコンテンツの取得すること、特定のロケーションに関連付けられたウェブページについての評価結果データを事前ロードもしくは事前キャッシュすること、または特定のロケーションに関する(地図などの)ユーザインターフェース上に表示するためのデータを生成すること、などを開始する(図3A~図3Cに関連して詳述するように)ことができる。
端末デバイスネットワークアクセスエンジン124は、端末デバイス106についての複数のロケーションについて、予測信頼の分布またはアレイを生成する。予測は訓練されたモデル、キー付きデータ、および端末デバイス106の現在のロケーションなど他のデータに基づいている。端末デバイスネットワークアクセスエンジン124は予測を有するロケーションのそれぞれについて関連性スコアまたは重みづけを生成する。例えば、端末デバイスネットワークアクセスエンジン124は正常な状況の下、端末デバイス106のユーザが特定のロケーションを訪れる尤度は非常に高いが、特定のロケーションが端末デバイス106の現在の地理的なロケーションから非常に離れていると判断する。
他の点ではキー付きデータ120および訓練されたモデルから高い確率が決定されたにかかわらず、特定のロケーションは低い関連性スコアまたは重みづけを割り当てられる。例えば、端末デバイスネットワークアクセスエンジン124は、あるレストランから別のレストランなど、第1のロケーションにある端末デバイスはめったに第2のロケーションに移動しないことを決定する。端末デバイス106が第1のロケーションまたは第1のロケーション付近にある時、第2のロケーションには低い関連性スコアを割り当てることができる。他のそのような例が可能であり、例えば第1と第2のロケーションの間の高い相関、仮想地理的地図上の特定のロケーション領域の間の低い相関(ユーザがめったにその地域から離れない、または公共交通機関から逸れないような状況など)、時刻と特定のロケーションとの高い相関(例えば、午前7時にあるコーヒーショップ)など、である。例えば、端末デバイスネットワークアクセスエンジン124は、端末デバイス106のユーザが車を所有しているかどうかを判断することができる(例えば、ユーザがアプリケーションでインジケータを選択する場合)。ユーザが車内にいるか、歩いているかなどの情報に基づいて、端末デバイス106について異なるロケーションを予測できる。
端末デバイスネットワークアクセスエンジン124は1つまたは複数のキャッシュからのデータを使用して、どのウェブページが端末デバイス106によって発行元システム104に要求されることになるか114、次いで評価データ要求116においてどの評価データが発行元システム104によって要求されることになるか、の予測を行う。例えば、端末デバイスネットワークアクセスエンジン124は最近端末デバイス106によって要求されたウェブページデータ112を分析し、端末デバイス106によって要求されるであろう次のウェブページの予測を行う。
予測システム124は予測された次のページを使用して上述のようにロケーション予測を決定する。例えば、予測されたウェブページは時間的に一連のウェブページの一部であり得、データ共起を示す。あるいは、デジタルコンテンツ配信加速化システム02は予測されたロケーションを使用して端末デバイス106によってアクセスされるであろう次のウェブページを予測する。予測されたロケーションまたはウェブページに基づいて、他の機能を開始することもできる。例えば、端末デバイスネットワークアクセスエンジン124はデータ取得エンジン130を使用して予測をパラメータ化エンジン132に送信する。パラメータ化エンジン132は予測されたウェブページについてコールアウトパラメータをポピュレートして、パラメータを評価エンジン126に送信して予測されたウェブページのデジタルコンテンツストロットについての評価を事前計算する。例えば、ウェブページを標的とするデジタルコンテンツを事前にフェッチすることができる。
端末デバイスネットワークアクセスエンジン124はウェブページデータ112および端末デバイス106を分析するために機械学習システムを含み、引き続き追加のウェブページのウェブページデータ112が要求されることになる尤度についての予測データを生成する。端末デバイスネットワークアクセスエンジン124は、端末デバイス106などの1つまたは複数の端末デバイスからのキー付きデータ120を使用して訓練を行う。例えば、端末デバイスネットワークアクセスエンジン124は、ユーザクリックデータなど、端末デバイス106のブラウザアプリケーションから収集したデータを使用して訓練を行う。
端末デバイスネットワークアクセスエンジン124は、キャッシュのうち1つまたは複数からロードされたウェブページのコンテンツなど、ウェブページ(例えば、端末デバイス106によって要求された最も最近のウェブページ)または追加のウェブページに関するデータを使用する。端末デバイスネットワークアクセスエンジン124は1つまたは複数のデジタルコンテンツのユーザクリックデータを使用して訓練を行う。端末デバイスネットワークアクセスエンジン124は機械学習アルゴリズムを、例えば、バッチベースで、進行ベースでなどで、訓練する。例えば、端末デバイスネットワークアクセスエンジンは1つまたは複数の属性を1つまたは複数のトピッククラスタにクラスタリングする。トピッククラスタは、それぞれ所定のトピックのリストのトピックを示す。例えば、カフェ、コーヒー、ダイナー、およびドーナツという言葉はすべて朝食という選択肢を表現するクラスタの一部であってよく、朝の時間帯に関連性があり得る。端末デバイスネットワークアクセスエンジン124は訓練されたモデルを使用して、トピッククラスタを端末デバイス106に関連性のある1つまたは複数の地理的なロケーションを示すロケーションデータに変換する。端末デバイスネットワークアクセスエンジン124は、1つまたは複数の機械学習アルゴリズムを使用するデジタルコンテンツ配信加速化システム02によって記憶されるデータに基づく訓練の他の方法を使用する。
端末デバイスネットワークアクセスエンジン124は、1つまたは複数のロケーションについて、信頼の分布またはアレイを生成する。信頼スコアは端末デバイス106があるロケーションに関連するデータを要求する尤度、または端末デバイス106のユーザがそのロケーションに移動する尤度を表現する。例えば、予測データはロケーションの識別子-信頼スコア対のアレイを含む。信頼スコアはスカラー値、正規化値を含む。アレイはソートして、ロケーションデータキャッシュ134などのインデックスを付けられたキャッシュに記憶することができる。
端末デバイスネットワークアクセスエンジン124は、端末デバイスネットワークアクセスエンジン124によって生成された予測データの信頼スコアに確実性の閾値を適用する。端末デバイスネットワークアクセスエンジン124は上述の機械学習アルゴリズムに基づいて閾値を選び、それによって予測データに含まれるロケーションが多過ぎないようにし、またデジタルコンテンツの不必要な取得または記憶を防ぐことができる。例えば、閾値は、デジタルコンテンツ配信加速化システム02がデジタルコンテンツを取得するロケーションについて設定された数の選択を含む。例えば、閾値は信頼スコアの設定されたスカラー値を含む。例えば、閾値は上述の機械学習アルゴリズムに基づいて変動する。
評価エンジン126は端末デバイス106が予測されたロケーションに関連性のあるウェブページなどの予測されたウェブページを端末デバイス106に要求する前に評価データを事前計算する。例えば、評価結果データ118を事前計算することは、評価結果について発行元システム104からの評価データについての要求116の受信に先立って、評価エンジン126が評価を実施し、評価の結果を決定する、処理を含む。発行元システム104が評価データ116を要求する際、コンテンツ配信加速化システム02は事前計算された評価結果データ118を使用して応答し、それにより、評価要求116に応じて評価が実施されないため結果を提供する際のレイテンシを削減する。
例えば、端末デバイス106が、予測されたロケーションに関連付けられる(例えば、関連性がある)ウェブページまたはデジタルコンテンツなどのウェブページ要求114を発行元システム104に送信すると、発行元システム104は評価データ116をデジタルコンテンツ配信加速化システム02に要求する。デジタルコンテンツ配信加速化システム02は評価データ116についての要求に対し、事前計算された評価結果データ118を発行元システム104に送信することによって応答する。評価結果が要求されてから計算されるのではなく事前計算されるため、評価結果を事前計算することに無関係に体験されるレイテンシに対して発行元システム104、したがって端末デバイス106によって体験されるレイテンシは削減される。
データ取得エンジン130は予測データをパラメータ化エンジン132に送信する。パラメータ化エンジン132は、端末デバイスネットワークアクセスエンジン124によって特定されたロケーションに関連付けられた(例えば、それに関する、またはそれに関連性がある、など)ウェブページなどのデジタルコンテンツについての適格性値(例えば、RTBコールアウトパラメータ)をポピュレートする機械学習システムを含む。例えば、パラメータ化エンジン132はプラットフォーム特定信号などの適格性ロジック(例えば、RTBロジック)を使用する。パラメータ化エンジン132は適格性値を生成し、端末デバイスネットワークアクセスエンジン124によって特定されたウェブページのそれぞれに関連付け、それによって評価エンジン126は予測されたロケーションに関連性があるウェブページについてデジタルコンテンツ評価を行う。例えば、パラメータ化エンジン132はウェブページ、アプリケーションユーザインターフェースなどのデジタルコンテンツスロットのそれぞれについて適格性値を生成する。
パラメータ化エンジン132は1つまたは複数のコンテンツ評価からの評価データを使用して機械学習モデルを訓練する。例えば、より人気のあるロケーションに関連付けられたデジタルコンテンツ(例えば、ウェブページ)は、あまり人気のないロケーションに関連付けられたデジタルコンテンツよりも、より良く訓練され、より良い適格性値を有する。例えば、評価エンジン126(例えば、アドエクスチェンジ(ad exchange))はサードパーティ評価エンジンを含む。パラメータ化エンジン132はデータ取得エンジン130を介して適格性値を評価エンジン126に送信する。
評価エンジン126は適格性値を受信し、適格性値によって表現されるデジタルコンテンツについて評価処理(例えば、オークション、スコア処理、または別の評価手法)を実行する。例えば、評価エンジン126はサードパーティ評価エンジンを含む。評価エンジン126は予測されたウェブページのそれぞれについて評価処理を実施し、事前計算された評価結果データ118を生成する。事前計算された評価結果データ118は予測されたロケーションに関連付けられる1つまたは複数のデジタルコンテンツスロットをポピュレートすることについてのデジタルコンテンツを表現する。例えば、事前計算された評価結果データ118は1つまたは複数のネットワークリソースへのリンク(例えば、URL)を含み、リソースは予測されたロケーションに関連付けられたデジタルコンテンツをサービングするように構成される。例えば、評価処理の間のデジタルコンテンツについてのスコアは、デジタルコンテンツスロットに関連付けられる予測されたロケーションの信頼スコアに基づいている。あるロケーションの関連性が高い場合、関連性の低いロケーションに関連付けられる他のデジタルコンテンツよりもデジタルコンテンツは表示のために選択され、それによってより関連性の高いデジタルコンテンツが端末デバイス106に送信され端末デバイス106上に表示される。
データ取得エンジン130はデジタルコンテンツ配信加速化システム02のモジュールとサブシステムの間のデータフローを管理する。データ取得エンジン130はキー付きデータ120、端末デバイスネットワークアクセスエンジン124からの予測データ、および評価エンジン126からの事前計算された評価結果データ118を取り扱う。データ取得エンジン130は予測データをパラメータ化エンジン132に、また適格性値データを評価エンジン126にルーティングする。例えば、データ取得エンジン130は要求される通りに1つまたは複数のキャッシュのうちの1つにデータを記憶する。例えば、データ取得エンジン130はロケーションの確率データをロケーション確率キャッシュ134に、予測されたロケーションに関連付けられる取得されたデジタルコンテンツをキー付きデジタルコンテンツキャッシュ142に、ロケーション履歴データをロケーション履歴キャッシュ140に、ウェブ履歴データをウェブ履歴キャッシュ138に、および検索履歴データを検索履歴キャッシュ136に記憶する。
検索エンジン128は、検索クエリ158を受信し、インターネットからの検索結果を返すように構成される、1つまたは複数のコンピューティングデバイス(例えば、サーバ)を含む。検索結果は、ウェブページ、画像、および他の種類のファイルの混ざったものを含む。検索エンジン128はまたデータベースまたはオープンディレクトリで利用可能なデータを探し出す。検索エンジン128はウェブクローラ上でアルゴリズムを実行することによってリアルタイムな情報を維持する。例えば、検索エンジン128はサードパーティ検索エンジン128を含む。
デジタルコンテンツ組み立てエンジン156は特定の地理的なロケーションに関連付けられたデジタルコンテンツを、端末デバイス106によってレンダリングするために事前組み立てする。例えば、デジタルコンテンツ組み立てエンジン156はデジタルコンテンツを事前組み立てし、デジタルコンテンツについての端末デバイス106からの要求に応じて、端末デバイス106のアプリケーションまたはプログラムのためなど、デジタルコンテンツを要求する端末デバイスまたは他のシステムに送信する。例えば、デジタルコンテンツの事前組み立ては、発行元システム104が端末デバイス106にウェブページをサービングする際に、発行元システム104によって実施することができる。組み立てられたデータは端末デバイス106によって受信され、レンダリングされる。例えば、デジタルコンテンツ配信加速化システム02は、端末デバイスがオンラインの時の期間、かつデジタルコンテンツについての要求が端末デバイス106から送信されるのに先立って、端末デバイス106に事前組み立てされたデジタルコンテンツを送信し、それによって端末デバイスがオフラインの時の期間に、引き続きユーザがデジタルコンテンツに対して要求を発行する事象において、デジタルコンテンツが端末デバイスのユーザにとって利用可能となる。
検索履歴キャッシュ136はメモリ内またはディスク上、例えば、分散データベースなどのデータベースにデータ記憶を含む。検索履歴キャッシュ136は端末デバイス106によって送信される検索クエリを表現するデータを含む。端末デバイスについてのロケーション履歴を使用することに対し、検索クエリはロケーションの予測を行うことができる強固なデータセットを端末デバイス106に提供するため、デジタルコンテンツ配信加速化システム02は検索クエリをキャッシュする。例えば、デバイスについてのロケーション履歴は非アクティブ化されることがあり、または1つまたは2つのロケーションを返すことがある一方で、端末デバイス106は一日に数十、またはそれ以上の検索を実施することがある。
デジタルコンテンツ配信加速化システム02は検索履歴キャッシュ136に記憶された検索クエリのうちいくつかまたはそれぞれを、検索クエリが端末デバイス106によって検索エンジン128に送信された時のタイムスタンプに関連付ける。タイムスタンプはロケーションを予測することについて端末デバイスネットワークアクセスエンジンに順序の情報を提供することができる。例えば、ロケーションは多かれ少なかれ、実施した検索に先立って要求した以前のロケーションデータなどに基づいて端末デバイス106がデジタルコンテンツを要求する次のロケーションとなる可能性がある。
ウェブ履歴キャッシュ138はウェブページデータ112および端末デバイスによって要求されたウェブページの履歴を記憶し、メモリ内またはディスク上、例えば、分散データベースなどのデータベースにデータ記憶を含む。例えば、ウェブ履歴キャッシュ138は、デジタルコンテンツ配信加速化システム02のモジュールもしくはサブシステムによって分析され、クロールされ、そうでなければアクセスされた、あらゆるウェブページからのウェブページデータ112を記憶する。例えば、ウェブページデータ112およびウェブページデータキャッシュ138内のウェブ履歴データは端末デバイスネットワークアクセスエンジン124を訓練し、未来のロケーションについての予測を行うのに使用される。端末デバイスについてのロケーション履歴を使用することに対し、ウェブ履歴データはロケーションの予測を行うことができる強固なデータセットを端末デバイス106に提供するため、ウェブ履歴データは記憶される。例えば、端末デバイス106は一日に数十または数百のウェブページを要求するかも知れないが、ロケーション履歴は非アクティブ化されていることもあり、そうでなければ大量のロケーションを報告していないかも知れない。
ロケーション履歴キャッシュ140は端末デバイス106についてのロケーション履歴データを記憶する。ロケーション履歴キャッシュ140はメモリ内またはディスク上、例えば、分散データベースなどのデータベースにデータ記憶を含む。デジタルコンテンツ配信加速化システム02は端末デバイス106上の、GPS受信機を使用するアプリケーションなどのアプリケーションによって集められたデータを使用して、ロケーション履歴キャッシュ140をポピュレートする。ロケーション履歴データは端末デバイス106がデジタルコンテンツ配信加速化システム02に報告してきた地理的なロケーションを表現するデータを含む。ロケーション履歴データは端末デバイスネットワークアクセスエンジン124を訓練し、デジタルコンテンツ配信加速化システム02は予測データおよび信頼スコアの生成のためにロケーション履歴データを使用する。
キー付きデジタルコンテンツキャッシュ142は、閾値を超える信頼スコアを有する、1つまたは複数の予測されたロケーションについて取得されてあるデジタルコンテンツ150を記憶する。キー付きデジタルコンテンツキャッシュ142はメモリ内またはディスク上、例えば、分散データベースなどのデータベースにデータ記憶を含む。デジタルコンテンツは端末デバイス106によって要求されるかも知れないロケーションに関連付けられるあらゆるデジタルコンテンツ、例えば、ウェブページデータ112、予測されたロケーションに関連付けられるウェブページ上のデジタルコンテンツスロットをポピュレートするためのデジタルコンテンツ、予測されたロケーションに関連付けられるアプリケーションデータ146、などを含むことができる。デジタルコンテンツはテキスト、画像、動画、アプリケーションファイル、音声、などの1つまたは複数を含む。上述したように、キー付きデジタルコンテンツキャッシュ142はシステムのメモリを含む。メモリにデジタルコンテンツ150を記憶することは、発行元システム104または端末デバイス106などによってデジタルコンテンツについての要求に応じてデジタルコンテンツ150をサービングするレイテンシを削減する。システムはデータクエリおよびデータベースからの取得を実施することなくデジタルコンテンツ150をサービングするため、リアルタイムにデジタルコンテンツ150をサービングする際のレイテンシ。
ロケーションデータキャッシュ134はロケーションに関連付けられるロケーションデータを記憶し、メモリ内またはディスク上、例えば、分散データベースなどのデータベースにデータ記憶を含む。例えば、ロケーションデータキャッシュ134はロケーションの識別子、種類、地理的なロケーション、およびロケーションをカテゴライズし、ロケーションの予測を実施するための他のそのようなメタデータを記憶する。
発行元システム104はウェブページのコンテンツをホストするサーバ、またはサーバのネットワークを含む。発行元システム104は商業的なホスティングサービスまたは個別のサーバを含むことができる。発行元システム104は、発行元システム104によってホスティングされるウェブアドレスからウェブページデータ112を要求するのに応じてウェブページデータ112を端末デバイス106にサービングする。
端末デバイス106がウェブページデータ112を要求する際、発行元システム104は評価データ116についてデジタルコンテンツ配信加速化システム02への要求を送信し、要求されたウェブページのあらゆるデジタルコンテンツスロットをポピュレートする。発行元システム104は評価データ118をデジタルコンテンツ配信加速化システム02に要求する。デジタルコンテンツ配信加速化システム02のデータ取得エンジン130は、ウェブページに関連付けられる事前計算された評価結果データ118について確認を行うことにより要求を取り扱う。デジタルコンテンツ配信加速化システム02が事前計算された評価結果データ118を発見する場合、デジタルコンテンツ配信加速化システム02は事前計算された評価結果データ118を発行元システム104に送信する。評価処理は評価エンジン126によって既に実行されているため、デジタルコンテンツ配信加速化システム02は要求されたウェブページのデジタルコンテンツについて、要求に応じて評価処理を行う必要はない。
事前計算された評価結果データ118は発行元システム104に送信され、要求されたウェブページを端末デバイス106へサービングする。コンテンツ配信加速化システム02システムは、評価結果を事前計算すること、およびコンテンツタグを事前ロードすることに無関係なレイテンシに対し、ウェブページデータ112についての端末デバイス106による要求と、発行元システム104によるウェブページのサービングとの間のレイテンシを削減する。評価エンジン126は要求に応じて評価を実施する必要がないため、レイテンシが削減される。
端末デバイス106としては、ラップトップ、タブレット、携帯電話、または発行元システム104およびデジタルコンテンツ配信加速化システム02と通信するように構成される他のコンピューティングデバイスが挙げられる。端末デバイス106はウェブページについて要求114を発行元システム104に送信し、要求に応じて発行元システム104からウェブページデータ112を受信する。端末デバイス106は端末デバイス106のGPS座標を決定するためのGPS受信機を含む。端末デバイス106はキー付きデータ120を端末デバイス106の1つまたは複数のアプリケーションから収集し、キー付きデータ120をデジタルコンテンツ配信加速化システム02に送信する。端末デバイス106は1つまたは複数の検索クエリを検索エンジン128に送信することができる。
端末デバイス106はデジタルコンテンツを1つまたは複数のロケーションに関連付けられたデジタルコンテンツ配信加速化システム02に要求する。例えば、地図アプリケーションを実行中の端末デバイス106は、地図アプリケーションに描画されるロケーションのうち1つまたは複数についての追加の情報、例えば、ロケーションに関連付けられるウェブサイト、ロケーションに関連付けられるレーティングまたはレビュー、ロケーションの画像など、を要求することができる。例えば、予約アプリケーションを実行中の端末デバイス106は複数のロケーションのうち1箇所でのショーやテーブルについての予約を要求することができる。デジタルコンテンツ配信加速化システム02は、アプリケーションについてのそのような要求に応答するために必要とされるデジタルコンテンツのいくらかまたはすべてを記憶する。
デジタルコンテンツ配信加速化システム02はそのような要求を取り扱うためのインターフェースを含む。例えば、デジタルコンテンツ配信加速化システム02は、端末デバイス106上で実行中のアプリケーションまたはプログラムに基づいて予測されたロケーションに関連付けられる特定のデジタルコンテンツを取得するように構成することができる。例えば、レーティングおよびレビュープログラムが端末デバイス106上で実行中の場合、デジタルコンテンツ配信加速化システム02はアプリケーションによって必要とされるレーティングおよびレビューを取得し、それらをキー付きデジタルコンテンツキャッシュ142に記憶して、要求に応じてデータを取得することから生ずるレイテンシを削減することができる。
デジタルコンテンツプロバイダ108はサーバ、またはサーバのネットワーク、または類似のコンピューティングデバイスを含む。デジタルコンテンツプロバイダ108は、要求されると、デジタルコンテンツデータ150をデジタルコンテンツ配信加速化システム02に提供する。例えば、デジタルコンテンツ配信加速化システム02は、デジタルコンテンツプロバイダ108にデジタルコンテンツデータ150を要求する148。デジタルコンテンツ配信加速化システム02は、デジタルコンテンツキャッシュ136にデジタルコンテンツデータ150を記憶する。例えば、デジタルコンテンツ配信加速化システム02は、(例えば、予測されたロケーションに関連付けられる)1つまたは複数のウェブページについて評価エンジン126を使用して評価を実施した後、デジタルコンテンツプロバイダ108にデジタルコンテンツを要求する。
コンテンツ選択エンジン154は、キー付きデジタルコンテンツキャッシュ142に記憶することについて、予測された地理的なロケーションのうち特定の地理的なロケーションに関連付けられたデジタルコンテンツ150を取得する。特定の地理的なロケーションは、端末デバイスネットワークアクセスエンジン124によって特定される、他の地理的なロケーションに関連付けられる他の確率に対するより大きな確率に関連付けられる。コンテンツ選択エンジンはデジタルコンテンツについての要求148をデジタルコンテンツプロバイダ108に送信する。
図2を参照すると、図200は少なくとも部分的にコンテンツ配信加速システムからのデータに基づいてレンダリングされたグラフィカルユーザインターフェース202、220を示している。グラフィカルユーザインターフェース202はコンピューティングデバイス(例えば、端末デバイス106)上のアプリケーション(例えば、ブラウザ)内でレンダリングされる。アプリケーションはユーザのクリックレート、閲覧履歴、現在のウェブページアドレス、およびコンテンツ配信加速システム(例えば、図1のデジタルコンテンツ配信加速化システム02)によって記憶され、予測エンジン124、パラメータ化エンジン132などの訓練に使用される他の情報についてのデータを収集する。例えば、ユーザは検索クエリ204をウェブページに入力する。例えば、デジタルコンテンツ配信加速システムは検索ウェブページをホストする。
デジタルコンテンツ配信加速システムは検索クエリを受信し、検索結果ウェブページを提供する。検索結果ウェブページはリンク206(例えば、検索結果)などのテキストリンクを含む。例えば、検索結果ウェブページはデジタルコンテンツ項目212、214、216、および218などの1つまたは複数の予測されたロケーションに関連付けられる埋め込まれたウェブページデータを含む。デジタルコンテンツ項目212、214、216、および218はそれぞれ、デジタルコンテンツ配信加速システムの端末デバイスネットワークアクセスエンジンの予測されたロケーションに基づいて、追加のウェブページ(例えば、スポンサーされている結果)へのリンクを表現している。例えば、「レストラン」という検索クエリが入力されると、デジタルコンテンツ配信加速システムは、マックのマック、スライマンサンドイッチ、ゲイリーグリルおよびビショップバーガーなど、端末デバイス106によって要求されそうなデジタルコンテンツを有する1つまたは複数のロケーションを決定する。上述のようにロケーションが予測されるのは、正午時であり、ユーザがサンドイッチについて頻繁に検索し、または正午前後にサンドイッチショップを訪れ、また、ウェブページ上に表示されたデジタルコンテンツへのリンクを選択することによってなど、そのようなショップに関連付けられるデジタルコンテンツを要求しそうか、そのような傾向があるからである。
ユーザインターフェース202が生成され、端末デバイス106上に表示されると、デジタルコンテンツ項目212、214、216、および218がキャッシュから取得される(例えば、図1のキー付きデジタルコンテンツキャッシュ142)。デジタルコンテンツを端末デバイスにサービングするレイテンシは、ネットワークを介してリモートのデジタルコンテンツプロバイダ(例えば、図1のデジタルコンテンツプロバイダ108)からデジタルコンテンツ項目を要求することによって引き起こされるレイテンシに対して削減される。例えば、デジタルコンテンツ配信加速システムは、ネットワークを介してデジタルコンテンツをダウンロードする(それによって帯域幅制限、要求したデジタルコンテンツのサービングについてのデジタルコンテンツプロバイダからのレイテンシなどのためにレイテンシを引き起こすことがあるなど)必要がないため、レイテンシは削減される。さらに、表示されるデジタルコンテンツ項目212、214、216、および218は、ユーザにとって興味の対象ではないロケーションや施設に関連付けられるデジタルコンテンツよりも、ユーザにより関連性がある。
グラフィカルユーザインターフェース220は端末デバイス上(例えば、端末デバイス106)に表示されるウェブページの一例を示す。ウェブページは、発行元コンテンツ230を含む。ウェブページは、リンク222などの発行元に関連付けられる追加のウェブページへのリンクを含む。ウェブページはバナー224、サイドバー項目226、およびサイドバー項目228などのデジタルコンテンツ配信加速システムの予測されたロケーションに関するデジタルコンテンツを含む。予測されたロケーションに関する、他のデジタルコンテンツが取得されてもよい。ウェブページが要求されるよりも先にロケーションが予測されるため、バナー224、サイドバー項目226、228などのデジタルコンテンツ項目はウェブページがロードされるのに先立って取得される。インターフェース220のウェブページをサービングするための要求に応じて、バナー項目224、サイドバー項目226、228を取得することによってもたらされるレイテンシは、要求に先立ってバナー項目224、サイドバー項目226、228を取得することによって、削減できるか、または無くすことができる。
図3A~図3Cはそれぞれデジタルコンテンツ配信加速システムのアプリケーションについて、例示的なユーザインターフェース310、320、および330を示している。図3Aは上述のような端末デバイスに関する予測されたロケーションがないような、端末デバイス(例えば、図1の端末デバイス106)によって表示されるユーザインターフェース300を示している。
ユーザインターフェースは仮想地理的地図302を含む。仮想地理的地図302は端末デバイスの現在のロケーション306を示す。仮想地理的地図302は検索クエリ310に関連性がある1つまたは複数の他のロケーションを示す。アプリケーションは検索クエリ310に関連性がある地理的なロケーションに関するピン304などの1つまたは複数のピンを表示している。
図3Aの例において、検索クエリがキーフレーズ「この付近のサンドイッチ」を含むことを想定する。この例において、仮想地理的地図302は、端末デバイスのロケーションに対するサンドイッチショップの地理的なロケーションを表現する仮想地理的地図302上のロケーションに複数のピンを示している。デジタルコンテンツ配信加速システムが予測を行わない場合、アプリケーションはユーザにより関連性があるロケーションを区別することができないため、この例のように多くのピンが返される。検索クエリとあまり関連性がないロケーションなどのいくつかのロケーションは表示されていないが、表示されているロケーションのうちいくつかは、あるユーザがそのロケーションに良くないレビューを残した、ベジタリアンである、などの場合のように、端末デバイスのユーザが訪れそうにない。検索クエリに応じてユーザに関連性のないデジタルコンテンツが取得されて仮想地理的地図302上に表示されているため、これは余計な帯域幅の使用やレイテンシにつながる。
図3Bは上述のような端末デバイスに関する予測されたロケーションを伴うような、端末デバイス(例えば、図1の端末デバイス106)によって表示されるユーザインターフェース320を示している。ユーザインターフェースは仮想地理的地図322を含む。仮想地理的地図322は端末デバイスの現在のロケーション306を示す。検索クエリ310の受信に応じて、デジタルコンテンツ配信加速システムはどのデジタルコンテンツが端末デバイスのために取得されたかを確認し、デジタルコンテンツを端末デバイスにサービングする。例えば、特定の検索クエリの受信に応じて、ピン324をユーザに関連性があるように送信または促して表示するようにすることができる。アプリケーションはインターフェース300よりも少ないデジタルコンテンツを送信し、帯域幅の使用を節約し、端末デバイス上に表示されるデータの関連性を向上させている。この例では、図3Aのユーザインターフェース300では12個のピンであったのに対し、サンドイッチについての選択肢として4つのピンがユーザに表示されている。
図3Cは端末デバイス(例えば、図1の端末デバイス106)によって表示されるユーザインターフェース330を示している。ユーザインターフェース330は仮想地理的地図332を含む。仮想地理的地図332は端末デバイスの現在のロケーション306を含む。検索クエリ310の受信に応じて、ユーザインターフェース330は1つまたは複数の予測されたロケーションまでの提案されるルートを表示する。ロケーション340などの他の予測されたロケーションよりも関連性が高い予測されたロケーション338への主要なルート336が示されている。ロケーション340が端末デバイスのロケーション306により近くであっても、端末デバイスネットワークアクセスエンジンによってロケーション338はロケーション340よりも可能性が高そうであると決定される。他のロケーションへの、ルート334などの替わりのルートが示される。予測されたロケーションは、上述のように好み、またはロケーションが営業中かどうか、もしくは交通や道路の閉鎖などがあるかどうかなどの他の留意点に基づくことができる。デジタルコンテンツ342がロケーション338の近くに表示されており、ユーザをロケーション338を訪れるように誘うことができる。デジタルコンテンツ342は端末デバイスのユーザに非常に関連性があると考えられ、検索クエリの受信に先立って取得されている。デジタルコンテンツ342は、リモートのデジタルコンテンツプロバイダからデジタルコンテンツを取得することによって、または検索クエリの受信に応じて上述のようなデジタルコンテンツの評価を実施することによって、引き起こされるレイテンシ無しに表示することができる。
図4はデジタルコンテンツ配信加速化についての処理400を表現する図である。端末デバイス106は検索クエリまたは他のキー付きデータをデジタルコンテンツ配信加速化システム02に送信する(402)。デジタルコンテンツ配信加速化システム02はキー付きデータを受信し(404)、キー付きデータを記憶する(406)。いくつかの例において、デジタルコンテンツ配信加速化システム02は、ウェブページ、検索結果などについて発行元システム104によって、キー付きデータを使用して要求に応答する(408)。キー付きデータは端末デバイスによって受信される(410)。端末デバイス106はロケーションデータをデジタルコンテンツ配信加速化システム02に送信する(412)。デジタルコンテンツ配信加速化システム02はロケーションデータを受信し(414)、要求されることになるデジタルコンテンツに関連付けられる次のロケーションの予測を生成する(420)。いくつかの例において、端末デバイス106は発行元システム104にウェブページデータなどのデジタルコンテンツを要求する(416)。発行元システム104は評価結果データなどのデータについて、デジタルコンテンツ配信加速化システム02に要求を送信する(418)。デジタルコンテンツ配信加速化システム02は、発行元システム104によって評価結果データが要求された場合、および評価がまだ行われていない場合など、必要であればデジタルコンテンツ評価を実施する(422)。デジタルコンテンツ配信加速化システム02は、デジタルコンテンツプロバイダ108に予測されたロケーションに関連付けられたデジタルコンテンツを要求する(424)。デジタルコンテンツプロバイダはデジタルコンテンツ要求を受信し(426)、デジタルコンテンツをデジタルコンテンツ配信加速化システム02に送信することによって応答する(428)。デジタルコンテンツ配信加速化システム02はデジタルコンテンツを受信する(430)。端末デバイス106によってウェブページが要求される時などのいくつかの例において、デジタルコンテンツ配信加速化システム02は、デジタルコンテンツをウェブページに組み立てるか、またはポピュレートする発行元システム104にデジタルコンテンツを送信する(432)。発行元システム104はウェブページデータを端末デバイス106に送信する(434)。端末デバイス106はウェブページデータを受信し(436)、ユーザにデータを表示する。端末デバイス106がデジタルコンテンツ配信加速化システム02に関連付けられるアプリケーションを実行している時などのいくつかの例において、デジタルコンテンツ配信加速化システム02はそれをユーザインターフェースに追加するなどデジタルコンテンツを組み立て(438)、端末デバイスにデジタルコンテンツを送信する。端末デバイスはデジタルコンテンツを受信し(440)、ユーザにデジタルコンテンツを表示する。
図5はデジタルコンテンツ配信加速化についての処理500を表現する流れ図である。デジタルコンテンツ配信加速システム(例えば、図1のデジタルコンテンツ配信加速化システム02)は、端末デバイスに関連付けられた検索データおよびウェブ履歴データを取得する(502)。デジタルコンテンツ配信加速システムは検索データおよびウェブ履歴データから属性を抽出し(504)、図1に関連して説明したようないくつかのロケーションについて確率分布を生成する(506)。デジタルコンテンツ配信加速システムはリモートのデジタルコンテンツプロバイダなどからデジタルコンテンツを取得する(508)。デジタルコンテンツ配信加速システムは端末デバイスによってレンダリングされるようにデジタルコンテンツを組み立てる(510)。
図6はデジタルコンテンツ配信加速化についての処理600を表現する流れ図である。デジタルコンテンツ配信加速システム(例えば、図1のデジタルコンテンツ配信加速化システム02)は、端末デバイスからなどのロケーションデータを受信する(602)。デジタルコンテンツ配信加速システムは端末デバイスに関連付けられるキー付きデータなどのキー付きデータを取得し(604)、端末デバイスからなど、デジタルコンテンツが要求される次のロケーションを予測する(606)。発行元システムによってなど評価結果データが要求される場合(608)、デジタルコンテンツ配信加速システムは評価結果データが得られるかどうかを確認して判断する。評価結果が要求されない場合、デジタルコンテンツ配信加速システムは次のロケーションに関連付けられたデジタルコンテンツを得て(610)、ユーザインターフェース(例えば、ユーザインターフェース322または332)などのために次のロケーションに関連付けられたデジタルコンテンツを組み立てる(612)。
デジタルコンテンツ配信加速システムは評価結果が得られるかどうかを確認して判断する(614)。デジタルコンテンツ配信加速システムは評価結果データを有していない場合、デジタルコンテンツ配信加速システムは要求されたウェブページについてのデジタルコンテンツの評価を実施する(616)。評価結果データが得られた場合、デジタルコンテンツ配信加速システムは評価によって特定されたデジタルコンテンツが得られるかどうかを確認して判断する(618)。評価によって特定されたデジタルコンテンツが得られない場合、デジタルコンテンツ配信加速システムは評価結果を要求を行っているウェブページ発行元(例えば、図1の発行元104)に送信する(620)。評価によって特定されたデジタルコンテンツが得られる場合、デジタルコンテンツ配信加速システムは評価結果によって特定されるデジタルコンテンツを発行元システムに送信する(622)。
図7は本文書で説明されるシステムおよび方法を実装するために使用され得る例示のコンピューティングデバイス700、750を示しており、それらは、クライアントとして、または、1つのサーバとして、もしくは複数のサーバとしてのものである。コンピューティングデバイス700は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータなど、デジタルコンピュータの様々な形態を表現することを意図している。コンピューティングデバイス750は、携帯情報端末、携帯電話、スマートフォン、および他の類似のコンピューティングデバイスなど、モバイルデバイスの様々な形態を表現することを意図している。さらに、コンピューティングデバイス700または750はユニバーサルシリアルバス(USB)フラッシュドライブを含むことができる。USBフラッシュドライブはオペレーティングシステムおよび他のアプリケーションを記憶することができる。USBフラッシュドライブは無線送信器または別のコンピューティングデバイスのUSBポートに挿入できるUSBコネクタなどの入出力コンポーネントを含むことができる。ここで示すコンポーネント、それらの接続および関連性、ならびにその機能は例示のみを意図しており、本文書で説明および/または特許請求される発明の実装形態を限定することは意図していない。
コンピューティングデバイス700はプロセッサ702、メモリ704、記憶デバイス706、メモリ704および高速拡張ポート710に接続する高速インターフェース708、ならびに低速バス714および記憶デバイス706に接続する低速インターフェース712を含む。コンポーネント702、704、706、708、710、および712のそれぞれは、様々なバスを使用して相互接続されており、共通のマザーボードにまたは必要に応じて他のやり方でマウントすることができる。プロセッサ702はコンピューティングデバイス700内で、メモリ704または記憶デバイス706に記憶される命令を含む、実行のための命令を処理し、高速インターフェース708に結合されるディスプレイ716など外部入出力デバイス上にGUIのためのグラフィカルな情報を表示することができる。他の実装形態において、複数のプロセッサおよび/または複数のバスを、複数のメモリおよび複数の種類のメモリとともに、必要に応じて使用することができる。また、複数のコンピューティングデバイス700を必要な動作(例えば、サーババンク(server bank)、ブレードサーバのグループ、またはマルチプロセッサシステムとして)の部分を提供するそれぞれのデバイスと接続することができる。
メモリ704はコンピューティングデバイス700内に情報を記憶する。一実装形態において、メモリ704は1つまたは複数の揮発性のメモリユニットである。別の実装形態において、メモリ704は1つまたは複数の非揮発性のメモリユニットである。メモリ704はまた、磁気、コンピュータ可読ハードウェア記憶デバイス、または光学ディスクなどのコンピュータ可読媒体の別の形態であってもよい。
記憶デバイス706はコンピューティングデバイス700に大容量記憶を提供することができる。一実装形態において、記憶デバイス706は、フロッピーディスクデバイス、ハードディスクデバイス、光学ディスクデバイス、もしくはテープデバイス、フラッシュメモリ、または他の類似のソリッドステートメモリデバイス、あるいは記憶エリアネットワーク内のデバイスを含むデバイスのアレイまたは他の構成などのコンピュータ可読媒体であってよいか、そのようなコンピュータ可読媒体を含むことができる。コンピュータプログラム製品は情報キャリアとして有形に具現化されていてよい。コンピュータプログラム製品はまた、実行されると上述のような1つまたは複数の方法を実施する命令を含んでいてもよい。情報キャリアはメモリ704、記憶デバイス706、またはプロセッサ702上のメモリなどの、コンピュータ可読媒体または機械可読媒体である。
高速コントローラ708はコンピューティングデバイス700についての帯域幅集約的な動作を管理する一方、低速コントローラ712はより低い帯域幅集約的な動作を管理する。そのような機能の割り振りは例示的なものに過ぎない。一実装形態において、高速コントローラ708はメモリ704、ディスプレイ716(例えば、グラフィック用のプロセッサまたはアクセラレータを介して)、および様々な拡張カード(図示せず)を受け入れることができる高速拡張ポート710に結合される。この実装形態において、低速コントローラ712は記憶デバイス706および低速拡張ポート714に結合される。様々な通信ポート(例えば、USB、Bluetooth(登録商標)、イーサネット(登録商標)、無線イーサネット(登録商標))を含み得る低速拡張ポートは、キーボード、ポインティングデバイス、スキャナ、または例えば、ネットワークアダプタを介するスイッチもしくはルータなどのネットワーキングデバイスなどの1つまたは複数の入出力デバイスに結合することができる。
コンピューティングデバイス700は図に示すように複数の異なる形態に実装することができる。例えば、標準的なサーバ720またはそのようなサーバのグループにおける繰り返しとして、実装することができる。ラックサーバシステム724の一部として実装することもできる。さらに、ラップトップコンピュータ722などのパーソナルコンピュータに実装してもよい。あるいは、コンピューティングデバイス700からのコンポーネントはデバイス750などのモバイルデバイス(図示せず)における他のコンポーネントと組み合わされてもよい。そのようなデバイスのそれぞれはコンピューティングデバイス700、750の1つまたは複数を含むことができ、システム全体は互いに通信する複数のコンピューティングデバイス700、750から成り立ってよい。
コンピューティングデバイス750は、他のコンポーネントの中でもとりわけ、プロセッサ752、メモリ764、ディスプレイ754などの入出力デバイス、通信インターフェース766、および送受信機768を含む。デバイス750にはまた追加の記憶装置を提供するために、マイクロドライブ、または他のデバイスなどの、記憶デバイスが備わっていてもよい。コンポーネント750、752、764、754、766、および768のそれぞれは、様々なバスを使用して相互接続されており、コンポーネントのいくつかを共通のマザーボードにまたは必要に応じて他のやり方でマウントすることができる。
プロセッサ752はコンピューティングデバイス750内でメモリ764に記憶される命令を含む、命令を実行することができる。プロセッサは、別個のおよび複数の、アナログおよびデジタルプロセッサを含むチップの、チップセットとして実装することができる。さらに、プロセッサは複数のアーキテクチャのうち任意のものを使用して実装することができる。例えば、プロセッサ752はCISC(Complex Instruction Set Computers)プロセッサ、RISC(Reduced Instruction Set Computer)プロセッサ、またはMISC(Minimal Instruction Set Computer)プロセッサであってもよい。プロセッサは、例えば、ユーザインターフェースの制御、デバイス750によるアプリケーション実行、およびデバイス750による無線通信など、デバイス750の他のコンポーネントの協調性を提供することができる。
プロセッサ752はディスプレイ754に結合されるコントロールインターフェース758およびディスプレイインターフェース756を介してユーザと通信することができる。ディスプレイ754は、例えば、TFT(薄膜トランジスタ液晶ディスプレイ)ディスプレイまたはOLED(有機発光ダイオード)ディスプレイ、または他の適切なディスプレイ技術であってもよい。ディスプレイインターフェース756はユーザにグラフィカルなおよび他の情報を表示するためにディスプレイ754を駆動するための適切な回路を備えることができる。コントロールインターフェース758はユーザからコマンドを受信し、それらをプロセッサ752への送信のために変換する。さらに、外部インターフェース762はプロセッサ752と通信することができ、それによってデバイス750が他のデバイスと近距離通信できるようになる。他の実装形態において、外部インターフェース762は、例えば、有線通信または無線通信を提供することができ、また複数のインターフェースを使用することもできる。
メモリ764はコンピューティングデバイス750内に情報を記憶する。メモリ764は1つまたは複数のコンピュータ可読媒体、1つまたは複数の揮発性メモリユニット、または1つまたは複数の非揮発性メモリユニットのうちの1つまたは複数として実装することができる。拡張メモリ774もまた提供されて拡張インターフェース772を介してデバイス750に接続することができ、例えば、SIMM(Single In-Line Memory Module)カードインターフェースを含むことができる。そのような拡張メモリ774はデバイス750に余分な記憶領域を提供することができ、またはデバイス750についてアプリケーションもしくは他の情報を記憶することもできる。具体的には、拡張メモリ774は上述の処理を実行または補完するための命令を含み、またセキュアな情報も含むことができる。したがって、例えば、拡張メモリ774はデバイス750のためのセキュリティモジュールであってもよく、デバイス750のセキュアな使用を許可する命令をプログラムされていてもよい。さらに、セキュアなアプリケーションがSIMMカードを介し、ハッキングできないようなやり方でSIMMカード上に個人認識情報を配置するなど追加の情報とともに提供されてもよい。
以下で議論するように、メモリは例えばフラッシュメモリおよび/またはNVRAMメモリを含むことができる。一実装形態において、コンピュータプログラム製品は情報キャリアとして有形に具現化される。コンピュータプログラム製品は、実行されると上述したものなどの1つまたは複数の方法を実施する命令を含む。情報キャリアは、メモリ764、拡張メモリ774、または例えば、送受信機768もしくは外部インターフェース762を介して受信され得るプロセッサ752上のメモリなどの、コンピュータ可読媒体、または機械可読媒体である。
デバイス750は通信インターフェース766を介して無線通信することができ、必要があればデジタル信号処理回路を含むことができる。通信インターフェース766は、とりわけGSM(登録商標)ボイスコール、SMS、EMSもしくはMMSメッセージング、CDMA(登録商標)、TDMA、PDC、WCDMA(登録商標)、CDMA2000もしくはGPRSなどの様々なモードまたはプロトコルにしたがって通信を提供する。そのような通信は例えば、無線周波数の送受信機768を介して発生することがある。さらに、Bluetooth(登録商標)、WiFi、または他のそのような送受信機(図示せず)を使用するような、狭域通信が発生することがある。さらに、GPS(全地球測位システム)受信機モジュール770は追加のナビゲーション関連およびロケーション関連の無線データをデバイス750に提供することができ、デバイス750上で実行しているアプリケーションによって必要に応じて使用することができる。
デバイス750はまた音声コーデック760を使用して音声的に通信することもでき、ユーザから発話された情報を受信し、使用可能なデジタル情報に変換することができる。同様に、音声コーデック760はユーザに対して、例えば、デバイス750のハンドセットにあるスピーカを介してなど、音声的な音を生成することができる。そのような音としては、音声電話呼び出しからの音を挙げることができ、録音された音(例えば、ボイスメッセージ、音楽ファイル、など)を挙げることができ、またデバイス750上で動作中のアプリケーションによって生成される音を挙げることもできる。
コンピューティングデバイス750は図に示すように複数の異なる形態に実装することができる。例えば、携帯電話780として実装することができる。スマートフォン782、携帯情報端末、または他の類似のモバイルデバイスの一部として実装することもできる。
本明細書で説明されるシステムおよび手法の様々な実装形態は、デジタル電子回路、集積回路、特別に設計されたASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、および/またはそれらの組み合わせにおいて実現することができる。これらの様々な実装形態は、少なくとも1つのプログラム可能なプロセッサを含むプログラム可能なシステム上で実行可能なおよび/または解釈可能な1つまたは複数のコンピュータプログラムにおける実装形態を含むことができ、特殊目的もしくは汎用目的であってよく、データおよび命令を記憶システム、少なくとも1つの入力デバイスおよび少なくとも1つの出力デバイスから受信するため、ならびにデータおよび命令を記憶システム、少なくとも1つの入力デバイスおよび少なくとも1つの出力デバイスに伝送するために結合されてもよい。
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、またはコードとしても知られる)は、プログラム可能なプロセッサのための機械命令を含み、高度手続き型および/またはオブジェクト指向プログラミング言語、および/またはアセンブリ語/機械語で実装することができる。本明細書で使用されるような「機械可読媒体」「コンピュータ可読媒体」という用語は、プログラム可能なプロセッサに機械命令および/またはデータを提供するために使用される、あらゆるコンピュータプログラム製品、装置および/またはデバイス(例えば、磁気ディスク、光学ディスク、メモリ、プログラマブル論理デバイス(PLD))を指し、機械可読信号として機械命令を受信する機械可読媒体を含む。「機械可読信号」という用語は、プログラム可能なプロセッサに機械命令および/またはデータを提供するために使用されるあらゆる信号を指す。
ユーザとの対話を提供するために、本明細書に記載のシステムおよび手法は、ユーザに情報を表示するためのディスプレイデバイス(例えばCRT(ブラウン管)またはLCD(液晶ディスプレイ)モニタ)、キーボード、およびポインティングデバイス(例えば、マウスまたはトラックボール)を有するコンピュータ上に実装することができ、それによってユーザはコンピュータに入力を行うことができる。同様に他の種類のデバイスを、ユーザとの対話を提供するために使用することができる;例えば、ユーザに提供されるフィードバックはあらゆる形態の感覚的なフィードバック(例えば視覚的なフィードバック、聴覚的なフィードバック、または触覚的なフィードバック)であってよく;ユーザからの入力は、音響、発話または触覚的な入力を含む、あらゆる形態で受信することができる。
本明細書に記載のシステムおよび手法は、バックエンドコンポーネント(例えば、データサーバとして)を含むコンピューティングシステム、またはミドルウェアコンポーネント(例えば、アプリケーションサーバ)を含むコンピューティングシステム、またはフロントエンドコンポーネント(例えば、それを通じてユーザが本明細書に記載のシステムおよび手法の実装形態と対話することができる、グラフィカルユーザインターフェースまたはウェブブラウザを有するクライアントコンピュータ)を含むコンピューティングシステム、またはそのようなバックエンド、ミドルウェア、フロントエンドコンポーネントのあらゆる組み合わせ、に実装することができる。システムのコンポーネントは、デジタルデータ通信のあらゆる形態または媒体(例えば、通信ネットワーク)によって、相互接続することができる。通信ネットワークの例としては、ローカルエリアネットワーク(「LAN」)、広域エリアネットワーク(「WAN」)、ピアツーピアネットワーク(アドホックまたはスタティックメンバを有する)、グリッドコンピューティングインフラストラクチャ、およびインターネットが挙げられる。
コンピューティングシステムは、クライアントおよびサーバを含むことができる。クライアントおよびサーバは一般的に、互いに離れており、典型的には通信ネットワークを介して対話する。クライアントとサーバの関係性は、それぞれのコンピュータ上で実行しており、互いのクライアント-サーバ関係性を有しているコンピュータプログラムのおかげで成立する。
上記ではいくつかの実装形態を詳細に説明してきたが、他の修正が可能である。さらには、コンテンツ配信加速についての他のメカニズムを使用してもよい。さらに、図面において描写される論理フローは、所望の結果を達成するために、示される特定の順序、または連続する順を要求しない。他のステップが提供されてもよく、またはステップは説明されたフローから除去してもよく、また他のコンポーネントを説明したシステムに追加してもよく、説明したシステムから取り除かれてもよい。したがって、他の実装形態が以下の特許請求の範囲の範囲内にある。
100 ネットワーク化された環境
102 デジタルコンテンツ配信加速システム
104 発行元システム
106 端末デバイス
108 デジタルコンテンツプロバイダ
110 ネットワーク
112 ウェブページデータ
114 ウェブページ要求
116 評価要求
118 評価結果データ
120 キー付きデータ
124 端末デバイスネットワークアクセスエンジン
126 評価エンジン
128 検索エンジン
130 データ取得エンジン
132 パラメータ化エンジン
134 ロケーションデータキャッシュ
136 検索履歴キャッシュ
138 ウェブ履歴キャッシュ
140 ロケーション履歴キャッシュ
142 キー付きデジタルコンテンツキャッシュ
144 インターフェース
146 アプリケーションデータ
150 デジタルコンテンツデータ
152 解析エンジン
154 コンテンツ選択エンジン
156 デジタルコンテンツ組み立てエンジン
202 グラフィカルユーザインターフェース
204 検索クエリ
206 リンク
212 デジタルコンテンツ
214 デジタルコンテンツ
216 デジタルコンテンツ
218 デジタルコンテンツ
220 グラフィカルユーザインターフェース
222 リンク
224 バナー
226 サイドバー項目
228 サイドバー項目
300 ユーザインターフェース
302 仮想地理的地図
304 ピン
306 端末デバイスの現在のロケーション
310 検索クエリ
320 ユーザインターフェース
322 仮想地理的地図
324 ピン
330 ユーザインターフェース
332 仮想地理的地図
334 ルート
336 ロケーション338への主要なルート
338 予測されたロケーション
340 提案されるルートを表示するロケーション
342 デジタルコンテンツ
700 コンピューティングデバイス
702 プロセッサ
704 メモリ
706 記憶デバイス
708 高速インターフェース
710 高速拡張ポート
712 低速インターフェース
714 低速バス、低速拡張ポート
716 ディスプレイ
720 標準的なサーバ
722 ラップトップコンピュータ
724 ラックサーバシステム
750 コンピューティングデバイス
752 プロセッサ
754 ディスプレイ
756 ディスプレイインターフェース
758 コントロールインターフェース
760 音声コーデック
762 外部インターフェース
764 メモリ
766 通信インターフェース
768 送受信機
770 GPS受信機モジュール
774 拡張メモリ
780 携帯電話
782 スマートフォン

Claims (35)

  1. デジタルコンテンツ配信におけるレイテンシを削減するためのデジタルコンテンツ配信加速化システムであって、
    ユーザプロファイルを表すキー付きデータを記憶するキー付きデータベースと、
    1つまたは複数のコンピュータとを備え、前記1つまたは複数のコンピュータが、
    ユーザのユーザプロファイルを表すキー付きデータを受信したことに応じて、i)前記ユーザプロファイルに関連付けられた検索履歴を示す検索データ、ii)前記ユーザプロファイルに関連付けられた端末デバイスによってアクセスされた1つもしくは複数のウェブページを示すウェブ履歴データ、またはiii)i)およびii)の両方のうち1つを取得するデータ取得エンジンと、
    前記検索データおよび前記ウェブ履歴データから1つまたは複数の属性を抽出する解析エンジンであって、前記1つまたは複数の属性が、前記検索データおよび前記ウェブ履歴データを地理的なロケーションと関連付ける、解析エンジンと、
    前記属性によって前記検索データおよび前記ウェブ履歴データが関連付けられている前記地理的なロケーションのそれぞれについての確率データを生成する端末デバイスネットワークアクセスエンジンであって、前記地理的なロケーションのうちの特定の地理的なロケーションのそれぞれについての前記確率データが、前記ユーザプロファイルに関連付けられた1つまたは複数の端末デバイスが前記特定の地理的なロケーションに関連付けられたデジタルコンテンツを要求する尤度を指定するものである、端末デバイスネットワークアクセスエンジンと、
    デジタルコンテンツプロバイダから、前記地理的なロケーションのうちの他の前記特定の地理的なロケーションの尤度に対してより高い尤度を有する2つ以上の前記特定の地理的なロケーションに基づいて前記2つ以上の特定の地理的なロケーションに関連付けられたデジタルコンテンツを取得するコンテンツ選択エンジンと、
    (i)前記端末デバイスが前記2つ以上の特定の地理的なロケーションとは異なる別個の地理的なロケーションに位置している間に前記端末デバイスに送信するために、前記2つ以上の特定の地理的なロケーションに関連付けられた前記デジタルコンテンツを事前組み立てすることであって、これにより、前記デジタルコンテンツ配信加速化システムが、前記端末デバイス上での前記デジタルコンテンツの表示のために前記デジタルコンテンツを提供することの要求を受信するのに先立って、レンダリングのために、前記デジタルコンテンツが組み立てられる、ことと、(ii)前記端末デバイスが前記2つ以上の特定の地理的なロケーションのいずれかに位置する前に、前記端末デバイスに、前記2つ以上の特定の地理的なロケーションに関連付けられた前記事前組み立てされたデジタルコンテンツを配信することとをする、デジタルコンテンツ組み立てエンジンとを備える、
    デジタルコンテンツ配信加速化システム。
  2. 前記キー付きデータが、前記端末デバイスのユーザの検索履歴および/または閲覧履歴を含む、
    請求項1に記載のデジタルコンテンツ配信加速化システム。
  3. 前記デジタルコンテンツ配信加速化システムが、前記端末デバイスがオンラインである期間でかつ前記デジタルコンテンツについての要求が前記端末デバイスから送信されるのに先立って、前記事前組み立てされたデジタルコンテンツを前記端末デバイスに送信するように構成され、これにより、前記端末デバイスがオフラインである期間に、引き続きユーザが前記デジタルコンテンツに対して要求を発行する場合に、前記デジタルコンテンツが前記端末デバイスの前記ユーザにとって利用可能となる、
    請求項1に記載のデジタルコンテンツ配信加速化システム。
  4. 前記確率データを生成するステップが、
    1つまたは複数のトピッククラスタに、前記1つまたは複数の属性をクラスタリングするステップであって、前記1つまたは複数のトピッククラスタが、それぞれ所定のトピックのリストのトピックを示す、ステップと、
    訓練されたモデルを使用して、前記1つまたは複数のトピッククラスタを、ユーザに関連付けられた1つまたは複数の地理的なロケーションを示すロケーションデータに変換するステップと、
    前記変換するステップに基づいて、前記1つまたは複数の地理的なロケーションのそれぞれの地理的なロケーションを、前記ユーザが訪れる確率を生成するステップとを含む、
    請求項1に記載のデジタルコンテンツ配信加速化システム。
  5. 前記変換するステップが、1つまたは複数の機械学習アルゴリズムを実行するステップを含む、
    請求項4に記載のデジタルコンテンツ配信加速化システム。
  6. 前記解析エンジンがユーザに関連付けられた購買層データを抽出し、前記1つまたは複数の属性が前記購買層データを特徴づける、
    請求項1に記載のデジタルコンテンツ配信加速化システム。
  7. 前記検索データおよび前記ウェブ履歴データが、それぞれタイミングデータに関連付けられ、前記端末デバイスネットワークアクセスエンジンが、前記タイミングデータに基づいて前記地理的なロケーションについての確率の分布を生成する、
    請求項1に記載のデジタルコンテンツ配信加速化システム。
  8. 前記データ取得エンジンが、ユーザが訪れた1つまたは複数の地理的なロケーションを示す地理的なロケーション履歴データをフェッチし、前記1つまたは複数の属性が前記地理的なロケーション履歴データをさらに特徴づける、
    請求項1に記載のデジタルコンテンツ配信加速化システム。
  9. 前記1つまたは複数の属性がキーワードおよびキーフレーズのうち1つまたは複数を含む、
    請求項1に記載のデジタルコンテンツ配信加速化システム。
  10. 前記解析エンジンが、行列因子分解または低ランク近似に基づいて前記1つまたは複数の属性を抽出する、
    請求項1に記載のデジタルコンテンツ配信加速化システム。
  11. 前記取得されたデジタルコンテンツが、仮想地理的地図上の位置についてブランド名がついたピンを含み、前記ブランド名がついたピンが、前記デジタルコンテンツに関連付けられる前記特定の地理的なロケーションを表す、
    請求項1に記載のデジタルコンテンツ配信加速化システム。
  12. 前記デジタルコンテンツが、前記デジタルコンテンツに関連付けられた前記特定の地理的なロケーションに位置しているエンティティについてのコンテンツ項目を含む、
    請求項1に記載のデジタルコンテンツ配信加速化システム。
  13. ユーザプロファイルを表すキー付きデータをキー付きデータベースに記憶するステップと、
    ユーザのユーザプロファイルを表すキー付きデータを受信したことに応じて、i)前記ユーザプロファイルに関連付けられた検索履歴を示す検索データ、ii)前記ユーザプロファイルに関連付けられた端末デバイスによってアクセスされた1つもしくは複数のウェブページを示すウェブ履歴データ、またはiii)i)およびii)の両方のうち1つをデータ取得エンジンによって取得するステップと、
    解析エンジンによって前記検索データおよび前記ウェブ履歴データから1つまたは複数の属性を抽出するステップであって、前記1つまたは複数の属性が、前記検索データおよび前記ウェブ履歴データを地理的なロケーションと関連付ける、ステップと、
    端末デバイスネットワークアクセスエンジンによって、前記属性によって前記検索データおよび前記ウェブ履歴データが関連付けられている前記地理的なロケーションのそれぞれについての確率データを生成するステップであって、前記地理的なロケーションのうちの特定の地理的なロケーションのそれぞれについての前記確率データが、前記ユーザプロファイルに関連付けられた1つまたは複数の端末デバイスが前記特定の地理的なロケーションに関連付けられたデジタルコンテンツを要求する尤度を指定するものである、ステップと、
    コンテンツ選択エンジンによって、
    前記地理的なロケーションのうちの他の前記特定の地理的なロケーションの尤度に対してより高い尤度を有する2つ以上の前記特定の地理的なロケーションに基づいて前記2つ以上の特定の地理的なロケーションに関連付けられたデジタルコンテンツをデジタルコンテンツプロバイダから取得するステップと、
    デジタルコンテンツ組み立てエンジンによって、前記端末デバイスが前記2つ以上の特定の地理的なロケーションとは異なる別個の地理的なロケーションに位置している間に前記端末デバイスに送信するために、前記2つ以上の特定の地理的なロケーションに関連付けられた前記デジタルコンテンツを事前組み立てするステップであって、これにより、デジタルコンテンツ配信のレイテンシを削減するためのデジタルコンテンツ配信加速化システムが、前記端末デバイス上での前記デジタルコンテンツの表示のために前記デジタルコンテンツを提供することの要求を受信するのに先立って、レンダリングのために、前記デジタルコンテンツが組み立てられる、ステップと、
    前記端末デバイスが前記2つ以上の特定の地理的なロケーションのいずれかに位置する前に、前記端末デバイスに、前記2つ以上の特定の地理的なロケーションに関連付けられた前記事前組み立てされたデジタルコンテンツを配信するステップとを含む、
    方法。
  14. 前記キー付きデータが、前記端末デバイスのユーザの検索履歴および/または閲覧履歴を含む、
    請求項13に記載の方法。
  15. 前記デジタルコンテンツ配信加速化システムが、前記端末デバイスがオンラインである期間でかつ前記デジタルコンテンツについての要求が前記端末デバイスから送信されるのに先立って、前記事前組み立てされたデジタルコンテンツを前記端末デバイスに送信するように構成され、これにより、前記端末デバイスがオフラインである期間に、引き続きユーザが前記デジタルコンテンツに対して要求を発行する場合に、前記デジタルコンテンツが前記端末デバイスの前記ユーザにとって利用可能となる、
    請求項13に記載の方法。
  16. 前記確率データを生成するステップが、
    1つまたは複数のトピッククラスタに、前記1つまたは複数の属性をクラスタリングするステップであって、前記1つまたは複数のトピッククラスタが、それぞれ所定のトピックのリストのトピックを示す、ステップと、
    訓練されたモデルを使用して、前記1つまたは複数のトピッククラスタを、ユーザに関連付けられた1つまたは複数の地理的なロケーションを示すロケーションデータに変換するステップと、
    前記変換するステップに基づいて、前記1つまたは複数の地理的なロケーションのそれぞれの地理的なロケーションを、前記ユーザが訪れる確率を生成するステップとを含む、
    請求項13に記載の方法。
  17. 前記変換するステップが、1つまたは複数の機械学習アルゴリズムを実行するステップを含む、
    請求項16に記載の方法。
  18. 前記解析エンジンがユーザに関連付けられた購買層データを抽出し、前記1つまたは複数の属性が前記購買層データを特徴づける、
    請求項13に記載の方法。
  19. 前記検索データおよび前記ウェブ履歴データが、それぞれタイミングデータに関連付けられ、前記端末デバイスネットワークアクセスエンジンが、前記タイミングデータに基づいて前記地理的なロケーションについての確率の分布を生成する、
    請求項13に記載の方法。
  20. 前記データ取得エンジンが、ユーザが訪れた1つまたは複数の地理的なロケーションを示す地理的なロケーション履歴データをフェッチし、前記1つまたは複数の属性が前記地理的なロケーション履歴データをさらに特徴づける、
    請求項13に記載の方法。
  21. 前記1つまたは複数の属性がキーワードおよびキーフレーズのうち1つまたは複数を含む、
    請求項13に記載の方法。
  22. 前記解析エンジンが、行列因子分解または低ランク近似に基づいて前記1つまたは複数の属性を抽出する、
    請求項13に記載の方法。
  23. 前記取得されたデジタルコンテンツが、仮想地理的地図上の位置についてブランド名がついたピンを含み、前記ブランド名がついたピンが、前記デジタルコンテンツに関連付けられる前記特定の地理的なロケーションを表す、
    請求項13に記載の方法。
  24. 前記デジタルコンテンツが、前記デジタルコンテンツに関連付けられた前記特定の地理的なロケーションに位置しているエンティティについてのコンテンツ項目を含む、
    請求項13に記載の方法。
  25. デジタルコンテンツ配信のレイテンシを削減するためのデジタルコンテンツ配信加速化システムに以下の動作を実行させる命令を記憶する非一時的コンピュータ可読記録媒体であって、前記動作が、
    ユーザプロファイルを表すキー付きデータをキー付きデータベースに記憶するステップと、
    ユーザのユーザプロファイルを表すキー付きデータを受信したことに応じて、i)前記ユーザプロファイルに関連付けられた検索履歴を示す検索データ、ii)前記ユーザプロファイルに関連付けられた端末デバイスによってアクセスされた1つもしくは複数のウェブページを示すウェブ履歴データ、またはiii)i)およびii)の両方のうち1つを取得するステップと、
    前記検索データおよび前記ウェブ履歴データから1つまたは複数の属性を抽出するステップであって、前記1つまたは複数の属性が、前記検索データおよび前記ウェブ履歴データを地理的なロケーションと関連付ける、ステップと、
    前記属性によって前記検索データおよび前記ウェブ履歴データが関連付けられている前記地理的なロケーションのそれぞれについての確率データを生成するステップであって、前記地理的なロケーションのうちの特定の地理的なロケーションのそれぞれについての前記確率データが、前記ユーザプロファイルに関連付けられた1つまたは複数の端末デバイスが前記特定の地理的なロケーションに関連付けられたデジタルコンテンツを要求する尤度を指定するものである、ステップと、
    デジタルコンテンツプロバイダから、前記地理的なロケーションのうちの他の前記特定の地理的なロケーションの尤度に対してより高い尤度を有する2つ以上の前記特定の地理的なロケーションに基づいて前記2つ以上の特定の地理的なロケーションに関連付けられたデジタルコンテンツを取得するステップと、
    前記端末デバイスが前記2つ以上の特定の地理的なロケーションとは異なる別個の地理的なロケーションに位置している間に前記端末デバイスに送信するために、前記2つ以上の特定の地理的なロケーションに関連付けられた前記デジタルコンテンツを事前組み立てするステップであって、これにより、前記デジタルコンテンツ配信加速化システムが、前記端末デバイス上での前記デジタルコンテンツの表示のために前記デジタルコンテンツを提供することの要求を受信するのに先立って、レンダリングのために、前記デジタルコンテンツが組み立てられる、ステップと、
    前記端末デバイスが前記2つ以上の特定の地理的なロケーションのいずれかに位置する前に、前記端末デバイスに、前記2つ以上の特定の地理的なロケーションに関連付けられた前記事前組み立てされたデジタルコンテンツを配信するステップとを含む、
    非一時的コンピュータ可読記録媒体。
  26. 前記キー付きデータが、前記端末デバイスのユーザの検索履歴および/または閲覧履歴を含む、
    請求項25に記載の非一時的コンピュータ可読記録媒体。
  27. 前記命令が、前記デジタルコンテンツ配信加速化システムに、前記端末デバイスがオンラインである期間でかつ前記デジタルコンテンツについての要求が前記端末デバイスから送信されるのに先立って、前記事前組み立てされたデジタルコンテンツを前記端末デバイスに送信させ、これにより、前記端末デバイスがオフラインである期間に、引き続きユーザが前記デジタルコンテンツに対して要求を発行する場合に、前記デジタルコンテンツが前記端末デバイスの前記ユーザにとって利用可能となる、
    請求項25に記載の非一時的コンピュータ可読記録媒体。
  28. 前記確率データを生成するステップが、
    1つまたは複数のトピッククラスタに、前記1つまたは複数の属性をクラスタリングするステップであって、前記1つまたは複数のトピッククラスタが、それぞれ所定のトピックのリストのトピックを示す、ステップと、
    訓練されたモデルを使用して、前記1つまたは複数のトピッククラスタを、ユーザに関連付けられた1つまたは複数の地理的なロケーションを示すロケーションデータに変換するステップと、
    前記変換するステップに基づいて、前記1つまたは複数の地理的なロケーションのそれぞれの地理的なロケーションを、前記ユーザが訪れる確率を生成するステップとを含む、
    請求項25に記載の非一時的コンピュータ可読記録媒体。
  29. 前記変換するステップが、1つまたは複数の機械学習アルゴリズムを実行するステップを含む、
    請求項28に記載の非一時的コンピュータ可読記録媒体。
  30. 前記命令が前記デジタルコンテンツ配信加速化システムにユーザに関連付けられた購買層データを抽出するステップを含む動作をさせ、前記1つまたは複数の属性が前記購買層データを特徴づける、
    請求項25に記載の非一時的コンピュータ可読記録媒体。
  31. 前記検索データおよび前記ウェブ履歴データが、それぞれタイミングデータに関連付けられ、前記命令が、前記デジタルコンテンツ配信加速化システムに、前記タイミングデータに基づいて前記地理的なロケーションについての確率の分布を生成するステップを含む動作をさせる
    請求項25に記載の非一時的コンピュータ可読記録媒体。
  32. 前記命令が、前記デジタルコンテンツ配信加速化システムに、ユーザが訪れた1つまたは複数の地理的なロケーションを示す地理的なロケーション履歴データをフェッチするステップを含む動作をさせ、前記1つまたは複数の属性が前記地理的なロケーション履歴データをさらに特徴づける、
    請求項25に記載の非一時的コンピュータ可読記録媒体。
  33. 前記1つまたは複数の属性がキーワードおよびキーフレーズのうち1つまたは複数を含む、
    請求項25に記載の非一時的コンピュータ可読記録媒体。
  34. 前記命令が、前記デジタルコンテンツ配信加速化システムに、行列因子分解または低ランク近似に基づいて前記1つまたは複数の属性を抽出するステップを含む動作をさせる、
    請求項25に記載の非一時的コンピュータ可読記録媒体。
  35. 前記取得されたデジタルコンテンツが、仮想地理的地図上の位置についてブランド名がついたピンを含み、前記ブランド名がついたピンが、前記デジタルコンテンツに関連付けられる前記特定の地理的なロケーションを表す、
    請求項25に記載の非一時的コンピュータ可読記録媒体。
JP2019528533A 2016-11-28 2016-12-15 デジタルコンテンツ配信におけるレイテンシを削減するためのデジタルコンテンツ配信加速化 Active JP7017568B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201662426907P 2016-11-28 2016-11-28
US62/426,907 2016-11-28
US15/378,135 2016-12-14
US15/378,135 US10650071B2 (en) 2016-11-28 2016-12-14 Search and retrieval of keyed data maintained using a keyed database
PCT/US2016/066958 WO2018097845A1 (en) 2016-11-28 2016-12-15 Search and retrieval of keyed data maintained using a keyed database

Publications (2)

Publication Number Publication Date
JP2019536172A JP2019536172A (ja) 2019-12-12
JP7017568B2 true JP7017568B2 (ja) 2022-02-08

Family

ID=62190889

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019528533A Active JP7017568B2 (ja) 2016-11-28 2016-12-15 デジタルコンテンツ配信におけるレイテンシを削減するためのデジタルコンテンツ配信加速化

Country Status (6)

Country Link
US (1) US10650071B2 (ja)
EP (1) EP3542281A1 (ja)
JP (1) JP7017568B2 (ja)
KR (1) KR102285879B1 (ja)
CN (1) CN108377656B (ja)
WO (1) WO2018097845A1 (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11023284B2 (en) * 2015-10-28 2021-06-01 Qomplx, Inc. System and method for optimization and load balancing of computer clusters
WO2018176000A1 (en) 2017-03-23 2018-09-27 DeepScale, Inc. Data synthesis for autonomous control systems
US11157441B2 (en) 2017-07-24 2021-10-26 Tesla, Inc. Computational array microprocessor system using non-consecutive data formatting
US11409692B2 (en) 2017-07-24 2022-08-09 Tesla, Inc. Vector computational unit
US11893393B2 (en) 2017-07-24 2024-02-06 Tesla, Inc. Computational array microprocessor system with hardware arbiter managing memory requests
US10671349B2 (en) 2017-07-24 2020-06-02 Tesla, Inc. Accelerated mathematical engine
US11561791B2 (en) 2018-02-01 2023-01-24 Tesla, Inc. Vector computational unit receiving data elements in parallel from a last row of a computational array
US11215999B2 (en) 2018-06-20 2022-01-04 Tesla, Inc. Data pipeline and deep learning system for autonomous driving
US11361457B2 (en) 2018-07-20 2022-06-14 Tesla, Inc. Annotation cross-labeling for autonomous control systems
US11636333B2 (en) 2018-07-26 2023-04-25 Tesla, Inc. Optimizing neural network structures for embedded systems
US11562231B2 (en) 2018-09-03 2023-01-24 Tesla, Inc. Neural networks for embedded devices
CN115512173A (zh) 2018-10-11 2022-12-23 特斯拉公司 用于使用增广数据训练机器模型的系统和方法
US11196678B2 (en) 2018-10-25 2021-12-07 Tesla, Inc. QOS manager for system on a chip communications
US11816585B2 (en) 2018-12-03 2023-11-14 Tesla, Inc. Machine learning models operating at different frequencies for autonomous vehicles
US11537811B2 (en) 2018-12-04 2022-12-27 Tesla, Inc. Enhanced object detection for autonomous vehicles based on field view
US11610117B2 (en) 2018-12-27 2023-03-21 Tesla, Inc. System and method for adapting a neural network model on a hardware platform
US10997461B2 (en) 2019-02-01 2021-05-04 Tesla, Inc. Generating ground truth for machine learning from time series elements
US11567514B2 (en) 2019-02-11 2023-01-31 Tesla, Inc. Autonomous and user controlled vehicle summon to a target
US10956755B2 (en) 2019-02-19 2021-03-23 Tesla, Inc. Estimating object properties using visual image data
US11263665B2 (en) 2019-12-19 2022-03-01 Broadsign Serv Inc. Method and digital signage server for managing placement of a digital signage content based on metric thresholds

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002024695A (ja) 2000-07-11 2002-01-25 Kyocera Communication Systems Co Ltd 広告提供装置、広告提供システム及び広告提供方法
WO2008040004A2 (en) 2006-09-28 2008-04-03 Sfgt Inc. Apparatuses, methods, and systems for code triggered information querying and serving
JP2008097545A (ja) 2006-10-16 2008-04-24 Cirius Technologies Inc 広告情報提供方法、広告情報提供システム及び広告情報提供プログラム
JP2010517146A5 (ja) 2008-01-17 2011-03-10
JP2016018286A (ja) 2014-07-07 2016-02-01 日本電信電話株式会社 行動タイプ判定装置、行動タイプ判定方法及び行動タイプ判定プログラム
US20160134711A1 (en) 2014-11-11 2016-05-12 geoXMF, LLC Geography-Based Intercommunication Content Delivery System

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001022777A (ja) * 1999-07-09 2001-01-26 Hitachi Ltd データ分析方法
KR100726567B1 (ko) * 2000-08-21 2007-06-11 주식회사 케이티 위치정보와 지리정보에 기반한 정보 서비스 제공 방법
US6868396B2 (en) * 2000-12-29 2005-03-15 Nortel Networks Limited Method and apparatus for monitoring internet based sales transactions by local vendors
US20040073482A1 (en) * 2002-10-15 2004-04-15 Wiggins Randall T. Targeted information content delivery using a combination of environmental and demographic information
WO2007119559A1 (ja) 2006-04-14 2007-10-25 Panasonic Corporation 移動先予測装置および移動先予測方法
US7966321B2 (en) * 2007-01-17 2011-06-21 Google Inc. Presentation of local results
US20090164408A1 (en) * 2007-12-21 2009-06-25 Ilya Grigorik Method, System and Computer Program for Managing Delivery of Online Content
US8555324B2 (en) * 2010-02-02 2013-10-08 Microsoft Corporation Video download mechanism for transferring large data
US9134137B2 (en) * 2010-12-17 2015-09-15 Microsoft Technology Licensing, Llc Mobile search based on predicted location
US8788328B1 (en) * 2011-08-31 2014-07-22 Adobe Systems Incorporated Location affinity based content delivery systems and methods
US8239266B1 (en) * 2011-11-29 2012-08-07 Google Inc. Targeting based on intent or presence
US8996712B2 (en) * 2012-01-17 2015-03-31 Wideorbit Inc. Systems, methods and articles to provide content in networked environment
US9582603B1 (en) * 2012-02-27 2017-02-28 Amazon Technologies, Inc. Managing preloading of data on client systems
US8972318B2 (en) 2012-05-31 2015-03-03 Qualcomm Incorporated Predicting user behavior using feedback on previously run predictive searches
WO2013192591A2 (en) 2012-06-22 2013-12-27 Google Inc. Ranking nearby destinations based on visit likelihoods and predicting future visits to places from location history
US20140222570A1 (en) * 2012-11-17 2014-08-07 Teoco Corporation System, Method, and Computer Program Product For Probabilistically Derived Predictive Location Based Targeted Promotion
US8886769B2 (en) * 2013-01-18 2014-11-11 Limelight Networks, Inc. Selective content pre-warming in content delivery networks based on user actions and content categorizations
US20140229279A1 (en) * 2013-02-14 2014-08-14 Navteq B.V. Providing advertising content based on a map report
WO2014144905A1 (en) * 2013-03-15 2014-09-18 Highspot, Inc. Interest graph-powered feed
US20150134432A1 (en) * 2013-11-12 2015-05-14 Robert Lewis Method and system for communicating with a mobile communication device at a host location
US9084082B2 (en) * 2013-11-18 2015-07-14 Aol Inc. Systems and methods for optimizing message notification timing based on geographic location
KR101486506B1 (ko) * 2014-07-16 2015-01-26 주식회사 엠투브 위치 기반 멀티미디어 콘텐츠 생성 장치 및 그 방법
CN104239440B (zh) * 2014-09-01 2017-08-25 百度在线网络技术(北京)有限公司 搜索结果的展现方法和装置
EP3213222B1 (en) * 2014-10-27 2021-03-24 Level 3 Communications, LLC Content delivery systems and methods
US9984310B2 (en) * 2015-01-23 2018-05-29 Highspot, Inc. Systems and methods for identifying semantically and visually related content
US10504034B2 (en) * 2015-01-27 2019-12-10 Huawei Technologies Co., Ltd. Systems, devices and methods for distributed content interest prediction and content discovery
US20160267496A1 (en) * 2015-03-10 2016-09-15 Microsoft Technology Licensing, Llc Providing dynamically configured offerings for targeted marketplace stores
US9775003B2 (en) * 2015-06-08 2017-09-26 CUSEUM, Inc. Location and activity aware media content delivery system
US9854290B2 (en) * 2015-11-30 2017-12-26 International Business Machines Corporation System and method for data-driven ad-insertion in online video streams

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002024695A (ja) 2000-07-11 2002-01-25 Kyocera Communication Systems Co Ltd 広告提供装置、広告提供システム及び広告提供方法
WO2008040004A2 (en) 2006-09-28 2008-04-03 Sfgt Inc. Apparatuses, methods, and systems for code triggered information querying and serving
JP2010506263A (ja) 2006-09-28 2010-02-25 エスエフジーティー・インコーポレイティッド コード誘因情報を照会及び提供するための装置、方法、およびシステム
JP2008097545A (ja) 2006-10-16 2008-04-24 Cirius Technologies Inc 広告情報提供方法、広告情報提供システム及び広告情報提供プログラム
JP2010517146A5 (ja) 2008-01-17 2011-03-10
JP2016018286A (ja) 2014-07-07 2016-02-01 日本電信電話株式会社 行動タイプ判定装置、行動タイプ判定方法及び行動タイプ判定プログラム
US20160134711A1 (en) 2014-11-11 2016-05-12 geoXMF, LLC Geography-Based Intercommunication Content Delivery System

Also Published As

Publication number Publication date
JP2019536172A (ja) 2019-12-12
WO2018097845A1 (en) 2018-05-31
KR102285879B1 (ko) 2021-08-05
KR20190086740A (ko) 2019-07-23
CN108377656B (zh) 2021-11-05
US10650071B2 (en) 2020-05-12
EP3542281A1 (en) 2019-09-25
CN108377656A (zh) 2018-08-07
US20180150565A1 (en) 2018-05-31

Similar Documents

Publication Publication Date Title
JP7017568B2 (ja) デジタルコンテンツ配信におけるレイテンシを削減するためのデジタルコンテンツ配信加速化
US8725849B1 (en) Browser cache pre-population
CN106446005B (zh) 因子分解模型
US8417683B2 (en) System and method for presenting geolocated relevance-based content
US20190080019A1 (en) Predicting Non-Observable Parameters for Digital Components
US10931785B2 (en) Content delivery acceleration system
US10977056B2 (en) System for utilizing one or more data sources to generate a customized interface
CN103339623A (zh) 涉及因特网搜索的方法和设备
US10445753B1 (en) Determining popular and trending content characteristics
US20140372250A1 (en) System and method for providing recommended content
CN103221951A (zh) 预测查询建议高速缓存
US11397737B2 (en) Triggering local extensions based on inferred intent
US20170186035A1 (en) Method of and server for selection of a targeted message for placement into a search engine result page in response to a user search request
US10341457B2 (en) Caching system
CN108781223A (zh) 用于内容项选择的数据的数据分组传输优化
US9519683B1 (en) Inferring social affinity based on interactions with search results
US20110282891A1 (en) Methods And Apparatuses For Providing A Search Crowd Capability
US8909631B1 (en) Creating targeting information for a user
RU2589856C2 (ru) Способ обработки целевого сообщения, способ обработки нового целевого сообщения и сервер (варианты)
WO2011116381A1 (en) Rapid navigation system for mobile devices

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190726

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200918

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201005

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20210105

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210115

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210705

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211005

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220127

R150 Certificate of patent or registration of utility model

Ref document number: 7017568

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150