(57)【要約】【解決手段】  ユーザが所望する文書を識別するシステムが概説される。埋め込み空間内の文書のカタログを識別するデータベースが提供される。前記データベースは、前記埋め込み空間内の文書の各対の間の相違点の所定の尺度に対応する、前記文書の各対の間の距離を識別する。本システムは、前記埋め込み空間の一部である最初の候補空間から、ユーザに向けて、文書の最初の収集物を提示する。本システムは、次に、ユーザによる相対的フィードバックに応答して決定される前記埋め込み空間上の幾何学的制約を用いて、前記候補空間を精緻化する。各繰り返しにおいて、本システムは、ユーザに向けて、当時最新の候補空間から文書の部分集合を識別する。ユーザは、当該識別に基づいて、相対的フィードバックを提供する。一実施形態では、当該文書の部分集合は、前記当時最新の候補空間内の同様の集合の平均的な識別力よりも強い識別力を有する。【選択図】        図９
2017518570.tif 000002
【特許請求の範囲】
【請求項１】
ユーザが所望する文書を識別するための方法であって、
埋め込み空間内の文書のカタログを識別し、前記埋め込み空間内の文書の各対の間の相違点の所定の尺度に対応する、前記文書の各対の間の距離を識別するデータベースを、コンピュータシステムにアクセス可能に、提供する工程と、
コンピュータシステムが、前記ユーザに向けて、前記埋め込み空間内の最初（ｉ＝０）の候補空間から、前記最初の候補空間よりも少ない文書を有する、Ｎ０＞１の候補文書の最初（ｉ＝０）の収集物を識別する工程と、
第１（ｉ＝１）の繰り返しから始まる複数の繰り返しにおけるｉ番目の繰り返し毎に、
（ｉ−１）番目の文書の収集物からｉ番目に選択された文書の部分集合をユーザが選択することに応答して、
コンピュータシステムが、所定の集合的密接の定義に従い、ｉ番目の候補空間内の文書が、（ｉ−１）番目の候補空間内の文書よりも、前記埋め込み空間において、ｉ番目に選択された部分集合内の文書に対して集合的に近くなるように、前記ｉ番目の候補空間を識別するために前記埋め込み空間を幾何学的に制約し、
前記ユーザに向けて、前記ｉ番目の候補空間からＮｉ＞１の候補文書のｉ番目の収集物を識別する工程と、但し、Ｎｉは前記ｉ番目の候補空間内の文書の数より小さい、
前記ユーザに向けて識別された特定の文書の部分集合を前記ユーザが選択することに応答して動作を行う工程と、を備え、
前記所定の集合的密接の定義は、候補文書Ｘが、前記埋め込み空間においてｄ（Ａ，Ｘ）＜ｄ（Ｂ，Ｘ）の場合に、文書Ｂよりも文書Ａにより近いと考えられるように、規定される方法。
【請求項２】
請求項１に記載の方法であって、
前記ユーザに向けて識別された各（ｉ−１）番目の収集物内の文書であるが前記ｉ番目の選択された部分集合内には存在しない文書が、文書のｉ番目の選択されていない部分集合を規定し、
前記所定の集合的密接の定義が、前記埋め込み空間内において、所与の選択されなかった部分集合内の最も近い文書より所与の選択された部分集合内の最も遠い文書に近接している所与の候補空間内の文書の一部分が、前記埋め込み空間内において、前記所与の選択されなかった部分集合内の最も近い文書より前記所与の選択された部分集合内の最も遠い文書に近接している特定の以前の候補空間内の文書の一部分より大きい場合に、前記所与の候補空間内の文書が、前記特定の以前の候補空間内の文書より、前記所与の選択された部分集合内の文書に集合的に近くなるように更に規定されている方法。
【請求項３】
請求項１に記載の方法であって、
前記ユーザに向けて識別された各（ｉ−１）番目の収集物内の文書であるが前記ｉ番目の選択された部分集合内には存在しない文書が、文書のｉ番目の選択されていない部分集合を規定し、
所与の候補空間内の全ての文書Ｙ、及び、前記ｉ番目に選択された部分集合内の文書Ａとｉ番目に選択されなかった部分集合内の文書Ｂの全ての文書の対（Ａ，Ｂ）に亘って、ｄ（Ａ，Ｙ）＜ｄ（Ｂ，Ｙ）となる事例の回数が、
前記特定の以前の候補空間内の全ての文書Ｘ、及び、全ての文書の対（Ａ，Ｂ）に亘って、ｄ（Ａ，Ｘ）＜ｄ（Ｂ，Ｘ）となる事例の回数より小さく、
各回数が、前記所与の候補空間内の文書Ｙの総数と前記特定の以前の候補空間内の文書Ｘの総数の間の何れの差に対しても正規化されている場合に、
前記所与の候補空間内の文書が、前記特定の以前の候補空間内の文書より、所与の選択された部分集合内の文書に対して集合的に近くなるように、前記所定の集合的密接の定義が更に規定されている方法。
【請求項４】
請求項１に記載の方法であって、
前記ユーザに向けて識別された各（ｉ−１）番目の収集物内の文書であるが前記ｉ番目の選択された部分集合内には存在しない文書が、文書のｉ番目の選択されていない部分集合を規定し、
ｉ番目に選択されなかった部分集合内の文書Ｂであって、前記ｉ番目に選択されなかった部分集合内の全ての文書Ｂを平均化したものに対してより、ｉ番目に選択された部分集合内の文書Ａであって、ｉ番目に選択された部分集合内の全ての文書Ａを平均化したものにより近接している所与の候補空間内の文書Ｙの一部分が、
前記ｉ番目に選択されなかった部分集合内の文書Ｂであって、前記ｉ番目に選択されなかった部分集合内の全ての文書Ｂを平均化したものに対してより、前記ｉ番目に選択された部分集合内の文書Ａであって、前記ｉ番目に選択された部分集合内の全ての文書Ａを平均化したものにより近接している特定の以前の候補空間内の文書Ｘの一部分より小さい場合に、
前記所与の候補空間内の文書が、前記特定の以前の候補空間内の文書より、所与の選択された部分集合内の文書に対して集合的に近くなるように、前記所定の集合的密接の定義が更に規定されている方法。
【請求項５】
請求項１に記載の方法であって、
前記ユーザに向けて識別された各（ｉ−１）番目の収集物内の文書であるが前記ｉ番目の選択された部分集合内には存在しない文書が、文書のｉ番目の選択されていない部分集合を規定し、
所与の候補空間内の全ての文書Ｙ、及び、ｉ番目に選択された部分集合内の文書Ａとｉ番目に選択されなかった部分集合内の文書Ｂの全ての文書の対（Ａ，Ｂ）に亘って、ｄ（Ａ，Ｙ）≧ｄ（Ｂ，Ｙ）となる各事例に関連付けられるペナルティの総計が、
特定の以前の候補空間内の全ての文書Ｘ、及び、前記全ての文書の対（Ａ，Ｂ）に亘って、ｄ（Ａ，Ｘ）≧ｄ（Ｂ，Ｘ）となる各事例に関連付けられるペナルティの総計より小さく、
所与の文書Ｗに対して、ｄ（Ａ，Ｗ）≧ｄ（Ｂ，Ｗ）が満足される各事例が、各ペナルティ値と予め関連付けられている場合に、
前記所与の候補空間内の文書が、前記特定の以前の候補空間内の文書より、所与の選択された部分集合内の文書に対して集合的に近くなるように、前記所定の集合的密接の定義が更に規定されている方法。
【請求項６】
請求項１に記載の方法であって、
前記ユーザに向けて識別する工程における文書の各ｉ番目の収集物は、前記ｉ番目の候補空間におけるサイズＮｉの文書の集合の平均的な識別力よりも識別力がある方法。
【請求項７】
請求項１に記載の方法であって、
前記ユーザに向けて識別する工程における文書の各ｉ番目の収集物は、前記ｉ番目の候補空間におけるサイズＮｉの文書の集合の９０％の識別力よりも、より識別力がある方法。
【請求項８】
請求項１に記載の方法であって、
前記ユーザに向けて識別する工程における文書の各ｉ番目の収集物は、前記ｉ番目の候補空間におけるサイズＮｉの文書の他の全ての集合と少なくとも同等の識別力がある方法。
【請求項９】
請求項１に記載の方法であって、
前記ユーザに向けて識別された特定の文書の部分集合を前記ユーザが選択することに応答して動作を行う工程は、
コンピュータシステムが、前記ユーザによって選択された前記特定の部分集合に依存して更なる候補空間を識別するために、当時最新の候補空間を幾何学的に修正する工程と、
前記更なる候補空間からＮｆ＞１の候補文書の更なる収集物を、前記ユーザに向けて識別する工程と、但し、Ｎｆは前記更なる候補空間内の文書の数より小さい、
前記ユーザに向けて識別された文書の更なる部分集合を前記ユーザが選択することに応答して動作を行う工程と、を備える方法。
【請求項１０】
請求項１に記載の方法であって、
前記埋め込み空間が多次元ベクトル空間を備え、前記ベクトル空間における各次元は、それに基づいて文書が互いに相違することのできる異なる基準を規定しており、
前記データベースは、前記多次元ベクトル空間における文書の夫々について位置を識別する方法。
【請求項１１】
請求項１に記載の方法であって、前記埋め込み空間は、距離空間を備える方法。
【請求項１２】
請求項１に記載の方法であって、
前記ユーザに向けて候補文書の最初の収集物を識別する工程は、前記ユーザに向けて、前記候補文書の最初の収集物を、或るレイアウトで提示する工程を備え、前記レイアウトでは、前記最初の収集物内の互いに関係する少なくとも幾つかの候補文書の配置が、前記最初の候補空間内の少なくとも幾つかの候補文書間の距離を示す方法。
【請求項１３】
請求項１に記載の方法であって、
前記ユーザに向けて候補文書のｉ番目の収集物を識別する工程の各繰り返しは、前記ユーザに向けて、前記候補文書のｉ番目の収集物を、或るレイアウトで提示する工程を備え、前記レイアウトでは、前記ｉ番目の収集物内の互いに関係する少なくとも幾つかの候補文書の配置が、前記ｉ番目の候補空間内の少なくとも幾つかの候補文書間の距離を示す方法。
【請求項１４】
請求項１に記載の方法であって、
埋め込み空間内の文書のカタログを識別するデータベースを提供する工程は、
埋め込まれる文書について主題領域を規定する工程と、
前記主題領域内で検討される１以上の第１項目、及び、前記主題領域外で検討される１以上の第２項目を識別する工程と、
前記主題領域内にあると考えられる文書のみを含み、前記第１項目を含むが前記第２項目は含まない訓練データに依存して、コンピュータシステムが埋め込みを学習する工程と、
前記学習した埋め込みに依存して、前記文書のカタログから前記文書を前記埋め込み空間に埋め込む工程と、を備え、
前記文書のカタログ内の全ての文書は、前記主題領域内にあると考えられる方法。
【請求項１５】
請求項１に記載の方法であって、
ｉ番目の候補空間を識別するために埋め込み空間を幾何学的に制約する工程の各繰り返しは、
前記埋め込み空間上の幾何学的制約の各ｉ番目の集合を識別する工程と、
前記埋め込み空間内の少なくとも幾つかの特定の文書の夫々について、
各幾何学的制約の不満足は各ペナルティに事前に関連付けられており、前記幾何学的制約の１からｉ番目の集合内の、前記特定の文書によって満足されない前記幾何学的制約の夫々に関連付けられたペナルティの総計を決定する工程と、
前記埋め込み空間から、前記文書の内、Ｒｉのみを前記ｉ番目の候補空間に含める工程を備え、
前記Ｒｉの文書の夫々のペナルティの総計は、総計を決定する工程において総計が決定された、前記埋め込み空間内の他のどの文書のペナルティの総計を超えることはない方法。
【請求項１６】
請求項１５に記載の方法であって、Ｒｉは全ての繰り返しｉについて固定されている。
【請求項１７】
請求項１５に記載の方法であって、
前記繰り返しの各所与の１つにおいて、Ｒｉは、総計が決定された前記埋め込み空間からの文書の数であり、当該文書のペナルティの総計は、所定の値よりも小さい。
【請求項１８】
請求項１５に記載の方法であって、
前記繰り返しの全てにおいて、全てのペナルティは等しく、それらを合計することでペナルティの総計を決定する方法。
【請求項１９】
請求項１５に記載の方法であって、
前記幾何学的制約の各所与の１つに関連付けられたペナルティは、前記幾何学的に制約する工程が前記所与の幾何学的制約を識別した繰り返し番号に依存する方法。
【請求項２０】
請求項１に記載の方法であって、
前記Ｎ０＞１の候補文書の最初（ｉ＝０）の収集物は、前記最初（ｉ＝０）の候補空間におけるサイズＮ０の文書の集合の平均的な識別力よりも識別力がある方法。
【請求項２１】
請求項１に記載の方法であって、
前記ユーザに向けて、前記最初（ｉ＝０）の候補空間からＮ０＞１の候補文書の最初（ｉ＝０）の収集物を識別する工程は、
前記最初の候補空間内の類似の文書のクラスタを識別する工程と、
前記識別されたクラスタの夫々から少なくとも１つの文書を含めるように前記最初の収集物を選択する工程を備える方法。
【請求項２２】
請求項２１に記載の方法であって、
前記最初の候補空間内の類似の文書のクラスタを識別する工程は、k-medoidsアルゴリズムを用いる工程を備える方法。
【請求項２３】
請求項２１に記載の方法であって、
前記ユーザに向けて候補文書の最初の収集物を識別する工程は、前記クラスタの夫々のmedoidに向けて識別する工程を備える方法。
【請求項２４】
請求項１に記載の方法であって、
ｉ番目の候補空間を識別するために前記埋め込み空間を幾何学的に制約する工程が発生する毎に、前記埋め込み空間上の幾何学的制約の各ｉ番目の集合の識別が行われる方法。
【請求項２５】
請求項２４に記載の方法であって、
前記幾何学的制約の特定の１つは、前記埋め込み空間内の少なくとも２つのアンカー文書の夫々に対する、特定の候補文書の前記埋め込み空間における相対距離に依存して、前記特定の候補文書によって満足されるように規定される方法。
【請求項２６】
請求項２５に記載の方法であって、
前記埋め込み空間において、前記アンカー文書の第１の所定の１つまでの距離が、前記アンカー文書の第２の１つまでの距離よりも短い場合及び当該場合に限り、前記特定の幾何学的制約が前記特定の候補文書によって満足される方法。
【請求項２７】
請求項２４に記載の方法であって、
前記幾何学的制約の各ｊ番目が、前記埋め込み空間における各文書の対（Ａｊ，Ｂｊ）を識別し、ｄ（Ａｊ，Ｘ）＜ｄ（Ｂｊ，Ｘ）の場合に、特定の候補文書Ｘによって満足されるように規定される方法。
【請求項２８】
請求項２４に記載の方法であって、
前記ユーザに向けて識別された各（ｉ−１）番目の収集物内の文書であるが前記ｉ番目の選択された部分集合内には存在しない文書が、文書のｉ番目の選択されていない部分集合を規定し、
前記（ｉ−１）番目の文書の収集物からｉ番目の選択された文書の部分集合をユーザが選択することに応答して、ｉ番目の候補空間を識別するために前記埋め込み空間を幾何学的に制約する工程が発生する毎に、前記埋め込み空間において、特定の候補文書が、文書の前記ｉ番目の選択されていない部分集合内の文書よりも、ｉ番目の選択された部分集合内の文書に近い場合及び当該場合に限り、前記特定の候補文書によって満足されるように規定される制約の追加が行われる方法。
【請求項２９】
請求項２４に記載の方法であって、
前記ユーザに向けて識別された各（ｉ−１）番目の収集物内の文書であるが前記ｉ番目の選択された部分集合内には存在しない文書が、文書のｉ番目の選択されていない部分集合を規定し、
前記（ｉ−１）番目の文書の収集物からｉ番目の選択された文書の部分集合をユーザが選択することに応答して、ｉ番目の候補空間を識別するために前記埋め込み空間を幾何学的に制約する工程が発生する毎に、前記埋め込み空間上に複数の追加された制約を追加し、
ｉ番目の選択された部分集合内の全ての文書Ａ、及び、文書のｉ番目の選択されていない部分集合内の全ての文書Ｂに関してｄ（Ａ，Ｘ）＜ｄ（Ｂ，Ｘ）となる場合及び該場合に限り、前記複数の追加された制約は、特定の候補文書Ｘによって満足される方法。
【請求項３０】
請求項１に記載の方法であって、
ｉ番目の候補空間を識別するために前記埋め込み空間を幾何学的に制約する工程が発生する毎に、前記埋め込み空間内の超平面を更新する工程を備え、前記ｉ番目の候補空間は、前記更新された超平面によって境界が示される前記埋め込み空間の領域である方法。
【請求項３１】
請求項１に記載の方法であって、
ｉ番目の候補空間を識別するために前記埋め込み空間を幾何学的に制約する工程が発生する毎に、前記埋め込み空間内のｍ−超平面を更新する工程を備え、前記ｉ番目の候補空間は、前記更新されたｍ−超平面によって境界が示される前記埋め込み空間の領域である方法。
【請求項３２】
請求項１に記載の方法であって、
ｉ番目の候補空間を識別するために前記埋め込み空間を幾何学的に制約する工程が発生する毎に、機械学習アルゴリズムで前記ユーザによって選択された文書の前記ｉ番目の部分集合を、前記ユーザの所望する目標の仮説を更新するための訓練データとして扱う工程を備える方法。
【請求項３３】
請求項１に記載の方法であって、
ｉ番目の候補空間を識別するために前記埋め込み空間を幾何学的に制約する工程が発生する毎に、前記埋め込み空間上の幾何学的制約の各ｉ番目の集合を識別する工程を備え、更に、
前記幾何学的制約の集合の内、少なくとも２つを識別する制約データベースを維持する工程と、
Ｐ＜Ｑの場合、前記繰り返しのＱ番目の後に、Ｐ番目の候補空間へ戻るというユーザの要求に応答して、前記ユーザに向けて、前記Ｐ番目の候補空間からＮＰ＞１の候補文書の集合を識別する工程を備える方法。
【請求項３４】
請求項３３に記載の方法であって、
Ｐ＝Ｑ−１であり、前記Ｐ番目の候補空間へ戻るという前記ユーザの要求は、戻る動作を示すユーザの行動を含む方法。
【請求項３５】
請求項３３に記載の方法であって、
前記ユーザに向けて前記ｉ番目の候補空間からＮｉ＞１の候補文書の集合を識別する各繰り返しに関して、前記ユーザに向けて幾何学的制約の集合の内の少なくとも２つに対応する前記候補空間のユーザが知覚可能な説明を識別し、前記制約データベースに維持する工程も更に備え、
前記Ｐ番目の候補空間に戻るというユーザの要求は、前記Ｐ番目の候補空間の表現を選択するユーザの行動を含む方法。  
【請求項３６】
請求項３３に記載の方法であって、Ｐ＜Ｑ−１である方法。
【請求項３７】
ユーザが所望する文書を識別するためのシステムであって、
プロセッサと、
前記プロセッサに接続され、ロジックを規定する複数のソフトウェアコードの部分を持続的な方法で記憶するコンピュータ可読媒体と、
埋め込み空間内の文書のカタログを識別し、前記埋め込み空間内の文書の各対で表される製品の間の相違点の所定の尺度に対応する、前記文書の各対の間の距離を識別するデータベースを、コンピュータ可読媒体において持続的な方法で提供する第１モジュールと、
前記ユーザに向けて、前記埋め込み空間内の最初（ｉ＝０）の候補空間から、前記最初の候補空間よりも少ない文書を有する、Ｎ０＞１の候補文書の最初（ｉ＝０）の収集物を識別する第２モジュールと、
第１（ｉ＝１）の繰り返しから始まる複数の繰り返しにおけるｉ番目の繰り返し毎に、
（ｉ−１）番目の文書の収集物からｉ番目に選択された文書の部分集合をユーザが選択することに応答して、
所定の集合的密接の定義に従い、ｉ番目の候補空間内の文書が、（ｉ−１）番目の候補空間内の文書よりも、前記埋め込み空間において、ｉ番目に選択された部分集合内の文書に対して集合的に近くなるように、前記ｉ番目の候補空間を識別するために前記埋め込み空間を幾何学的に制約し、
前記ユーザに向けて、前記ｉ番目の候補空間から、Ｎｉ＞１の候補文書のｉ番目の収集物を識別する第３モジュールと、但し、Ｎｉは前記ｉ番目の候補空間内の文書の数より小さい、
前記ユーザに向けて識別された特定の文書の部分集合を前記ユーザが選択することに応答して動作を行わせる第４モジュールと、を備え、
前記所定の集合的密接の定義は、候補文書Ｘが、前記埋め込み空間においてｄ（Ａ，Ｘ）＜ｄ（Ｂ，Ｘ）の場合に、文書Ｂよりも文書Ａにより近いと考えられるように、規定されるシステム。
【発明の詳細な説明】
【関連出願】
【０００１】
本出願は、ナイジェル・ダフィーによる「VISUAL INTERACTIVE SEARCH」と題する２０１４年９月２３日出願の米国特許出願第１４／４９４３６４号の一部継続出願（代理人事件整理番号：ＧＮＦＮ  ３１２０−２）であり、ナイジェル・ダフィーによる「VISUAL INTERACTIVE SEARCH」と題する２０１４年５月１５日出願の米国仮特許出願第６１／９９４０４８号の米国特許法第１１９条（ｅ）に基づく利益を請求しており、上記両出願の開示内容をここに参照として組み込む。
【背景技術】
【０００２】
本発明は、概して対話型で視覚的な方法によるディジタル文書を検索するためのツールに関する。ディジタル文書は、一例として、写真、製品に関する文書、或いは、ウェブページを含む。例えば、本ツールは、オンライン小売業者を通じて販売中の家具を検索するためにモバイル機器上で使用することができる。
【０００３】
より具体的には、本発明は、関連性フィードバックを用いた文書検索に関する。
【０００４】
現行のコンピュータ検索技術によれば、ユーザに幾つかの問い合わせ（クエリー）を許容して、順序付けられた結果のリストを用いてこれらの問い合わせに応答する。当該問い合わせは、構造化クエリー言語（ＳＱＬ）、自然言語テキスト、発話、或いは、リファレンス画像の形式が可能である。しかしながら、返される結果は、しばしば、ユーザの検索目標を満足しない。そして、ユーザは、より望ましい目標を達成しようとして、問い合わせの精緻化或いは修正を続ける。
【発明の概要】
【０００５】
ここに説明するシステムは、相対的フィードバックを備えた新規な反復検索技術を用いて当該課題を対処する。
【０００６】
概説すれば、検索対象の文書のカタログが、データベース内の埋め込み空間内に組み込まれている。該データベースは、該埋め込み空間内の文書の各対の間の相違点の所定の尺度（measure）に対応する、該文書の各対の間の距離を、識別する。ユーザに、該埋め込み空間内の最初（ｉ＝０）の候補空間からのＮ０＞１の候補文書の最初（ｉ＝０）の収集物が提示される。尚、該最初の収集物は、該最初の候補空間より少ない文書を備える。該最初の候補空間は、テキスト、口頭、或いは、例えば、見本画像を介した視覚による、最初の検索問い合わせに基づいて設置される。そして、第１（ｉ＝１）の繰り返しから始まる各ｉ番目の繰り返しにおいて、ユーザは、当時最新の文書の収集物（つまり、（ｉ−１）番目の文書の収集物）から該文書のｉ番目に選択された一部を選択し、該選択に応答して、システムは、ｉ番目の候補空間内の文書が、ｉ番目に選択された一部の文書に対して、該埋め込み空間内において、（ｉ−１）番目の候補空間内の文書より、集合的に近接するように、ｉ番目の候補空間を識別するために該埋め込み空間を、幾何学的に制約する。該システムは、該ユーザに、ｉ番目の候補空間からのＮｉ＞１の候補文書のｉ番目の収集物を提示し、当該処理が繰り返され、次の繰り返しにおいて、該ユーザは、該ユーザに提示された当時最新の収集物から文書の新たな一部を選択する。最終的には、該ユーザは、当時最新の収集物内の１以上に文書に満足し、該システムは、それに応じて、当該文書により動作を行う。該方法により、該ユーザは、意図する検索目標をより正確に符号化するために、対話形式で検索を精緻化することができる。
【０００７】
上記の本発明の概要は、本発明の幾つかの側面の基本的な理解を提供するために提供された。当該概要は、本発明の主要な或いは重要な要素を識別すること、或いは、本発明の技術的範囲を画定することを意図したものではない。その唯一の目的は、後述するより詳細な記載の前置きとして、本発明の幾つかの概念を簡単化して紹介するためのものである。本発明の特定の側面は、請求項、明細書、及び、図面で記述される。
【図面の簡単な説明】
【０００８】
本発明は、本発明の具体的な実施形態に関して、以下の図面を参照して説明される。
【０００９】
【図１】本発明の幾つかの側面が実施された実施形態の一例を示す図である。
【００１０】
【図２】本発明の幾つかの側面を実施するために使用できるコンピュータシステムの簡略化されたブロック図である。
【００１１】
【図３】２次元の埋め込み空間内に組み込まれた文書を示す図である。
【図４】２次元の埋め込み空間内に組み込まれた文書を示す図である。
【図５】２次元の埋め込み空間内に組み込まれた文書を示す図である。
【図６】２次元の埋め込み空間内に組み込まれた文書を示す図である。
【図７】２次元の埋め込み空間内に組み込まれた文書を示す図である。
【００１２】
【図８】本発明に係るシステムの実施形態の種々の構成要素を示すブロック図である。
【００１３】
【図９】本発明に係るシステムが処理する種々の論理的段階を示すフローチャートである。
【００１４】
【図１０Ａ】２次元の埋め込み空間内に組み込まれた文書を示す図である。
【図１０Ｂ】レイアウト空間内の図１０Ａからの或る文書を示す図である。
【００１５】
【図１１】靴の検索を可能にする一実施形態を示す図である。
【００１６】
【図１２】物質的な製品を購入するために使用される本発明の一側面に係る検索方法を示すフローチャートである。
【００１７】
【図１３】ディジタル製品を購入するために使用される本発明の一側面に係る検索方法を示すフローチャートである。
【００１８】
【図１４】物質的な製品の生産に用いられるディジタル・コンテンツを識別するために使用される本発明の一側面に係る検索方法を示すフローチャートである。
【００１９】
【図１５】共有するためのコンテンツを識別するために使用される本発明の一側面に係る検索方法を示すフローチャートである。
【００２０】
【図１６】図１８の実施形態におけるモバイル機器とサーバ間を通るメッセージを示す図である。
【００２１】
【図１７】一実施形態における制約データベースの内容を示す図である。
【００２２】
【図１８】本発明に係るシステムのモバイル機器の実施形態の種々の構成要素を示すブロック図である。
【００２３】
【図１９】主題領域のために埋め込みが学習される一実施形態の該当箇所を示す図である。
【発明を実施するための形態】
【００２４】
以下の説明は、当業者が本発明を作製し、使用できるように提示され、特定の応用とその要件との関連で提供される。開示される実施形態の種々の変形は、当該当業者にとって容易に明白であり、そこに規定される一般的な原理は、本発明の技術思想及び技術的範囲から逸脱することなく他の応用及び実施形態に対して適用可能である。よって、本発明は、開示される実施形態に限定されることを意図するものではなく、ここに開示する原理及び特徴と整合する最も広い技術的範囲が許容される。
【００２５】
本発明の実施形態において、システムは、幾つかの側面を有することができ、異なる実施形態は、それらの側面の全てを備える必要はない：１）最初の問い合わせを生成するモジュール、２）該最初の問い合わせを満足する一連の候補結果を取得するモジュール、３）候補結果間の距離或いは類似性を決定するモジュール、或いは、ベクトル空間に候補結果を埋め込むモジュール、４）候補結果の識別力のある集合を補助選択（sub-select）するモジュール、５）２次元内に候補結果を配置するモジュール、６）候補結果に関するユーザ入力を取得するモジュール、７）３の埋め込みまたは距離の尺度（measure）に関する幾何学的或いは距離の制約として符号化された該ユーザ入力に係る情報を組み込むために検索問い合わせを精緻化するモジュール、８）最初の問い合わせとユーザ入力から蓄積された該幾何学的或いは距離の制約を満足する一連の候補結果を繰り返し取得するモジュール。
【００２６】
図８は、本発明に係るシステムの実施形態の種々の構成要素を示すブロック図である。該図は、埋め込みモジュール８２０を含む。埋め込みモジュール８２０は、埋め込み空間内へのソース文書の埋め込みを計算し、該文書の識別に関連して、文書カタログデータベース８１６内に埋め込み情報を書き込む。ユーザ相互作用モジュール８２２は、問い合わせ及び問い合わせ精緻化入力（例えば、関連性のあるフィードバック（relevance feedback））をユーザから受け取り、それらを問い合わせ処理モジュール８２４に提供する。一実施形態では、ユーザ相互作用モジュール８２２は、コンピュータ端末を含み、他の実施形態では、ユーザ相互作用モジュール８２２は、システムが外部のコンピュータ端末とそれを介して通信を行う特定のネットワーク接続部材だけを備える。問い合わせ処理モジュール８２４は、該問い合わせを、埋め込み空間上の幾何学的制約として解釈し、該幾何学的制約を満足する一連の候補文書を作り上げるために該カタログを狭めるか、さもなければ修正する。これらは、候補空間データベース８２６内に書き込まれる。ここで使用される候補空間は埋め込み空間でもあり、例えば、カタログ８１６の埋め込み空間の一部を構成してもよい。幾つかの実施形態では、問い合わせ処理モジュールは、また、埋め込み空間内で該候補文書の再埋め込みを実行してもよい。そして、識別力選択モジュール８２８は、候補空間８２６から識別力のある一連の文書を選択し、それらをユーザ相互作用モジュール８２２を介してユーザに提示する。そして、ユーザ相互作用モジュール８２２は、ユーザから更に精緻化された問い合わせを受け取るのもよい。尚、精緻化された問い合わせは、上述のように取り扱われる。或いは、ユーザ相互作用モジュール８２２は、ユーザのコミット（確約）表示を受け取るのもよい。この場合、システムは、ユーザの選択した文書に関する或る動作８３０、例えば、ユーザに対して該文書を開く、更なる検索の精緻化を行う、ユーザの選択した文書により表された製品の注文として該文書を処理する、ユーザの選択した文書により表されたディジタル製品の配送の注文として該文書を処理する、ユーザの選択した文書により表された製品を製造或いは配達されるための注文として該文書を処理する、或いは、ユーザの選択した文書により表されたディジタル・コンテンツを他人と共有するための要求として該文書を処理する等の動作を行う。
【００２７】
ここで留意すべきは、幾つかの実施形態では、ユーザの精緻化入力は、候補空間上の更なる幾何学的制約を要求しなくてもよく、寧ろ、ユーザに提示するために現行の候補空間８２６から異なる識別力のある一連の文書の選択だけを伴ってもよい点である。また、種々の実施形態では、候補空間データベースは、別個のデータベースとして導入されていなくてもよく、寧ろ、文書カタログデータベース８１６と種々の方法で結合されていてもよい。また、幾つかの実施形態では、候補空間は、物理的より寧ろ含まれていてもよい。
【００２８】
図９は、本発明に係るシステムが処理する種々のロジック段階を示すフローチャートである。最初に、ステップ９１０において、ディジタル文書（本開示で使用されるものは、画像、テキスト、ウェブページ、カタログ記入、及び、文書の部分等が含まれる）のカタログが埋め込み空間に埋め込まれ、データベース内に保存される。該文書のグループは、本開示では「カタログ」と呼ばれるが、該用語の使用は、該文書のグループが、小売店が提供するタイプのカタログに掲載されているかもしれない文書のグループに限定することを意図するものではない。該データベース内では、距離は、埋め込み空間内の文書の各対の間で識別され、当該文書の各対の間の相違点の所定の尺度（measure）に対応している。ステップ９１２において、最初の問い合わせが、該問い合わせ結果を満足する文書の最初の候補空間を生成するために、随意的に処理される。該最初の問い合わせは、例えば、通常のテキストによる問い合わせであってもよい。該最初の候補空間は、該文書のカタログの全範囲内にあり、随意的に、該全範囲よりは小さい。ステップ９１３において、ディジタル文書の最初の収集物が、該最初の候補空間から抽出される。該文書の最初の収集物は、該最初の候補空間の部分集合である。（本開示で使用される用語「部分集合」は、「適切な」部分集合のみを、そのように呼ぶ。）  以下の反復検索処理の便宜的な記載において、該最初の候補空間は、時々、“ｉ＝０”候補空間と呼ばれる場合がある。同様に、該文書の最初の収集物は、時々、“ｉ＝０”収集物と呼ばれる場合がある。一実施形態では、該文書の最初の収集物は、該カタログの識別力のある部分集合として選択されるが、別の実施形態では、該文書の最初の収集物は、識別力がない。ステップ９１４において、該文書の最初の収集物が、ユーザに向けて識別される。一実施形態では、該処理は、該最初の収集物内の文書の説明を、ユーザに対して可視的に表示することを含む場合がある。
【００２９】
ステップ９１５において、反復検索処理が開始される。本開示では、説明の便宜上、繰り返しは、繰り返し１から始まる番号が連続的に付され、一般的に、各繰り返しは、繰り返し番号「ｉ」で表される。時折、０番目の繰り返しに言及する場合があるが、それは、“ｉ＝０”候補空間及び“ｉ＝０”文書の収集物を参照している。
【００３０】
ｉ番目の繰り返しの開始前、ユーザには、前の繰り返し（ｉ−１）からの文書の収集物が提示される。ｉ＝１の場合、該文書の収集物は、ステップ９１４からの該文書の最初（ｉ＝０）の収集物である。ｉ＞１の場合、該文書の収集物は、前の繰り返しのステップ９２３でユーザに提示された（ｉ−１）番目の文書の収集物である。
【００３１】
ｉ番目の繰り返しの開始時に、ステップ９１６において、ユーザは、（ｉ−１）番目の文書の収集物内の文書に関して相対的フィードバックを提供する。好ましくは、該相対的フィードバックは、（ｉ−１）番目の収集物から該文書の部分集合をユーザが選択するという形をとる。但し、文書の選択は、ユーザがその文書が、検索目標に対して、（ｉ−１）番目の収集物から選択しなかった文書より、関連性があると考えているということを示唆する。ｉ番目の繰り返しにおいて選択された部分集合は、本開示では、ｉ番目の選択部分集合と称され、選択されなかった（ｉ−１）番目の収集物から文書は、時々、集合的に、ｉ番目の非選択部分集合と称される。
【００３２】
ステップ９１８において、本開示の他の箇所で説明される方法で、一連の幾何学的制約を、該相対的フィードバックから抽出する。ｉ番目の繰り返しで抽出された該一連の幾何学的制約は、ｉ番目の一連の幾何学的制約と称される。
【００３３】
ステップ９２０において、該ｉ番目の一連の幾何学的制約は、ｉ番目の候補空間を形成するために、該埋め込み空間に適用される。そして、ステップ９２２において、ｉ番目の候補文書の収集物が、該ｉ番目の候補空間内の文書の部分集合として選択される。一実施形態では、該ｉ番目の文書の収集物は、該ｉ番目の候補空間内の識別力のある部分集合として選択されるが、別の実施形態では、該ｉ番目の文書の収集物は、識別力がない。ステップ９２３において、該ｉ番目の文書の収集物が、任意の更なる精緻化のために、ユーザに向けて提示される。ステップ９２４において、ユーザが候補結果の一つに満足した場合、ユーザはその結果に対するコミットを表示する。ユーザ入力が更なる精緻化を示す場合は、本ロジックは、検索ループの次の繰り返しのために、ステップ９１５に戻る。そうでない場合、ステップ９２６において、システムは、ユーザが選択した文書に関する動作を行う。
【００３４】
ここで留意すべきは、少なくともステップ９１０，９１２，９１４は任意の順で起こり得る点である。一実施形態では、ステップ９１０が、バックグラウンドで、その余のステップとは分離して連続的に発生し、そして、その余のステップとは非同期に、埋め込み空間内の文書カタログを更新する。
【００３５】
一般的に言って、図９のロジックは、この中の全てのシーケンス及びフローチャートと同様、コンピュータシステムにアクセス可能なメモリに格納されたコンピュータプログラムを用いてプログラムされた該プロセッサを用いて実施可能であり、また、該プロセッサにより、フィールドプログラマブル集積回路を含む専用ロジックハードウェアにより、或いは、専用ロジックハードウェアとコンピュータプログラムの組み合わせにより実行可能である。該フローチャートの各ブロック、或いは、ロジックシーケンスの各段階は、ハードウェア或いはソフトウェアによって実施可能なロジックが、１以上のコンピュータシステム上で実行される１以上の演算処理を実施することを記述している。一実施形態では、該フローチャートの各ブロック、或いは、ロジックシーケンスの各段階は、ソフトウェアの個々のモジュールの機能を図解または記述している。別の実施形態では、該ステップのロジックは、２以上のモジュールに亘って分配されたソフトウェア・コード・ルーチンにより実行される。更に、本開示で使用される用語として、“モジュール”は、１以上の“サブモジュール”を含むことができ、該サブモジュール自体は、本開示では、“モジュール”を構成するものと見做される。本開示の全てのフローチャート及びロジックシーケンスと同様、該ステップの多くが、達成される機能に影響することなく、結合され、並列に実行され、或いは、別の順序で実行され得ることが分かる。幾つかのケースでは、該ステップの再配置が、或る別の変化が同様に生じる場合に限り、同じ結果を達成し得ることを、読者は分かるであろう。他のケースでは、該ステップの再配置が、或る条件が満たされる場合に限り、同じ結果を達成し得ることを、読者は分かるであろう。更に、本開示のフローチャート及びロジックシーケンスは、本発明の理解に役に立つ側面のみを表示していると分かる。また、特定の実施形態では、その実施形態のための他の機能を達成するための種々の追加的なステップが、開示されたステップの前、後、或いは間に実行し得ると理解できる。
【００３６】
幾つかの実施形態では、新規或いは更新された制約の開発或いは保守がモバイル機器上で実行され、埋め込み空間内の文書カタログは、Ｗｉ−Ｆｉ（無線ＬＡＮ）または携帯電話データリンクまたはその両者を含むネットワークによって該モバイル機器から分離したサーバ上に維持される。該全体的な配置は、（本開示の他の箇所で記載するその変形例を伴い）図９のステップを依然として実行するが、該配置は、該２つのノード間における特有の極めて有利な機能の配分を具体化する。特に、本開示の他の箇所で指摘されているように、サーバではなく、電話やタブレット等のモバイル機器上で、制約管理の実行を可能にするには、該制約を維持し更新するのに必要なメモリ及び演算リソースは、十分に最小限である。
【００３７】
図１８は、本発明に係るシステムの斯かるモバイル機器の実施形態の種々の構成要素を示すブロック図である。当該実施形態では、サーバ１８１０は、そこへアクセス可能に、埋め込み空間に予め組み込まれた文書カタログ１８１６を有する。サーバ１８１０は、また、文書カタログ１８１６へのアクセスを有する候補空間識別モジュール１８２４を含む。該候補空間識別モジュールは、最初の問い合わせ、及び、当時最新の一連の制約を、文書カタログ１８１６内の文書に対して適用することよって、検索の各繰り返しにおいて候補空間を決定する。結果として生じた候補空間は、一時的に、候補空間データベース１８２６内に保存される。或る実施形態では、該候補空間データベースは、現実に存在する文書ではなく、文書カタログ１８１６内の文書に対するポインターを含む。サーバ１８１０は、また、識別力のある選択モジュール１８２８を随意的に含む。該識別力のある選択モジュール１８２８は、モバイル機器１８１２に送信するための候補空間１８２６からの識別力のある文書の収集物を選択する。
【００３８】
モバイル機器１８１２は、ユーザ相互作用モジュール１８２２を含み、該ユーザ相互作用モジュール１８２２は、各繰り返しにおいてユーザに対して文書の収集物を提示し、該収集物に関するユーザのフィードバックを受け取る。ユーザ相互作用モジュール１８２２は、該ユーザのフィードバックを、制約データベース１８３４の中身を管理する制約管理モジュール１８３２に転送する。ユーザ相互作用モジュール１８２２がユーザのコミット（確約）表示を受け取った場合は、ユーザ相互作用モジュール１８２２は、図８に関連して本開示の他の箇所で説明した動作等のユーザが選択した文書に関する或る動作を行う動作モジュール１８３０に通知する。
【００３９】
図１７は、一実施形態における制約データベース１８３４の内容を示す図である。制約データベース１８３４は、ラストイン・ファーストアウト・スタックを含み、該ラストイン・ファーストアウト・スタック内の各レベルは、検索の夫々の繰り返しに対応している。各ｉ番目のレベルは、ユーザに提示された文書の収集物を見ることに応答したフィードバックのユーザのｉ番目の繰り返しから結論として生じた幾何学的制約を識別するための十分な情報を格納する。一実施形態では、検索の各繰り返しに対して効力のある全ての制約は、その繰り返し用のスタック・エントリーに記述されている。制約が累積的である別の実施形態では、各繰り返しで加えられた一連の制約だけが、その繰り返し用のスタック・エントリーに記述され、そのスタック・エントリーに適用可能な全ての他の制約は、その前の繰り返しに対応するスタック・エントリー内にそれらが存在することにより含まれている。一般的に言えば、各スタック・エントリーは、対応する繰り返しにおいて適用可能な一連の制約を“識別”する。
【００４０】
図１７の実施形態では、各ｉ番目の繰り返し用のスタック・エントリーは、２つのフィールドのみを備え、１つ目のフィールド１７１０は、ユーザに提示された文書の収集物からユーザが選択したｉ番目の繰り返しの文書の全てを識別し、２つ目のフィールド１７１２は、ｉ番目の繰り返しでユーザに提示されたが、ユーザが選択しなかった文書の全てを識別する。第１のフィールド１７１０で識別される文書は、本開示において時々、文書のｉ番目の選択部分集合と称され、第２のフィールド１７１２で識別される文書は、本開示において時々、ユーザが文書の収集物から選んだ文書のｉ番目の非選択部分集合と称される。該ｉ番目の選択部分集合のユーザ選択は、選択した文書の方が、該ｉ番目の非選択部分集合内の文書より、目標に対してより関連性があると、ユーザが考えていることを示唆している。
【００４１】
図１７の実施形態では、図解を明瞭にするために、各繰り返しにおいて、３つの文書だけがユーザに提示され、そして、ユーザは、それらの中の１つだけを選択する場合を想定する。繰り返し１では、文書Ａ，Ｂ，Ｃがユーザに提示され、ユーザは文書Ａを選択した。繰り返し２では、文書Ｄ，Ｅ，Ｆがユーザに提示され、ユーザは文書Ｄを選択した。繰り返し３では、文書Ｇ，Ｈ，Ｉがユーザに提示され、ユーザは文書Ｇを選択した。繰り返し４では、文書Ｊ，Ｋ，Ｌがユーザに提示され、ユーザは文書Ｊを選択した。システムは、該スタックの対応するレベル内で識別された文書の各対に対して、個別の幾何学的制約を規定するために、各エントリーを解釈する。但し、該対の一方の文書は、第１のフィールド１７１０内で識別され、該対の他方の文書は、第２のフィールド１７１２内で識別される。よって、該スタックのレベル１は、対（Ａ，Ｂ）を用いて１つの制約を規定し、対（Ａ，Ｃ）を用いて別の制約を規定する。該スタックのレベル２は、対（Ｄ，Ｅ）を用いて１つの制約を規定し、対（Ｄ，Ｆ）を用いて別の制約を規定する。以下、同様である。実際の制約は、該制約を満足するために、候補文書Ｘが、埋め込み空間内において、該対の第２文書に対するより、該対の第１文書に対して、より近接しなければならないというものである。よって、該スタックのレベル１は、候補文書Ｘは、埋め込み空間内において、文書Ｂに対するより、文書Ａに対して、より近接しなければならず、更に、埋め込み空間内において、文書Ｃに対するより、文書Ａに対して、より近接しなければならないことを規定する。当該制約は、本議論のために、以下のように簡潔化される。
ｄ（Ｘ，Ａ）＜ｄ（Ｘ，Ｃ）且つｄ（Ｘ，Ａ）＜ｄ（Ｘ，Ｂ）、
但し、‘ｄ’は埋め込み空間内における距離を意味する。同様に、該スタックのレベル２は、候補文書Ｘは、埋め込み空間内において、文書Ｅに対するより、文書Ｄに対して、より近接しなければならず、更に、埋め込み空間内において、文書Ｆに対するより、文書Ｄに対して、より近接しなければならないことを規定する。当該制約は、本議論のために、以下のように簡潔化される。
ｄ（Ｘ，Ｄ）＜ｄ（Ｘ，Ｆ）且つｄ（Ｘ，Ｄ）＜ｄ（Ｘ，Ｅ）、
以下、同様である。第１のフィールド１７１０が、繰り返しｉにおいてＰｉ個の文書を識別し、第２のフィールド１７１２が、繰り返しｉにおいてＱｉ個の文書を識別した場合、各繰り返しｉの内容によって、全部でＰｉ×Ｑｉ個の制約が、第１のフィールド１７１０内の文書と第２のフィールド１７１２内の文書の各組み合わせに対して１つずつ、規定されることが分かる。各繰り返しにおいて追加される制約を表現する別の方法が利用できることは、別の実施形態において分かるであろう。
【００４２】
図１６は、図１８の実施形態におけるモバイル機器とサーバ間を通るメッセージの主要なタイプを示す図である。該実施形態では、モバイル機器１８１２は、サーバ１８１０に対してクライアントの役割を果たす。モバイル機器１８１２は、ユーザとの相互作用を管理し、制約データベース１８３４内の制約の更新及び維持を行う。サーバ１８１０は、カタログを維持するが、ユーザの検索に係る状態は保持しない（尚、サーバ１８１０は、該状態を後のオフライン処理のために記録してもよい。）
【００４３】
最初に、ボックス１６１０において、モバイル機器１８１２は、ユーザからユーザ相互作用モジュール１８２２を介して、最初の問い合わせを受け取る。メッセージ１６１２により、モバイル機器１８１２は、サーバ１８１０に該最初の問い合わせを転送する。ボックス１６１４において、サーバ１８１０内の候補空間識別モジュール１８２４が、最初の候補空間を決定するために、該問い合わせを文書収集物１８１６に適用する。ボックス１６１６において、サーバ１８１０内の識別力のある選択モジュール１８２８が、当時最新の候補空間から識別力のある文書の収集物を決定する。但し、別の実施形態では、ボックス１６１６で選択された収集物が識別力のある必要は必ずしもない。メッセージ１６１８により、サーバ１８１０は該選択された収集物を、クライアントのモバイル機器１８１２に戻し、ボックス１６１４及び１６１６でサーバ１８１０が使用した制約または問い合わせを廃棄する。メッセージ１６１８は、ユーザに対する提示及び制約の維持に必要な全ての情報、例えば、文書画像、文書に関するメタ・データ、及び、埋め込み空間内でのそれらの埋め込みの指示等を含む。ボックス１６２０において、モバイル機器１８１２は、該収集物を、例えば、各文書の画像を表示することにより、ユーザに提示する。ボックス１６２２において、モバイル機器１８１２は、ユーザから相対的フィードバックを、ボックス１６２０においてユーザに提示された文書の１つ以上をユーザが選択するという形で、受け取る。ボックス１６２４において、制約管理モジュール１８３２は、該ユーザのフィードバックに基づいて新たな幾何学的制約を規定し、ボックス１６２６において、制約管理モジュール１８３２は、該新たな制約を用いて制約データベース１８３４を更新する。次に、メッセージ１６２８により、モバイル機器１８１２は、当時最新の一連の制約を、ボックス１６１０からの最初の問い合わせと共に、（検索状態に関する全ての関連する情報を含む）制約データベース１８３４から該サーバに送信する。処理はループしてボックス１６１４に戻り、サーバ１８１０が、次に候補空間を抽出するために、最初の問い合わせと当時最新の一連の幾何学的制約を文書収集物１８１６に適用する。
【００４４】
以上のように、サーバ１８１０は、所与のユーザの検索に関してステートレス（クライアントのアプリケーションの状態を管理しないサーバ）である。これは、幾つかの利点がある。１）サーバに対する負荷が軽減される。２）問い合わせの相互作用の各繰り返しを異なるサーバに移行できるので、サーバを追加するだけで、拡張が簡単にできる。３）サーバがステートレスであるため、システムはより頑強となり、例えば、サーバが機能しなくても、状態はモバイル機器１８１２上で保持される。更に、制約データベース１８３４内に保存された制約は、現在及び以前の全ての繰り返しの間、ユーザのフィードバックを完全に符号化しているので、該制約は、最小限の記憶装置と管理を必要とするだけである。
【００４５】
上述の如く、メッセージ１６１８は文書画像を含む。これらは通常は大きくないが、クライアント１８１２上でカタログ項目を保存する多くのキャッシング・スキームが実行されるということもあり得る。該キャッシング・スキームは、人気のある項目、或いは、人口統計情報または検索履歴に基づくユーザが興味を示すと予測される項目をキャッシュする方法を含む。また、項目は、後の検索の繰り返しにおいて、如何なる項目が、提示される必要があり得るかを予測することにより、クライアント１８１２上に、先取りされることもあり得る。
［ディジタル文書の埋め込み］
【００４６】
本開示で使用される、埋め込みモジュール８２０によって、及び、ステップ９１０において、ディジタル文書が埋め込まれる“埋め込み空間”は、文書がその内部で示される幾何学的空間である。一実施形態では、該埋め込み空間はベクトル空間であり、該ベクトル空間では、文書の特徴は、原点に対する相対的なベクトル空間内の文書の“位置”を規定する。該位置は、典型的には、原点から該文書の位置に向かうベクトルとして示され、該空間は、ベクトル内の座標の数に基づく次元の数を有する。ベクトル空間は、ベクトルと、それらのベクトル上で実行され得る操作を取り扱う。別の実施形態では、該埋め込み空間は距離（メトリック）空間であり、該距離空間は、位置、次元、或いは、原点という概念を有しない。距離空間における文書間の距離は、特定の原点に対して相対的ではなく、相互に相対的に維持される。距離空間は、対象間の距離と結合した対象と、それらの対象上で実行され得る操作を取り扱う。現在の議論を目的として、これらの対象は、ベクトル空間及び距離空間上で動作する有効なアルゴリズムが多く存在しているという点で、有意義である。例えば、距離木（メトリック・ツリー）が、相互に“近接”する対象を即座に識別するのに利用できる。以下の議論では、我々は、対象を、ベクトル空間及び／または距離空間内に埋め込む。ベクトル空間との関連では、このことは、我々が、或るベクトル空間内で対象をベクトルにマッピングする機能を規定することを意味する。距離空間との関連では、このことは、我々が、これらの対象間のメトリック（或いは距離）を規定することを意味し、但し、該メトリック（或いは距離）は我々が一連の全ての当該対象を距離空間として扱うことを許容するものである。尚、ベクトル空間では、ユークリッド距離を含む様々な標準的な距離（発散）の尺度の使用が可能である点に注目すべきである。別の実施形態では、別のタイプの埋め込み空間が利用できる。
【００４７】
本開示で用いられているように、“埋め込み”とは、文書を埋め込み空間内にマッピングする写像である。典型的には、写像は、埋め込まれる文書の潜在的に大量の特性を、入力として受け取る機能である。幾つかの埋め込みでは、写像は、人により生成され、理解されることができるのに対して、別の埋め込みでは、写像は、非常に複雑で、非直観的である。多くの実施形態では、後者のタイプの写像が、明確にプログラムされるのではなく、訓練例に基づく機械学習アルゴリズムによって開発される。
【００４８】
先ず、ベクトル空間内の埋め込みを検討する。文書カタログをベクトル空間に埋め込むために、我々は、各文書とベクトルを関連付ける。該空間内での２つの文書間の距離は、ベクトル上の距離の標準的な尺度を用いて決定される。
【００４９】
ベクトル空間内にディジタル文書を埋め込む目的は、直観的に類似する文書を相互に近くに配置することである。このことを達成する方法は多くある。例えば、テキスト文書を埋め込む一般的な方法は、バッグ・オブ・ワーズ（a bag of words）モデルの使用である。該バッグ・オブ・ワーズ・モデルは、辞書を維持している。辞書内の各語には、整数インデックスが付与されており、例えば、語“aardvark”にはインデックス１が付与され、語“zebra”にはインデックス６００００が付与されている。各文書は、該文書内の各辞書語の発生数をカウントすることにより処理される。ｉ番目のインデックスの値がｉ番目の辞書語のカウントとなるベクトルが生成される。この表示の変形として、該カウントが種々の方法で正規化される。斯かる埋め込みは、文書の内容ひいては文書の意味に関する情報を獲得する。類似する語の分布を備えるテキスト文書は、この埋め込み空間では相互に近接する。
【００５０】
文書をベクトル空間に埋め込む多種多様な手段が存在する。例えば、画像は、例えばＳＩＦＴ（scale invariant feature transform）を用いて共通に発生する特徴を識別するために処理される。該特徴は、そして破棄され、上述のバッグ・オブ・ワーズ埋め込みと類似の表示において利用される。特に興味深いのは、埋め込みが、ディープ・ニューラル・ネットワーク、或いは他のディープ・ラーニング（深層学習）技術を用いて生成される点である。例えば、ニューラル・ネットワークは、大量の訓練データ上で次元削減の度合いに対して最急降下法（gradient descent）を実行することで、適切な埋め込みを学習する。別実施例として、或る者はデータに基づいてカーネルを学習でき、該カーネルに基づいて距離を導出できる。同様に、或る者は、直接に距離を学習できる。これらのアプローチでは、一般に、文書、語、或いは、画像を高次元のベクトルにマッピングするために大規模なニューラル・ネットワークを使用する。或いは、或る者は、多次元スケーリング（Multi-Dimensional Scaling）、或いは、確率的近傍埋め込み（Stochastic Neighbor Embedding）等のアルゴリズムを備えた実施例を用いて埋め込みを学習してもよい。ベクトル空間内への埋め込みは、カーネルを介して暗黙に規定されてもよい。この場合、明白なベクトルは決して生成及び使用されず、寧ろ、ベクトル空間内の動作が、元の空間内でのカーネル操作を実施することで実行される。
【００５１】
興味深い他の埋め込みは、例えば、写真が撮影された日時などの文書に関する日時の情報を獲得する。斯かるケースでは、異なる週の同じ曜日、或いは、異なる年の同じ月に画像が撮影された場合に、当該画像を近くに配置するカーネルが使用される。例えば、クリスマスの前後に撮られた写真は、別の年に撮られたものであって、それらのタイムスタンプ上では大きな差異があるとしても、類似すると考えられる。一般に、斯かるカーネルは、タイムスタンプ間の差を単に見ただけで利用可能なものを超越する情報を獲得する。
【００５２】
同様に、地理的情報を獲得する埋め込みも興味深い。斯かる埋め込みは、文書に付随する地理的メタデータ、例えば、写真に付加されるジオタグ（geo-tag）を考慮する。斯かるケースでは、単に２つの地点のマイル差より多くの情報を獲得するカーネルまたは埋め込みが使用される。例えば、その場合、写真が、同じ都市、同じ建物、或いは、同じ国で撮影されたか否かを獲得する。
【００５３】
しばしば、埋め込みは、文書を複数の方法で考慮する。例えば、製品に付随するメタデータ、当該製品の画像、及び、当該製品の評価のテキスト形式の内容によって、当該製品が埋め込まれる。斯かる埋め込みは、文書の各側面に対するカーネルを開発し、それらのカーネルを或る方法、例えば、１次結合により結合することにより達成される。
【００５４】
多くのケースでは、文書間の直観的な関係を獲得するには、極めて高次元の空間が必要とされる。幾つかの斯かるケースでは、必要とされる次元は、任意の位置にではなく、当該空間内の多様体（曲面）上への文書の埋め込みを選択することで、削減し得る。
【００５５】
最後に、文書カタログの異なる部分集合上では、異なる埋め込みが適切である場合がある点に注意する価値がある。例えば、検索手順の各繰り返しにおいて候補結果集合を再埋め込みするのが、最も効果的となり得る。斯かる方法では、該部分集合は、その部分集合内の変化或いは興味の最も重要な軸を獲得するために、再埋め込みされてもよい。
【００５６】
ディジタル文書カタログを距離空間内に埋め込むには、そのカタログを距離（またはメトリック）と関連付ける必要がある。以下で、我々は、ディジタル文書間の距離を規定する幾つかの方法について議論する。
［ディジタル文書間の距離及び類似性］
【００５７】
埋め込み空間内の２つの文書間の“距離”は、文書間の相違点の所定の大きさに“対応する”。好ましくは、距離は、該相違点の大きさの単調関数である。典型的には、距離は、該相違点の大きさに等しい。距離の例は、マンハッタン距離、ユークリッド距離、及び、ハミング距離を含む。
【００５８】
ディジタル文書間の距離（または相違点）を測定する方法は広範囲に存在する。また、これらの方法は、距離の新たな尺度を生成するために結合されてもよい。重要な概念は、ディジタル文書間の直観的な関係は、斯かる類似性或いは距離の尺度を介して獲得され得る点である。例えば、幾つかの有用な距離の尺度は、同じ場所において同じ人物を含む画像を相互に近くに配置する。同様に、幾つかの有用な距離の尺度は、同じ話題を議論していえる文書を相互に近くに配置する。勿論、ディジタル文書が或る軸に沿って直観的に関連する場合の該軸は多く存在し、その結果、所定の文書と（当該距離に関して）近い一連の全ての文書は、極めて多様化し得る。例えば、アントニオとクレオパトラの間の関係を記述している歴史的テキストは、他の歴史的テキスト、エジプトに関するテキスト、ローマに関するテキスト、アントニオとクレオパトラについての映画、ラブストーリーと近い。これらのタイプの違いの夫々は、元の歴史的テキストと関係する異なる軸を構成する。
【００５９】
斯かる距離は、様々な方法で規定され得る。１つの典型的な方法は、ベクトル空間への埋め込みを介する。他の方法は、カーネルを介して類似性を符号化することを含む。一連の文書に距離を結び付けることで、我々は、これらの文書を効率的に距離空間内に埋め込む。直観的に類似する文書は、距離空間内で近接する一方、直観的に非類似の文書は、相互に離間する。更に、カーネル及び距離関数は学習し得ることに注目すべきである。実際、検索過程の各繰り返しにおける文書の部分集合上の新たな距離関数を学習することは有用である。
【００６０】
文書間の相違点を測定するために距離が使用される如何なる場合も、それに代えて文書間の類似性を測定するためにカーネルが使用され得ること、また、その逆も同様であることに注目すべきである。特に、結局我々は、例えば、制約の定義において、距離の使用に言及するであろう。しかしながら、カーネルは、その代わりに、それらを距離に変換する必要なく、直接に使用することができる。
【００６１】
カーネルと距離は、種々の方法で結合することができる。該方法では、複数のカーネルまたは距離が利用され得る。各カーネルは、文書に関する異なる情報を獲得できる。例えば、１つのカーネルは、１つの宝石の視覚情報を獲得でき、その一方で、別のカーネルが価格を、更に別のカーネルがブランドを獲得する。
【００６２】
更に、埋め込みは、特定の製品或いは内容のタイプのカタログ等の特定の分野に対して特有であり得る。例えば、紳士靴に特有の埋め込みを学習或いは開発することが適切であり得る。斯かる埋め込みは、紳士用シャツとの関連では情報価値の無い、紳士靴間の類似性を獲得する。
［データベース構成］
【００６３】
本発明の実施形態で使用される、データベース８１６及び８２６等のデータベースは、一般に利用可能なデータを保存する手段、例えば、関係型データベース、ドキュメント・ストア（document store）、キーバリュー・ストア（key value store）、或いは、その他関連する技術を使用できる。各ケースにおいて、元の文書内容（または、それらに対するポインター）は、保存され、それらの高次元の表示、或いは、他の文書と関係する一連の距離の尺度と結合される。
【００６４】
測定可能で高速な検索性能を達成するために、インデックス構造が重要である。文書がベクトル空間内に埋め込まれる場合、例えば、ｋｄ木を用いてインデックスが構築される。文書が距離メトリックと結び付けられ、距離空間内に埋め込まれる場合は、距離木が使用され得る。
【００６５】
本開示で説明されるデータベースは、１以上の持続性のコンピュータ可読媒体上に格納される。本開示で使用されるように、データベースがコンピュータ可読媒体“上”或いは“内”に配置されるかの間の差異は意図的なものではない。更に、本開示で使用されるように、用語“データベース”は、必ずしも、或る１つの構造を意味するものではない。例えば、一体として考えられる２以上の別個のデータベースは、本開示で使用される用語としての“データベース”を構成する。
［最初の問い合わせ］
【００６６】
ステップ９１２においてシステムに提示される最初の問い合わせは、種々の標準的な技術を用いて生成され、評価され得る。例えば、該問い合わせは、キーボード或いは発話を介して入力される一連のキーワードとして提示されてもよく、該問い合わせは、キーボード或いは発話を介して入力される自然言語の語句または文であってもよく、或いは、該問い合わせは、音声信号、画像、映像、または、テキストであって、類似の音声信号、画像、映像、または、テキストを探し出すための見本を表しているものであってもよい。斯かる最初の問い合わせが効率的に評価される手段、例えば、関係型データベースの検索、或いは、転置インデックスの使用等の種々の手段が知られている。
【００６７】
最初の問い合わせは、単純に結果のランダム集合を戻すように設計されていてもよい。
【００６８】
最初の問い合わせは、空であってもよい、つまり、何らの制約も課さない。
【００６９】
最初の問い合わせに対する他のインターフェースは、ファセット検索を認める。ファセット検索は、ユーザに、一連の軸に沿った検索を制約するための手段を提供する。例えば、ファセット検索は、ユーザが許容可能な価格範囲を制約するのを許可するスライダーを提供する。
［候補結果の識別］
【００７０】
最初の問い合わせ及びその後のユーザ入力から生成される検索制約は、一連の候補結果を識別するのに用いられる。これは、種々の手段を用いて達成できる。例えば、最初の問い合わせは、関係型データベースに対して行うことができ、それにより、結果がベクトル空間または距離空間内に埋め込まれる。これらの結果は、例えば、ｋｄ木または距離木を用いてインデックスが付与され、最初の問い合わせと該制約の両方を満足する候補を識別するために検索されてもよい。或いは、最初の問い合わせは、一連の埋め込まれた文書に適用される幾何学的制約に変換されてもよい。この場合、最初の問い合わせ及びユーザ入力によって示される制約の幾何学的表示は、結合され、適切なインデックスが、制約の両集合を満足する埋め込まれた文書を識別するのに使用される。
【００７１】
本開示で使用されるように、埋め込み空間上の“幾何学的制約”は、個々の文書または文書の特徴をカタログに含めるまたは除外するだけではなく、埋め込み空間内に定式的に記載された制約である。好ましくは、幾何学的制約は、ユーザが見た少なくとも２つの文書に対する距離（または類似性）に基づいて規定される。例えば、斯かる制約は、“文書Ｂより文書Ａにより類似する全ての文書”と表現されるかも知れない。
【００７２】
ベクトル埋め込み空間において、例えば、制約は、超曲面を規定する特定の関数の形で記述できる。超曲面の一方側上の文書は該制約を満足し、他方側上の文書は該制約を満足しない。超平面は、内積またはカーネルによって規定されることができ、固定されたベクトルｘと候補ｚに対してｋ（ｘ,ｚ）＞０を必要とする。同様に、円錐形制約は、或る定数ｃに対してｋ（ｘ,ｚ）＞ｃを必要とする。距離埋め込み空間において、制約は、例えば、文書間の距離の関数の形で記述できる。つまり、距離埋め込み空間では、幾何学的制約は、“文書Ｘから特定の距離内の全ての文書”、例えば、或いは、“文書Ａに対する距離が、文書Ｂに対する距離より短い全ての文書”という形を取る。一実施形態では、距離空間に対して規定された超平面は、“ｍ−超平面”の形を取り、それは、本開示で使用されているように、以下のように、距離空間内の２点ａ及びｂによって規定される。
点ａ及びｂにより指定されるｍ−超平面は、距離空間（Ｘ，ｄ）を２つの集合Ａ及びＢに区分する。ここで、
Ａ＝｛ｘ：Ｘ内のｘ、但し、ｄ（ａ，ｘ）＜＝ｅ＊ｄ（ａ，ｂ）＊ｄ（ｂ，ｘ）
＋ｆ＊ｄ（ｂ，ｘ）＋ｈ＊ｄ（ａ，ｂ）＋ｉ｝
Ｂ＝Ｘ＼Ａ
但し、ｅ、ｆ、ｇ、ｈ及びｉは、実数値の定数で、全てが０に等しいことはない。
幾何学的制約は、距離空間の区分ＡまたはＢの特定の１つに配置されたそれらの文書にだけに対して満足されると考えられる。
【００７３】
また、幾何学的制約は、より複雑な幾何学的制約を規定するために、例えば、和集合、共通集合などの集合演算を用いて結合してもよい。幾何学的制約は、上述の制約例の何れかの変換を行うことで、生成されてもよい。例えば、所与の文書ｘ，ｙ及びｗに対して、ｄ（ｘ，ｚ）＊ｄ（ｘ，ｚ）＋ｄ（ｙ，ｚ）＜ｄ（ｗ，ｚ）という距離の多項式関数を処理し、当該関数を満足する文書ｚだけが、該幾何学的制約を満足すると考えられる。
【００７４】
カーネルは、距離とは無関係に用いることができ、制約は、カーネル、カーネルの多項式、カーネルの変形、或いは、カーネルの結合によって、直接的に表現できることに注目すべきである。
【００７５】
或る実施形態では、ユーザの検索シーケンスの各繰り返しは、新たな制約を識別し、その繰り返しでの結果集合は、全ての制約の結合された効果によって規定される。例えば、制約が超曲面として示されている場合で、超曲面のサイドＡ上の候補だけが、制約を満足すると考えられる場合、所与の繰り返しでの結果集合は、全ての制約の超曲面のサイドＡの共通集合の範囲内にある候補文書の全てであると考えられる。
【００７６】
様々な実施形態において、制約（ユーザによって指示された通り、または、幾何学的制約に変換されたもの何れか）は、“ハード”または“ソフト”である。ハードな制約は、解が全てのハードな制約の条件を満足しなければならないという意味で、満足されなければならない制約である。ソフトな制約は、満足される必要はないが、候補解は、それらが満足しない各ソフトな制約に対してペナルティが課され得る制約である。特定の実施形態では、当該ペナルティの累積が大き過ぎると、解が拒絶され得る。幾つかの実施形態では、制約は緩和される。例えば、ハードな制約は、それらをペナルティと結び付けることで、ソフトな制約に変換されてもよく、また、ソフトな制約はペナルティが軽減されてもよい。
【００７７】
幾何学的制約が表示される１つの方法は、全ての整理されていない文書の対のリストを維持することである。該リストの各エントリーは、ａが１つの文書を表し、ｂが他の文書を表す場合において、対（ａ，ｂ）となる。（対（ｂ，ａ）も該リスト中に現れてもよい点に注意する。）各エントリーは、候補は、該対の第２の要素より、第１の要素により近いに違いないことを意味していると理解される。つまり、該対の２つの要素は、本開示において時々、“アンカー文書”と呼ばれる。例えば、文書ｃを所与とした場合、対（ａ，ｂ）は、ｄ（ａ，ｃ）＜ｄ（ｂ，ｃ）という制約と結び付けられる。実数が各対に関連付けられる。ハードな制約の場合は、該実数は０または１で、１は制約が満足されなければならないことを意味し、０は制約が満足される必要のないことを意味する。或いは、ソフトな制約の場合は、該実数は、該制約に違反した場合に関連付けられるペナルティを表す任意の実数となる。この情報は、他の方法により、例えば、スパース表現を用いて維持することができる。１つの代替方法は、非ゼロ実数と関連付けられた対のみを維持する方法である。
【００７８】
ユーザの相対的フィードバックからステップ９１８で導出される幾何学的制約の各集合の目標は、ユーザの望む目標により良く近づく新たな候補空間を形成するために、以前の候補空間を更に狭めるか、或いは、修正することである。各繰り返しにおいて、ユーザの望む目標についてシステムが有する情報は、ユーザの相対的フィードバックという形で提供され、該フィードバックは、文書の選択という形で提供される。よって、一般的に、幾何学的制約の各ｉ番目の集合は、所定の集合的密接（collective closeness）の定義に応じて、ｉ番目の候補空間内の文書が、（ｉ−１）番目の候補空間内の文書よりは、埋め込み空間内において、ｉ番目に選択された部分集合内の文書に対して集合的により近くなるように、ｉ番目の候補空間を識別する。このことは、所定の集合的密接の定義が、埋め込み空間内において、ｄ（Ａ，Ｘ）＜ｄ（Ｂ，Ｘ）である場合に、少なくとも、候補文書Ｘが文書Ｂより文書Ａに近いと考えられるように規定されていることを意味する。
【００７９】
ｉ番目に選択された部分集合またはｉ番目に選択されなかった部分集合またはその両者が１より多い文書を含む一実施形態では、所定の集合的密接の定義が、埋め込み空間内において、所与の選択されなかった部分集合内の最も近い文書より、所与の選択された部分集合内の最も遠い文書に近接している所与の候補空間内の文書の一部分(fraction)が、埋め込み空間内において、所与の選択されなかった部分集合内の最も近い文書より、所与の選択された部分集合内の最も遠い文書に近接している特定の以前の候補空間内の文書の一部分(fraction)より大きい場合に、所与の候補空間内の文書が、特定の以前の候補空間内の文書より、所与の選択された部分集合内の文書に集合的に近くなるように、更に規定されている。
【００８０】
ｉ番目に選択された部分集合またはｉ番目に選択されなかった部分集合またはその両者が１より多い文書を含む別の実施形態では、所定の集合的密接の定義が、所与の候補空間内の全ての文書Ｙ、及び、ｉ番目に選択された部分集合内の文書Ａとｉ番目に選択されなかった部分集合内の文書Ｂの全ての文書の対（Ａ，Ｂ）に亘って、ｄ（Ａ，Ｙ）＜ｄ（Ｂ，Ｙ）となる事例の回数が、特定の以前の候補空間内の全ての文書Ｘ、及び、全ての文書の対（Ａ，Ｂ）に亘って、ｄ（Ａ，Ｘ）＜ｄ（Ｂ，Ｘ）となる事例の回数より小さく、各回数が、所与の候補空間内の文書Ｙの総数と特定の以前の候補空間内の文書Ｘの総数の間の何れの差に対しても正規化されている場合に、所与の候補空間内の文書が、特定の以前の候補空間内の文書より、所与の選択された部分集合内の文書に集合的に近くなるように、更に規定されている。
【００８１】
ｉ番目に選択された部分集合またはｉ番目に選択されなかった部分集合またはその両者が１より多い文書を含む更に別の実施形態では、所定の集合的密接の定義が、ｉ番目に選択されなかった部分集合内の文書Ｂであって、ｉ番目に選択されなかった部分集合内の全ての文書Ｂを平均化したものに対してより、ｉ番目に選択された部分集合内の文書Ａであって、ｉ番目に選択された部分集合内の全ての文書Ａを平均化したものにより近接している所与の候補空間内の文書Ｙの一部分(fraction)が、ｉ番目に選択されなかった部分集合内の文書Ｂであって、ｉ番目に選択されなかった部分集合内の全ての文書Ｂを平均化したものに対してより、ｉ番目に選択された部分集合内の文書Ａであって、ｉ番目に選択された部分集合内の全ての文書Ａを平均化したものにより近接している特定の以前の候補空間内の文書Ｘの一部分(fraction)より小さい場合に、所与の候補空間内の文書が、特定の以前の候補空間内の文書より、所与の選択された部分集合内の文書に集合的に近くなるように、更に規定されている。用語“平均（average）”は、本開示で使用されているように、平均（mean）とメジアン（median）の両方を含み、同様に、随意的に重み付けを含む。
【００８２】
ｉ番目に選択された部分集合またはｉ番目に選択されなかった部分集合またはその両者が１より多い文書を含む尚更に別の実施形態では、所定の集合的密接の定義が、所与の候補空間内の全ての文書Ｙ、及び、ｉ番目に選択された部分集合内の文書Ａとｉ番目に選択されなかった部分集合内の文書Ｂの全ての文書の対（Ａ，Ｂ）に亘って、ｄ（Ａ，Ｙ）≧ｄ（Ｂ，Ｙ）となる各事例に関連付けられるペナルティの総計が、特定の以前の候補空間内の全ての文書Ｘ、及び、全ての文書の対（Ａ，Ｂ）に亘って、ｄ（Ａ，Ｘ）≧ｄ（Ｂ，Ｘ）となる各事例に関連付けられるペナルティの総計より小さく、所与の文書Ｗに対して、ｄ（Ａ，Ｗ）≧ｄ（Ｂ，Ｗ）が満足される各事例が、各ペナルティ値と予め関連付けられている場合に、所与の候補空間内の文書が、特定の以前の候補空間内の文書より、所与の選択された部分集合内の文書に集合的に近くなるように、更に規定されている。“総計（aggregation）”または“総計〜となる（aggregate）”は、本開示で使用されているように、合計（sum）、百分率（percentage）、または、他の正規化を含み、それらにおいて、追加の正値を更に含んでも、全体の総計を減少させない。
【００８３】
幾何学的制約を扱うことの利点は、或る実施形態において、制約を維持し、更新するのに必要なメモリ及び演算リソースが、制約数に依存し、カタログの大きさに依存しない点である。このことは、例えば、制約管理が、サーバ上ではなく、電話やタブレット等のモバイル機器上で、実施及び維持できることを可能にする。
［識別力のある結果集合］
【００８４】
検索問い合わせは曖昧、または、不明確であってもよく、問い合わせを満足する文書は、極めて多様であってもよい。例えば、最初の問合せが“赤いドレス”の場合、結果は、着丈、襟ぐりの線、袖等が全く異なっていてもよい。モジュールのこの側面が、結果の識別力のある集合を補助選択する。当該結果の選択または非選択が、最も情報価値のあるフィードバックまたは制約を検索アルゴリズムに提供するように、目標が、ユーザに対して、直観的に結果の集合を提供する。このステップは、“情報価値のある”結果の集合、または、“多様な”結果の集合、または、“識別力のある”結果の集合を識別するステップと考えられる。ステップ９１８を実施する、識別力のある選択モジュール８２８が、様々な方法の何れかで識別力のある結果の部分集合を選択する。
【００８５】
一実施形態において、結果の部分集合は、ユーザが選択可能な、様々な異なる種類のフィードバックを提供する時、識別力があると言ってもよい。例えば、参照としてここに組み込まれる、van Leuken他による“Visual Diversification of Image Search Results”, in WWW ’09 Proceedings of the 18th international conference on World wide web, pp. 341-350 (2009)にあるように様々な画像が選択されてもよい。この多様な集合は、ユーザに次の繰り返しで問い合わせを精緻化する様々な方法を提供するために、選択される。こうした集合を識別する方法には様々なものがある。例えば、“最も”多様な結果の集合を増分的に識別する最も遠い第１トラバーサル（traversal）を行ってもよい。最も遠い第１トラバーサルは、距離の測定のみを必要とし、埋め込みは必要としない。また、最も遠い第１トラバーサルは、結果の集合で初期化されても良く、その場合、後続の結果は、該初期化された集合と最も差異が大きくなる。
【００８６】
識別力のある候補結果の部分集合を選択する他の手段には、結果の完全な集合における多様性の主要な軸を識別する、主成分分析（ＰＣＡ：principal component analysis）や、カーネルＰＣＡがある。識別力のある部分集合は、当該最も識別力のある軸に沿った複数の点に位置する文書を含んで構成される。
【００８７】
識別力のある候補結果の部分集合を選択する他の手段としては、識別力のある候補結果の部分集合を選択するクラスタリング・アルゴリズムを用いることも考えられる。こうした手法では、k-means法またはk-medoids法等の、候補結果内の類似文書のクラスタを識別するクラスタリング・アルゴリズムを用いてもよい。ここに参照として組み込まれる、http://en.wikipedia.org/wiki/K-means_clustering（２０１５年４月２９日検索）、及び、http://en.wikipedia.org/wiki/K-medoids（２０１５年４月２９日検索）を参照のこと。次に、１以上の代表的な文書が、識別力のある補助集合を生成するために、各クラスタから選択される。特に、k-medoids法が使用される場合は、各クラスタのmedoidを、当該クラスタの代表の一つとして使用してもよい。
【００８８】
更に、他の手段としては、ユーザによる所与の文書の選択または非選択から得られる、制約の集合を検討することも考えられる。この制約の集合は、それが生成するであろう候補結果の観点から検討してもよい。識別力のある部分集合は、該識別力のある部分集合内の文書の何れかを選択することによって作成される候補結果の集合ができるだけ異なるように選択される。
【００８９】
本開示で使用される、一群の文書における特定の文書の集合の“識別力”とは、ユーザが該集合の何れかの文書を選択した結果として除外される、該グループ内の最小数の文書のことを指す。つまり、特定の集合内の異なる文書をユーザが選択した結果、該グループ内の様々な数の文書が除外される場合、該集合の“識別力”は、ここでは、当該数が最小であることと考えられる。尚、識別力のある文書の集合、または、１つの文書に対するユーザの選択がどの文書が除外されるかを決める際に用いられる数式の何れか、または、その両方は、識別力のある集合内の文書の何れかを選択することによって除外される一連の文書の和集合（union）が文書のグループ全体と等しくなるように、選択される。
【００９０】
また、本開示で使用される、文書のグループ内の、サイズｎの文書の集合の“平均識別力”とは、文書の該グループ内のサイズｎの文書の全ての集合における、サイズｎの文書の集合の識別力の平均である。また、本開示で使用されるように、第１集合の識別力が第２集合の識別力よりも大きい場合、１つの特定の文書の集合は、別の文書の集合と比較して“より識別力がある”と言える。
【００９１】
より好ましくは、ステップ９１８を実施する選択モジュール８２８が、現在の候補空間８２６から、該候補空間のサイズＮ１の文書の集合の平均識別力よりも識別力のある、一連のＮ１＞１の文書を選択する。更により好ましくは、ステップ９１８を実施する選択モジュール８２８が、現在の候補空間内のサイズＮ１の文書の他の集合の少なくとも９０％、または、或る実施形態では、現在の候補空間内のサイズＮ１の文書の他の集合の全てと同じ識別力を有する集合を選択する。
【００９２】
尚、全ての実施形態において識別力のある候補の部分集合を選択するステップ９１８を必ずしも実施する必要はない。ある実施形態では、ユーザ相互作用モジュール８２２が、ユーザに向けて、候補集合から無作為に、或いは、他の方法で選ばれた文書の部分集合を提示すれば十分である。そうした実施形態では、識別力選択モジュール８２８は、単純に選択モジュールで置き換えられる。
【００９３】
選択された部分集合は、ソフトな制約を満足することで、識別力の釣り合いを採るよう選択しても良い。例えば、ソフトな制約が使用された場合、各文書は、違反した制約毎にペナルティに関連付けされる。また、選択された部分集合は、選択された部分集合の全ての候補に対する合計のペナルティを、当該部分集合の識別力でトレードオフするように選択してもよい。特に、最もペナルティの小さい文書は、それが識別力を低下させる場合であっても、優先的に選択された部分集合に含めてもよい。
【００９４】
下記の幾つかの場合において、制約は、機械学習アルゴリズムを用いて管理及び更新がされる。特に、これには、能動的学習アルゴリズムや、バンディット・アルゴリズムが含まれる。これらのアルゴリズムは、各繰り返しにおいて、“情報価値のある”（或いは、識別力のある）例を識別する。これらのアルゴリズムを使って制約を管理する場合、情報価値のある例の識別は、識別力のある部分集合として、または、識別力のある部分集合を決定するための基準として使用してもよい。バンディット・アルゴリズムは、識別力のある例を識別することで、報酬の最大化（すなわち、目標文書の発見）をトレードオフしようとするので、特に興味深い。
【００９５】
識別力のある部分集合を選択する上記技術の何れかを、最初の問い合わせの前または後の、ユーザに向けて提示される候補文書の最初の収集物の選択に用いることもできる。
［結果の提示］
【００９６】
ユーザ相互作用モジュール８２２によるステップ９２０での、ユーザに対する、識別力のある結果の提示は、ユーザに問い合わせの制約を精緻化するフレームワークを提供することを目的としている。
【００９７】
例えば、結果を２次元のグリッドとして提示しても良い。結果は、ユーザが、各結果間の基本的な距離（距離の尺度又は埋め込みを用いて規定されるような）を認識できるように、該グリッド上に配置される。これを行う一つの方法として、距離の尺度に関して互いに離れている結果を、確実に、グリッド上でも互いに離れて配置することが挙げられる。別の方法としては、例えば、多次元尺度構成法（ＭＤＳ）（例として、参照としてここに組み込まれる、Jin Yang他による“Semantic Image Browser: Bridging Information Visualization with Automated Intelligent Image Analysis”, Proc. IEEE Symposium on Visual Analytics Science and Technology (2006)を参照のこと。）を用いて、埋め込み空間を２次元に投影することが挙げられる。更に別の方法として、当該軸に沿った埋め込み空間及び位置結果において、軸を補助選択することが挙げられる。
【００９８】
他の考えられるレイアウトには、グリッド上にはない２次元組織（重なり合った複数の結果を含む可能性もある）、２次元組織に類似する３次元組織が含まれる。上記２次元及び３次元組織に類似する多次元組織は、１以上の軸の周囲を回転することが可能である。一般に、Ｍ＞１とすると、Ｍ次元のレイアウトが使用可能である。埋め込み空間が複数の次元を有する実施形態では、提示レイアウトにおける次元数は、埋め込み空間における次元数と同じである必要はない。更に他のレイアウトには、レイアウトに基づく階層的な組織またはグラフが含まれる。
【００９９】
レイアウト空間における文書の配置は、埋め込み空間内の複数の文書間の関係を示している。例えば、レイアウト空間の文書間の距離は、埋め込み空間の同じ文書間の距離と（線形ではないにせよ、単調に）一致する。また、埋め込み空間において３つの文書が同一線上に存在する場合、都合よく、それらはレイアウト空間でも同一線上に存在する。特に、システムがユーザの問い合わせ目標に最も近いと識別する候補文書（ここでは第１候補文書と称する）が存在するレイアウト空間における共線性（collinearity）は、第１候補文書が存在する埋め込み空間における共線性を示している。
【０１００】
しかし、埋め込み空間は、典型的には、非常に大きい数の次元を有し、高次元の空間では、実際に同一線上に存在する点はほとんど無いと理解される。したがって、一実施形態において、レイアウト空間で同一線上に提示されている文書は、埋め込み空間では“実質的な”共線性を示しているに過ぎない。本開示で使用されるように、各文書が（ベクトル空間についての）空間に位置を有するように埋め込み空間が構成されている場合、埋め込み空間内の３つの文書によって形成される三角形の最大の角が１６０度より大きければ、当該３つの文書は埋め込み空間において“実質的に同一線上にある”と考えられる。各文書が埋め込み空間に位置を有さないが、（例えば距離空間に関して）互いに距離を持たないように埋め込み空間が構成されている場合、本開示で使用されているように、３つの文書のグループについて、埋め込み空間の当該グループの文書の各対間における最短の距離と２番目に短い距離の合計が、埋め込み空間の当該グループの文書の各対間における最大の距離と等しければ、当該３つの文書のグループは、同一線上にあると考えられる。最短の距離と２番目に短い距離の合計が最大の距離を超え、その差が１０％未満であれば、当該３つの文書は“実質的に同一線上にある”と考えられる。本開示で使用されている、“共線性”及び“実質的に同一線上にある”は、一致または実質的な一致の自明な場合（trivial case）を含まない。
［ユーザ入力］
【０１０１】
ユーザ相互作用モジュール８２２は、ユーザに、様々な方法で入力を可能にするユーザインターフェース（ＵＩ）を提供する。例えば、ユーザが、１つの結果をクリックしてそれを選択する、或いは、１つの結果の方向にスワイプ（swipe）するとそれを非選択とする、としてもよい。同様に、ユーザが複数の結果を一度に選択、または、非選択してもよい。例えば、これを、各結果についてトグル選択（toggle selector）を用いて行ってもよい。また、ユーザが、ある結果の方向へスワイプして、当該結果の“その方向に”より近いという、結果への願望を示すことで、暗黙的に一連の結果を選択しても良い。この場合の“その方向へ”とは、第１結果とスワイプされている結果との差が拡大されることを意味する。すなわち、結果の次の集合は、スワイプされている結果により近いもので、且つ、“第１結果”よりは遠いものとなる。この概念は、ユーザに１つの結果“から（from）”別の結果“への（to）”スワイプを可能にすることで一般化しても良い。この場合、新しい結果は、“to”の結果により近く、且つ、“from”の結果からより遠いものとなる。
【０１０２】
また、ＵＩによって、次の結果の集合が、提示されている他のどの結果よりも特定の結果に近いことを、特定することができる能力（例えば、ダブルクリックやピンチ等により）をユーザに提供することができる。すなわち、ユーザは、提示された結果の内１つを選択し、当該結果が他の提示されている全ての結果と比べて好ましいものであるということを示す。これは、各非選択の文書に関して、将来の候補が、（埋め込み空間において）当該非選択の文書よりも選択された文書により近いことを示す、一連の制約として符号化することができる。ユーザが複数の文書を選択し、それらが選択されていない文書よりも、ユーザの望む目標に“より関連性がある”ことを示す、この形のフィードバックは、ここでは、“相対的フィードバック（relative feedback）”と称する。これは、ユーザが関連性のある候補と関連性の無い候補を選択する必要のある、より伝統的な“絶対的フィードバック（categorical feedback）”とは区別される。しかし、多くの場合、関連性のある文書はめったにないため、ユーザの選択に利用できるような文書はない可能性がある。これに対して、本開示のシステムの実施形態では、目標に対して実際には厳密な関連性はないが、更なる検索を導く重要な情報を提供する、より関連性のある候補を、ユーザが特定する、相対的フィードバックが可能である。相対的フィードバック及び断定的フィードバックは何れも、“関連性のあるフィードバック（relevance feedback）”の形態と考えられる。
【０１０３】
相対的フィードバックを符号化する１つの方法としては、埋め込み空間上の一連の幾何学的な制約として符号化することが挙げられる。非選択の画像Ｂ毎に、制約をｄ（Ａ，Ｃ）＜ｄ（Ｂ，Ｃ）の形で生成する。尚、Ａは選択された画像、Ｃは制約を適用する候補画像である（ｄは埋め込み空間における距離）。次に、候補Ｃは、ｄ（Ａ，Ｃ）＜ｄ（Ｂ，Ｃ）を満足する場合にのみ、制約を満足する。この方法で、１回のクリックで複数の制約を生成する。これらの制約は結合してもよく、例えば、結合された制約は、それらの共通集合であり、更なる候補文書には、制約の内、候補が違反した制約の数の単調関数であるランク（rank）が与えられる（小さいランクほど、ユーザの目標との類似性が高いことを示す）としてもよい。或いは、制約は、夫々をペナルティと関連付けることでソフトな制約として使用してもよい。この場合、更なる候補文書に、該候補が違反した個々の制約の全てに関連付けされたペナルティの合計の単調関数であるランクを与えることができる。更に別の実施形態では、ランクは、制約の年齢（age）（繰り返しの検索においてどれ程早く制約が課されたか）に基づいて作成されてもよい。一実施形態では、これは、所与の制約が最初に課された繰り返しの数に基づいて、各所与の制約に関連付けされたペナルティを決定（或いは変更）することによって実現される。一実施形態では、ペナルティは、制約の年齢と共に増加するように設計してもよく、また、別の実施形態では、ペナルティは、制約の年齢と共に減少するように設計してもよい。
【０１０４】
このアプローチは、ユーザがより関連性のある複数の画像を選択できるように拡張してもよい。このフィードバックは、選択された画像の夫々が選択されていない画像の夫々よりも関連性があるというように解釈することもできる。一実施形態では、本システムは次に、１つの選択された文書と１つの選択されていない文書の各対に対応する異なる制約を生成する。Ｐ×Ｑの制約の合計が生成される。尚、Ｐは選択された文書の数であり、Ｑは選択されていない文書の数である。制約は、ｄ（Ａｉ，Ｃ）＜ｄ（Ｂｊ，Ｃ），ｉ＝１〜Ｐ、且つ、ｊ＝１〜Ｑの形としてもよい。
【０１０５】
ＵＩは、逆の能力を提供することも考えられる。すなわち、ＵＩは、ユーザに、より関連性のある画像ではなく、むしろ、より関連性のない画像を選択させるかもしれない。また、上記の内容は適切に変更される。
【０１０６】
また、ＵＩは、次の結果の集合が、特定の選択に近いが、現在選択されている結果の集合よりも異なっていると特定する能力をユーザに提供することも可能である。
【０１０７】
更に、ＵＩは、ユーザに、以前に追加された制約を削除する能力を提供することが可能である。一実施形態では、制約のスタック（或いは履歴）が維持される。ＵＩは、ユーザに、制約をスタックから取り出すことで、以前追加された制約を削除する能力を提供する。また、特に、ユーザフィードバックの各ピースが、単純に好ましい画像として（すなわち、選択された画像は選択されていない画像よりも好ましい）提供される場合、ＵＩは、一連の選択された画像を提示し、ユーザが１つの（以前選択された）画像とそれに関連する制約を削除する、或いは、画像（及びそれらと関連する制約）をスタックから順に取り出すことで以前の状態に戻ること可能にする。これは、“戻るボタン”または、ユーザインターフェース上のスタックを表示することで実現してもよい。
【０１０８】
また、ＵＩが、ユーザに、類似の種々の画像の異なる集合が提供されることを特定する能力を提供しても良い。
【０１０９】
また、ＵＩが、ユーザに、複数の様々な種類のフィードバックを提供する能力を提供しても良い。
［精緻化された問い合わせ］
【０１１０】
本システムは、次に、ユーザの入力を取り込み、精緻化された問い合わせを生成する。精緻化された問い合わせは、最初の問い合わせに関する情報、及び、これまでユーザによって成された精緻化の反復シーケンスから得られた情報が含まれる。この精緻化された問い合わせを、次の結果を、埋め込み空間の領域内に集中させる一連の幾何学的な制約として表現してもよい。同様に、精緻化された問い合わせを、共通集合が結果の精緻化された候補を規定する、一連の距離の制約として表現しても良い。また、全ての可能性のある結果の集合を通過する経路として表現しても良い。
【０１１１】
例えば、精緻化された問い合わせが、選択された候補の結果の内、１つの特定された距離内に存在する次の結果を求める制約を含んでもよい。或いは、精緻化された問い合わせが、（距離の尺度に関して）他の候補の結果よりも、ある候補の結果に近い次の結果を求める制約を含んでもよい。これらの制約は、様々な方法で以前に識別された制約と結合される。例えば、候補に、これらの制約の全てを満足するよう求めても良いし、或いは、全ての制約の内、ある数の制約を満足するよう求めても良く、或いは、ソフトな制約の場合、候補に対して、違反した制約毎にペナルティを課しても良い。
【０１１２】
制約の管理、及び、問い合わせの精緻化の他の方法としては、下記の機械学習アルゴリズムを使用することが挙げられる。
【０１１３】
ユーザが、矛盾した制約を特定することもできる。本発明に係るシステムは、不適切と判断した制約について、緩和、強化、削除、変更を行う能力を有するよう構成しても良い。
【０１１４】
制約を緩和する、或いは、削除する１つの方法としては、ユーザフィードバックを用いることが挙げられる。特に、ＵＩは、ユーザに、以前追加された制約を削除する、或いは、履歴から制約を取り出す、すなわち、“戻る”手段を提供してもよい。
【０１１５】
本システムが制約を緩和又は強化する他の方法は、ソフトな制約に関連する。特に、幾何学的な制約が、ソフトな制約として扱われる、すなわち、ペナルティが各違反された制約に課される場合、これらのペナルティは、制約毎に異なっても構わない。具体的には、古い制約は、新しい制約より、小さいまたは大きいペナルティを有してもよい。ここで、新しい制約とは、最近の繰り返しで追加されたものであり、一方、古い制約とは、もっと前の繰り返しで追加されたものである。ソフトな制約がペナルティを伴って実施される場合はいつでも、候補の結果は、全ての制約に対して総計した、より小さい合計のペナルティを有する文書となってもよい。候補の結果の集合は、合計のペナルティがある所定の値よりも少ない全ての文書、或いは、最も小さい合計のペナルティを有するＮの文書のみとなる。尚、Ｎは、予め定義された整数である。
［問い合わせを精緻化する機械学習］
【０１１６】
幾何学的な制約は、機械学習アルゴリズムを用いて更新及び維持することができる。こうした実施形態では、ユーザのフィードバックは、機械学習アルゴリズムに適用される訓練データとして扱われ、適用された結果によって、ユーザの求める目標のモデル（ここでは、仮説（hypothesis）とも称される）が生成される。尚、このモデルは、幾つかの場合では、幾何学的な制約であってもよい。しかし、結果として生じる制約は、典型的には、ユーザフィードバックに関して直接表現されない。すなわち、結果として得られるモデルが、候補の文書とユーザがフィードバックを提供した文書との間の距離に関して、明示的にテストを行うのであって、この関係は間接的或いは暗示的である。
【０１１７】
多くの機械学習アルゴリズムは、２以上のクラス（例えば、関連性の有無）に文書を分類することを学ぶが、アルゴリズムには、関連性に従って文書を順位付け（rank order）するものもある。そうしたアルゴリズムの例としては、ここに参照として組み込まれる、RankBoost（Freund他による“An Efficient Boosting Algorithm for Combination Preferences,” Journal of Machine Learning Research 4 (2003) 37頁）、或いは、Ranking Perception（Collins他による“Convolution Kernels for Natural Language” in Advances in Neural Information Processing Systems, pp. 625-632 (2001)）が挙げられる。こうしたアルゴリズムは、順序付けの情報しか提供されない場合、フィードバックや訓練例を使用する。具体的には、こうしたアルゴリズムは、文書（例）が関連性の有無で分類されておらず、それらの相対的な関連性に関して順位付けされている場合は、訓練データを利用する。
【０１１８】
図９との関連で見た場合、順位付け学習アルゴリズムは、ステップ９１４で構築される幾何学的な制約を“仮説”または“モデル”と称する。したがって、順位付け学習アルゴリズムの場合、ステップ９１４での幾何学的な制約の構築は、以前の繰り返しからのフィードバックと結合されたユーザのフィードバックに基づいて、現在の仮説またはモデルを、訓練或いは更新することを伴う。ステップ９２０でユーザに向けて提示された候補の部分集合は、典型的には、現在の仮説に基づいて、ある限定された数の最も高いランクの文書である。これは、必ずしも、“識別力のある”部分集合ではない。しかし、学習アルリズムには、情報価値のある、或いは、識別力のある文書を、仮説の構築の過程の一部として、自然に識別するアルゴリズムもある。これらは、典型的には、関連性の有無でラベル付けされ、訓練集合に追加される時に、最もモデルを改善する文書である。こうした類の学習アルゴリズムは、識別力のある部分集合を選択するステップ９１８では、ステップ９１６で既に自然に識別された文書を選択するのみであり、ステップ９２０でユーザに向けて提示された候補の部分集合は、確かに識別力がある。
【０１１９】
幾何学的な制約を更新及び維持する機械学習アルゴリズムを使用する１つのアプローチは、サポートベクターマシンといった分類アルゴリズムを使用することである（例えば、ここに参照として組み込まれる、Tong他による、“Support Vector Machine Active Learning for Image Retrieval”, In Proceedings of the ACM International Conference on Multimedia, 12頁, ACM Press, 2001、或いは、Tieu他による“Boosting Image Retrieval”, International Journal of Computer Vision 56(1/2), pp. 17-36, 2004, 2003年7月16日受領を参照）。サポートベクターマシンは、埋め込み空間で単一の超平面を維持する。サポートベクターマシンの変形は、能動的学習を、各繰り返しにおいて、新たな制約を識別するだけでなく、候補文書の情報価値のある集合を選択するために使用する。
【０１２０】
或いは、いわゆる「オンライン学習アルゴリズム」（http://en.wikipwdia.org/wiki/Online_machine_lerning、２０１５年４月２９日検索）、または、いわゆる「多腕バンディット」学習アルゴリズム（http://en.wikipedia.org/wiki/Multi-armed_bandit、２０１５年４月２９日検索）を使用しても良く、何れも同じ結果を実現するために使用できる。これらの両文献を参照としてここに組み込む。
【０１２１】
オンライン学習アルゴリズム（本開示では当該用語を用いる）は、訓練データに基づいて増分的に更新されるモデルまたは仮説を維持する。すなわち、これらのアルゴリズムは、訓練データの完全な集合、または、本文脈で言うところの、ユーザフィードバックの完全な集合へのアクセスを必要としない。新たな訓練データが提示されると、これらのアルゴリズムは、以前に参照された訓練データで本システムを再訓練することなく、各自のモデルまたは仮説を更新することができる。むしろ、これらのアルゴリズムは、フィードバックの直近の集合にのみ基づいて増分的に更新されるモデルまたは仮説を維持する。このため、これらのアルゴリズムは、実質的に、必要とするメモリ及び／または計算資源がより少なくて済み、それにより、例えば、モバイル機器上で実施することが可能である。本明細書の文脈において、仮説を、幾何学的な制約を表すために用いてもよい。例えば、仮説は、埋め込み空間の超平面を表すこともあれば、商品の重みが大きい程、目標の商品に近いと理解されるカタログにおける、商品の重みの結合を表すこともある。ユーザのフィードバックは、オンライン学習アルゴリズムが学習に使用する訓練データとして解釈される。すなわち、オンライン学習アルゴリズムは、このフィードバックに基づいて自身の仮説（幾何学的な制約）を更新する。一実施形態では、オンライン学習アルゴリズムは“エキスパートの助言を伴う予測（Prediction with Expert Advice）”フレームワーク（ここに参照により組み込まれる、Cesa-Bianch他による“Prediction, Learning, and Games”, Cambridge University Press, 2006）を使用する。この場合、各カタログの商品（文書）は、エキスパートとして解釈され、重みを割り当てられる。最初は、これらの重みは全て同じである。関連付けされた距離と結合された時の各カタログの商品は、該カタログの順序を提供すると理解することができる。具体的には、カタログの商品Ａについて、該カタログの他の全ての商品（例えば、Ｘとする）には、それらの距離に対応する番号、例えば、ｄ（Ａ，Ｘ）を割り当てても良い。次に、該カタログの商品は、当該番号、すなわち、ｄ（Ａ，Ｘ）を用いてソートされる。候補の集合に関して、カタログの商品（例えば、Ａ）に対応する各エキスパートは、当該集合において自身が最も上位にランク付けする商品（例えばＸ）、すなわち、ｄ（Ａ，Ｘ）が最小である商品の選択を勧める。次に、各エキスパートの重みは、エキスパートが最も上位にランク付けした当該商品をユーザが選択したかどうかによって増減する。処理が繰り返し行われる中で、ユーザが検索している商品が正解である（すなわち、候補集合から正しい商品を勧める）頻度が他の商品よりも高くなり、それによって、最大の重みを得ることになる。この一般的なアプローチについて多くの変形が可能である。一般的に、オンライン学習アルゴリズムは、識別力のある部分集合を生み出す自然な手段を提供しない。しかし、オンライン学習アルゴリズムは、識別力のある部分集合を生み出す様々な他の手段と結合させることができ、当該他の手段には、ＰＣＡやクラスタリングに基づく手段、または、力まかせ検索を含む高度に識別力のある部分集合を選択可能なその他の手段が含まれる。
【０１２２】
多腕（multi-armed）バンディットアルゴリズムは、“エキスパートの助言を伴う予測”フレームワークと密接な関係がある。オンライン学習アルゴリズムと同様に、これらのアルゴリズムは、ユーザフィードバックに基づいて増分的に更新される仮説を維持する。ユーザフィードバックの完全な集合を維持するのではなく、これらのアルゴリズムは、直近のフィードバックだけに基づいて仮説を更新する。繰り返しになるが、これは、これらのアルゴリズムが必要とする計算資源がより少なくて済み、それにより、モバイル機器上で実施可能であることを意味している。これにより、制約を、別のサーバ上ではなくモバイル機器上で管理することが可能となる。これらのアルゴリズムは、更に、エキスパート（“腕(arm)”と称する）の集合を維持し、良品の識別を求める。（現在の設定における）主要な差異は、各ラウンドにおいて、これらのアルゴリズムが、プレイする１以上の“腕”（或いはエキスパート）を選択することである。本文脈において、“プレイ”とは、ユーザに対する提示を意味する。腕は、２つの目標、すなわち、良い腕をプレイすること、及び、どの腕が良いか学習すること、の均整をとるように選択される。例えば、ユーザが高い報酬に変換される腕の一つをクリックすると、ユーザフィードバックは、選択された腕に対する報酬として解釈される。こうしたアルゴリズムを、幾何学的な制約の維持及び更新、及び、候補の部分集合の選択に適合させる１つの方法を以下に説明する。明らかに、他の適合も効果的である。繰り返しになるが、カタログの各商品（文書）は、腕（エキスパート）に関連付けられる。各腕は、その報酬（すなわち、問い合わせへの解としての適合性）の見積もり、及び、当該見積もりに対する信頼区間（確実性の値）と関連付けられる。最初は、全ての報酬見積もりは等しく、全ての確実性は同一である。検索処理の各繰り返しにおいて、１以上の腕が“識別力のある集合”として選択され、ユーザに提示される。ユーザは候補の一つをクリックし、対応する腕に高い報酬が与えられる。他の候補には低い報酬が与えられる。対応する報酬見積もりが更新される。候補集合における各腕の確実性は、報酬の見積もりのために集められたデータが多いほど、増加する。ここで、アルゴリズムは、候補（腕）の別の集合を、当該集合が、報酬が高いか、または、報酬についての不確実性が大きいの何れか、或いは、その両方である腕を含むように選択する。処理が繰り返し行われる中で、ユーザの検索の目標が、高い報酬が得られるという確実性の高い見積もりを得て、最良の腕と識別される。
［次の結果の識別］
【０１２３】
検索対象の文書間の距離（非類似度）、または、当該文書のベクトル空間または多様体（manifold）への埋め込みが与えられる場合、様々なデータ構造が存在する。この様々なデータ構造は、文書カタログに索引を付けるために使用しても良く、それにより、迅速な検索が可能となる。こうしたデータ構造には、メトリック木、ｋｄ木、Ｒ木、普遍的な(universal)Ｂ木、Ｘ木、ｂａｌｌ木、局所性鋭敏型ハッシュ、転置インデックスが含まれる。
【０１２４】
本システムは、精緻化された問い合わせに基づいて次の候補結果の集合を識別するために、こうしたデータ構造の組み合わせを用いる。
【０１２５】
幾何学的制約を使用する利点は、こうした効率的なデータ構造と共に使用して、カタログのサイズがほぼ直線である時間内に次の結果を識別することができる点である。
［学習距離］
【０１２６】
ユーザの行動データは、本発明に係るシステムによって収集され、検索経験の改善又は特殊化するために使用してもよい。特に、距離または類似性を表現する多くの方法は、パラメータで表されてもよく、これらのパラメータを調整することもできる。例えば、カーネルの１次結合を用いて規定された類似性は、ユーザの行動データに基づいて調整された当該１次結合の係数を有する。こうした方法で、本システムを、類似性の個々の（或いは集団（community）や文脈上の）概念に適合させる。
【０１２７】
同様に、こうしたカーネルや距離を、検索方法とは独立して学習してもよい。すなわち、様々な方法で収集されたデータについて、こうしたカーネルや距離を学習してもよい。このデータを、検索処理の間に獲得されたデータと結合してもよく、また、しなくてもよい。
【０１２８】
距離または類似性を学習するために、３層以上を有するニューラルネットワーク（neural network）等の深層学習の使用は特に興味深い。
【０１２９】
幾つかの実施形態において、距離は、具体的には特定の応用に関して学習される。例えば、潜在的なパートナーを探す方法（例えば出会い系サイトにおいて）を使用する実施形態では、顔の類似性を獲得するカーネルを学習する。当該実施形態では、人々のＦａｃｅｂｏｏｋのプロフィールに基づいて興味の類似性を獲得するカーネルを学習する。これらのカーネル（または距離）は、具体的には、関連付けられた検索課題を扱うために学習され、当該課題以外では有用性がなくてもよい。図１９は、特に主題領域に関して距離が学習される実施形態の関連する部分を表している。
【０１３０】
図１９を参照すると、ステップ１９１０において、主題領域が規定される。主題領域の例には、衣類、宝石、家具、靴、アクセサリー、休暇用賃貸、不動産、自動車、美術品、写真、ポスター、出版物、室内装飾、一般的な物理的製品、ディジタル製品、サービス、旅行パッケージ、或いは、他の無数の商品カテゴリの何れかが含まれる。ステップ１９１２において、主題領域内で検討される１以上の商品、及び、主題領域外で検討される１以上の商品が識別される。ステップ１９１４において、主題領域内にあると考えられる文書のみを含む訓練データベースが提供される。この訓練データベースは、第１商品は含むが、第２商品は含まない。ステップ１９１６において、埋め込みは、提供された訓練データにのみ依存して、すなわち、主題領域外にあると考えられる文書には基づかずに、学習される。機械学習アルゴリズムは、この埋め込みの学習に用いることができる。ステップ１９１８で、文書のカタログは、学習された埋め込みを用いて埋め込み空間に埋め込まれる。好ましくは、埋め込み空間に埋め込まれた文書のカタログ自体が、主題領域内の文書に限定される。後の処理は、図９のステップ９１２または９１４、或いは、本開示に記載したような変形例で続けることができる。
［幾つかの例］
【０１３１】
図３は、２次元空間に埋め込まれた文書の集合を示している。描写の都合上、２次元としているが、本発明の側面は、大きな次元の空間内に文書を埋め込みことを想定している。空間３１０は、例えば文書３２１、３２２を含む。文書の各対は、間に距離３３０を有する。
【０１３２】
図４は、円形の幾何学的制約４１０に加えて、図３の文書の集合を示している。円内の文書、例えば４２１、４２２等は、当該制約を満たすと考えられる。本発明の側面は、問い合わせ、及び、ユーザ入力をこうした幾何学的制約の形で表現する。制約を満足する文書は、問い合わせの現在の結果である。ユーザが更に入力を提供すると、新たな制約が追加されるか、既存の制約が追加または削除される。
【０１３３】
図５は、非円形の幾何学的制約５１０に加えて、図３の文書の集合を示している。本発明の側面は、任意の形状の幾何学的制約、及び、当該制約の和集合、共通集合、差分を想定している。
【０１３４】
図６は、図４の円形制約が、ユーザに入力に応答して更新される際の手段を示している。元の円形制約６１０は、半径を増加させることで変更されて円形制約６２０を生成するか、または、半径を減少させることで変更されて制約６３０を生成する。これらの変更は、ユーザの入力に応答して行われる。これらの制約を満足する文書の集合は、制約が変更されるに伴って変化し、ユーザへ提示するために検討された画像の集合が減少或いは拡張される。
【０１３５】
図７は、文書の識別力のある部分集合が、ユーザへの提示のために選択される際の手段を示している。強調表示されている７１１、７１２等の文書は、互いに、且つ、円形制約領域内に含まれる他の文書とは異なる。
【０１３６】
図１０Ａは、埋め込み空間内の文書の集合を示しており、この埋め込み空間では、問い合わせ処理モジュール８２４が収集物を円１０２０内の当該文書に限定し、第１結果文書１０１８を識別する。また、識別力のある選択モジュール８２８が、文書１０１０、１０１２、１０１４、１０１６を、ユーザに提示する識別力のある集合として選択する。埋め込み空間において、文書１０１２、１０１８、１０１６が実質的に同一線上にあり、文書１０１０、１０１８、１０１４が実質的に同一線上にあるということが分かる。
【０１３７】
図１０Ｂは、本システムがレイアウト空間内で文書の集合をどのように提示するかを示している（破線は、目に見えるというよりは暗示されている）。文書の具体的な位置は、空間の次元が減少されていることもあって、埋め込み空間内のそれらとは必ずしも一致しない。しかし、埋め込み空間で実質的に同一線上にあった文書は、レイアウト空間で同一線上に存在する。特に、図１０Ａの破線が埋め込み空間の次元を表し、当該破線に沿って候補の文書が異なる場合、図１０Ｂのレイアウト空間内の文書の配置は、これらの同じ次元を示している。また、レイアウト空間の共線性の各線に沿った文書間の相対距離も、埋め込み空間内の相対距離を示している。
【０１３８】
図１１は、靴の検索が可能な一実施形態を示している。この実施形態は、モバイル機器１１０１上で実施される。この実施形態では、サーバ上でカタログが維持され、候補結果が識別される一方で、モバイル機器上で制約が維持される。靴同士の視覚的な類似性を獲得するよう訓練されたニューラルネットワークを適用することで、靴は、高次元の空間に埋め込まれる。靴に関するブランド等のメタデータを比較するカーネルを用いて、埋め込みに対する他の寄与がなされる。第１結果は、左上隅１１０２の大きな画像として目立つように表示される。埋め込み空間１１０３で、第１結果に最も近い（すなわち、最も類似している）靴は、第１結果に最も近い場所に表示する。次に、現在の制約を満足する識別力のある結果の集合が表示される。これらの制約は、異なる実施形態では、ハードまたはソフトな制約としても良く、或いは、一部はハードな制約で、他はソフトな制約としてもよい。尚、これらの結果は、かなりの多様性を保持している。例えば、埋め込み空間において最も遠い（かつ、第１結果からは最も遠く表示されている）靴１１０４は、色は異なるが、第１結果と同じブランドである。この実施形態は、制約のスタックを維持している。各制約は、候補に、ユーザに選択されなかった画像よりも選択された画像に近いことを求める。したがって、各繰り返しにおいて、複数の制約（例えば１１）が追加されてもよい。一実施形態では、これらの制約は、各候補が違反された制約毎にペナルティを受ける点で、ソフトな制約として扱われる。候補の結果は、より小さなペナルティを持つものである。この実施形態において、選択された画像のスタックは、ユーザの選択で最も古いものは左に、新しいものほど右に、１１０５で表示される。ユーザは、このスタック内の何れかの画像をクリックすることができる。こうすることで、クリックされた画像の右の全ての画像（及びそれらの関連する制約）がスタックから取り出される。これは、クリックされた画像が選択される前に有効であった制約の集合によって規定される、以前の検索状態にユーザを戻す効果がある。
［従来のシステムに勝る利点］
【０１３９】
本開示に記載したアプローチの様々な実施形態は、従来のシステムと比較して、以下の利点の内、１以上を生み出す。
・一実施形態は、必ずしも文書の単一の固定された階層に限定されない。より具体的には、一実施形態は、文書カタログが記載される際に用いられる分類法の明確な決定を必要としない。また、文書を静的な階層にクラスタリングする必要もない。すなわち、ユーザが行う精緻化のシーケンスは、事前に規定された分類法または階層での限定或いは拡張を強いられる必要はない。
・一実施形態は、極めて柔軟にすることができ、画像、テキスト、音声、映像、及び、その他多くの種類のデータに適用してもよい。
・文書間の関係についての直観（intuition）は、分類法またはタグを用いるよりも、文書間の類似性または距離の概念を用いて表現し易い場合がある。
・候補結果の視覚的な方法での選択及び非選択は、モバイル機器やタブレット上での検索用の容易なインターフェースである。
・幾何学的な制約という観点から、問い合わせの精緻化を符号化することで、より柔軟なユーザ相互作用が可能となる。具体的には、一実施形態では、ユーザは、事前に定義されたタグ付けの概念体系や、制約を結合するために用いる問い合わせロジックに精通している必要はない。更に、一実施形態では、こうした幾何学的な制約は、将来のタグ付けまたは注釈付けの工程における誤りに対して、より強固であり得る。
・検索を増分的に精緻化する能力は、生産的なユーザ経験に役立つ。
・候補結果の識別力のある部分集合を使用することで、限られた表示空間をより効率的に利用できる。完全な結果の集合内の利用可能な情報の大部分を獲得し、ユーザが問い合わせを精緻化するための様々な選択肢を提供すると同時に、表示が乱雑になるのを最小限に抑えることができる。
・距離、埋め込み、類似性が機械学習されると、このアプローチを用いたシステムは、検索経験を個人、グループ、文化、文書カテゴリに特化する能力を提供することができる。
・内容に基づく画像検索（ＣＢＩＲ）技術と比較して、本発明の実施形態は、検索の増分的な精緻化に、より適していると言える。具体的には、ユーザは、写真を撮り、ＣＢＩＲシステムを使って関係のある、または、類似性の高い写真を識別することができる。しかし、ユーザが結果に不満な場合は、ＣＢＩＲシステムは検索目標を精緻化する方法を提供しない。
［実施例１］
【０１４０】
一実装例では、ユーザは、個人的な写真のカタログの検索が可能となる。最初に、任意の写真（第１結果）、例えば、最近写した、または、閲覧した写真がユーザに示される。これは、カタログの写真から成る３×３のグリッドの中心に表示される。写真の夫々は、第１結果に近い（下記で定義される）が、第１結果に関係する様々な軸に沿って、互いに異なるように選択される。例えば、第１結果が先週家で家族と撮った写真なら、他の写真は、例えば、ａ）去年家で家族と撮った、ｂ）先週外で家族と撮った、ｃ）先週家で家族なしで撮った等の写真かもしれない。幾つかの状況では、本システムは、第１結果の両側に、同じ軸に沿って存在するが、当該軸に沿った位置が互いに異なる２つの写真を配置してもよい。例えば、家族Ａが第１結果よりも目立つように映っている写真を左側に、家族Ａが第１結果よりも目立たないように映っている写真を右側に配置してもよい。
【０１４１】
ユーザは、次に第１結果となる９枚の写真の内、１つを選択する。これは、第１結果には“近い”が互いに異なる写真から成る、更新された３×３グリッドに配置される。
【０１４２】
どこかの時点で、ユーザが第１結果をダブルクリックすると、“近い”の定義が“より小さなスケール”（下記で定義）に変化する。ユーザが“ピンチアウト”の身振りをすると、“近い”の定義は、“より大きなスケール”に変化し、結果の集合が更新される。
【０１４３】
こうした方法で、ユーザは、特定の写真を発見するために写真のカタログをナビゲートすることができる。
【０１４４】
この実施例では、写真の類似性は、下記を含む複数の基準に基づいて判断される。
・写真のＧＰＳ位置
・写真の時間
・写真の色内容
・写真が屋内で撮られたか、屋外で撮られたか
・写真に人物が写っているか
・写真に写っているのか誰か
・写真に写っている人物は喜んでいるか、悲しんでいるか
・写真内で描写されている活動
・写真に含まれる物体
【０１４５】
上記基準に加えて、他の多くが挙げられる。これらの基準は、数字上の“距離”に、或いは、ある空間に写真を配置するベクトルとして、獲得される。後のケースでは、類似性または距離の標準的な概念、例えば、ドット積またはユークリッド距離を使用してもよい。一実施形態では、異なる軸に沿った距離が互いに比較できるように、正規化関数が適用できる。
【０１４６】
ユーザが写真のカタログをナビゲートする際、ユーザが検索している“スケール”が変化する。このスケールは、結果の集合における写真が第１結果に如何に“近い”かを規定する。より正確には、結果の集合内の全ての写真は、ある閾値よりも短い“距離”を持たなければならない。スケールが増加または減少するほど、この閾値が増加または減少する。
【０１４７】
上述の各ステップについて、この実施例を検討する。
・埋め込み：ユーザの個人的な写真のカタログにおける写真毎に、例えば、他の多くの項目の中でも、経度、緯度、時刻、曜日、顔の数、所定の活動が描写されているかに対応したインデックスを有するベクトルが生成される。
・最初の問い合わせ：この場合、最初の問い合わせは、空であり、すなわち、全ての写真が候補結果となり、ユーザに提示されるものは任意である。
・幾何学的制約としての最初の問い合わせ：最初の問い合わせは、幾何学的制約の空の集合を生成する。
・幾何学的制約は、埋め込まれた写真の集合に適用され、当該制約を満足する写真、すなわち、候補結果を識別する。
・９枚の写真の識別力のある部分集合が、最も遠い第１トラバーサルを用いて候補結果から選択される。
・９枚の写真は、３×３のグリッドでユーザに提示される。
・ユーザは、当該写真の内から１枚を選択し、当該選択した写真により近い写真を閲覧したいという要望を示す。
・ユーザによって選択された写真は、処理され、埋め込み空間で選択された写真を囲む球として表現できる、新たな幾何学的制約を生成する。この新たな制約は、現在の制約の集合に追加される。結合した制約は、これまで選択された全ての写真を囲む球の共通集合である。
［実施例２］
【０１４８】
別の実装例としては、装飾品（衣料、家具、アパート、宝石等）を検索する場合が挙げられる。この実装例では、ユーザは、最初の問い合わせとして、テキスト、発話、或いは、見本画像で検索する。例えば、ユーザは、テキスト入力で“茶色の財布”を検索する。検索エンジンは、可能性のある結果の多様な集合、例えば、様々な種類の、様々な色合いの茶色の財布を識別することによって応答する。これらの結果は、２次元的配列（例えばグリッド）にレイアウトされ、それにより、より類似した結果が互いの近くに配置され、より異なる結果が互いに比較的遠くに配置される。次に、ユーザは、１以上の画像を、例えば、ラジオボタンを使って選択する。画像の選択は、“検索方向”、または、それに沿って更なる結果が得られるかもしれない埋め込み空間におけるベクトルを規定するために、検索エンジンによって使用される。
【０１４９】
上述の各ステップに関してこの実施例を検討する。
・埋め込み：装飾品のカタログにおける各エントリについて、装飾品を区別するよう訓練された深層学習技術を用いて、ベクトルが生成される。
・最初の問い合わせ：この場合、最初の問い合わせは、更なる結果を、完全なカタログの一部内に狭めるテキスト検索である。この限定は、最初の候補結果の集合である。
・幾何学的制約としての最初の問い合わせ：最初の問い合わせは、幾何学的制約の空の集合を生成する。
・幾何学的制約は、限定された集合（すなわち、最初の候補結果）の埋め込まれた装飾品の集合に適用され、当該制約を満足する装飾品、すなわち、候補結果を識別する。
・９個のカタログのエントリの多様な集合が、最も遠い第１トラバーサルを用いて候補結果から選択される。
・９個のカタログのエントリが、ユーザに３×３のグリッドで提示される。
・ユーザは、カタログのエントリの内から１つを選択し、当該１つにより近い装飾品を閲覧したいという要望を示す。
・ユーザによって選択された装飾品は、処理され、埋め込み空間で選択された装飾品を囲む球として表現できる、新たな幾何学的制約を生成する。この新たな制約は、現在の制約の集合に追加される。結合した制約は、これまで選択された全ての装飾品を囲む球の共通集合である。
［幾つかの変形例］
【０１５０】
文書は、ベクトル空間または（距離を介した）距離空間といった埋め込み空間で符号化される。検索は、問い合わせの精緻化のシーケンスとして進む。問い合わせの精緻化は、ベクトル空間または距離空間に対して幾何学的制約として符号化される。識別力のある候補結果が表示され、ユーザに識別力のある制約を追加する能力を提供する。結果の選択または非選択等のユーザ入力は、幾何学的制約として符号化される。
【０１５１】
このアプローチの変形は読者にとって明らかである。例えば、最初の問い合わせが処理された後に文書が埋め込まれてもよく、当該問い合わせを満足する文書のみが埋め込まれてもよい。同様に、文書は、処理の何れかの時点で異なる埋め込みを用いて再埋め込みされてもよい。この場合、幾何学的制約は、新たな埋め込みにおいて再解釈される。
【０１５２】
幾何学的制約は、非幾何学的制約によって何れかの時点で増加させてもよい。この場合、候補の結果は、非幾何学的制約を満足するもののみを選択するよう、直接的にフィルターをかけることが可能である。この方法では、相互作用は、ファセット検索、テキスト、または、発話の入力で増加させることができる。処理の繰り返し毎に、幾何学的制約は、非幾何学的制約の集合と共に管理することができる。
【０１５３】
実装例は、下記の工程を経て処理することができる。
１．ユーザから見本画像（少なくとも１つ）の収集物を得る。
２．当該収集物の全ての画像を、見本画像から閾値Ｔより短い距離で識別する。
３．２で収集された画像の識別力のある部分集合を識別する。
４．画像の識別力のある部分集合を、２次元レイアウトで、ユーザに提示する。
５．ユーザが提示された画像の内の１つに満足した場合、この満足の表示を受け取り、選択された画像に関して望ましい動作を行う。
６．ユーザが満足しない場合、ユーザから、望ましい結果により近い、提示された画像の選択を得る。
７．見本画像の修正された収集物を生成する。
８．閾値Ｔを減少させる。
９．２へ進む。
【０１５４】
上記方法は、ユーザによるコンピュータシステムとの相互作用の観点と、コンピュータシステムによるユーザとの相互作用の観点の何れか、或いは、両方から見てもよい。
【０１５５】
該概念は、画像よりはむしろ、“ディジタル文書”を指すように一般化されてもよい。ディジタル文書には、画像に加えて、音声、映像、テキスト、html、複合媒体文書、ディジタルカタログの製品一覧が含まれる。
【０１５６】
また、該概念は、ステップ１で得られた最初の収集物を、別の情報検索システムまたは検索エンジン内における検索（問い合わせ）をユーザが実施した結果として獲得するように一般化されてもよい。
【０１５７】
また、該概念は、ステップ８で閾値を減少させる代わりに、ユーザインターフェースが、閾値を減少または増加させる、或いは、閾値を変化させない能力を提供すように一般化されてもよい。
【０１５８】
また、該概念は、ステップ１及び６で見本画像の収集物が２つあり、ステップ２で本システムが、第１集合の閾値Ｔ１よりも短く、且つ、第２集合の閾値Ｔ２よりも長い距離で画像を識別するように、一般化されてもよい。
【０１５９】
また、該概念は、ステップ６の１回の繰り返しで、少なくとも１つの軸の第１集合に沿ってユーザが１または複数の画像を選択し、ステップ６の別の繰り返しで、ユーザが少なくとも１つの軸の第２集合に沿って１または複数の画像を選択するように、一般化されてもよい。尚、軸の第２集合は、軸の第１集合には含まれていない少なくとも１つの軸を含む。
［使用例］
【０１６０】
図９の検索方法（本開示に記載する全ての変形を含む）は、様々な目的に使用され、その内の幾つかを以下に概説する。
【０１６１】
図１２は、図９の検索方法のフローチャートであり、当該検索方法は、衣類、宝石、家具、靴、アクセサリー、不動産、自動車、美術品、写真、ポスター、出版物、室内装飾等の物理的な製品の購入に使用される。本開示に記載の全ての変形は、図１２の方法で使用することができる。
【０１６２】
【０１６３】
最初に、ステップ１２１０において、ディジタル文書のカタログが埋め込み空間に埋め込まれ、データベース内に保存される。該データベース内では、距離は、埋め込み空間内の文書の各対の間で識別され、当該文書の各対によって表される製品の間の相違点の所定の尺度に対応している。ステップ１２１２において、最初の問い合わせが、該問い合わせ結果を満足する文書の最初（ｉ＝０）の候補空間を生成するために、随意的に処理される。該最初の問い合わせは、例えば、通常のテキストによる問い合わせであってもよい。該最初の候補空間は、該文書のカタログの全範囲内にあり、随意的に、該全範囲よりは小さい。ステップ１２１３において、ディジタル文書の最初の収集物が、該最初の候補空間から抽出される。該文書の最初（ｉ＝０）の収集物は、該最初の候補空間の部分集合である。一実施形態では、該文書の最初の収集物は、該カタログの識別力のある部分集合として選択されるが、別の実施形態では、該文書の最初の収集物は、識別力がない。ステップ１２１４において、該文書の最初の収集物が、ユーザに向けて識別される。一実施形態では、該処理は、該最初の収集物内の文書の説明を、ユーザに向けて可視的に表示することが可能である。ステップ１２１５において、便宜上、繰り返し１と番号が付された繰り返しで始まる、反復検索処理が開始される。
【０１６４】
ｉ番目の繰り返しの開始前、ユーザには、前の繰り返し（ｉ−１）からの文書の収集物が提示される。ｉ＝１の場合、該文書の収集物は、ステップ１２１４からの該文書の最初（ｉ＝０）の収集物である。ｉ＞１の場合、該文書の収集物は、前の繰り返しのステップ１２２３でユーザに提示された（ｉ−１）番目の文書の収集物である。
【０１６５】
ｉ番目の繰り返しの開始時に、ステップ１２１６において、ユーザは、（ｉ−１）番目の文書の収集物内の文書に関して相対的フィードバックを提供する。好ましくは、該相対的フィードバックは、（ｉ−１）番目の収集物から該文書の部分集合をユーザが選択するという形をとる。但し、文書の選択は、ユーザがその文書で表される製品が、検索目標に対して、（ｉ−１）番目の収集物から選択しなかった文書で表される製品より、関連性があると考えているということを示唆する。ｉ番目の繰り返しにおいて選択された部分集合は、本開示では、ｉ番目の選択部分集合と称され、（ｉ−１）番目の収集物から選択されなかった文書は、時々、集合的に、ｉ番目の非選択部分集合と称される。ステップ１２１８において、本開示の他の箇所で説明される方法で、一連の幾何学的制約を、該相対的フィードバックから抽出する。ｉ番目の繰り返しで抽出された該一連の幾何学的制約は、ｉ番目の一連の幾何学的制約と称される。
【０１６６】
ステップ１２２０において、該ｉ番目の一連の幾何学的制約は、ｉ番目の候補空間を形成するために、該埋め込み空間に適用される。そして、ステップ１２２２において、ｉ番目の候補文書の収集物が、該ｉ番目の候補空間内の文書の部分集合として選択される。一実施形態では、該ｉ番目の文書の収集物は、該ｉ番目の候補空間内の識別力のある部分集合として選択されるが、別の実施形態では、該ｉ番目の文書の収集物は、識別力がない。ステップ１２２３において、該ｉ番目の文書の収集物が、任意の更なる精緻化のために、ユーザに向けて提示される。ステップ１２２４において、ユーザ入力が更なる精緻化を望んでいることを示す場合、ロジックは、検索ループの次の繰り返しの為に、ステップ１２１５に戻る。そうでない場合は、ユーザはコミットを表示し、ステップ１２２６において、システムは、ユーザが選択した文書に関する動作を行う。
【０１６７】
図１２の“動作を行う（take action）”ステップ１２２６では、（１）識別された目標物を選択するユーザ入力に応答して、システムは、商品をウィッシュリストへ追加する、当該商品をカートへ追加する、または、購入ダイアログへ進む（ステップ１２２８）、（２）システムは、恐らく後に、ユーザから支払いを受け付け、商品をユーザへ直接、或いは、ＦｅｄＥｘやＵＰＳ等の第３者の輸送会社または郵便業者を用いて発送する（ステップ１２３０）。支払いの受け付け及び発送のステップは、任意の順番で行うことができる。無料の製品に関しては、支払いは要求されなくてもよい。対応するサブモジュールは、動作モジュール８３０に含まれる（図８）。
【０１６８】
図１３は、映画、音楽、写真、本等のディジタル製品の購入に使われる、図９の検索方法のフローチャートである。本開示に記載の全ての変形は、図１３の方法で使用することができる。
【０１６９】
【０１７０】
最初に、ステップ１３１０において、ディジタル文書のカタログが埋め込み空間に埋め込まれ、データベース内に保存される。該データベース内では、距離は、埋め込み空間内の文書の各対の間で識別され、当該文書の各対によって表されるディジタル製品の間の相違点の所定の尺度に対応している。ステップ１３１２において、最初の問い合わせが、該問い合わせ結果を満足する文書の最初（ｉ＝０）の候補空間を生成するために、随意的に処理される。該最初の問い合わせは、例えば、通常のテキストによる問い合わせであってもよい。該最初の候補空間は、該文書のカタログの全範囲内にあり、随意的に、該全範囲よりは小さい。ステップ１３１３において、ディジタル文書の最初の収集物が、該最初の候補空間から抽出される。該文書の最初（ｉ＝０）の収集物は、該最初の候補空間の部分集合である。一実施形態では、該文書の最初の収集物は、該カタログの識別力のある部分集合として選択されるが、別の実施形態では、該文書の最初の収集物は、識別力がない。ステップ１３１４において、該文書の最初の収集物が、ユーザに向けて識別される。一実施形態では、該処理は、該最初の収集物内の文書の説明を、ユーザに向けて可視的に表示することが可能である。ステップ１３１５において、便宜上、繰り返し１と番号が付された繰り返しで始まる、反復検索処理が開始される。
【０１７１】
ｉ番目の繰り返しの開始前、ユーザには、前の繰り返し（ｉ−１）からの文書の収集物が提示される。ｉ＝１の場合、該文書の収集物は、ステップ１３１４からの該文書の最初（ｉ＝０）の収集物である。ｉ＞１の場合、該文書の収集物は、前の繰り返しのステップ１３２３でユーザに提示された（ｉ−１）番目の文書の収集物である。
【０１７２】
ｉ番目の繰り返しの開始時に、ステップ１３１６において、ユーザは、（ｉ−１）番目の文書の収集物内の文書に関して相対的フィードバックを提供する。好ましくは、該相対的フィードバックは、（ｉ−１）番目の収集物から該文書の部分集合をユーザが選択するという形をとる。但し、文書の選択は、ユーザがその文書で表されるディジタル製品が、検索目標に対して、（ｉ−１）番目の収集物から選択しなかった文書で表されるディジタル製品より、関連性があると考えているということを示唆する。ｉ番目の繰り返しにおいて選択された部分集合は、本開示では、ｉ番目の選択部分集合と称され、（ｉ−１）番目の収集物から選択されなかった文書は、時々、集合的に、ｉ番目の非選択部分集合と称される。ステップ１３１８において、本開示の他の箇所で説明される方法で、一連の幾何学的制約を、該相対的フィードバックから抽出する。ｉ番目の繰り返しで抽出された該一連の幾何学的制約は、ｉ番目の一連の幾何学的制約と称される。
【０１７３】
ステップ１３２０において、該ｉ番目の一連の幾何学的制約は、ｉ番目の候補空間を形成するために、該埋め込み空間に適用される。そして、ステップ１３２２において、ｉ番目の候補文書の収集物が、該ｉ番目の候補空間内の文書の部分集合として選択される。一実施形態では、該ｉ番目の文書の収集物は、該ｉ番目の候補空間内の識別力のある部分集合として選択されるが、別の実施形態では、該ｉ番目の文書の収集物は、識別力がない。ステップ１３２３において、該ｉ番目の文書の収集物が、任意の更なる精緻化のために、ユーザに向けて提示される。ステップ１３２４において、ユーザ入力が更なる精緻化を望んでいることを示す場合、ロジックは、検索ループの次の繰り返しの為に、ステップ１３１５に戻る。そうでない場合は、ユーザはコミットを表示し、ステップ１３２６において、システムは、ユーザが選択した文書に関する動作を行う。
【０１７４】
図１３の“動作を行う（take action）”ステップ１３２６では、システムが、随意的に且つ恐らく後に、ユーザから支払いを受け付け（ステップ１３２８）、電子メールやストリーミング等のデジタルコンテンツを配信する幾つかの手段を用いて、コンテンツをユーザへ提供する（または提供させる）（ステップ１３３０）。支払い受け付け及びコンテンツ提供のステップは、任意の順番で行うことができる。無料の製品に関しては、支払いは要求されなくても良い。対応するサブモジュールは、動作モジュール８３０に含まれる（図８）。
図１４は、ディジタル・コンテンツを識別するために使用され、次に物理的製品の製造に用いられる、図９の検索方法のフローチャートである。ディジタル・コンテンツは、例えば、ポスター、Ｔシャツ、マグカップ等に印刷される画像のカタログで構成されていてもよい。本開示に記載の全ての変形は、図１４の方法で使用できる。
【０１７５】
【０１７６】
最初に、ステップ１４１０において、ディジタル文書のカタログが埋め込み空間に埋め込まれ、データベース内に保存される。該データベース内では、距離は、埋め込み空間内の文書の各対の間で識別され、当該文書の各対によって表されるディジタル・コンテンツの間の相違点の所定の尺度に対応している。ステップ１４１２において、最初の問い合わせが、該問い合わせ結果を満足する文書の最初（ｉ＝０）の候補空間を生成するために、随意的に処理される。該最初の問い合わせは、例えば、通常のテキストによる問い合わせであってもよい。該最初の候補空間は、該文書のカタログの全範囲内にあり、随意的に、該全範囲よりは小さい。ステップ１４１３において、ディジタル文書の最初の収集物が、該最初の候補空間から抽出される。該文書の最初（ｉ＝０）の収集物は、該最初の候補空間の部分集合である。一実施形態では、該文書の最初の収集物は、該カタログの識別力のある部分集合として選択されるが、別の実施形態では、該文書の最初の収集物は、識別力がない。ステップ１４１４において、該文書の最初の収集物が、ユーザに向けて識別される。一実施形態では、該処理は、該最初の収集物内の文書の説明を、ユーザに対して可視的に表示することが可能である。ステップ１４１５において、便宜上、繰り返し１と番号が付された繰り返しで始まる、反復検索処理が開始される。
【０１７７】
ｉ番目の繰り返しの開始前、ユーザには、前の繰り返し（ｉ−１）からの文書の収集物が提示される。ｉ＝１の場合、該文書の収集物は、ステップ１４１４からの該文書の最初（ｉ＝０）の収集物である。ｉ＞１の場合、該文書の収集物は、前の繰り返しのステップ１４２３でユーザに提示された（ｉ−１）番目の文書の収集物である。
【０１７８】
ｉ番目の繰り返しの開始時に、ステップ１４１６において、ユーザは、（ｉ−１）番目の文書の収集物内の文書に関して相対的フィードバックを提供する。好ましくは、該相対的フィードバックは、（ｉ−１）番目の収集物から該文書の部分集合をユーザが選択するという形をとる。但し、文書の選択は、ユーザがその文書で表されるディジタル・コンテンツが、検索目標に対して、（ｉ−１）番目の収集物から選択しなかった文書で表されるディジタル・コンテンツより、関連性があると考えているということを示唆する。ｉ番目の繰り返しにおいて選択された部分集合は、本開示では、ｉ番目の選択部分集合と称され、（ｉ−１）番目の収集物から選択されなかった文書は、時々、集合的に、ｉ番目の非選択部分集合と称される。ステップ１４１８において、本開示の他の箇所で説明される方法で、一連の幾何学的制約を、該相対的フィードバックから抽出する。ｉ番目の繰り返しで抽出された該一連の幾何学的制約は、ｉ番目の一連の幾何学的制約と称される。
【０１７９】
ステップ１４２０において、該ｉ番目の一連の幾何学的制約は、ｉ番目の候補空間を形成するために、該埋め込み空間に適用される。そして、ステップ１４２２において、ｉ番目の候補文書の収集物が、該ｉ番目の候補空間内の文書の部分集合として選択される。一実施形態では、該ｉ番目の文書の収集物は、該ｉ番目の候補空間内の識別力のある部分集合として選択されるが、別の実施形態では、該ｉ番目の文書の収集物は、識別力がない。ステップ１４２３において、該ｉ番目の文書の収集物が、任意の更なる精緻化のために、ユーザに向けて提示される。ステップ１４２４において、ユーザ入力が更なる精緻化を望んでいることを示す場合、ロジックは、検索ループの次の繰り返しの為に、ステップ１４１５に戻る。そうでない場合は、ユーザはコミットを表示し、ステップ１４２６において、システムは、ユーザが選択した文書に関する動作を行う。
【０１８０】
図１４の“動作を行う（take action）”ステップ１４２６は、システムによって行われる以下のステップを伴う。
・選択されたデジタル・コンテンツを買い物かご、または、ウィッシュリストに追加する、或いは、そうしない場合は、選択された内容に基づき製品を購入するというユーザの意図を記録する（ステップ１４２８）。このステップでは、特定の種類の製品（例えば、マグカップやマウスパッド）についてのユーザの選択を記録してもよい。
・ユーザから支払いを受け付ける（ステップ１４３０）。
・選択された内容に基づき、例えば、物理的な人工物上に当該内容を再生することにより、物理的製品を製造する（ステップ１４３２）。
・ユーザに該物理的製品を発送する、或いは、配送業者によってそれを発送させる（ステップ１４３４）。
【０１８１】
支払いを受け付けるステップは、様々な実施形態において、製造ステップの後、または、発送ステップの後に行ってもよい。また、対応するサブモジュールは、動作モジュール８３０に含まれる（図８）。好ましくは、上記実施形態の唯一の目的は、物理的製品の製造及び購入を可能にする内容を識別することである。
【０１８２】
図１５は、共有のための内容の識別に使用される図９の検索方法のフローチャートである。例えば、埋め込み空間内のディジタル文書は、ユーザの個人的な写真または他の媒体のカタログから構成されてもよい。本開示に記載の全ての変形は、図１５の方法で使用することができる。
【０１８３】
【０１８４】
最初に、ステップ１５１０において、ディジタル文書のカタログが埋め込み空間に組み込まれ、データベース内に保存される。図１５の実施例では、該カタログは、例えば、ユーザの個人的な写真のライブラリである。該データベース内では、距離は、埋め込み空間内の文書の各対の間で識別され、当該文書の各対によって表される内容（content）の間の相違点の所定の尺度に対応している。ステップ１５１２において、最初の問い合わせが、該問い合わせ結果を満足する文書の最初（ｉ＝０）の候補空間を生成するために、随意的に処理される。該最初の問い合わせは、例えば、通常のテキストによる問い合わせであってもよい。該最初の候補空間は、該文書のカタログの全範囲内にあり、随意的に、該全範囲よりは小さい。ステップ１５１３において、ディジタル文書の最初の収集物が、該最初の候補空間から抽出される。該文書の最初（ｉ＝０）の収集物は、該最初の候補空間の部分集合である。一実施形態では、該文書の最初の収集物は、該カタログの識別力のある部分集合として選択されるが、別の実施形態では、該文書の最初の収集物は、識別力がない。ステップ１５１４において、該文書の最初の収集物が、ユーザに向けて識別される。一実施形態では、該処理は、該最初の収集物内の文書の説明を、ユーザに向けて可視的に表示することが可能である。ステップ１５１５において、便宜上、繰り返し１と番号が付された繰り返しで始まる、反復検索処理が開始される。
【０１８５】
ｉ番目の繰り返しの開始前、ユーザには、前の繰り返し（ｉ−１）からの文書の収集物が提示される。ｉ＝１の場合、該文書の収集物は、ステップ１５１４からの該文書の最初（ｉ＝０）の収集物である。ｉ＞１の場合、該文書の収集物は、前の繰り返しのステップ１５２３でユーザに提示された（ｉ−１）番目の文書の収集物である。
【０１８６】
ｉ番目の繰り返しの開始時に、ステップ１５１６において、ユーザは、（ｉ−１）番目の文書の収集物内の文書に関して相対的フィードバックを提供する。好ましくは、該相対的フィードバックは、（ｉ−１）番目の収集物から該文書の部分集合をユーザが選択するという形をとる。但し、文書の選択は、ユーザがその文書で表される内容が、検索目標に対して、（ｉ−１）番目の収集物から選択しなかった文書で表される内容より、関連性があると考えているということを示唆する。ｉ番目の繰り返しにおいて選択された部分集合は、本開示では、ｉ番目の選択部分集合と称され、（ｉ−１）番目の収集物から選択されなかった文書は、時々、集合的に、ｉ番目の非選択部分集合と称される。ステップ１５１８において、本開示の他の箇所で説明される方法で、一連の幾何学的制約を、該相対的フィードバックから抽出する。ｉ番目の繰り返しで抽出された該一連の幾何学的制約は、ｉ番目の一連の幾何学的制約と称される。
【０１８７】
ステップ１５２０において、該ｉ番目の一連の幾何学的制約は、ｉ番目の候補空間を形成するために、該埋め込み空間に適用される。そして、ステップ１５２２において、ｉ番目の候補文書の収集物が、該ｉ番目の候補空間内の文書の部分集合として選択される。一実施形態では、該ｉ番目の文書の収集物は、該ｉ番目の候補空間内の識別力のある部分集合として選択されるが、別の実施形態では、該ｉ番目の文書の収集物は、識別力がない。ステップ１５２３において、該ｉ番目の文書の収集物が、任意の更なる精緻化のために、ユーザに向けて提示される。ステップ１５２４において、ユーザ入力が更なる精緻化を望んでいることを示す場合、ロジックは、検索ループの次の繰り返しの為に、ステップ１５１５に戻る。そうでない場合は、ユーザはコミットを表示し、ステップ１５２６において、システムは、ユーザが選択した文書に関する動作を行う。
【０１８８】
図１５の“動作を行う（take action）”ステップ１５２６は、システムによって行われる以下のステップを伴う。
【０１８９】
・電子メール、ツイッター、Ｆａｃｅｂｏｏｋ等の共有の手段に関する情報をユーザから受け付ける（ステップ１５２８）
・第３者、または、当該商品を共有すべき第３者に関する情報をユーザから受け付ける（ステップ１５３０）。
・選択した１または複数の商品を共有する（ステップ１５３２）。
【０１９０】
共有手段に関する情報をユーザから受け付けるステップは、第３者または当該商品を共有すべき第３者に関する情報をユーザから受け付けるステップの前後どちらで行っても構わない。また、対応するサブモジュールは、動作モジュール８３０に含まれる（図８）。繰り返しになるが、好ましくは、上記実施形態の唯一の目的は、共有される内容を識別することである。
［コンピュータ環境］
【０１９１】
図１は、本発明の複数の側面が実施される環境の例を示す。本システムは、インターネット等のネットワーク１１４を介して互いに接続する、ユーザコンピュータ１１０及びサーバコンピュータ１１２を備える。サーバコンピュータ１１２は、ベクトル空間における相対的距離、及び／または、位置等の埋め込み情報に関連付けされた文書を識別する、データベース８１６にアクセス可能である。また、様々な実施形態におけるユーザコンピュータ１１０は、同じ情報を識別するデータベース１１８にアクセス可能であってもなくてもよい。
【０１９２】
最初に、埋め込みモジュール８２０（例えば、サーバコンピュータ１１２、または、別のコンピュータシステム、または、当該コンピュータ上で走る処理）が、文書のカタログを、該文書についての埋め込み情報を抽出するために分析する。例えば、該文書が写真の場合、埋め込みモジュール８２０は、ニューラルネットワークを含んでもよく、当該写真から埋め込み画像情報を抽出する深層学習を使用してもよい。
【０１９３】
或いは、埋め込みモジュール８２０は、画像分類（所与の写真が置かれた軸）のライブラリを抽出してもよい。該画像の分類は、所与の写真において、当該所与の写真が該分類を満足するか（或いはどんな確率で満足するか）を認識するアルゴリズムにそれぞれ関連付けされている。次に、埋め込みモジュール８２０は、各写真に適用可能な埋め込み情報を決定するために、事前に構築されたライブラリを、現在ユーザコンピュータ１１０上にある写真等の新たに提供された写真のより小さい集合に適用してもよい。どちらにしても、埋め込みモジュール８２０は、データベース８１６に、埋め込み情報にそれぞれ関連付けられた、ユーザが検索するかもしれない文書のカタログの識別を書き込む。
【０１９４】
更に別の実施形態において、埋め込みモジュール８２０がデータベース８１６に書き込む埋め込み情報は、外部のソース（source）から提供されるか、または、手動で入力される。
【０１９５】
上述の繰り返し識別ステップは、様々な異なる方法で実施可能である。一実施形態では、ユーザが所望する文書を繰り返し検索する際に、全ての計算は、サーバコンピュータ１１２上で行われる。ユーザコンピュータ１１０を操作するユーザは、全ての結果を、ブラウザだけで参照する。この実施形態では、ユーザコンピュータ１１０が、自身にアクセス可能な文書カタログデータベース１１８を必ずしも備えている必要はない。別の実施形態では、サーバコンピュータ１１２は、自身が持つ、埋め込み空間内の文書のデータベース１１８全体（または、当該データベースの部分集合）を、ユーザコンピュータ１１０へ送信する。ユーザコンピュータ１１０は、当該データベースを自身のデータベース１１８に書き込む。斯かる一実施形態では、ユーザが所望する文書を繰り返し検索する際全ての計算は、ユーザコンピュータ１１０上で行われる。他にも多くの構成が同様に可能である。
［コンピュータハードウェア］
【０１９６】
図２は、本発明の側面を組み込むソフトウェアの実施に使用可能なコンピュータシステム２１０の簡略化したブロック図である。当該図は、ユーザコンピュータ１１０とサーバコンピュータ１１２の両方の実施形態を示している。図１８の実施形態では、当該図は、サーバコンピュータ１８１０とモバイル機器１８１２の両方の実施形態を示している。上記方法は、規定された動作を実行する個々のロジックステップまたはモジュールを示しているが、各ステップまたはモジュールは、実際は、コンピュータシステム２１０を規定された方法で動作させると理解される。
【０１９７】
コンピュータシステム２１０は、典型的には、バスサブシステム２１２を介して、多数の周辺機器と通信するプロセッササブシステム２１４を備える。これらの周辺機器には、メモリサブシステム２２６及びファイル格納サブシステム２２８を備える格納サブシステム２２４、ユーザインターフェース入力装置２２２、ユーザインターフェース出力装置２２０、及び、ネットワークインターフェースサブシステム２１６が含まれる。入力及び出力装置は、ユーザによるコンピュータシステム２１０との相互作用を可能にする。ネットワークインターフェースサブシステム２１６は、通信ネットワーク２１８に対するインターフェースを含む、外部のネットワークへのインターフェースを提供し、通信ネットワーク２１８を介して他のコンピュータシステム内の対応するインターフェース装置に接続されている。通信ネットワーク２１８は、多くの相互接続したコンピュータシステム、及び、通信リンクを備えていてもよい。これらの通信リンクは、有線リンク、光学リンク、無線リンク、または、何らかの他の情報通信の機構であるが、典型的には、ＩＰベースの通信ネットワークである。一実施形態では、通信ネットワーク２１８は、インターネットであり、他の実施形態では、通信ネットワーク２１８は、何らかの適切なコンピュータネットワークである。
【０１９８】
ネットワークインターフェースの物理的なハードウェア構成要素は、ネットワークインターフェースカード（ＮＩＣ）と称されることがあるが、それらは必ずしもカードの形をしている必要はない。例えば、集積回路（ＩＣ）やマザーボードに直接接合するコネクタ、或いは、コンピュータシステムの他の構成要素と共に単一の集積回路チップ上で製造されたマクロセルの形をしていることもある。
【０１９９】
ユーザインターフェース入力装置２２２には、キーボード、マウス、トラックボール、タッチパッド、グラフィックタブレット等のポインティングデバイス、スキャナー、ディスプレイに組み込まれたタッチスクリーン、音声認識システム、マイク等の音声入力装置、その他の種類の入力装置が含まれる。一般に、“入力装置”という用語を使用する際は、情報をコンピュータシステム２１０、または、コンピュータネットワーク２１８に入力するための全ての考えられる種類の装置及び方法を含むことを意図している。ユーザが問い合わせ及び問い合わせの精緻化をシステムに提供する際には、入力装置２２２が使用される。
【０２００】
ユーザインターフェース出力装置２２０には、表示サブシステム、プリンター、ファクシミリ、音声出力装置等の非視覚的表示が含まれる。表示サブシステムには、ブラウン管（ＣＲＴ）、液晶ディスプレイ（ＬＣＤ）等のフラットパネル装置、投射装置、可視画像を生成するための他の機構が含まれる。また、表示サブシステムは、音声出力装置を介する等して、非視覚的表示を提供してもよい。一般に、“出力装置”という用語を使用する際は、コンピュータシステム２１０から、ユーザ、或いは、別のマシンまたはコンピュータシステムに情報を出力するための、全ての考えられる種類の装置及び方法を含むことを意図している。システムがユーザに向けて問い合わせ結果のレイアウトを提示する際には、出力装置２２０が使用される。
【０２０１】
格納サブシステム２２４は、本発明のある実施形態の機能を提供する、基本的なプログラムとデータ構造を格納する。例えば、本発明のある実施形態の機能を実施する様々なモジュールが、格納サブシステム２２４に格納される。これらのソフトウェアモジュールは、一般的に、プロセッササブシステム２１４によって実行される。
【０２０２】
メモリサブシステム２２６は、典型的には、プログラムの実行中に指示やデータを格納するための主たるランダムアクセスメモリ（ＲＡＭ）２３０、及び、固定の指示が格納された読み出し専用メモリ（ＲＯＭ）２３２を含む、多数のメモリを備えている。ファイル格納サブシステム２２８は、プログラム及びデータファイルの持続的な格納を可能とし、ハードディスクドライブ、関連する取り外し可能な媒体と共にフロッピーディスクドライブ、ＣＤ−ＲＯＭドライブ、光学ドライブ、取り外し可能なメディアカートリッジを備えてもよい。本発明のある実施形態の機能を実施するデータベース及びモジュールは、１以上のＣＤ−ＲＯＭ等のコンピュータ可読媒体上で提供され、ファイル格納サブシステム２２８によって格納されてもよい。ホストメモリ２２６は、中でも、プロセッササブシステム２１４によって実行される際に、コンピュータシステムにここに開示した機能を操作または実行させる、コンピュータの指示を含む。本開示で使用されているように、“ホスト”または“コンピュータ”内または上で走ると考えられる処理及びソフトウェアは、プロセッサシステム２１４上で、ホストメモリサブシステム２２６内のコンピュータ指示及びデータに応答して実行される。ホストメモリサブシステム２２６は、そうした指示及びデータのための他のローカルなまたは遠隔の記憶装置を含む。
【０２０３】
バスサブシステム２１２は、コンピュータシステム２１０の様々な構成要素及びサブシステムが互いに意図されたように通信する際に用いる機構を提供する。バスサブシステム２１２は単一のバスとして模式的に示されているが、該バスサブシステムに代わる実施形態では、複数のバスを使用してもよい。
【０２０４】
コンピュータシステム２１０自体は、パーソナルコンピュータ、携帯コンピュータ、ワークステーション、コンピュータ端末、ネットワークコンピュータ、テレビ、メインフレーム、サーバファーム、その他のデータ処理システムまたはユーザ機器を含む様々な種類の機器であり得る。特に、ユーザコンピュータ１１０は、タブレットコンピュータまたはスマートフォン等のハンドヘルド機器であることが想定される。別実施形態において、“システム”は本開示で記載する全ての動作を行い、当該“システム”は、単一または複数のコンピュータとして、様々なメンバーコンピュータで何らかの所望される動作が割り当てられて、実施することができる。コンピュータ及びネットワークの絶えず変化する性質のために、図２に示したコンピュータシステム２１０の説明は、本発明の好ましい実施形態を示す目的で、具体例としてのみ意図されている。コンピュータシステム２１０は、図２に示すコンピュータシステムよりも構成要素の多いまたは少ない、多くの他の構成が可能である。
【０２０５】
本発明は、完全に機能するデータ処理システムとの関連で説明してきたが、ここに記載の処理が、指示及びデータについて、コンピュータ可読の媒体の形で配布可能であり、本発明は、該配布の実施に実際に使用される信号担持媒体の特定の種類に関係なく、等しく適用されると、当業者は理解する。本開示で使われているように、コンピュータ可読媒体は、コンピュータシステムによって情報の記憶及び読み出しが可能であるものを指す。例としては、フロッピーディスク、ハードディスクドライブ、ＲＡＭ、ＣＤ、ＤＶＤ、フラッシュメモリ、ＵＳＢドライブ等が挙げられる。コンピュータ可読媒体は、情報を符号化された形式で記憶し、当該情報は、特定のデータ処理システムでの実際の使用のために復号化される。単一のコンピュータ可読媒体は、該用語が本開示で使われているように、複数のＣＤ−ＲＯＭ、ＲＡＭの複数のセグメント、複数の種類の媒体の組み合わせ等の２以上の物理的な品物を含んでもよい。本開示で使われているように、該用語には、時間と共に信号が変化する方法で情報が符号化される単なる時変信号は含まれない。
［条項］
【０２０６】
以下の条項では、本発明の側面に係る方法及びシステムの様々な例を説明する。それらの幾つかは、クレームに記載の側面に追加される。
【０２０７】
条項１．  ユーザが所望する文書を識別するためのシステムであって、
プロセッサと、
前記プロセッサに接続され、ロジックを規定する複数のソフトウェアコードの部分を持続的な方法で記憶するコンピュータ可読媒体と、
埋め込み空間内の文書のカタログを識別し、前記埋め込み空間内の文書の各対で表される製品の間の相違点の所定の尺度に対応する、前記文書の各対の間の距離を識別するデータベースを、コンピュータ可読媒体において持続的な方法で提供する第１モジュールと、
前記ユーザに向けて、前記埋め込み空間内の最初（ｉ＝０）の候補空間から、前記最初の候補空間より少ない文書を有する、Ｎ０＞１の候補文書の最初（ｉ＝０）の収集物を識別する第２モジュールと、
第１（ｉ＝１）の繰り返しから始まる複数の繰り返しにおけるｉ番目の繰り返し毎に、  （ｉ−１）番目の文書の収集物からｉ番目に選択された文書の部分集合を前記ユーザが選択することに応じて、所定の集合的密接の定義に従い、ｉ番目の候補空間内の文書が、（ｉ−１）番目の候補空間内の文書より、埋め込み空間において、ｉ番目に選択された部分集合内の文書に対して集合的に近くなるように、ｉ番目の候補空間を識別するために、前記埋め込み空間を幾何学的に制約し、
前記ユーザに向けて、前記ｉ番目の候補空間からＮｉ＞１の候補文書のｉ番目の収集物を識別する第３モジュールと（但し、Ｎｉは前記ｉ番目の候補空間内の文書の数より小さい）、
前記ユーザに向けて識別された特定の文書の部分集合を前記ユーザが選択することに応じて動作を行わせる第４モジュールと、を備え、
前記所定の集合的密接の定義は、候補文書Ｘが、前記埋め込み空間においてｄ（Ａ，Ｘ）＜ｄ（Ｂ，Ｘ）の場合に文書Ｂよりも文書Ａにより近いと考えられるように、規定される。
【０２０８】
条項２．  条項１に記載のシステムであって、前記第２モジュールによって前記ユーザに向けて識別された文書の各ｉ番目の収集物は、前記ｉ番目の候補空間における集合サイズＮｉの文書の平均的な識別力よりも、より識別力がある。
【０２０９】
条項３．  条項１に記載のシステムであって、前記第１モジュールは、
所定の主題領域内にあると考えられる文書のみを含む訓練データに依存して埋め込みを学習するモジュールと、
前記学習された埋め込みに依存して、前記文書のカタログから前記埋め込み空間に、前記文書を埋め込むモジュールと、を備え、
前記文書のカタログ内の全ての文書は、前記主題領域内にあると考えられる。
【０２１０】
条項４．  条項１に記載のシステムであって、ｉ番目の候補空間を識別するために各ｉ番目の繰り返しにおいて前記埋め込み空間を幾何学的に制約する際に、前記第３モジュールは、
前記埋め込み空間上の幾何学的制約の各ｉ番目の集合を識別し、
前記ｉ番目の候補空間内の少なくとも幾つかの特定の文書の夫々について、
各幾何学的制約の不満足は各ペナルティに事前に関連付けられており、幾何学的制約の１からｉ番目の集合内の、前記特定の文書によって満足されない幾何学的制約の夫々に関連付けられたペナルティの総計を決定し、
前記埋め込み空間から、前記文書の内、Ｒｉのみを前記ｉ番目の候補空間に含み、
前記Ｒｉの文書の夫々のペナルティの総計は、前記第３モジュールによって総計が決定された前記埋め込み空間における他のどの文書のペナルティの総計を超えることはない。
【０２１１】
条項５．  条項１に記載のシステムであって、前記ユーザに向けて、前記最初（ｉ＝０）の候補空間からＮ０＞１の候補文書の最初（ｉ＝０）の収集物を識別する際、前記第２モジュールは、
前記最初の候補空間内の類似する文書のクラスタを識別し、
前記識別されたクラスタの夫々から、少なくとも１つの文書を含むように前記最初の収集物を選択する。
【０２１２】
条項６．  条項５に記載のシステムであって、前記ユーザに向けて候補文書の最初の収集物を識別する際に、前記第２モジュールは、前記クラスタの夫々のmedoidに向けて識別を行う。
【０２１３】
条項７．  条項１に記載のシステムであって、各ｉ番目の候補空間を識別するために前記埋め込み空間を幾何学的に制約する際に、前記第３モジュールは、前記埋め込み空間上の各ｉ番目の幾何学的制約の集合を識別する。
【０２１４】
条項８．  条項７に記載のシステムであって、前記幾何学的制約の各ｊ番目の制約は、前記埋め込み空間内の各文書の対（Ａｊ，Ｂｊ）を識別し、ｄ（Ａｊ，Ｘ）＜ｄ（Ｂｊ，Ｘ）の場合に特定の候補文書Ｘによって満足されるように規定される。
【０２１５】
条項９．  条項７に記載のシステムであって、前記第３モジュールによって前記ユーザに向けて識別された各（ｉ−１）番目の収集物内の文書であるが前記ｉ番目の選択された部分集合内には存在しない文書が、ｉ番目の選択されていない文書の部分集合を規定し、
各ｉ番目の候補空間を識別するために前記埋め込み空間を幾何学的に制約する際に、前記（ｉ−１）番目の文書の収集物から前記ｉ番目の文書の選択された部分集合をユーザが選択することに応じて、前記第３モジュールは、前記埋め込み空間上の複数の追加された制約を追加し、
前記複数の追加された制約は、前記ｉ番目の選択された部分集合内の全ての文書Ａ及び、前記ｉ番目の選択されていない文書の部分集合内の文書Ｂに関してｄ（Ａ，Ｘ）＜ｄ（Ｂ，Ｘ）の場合及び当該場合に限り、特定の候補文書Ｘによって満足される。
【０２１６】
条項１０．  条項１に記載のシステムであって、各ｉ番目の候補空間を識別するために前記埋め込み空間を幾何学的に制約する際に、前記第３のモジュールは、前記埋め込み空間内の超平面を更新し、前記ｉ番目の候補空間は、前記更新された超平面によって境界が示される前記埋め込み空間の領域である。
【０２１７】
条項１１．  条項１に記載のシステムは、前記埋め込み空間が距離空間であり、各ｉ番目の候補空間を識別するために前記埋め込み空間を幾何学的に制約する際に、前記第３モジュールが、前記埋め込み空間内のｍ−超平面を更新し、前記ｉ番目の候補空間は、前記更新された超平面によって境界が示される前記埋め込み空間の領域である。
【０２１８】
条項１２．  条項１に記載のシステムであって、各ｉ番目の候補空間を識別するために前記埋め込み空間を幾何学的に制約する際に、前記第３モジュールは、機械学習アルゴリズムで前記ユーザによって選択された文書の前記ｉ番目の部分集合を、前記ユーザの所望する目標の仮説を更新するための訓練データとして扱う。
【０２１９】
条項１３．  条項１に記載のシステムであって、各ｉ番目の候補空間を識別するために前記埋め込み空間を幾何学的に制約する際に、前記第３モジュールは、前記埋め込み空間上の幾何学的制約の各ｉ番目の集合を識別し、更に、前記システムは、
前記幾何学的制約の集合の内、少なくとも２つを識別する制約データベースを維持する第５モジュールと、
Ｐ＜Ｑの場合、前記繰り返しのＱ番目の後に、Ｐ番目の候補空間へ戻るというユーザの要求に応答して、前記ユーザに向けて、前記Ｐ番目の候補空間からＮＰ＞１候補文書の集合を識別する第６モジュールと、を備える。
【０２２０】
条項１４．  ユーザが製品を取得する方法であって、
埋め込み空間内の文書のカタログを識別するデータベースであって、前記文書のカタログ内の各文書は製品を表し、前記埋め込み空間内の文書の各対で表される前記製品の間の相違点の所定の尺度に対応する、前記文書の各対の間の距離を識別するデータベースを、コンピュータシステムにアクセス可能に提供する工程と、
コンピュータシステムが、前記ユーザに向けて、前記埋め込み空間内の最初（ｉ＝０）の候補空間から、前記最初の候補空間よりも少ない文書を有する、Ｎ０＞１の候補文書の最初（ｉ＝０）の収集物を識別する工程と、
第１（ｉ＝１）の繰り返しから始まる複数の繰り返しにおけるｉ番目の繰り返し毎に、
（ｉ−１）番目の文書の収集物からｉ番目に選択された文書の部分集合をユーザが選択することに応答して、
コンピュータシステムが、所定の集合的密接の定義に従い、ｉ番目の候補空間内の文書が、（ｉ−１）番目の候補空間内の文書よりは、前記埋め込み空間において、ｉ番目に選択された部分集合内の文書に対して集合的により近くなるように、ｉ番目の候補空間を識別するために前記埋め込み空間を幾何学的に制約し、
前記ユーザに向けて、前記ｉ番目の候補空間からＮｉ＞１の候補文書のｉ番目の収集物を識別する工程と（但し、Ｎｉは前記ｉ番目の候補空間内の文書の数より小さい）、
前記ユーザに向けて識別された特定の文書をユーザが選択することに応答して、前記特定の文書によって表される製品を、ユーザに向けて発送する工程と、を備える。
【０２２１】
条項１５．  条項１４に記載の方法であって、前記特定の文書をユーザが選択することに更に応答して、前記特定の文書で表される前記製品に対する支払いを受け付ける工程を、更に備える。
【０２２２】
条項１６．  ユーザが製品を取得するシステムであって、
プロセッサと、
前記プロセッサに接続され、ロジックを規定する複数のソフトウェアコードの部分を持続的な方法で記憶するコンピュータ可読媒体と、
埋め込み空間内の文書のカタログを識別するデータベースであって、前記文書のカタログ内の各文書は製品を表し、前記埋め込み空間内の文書の各対で表される前記製品の間の相違点の所定の尺度に対応する、前記文書の各対の間の距離を識別するデータベースを、コンピュータ可読媒体において持続的な方法で提供する第１モジュールと、
前記ユーザに向けて、前記埋め込み空間内の最初（ｉ＝０）の候補空間から、前記最初の候補空間より少ない文書を有する、Ｎ０＞１の候補文書の最初（ｉ＝０）の収集物を識別する第２モジュールと、
第１（ｉ＝１）の繰り返しから始まる複数の繰り返しにおけるｉ番目の繰り返し毎に、  （ｉ−１）番目の文書の収集物からｉ番目に選択された文書の部分集合をユーザが選択することに応答して、所定の集合的密接の定義に従い、ｉ番目の候補空間内の文書が、（ｉ−１）番目の候補空間内の文書よりは、埋め込み空間において、ｉ番目に選択された部分集合内の文書に対して集合的に近くなるように、ｉ番目の候補空間を識別するために、前記埋め込み空間を幾何学的に制約し、
前記ユーザに向けて、前記ｉ番目の候補空間からＮｉ＞１の候補文書のｉ番目の収集物を識別する第３モジュールと（但し、Ｎｉは前記ｉ番目の候補空間内の文書の数より小さい）、
前記ユーザに向けて識別された特定の文書をユーザが選択することに応答して、前記特定の文書で表される製品をユーザに向けて発送する第４モジュールと、を備える。
【０２２３】
条項１７．  ユーザがディジタル・コンテンツを取得する方法であって、
コンピュータシステムにアクセス可能に、埋め込み空間内の文書のカタログを識別するデータベースであって、前記文書のカタログ内の前記文書の夫々はディジタル・コンテンツを表し、前記埋め込み空間内の文書の各対で表される前記ディジタル・コンテンツの間の相違点の所定の尺度に対応する、前記文書の各対の間の距離を識別するデータベースを提供する工程と、
コンピュータシステムが、前記ユーザに向けて、前記埋め込み空間内の最初（ｉ＝０）の候補空間から、前記最初の候補空間よりも少ない文書を有する、Ｎ０＞１の候補文書の最初（ｉ＝０）の収集物を識別する工程と、
第１（ｉ＝１）の繰り返しから始まる複数の繰り返しにおけるｉ番目の繰り返し毎に、
（ｉ−１）番目の文書の収集物からｉ番目に選択された文書の部分集合をユーザが選択することに応答して、コンピュータシステムが、所定の集合的密接の定義に従い、ｉ番目の候補空間内の文書が、（ｉ−１）番目の候補空間内の文書よりは、前記埋め込み空間において、ｉ番目に選択された部分集合内の文書に対して集合的に近くなるように、ｉ番目の候補空間を識別するために前記埋め込み空間を幾何学的に制約し、
前記ユーザに向けて、前記ｉ番目の候補空間からＮｉ＞１の候補文書のｉ番目の収集物を識別する工程と（但し、Ｎｉは前記ｉ番目の候補空間内の文書の数より小さい）、
前記ユーザに向けて識別された特定の文書をユーザが選択することに応答して、前記特定の文書によって表されるディジタル・コンテンツを、ユーザに向けて配信する工程と、を備える。
【０２２４】
条項１８．  条項１７に記載の方法であって、前記ディジタル・コンテンツは、ファイル、画像、映像、音声ファイル、ストリーミング媒体プログラムからなるグループの一部である。
【０２２５】
条項１９．  ユーザがディジタル・コンテンツを取得するシステムであって、
プロセッサと、
前記プロセッサに接続され、ロジックを規定する複数のソフトウェアコードの部分を持続的な方法で記憶するコンピュータ可読媒体と、
埋め込み空間内の文書のカタログを識別するデータベースであって、前記文書のカタログの文書の夫々は各ディジタル・コンテンツを表し、前記埋め込み空間内の文書の各対で表される前記ディジタル・コンテンツの間の相違点の所定の尺度に対応する、前記文書の各対の間の距離を識別するデータベースを、コンピュータ可読媒体において持続的な方法で提供する第１モジュールと、
前記ユーザに向けて、前記埋め込み空間内の最初（ｉ＝０）の候補空間から、前記最初の候補空間より少ない文書を有する、Ｎ０＞１の候補文書の最初（ｉ＝０）の収集物を識別する第２モジュールと、
第１（ｉ＝１）の繰り返しから始まる複数の繰り返しにおけるｉ番目の繰り返し毎に、
（ｉ−１）番目の文書の収集物からｉ番目に選択された文書の部分集合をユーザが選択することに応答して、所定の集合的密接の定義に従い、ｉ番目の候補空間内の文書が、（ｉ−１）番目の候補空間内の文書よりも、埋め込み空間において、ｉ番目に選択された部分集合内の文書に対して集合的に近くなるように、ｉ番目の候補空間を識別するために前記埋め込み空間を幾何学的に制約し、
前記ユーザに向けて、前記ｉ番目の候補空間からＮｉ＞１の候補文書のｉ番目の収集物を識別する第３モジュールと（但し、Ｎｉは前記ｉ番目の候補空間内の文書の数より小さい）、
前記ユーザに向けて識別された特定の文書をユーザが選択することに応答して、前記特定の文書で表されるディジタル・コンテンツをユーザに向けて配信する第４モジュールと、を備える。
【０２２６】
条項２０．  ディジタル・コンテンツから作製される物理的製品を製造する方法であって、
コンピュータシステムにアクセス可能な、埋め込み空間内の文書のカタログを識別するデータベースであって、前記文書のカタログ内の文書の夫々はディジタル・コンテンツを表し、前記埋め込み空間内の文書の各対で表される前記ディジタル・コンテンツの間の相違点の所定の尺度に対応する、前記文書の各対の間の距離を識別するデータベースを提供する工程と、
コンピュータシステムが、前記ユーザに向けて、前記埋め込み空間内の最初（ｉ＝０）の候補空間から、前記最初の候補空間よりも少ない文書を有するＮ０＞１の候補文書の最初（ｉ＝０）の収集物を識別する工程と、
第１（ｉ＝１）の繰り返しから始まる複数の繰り返しにおけるｉ番目の繰り返し毎に、
（ｉ−１）番目の文書の収集物からｉ番目に選択された文書の部分集合をユーザが選択することに応答して、コンピュータシステムが、所定の集合的密接の定義に従い、ｉ番目の候補空間内の文書が、（ｉ−１）番目の候補空間内の文書よりは、前記埋め込み空間において、ｉ番目に選択された部分集合内の文書に対して集合的に近くなるように、ｉ番目の候補空間を識別するために前記埋め込み空間を幾何学的に制約し、
前記ユーザに向けて、前記ｉ番目の候補空間からＮｉ＞１の候補文書のｉ番目の収集物を識別する工程と（但し、Ｎｉは前記ｉ番目の候補空間内の文書の数より小さい）、
前記ユーザに向けて識別された特定の文書をユーザが選択することに応答して、前記特定の文書によって表されるディジタル・コンテンツに基づいて、物理的製品の製造及び配送を行う工程と、を備える。
【０２２７】
条項２１．  ディジタル・コンテンツから作製される物理的製品を製造するシステムであって、
プロセッサと、
前記プロセッサに接続され、ロジックを規定する複数のソフトウェアコードの部分を持続的な方法で記憶するコンピュータ可読媒体と、
埋め込み空間内の文書のカタログを識別するデータベースであって、前記文書のカタログ内の文書の夫々が各ディジタル・コンテンツを表し、前記埋め込み空間内の文書の各対で表される前記ディジタル・コンテンツの間の相違点の所定の尺度に対応する、前記文書の各対の間の距離を識別するデータベースを、コンピュータ可読媒体において持続的な方法で提供する第１モジュールと、
前記ユーザに向けて、前記埋め込み空間内の最初（ｉ＝０）の候補空間から、前記最初の候補空間より少ない文書を有する、Ｎ０＞１の候補文書の最初（ｉ＝０）の収集物を識別する第２モジュールと、
第１（ｉ＝１）の繰り返しから始まる複数の繰り返しにおけるｉ番目の繰り返し毎に、
（ｉ−１）番目の文書の収集物からｉ番目に選択された文書の部分集合をユーザが選択することに応答して、所定の集合的密接の定義に従い、ｉ番目の候補空間内の文書が、（ｉ−１）番目の候補空間内の文書よりも、前記埋め込み空間において、ｉ番目に選択された部分集合内の文書に対して集合的に近くなるように、ｉ番目の候補空間を識別するために前記埋め込み空間を幾何学的に制約し、
前記ユーザに向けて、前記ｉ番目の候補空間からＮｉ＞１の候補文書のｉ番目の収集物を識別する第３モジュールと（但し、Ｎｉは前記ｉ番目の候補空間内の文書の数より小さい）、
前記ユーザに向けて識別された特定の文書をユーザが選択することに応答して、前記特定の文書で表される前記ディジタル・コンテンツに基づいて物理的製品の製造及び配送を行う第４モジュールと、を備える。
【０２２８】
条項２２．  ディジタル・コンテンツを共有する方法であって、
コンピュータシステムにアクセス可能な、埋め込み空間内の文書のカタログを識別するデータベースであって、前記文書のカタログ内の文書の夫々は各ディジタル・コンテンツを表し、前記埋め込み空間内の文書の各対で表される前記ディジタル・コンテンツの間の相違点の所定の尺度に対応する、前記文書の各対の間の距離を識別するデータベースを提供する工程と、
コンピュータシステムが、前記ユーザに向けて、前記埋め込み空間内の最初（ｉ＝０）の候補空間から、前記最初の候補空間よりも少ない文書を有する、Ｎ０＞１の候補文書の最初（ｉ＝０）の収集物を識別する工程と、
第１（ｉ＝１）の繰り返しから始まる複数の繰り返しにおけるｉ番目の繰り返し毎に、
（ｉ−１）番目の文書の収集物からｉ番目に選択された文書の部分集合をユーザが選択することに応答して、コンピュータシステムが、所定の集合的密接の定義に従い、ｉ番目の候補空間内の文書が、（ｉ−１）番目の候補空間内の文書よりも、前記埋め込み空間において、ｉ番目に選択された部分集合内の文書に対して集合的に近くなるように、ｉ番目の候補空間を識別するために前記埋め込み空間を幾何学的に制約し、
前記ユーザに向けて、前記ｉ番目の候補空間からＮｉ＞１の候補文書のｉ番目の収集物を識別する工程と（但し、Ｎｉは前記ｉ番目の候補空間内の文書の数より小さい）、
前記ユーザに向けて識別された特定の文書をユーザが選択することに応答して、前記特定の文書によって表される前記ディジタル・コンテンツを共有させる工程と、を備える。
【０２２９】
条項２３．  ディジタル・コンテンツを共有するシステムであって、
プロセッサと、
前記プロセッサに接続され、ロジックを規定する複数のソフトウェアコードの部分を持続的な方法で記憶するコンピュータ可読媒体と、
埋め込み空間内の文書のカタログを識別するデータベースであって、前記文書のカタログ内の文書の夫々が各ディジタル・コンテンツを表し、前記埋め込み空間内の文書の各対で表される前記ディジタル・コンテンツの間の相違点の所定の尺度に対応する、前記文書の各対の間の距離を識別するデータベースを、コンピュータ可読媒体において持続的な方法で提供する第１モジュールと、
前記ユーザに向けて、前記埋め込み空間内の最初（ｉ＝０）の候補空間から、前記最初の候補空間より少ない文書を有する、Ｎ０＞１の候補文書の最初（ｉ＝０）の収集物を識別する第２モジュールと、
第１（ｉ＝１）の繰り返しから始まる複数の繰り返しにおけるｉ番目の繰り返し毎に、  （ｉ−１）番目の文書の収集物からｉ番目に選択された文書の部分集合をユーザが選択することに応答して、所定の集合的密接の定義に従い、ｉ番目の候補空間内の文書が、（ｉ−１）番目の候補空間内の文書よりも、前記埋め込み空間において、ｉ番目に選択された部分集合内の文書に対して集合的に近くなるように、ｉ番目の候補空間を識別するために前記埋め込み空間を幾何学的に制約し、
前記ユーザに向けて、前記ｉ番目の候補空間からＮｉ＞１の候補文書のｉ番目の収集物を識別する第３モジュールと（ただし、Ｎｉは前記ｉ番目の候補空間内の文書の数より小さい）、
前記ユーザに向けて識別された特定の文書をユーザが選択することに応答して、前記特定の文書で表されるディジタル・コンテンツを共有させる第４モジュールと、を備える。
【０２３０】
条項２４．  ユーザが所望する文書を識別するシステムであって、
プロセッサ及び前記各プロセッサに接続されたコンピュータ可読媒体を夫々有し、複数のソフトウェアコードの部分を前記コンピュータ可読媒体に持続的な方法で記憶する、クライアント装置とサーバ装置を備え、
前記サーバ装置は、自身にアクセス可能なコンピュータ可読媒体に保存された文書データベースを備え、前記文書データベースは、埋め込み空間内の文書のカタログを識別し、更に、前記埋め込み空間内の文書の各対の間の相違点の所定の尺度に対応する、前記文書の各対の間の距離を識別し、
前記クライアント装置は、自身にアクセス可能な、前記埋め込み空間上の幾何学的制約の収集物を識別する制約データベースを、コンピュータ可読媒体に持続的な方法で有し、
前記サーバ装置上の前記複数のソフトウェアコードの部分は、
前記ユーザに向けて、前記埋め込み空間内の最初（ｉ＝０）の候補空間から、前記最初の候補空間より少ない文書を有する、Ｎ０＞１の候補文書の最初（ｉ＝０）の収集物を識別するモジュールと、
前記クライアント装置からの、前記埋め込み空間上の幾何学的制約の収集物の受け取りに依存して、及び、当該受け取りに応答してｉ番目の候補空間を決定し、前記ユーザに向けて、前記ｉ番目の候補空間からＮｉ＞１の候補文書のｉ番目の収集物を識別するモジュールと（但し、Ｎｉは前記ｉ番目の候補空間内の文書の数より小さい）、を備え、
前記クライアント装置上の前記複数のソフトウェアコードの部分は、前記サーバ装置から受け取った候補文書の収集物を前記ユーザに向けて提示するモジュールを備え、
前記クライアント装置上の前記複数のソフトウェアコードの部分は、更に、第１（ｉ＝１）の繰り返しから始まる複数の繰り返しにおけるｉ番目の繰り返し毎に、
前記サーバ装置からの（ｉ−１）番目の文書の収集物の受け取りに応答して、前記ユーザに向けて前記（ｉ−１）番目の文書の収集物を提示し、
前記ユーザに提示された前記（ｉ−１）番目の文書の収集物からｉ番目に選択された文書の部分集合をユーザが選択することに応答して、所定の集合的密接の定義に従い、ｉ番目の候補空間内の文書が、（ｉ−１）番目の候補空間内の文書よりも、前記埋め込み空間において、ｉ番目に選択された部分集合内の文書に対して集合的に近くなるように、ｉ番目の候補空間を識別する、前記埋め込み空間上の少なくとも１つの幾何学的制約のｉ番目の集合を構築し、
前記ｉ番目の幾何学的制約の集合に応じて前記制約データベースを更新し、
前記ｉ番目の候補空間を決定するために前記制約データベース内の前記制約の集合を前記サーバに向かって転送するモジュールを備え、
前記クライアント装置上の前記複数のソフトウェアコードの部分は、更に、前記ユーザに向けて提示された文書の特定の部分集合を前記ユーザが選択することに応答して動作を行わせるモジュールを備える。
【０２３１】
条項２５．  条項２４に記載のサーバ装置。
【０２３２】
条項２６．  条項２４に記載のクライアント装置。
【０２３３】
先行するイベントまたは値が所与のイベントまたは値に影響する場合、本開示で使用されているように、当該所与のイベントまたは値は、先行するイベントまたは値に“応答”している。中間に処理要素、ステップ、期間が存在する場合でも、前記所与のイベントまたは値は、やはり先行するイベントまたは値に“応答”していると言える。当該中間に存在する処理要素またはステップが、１以上のイベントまたは値と結合した場合、処理要素またはステップの信号の出力は、当該イベントまたは値の入力の夫々に対して、“応答”していると考えられる。所与のイベントまたは値が、先行するイベントまたは値と同じである場合は、これは、所与のイベントまたは値が先行するイベントまたは値に“応答”していると考えられる、単なる縮退した（degenerate）ケースである。所与のイベントまたは値の、別のイベントまたは値に対する“依存”も同様に定義される。
【０２３４】
本開示で使われているように、情報の項目の“識別”は、情報の当該項目の直接の特定を必ずしも必要としない。情報は、単に、１以上の間接的な層を通じて実際の情報を参照するだけで、或いは、実際の情報の項目を決定するのに十分な、異なる情報の１以上の項目を識別することで、フィールドにおける“識別”が可能である。また、“示す”という用語は、本開示では、“識別する”と同じ意味で使われている。
【０２３５】
出願人は、ここに開示された問題を解決するか否かに拘わらず、また、特許請求の範囲に限定することなく、当業者の共通の一般的知識の観点から、本明細書全体に基づいて実行可能である程度に、本明細書及び特許請求の範囲に記載した個々の特徴を分離して、及び、当該特徴の２以上の組み合わせを、ここに開示する。出願人は、本発明の側面は、当該特徴または特徴の組み合わせで構成されていることを示している。前述の説明を考慮して、本発明の範囲内で、様々な変形が可能であることは、当業者にとっては明白である。
【０２３６】
本発明の好ましい実施形態の上記説明は、例証及び描写を目的として提供された。本発明を、開示された形が網羅的であること、または、それに限定することは意図されていない。言うまでもなく、多くの変更及び変形が当業者には明らかである。特に、本特許出願の背景技術の部分で説明、示唆、或いは、参照によって組み込まれているありとあらゆる変形は、本発明の実施形態の説明に、限定されることなく、参照によって明確に取り込まれる。また、何れか１つの実施形態に関して、本開示で説明、示唆、或いは、参照によって取り込まれたありとあらゆる変形は、他の全ての実施形態についても教示されたものと考えられる。本開示で記載した実施形態は、本発明の本質及び実際的な応用を最も良く説明するために、選択及び説明されている。それにより、当業者は、様々な実施形態に関して本発明を理解し、意図した特定の使用に合わせて様々な変形を行うことが可能となる。本発明の範囲は、以下の請求項及びその均等物によって定義されることが意図されている。
【図１】
2017518570.tif 000003
【図２】
2017518570.tif 000004
【図３】
2017518570.tif 000005
【図４】
2017518570.tif 000006
【図５】
2017518570.tif 000007
【図６】
2017518570.tif 000008
【図７】
2017518570.tif 000009
【図８】
2017518570.tif 000010
【図９】
2017518570.tif 000011
【図１０Ａ】
2017518570.tif 000012
【図１０Ｂ】
2017518570.tif 000013
【図１１】
2017518570.tif 000014
【図１２】
2017518570.tif 000015
【図１３】
2017518570.tif 000016
【図１４】
2017518570.tif 000017
【図１５】
2017518570.tif 000018
【図１６】
2017518570.tif 000019
【図１７】
2017518570.tif 000020
【図１８】
2017518570.tif 000021
【図１９】
2017518570.tif 000022
【国際調査報告】
2017518570.tif 000023
2017518570.tif 000024