(57)【特許請求の範囲】
【請求項１】
データ処理装置によって実行される方法であって、
ウェブリソースのそれぞれのセットに対する関連性スコアを受け取るステップであって、各関連性スコアが、ウェブリソースが対応する検索クエリに対するウェブリソースの関連性を示す、ステップと、
ウェブリソースの前記セットの各ウェブリソースに対して、複数の類似性スコアを取得するステップであって、前記ウェブリソースに対する各類似性スコアが、前記ウェブリソースとネイティブアプリケーションへのそれぞれのディープリンクによって参照されるそれぞれのコンテンツとの間の類似性を表す、ステップと、
前記ディープリンクの各々について、前記ウェブリソースに対するそれぞれの関連性スコアと、前記ウェブリソースと前記ディープリンクによって参照される前記コンテンツの間のそれぞれの類似性スコアとに基づいて、前記ディープリンクによって参照される前記コンテンツに対するそれぞれの品質スコアを生成するステップと、
しきい値品質スコアを満たすそれぞれの品質スコアを有するコンテンツを参照するディープリンクを選択するステップと、
前記検索クエリに応答してユーザデバイスに、各々が対応するウェブリソースを参照する複数のウェブ検索結果とともに前記選択されたディープリンクを提供するステップと
を含む、方法。
【請求項２】
前記複数の類似性スコアを取得するステップの前に、
各ウェブリソースに対して、前記コンテンツおよび前記ウェブリソースから前記ウェブリソースに対する前記複数の類似性スコアを生成するステップをさらに含む、請求項1に記載の方法。
【請求項３】
前記複数の類似性スコアを生成するステップは、前記複数の類似性スコアのための、グラムジャカード類似性、ミニマムハッシュ、または局所性依存ハッシュのうちの1つまたは複数に基づく、請求項2に記載の方法。
【請求項４】
前記ディープリンクの各々について、前記ディープリンクによって参照される前記コンテンツに対する前記それぞれの品質スコアを生成するステップは、
各ウェブリソースについて、前記ウェブリソースに対する前記それぞれの関連性スコアと、前記ウェブリソースと前記ディープリンクによって参照される前記コンテンツの間の前記それぞれの類似性スコアとのそれぞれの積を計算するステップと、
各積を合計して、前記それぞれの品質スコアを生成するステップと
を含む、請求項1〜3のいずれか一項に記載の方法。
【請求項５】
それぞれのネイティブアプリケーションへの各ディープリンクは、前記ユーザデバイスにおいて選択されると、前記それぞれのネイティブアプリケーションに、前記ディープリンク内で参照されるコンテンツが表示される前記それぞれのネイティブアプリケーションのインスタンスをインスタンス化させる、請求項1に記載の方法。
【請求項６】
それぞれのウェブリソースに対する各関連性スコアは、検索エンジンによってランク付けされたウェブリソースのリスト内の前記それぞれのウェブリソースのランキングに基づく、請求項1〜5のいずれか一項に記載の方法。
【請求項７】
しきい値品質スコアを満たすそれぞれの品質スコアを有するコンテンツを参照するディープリンクを選択するステップは、前記しきい値品質スコアを満たす品質スコアを有するコンテンツを参照するディープリンクの最大数まで選択するステップを有する、請求項1〜6のいずれか一項に記載の方法。
【請求項８】
前記複数のウェブ検索結果とともに、前記複数のディープリンクを前記ユーザデバイスに提供するステップは、
各ディープリンクについて、前記ディープリンクに対する前記品質スコアを前記ウェブ検索結果に対する前記それぞれの関連性スコアに正規化して、前記ディープリンクに対する正規化された関連性スコアを生成するステップと、
前記関連性スコアおよび前記正規化された関連性スコアに基づいて、前記ウェブ検索結果およびディープリンクをランク付けして、ウェブ検索結果およびディープリンクのランク付けされたリストを生成するステップと、
前記ウェブ検索結果とディープリンクのランク付けされたリストを前記ユーザデバイスに提供するステップと
を含む、請求項1〜7のいずれか一項に記載の方法。
【請求項９】
前記それぞれのディープリンクによって参照される前記それぞれのコンテンツはウェブリソースではない、請求項1〜8のいずれか一項に記載の方法。
【請求項１０】
1つまたは複数のコンピュータと、
前記1つまたは複数のコンピュータに結合されるとともに、命令を記憶したコンピュータ可読媒体とを具備し、前記命令は、前記1つまたは複数のコンピュータによって実行されると、前記1つまたは複数のコンピュータに、ニューラルネットワークレイヤの各々について、
ウェブリソースのそれぞれのセットに対する関連性スコアを受け取るステップであって、各関連性スコアが、ウェブリソースが対応する検索クエリに対するウェブリソースの関連性を示す、ステップと、
ウェブリソースの前記セットの各ウェブリソースに対して、複数の類似性スコアを取得するステップであって、前記ウェブリソースに対する各類似性スコアが、前記ウェブリソースとネイティブアプリケーションへのそれぞれのディープリンクによって参照されるそれぞれのコンテンツとの間の類似性を表す、ステップと、
前記ディープリンクの各々について、前記ウェブリソースに対するそれぞれの関連性スコアと、前記ウェブリソースと前記ディープリンクによって参照される前記コンテンツの間のそれぞれの類似性スコアとに基づいて、前記ディープリンクによって参照される前記コンテンツに対するそれぞれの品質スコアを生成するステップと、
しきい値品質スコアを満たすそれぞれの品質スコアを有するコンテンツを参照するディープリンクを選択するステップと、
前記検索クエリに応答してユーザデバイスに、各々が対応するウェブリソースを参照する複数のウェブ検索結果とともに前記選択されたディープリンクを提供するステップと
を含む動作を実行させる、システム。
【請求項１１】
前記命令は、前記1つまたは複数のコンピュータによって実行されると、前記1つまたは複数のコンピュータに、前記複数の類似性スコアを取得するステップの前に、
各ウェブリソースに対して、前記コンテンツおよび前記ウェブリソースから前記ウェブリソースに対する前記複数の類似性スコアを生成させる、請求項10に記載のシステム。
【請求項１２】
前記命令は、前記1つまたは複数のコンピュータによって実行されると、前記1つまたは複数のコンピュータに、
各ウェブリソースについて、前記ウェブリソースに対する前記それぞれの関連性スコアと、前記ウェブリソースと前記ディープリンクによって参照される前記コンテンツの間の前記それぞれの類似性スコアとのそれぞれの積を計算すること、
各積を合計して、前記それぞれの品質スコアを生成すること
によって、前記ディープリンクの各々について、前記ディープリンクによって参照される前記コンテンツに対する前記それぞれの品質スコアを生成させる、請求項10に記載のシステム。
【請求項１３】
前記命令は、前記1つまたは複数のコンピュータによって実行されると、前記1つまたは複数のコンピュータに、
各ディープリンクについて、前記ディープリンクに対する前記品質スコアを前記ウェブ検索結果に対する前記それぞれの関連性スコアに正規化して、前記ディープリンクに対する正規化された関連性スコアを生成することと、
前記関連性スコアおよび前記正規化された関連性スコアに基づいて、前記ウェブ検索結果とディープリンクをランク付けして、ウェブ検索結果とディープリンクのランク付けされたリストを生成することと、
前記ウェブ検索結果とディープリンクのランク付けされたリストを前記ユーザデバイスに提供することと
によって、前記複数のウェブ検索結果とともに、前記複数のディープリンクを前記ユーザデバイスに提供させる、請求項10に記載のシステム。
【請求項１４】
前記それぞれのディープリンクによって参照される前記それぞれのコンテンツはウェブリソースではない、請求項10に記載のシステム。
【請求項１５】
1つまたは複数のコンピュータによって実行されると、前記1つまたは複数のコンピュータに、前記1〜10のいずれか一項に記載の方法を含む動作を実行させる、命令を記憶したコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自動化された情報取得に関する。
【背景技術】
【０００２】
インターネットは、多種多様な情報へのアクセスを提供する。例えば、デジタル画像ファイル、ビデオおよび/またはオーディオファイル、ならびに、特定の主題または特定のニュース記事のためのウェブページリソースがインターネットを介してアクセス可能である。ウェブページリソースに関して、これらのリソースの多くが、銀行業務、ホテルの予約申込、ショッピングなどの特定の機能の実行を容易にするように、あるいは、オンライン百科事典、動画データベースなどの構造化された情報を提供するために設計されている。検索エンジンは、リソースの検索を容易にするためにこれらのリソースをクロールしてインデックス付けする。
【０００３】
さらに、タブレットコンピュータおよびスマートフォンの出現に伴い、ウェブページリソースの使用により促進される同様の機能の実行を容易にするネイティブアプリケーションが、現在多数提供されている。加えて、ゲームなど類似のコンテンツに対応するウェブサイトを有さないネイティブアプリケーションもまた、タブレットコンピュータおよびスマートフォン上で非常に人気である。従って、検索エンジンは現在、これらのネイティブアプリケーションの検索も促進する。
【０００４】
検索エンジンがネイティブアプリケーションについての情報を集める一つの処理は、ネイティブアプリケーションのための「ディープリンク」にアクセスすることである。ディープリンクは、ネイティブアプリケーションの特定の環境インスタンスを指定する命令であり、ユーザデバイスにおいて選択されたとき、指定されたネイティブアプリケーションの環境インスタンスをネイティブアプリケーションにインスタンス化させるように構成される。ネイティブアプリケーションは、ユーザデバイス上のネイティブアプリケーション内で表示するための環境インスタンスを生成する。例えば、ディープリンクは、特定のネイティブアプリケーションを指定するURI、ネイティブアプリケーションがアクセスするべきリソースコンテンツ、およびネイティブアプリケーションがディープリンクの使用によって起動されるときインスタンス化されるべき特定のユーザインターフェースであってよい。
【０００５】
検索エンジンはまた、現在これらのネイティブアプリケーションの検索を促進する。このようにして、検索エンジンが、ネイティブアプリケーションを記述する特定のウェブページリソースおよびネイティブアプリケーション自体についての検索結果のいずれか（または両方）を特定する検索結果を提供することにより、ユーザの情報ニーズが満たされ得る。
【発明の概要】
【課題を解決するための手段】
【０００６】
概して、本明細書は、自動化された情報取得のためのシステムおよび方法を説明する。該システムおよび方法は、ネイティブアプリケーション内のコンテンツをスコア付けし、それによって、ネイティブアプリケーションが対応するウェブページを有さない場合でさえ、ネイティブアプリケーションに関連する1つまたは複数の検索結果がクエリに応答して提供される検索結果に含まれることができるようにする。したがって、システムおよび方法は改善された検索および情報取得を提供する。
【０００７】
概して、本明細書に記載の主題の一つの革新的な態様は、ウェブリソースのそれぞれのセットに対する関連性スコアを受け取るステップであって、各関連性スコアが、ウェブリソースが対応する検索クエリに対するウェブリソースの関連性を示す、ステップと、ウェブリソースのセットの各ウェブリソースに対して、複数の類似性スコアを取得するステップであって、ウェブリソースに対する各類似性スコアが、ウェブリソースとネイティブアプリケーションへのそれぞれのディープリンクによって参照されるそれぞれのコンテンツとの間の類似性を表す、ステップと、ディープリンクの各々について、ウェブリソースに対するそれぞれの関連性スコアと、ウェブリソースとディープリンクによって参照されるコンテンツの間のそれぞれの類似性スコアとに基づいて、ディープリンクによって参照されるコンテンツに対するそれぞれの品質スコアを生成するステップと、しきい値品質スコアを満たすそれぞれの品質スコアを有するコンテンツを参照するディープリンクを選択するステップと、検索クエリに応答してユーザデバイスに、各々が対応するウェブリソースを参照する複数のウェブ検索結果とともに選択されたディープリンクを提供するステップとを含む方法において具体化され得る。
【０００８】
実施形態は、次の特徴の1つまたは複数を含み得る。複数の類似性スコアを取得するステップの前に、各ウェブリソースに対して、コンテンツおよびウェブリソースからウェブリソースに対する複数の類似性スコアを生成する。複数の類似性スコアを生成することは、複数の類似性スコアのための、グラムジャカード類似性(gram Jaccard similarity)、ミニマムハッシュ(minimum hash)、または局所性依存ハッシュ(locality-sensitive hashing)のうちの1つまたは複数に基づく。ディープリンクの各々について、ディープリンクによって参照されるコンテンツに対するそれぞれの品質スコアを生成するステップは、各ウェブリソースについて、ウェブリソースに対するそれぞれの関連性スコアと、ウェブリソースとディープリンクによって参照されるコンテンツの間のそれぞれの類似性スコアとのそれぞれの積を計算するステップと、各積を合計して、それぞれの品質スコアを生成するステップとを含む。それぞれのネイティブアプリケーションへの各ディープリンクは、ユーザデバイスにおいて選択されると、それぞれのネイティブアプリケーションに、ディープリンク内で参照されるコンテンツが表示されるそれぞれのネイティブアプリケーションのインスタンスをインスタンス化させる。それぞれのウェブリソースに対する各関連性スコアは、検索エンジンによってランク付けされたウェブリソースのリスト内のそれぞれのウェブリソースのランキングに基づく。しきい値品質スコアを満たすそれぞれの品質スコアを有するコンテンツを参照するディープリンクを選択するステップは、しきい値品質スコアを満たす品質スコアを有するコンテンツを参照するディープリンクの最大数まで選択するステップを有する。複数のウェブ検索結果とともに複数のディープリンクを、ユーザデバイスに提供するステップは、ウェブ検索結果およびディープリンクの一つのランク付けされたリストをユーザデバイスに提供するステップを含む。複数のウェブ検索結果とともに、複数のディープリンクをユーザデバイスに提供するステップは、各ディープリンクについて、ディープリンクに対する品質スコアをウェブ検索結果に対するそれぞれの関連性スコアに正規化して、ディープリンクに対する正規化された関連性スコアを生成するステップと、関連性スコアおよび正規化された関連性スコアに基づいて、ウェブ検索結果およびディープリンクをランク付けして、ウェブ検索結果およびディープリンクのランク付けされたリストを生成するステップと、ウェブ検索結果とディープリンクのランク付けされたリストをユーザデバイスに提供するステップとを含む。それぞれのディープリンクによって参照されるそれぞれのコンテンツはウェブリソースではない。
【０００９】
本明細書に記載の主題の特定の実施形態は、次の利点の1つまたは複数を実現するために実施され得る。いくつかのネイティブアプリケーションは、ネイティブアプリケーションに対する対応するウェブページを持たない。システムは、ベースメトリックとして使用するための既存の対応するウェブページの関連性スコアを有さないにもかかわらず、対応するウェブページおよび/またはコンテンツページを持たないこれらのネイティブアプリケーションをランク付けできる。
【００１０】
検索結果が、(例えば、モバイルアプリケーションなど)対応するウェブページを有するまたは有さないネイティブアプリケーション内の特定のロケーションへのリンクを含み、検索結果は、他の検索結果(例えば、ウェブページに対する検索結果)とともにランク付けされ、その結果より牽連性の高いリソース(アプリケーションまたはウェブページ)がより上位にランク付けされる。このようにアプリケーション内のロケーションへリンクする検索結果を含むことは、ユーザの情報ニーズをより満足し得る追加の検索結果オプションを提供する。
【００１１】
本明細書の主題の1または複数の実施形態の詳細が、添付の図面のよび以降の説明に記載される。主題の他の特徴、態様、利点は、詳細な説明、図面、特許請求の範囲から明らかになるであろう。
【図面の簡単な説明】
【００１２】
【図１】ネイティブアプリケーションの検索およびネイティブアプリケーションのランク付けのトリガリングが起こる例示的な環境のブロック図である。
【図２Ａ】ネイティブアプリケーション内のコンテンツとウェブリソースの間の類似性スコアを生成するための例示的な方法のフロー図である。
【図２Ｂ】ネイティブアプリケーション内のコンテンツをスコア付けするための例示的な方法のフロー図である。
【図３】ネイティブアプリケーション内のコンテンツのスコア付けを説明する図である。
【図４】ウェブ検索結果とともに提供されるネイティブアプリケーション検索結果を説明する図である。
【発明を実施するための形態】
【００１３】
様々な図面における同じ参照番号および図形は、同じ要素を指す。
【００１４】
システムは、対応するウェブページを持たないネイティブアプリケーションのコンテンツをスコア付けする。すなわち、ネイティブアプリケーションは、ブラウザを介してウェブリソース(例えば、ウェブページ)においてアクセスできないコンテンツを表示できる。ネイティブアプリケーション内のコンテンツは、コンテンツに類似するウェブリソースに基づいてスコア付けされ得、このことは以下に詳述する。
【００１５】
本明細書で使用されるように、ネイティブアプリケーションは、ネイティブアプリケーションの環境内でユーザデバイス上に表示するための環境インスタンスを生成するとともに、ユーザデバイス上でブラウザアプリケーションとは独立して動作する。ネイティブアプリケーションは、特定のユーザデバイスオペレーティングシステムおよびマシンファームウェア上で実行されるように専用に設計されたアプリケーションである。このように、ネイティブアプリケーションは、ブラウザベースのアプリケーションおよびブラウザレンダリングリソースとは異なる。後者は、インスタンス化またはレンダリングされるたびに、すべての要素または命令、または少なくともいくつかの要素または命令が、ウェブサーバからダウンロードされる必要がある。さらに、ブラウザベースのアプリケーションおよびブラウザレンダリングリソースは、ブラウザ内ですべてのウェブ対応モバイルデバイスによって処理され得、ゆえにオペレーティングシステム特有ではない。
【００１６】
検索が、ウェブ検索結果を伴ってネイティブアプリケーション検索結果を含むようにトリガされる場合、ネイティブアプリケーション・インデックスはネイティブアプリケーションについて検索され、ネイティブアプリケーションがスコア付けされる。ネイティブアプリケーションのインデックス付けされたコンテンツ、ネイティブアプリケーションのユーザレーティング、アプリケーションインデックスの検索のために受け取られたクエリについてのクエリ人気度などを含む様々なスコア信号が使用できる。ネイティブアプリケーションは、一旦クエリに応答してスコア付けされると、以降に記述するようにランク付けされ、1つまたは複数のネイティブアプリケーション検索結果がクエリに応答してユーザデバイスに提供され得る。
【００１７】
ネイティブアプリケーション検索結果が提供されようとされなかろうと、提供される場合、他の検索結果に対するネイティブアプリケーション検索結果の位置は、フィルタリング基準およびランキング基準の1つまたは複数に基づいて決定される。フィルタリング基準およびランキング基準は、他のリソース、ネイティブアプリケーションのスコア、および他の要因に対する、ネイティブアプリケーションを記述する対応するリソースのランキングを含んでよい。
【００１８】
これらの特徴および他の特徴は、以下により詳細に説明される。
【００１９】
図1は、ネイティブアプリケーションの検索およびランキングのトリガリングが起こる例示的な環境100のブロック図である。インターネットなどのコンピュータネットワーク102が、リソースパブリッシャウェブサイト104、アプリケーションパブリッシャ106、ユーザデバイス108、および検索エンジン120に接続する。
【００２０】
リソースパブリッシャウェブサイト104は、ドメインに関連する1つまたは複数のウェブリソース105を含み、1つまたは複数の場所における1つまたは複数のサーバによってホストされる。一般に、リソースパブリッシャウェブサイトは、テキスト、画像、マルチメディアコンテンツ、およびプログラミング要素を含み得るハイパーテキストマークアップ言語（HTML）でフォーマットされるウェブページのコレクションである。各ウェブサイト104は、コンテンツパブリッシャによって維持され、ウェブサイト104を制御、管理、および/または所有するエンティティである。
【００２１】
ウェブページリソースは、ネットワーク102を介してパブリッシャウェブサイト104によって提供され得る任意のデータであり、例えばユニフォームリソースロケータ(URL)などのリソースアドレスを有する。ウェブリソースは、ほんの数例であるが、HTMLページ、画像ファイル、ビデオファイル、オーディオファイル、およびフィードソースであってよい。リソースは、例えばメタ情報およびハイパーリンクなどの組み込み情報、および/または、例えばクライアントサイドのスクリプトなどの組み込み命令を含んでよい。より一般に、「リソース」は、ネットワークを介して特定可能な任意のものであり、ネイティブアプリケーションを含むこともできる。
【００２２】
アプリケーションパブリッシャウェブサイト106は、また1つまたは複数のウェブリソース105を含むことができ、かつネイティブアプリケーション107も提供する。上述のように、ネイティブアプリケーション107は、特定のユーザデバイスオペレーティングシステムおよびマシンファームウェア上で実行するように専用に設計されたアプリケーションである。ネイティブアプリケーション107は異なるプラットフォーム上で実行するように設計された複数のバージョンを含んでよい。例えば、動画データベースウェブサイトに対応するネイティブアプリケーションは、第1のタイプのスマートフォン上で実行する第1のネイティブアプリケーションと、第2のタイプのスマートフォン上で実行する第2のネイティブアプリケーションと、第1のタイプのタブレット上で実行する第3のネイティブアプリケーションなどを含み得る。
【００２３】
本明細書で使用するように、「環境インスタンス」は、ネイティブアプリケーション内の表示環境であり、その中で、テキスト、画像、および類似のものなどのコンテンツが表示される。環境インスタンスは、特定のネイティブアプリケーションに特有であり、ネイティブアプリケーションは、ユーザデバイス108の特定のオペレーティングシステムに特有である。環境インスタンスは、環境インスタンスがネイティブアプリケーション内で生成され、ネイティブアプリケーションに特有であるレンダリングされたウェブリソースとは異なるものであり、一方で、ウェブリソースは、ウェブリソースが互換性のあり、ユーザデバイスのオペレーティングシステムと独立した任意のブラウザにおいてレンダリングされ得る。
【００２４】
ユーザデバイス108は、ユーザの制御下にある電子デバイスである。ユーザデバイス108は、一般にネットワーク102を介してウェブページリソース104およびネイティブアプリケーション107を要求して受け取ることができる。例示のユーザデバイス108は、パーソナルコンピュータ、モバイル通信デバイス、およびタブレットコンピュータを含む。
【００２５】
ウェブリソース105およびネイティブアプリケーション107を検索するために、検索エンジン120は、ウェブインデックス116およびアプリケーションインデックス114にアクセスする。ウェブインデックス116は、例えば、パブリッシャウェブサイト104をクローリングしてからビルドされたウェブリソース105のインデックスである。アプリケーションインデックス114は、ネイティブアプリケーション107についてのアプリケーションページのインデックスであり、アプリケーションデータ抽出・処理器110およびインデクサ112を使用して構成される。別々のインデックスで示されるが、ウェブインデックス116およびアプリケーションインデックス114は、単一のインデックスに組み合わせられ得る。
【００２６】
ユーザデバイス108は、検索クエリを検索エンジン120に送る。各クエリに応答して、検索エンジン120は、ウェブインデックス116および任意選択でアプリケーションインデックス114にアクセスして、クエリに関連するリソースおよびアプリケーションをそれぞれ特定する。一般に、第1の検索アルゴリズムを実施する第1のタイプの検索動作は、インデックス116を検索するために使用され、第2の異なるアルゴリズムを実施する第2のタイプの検索動作は、アプリケーションインデックス114を検索するために使用される。検索エンジン120は、リソーススコアラ132処理を実施してウェブリソースに対する関連性スコアを生成し、類似性スコアラ136処理を実施してウェブリソースとネイティブアプリケーション内のコンテンツの間の類似性スコアを生成する。ネイティブアプリケーション内のコンテンツはウェブリソースではない。ネイティブアプリケーション・コンテンツスコアラ134の処理は、関連性および類似性スコアに基づくネイティブアプリケーション内のコンテンツに対する品質スコアを生成する。ネイティブアプリケーション・コンテンツスコアラ134は、図2および3を参照して、以降にさらに記述される。様々な適切な検索エンジンアルゴリズムが、リソーススコアラ132、類似性スコアラ136、およびネイティブアプリケーション・コンテンツスコアラ134を実施するために使用されることができる。
【００２７】
検索エンジン120は、ウェブサーバなどの検索エンジン・フロントエンド138を利用して、ネイティブアプリケーション・インデックス114を検索するかどうかを判定し、ネイティブアプリケーション検索結果をユーザデバイスに提供する。検索エンジン・フロントエンド138は、クエリがそこから受け取られたユーザデバイス108に、検索結果を配置および提供する。
【００２８】
ウェブリソース検索結果は、ウェブリソースを特定し、特定の検索クエリを満たす情報を提供する検索エンジン120によって生成されたデータである。リソースについてのウェブリソース検索結果は、ウェブページのタイトル、リソースから抽出されたテキストの断片、および例えばウェブページのURLなどリソースについてのリソースロケータを含むことができる。ネイティブアプリケーション検索結果は、ネイティブアプリケーションを特定し、アプリケーションインデックス114の検索に応答して生成される。ネイティブアプリケーション検索結果は、ネイティブアプリケーションの特定の環境インスタンスを指定する「ディープリンク」を含んでよく、ネイティブアプリケーションに指定された環境インスタンスを(選択時に)インスタンス化させるように構成される。例えば、ディープリンクは、ゲーム環境のための選択メニュー、音楽アプリケーションのための歌の特定の選択、あるいは料理アプリケーションのための特定のレシピなどを指定してよい。例えば、ネイティブアプリケーション検索結果の選択は、ネイティブアプリケーションに、スクリーンショットの形式でアプリケーション検索結果に参照される環境インスタンスを起動（ユーザデバイス108上にインストールされる場合）および生成させてもよい。あるいは、ネイティブアプリケーション検索結果は、選択されると、ユーザデバイス上のネイティブアプリケーションの購入（またはフリーダウンロード）およびインストールを生じる「購入」（または「インストール」）コマンドを含んでよい。
【００２９】
ネイティブアプリケーション107を提供するパブリッシャ106はまた、ディープリンク109を検索エンジン120に提供する。例えば、アプリケーションパブリッシャは、ユニフォームリソース識別子（URI）（または、パブリッシャによって公開されるネイティブアプリケーションを指定する他の命令タイプ）の形式でディープリンク109のリストを提供してもよい。これらのディープリンクは、パブリッシャ106がアプリケーションインデックス114にクロールされインデックス付けされることを望むディープリンクである。
【００３０】
多くのネイティブアプリケーション107について、ネイティブアプリケーション107の記述可能なウェブリソース111が存在する。そのようなリソース111の一例は、オンラインネイティブアプリケーションストア内の製品ページである。製品ページは、ウェブブラウザを使用してブラウズされ得、ウェブインデックス116にインデックス付けされ得る。ウェブリソース111は、ネイティブアプリケーションのスクリーンショットおよびユーザレーティングの記述、および類似のものを含み得る。一般にウェブリソース111は、ネイティブアプリケーションに特有のウェブページであり、ネイティブアプリケーションの購入および/またはダウンロードを容易するために使用される。
【００３１】
ある状況では、検索クエリおよび対応するウェブベースの検索結果に応じて、検索エンジン120は、ネイティブアプリケーションの検索結果をウェブページ検索結果のセット内に含めることができる。ネイティブアプリケーション検索結果は、例えば、ネイティブアプリケーションの製品ウェブページ検索結果に関連する位置に挿入され得、または、代替的に、製品ページ検索結果を全体的に置き換えてもよい。このことは、図4を参照して以降にさらに説明される。
【００３２】
図2Aはネイティブアプリケーション内のコンテンツとウェブリソースの間の類似性スコアを生成するための例示的な方法のフロー図200である。便宜的に、方法200は、ソフトウェアを実行して方法200を実施する1つまたは複数のコンピューティングデバイスを有する、例えば図1の検索エンジン120などのシステムについて記述される。
【００３３】
システムはウェブリソースを集める(ステップ202)。ウェブリソースは、例えば、図1のウェブインデックス116などのウェブインデックスから収集され得る。
【００３４】
システムは、ネイティブアプリケーション内のコンテンツを取得する(ステップ204)。いくつかの実施形態では、コンテンツは、例えば、図1のアプリケーションインデックス114からのコンテンツなど、アプリケーションインデックス内にインデックス付けされたネイティブアプリケーションのアプリケーションページからのコンテンツである。
【００３５】
システムは、コンテンツとウェブリソースの間の類似性スコアを生成する(ステップ206)。システムは、適切な方法を使用して、ウェブリソースとそれぞれのコンテンツの間の類似性スコアを生成してよい。例えば、システムは、グラムジャカード類似性(gram Jaccard similarity)、ミニマムハッシュ(minimum hash)、または局所性依存ハッシュ(locality-sensitive hashing)に基づいて、類似性スコアを生成できる。
【００３６】
いくつかの実施形態では、システムは、
[wd_1, [(nac_1, s_11), (nac_2, s_12), (nac_3, s_13) …],
wd_2, [(nac_1, s_21), (nac_2, s_22), (nac_3, s_23) …], … ]
の形態で出力を生成する。
【００３７】
ここで、wd_i(例えば、wd_1またはwd_2)は、ウェブドキュメントiであり、nac_j(例えば、nac_1)は、ネイティブアプリケーションコンテンツjであり、s_ij(例えば、s_11)は、ウェブドキュメントiとネイティブアプリケーションコンテンツjの間の類似性スコアである。また、s_ij = similarity (wd_i, nac_j) = similarity (nac_j, wd_i)であり、similarityは類似性スコアs_ijを計算する関数である。
【００３８】
システムは出力を使用してネイティブアプリケーション内コンテンツに対する品質スコアを生成し、このことは、図2Aを参照して以降にさらに記述される。
【００３９】
図2Bは、ネイティブアプリケーション内のコンテンツをスコア付けするための例示的な方法のフロー図208である。方法208は、ソフトウェアを実行して方法208を実施する1つまたは複数のコンピューティングデバイスを有する、例えば図1の検索エンジン120などのシステムについて記述される。
【００４０】
システムは、ウェブリソースのセットに対する関連性スコアを受け取る(ステップ210)。各ウェブリソースは、検索クエリに対するウェブリソースの関連性を示す関連性スコアを有する。
【００４１】
いくつかの実施形態では、関連性スコアは、検索エンジンによってランク付けされたウェブリソースのリストにおけるウェブリソースのランキングに基づく。例えば、関連性スコアは、下の式1を使用して計算され得る。
Relevance Score=(s-r)/s     (1)
【００４２】
ここで、sは、検索クエリに応答して検索結果のリスト内の検索結果の数であり、rは、検索結果のリスト内のウェブリソースのランクである。
【００４３】
システムは、ウェブリソースのセット内の各ウェブリソースについて、ウェブリソースに対する類似性スコアのセットを取得する(ステップ212)。類似性スコアは、図2Aを参照して上述したように、出力ベクトルから取得され得る。ウェブリソースについての各類似性スコアは、ウェブリソースと、対応するウェブまたはコンテンツページを有さないネイティブアプリケーション内のそれぞれのコンテンツとの間の類似性を表すことができる。
【００４４】
それぞれのコンテンツは、ネイティブアプリケーションへのそれぞれのディープリンクによって参照され得る。それぞれのディープリンクは、ネイティブアプリケーションの特定の環境インスタンスを指定し、ユーザデバイスにおいて選択されると、ネイティブアプリケーションに、ディープリンク内のそれぞれの参照されるコンテンツが表示される、それぞれのネイティブアプリケーションのインスタンスをインスタンス化させる。
【００４５】
システムは、各ディープリンクについて、ディープリンクによって参照されるコンテンツに対するそれぞれの品質スコアを生成する(ステップ214)。ディープリンクよって参照されるコンテンツに対する品質スコアは、コンテンツとウェブリソースの類似性スコアと、ウェブリソースの関連性スコアとから生成されることができる。このことは、図3を参照して以降にさらに記述される。
【００４６】
システムは、しきい値品質スコアを満たすそれぞれの品質スコアを有するディープリンク参照コンテンツを選択する(ステップ216)。いくつかの実施形態では、システムは、しきい値品質スコアを満たす品質スコアを有するディープリンクの最大数まで選択する。最大数は、システムの管理者によって決定できる。
【００４７】
システムは、対応するウェブリソースを各々が参照するウェブ検索結果とともに選択されたディープリンクをユーザデバイスに提供する(ステップ218)。システムは、検索クエリに応答して選択されたディープリンクおよびウェブ検索結果をユーザデバイスに提供できる。一実施形態では、システムは、ウェブ検索結果のランク付けされたリストおよびディープリンクをユーザデバイスに提供してもよい。
【００４８】
ランク付けされたリストを提供するいくつかの実施形態では、システムは、各ディープリンクに対して、ディープリンク対するそれぞれの品質スコアをウェブ検索結果についてのそれぞれの関連性スコアに正規化して、ディープリンクに対する正規化した関連性スコアを生成する。例えば、特定の関連性スコアがある範囲の数値である場合、システムは、例えばスケーリング係数を用いて、関連性スコアの数値の範囲内の比例する数値にディープリンクの品質スコアをスケーリングすることができる。
【００４９】
各ディープリンクに対するそれぞれの品質スコアを正規化した後に、システムは、関連性スコアおよび正規化した関連性スコアに基づいてウェブ検索結果およびディープリンクをランク付けでき、ウェブ検索結果およびディープリンクの統一されたランク付けリストを生成する。次いで、システムは、ウェブ検索結果のランク付けされたリストおよびディープリンクをユーザデバイスに提供でき、このことは、図4を参照して以降にさらに記述される。
【００５０】
いくつかの実施形態では、ステップ210〜218は、ユーザからの検索クエリに応答して実行される。いくつかの他の実施形態では、類似性スコアを生成することは、バックエンド処理の一部として実行され得る。
【００５１】
図3は、検索クエリを与える検索エンジンのネイティブアプリケーション・コンテンツスコアラを使用してネイティブアプリケーション内のコンテンツをスコア付けする図300である。コンテンツは、例えば、図1のウェブインデックス116などのウェブインデックスから対応するウェブページを持たないアプリケーションページXであり得る。ネイティブアプリケーション・コンテンツスコアラは、アプリケーションページXについての、X_品質314という品質スコアを生成できる。
【００５２】
X_品質314という品質スコアを生成するために、スコアラは、ウェブリソースのセットに対する関連性スコアのベクトルと、ウェブリソースのセットに対する類似性スコアのベクトルとの内積を計算できる。言い換えると、品質スコアは、以降の式２を使用して計算され得る。
【００５３】
【数１】
0006517437.tif 000002
【００５４】
ここで、xは、対応するウェブページを持たないアプリケーションページであり、リソースkは、n個のウェブリソースのセット内のk番目のウェブリソースであり、関連性関数は、関連性スコアをかえし、類似性関数は、k番目のウェブリソースとアプリケーションページxの間の類似性を示す類似性スコアをかえす。
【００５５】
説明のため、A、B、およびCは、例えば図1のウェブインデックス116からのウェブリソースであり得る。したがって、A_関連性302は検索クエリに対するAに対する関連性スコアであり、AX_類似性304はウェブリソースAがアプリケーションページXとどの程度類似するかを示す類似性スコアであり、B_関連性306は、検索クエリに対するBに対する関連性スコアであり、BX_類似性308はウェブリソースBがアプリケーションページXとどの程度類似するかを示す類似性スコアであり、C_関連性310は検索クエリに対するCに対する関連性スコアであり、CX_類似性312はウェブリソースCがアプリケーションページXとどの程度類似するかを示す類似性スコアである。スコアラは、A_関連性302とAX_類似性304の積、B_関連性306とBX_類似性308の積、C_関連性310とCX_類似性312の積などを計算でき、次いでその積を合計して、X_品質スコア314を生成できる。
【００５６】
スコアラは、アプリケーションページをスコア付けするための対応するウェブおよび/またはコンテンツページを持たないアプリケーションインデックス内の各アプリケーションページについてこのように内積を計算できる。
【００５７】
図4は、ウェブ検索結果とともに提供されたネイティブアプリケーション検索結果を示す。検索結果は、ユーザデバイスのブラウザアプリケーションにおいて提供され得る。
【００５８】
ブラウザアプリケーションは、検索エンジンによって、検索クエリ402に応答して提供される検索結果404〜410のビュー401を表示する。検索結果の一つは、ネイティブアプリケーション検索結果、すなわち、ネイティブアプリケーション検索結果408であり、一方残りの検索結果は、ウェブ検索結果、すなわちウェブ検索結果404、406、および410である。検索結果404〜410は、ウェブ検索結果404、406、410、およびネイティブアプリケーション検索結果408に対する関連性スコアが減少していく順に表示される。
【００５９】
ネイティブアプリケーション検索結果408は、ディープリンクであり、該ディープリンクは、選択時に、ネイティブアプリケーション検索結果408において参照されるコンテンツがユーザデバイス上に表示されるそれぞれのネイティブアプリケーションのインスタンスを、ネイティブアプリケーションにインスタンス化させることができる。
【００６０】
本明細書に説明される主題および機能的な動作の実施形態は、デジタル電子回路、コンピュータソフトウェアまたはファームウェア、有形のコンピュータソフトウェアまたはファームウェア、本明細書に開示される構造および構造的な均等物を含むコンピュータハードウェア、あるいはそれらの1つまたは複数の組み合わせにおいて実装され得る。本明細書に開示される主題の実施形態は、1つまたは複数のコンピュータプログラム、すなわち、データ処理装置による実行のために、またはデータ処理装置の動作を制御するために有形の非一時的コンピュータ記憶媒体であるコンピュータ記憶媒体上に符号化されたコンピュータプログラム命令の1つまたは複数のモジュールとして実装できる。コンピュータ記憶媒体は、機械可読記憶デバイス、機械可読記憶基板、ランダムまたはシリアルアクセスメモリデバイス、またはそれらの1つまたは複数の組合せであり得る。コンピュータプログラムは、複数のファイルを含み、1つまたは複数のデータ処理装置を実行するために展開され得る。
【００６１】
「データ処理装置」という用語は、例としてプログラマブルプロセッサ、コンピュータ、専用回路、または複数のプロセッサもしくはコンピュータを含む、データを処理するすべての種類の装置、デバイス、および機械を包含する。装置はまた、ハードウェアに加えて、問題のコンピュータプログラムのための実行環境を作成するコード、たとえば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはそれらの1つもしくは複数の組合せを構成するコードを含むことができる。
【００６２】
本明細書で説明したプロセスおよび論理フローは、入力データに対して動作し、出力を生成することによって機能を実行するための1つまたは複数のコンピュータプログラム、あるいは1つまたは複数の専用論理回路を実行する1つまたは複数のプログラマブルコンピュータによって実行され得る。
【００６３】
本明細書は、多くの具体的な実装形態の詳細を含むが、これらは、任意の発明の範囲あるいは特許請求され得るものの範囲に対する限定として解釈されるべきではなく、特定の発明の特定の実施形態に特有のものであり得る特徴の説明として解釈されるべきである。別個の実施形態の文脈において本明細書で説明されている特定の特徴はまた、単一の実施形態において組合せて実施され得る。逆に、単一の実施形態の文脈において説明されている様々な特徴はまた、複数の実施形態において別々に、または任意の適切な部分的組合せにおいて実施され得る。さらに、特徴は、特定の組合せにおいて作用するように上記で説明され、そのようなものとして当初に特許請求されている場合があるが、特許請求された組合せからの1つまたは複数の特徴は、場合によっては組合せから削除され得、特許請求された組合せは、部分的組合せまたは部分的組合せの変形に向けられ得る。
【００６４】
同様に、動作が特定の順序で図面に示されているが、これは、所望の結果を達成するために、そのような動作が示された特定の順序もしくは逐次的な順序で実行されること、またはすべての図示された動作が実行されることを必要とするものとして理解されるべきではない。特定の状況では、マルチタスク処理および並列処理が有利である場合がある。さらに、上記で説明した実施形態における様々なシステム構成要素の分離は、すべての実施形態においてそのような分離を必要とするものとして解釈されるべきではなく、説明したプログラム構成要素およびシステムは、一般に、単一のソフトウェア製品内に一緒に統合され得、または複数のソフトウェア製品にパッケージされ得ることが理解されるべきである。
【００６５】
主題の特定の実施形態について説明してきた。他の実施形態は、以下の特許請求の範囲内にある。たとえば、特許請求の範囲内に列挙されたアクションは、異なる順序で実行され得、依然として所望の結果を達成することができる。一例として、添付図面に示されたプロセスは、所望の結果を達成するために、示された特定の順序または逐次的な順序を必ずしも必要としない。特定の実装形態では、マルチタスク処理および並列処理が有利である場合がある。
【符号の説明】
【００６６】
102  ネットワーク
104  ウェブサイト
105  ウェブリソース
106  パブリッシャ
107  ネイティブアプリケーション
108  ユーザデバイス
109  ディープリンク
110  アプリケーションデータ抽出・処理器
111  ウェブリソース
114  アプリケーションインデックス
116  ウェブインデックス
120  検索エンジン
132  リソーススコアラ
134  ネイティブアプリケーション・コンテンツスコアラ
136  類似性スコアラ
138  検索エンジン・フロントエンド
402  検索クエリ
404〜410  検索結果
【図１】
0006517437.tif 000003
【図２Ａ】
0006517437.tif 000004
【図２Ｂ】
0006517437.tif 000005
【図３】
0006517437.tif 000006
【図４】
0006517437.tif 000007