(57)【特許請求の範囲】
【請求項１】
少なくとも部分的にユーザの意図に基づいてクエリ結果を提供するためのコンピュータ処理方法であって、
複数のユーザの各々からクエリをコンピューティングデバイスで受け取るステップであって、前記複数のユーザから受け取った複数のクエリの各クエリは同一のクエリである、受け取るステップと、
前記クエリの受け取りに応答して、前記複数のユーザの各ユーザに対するクエリ結果を少なくとも部分的に前記コンピューティングデバイスにより生成し、および提供するステップと、
前記複数のユーザの各ユーザが取った複数の行動により示される分類を、前記クエリの付与時のユーザの顕著な意図を示す複数の行動のパターンを識別することにより、前記コンピューティングデバイスにより識別するステップと、
当該識別された分類を、前記クエリおよび結果生成機能と前記コンピューティングデバイスにより関連付けるステップと、
個々のユーザからクエリを前記コンピューティングデバイスにより受け取るステップであって、当該個々のユーザから受け取るクエリは、以前に、前記複数のユーザの各ユーザから提供されたクエリと同一のクエリである、受け取るステップと、
前記同一のクエリに関連付けられた分類の結果生成機能を使用してクエリ結果を前記コンピューティングデバイスにより生成するステップと
を備えることを特徴とするコンピュータ処理方法。
【請求項２】
前記複数の行動は少なくともアイテムの購入を含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記複数の行動はショッピングカートにアイテムを加える命令を少なくとも含むことを特徴とする請求項１に記載の方法。
【請求項４】
前記複数の行動はユーザがアイテムをクリックするクリックスルーのイベントを少なくとも含むことを特徴とする請求項１に記載の方法。
【請求項５】
分類マッピング情報テーブルに前記クエリの名前および前記分類の名前を書き込むことにより前記コンピューティングデバイスは前記分類を前記クエリに関連付けることを特徴とする請求項１に記載の方法。
【請求項６】
前記コンピューティングデバイスは時間に基づいて前記複数の行動に重み付けを行うことにより前記分類を識別することを特徴とする請求項１に記載の方法。
【請求項７】
複数の前記結果生成機能はクエリの複数の結果の順位付けのための、個々に異なる方策を提供することを特徴とする請求項１に記載の方法。
【請求項８】
複数の前記結果生成機能は個々に異なる複数の分類と関連付けられることを特徴とする請求項１に記載の方法。
【請求項９】
少なくとも１つの分類は、所望のアイテムのタイトルを示すためにクエリが主に使用されていることを示すことを特徴とする請求項８に記載の方法。
【請求項１０】
少なくとも１つの分類は、所望のアイテムの主題を示すためにクエリが主に使用されていることを示すことを特徴とする請求項８に記載の方法。
【請求項１１】
少なくとも１つの分類は、特定のブランドを有する所望のアイテムを示すためにクエリが主に使用されていることを示すことを特徴とする請求項８に記載の方法。
【請求項１２】
少なくとも１つの分類は、特定の時間的な状態を有する所望のアイテムを示すためにクエリが主に使用されていることを示すことを特徴とする請求項８に記載の方法。
【請求項１３】
複数の前記結果生成機能の少なくとも１つは、もしも個々のユーザのクエリが判別できない場合に、デフォルトとして使用されることを特徴とする請求項１に記載の方法。
【請求項１４】
前記コンピューティングデバイスは、前記クエリそのままに基づいてユーザの当該クエリに対応する分類を識別することを特徴とする請求項１に記載の方法。
【請求項１５】
前記コンピューティングデバイスは、前記クエリそのままに基づいて分類をすることができない場合に、ユーザのクエリの中の少なくとも１つのキー用語に基づいて当該ユーザのクエリに対応する分類を識別することを特徴とする請求項１に記載の方法。
【請求項１６】
少なくとも部分的にユーザの意図に基づいてクエリ結果を提供する装置であって、
分類と関連する、クエリ結果を生成する１つまたは複数の結果生成機能と、
複数のユーザの各々からクエリを受け取るステップであって、前記複数のユーザから受け取った複数のクエリの各クエリは同一のクエリである、受け取るステップと、
前記クエリの受け取りに応答して、前記複数のユーザの各ユーザに対するクエリ結果を少なくとも部分的に生成し、および提供するステップと、
前記複数のユーザの各ユーザが取った複数の行動により示される分類を、前記クエリの付与時のユーザの顕著な意図を示す複数の行動のパターンを識別することにより、識別するステップと、
当該識別された分類を、前記結果生成機能と関連付けるステップと、
個々のユーザからクエリを受け取るステップであって、当該個々のユーザから受け取るクエリは、以前に、前記複数のユーザの各ユーザから提供されたクエリと同一のクエリである、受け取るステップと、
前記同一のクエリに関連付けられた分類の結果生成機能を使用してクエリ結果を生成するステップと
を実行するプロセッサと
を備えたことを特徴とする装置。
【請求項１７】
前記複数の行動は少なくともアイテムの購入を含むことを特徴とする請求項１６に記載の装置。
【請求項１８】
前記複数の行動はショッピングカートにアイテムを加える命令を少なくとも含むことを特徴とする請求項１６に記載の装置。
【請求項１９】
前記複数の行動はユーザがアイテムをクリックするクリックスルーのイベントを少なくとも含むことを特徴とする請求項１６に記載の装置。
【請求項２０】
分類マッピング情報テーブルに前記クエリの名前および前記分類の名前を書き込むことにより前記プロセッサは前記分類を前記クエリに関連付けることを特徴とする請求項１６に記載の装置。
【請求項２１】
前記プロセッサは時間に基づいて前記複数の行動に重み付けを行うことにより前記分類を識別することを特徴とする請求項１６に記載の装置。
【請求項２２】
複数の前記結果生成機能はクエリの複数の結果の順位付けのための、個々に異なる方策を提供することを特徴とする請求項１６に記載の装置。
【請求項２３】
複数の前記結果生成機能は個々に異なる複数の分類と関連付けられることを特徴とする請求項１６に記載の装置。
【請求項２４】
少なくとも１つの分類は、所望のアイテムのタイトルを示すためにクエリが主に使用されていることを示すことを特徴とする請求項２３に記載の装置。
【請求項２５】
少なくとも１つの分類は、所望のアイテムの主題を示すためにクエリが主に使用されていることを示すことを特徴とする請求項２３に記載の装置。
【請求項２６】
少なくとも１つの分類は、特定のブランドを有する所望のアイテムを示すためにクエリが主に使用されていることを示すことを特徴とする請求項２３に記載の装置。
【請求項２７】
少なくとも１つの分類は、特定の時間的な状態を有する所望のアイテムを示すためにクエリが主に使用されていることを示すことを特徴とする請求項２３に記載の装置。
【請求項２８】
複数の前記結果生成機能の少なくとも１つは、もしも個々のユーザのクエリが判別できない場合に、デフォルトとして使用されることを特徴とする請求項１６に記載の装置。
【請求項２９】
前記コンピューティングデバイスは、前記クエリそのままに基づいてユーザの当該クエリに対応する分類を識別することを特徴とする請求項１６に記載の装置。
【請求項３０】
前記コンピューティングデバイスは、前記クエリそのままに基づいて分類をすることができない場合に、ユーザのクエリの中の少なくとも１つのキー用語に基づいて当該ユーザのクエリに対応する分類を識別することを特徴とする請求項１６に記載の装置。
【請求項３１】
ユーザの意図に基づきクエリ結果を提供するためのプログラムを記録したコンピュータ読み取り可能記録媒体であって、前記プログラムはコンピュータに、
個々のユーザのクエリを受け取るステップと、
記憶デバイスに記憶された分類マッピング情報を使用して前記クエリに関連する結果生成機能を識別するステップであって、前記分類マッピング情報が、複数のユーザの従前のクエリ関連の振る舞いの分析に基づきクエリを異なる結果生成機能にマッピングするステップと、
前記識別された結果生成機能を使用して前記ユーザに対するクエリ結果を生成するステップと
前記複数のユーザのクエリ関連の振る舞いを判断するステップと
を含み、前記クエリ関連の振る舞いを判断するステップが、
複数のユーザからクエリを受け取るステップと、
前記クエリに基づき結果を生成するステップと、
前記複数のユーザに前記結果を提供するステップと、
前記ユーザが前記結果を受け取る際にとる行為を識別するステップと
を実行させ、前記従前のクエリ関連の振る舞いの分析が、
前記クエリ入力時における前記ユーザの主な意図を明らかにする行為のパターンを識別するステップと、
結果生成機能を前記識別されたパターンに関連付けて分類結果を提供するステップと、
前記分類結果に基づき前記分類マッピング情報を作成するステップと
を含み、
前記複数の結果生成機能が、異なるそれぞれの分類に関連付けられ、
少なくとも１つの分類が、所望のアイテムのタイトルを識別するためにクエリが主に使用されることを示すことを特徴とするコンピュータ読み取り可能記録媒体。
【請求項３２】
ユーザの意図に基づきクエリ結果を提供するためのプログラムを記録したコンピュータ読み取り可能記録媒体であって、前記プログラムはコンピュータに、
個々のユーザのクエリを受け取るステップと、
記憶デバイスに記憶された分類マッピング情報を使用して前記クエリに関連する結果生成機能を識別するステップであって、前記分類マッピング情報が、複数のユーザの従前のクエリ関連の振る舞いの分析に基づきクエリを異なる結果生成機能にマッピングするステップと、
前記識別された結果生成機能を使用して前記ユーザに対するクエリ結果を生成するステップと
前記複数のユーザのクエリ関連の振る舞いを前記コンピュータにより判断するステップと
を実行させ、前記クエリ関連の振る舞いを判断するステップが、
複数のユーザからクエリを前記コンピュータで受け取るステップと、
前記クエリに基づき結果を前記コンピュータにより生成するステップと、
前記複数のユーザに前記結果を前記コンピュータにより提供するステップと、
前記ユーザが前記結果を受け取る際にとる行為を前記コンピュータにより識別するステップと
を実行させ、前記従前のクエリ関連の振る舞いの分析が、
前記クエリ入力時における前記ユーザの主な意図を明らかにする行為のパターンを前記コンピュータにより識別するステップと、
結果生成機能を前記識別されたパターンに関連付けて分類結果を前記コンピュータにより提供するステップと、
前記分類結果に基づき前記分類マッピング情報を前記コンピュータにより作成するステップと
を含み、前記複数の結果生成機能が、異なるそれぞれの分類に関連付けられ、
少なくとも１つの分類が、所望のアイテムの主題を識別するためにクエリが主に使用されることを示すことを特徴とするコンピュータ読み取り可能記録媒体。
【請求項３３】
ユーザの意図に基づきクエリ結果を提供するプログラムを記録したコンピュータ読み取り可能記録媒体であって、前記プログラムはコンピュータに、
個々のユーザのクエリをコンピュータで受け取るステップと、
記憶デバイスに記憶された分類マッピング情報を使用して前記クエリに関連する結果生成機能を識別するステップであって、前記分類マッピング情報が、複数のユーザの従前のクエリ関連の振る舞いの分析に基づきクエリを異なる結果生成機能にマッピングするステップと、
前記識別された結果生成機能を使用して前記ユーザに対するクエリ結果を生成するステップと
前記複数のユーザのクエリ関連の振る舞いを判断するステップと
を実行させ、前記クエリ関連の振る舞いを判断するステップが、
複数のユーザからクエリを受け取るステップと、
前記クエリに基づき結果を生成するステップと、
前記複数のユーザに前記結果を提供するステップと、
前記ユーザが前記結果を受け取る際にとる行為を識別するステップと
を含み、前記従前のクエリ関連の振る舞いの分析が、
前記クエリ入力時における前記ユーザの主な意図を明らかにする行為のパターンを識別するステップと、
結果生成機能を前記識別されたパターンに関連付けて分類結果を提供するステップと、
前記分類結果に基づき前記分類マッピング情報を作成するステップと
を含み、
前記複数の結果生成機能が、異なるそれぞれの分類に関連付けられ、
少なくとも１つの分類が、定義される時間的な状態を有する所望のアイテムを識別するためにクエリが主に使用されることを示すことを特徴とするコンピュータ読み取り可能記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザの意図の分析に基づきクエリ結果を提供するための方法に関する。
【背景技術】
【０００２】
多数の検索ツールが存在し、ユーザがネットワークベースのデータベースにクエリ（問合せ）を行うことが可能になっている。１つの基本的なツールにおいては、ユーザは、探している特定のアイテムに関するクエリを入力する。ツールは、クエリをそれぞれのタイトルの中に含むアイテムを識別することが可能である。次に、ツールは、合致するアイテムを識別するリストを生成することが可能である。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
上記の方法（ｓｔｒａｔｅｇｙ）は、ユーザが実際に、アイテムのタイトル内に存在する可能性が高い１つまたは複数の単語を入力することによって、需要の多いアイテムを特定しようとする場合は、うまく機能する。しかし、他の場合において、ユーザは異なる方策を使用して所望のアイテムを検索するかもしれない。例えば、ユーザは、「ＣＯＵＮＴＲＹ  ＭＵＳＩＣ（カントリーミュージック）」というクエリを入力して、ユーザが詳細を調べたいと思っているアイテムのテーマを記述することがある。タイトルベースのクエリ生成機能は、クエリ「ＣＯＵＮＴＲＹ  ＭＵＳＩＣ」をタイトルに有するアイテムを好ましいとする。けれどもこれらの結果は、ユーザの主題ベースのクエリに対して最も関連があるアイテムを適切に強調することができない。
【０００４】
少なくとも上記で特定された例示の理由により、当技術分野ではユーザのクエリに応答する、より満足できる方法が必要である。
【課題を解決するための手段】
【０００５】
クエリ入力時におけるユーザの意図の考察に基づき、ユーザのクエリに応答するための方法が記載される。ユーザの意図は、次に、ユーザ母集団の事前のクエリ関連の振る舞いを調べることにより判断される。
【０００６】
さらに具体的には、上記方法は、データマイニング動作およびクエリ動作の２つの動作を使用することができる。一実施例に従うと、データマイニング動作は、検索結果を受け取る際に（検索結果は、ユーザにより入力されるエントリに応答して順次生成される）、ユーザによりなされる購入および他の選択を記録することを含む。データマイニング動作は、各ユーザのクエリに対して、クエリ入力時におけるユーザの主な意図を明らかにするパターンを特定することをさらに含む。
【０００７】
クエリ動作は、特定のクエリを個々のユーザから受け取ることを含む。クエリ動作はまた、データマイニング動作が行う事前解析に基づき、特定のクエリを入力する際のユーザの可能性のある意図を識別することを含む。そしてクエリ動作は、識別された意図に最も適した結果生成機能を選択して適用することを含む。一例示の結果生成機能は、特定のクエリをタイトルに含む結果のアイテムを強調するタイトルベースの機能である。別の例示の結果生成機能は、特定のクエリに対して主題関係を有するが、それぞれのタイトルにそのクエリを含まない結果のアイテムを強調する主題ベースの機能である。さらに他の機能を使用することが可能である。
【０００８】
追加の実施例および付随する利益について以下に記載する。
【図面の簡単な説明】
【０００９】
【図１】異なるクエリ生成機能を適用して異なるタイプのそれぞれのクエリを扱う、ユーザのクエリに応答するための例示のシステムを示す図である。
【図２】図１のシステムで使用することが可能な一例示のクエリモジュールを示す図である。
【図３】図１のシステムのデータマイニングモジュールにより保持される例示のクエリトランザクションログを示す図である。
【図４】図１のシステムのデータマイニングモジュールにより保持される例示のクエリ分類テーブルを示す図である。
【図５】図１のシステムにより生成され得るユーザインターフェースプレゼンテーションの例示のシーケンスを示す図である。
【図６】図１に示すシステムの任意の態様を実装するための例示の処理機能性を示す図である。
【図７】ユーザからクエリ関連の振る舞いを収集するための例示の手順を示す図である。
【図８】図７の手順において収集されるクエリ関連の振る舞いに基づき分類テーブルを形成するための例示の手順を示す図である。
【図９】図８の手順において形成される分類テーブルに基づき、個々のユーザにより作成される特定のクエリに応答するための例示の手順を示す図である。    同じ番号が本開示および図面を通して使用され、同様の構成要素および図面を参照する。１００番台の番号は、図１において本来見られる特徴を示し、２００番台の番号は、図２において本来見られる特徴を示す、３００番台の番号は、図３において本来見られる特徴を示す、等々となっている。
【発明を実施するための形態】
【００１０】
本開示は、クエリ入力時におけるユーザの意図をさらに十分に考慮する方法で、ユーザのクエリに応答するための方法を記載する。本方法は、種々のシステム、方法、装置、コンピュータ可読媒体、データ構造、および他の構成要素において明らかにされ得る。
【００１１】
本明細書において使用される用語「アイテム」は、任意の種類のオブジェクトを意味する。一例において、アイテムは、ユーザによって取得され得るもの、例えばメディアコンテンツ（本、音楽作品等）、他の有形の物品（例えば、自動車、カメラ、衣料品等）、サービス、任意の種類のダウンロード可能なデジタルコンテンツ、等を意味し得る。これらの場合、用語「アイテム」は、とりわけあるオブジェクトに対応する電子記録、または実際のオブジェクトそのものを意味することが可能である。他の場合では、「アイテム」は、販売可能な対応物を有しない電子記録に対応可能である。
【００１２】
本開示は、以下のセクションを含む。セクションＡでは、ユーザのクエリを受け取り応答するための例示のシステムを記述する。セクションＢでは、セクションＡのシステム動作を説明する例示の手順を記述する。
【００１３】
Ａ．例示のシステム
導入事項として、用語「論理」、「モジュール」、「機能」または「システム」は、一般にハードウェア，ソフトウェア，ファームウェア、もしくはこれらの構成要素の組合せ、またはさらなる何らかの他の種類の実装を表す。例えば、ソフトウェア実装の場合、用語「論理」、「モジュール」、「機能」または「システム」は、処理装置（単数または複数）（例えば、ＣＰＵ（単数または複数））上で実行されるときに特定のタスクを行うプログラムコードを表す。プログラムコードは、１つまたは複数の機械可読媒体に格納することが可能である。
【００１４】
用語「機械可読媒体」等は、種々の種類の記憶装置（磁気、光、静的等）を含む任意の形態の情報を保持するための任意の種類の媒体を意味する。用語「機械可読媒体」はまた、ある地点から別の地点へ情報を転送するための、種々の配線リンクおよび／または無線リンクを含む、情報を表す一過性の形態を包含する。
【００１５】
Ａ．１．システムの例示的構成要素
図１は、ユーザのクエリを受け取り応答するための１つの例示のシステム１００の概要を示す。システム１００において、代表的ユーザ装置１０２等の複数の装置が、オペレーションセンタ１０４に結合機構１０６により結合される。代表的装置１０２に対する以下の説明は、特に指摘しない限り、他の装置（図示せず）にも同様に適用される。
【００１６】
システム１００のハードウェア関連の態様から始めると、オペレーションセンタ１０４は、１つまたは複数のサーバコンピュータ（例えば、そのようなコンピュータサーバの「ファーム」として）、および関連するデータベースとして実装することが可能である。オペレーションセンタ１０４のアーキテクチャは、装置１０２と直接インターフェースするフロントエンドコンポーネント、およびオフライン分析を行うバックエンドコンポーネントに分けることができる。一般に、オペレーションセンタ１０４の構成要素は、単一の場所に置く、または複数の場所に分散させ、単一のエンティティまたは複数のエンティティによって管理することが可能である。
【００１７】
装置１０２は、結合機構１０６を介してオペレーションセンタ１０４と対話することが可能な任意の種類の電子ユニットを表す。最も一般的な場合では、装置１０２は、パーソナルコンピュータ，ラップトップコンピュータ等のコンピュータ装置に対応する。しかし、装置１０２はまた、携帯電話、携帯情報端末（ＰＤＡ）装置、テレビに結合するセットトップボックス、スタイラスタイプの入力装置、任意の種類のウェアラブルコンピュータ、電子読書装置、パーソナルメディアプレーヤ、ゲーム機等にも対応し得る。いずれにしても、装置１０２は、主要部品として、処理ユニット１０８、プレゼンテーションユニット１１０、および入力ユニット１１２を備えることが可能である。処理ユニット１０８は、一般に、情報を処理するための機能（例えば、ソフトウェア論理、および／または回路等）に対応する。プレゼンテーションユニット１１０は、一般に、処理された情報を提示するための任意の機構または機構の組み合わせに対応する。例えば、プレゼンテーションユニット１１０は、ユーザと対話するためのグラフィカルユーザインターフェース１１４を表すことが可能である。入力ユニット１１２は、一般に、処理ユニット１０８にデータおよび命令を入力するための任意の機構または機構の組み合わせに対応する。
【００１８】
以下で検討する図６は、オペレーションセンタ１０４または代表的装置１０２の任意の態様を実装するために使用されることが可能な装置に関する追加の詳細を提供する。
【００１９】
結合機構１０６は、任意の種類の通信コンジットまたは通信コンジットの組み合わせに対応することが可能である。本開示において最も一般的に喚起される場合、結合機構１０６は、インターネット等のワイドエリアネットワークに対応する。しかし、結合機構１０６は、代替としてまたは追加で、イントラネット、二地点間結合配置等の他の種類の通信コンジットを備えることが可能である。任意の場合において、結合機構１０６は、任意のプロトコルまたはプロトコルの組合せによって制御される配線リンク、無線リンク、ルータ、リピータ、ゲートウェイ、ネームサーバ等（図示せず）任意の組合せを含むことが可能である。
【００２０】
Ａ．２．システムの検索関連構成要素の概説
システム１００の機能的態様について、ここでより詳細に記載するが、オペレーションセンタ１０４から始める。ある場合において、オペレーションセンタ１０４は、単一のエンティティまたは複数のエンティティによって維持される、ウェブサイト（単数または複数）を表し得る。オペレーションセンタ１０４は、代表的装置１０２からの要求を扱うことが可能であり、また、それに応じて、（例えば、装置１０２により実装されるブラウジング機能を使用して）装置１０２においてレンダリングされる種々のウェブのページを供給することが可能である。
【００２１】
例えば、具体的な一アプリケーションを示すと、オペレーションセンタ１０４は、１つまたは複数のアイテムへのアクセスを可能にする販売業者のウェブサイトを表すことが可能である。本コンテクストにおいて、アイテムは、販売業者が販売を希望する物、または販売業者のウェブサイトを使用する他の者が販売を希望する物を表すことが可能である。アイテムは、製品、サービス、または幾つかの他のタイプの販売可能なユニットを含むことが可能である。この環境において、ユーザは、装置１０２を使用して１つまたは複数の要素の英数字キーによる用語の形式でクエリを入力することが可能である。オペレーションセンタ１０４は、クエリ結果を提供することによって応答する。クエリ結果は、ユーザに、ユーザのクエリに合致するゼロ、１つまたは複数のアイテムを通知する。
【００２２】
上記の販売業者関連の環境は、単なる代表例である。他の場合においては、オペレーションセンタ１０４は、純粋に情報に関するアイテム、または必ずしも販売業者により販売される物とは限らない他のアイテム等の、他の種類のアイテムのデータベースへのアクセスを維持または提供することが可能である。例えば、オペレーションセンタ１０４は、インターネット上の種々のエンティティによりホストされるウェブサイトの記録に対してユーザのクエリをマッチングさせることにより、ウェブサーフィンのエンジンの役割を果たすことが可能である。別の場合においては、オペレーションセンタ１０４は、企業特定のまたは他の組織の設定上のユーザのクエリをマッチングさせ、その企業または組織に局所的な文書または他の情報を提供することが可能である。さらに、他のアプリケーションが想定される。
【００２３】
概説すると、オペレーションセンタ１０４は、クエリモジュール１１６およびデータマイニングモジュール１１８を含む。クエリモジュール１１６の目的は、ユーザのクエリを受け取り、１つまたは複数のストア１２０をクエリに基づき検索し、出力結果をユーザに返すことである。このタスクを実行する際に、クエリモジュール１１６は、一連の結果生成機能１２２のうち任意の１つに依存することが可能である。結果生成機能は、概してユーザに送信すべき出力結果を作成するために使用される任意の方策のことを指す。ある場合において、「結果生成」は、別個の結果抽出処理を介して既に得られた検索結果の順序付けのことを指す。別の場合において、「結果生成」は、結果抽出処理のことを指す。別の場合において、「結果生成」は、結果抽出と結果順序付けとの組合せのことを指す。さらなる実装および解釈が可能である。
【００２４】
データマイニングモジュール１１８の目的は、ユーザにより入力されたクエリに関するパターンを検出することである。すなわち、クエリを入力し検索結果を受け取る際、ユーザは、結果内で識別されるアイテムの１つを購入するなどの種々の行為を行うことができる。データマイニングモジュール１１８は、各クエリに対して、ユーザがとった行為を調べて、これらの行為が総合して１つのパターンを明らかにしているかを判断する。パターンは、ユーザが適用する共通する検索方法を反映し得る。より一般的には、パターンは、特定のクエリを入力する際の、ユーザの検索関連の発想または意図を反映し得る。データマイニングモジュール１１８は、その分析の結果を要約する、クエリ分類テーブル１２４（または、より一般的には、分類マッピング情報）を作成する。例えば、クエリ分類テーブル１２４は、ユーザが入力した一連のクエリを、これらのクエリをユーザが入力した際の考えられる意図に関する情報と共に記憶し得る。
【００２５】
クエリモジュール１１６は、個々のユーザの特定のクエリに応答する際にデータマイニングモジュール１１８が行う分析に依存するように構成される。クエリモジュール１１６は、リアルタイムベースで（例えば、ユーザが、クエリを入力した後非常に早く応答を受け取る場合）、または非リアルタイムベースで（例えば、ユーザが、クエリに対して著しく遅延した応答を受け取る場合）動作することが可能である。より具体的には、ユーザが特定のクエリを入力する時、クエリモジュール１１６は、クエリ分類テーブル１２４にアクセスして、ユーザが特定のクエリを入力する際の考えられる意図を判定することが可能である。上で説明したように、考えられる意図として、これまでに同じクエリを入力したユーザ母集団の総合的な振る舞いに基づき、形成される。クエリモジュール１１６は、次にユーザの意図に最も適する結果生成機能を選択し、その結果生成機能を使用して出力結果をユーザに与えることが可能である。上記のアプローチによって、システム１００は、ユーザが求めている情報を適切に強調する結果をより生成しやすくなる。
【００２６】
一例においては、単一のエンティティは、クエリモジュール１１６およびデータマイニングモジュール１１８の両方を管理し得る。別の場合においては、第一のエンティティがクエリモジュール１１６を管理することが可能であり、かつ第二のエンティティがデータマイニングモジュール１１８を管理することが可能である。後者の場合、例えば、商業プロバイダが、検索サービスを提供する１つまたは複数の他の商業エンティティを利用できるようにすることが可能な、クエリ分類テーブル１２４を生成可能である。
【００２７】
同様に、検索可能ストア１２０を、クエリモジュール１１６を管理するエンティティ等の任意のエンティティに関連付けることが可能である。ある場合において、上述したように，検索可能ストア１２０は、クエリモジュール１１６を運営するエンティティにより販売されるアイテムに関する情報を記憶することが可能である。しかし、他のアプリケーションにおいては、クエリモジュール１１６を管理するエンティティは、検索可能ストア１２０のコンテンツを所有または制御することはできないかもしれない。さらに他のビジネス関連のアプリケーションが利用可能である。
【００２８】
システム１００の使用を含む例示のシナリオの概説を、以下に示す。以下のセクションでは、このシナリオについてより詳細に掘り下げる。
【００２９】
データマイニングモジュール１１８が、クエリ「ＣＲＹＩＮＧ（泣く）」等の特定のクエリを入力したユーザ母集団の振る舞いに関する様々な情報を収集する、と仮定する。この振る舞いは、クエリ「ＣＲＹＩＮＧ」を入力したユーザが、主に「ＣＲＹＩＮＧ」という単語をタイトルに含むアイテムに関心があったということを示し得る。そのようにして、データマイニングモジュール１１８は、クエリ「ＣＲＹＩＮＧ」を入力したかなりの数のユーザが、「ＣＲＹＩＮＧ」という単語を含有するタイトルを有するアイテムを最終的には購入した、と判断することが可能である。
【００３０】
一方で、データマイニングモジュール１１８もまた、「ＣＯＵＮＴＲＹ  ＭＵＳＩＣ」等の別のクエリを入力したユーザ母集団の振る舞いに関する様々な情報を収集する、と仮定する。この振る舞いは、このクエリを入力したユーザが、それぞれのタイトルにクエリ「ＣＯＵＮＴＲＹ  ＭＵＳＩＣ」を特定して含有するアイテムよりむしろ、「ＣＯＵＮＴＲＹ  ＭＵＳＩＣ」について、全体的にまたは主題として含むアイテムに、主として関心があるということを示し得る。そのようにして、データマイニングモジュール１１８は、クエリ「ＣＯＵＮＴＲＹ  ＭＵＳＩＣ」を入力したかなりの数のユーザが、カントリーミュージックについて主題上関連のあるアイテムを最終的には購入した、と判断することが可能である。
【００３１】
上記の分析に基づき、データマイニングモジュール１１８は、分類テーブル１２４に、クエリ「ＣＲＹＩＮＧ」が、タイトルベースの問合せを行うというユーザの意図を主に表現するということを示すエントリを記憶することが可能である。データマイニングモジュール１１８は、分類テーブル１２４に、クエリ「ＣＯＵＮＴＲＹ  ＭＵＳＩＣ」が、主題ベースの問合せを行うというユーザの意図を主に表現するということを示すエントリを記憶することが可能である。
【００３２】
ここで、分類テーブル１２４が形成された後、新しいユーザがクエリ「ＣＲＹＩＮＧ」を入力する、と仮定する。それに応じて、クエリモジュール１１６は、クエリ分類テーブル１２４を参照して、クエリ「ＣＲＹＩＮＧ」が、タイトルベースの検索に関連付けられるとしてフラグを立てられた、と判断する。クエリモジュール１１６は、この洞察に基づいて、タイトルベースの問合せを処理するのに特に適しているとされる結果生成機能１２２の１つを選択する。例えば、第一のクエリ生成機能は、入力されたクエリに合致するタイトルを有する結果アイテムを強調するように、検索結果を順位付けする、と仮定する。第２のクエリ生成機能は、入力されたクエリに主題に関して関係があるが、そのクエリをも含むタイトルは有しないかもしれない結果アイテムを強調するように、検索結果を順位付けする。分類テーブル１２４に基づき、クエリモジュール１１６は、第一の結果生成機能を選択して出力結果をユーザに提供する。この提供によって、「ＣＲＹＩＮＧ」という単語をタイトルに含有する結果アイテムを、その結果の中で目立つようにしやすくなる。
【００３３】
タイトルベースの意図および主題ベースの意図を反映したカテゴリは、単なる２つの例である。多くの他のアプリケーションがあり、そのうちの幾つかを以下で確認する。  
【００３４】
・データマイニングモジュール１１８は、クエリ関連のユーザの振る舞いを調べて、クエリのブランドベースのパターンを検出することが可能である。このパターンが適用される場合、ユーザがクエリを入力する時、ユーザは特定の製品ブランドに関連するアイテムについて調べることに特に関心を示す。例えば、仮定として、ユーザが「ボストンラガー」というクエリを入力する時、ユーザは大抵、ビールの一般的な分類ではなく、ビールの特定のブランドを識別しようとしている。
【００３５】
・データマイニングモジュール１１８は、クエリ関連のユーザの振る舞いを調べて、クエリの成人用ベースのパターンを検出することが可能である。このパターンが適用される場合、ユーザがクエリを入力する時、ユーザは成人用製品のアイテムに関連するアイテムついて調べることに特に関心を示す。
【００３６】
・データマイニングモジュール１１８は、クエリ関連のユーザの振る舞いを調べて、クエリのカテゴリ関連のパターンを検出することが可能である。例えば、ユーザが「ビートルズ」というクエリを入力する場合を考える。ＣＤ、ＤＶＤ、芸術作品、衣類等を含む、このクエリに関連する製品の異なるカテゴリが存在する。データマイニングモジュール１１８は、多数のユーザの振る舞いを調べて、ユーザがクエリ「ビートルズ」を入力した時、主に特定の製品カテゴリ（ＣＤなど）を対象としようとしていたかどうかを判断することが可能である。
【００３７】
クエリ関連のユーザの振る舞いを調べて、クエリの時間関連のパターンを検出することが可能である。例えば、データマイニングモジュール１１８は、ユーザが特定のクエリを入力する時、ユーザが主に、より最近のアイテム、または場合によってはより古いアイテム（例えば、骨董品）を対象としようとしていたかどうかを、判断することが可能である。例えば、データマイニングモジュール１１８は、仮定として、「ＸＭＬ」というクエリを入力するユーザが大抵は、この１年間に出版された、ＸＭＬ技術について説明する書籍に関心がある、と判断することが可能である。
【００３８】
Ａ．３．例示のデータマイニングコンポーネント
上記の概説に付随して、ここにクエリモジュール１１６およびデータマイニングモジュール１１８に関して、さらに詳細に説明する。
【００３９】
データマイニングモジュール１１８から始めると、このモジュール１１８は、クエリ結果ロギングモジュール１２６（略して、ロギングモジュール１２６と称する）を含む。ロギングモジュール１２６は、クエリトランザクションログ１２８にユーザのクエリ関連の振る舞いに関する情報を記憶する。クエリ関連の振る舞いは、一般にユーザが検索結果を受け取る際にとる任意の行為の記述である。検索結果は、次に、ユーザにより入力されるクエリに応答してクエリモジュール１１６が生成する。
【００４０】
ロギングモジュール１２６は、ユーザがとる種々の行為を記録することが可能であり、例えば、アイテムを購入する、アイテムを予約注文する、アイテムをショッピングカートに追加する、単にアイテムをクリックしてアイテムに関するさらなる情報を発見する、等の行為があるが、これに限定されない。ロギングモジュール１２６は、１つまたは複数の規則を適用して、検索結果のユーザの受け取りと、ユーザが続いてとり得る行為との間に有意な関連性があるかどうかの判断を支援する。行為の有意性を含有する一基準は、ユーザが、明示的に検索結果内に含まれるハイパーテキストのリンクをクリックしたかどうか、またはユーザが、明示的に検索結果内に識別されるアイテムに対して何らかの行為を行ったかどうか、である。別の基準は、ユーザの行為が検索結果の受け取りに時間的に比較的近いかどうか、である。さらに他の基準を使用して、潜在的に無関係の行為から有意義な行為を区別するのに役立てることが可能である。例えば、ユーザは、音楽関連のクエリにふさわしい検索結果を受けとったと考える。そのあとすぐに、何らかの特異的な理由で、ユーザが衣類を購入したとする。ロギングモジュール１２６は、この行為を考察の対象から除外することが可能であるが、それはこの行為（衣類を購入すること）が、推定上、音楽に関連した検索結果の受け取りに全く関係しないからである。しかし、ロギングモジュール１２６は、この同様の振る舞いが多数のユーザにより共有されると判断する場合、この振る舞いを選択的に有意義なイベント（事象）として識別することが。
【００４１】
ロギングモジュール１２６は、ユーザのクエリ関連の振る舞いに関する情報をクエリトランザクションログ１２８内にクエリ毎に記憶することが可能である。例えば、クエリトランザクションログ１２８は、ユーザが入力したクエリごとにエントリを含むことが可能である。このクエリに関連して、クエリトランザクションログ１２８は、（このクエリの入力に応答して生成される検索結果に対するユーザの反応に関係する）ユーザのクエリ関連の振る舞いを記述する情報を記憶することが可能である。クエリ関連の振る舞いは、ユーザがとる行為、ユーザが行為を行った時間などを識別することが可能である。ロギングモジュール１２６はまた、集計的分析の結果を、すなわち複数のユーザが共通の行為を何回行ったかを示す情報をクエリトランザクションログ１２８に記憶することによって、記録することが可能である。
【００４２】
データマイニングモジュール１１８はまた、分類判断モジュール１３０を含む。分類判断モジュール１３０の目的は、クエリトランザクションログ１２８に記憶される情報を調べて、このログ１２８からパターンを抽出することである。分類判断モジュール１３０は、一日一回、週一回など周期的に、この分析を行うことが可能である。または、分類判断モジュール１３０は、所定量の新しい行動情報が１つまたは複数のクエリに対して収集されたということが表示される等の、他の種類のトリガイベントに応答して、この分析を行うことが可能である。分類判断モジュール１３０は、その分析の出力をクエリ分類テーブル１２４に記憶する。
【００４３】
分類判断モジュール１３０は、その分析をクエリ毎に行うことが可能である。すなわち、クエリトランザクションログ１２８内の各クエリに対して、分類判断モジュール１３０は、ログをとった行為を調べて、これらの行為がパターンを提示するかどうかを判断することが可能である。提示する場合は、パターンは、ほとんどのユーザの、クエリを入力する際の発想または意図を反映し得る。例えば、分類判断モジュール１３０は、クエリ「ＣＲＹＩＮＧ」を入力したほとんどのユーザが、単語「ＣＲＹＩＮＧ」をそのタイトルに含有するアイテムを購入するか、またはそうでなければ選択することによって検索結果に対して応答した、ということに注目する時に、可能性のあるタイトルベースの意図を検出することが可能である。別の観点から述べると、分類判断モジュール１３０は、比較的少数のユーザだけが「ＣＲＹＩＮＧ」という話題に主題的関心を反映する選択をした、ということに注目し得る。一方で、分類判断モジュール１３０は、クエリ「ＣＯＵＮＴＲＹ  ＭＵＳＩＣ」を入力したほとんどのユーザが、概してカントリーミュージックというテーマに含まれる、異なるアーティストによる様々な音楽を購入することによって検索結果に対して応答した、ということに注目する時に、可能性のある主題ベースの意図を検出することが可能である。別の観点から述べると、分類判断モジュール１３０は、比較的少数のユーザだけが、「ＣＯＵＮＴＲＹ  ＭＵＳＩＣ」をそのタイトルに有するアイテムを見付ける試みを反映する選択をした、ということに注目し得る。
【００４４】
従って、動作の一般的モードとして、分類判断モジュール１３０は、クエリの後の行為の相対分布を分析することによって分類を行い、これらの行為が明示のパターン（または複数のパターン）に従っているかどうかを判断することが可能である。分類判断モジュール１３０は、この動作を、記憶した規則を参照して行うことが可能である。これらのパターンの検出を容易にするために、分類モジュール１３０は、選択的に、クラスタ分析、パターン認識解析等の種々な統計手段に依存することが可能である。分類判断モジュール１３０はまた、種々のコンフィデンス指標に依存して、（例えば、ベイズ解析、または任意の他の統計技術もしくは技術の組合せを使用して）パターンが十分な度合いのコンフィデンスを伴って検出されたかどうかを判断することが可能である。
【００４５】
分類判断モジュール１３０はまた、選択的に、ユーザの行為の他に他の種類の情報を考察することが可能である。例えば、分類判断モジュール１３０は、行為が発生した時間を、その分析を行う際に考察することができる。例えば、分類判断モジュール１３０は、より大きな優位性を付加する重み係数を（より最近ではない振る舞いと比較して）最近のユーザの振る舞いに適用することが可能である。特定の一実装において、分類判断モジュール１３０は、スライディングタイムウィンドウを使用して、その分析を行う際に振る舞いの所定の時間間隔のみを受け入れることが可能である。別の実装において、分類判断モジュール１３０は、任意の種類の右下がりの重み関数（線形関数、指数関数等）を適用して、過去の時間の関数として振る舞いの適合度を減少させることが可能である。さらに進歩した場合においては、分類判断モジュール１３０はまた、時間的考察を適用して、意図される季節的な変動を検出することが可能である。例えば、分類判断モジュール１３０は、ユーザが１２月には「オーナメント」というクエリを使用して、クリスマスツリーオーナメントのアイテム（このアイテムは「オーナメント」という単語をタイトルに有する）を記述するアイテムを検索する傾向がある、と判断することが可能である。しかし、一年の他の時期には、分類判断モジュール１３０は、クエリ「オーナメント」が主にブローチ等の宝飾品を探す主題ベースの検索を指すと判断することができる。
【００４６】
さらに別の選択的実装において、分類判断モジュール１３０はまた、ユーザ毎、領域毎、などで分析を行うことが可能である。この実装を可能にするために、クエリトランザクションログ１２８はまた、記録されている行為を行ったユーザを識別する情報を記憶することも可能である。ユーザ情報は、従来のやり方で検出することが可能であり、例えば、ユーザに購入前に識別情報（Ｅメールアドレス、パスワード等）の入力を要求することなどによって行う。ユーザ特定の分類を形成することにより、クエリモジュール１１６は、特異的な検索傾向があるユーザにより適合性のある結果を提示できる可能性がある。例えば、特定のユーザが、「ヒップハンガー」というクエリを入力する時に、いつも特定のタイプのジーンズを購入するとする。従って、この特定のユーザに対して、分類判断モジュール１３０は、このクエリをブランド特定のクエリとして分類することが可能であるが、一方他のユーザに対しては、分類判断モジュール１３０は、このクエリを一般的な主題ベースのクエリとして分類することが可能である。
【００４７】
さらに一般的には、図１は、分類判断モジュール１３０が、その分析を行う際に、１つまたは複数の補足のデータストア１３２に依存することが可能であることを示す。データストア１３２は、ユーザの振る舞いの分類を支援するために使用することが可能な任意の補足情報を提供する。データストア１３２は、ユーザプロファイル情報、領域特定情報等を含み得る。
【００４８】
分類判断モジュール１３０は、分析の結果をクエリ分類テーブル１２４に種々のフォーマットで記憶することが可能である。ある場合において、分類判断モジュール１３０は、入力されたクエリの一覧を記憶することが可能である。分類判断モジュール１３０は、そして各クエリの意図ベースの分類に関する情報を記憶することが可能である。例えば、分類判断モジュール１３０は、クエリ「ＣＯＵＮＴＲＹ  ＭＵＳＩＣ」と「主題ベースのクエリ」という分類を一組にする、クエリ「ＣＲＹＩＮＧ」と「タイトルベースのクエリ」という分類を一組にする、などが可能である。代替として、または追加で、分類判断モジュール１３０は、結果生成機能をより直接識別する情報を含み、それぞれのクエリを、それらが再度生じるときに処理するために使用することが可能である。  
【００４９】
例示の一実装において、分類判断モジュール１３０は、ユーザにより入力された全てのクエリを記憶するわけではない。むしろ、分類判断モジュール１３０は、ユーザにより入力されたクエリをフィルタリングし、一般的なクエリ、または明示のパターンが検出されているクエリ等のみを記憶することが可能である。  
【００５０】
理解されるであろうが、クエリ分類テーブル１２４内の分類は、時間と共に動的に変化する。ユーザが新しいクエリ、例えば販売業者により売られている新しい製品に対応するクエリ、の入力を開始した場合を考える。分類判断モジュール１３０は、最初にこのクエリについてデフォルトの仮定を行い、例えば、このクエリがタイトルベースタイプの検索を反映するとする。しかし、さらに振る舞いのデータを収集するにつれ、このクエリが実際は主題ベースタイプの検索であることが明らかになるかもしれない。この結論に達すると、分類判断モジュール１３０は、次にこのクエリを主題ベースの検索として再指定することが可能である。別の場合においては、分類判断モジュール１３０は、あるクエリの安定した使用でさえ時間と共に変化することが可能であることがわかるだろう。それに応じて、分類判断モジュール１３０は、その分類を変更して、意図される傾向の推移を追跡することが可能である。
【００５１】
別の例示の実装において、図１に示すシステム１００は、アイテムを販売する別個のコンポーネントシステムを運営することが可能である。これらの別個のシステムを、別個の市場であると考えることが可能であり、その市場は別個のそれぞれのウェブサイトに関連するものであり得る。この環境において、分類判断モジュール１３０は、異なる市場に対して別個の分類関連の分析を行うことが可能である。それに対応して、クエリ分類テーブル１２４は、別個の市場に対して別個の分類のログをとることが可能である。例えば、仮定として、ユーザが電子製品の販売専用の市場で「マウス」というクエリを入力する時、ユーザは、大抵、グラフィック入力の装置を探して主題ベースの検索を行っている。ユーザがこれと同じクエリを本の販売専用の市場で入力する時、ユーザは、大抵、タイトルベースの検索を行っている。
【００５２】
Ａ．４．例示のクエリモジュール構成要素
ここで、クエリモジュール１１６に注目すると、このモジュール１１６は、ユーザ対話モジュール１３４と対話することが可能であり、ユーザ対話モジュールは、クエリモジュール１１６とは別個のもの、またはクエリモジュール１１６の一部であり得る。ユーザ対話モジュール１３４は、ウェブページをユーザに供給するフロントエンド機能を備えることが可能である。特に、ユーザ対話モジュール１３４は、ユーザが１つまたは複数のクエリを入力することを可能にする、１つまたは複数のユーザインターフェースプレゼンテーションを供給することが可能である。ユーザ対話モジュール１３４はまた、検索結果をユーザに提示する、１つまたは複数のユーザインターフェースプレゼンテーションを提供することが可能である。ユーザ装置１０２は、これらのプレゼンテーションをそのプレゼンテーションユニット１１０上に表示することが可能である。
【００５３】
クエリモジュール１１６はまた、機能選択モジュール１３６（略して機能選択モジュール１３６と称する）を含む。機能選択モジュール１３６は、データマイニングモジュール１１８が、ユーザにより入力される特定のクエリに対応する意図のカテゴリを識別したかどうかを判断する。機能選択モジュール１３６は、入力されたクエリを指標として使用しクエリ分類テーブル１２４を検索することによってこの役割を果たすことが可能である。クエリ分類テーブル１２４が入力されたクエリを含む場合、機能選択モジュール１３６は、クエリ分類テーブル１２４がクエリと関連した分類情報を読み込む。例えば、分類は、クエリが「タイトルベースのクエリ」、「主題ベースのクエリ」等であるということを示す。また、前述のように、クエリ分類テーブル１２４は、入力されたクエリに適用されるべき特定の結果生成機能をより直接識別することが可能である。
【００５４】
機能選択モジュール１３６が、入力されたクエリをクエリ分類テーブル１２４内に見出すことが出来ない場合、クエリモジュール１１６は、デフォルトの結果生成機能を適用し、入力されたクエリを処理することが可能である。一実装において、機能選択モジュール１３６は、入力されたクエリとクエリ分類テーブル１２４への対応するエントリ入力との間の正確な対応を、マッチングを示すために要求する。
【００５５】
別の実装において、機能選択モジュール１３６は、入力されたクエリとクエリ分類テーブル１２４に記載されたクエリと間のより緩やかなマッチングを許可することが可能である。例えば、機能選択モジュール１３６は、マッチングのための条件を拡大して、入力されたクエリの同義語等を含むことが可能である。
【００５６】
別の緩やかなマッチングの実装において、ユーザの入力クエリが、２つまたはそれ以上の構成要素キー用語を含む場合を考える。例えば、ユーザが「ＣＡＪＵＮ（ケージャン）  ＣＯＵＮＴＲＹ  ＭＵＳＩＣ」という、３つのキーワード「ＣＡＪＵＮ」、「ＣＯＮＴＲＹ」および「ＭＵＳＩＣ」を含むクエリを入力するとする。分類判断モジュール１３０は、選択的に、バックエンド処理の一部として、個々のキーワードに対する分類結果を識別することが可能である。例えば、分類判断モジュール１３０は、ユーザがキー用語「ケージャン」を単独で入力した場合（この場合、単語「ＣＡＪＵＮ」がクエリ全体を構成する）、また、ユーザがキー用語「ＣＡＪＵＮ」を１つまたは複数の他のキーワードと組み合わせて入力した場合、を分析することが可能である。この分析に基づき、分類判断モジュール１３０は、ユーザがキー用語「ＣＡＪＵＮ」を他のキー用語と共に入力する時は、大抵、主題ベースの検索を行っているという結論を出すことが可能である。次に、機能選択モジュール１３６が、分類テーブル１２４内には、完全にそろったクエリ「ＣＡＪＵＮ  ＣＯＵＮＴＲＹ  ＭＵＳＩＣ」に対して正確にマッチングするクエリが無い、と判断すると仮定する。この場合、機能選択モジュール１３６は、一般目的の結果生成機能にデフォルトを設定するよりむしろ、「ＣＡＪＵＮ」または「ＣＯＵＮＴＲＹ  ＭＵＳＩＣ」に割り当てられた分類ステータスを採用することが可能である。
【００５７】
クエリ分類テーブル１２４内で、応用可能な分類を検出すると、機能選択モジュール１３６は、この分類を使用して、１つまたは複数の結果生成機能１２２を選択することが可能である。一般に、１組の結果生成機能１２２は、２つまたはそれ以上の結果生成機能を含みことが可能である。図１は、結果生成機能１２２が結果生成機能Ａ１３８、結果生成機能Ｂ１４０、結果生成機能ｎ１４２などを含むことを示す。上記で説明したように、結果生成モジュール１２２は、異なるパラダイムに基づくクエリ結果の生成に関与する。例えば、第１の結果生成パラダイムは、クエリ結果を順位付けしてタイトルベースのマッチングのエントリを好ましいとすることが可能である。従って、これは、タイトルベースの意図の分類に対する適切な機能である。第２の結果生成パラダイムは、クエリ結果を順位付けして、主題ベースのマッチングのエントリを好ましいとすることが可能である。従って、これは、主題ベースの意図の分類に対する適切な機能である。結果生成機能１２２の１つは、デフォルトの機能として作用することが可能で、クエリ分類テーブル１２４が入力されたクエリに対して確定した結果を提供しない場合、デフォルトとして呼び出されるということを意味する。
【００５８】
次に、選択された結果生成機能は、起動されて特定の意図ベースのパラダイムに従って出力結果を生成する。ユーザ対話モジュール１３４は、選択された結果生成機能の出力をユーザの検討のためにユーザに供給する。
【００５９】
図２は、クエリモジュール１１６の例示の一実装に関する追加の詳細を示す。本実装において、クエリモジュール１１６は、代表的な順位付け機能２０４、２０６および２０８を含む１組の順位付け機能２０２を含む。各順位付け機能（２０４、２０６、．．．２０８）の目的は、特定の順位付けパラダイムに基づき検索結果を順位付けすることである。
【００６０】
クエリモジュール１１６はまた、検索モジュール２１０を含む。検索モジュール２１０の目的は、ユーザにより入力されたクエリに基づき、検索可能ストア１２０を検索することである。検索モジュール２１０は、クエリにマッチングするアイテムを未処理の検索結果ストア２１２に記憶する。一例示の場合、検索モジュール２１０は、マッチング結果を識別するために周知の逆索引のアプローチを使用することが可能である。  
【００６１】
機能選択モジュール１３６は、上記したように、すなわち、クエリ分類テーブル１２４により付与された情報に基づき順位付け機能の１つを選択することにより、作動する。次に選択された順位付け機能が起動されて、未処理の検索結果ストア２１２内の検索結果を特定の順位付けパラダイムに従って順位付けする。そして選択された順位付け機能は、順位付けされた結果を順位付け済み結果ストア２１４に記憶することが可能である。次に、ユーザ対話モジュール１３４が、順位付けされた結果をユーザに提供する。
【００６２】
他の実装では、１つまたは複数の点について図２に示すアプローチを変更することが可能である。例えば、別のアプローチは、検索後順位付けモジュールよりも、１組の検索モジュールを採用することが可能である。検索モジュールは、図２において上述した場合のように、異なる順位付けパラダイムを適用することが可能である。加えて、検索モジュールは、選択的に、検索可能ストア１２０からどの情報を抽出すべきかを決定する際に、異なるアプローチを適用することが可能である（言い換えれば、検索モジュールは、検索可能ストア１２０内のどのエントリがマッチングを構成するかを決定する際に、異なるパラダイムを適用することが可能である）。  
【００６３】
図１の構成要素に関する最後の事項として、システム１００の動作が、オペレーションセンタ１０４の構成要素によって主に行われるものと記載したことに留意されたい。しかし、オペレーションセンタ１０４により実装されるものとして上述した１つまたは複数の機能を、代替としてまたは追加で、装置１０２によるなど、装置によりローカルなレベルで行うことが可能であることに留意すべきである。この特徴を総称的に表現するために、図１は、装置１０２が選択的検索機能性１４４を含むことを示す。例えば、データマイニングを行うオペレーションセンタ１０４の代わりにまたはこれに追加して、システム１００は、分散化されたピアツーピア対話に依存して、ユーザ母集団のクエリ関連の振る舞いにおける特定の傾向に関する情報を収集することが可能である。
【００６４】
Ａ．５．システムの例示的応用
図３から５は、上記で紹介したシナリオ例についてさらに詳しく述べる。本例において、検索クエリ「ＣＯＵＮＴＲＹ  ＭＵＳＩＣ」は、ユーザによるカントリーミュージックのアイテムというテーマについて調べるという意図を反映する、ということを思い起こして頂きたい。一方、検索アイテム「ＣＲＹＩＮＧ」は、タイトルに単語「ＣＲＹＩＮＧ」を有するアイテムを探すというユーザの意図を反映する。これらの２つの分類を受け入れるため、クエリモジュール１１６は、主題ベースのクエリを適切に処理するように調整される第１の結果生成機能と、タイトルベースの問合せを適切に処理するように調整される第２の結果生成機能と、を含む。
【００６５】
図３は、クエリトランザクションログ１２８の簡略化された構造を示す。他のエントリ（図示せず）の中で、クエリトランザクションログ１２８は、クエリ「ＣＯＵＮＴＲＹ  ＭＵＳＩＣ」３０２およびクエリ「ＣＲＹＩＮＧ」３０４を含む。クエリトランザクションログ１２８はまた、ユーザのクエリ関連の振る舞いに関する情報を含む。本例示の場合において、クエリトランザクションログ１２８は、ユーザが購入したアイテムを識別するが、クエリトランザクションログ１２８は、ユーザによりなされた他の種類の選択を記録することが可能である。
【００６６】
図３の特定の場合において、クエリトランザクションログ１２８は、購入するアイテムのコレクション３０６を含み、そのような購入はクエリ「ＣＯＵＮＴＲＹ  ＭＵＳＩＣ」３０２のエントリに対して因果関係を有する。アイテムの本リスト３０６が、クエリ「ＣＯＵＮＴＲＹ  ＭＵＳＩＣ」をタイトルに特徴付ける１つまたは複数のアイテム３０８を含み得ることに留意されたい。アイテムのリスト３０６はまた、クエリ「ＣＯＵＮＴＲＹ  ＭＵＳＩＣ」に対して主題関係のみを有する１つまたは複数のアイテム３１０を含み得る。すなわち、アイテム３１０のこのサブセットは、ユーザがポピュラーなカントリーミュージックのアーティストを特徴付けるアイテムを購入した、という事実を反映するが、これらのアイテムは、必ずしもクエリ「ＣＯＵＮＴＲＹ  ＭＵＳＩＣ」をタイトルに含む必要は無い。
【００６７】
クエリトランザクションログ１２８は、購入するアイテムの別のコレクション３１２を含み、そのような購入はクエリ「ＣＲＹＩＮＧ」３０２のエントリに対して因果関係を有する。アイテムのリスト３１２は、例えば、悲しみに関係する主題等を識別する、クエリ「ＣＲＹＩＮＧ」に対して主題関係を有する１つまたは複数のアイテム３１４を含み得ることに留意されたい。アイテムのリスト３１２はまた、クエリ「ＣＲＹＩＮＧ」を実際それぞれのタイトルに有する、１つまたは複数のアイテム３１６を含むことができる。
【００６８】
アイテムのリスト３０６内の各アイテムは、括弧内の数字を含む。この数字は、ユーザ母集団がクエリ「ＣＯＵＮＴＲＹ  ＭＵＳＩＣ」の入力に応答して購入したアイテムの量を表す。比較的少数のユーザのみが、「ＣＯＵＮＴＲＹ  ＭＵＳＩＣ」をタイトルに有するアイテムを購入し、一方でさらに多くのユーザがカントリーミュージックというテーマに関するアーティストによるアイテムを購入したことに留意されたい。さらに、ユーザは、主に任意の１人のカントリーミュージックのアーティストに興味があるのではなく、結果のアイテムが、周知のカントリーミュージックのアーティスト全般にわたっていることに留意されたい。ここで、クエリ「ＣＲＹＩＮＧ」に関連するアイテムのリスト３１２について考えると、比較的少数のユーザのみが主題の事項として「ＣＲＹＩＮＧ」を特徴付けるアイテムを購入し、一方でさらに多くのユーザが実際に単語「ＣＲＹＩＮＧ」をタイトルに含むアイテムを購入したことに留意されたい。
【００６９】
分類判断モジュール１３０は、クエリトランザクションログ１２８内の情報を処理してクエリ分類テーブル１２４を作成する。図４は、クエリ分類テーブル１２４のサンプルを示す。このテーブルは、他のエントリ（図示せず）から、クエリ「ＣＯＵＮＴＲＹ  ＭＵＳＩＣ」４０２および「ＣＲＹＩＮＧ」４０４を識別する。クエリ分類テーブル１２４は、クエリ「ＣＯＵＮＴＲＹ  ＭＵＳＩＣ」４０２を「主題ベースのクエリ」の分類４０６と関連付け、クエリ「ＣＲＹＩＮＧ」４０４を「タイトルベースのクエリ」の分類４０８と関連付ける。上述のように、クエリ分類モジュール１２４は、代替として、機能を参照する一意的なコードを提供することなどによって、どの結果生成機能を使用してクエリを処理すべきかについてより直接的なガイダンスを提供することが可能である。
【００７０】
図５は、システム１００の動作をユーザの視点から例示する。すなわち、クエリモジュール１１６のユーザ対話モジュール１３４は、潜在的にクライアント側のブラウザ機能と協働し、ユーザインターフェースプレゼンテーション５０２を表すことが可能である。このプレゼンテーション５０２は、ユーザに（例えば、入力ボックス５０４を介して）クエリを入力するよう要請する。本例において、ユーザは、クエリ「ＣＯＵＮＴＲＹ  ＭＵＳＩＣ」を入力した。  
【００７１】
この要点として、機能選択モジュール１３６は、クエリ分類テーブル１２４への参照に基づき、クエリ「ＣＯＵＮＴＲＹ  ＭＵＳＩＣ」がユーザの意図を反映する傾向があると判断して、主題ベースの検索を行う。従って、機能選択モジュール１３６は、主題ベースの順位付け機能５０６を起動する。主題ベースの順位付け機能５０６は、主題ベースの結果アイテムに有利に働くように特定的に調整された順位付けパラダイムを適用する。主題ベースの順位付け機能５０６は、順位付け済み検索結果５０８のセットを作成する。  
【００７２】
ユーザ対話モジュール１３４は、順位付け済み検索結果５０８を別のユーザインターフェースプレゼンテーション５１０で提示する。ユーザインターフェースプレゼンテーション５１０は、順位付けされた順番でアイテムが並ぶ、順位付けされた検索結果のアイテムのリスト５１２を提供する。順位付けされた検索結果は、主題ベースの検索結果アイテムに、例えば、これらのアイテムをまずリスト５１２に表示するなどによって、優先順位を与える。例えば、リスト５１２の最初の部分は、クエリ「ＣＯＵＮＴＲＹ  ＭＵＳＩＣ」をタイトルに有するアイテムが散乱していないことに留意されたい。これは、ユーザが実際にクエリ「ＣＯＵＮＴＲＹＭＵＳＩＣ」をタイトルに有するアイテムを探している可能性が低い（分類判断モジュール１３０が行う分析に基づく）からである。
【００７３】
Ａ．６．例示の処理機能性
図６は、ユーザ装置１０２、オペレーションセンタ１０４、オペレーションセンタ１０４の任意の構成要素などの、図１に示すシステム１００の種々の態様を実装するよう使用されることが可能な例示の処理機能性６００を示す。処理機能性６００は、任意の１つまたは複数の、パーソナルコンピュータ、ラップトップコンピュータ、サーバタイプのコンピュータ、読書タイプ装置、携帯型メディアプレーヤ装置、携帯情報端末（ＰＤＡ）装置、携帯電話装置、タブレット型入力装置、任意の種類のウェアラブル装置、ゲーム機、セットトップボックス装置などを、表すことが可能であるが、これに限定されない。検討を容易にするため、処理機能性６００は、以下において特定的に代表的ユーザ装置１０２を実装するものとして記載されるが、上述のように、総称的な処理機能性６００はまた、オペレーションセンタ１０４に配置されることが可能なサーバタイプのコンピュータのアーキテクチャを示す。
【００７４】
このローカルデバイスの文脈において、処理ユニット１０８は、１つまたは複数の、処理要素６０２（ＣＰＵ、ニューラル・ネットワーク等）、ＲＡＭ６０４、ＲＡＭ６０６、媒体要素６０８（ハードドライブ、ＤＶＤドライブ等）、ネットワークインターフェース６１０（電話またはケーブルモデム、ブロードバンド接続機構等）、および入力装置および出力装置と対話するためのＩ／Ｏインターフェース６１２を備えることが可能である。１つまたは複数のバス６１４は、上記の構成要素を一緒に連結する。
【００７５】
出力装置（単数または複数）は、グラフィカルユーザインターフェース１１４を表すプレゼンテーションユニット１１０を含むことが可能である。入力装置（単数または複数）１１２は、任意の１つまたは複数の、キーボード、マウス入力装置、トラックボール入力装置、ジョイスティック入力装置、タッチセンサースクリーンなどを含むことが可能である。
【００７６】
処理機能性６００の任意の応用において、種々の機能が、図６に示す任意の記憶装置ユニットまたは記憶装置ユニットの組合せ内に存在する機械読取可能命令として実装可能であり、プロセッサ６０２は、これらの命令を実行して、所望のデータマイニングおよび／または検索関連動作を形成することが可能である。
【００７７】
Ｂ．例示の手順
図７から９は、図１のシステム１００の動作をフローチャートの形式で記載する。検討を容易にするために、特定の動作が、特定の順番で行われる区別されたブロックを構成するものとして記載される。そのような実装は、例示的であり、限定するためのものではない。本明細書に記載される特定のブロックは、一緒にグループ化され、単一の動作で行われることが可能であり、また、特定のブロックは、本開示に記載される例で採用される順番とは異なる順番で行われることが可能である。フローチャートに示すブロックは、ソフトウェア、ファームウェア、ハードウェア、手動の処理、またはこれらの要素の組合せにより、実装されることが可能である。
【００７８】
フローチャートに記載される機能は、既にセクションＡにおいて説明されているので、セクションＢでは、  主にそれらの機能の再検討を行う。  
【００７９】
Ｂ．１．クエリ関連の振る舞いのロギング
図７は、システム１００と対話したユーザ母集団からクエリ関連の振る舞いを収集するための、例示の手順７００を示す。手順７００は、単一クエリのユーザ入力に応答して行われる動作を詳細に記載する。点線で示されるループは、この手順７００が、任意のユーザがクエリを入力する度に繰り返すことが可能であることを示す。  
【００８０】
ブロック７０２において、ロギングモジュール１２６は、ユーザがクエリを入力したことを検出する。ロギングモジュール１２６は、クエリモジュール１１６によりそのようなイベントが通知されたことに応答してクエリの入力を検出することが可能である。クエリの検出に応答して、ロギングモジュール１２６は、クエリトランザクションログ１２８にクエリを記憶する。  
【００８１】
ブロック７０４において、クエリモジュール１０６は、ストア１２０を検索し、かつ１つまたは複数のマッチングする結果を含有するリストを提供することにより、ユーザのクエリに応答する。クエリモジュール１０６は、選択されたクエリ生成機能を適用して、タスクまたはデフォルトのクエリ生成機能を実行することが可能である。
【００８２】
ブロック７０６において、ロギングモジュール１２６は、ブロック７０４で生成された結果へのユーザの応答を検出することにより、再度動作に入る。例えば、ユーザは、クエリ結果を受け取った後、結果内の１つまたは複数のアイテム上でクリックする、１つまたは複数のアイテムをショッピングカートに追加する、１つまたは複数のアイテムを購入するなどを含む任意の数の選択を行うことが可能である。ロギングモジュール１２６は、ユーザの行為をクエリトランザクションログ１２８に記憶し、この振る舞いをトランザクションログ１２８内の適切なクエリにリンクする。ロギングモジュール１２６はまた、行為が発生したときの時間に関する情報、行為を行ったユーザのアイデンティティを記憶することが可能である。
【００８３】
Ｂ．２．ユーザクエリ関連の振る舞いの分析
図８は、クエリトランザクションログ１２８内の情報を分析してクエリ入力時の考えられるユーザの意図を分類するための手順８００を示す。  
【００８４】
ブロック８０２において、分類判断モジュール１３０は、クエリトランザクションログ１２８にアクセスする。このタスクは、周期的にまたは任意の他のトリガイベントに応答して行うことが可能である。
【００８５】
ブロック８０４において、分類判断モジュール１３０は、クエリトランザクションログ１２８内で識別される各クエリに対する分類を判断する。または、分類判断モジュール１３０は、クエリトランザクションログ１２８内で識別される一般的なクエリのみに対する分類を選択的に判断することが可能である。
【００８６】
ブロック８０６において、分類判断モジュール１３０は、その分類の結果をクエリ分類テーブル１２４に記憶する。
【００８７】
Ｂ．３．所定の分類を適用して個々のクエリに対する結果を生成する
最後に、図９は、個々のユーザにより入力される特定のクエリを処理するための手順９００を示し、（図８の手順８００において）データマイニングモジュール１１８により得ることができる知見を活用する。
【００８８】
ブロック９０２において、クエリモジュール１１６ユーザ対話モジュール１３４は、ユーザのクエリを受け取る。
【００８９】
ブロック９０４において、機能選択モジュール１３６は、クエリ分類テーブル１２４にアクセスして、入力されたクエリが所定の意図の分類と関連があるかどうかを判断する。関連がある場合、機能選択モジュール１３６は、識別された意図の分類にクエリ結果を提供するように特定的に設計された、対応する結果生成機能を起動する。  
【００９０】
ブロック９０６において、選択された結果生成機能は、出力結果の順位付けされたリストを生成して、ユーザ対話モジュール１３４を介してユーザに提示する。  
【００９１】
ブロック９０８および９１０は、ブロック９０６の一般的な動作を行う例示の一例を記載する。ブロック９０８において、（図２の）検索モジュール２１０は、未処理の検索結果を生成する。ブロック９１０において、選択された順位付け機能は、これらの未処理の検索結果に対して動作し、特定的に調整された順位付けパラダイムに従ってこれらを並べる。
【００９２】
本明細書に記載される追加の実施形態は、例として以下を含むが、これに限定されない。
【００９３】
１つまたは複数のコンピュータ装置が１つまたは複数のプロセッサおよびメモリを含む。該メモリは、１つまたは複数のプロセッサによって実行される時にコンピュータ化された方法を実行してユーザの意図に基づきクエリ結果を提供する、コンピュータ実行可能命令を記憶する。該方法は、個々のユーザのクエリを受け取るステップと、分類マッピング情報を使用してクエリに関連する結果生成機能を識別するステップであって、分類マッピング情報が、多数のユーザの従前のクエリ関連の振る舞いの分析に基づき、クエリを異なる結果生成機能にマッピングするステップと、識別された結果生成機能を使用してユーザのためにクエリ結果を生成するステップと、を含む。
【００９４】
１つまたは複数のコンピュータ装置が１つまたは複数のプロセッサおよびメモリを含む。該メモリは、１つまたは複数のプロセッサによって実行される時にコンピュータ化された方法を実行してユーザの意図に基づきクエリ結果を生成する際に使用するために分類マッピング情報を作成する、コンピュータ実行可能命令を記憶する。該方法は、クエリを入力時におけるユーザの主な意図を明らかにする、多数のユーザの行為のパターンを識別するステップと、結果生成機能を識別されたパターンと関連付けて、分類結果を提供するステップと、分類結果に基づき、関連する結果生成機能にクエリをマッピングする分類マッピング情報を作成するステップと、を含む。
【００９５】
１つまたは複数のコンピュータ可読媒体が、１つまたは複数のプロセッサにより実行されるときにユーザの意図に基づきクエリ結果を提供するための機能性を実装するためのコンピュータ可読命令を含有する。コンピュータ可読命令は、ユーザのクエリを受け取るよう作動可能なロジック、多数の順位付け機能から選択された順位付け機能に対してユーザのクエリをマッピングするよう作動可能なロジックと、を含み、順位付け機能は、順位付け機能に関連する関連付けされた順位付け方策に従ってユーザのクエリに応答して出力結果を生成し、関連付けされた順位付け方策が決定されて、多数のユーザの従前のクエリ関連の振る舞いに基づき、ユーザのクエリに適用される。
【００９６】
ユーザの意図に基づきクエリ結果を提供する方法であって、該方法は、ユーザによりなされた従前のクエリに関連する、ユーザによってなされる選択を記録するステップと、各従前のクエリに対して、クエリ入力時におけるユーザの主な意図を明らかにするパターンを識別して、複数のパターンを提供するステップと、個々のユーザから特定のクエリを受け取るステップと、ユーザの従前のクエリに関連するパターンに基づき、特定のクエリの入力時における考えられる個々のユーザの意図を識別するステップと、個々のユーザの特定のクエリに応答して、識別された可能性のある意図に対して調整された結果を提供するステップと、を含む。該方法は、考えられる個々のユーザの意図に基づき、多数の結果生成機能から結果生成機能を選択することによって、それにおいて結果生成機能は、検索結果を提供するための異なるそれぞれの方策を適用する、および、選択された結果生成機能を使用して結果を提供することによって、結果を提供するステップをさらに含み得る。該方法は、またさらに、クエリ結果を順位付けするための異なるそれぞれの方策を提供する結果生成機能を起動し得る。
【００９７】
最後に、多数の特徴が、まずこれらの特徴が対処可能である例示の問題を認識することにより、本明細書に記載された。この方法の解釈は、本明細書に特定される方法で他の者が問題を理解および／または明確に表現したという承認を形成するものではない。従来の技術に存在する問題の理解および表現は、本発明の一部として理解されるべきである。さらに、本明細書における１つまたは複数の問題を認識することは、本発明をそれらの問題の解決のみに限定することを示唆しない。言い換えれば、本発明は、本明細書に明確に認識されない追加の必要性にも対処することができる。  
【００９８】
より一般的には、本発明は、構造的特徴および／または方法論的な行動に特有の言語で記載されたが、添付の請求項に定義される本発明が必ずしもこの記載された特有の特徴または行動に限定されないことは理解されるべきである。むしろ、特有の特徴および行動は、請求される発明の実装の例示の形式として開示される。
【図１】
0005584320.tif 000002
【図２】
0005584320.tif 000003
【図３】
0005584320.tif 000004
【図４】
0005584320.tif 000005
【図５】
0005584320.tif 000006
【図６】
0005584320.tif 000007
【図７】
0005584320.tif 000008
【図８】
0005584320.tif 000009
【図９】
0005584320.tif 000010