(57)【特許請求の範囲】
【請求項１】
システムであって、
プロセッサと、
前記プロセッサにつながれ、前記プロセッサに命令を提供するように構成されたメモリと、を備え、
前記プロセッサは、
現行期間に関連付けられたユーザ公開コンテンツ情報のセットを得ることであって、前記ユーザ公開コンテンツ情報は、複数の製品情報を含む、ユーザ公開コンテンツ情報のセットを得ることと、
前記ユーザ公開コンテンツ情報をフィルタリングして、前記複数の製品情報から１以上の製品情報を除去することであって、前記１以上の製品情報に関連付けられたコンテンツと、前記１以上の製品情報に関連付けられたユーザと、の少なくとも一方に基づいてフィルタリングすることと、
前記フィルタリングされたユーザ公開コンテンツ情報からテキストセットを抽出することであって、前記テキストセットは、前記複数の製品情報のうちの一つの製品情報と関連付けられている、テキストセットを抽出することと、
前記テキストセットを複数のテキストセットとともに記憶することと、
前記テキストセットからキーワードを抽出することと、
前記テキストセットに関連付けられた前記キーワードに関連付けられる重み値を決定することと、
前記テキストセットと別のテキストセットとの間の類似度を、前記テキストセットに関連付けられた前記キーワードに関連付けられる重み値と、前記他方のテキストセットに関連付けられたキーワードに関連付けられる重み値と、に少なくとも部分的に基づいて、決定することと、
前記決定された類似度に少なくとも部分的に基づいて、前記テキストセットが前記他方のテキストセットに関係しているかどうかを決定することと、
を行うように構成される、システム。
【請求項２】
請求項１に記載のシステムであって、
前記複数のテキストセットは、１つ以上の原テキストセットと、１つ以上の新テキストセットとを含み、原テキストセットは、１つ以上の前期間に関連付けられ、新テキストセットは、前記現行期間に関連付けられる、システム。
【請求項３】
請求項１に記載のシステムであって、
前記プロセッサは、さらに、１つ以上のワードのそれぞれに対応する頻度を含むワード頻度表を更新するように構成され、頻度は、前記複数のテキストセットのうちの特定のテキストセットのなかでワードが出現する回数に関連付けられる、システム。
【請求項４】
請求項３に記載のシステムであって、
前記プロセッサは、さらに、前記テキストセットに関連付けられた１つ以上のキーワードに対応する前記ワード更新表の頻度を使用し、前記１つ以上のキーワードのそれぞれに対応する重み値を生成するように構成される、システム。
【請求項５】
請求項１に記載のシステムであって、
前記テキストセットは、新テキストセットを含み、前記他方のテキストセットは、原テキストセットを含む、システム。
【請求項６】
請求項１に記載のシステムであって、
前記テキストセットは、新テキストセットを含み、前記他方のテキストセットは、別の新テキストセットを含む、システム。
【請求項７】
請求項１に記載のシステムであって、
前記テキストセットと前記他方のテキストセットとの間の前記類似度を決定するために、前記テキストセットから抽出された１つ以上のキーワードに対応する１つ以上の重み値が、前記他方のテキストセットから抽出された１つ以上のキーワードに対応する１つ以上の重み値と比較される、システム。
【請求項８】
請求項１に記載のシステムであって、
前記テキストセットが前記他方のテキストセットに関係しているかどうかを決定することは、前記類似度が所定の閾値を少なくとも満たすかどうかに少なくとも部分的に基づく、システム。
【請求項９】
請求項１に記載のシステムであって、
前記テキストセットが前記他方のテキストセットに関係しているかどうかを決定することは、前記類似度が、前記テキストセットに関連付けられた類似度のうち最も高いランクおよび前記他方のテキストセットに関連付けられた決定された類似度の所定の数に入るかどうかに少なくとも部分的に基づく、システム。
【請求項１０】
請求項１に記載のシステムであって、
前記プロセッサは、さらに、前記複数のテキストセットのうちの第１の原テキストセットと第２の原テキストセットとの間の類似度を決定するように構成される、システム。
【請求項１１】
請求項１に記載のシステムであって、
前記テキストセットは、第１の製品に関連付けられ、関係しているテキストセットは、第２の製品に関連付けられ、前記プロセッサは、さらに、前記第１の製品に関連したユーザ操作の受信に応えて、前記第２の製品をお勧め製品として出力するように構成される、システム。
【請求項１２】
テキストセットを照合するためのシステムを使用して実行される方法であって、
現行期間に関連付けられたユーザ公開コンテンツ情報のセットを得ることであって、前記ユーザ公開コンテンツ情報は、複数の製品情報を含む、ユーザ公開コンテンツ情報のセットを得ることと、
前記ユーザ公開コンテンツ情報をフィルタリングして、前記複数の製品情報から１以上の製品情報を除去することであって、前記１以上の製品情報に関連付けられたコンテンツと、前記１以上の製品情報に関連付けられたユーザと、の少なくとも一方に基づいてフィルタリングすることと、
前記フィルタリングされたユーザ公開コンテンツ情報からテキストセットを抽出することであって、前記テキストセットは、前記複数の製品情報のうちの一つの製品情報と関連付けられている、テキストセットを抽出することと、
前記テキストセットを複数のテキストセットとともに記憶することと、
前記テキストセットからキーワードを抽出することと、
前記テキストセットに関連付けられた前記キーワードに関連付けられる重み値を決定することと、
前記テキストセットと別のテキストセットとの間の類似度を、前記テキストセットに関連付けられた前記キーワードに関連付けられる重み値と、前記他方のテキストセットに関連付けられたキーワードに関連付けられる重み値と、に少なくとも部分的に基づいて決定することと、
前記決定された類似度に少なくとも部分的に基づいて、前記テキストセットが前記他方のテキストセットに関係しているかどうかを決定することと、
を備える方法。
【請求項１３】
請求項１２に記載の方法であって、さらに、
１つ以上のワードのそれぞれに対応する頻度を含むワード頻度表を更新することを備え、頻度は、前記複数のテキストセットのうちの特定のテキストセットのなかでワードが出現する回数に関連付けられる、方法。
【請求項１４】
請求項１３に記載の方法であって、さらに、
前記テキストセットに関連付けられた１つ以上のキーワードに対応する前記ワード更新表の頻度を使用し、前記１つ以上のキーワードのそれぞれに対応する重み値を生成することを備える方法。
【請求項１５】
請求項１２に記載の方法であって、
前記テキストセットと前記他方のテキストセットとの間の前記類似度の決定において、前記テキストセットから抽出された１つ以上のキーワードに対応する１つ以上の重み値が、前記他方のテキストセットから抽出された１つ以上のキーワードに対応する１つ以上の重み値と比較される、方法。
【請求項１６】
請求項１２に記載の方法であって、
前記テキストセットが前記他方のテキストセットに関係しているかどうかを決定することは、前記類似度が所定の閾値を少なくとも満たすかどうかに少なくとも部分的に基づく、方法。
【請求項１７】
請求項１２に記載の方法であって、
前記テキストセットが前記他方のテキストセットに関係しているかどうかを決定することは、前記類似度が、前記テキストセットに関連付けられた類似度のうち最も高いランクおよび前記他方のテキストセットに関連付けられた決定された類似度の所定の数に入るかどうかに少なくとも部分的に基づく、方法。
【請求項１８】
請求項１２に記載の方法であって、さらに、
前記複数のテキストセットのうちの第１の原テキストセットと第２の原テキストセットとの間の類似度を決定することを備える方法。
【請求項１９】
請求項１２に記載の方法であって、
前記テキストセットは、第１の製品に関連付けられ、関係しているテキストセットは、第２の製品に関連付けられ、前記方法は、さらに、前記第１の製品に関連したユーザ操作の受信に応えて前記第２の製品をお勧め製品として出力することを備える方法。
【請求項２０】
コンピュータによって読み取り可能なストレージ媒体に実装されたコンピュータプログラムであって、
現行期間に関連付けられたユーザ公開コンテンツ情報のセットを得るためのコンピュータ命令であって、前記ユーザ公開コンテンツ情報は、複数の製品情報を含む、ユーザ公開コンテンツ情報のセットを得るためのコンピュータ命令と、
前記ユーザ公開コンテンツ情報をフィルタリングして、前記複数の製品情報から１以上の製品情報を除去するためのコンピュータ命令であって、前記１以上の製品情報に関連付けられたコンテンツと、前記１以上の製品情報に関連付けられたユーザと、の少なくとも一方に基づいてフィルタリングするためのコンピュータ命令と、
前記フィルタリングされたユーザ公開コンテンツ情報からテキストセットを抽出するためのコンピュータ命令であって、前記テキストセットは、前記複数の製品情報のうちの一つの製品情報と関連付けられている、テキストセットを抽出するためのコンピュータ命令と、
前記テキストセットを複数のテキストセットとともに記憶するためのコンピュータ命令と、
前記テキストセットからキーワードを抽出するためのコンピュータ命令と、
前記テキストセットに関連付けられた前記キーワードに関連付けられる重み値を決定するためのコンピュータ命令と、
前記テキストセットと別のテキストセットとの間の類似度を、前記テキストセットに関連付けられた前記キーワードに関連付けられる重み値と、前記他方のテキストセットに関連付けられたキーワードに関連付けられる重み値と、に少なくとも部分的に基づいて決定するためのコンピュータ命令と、
前記決定された類似度に少なくとも部分的に基づいて、前記テキストセットが前記他方のテキストセットに関係しているかどうかを決定するためのコンピュータ命令と、
を備えるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願の相互参照］
本出願は、２０１０年９月２０日に出願され「Ａ  ＭＥＴＨＯＤ  ＡＮＤ  ＤＥＶＩＣＥ  ＯＦ  ＭＡＴＣＨＩＮＧ  ＴＥＸＴ（テキストを照合する方法およびデバイス）」と題された中国特許出願第２０１０１０２９０６９３．４号の優先権を主張する。該出願は、あらゆる目的のために、参照によって本明細書に組み込まれる。
【０００２】
本出願は、データ処理の分野に関し、特に、テキストを照合することに関する。
【背景技術】
【０００３】
従来より、テキストの比較は、全数量の計算による照合を通じてなされるのが一般的である。テキスト間の相関性を得るためには、取得されたテキストデータ本体のなかのテキストセットのペアごとに類似度を決定できるように、取得された全てのテキストに対して計算を実施する必要がある。通常、このようなプロセスは、全てのテキストデータに対する計算をすることとなり、多量の計算時間を必要とする可能性がある（例えば、計算時間は、テストセットの数をＮとしたときに、Ｏ（Ｎ2）オーダーになると考えられる）。さらに、計算時間は、テストセットの数Ｎが増すにつれて増大する可能性がある。
【０００４】
このような多量のデータを伴う計算は、機器システムに悪影響を及ぼして、Ｉ／Ｏ通信、データ保存、およびデータネットワーク伝送に圧力をかけ、また、データ処理速度を遅くする可能性がある。ときには、データ伝送の遮断または渋滞が生じることもある。要するに、全数量のテキスト照合を実施する従来の技術に伴う多量のデータ計算は、非効率的である可能性があり、また、多くのリソースを消費する。
【０００５】
コンテンツをベースにしたテキスト照合を最適にするために、一部のシステムでは、以下の技術のいずれかまたは両方が実施される。
【０００６】
（１）単一マシン版のコンテンツベース・テキスト照合（すなわち非分散型システム）の場合は、インデックスを構築することによって、テキスト照合の速度および効率を向上させることができる。
【０００７】
（２）分散型のコンテンツベース・テキスト照合の場合は、テキスト照合の速度および効率を向上させるために、（例えば、データを並列処理するためのさらなる冗長サーバを追加することによって、）ハードウェアサポートを増すことができる。
【０００８】
しかしながら、インデックスも、さらなる並列処理の追加も、多量のデータのテキスト照合処理の問題を効果的に解決することはできない。したがって、多量のデータに対してテキスト照合を実施するためのさらに効率的な解決策が望まれている。
【図面の簡単な説明】
【０００９】
発明の様々な実施形態が、以下の詳細な説明および添付の図面で開示される。
【００１０】
【図１】テキストセットを照合するためのシステムを示した図である。
【００１１】
【図２】テキストセットを照合するプロセスの一実施形態を示したフローチャートである。
【００１２】
【図３】テキストセットを照合するプロセスの一実施形態を示したフローチャートである。
【００１３】
【図４】テキストセットをフィルタリングするプロセスの一実施形態を示したフローチャートである。
【００１４】
【図５Ａ】テキストセットを照合するプロセスの一例を示したフローチャートである。
【００１５】
【図５Ｂ】プロセス５００を少なくとも部分的に実現することができるアーキテクチャの一例を示した図である。
【００１６】
【図６】更新されたワード頻度表を得るための２つの技術例を示したフローチャートである。
【００１７】
【図７】テキストセットを照合するためのシステムの一実施形態を示した図である。
【発明を実施するための形態】
【００１８】
発明は、プロセス、装置、システム、合成物、コンピュータによって読み取り可能なストレージ媒体に実装されたコンピュータプログラム製品、ならびに／または結合先のメモリに記憶されている命令および／もしくは結合先のメモリによって提供される命令を実行するように構成されたプロセッサのようなプロセッサなどの、数々の形態で実現することができる。本明細書では、これらの実現形態、または発明がとりうるその他のあらゆる形態を、技術と称することができる。総じて、開示されるプロセスのステップの順序は、発明の範囲内で可変であることができる。別途明記されない限り、タスクを実施するように構成されるものとして説明されるプロセッサまたはメモリなどの構成要素は、所定時にタスクを実施するように一時的に構成される汎用の構成要素として、またはタスクを実施するように製造された特殊な構成要素として実装することができる。本明細書で使用される「プロセッサ」という用語は、コンピュータプログラム命令などのデータを処理するように構成された１つ以上のデバイス、回路、および／または処理コアをいう。
【００１９】
発明の原理を例示している添付の図面とともに、以下で、発明の１つ以上の実施形態の詳細な説明が提供される。発明は、このような実施形態との関連で説明されているが、いかなる実施形態にも限定されない。発明の範囲は、特許請求の範囲によってのみ限定され、発明は、数々の代替形態、変更形態、および均等物を網羅している。以下の説明では、発明の完全な理解を与えるために、数々の具体的詳細が明記されている。これらの詳細は、例示を目的として提供されるものであり、発明は、これらの詳細の一部または全部を伴わずとも、特許請求の範囲にしたがって実施することが可能である。明瞭さを期するために、発明に関係する技術分野で知られる技工物は、発明が不必要に不明瞭にされないように、詳細な説明を省略されている。
【００２０】
テキストセットを照合する技術が開示される。各種の実施形態では、コンテンツ情報が取得され、定期的に記憶される。また、取得されたコンテンツ情報からのテキストも、１つ以上のテキストセットとして抽出されて、（例えば１つ以上のデータベースに）記憶される。本明細書で使用される「原テキスト」という用語は、現行期間よりも前の期間中に取得されて記憶されたテキストをいう。本明細書で使用される「新テキスト」という用語は、現行期間中に取得されて記憶されるテキストをいう。本明細書で使用される「テキスト」または「テキストセット」という用語は、マシンによって読み取り可能な任意のテキスト（例えばコンピューティング・デバイスを通じて入力された英数字またはコンピュータによって認識される紙面のテキスト）をいう。各種の実施形態では、各期間中に抽出されるテキストセットは、同じデータベースが前期間からの原テキストセットおよび現行期間からの新テキストセットの両方を含むように、同じ１つ以上のデータベースに蓄積される。
【００２１】
各種の実施形態では、「原」テキストセットおよび「新」テキストセットという呼び名は、そのテキストセットがそれぞれ前期間中または現行期間中に取得されたかどうかに基づく。各現行期間が終了して前期間と称されるようになり、次の新しい／現行期間が始まるのに伴って、同じテキストセットに対して本明細書で使用される呼び名は、「新」から「原」に変化する。それでもなお、ペアをなすテキストセットの間で決定される類似度は、各テキストセットの中身（例えばテキストセットから抽出された１つ以上のキーワード）に基づき、そのテキストセットの呼び名が「新」または「原」であるかによって影響されない。なぜならば、呼び名は、ある期間が終了して次の期間が始まるのに伴って、変化するからである。例えば、新しい期間が始まるときに、直近期間からの「新」テキストセットは、「原」テキストセットと称されるようになり、新しい現行期間中に得られるテキストセットが、「新」と称される。
【００２２】
開示されるテキストセット照合技術は、（例えばあらゆる）２つのテキストセットどうしを比較して、それら２つのテキストセットの間の類似度を決定するために使用することができる。２つのテキストセットは、１つ以上の期間にわたって抽出されたテキストセットを記憶されている同じ（１つ以上の）データベースから取り出される。２つのテキストセットは、１つの新テキストと１つの原テキスト、２つの新テキストセット、および２つの原テキストセットを含むことができる。
【００２３】
各種の実施形態では、ワード頻度表が定期的に更新され、１つ以上のデータベースに記憶されている任意の２つのテキストセットの間の類似度を決定するために使用される。
【００２４】
図１は、テキストセットを照合するためのシステムの図を示している。システム１００は、デバイス１０２、１０４、１０６と、ネットワーク１０８と、テキストセット照合サーバ１１０と、データベース１１２とを含む。ネットワーク１０８は、様々な高速データネットワークおよび／または電気通信ネットワークを含むことができる。一部の実施形態では、テキストセット照合サーバ１１０は、電子商取引ウェブサイトの一構成要素であるおよび／または電子商取引ウェブサイトに関連付けられている。
【００２５】
デバイス１０２、１０４、および１０６は、それぞれ、ユーザがそこでコンテンツ情報を掲示／公開することができるユーザ端末を表している。一部の実施形態では、ユーザは、コンテンツ情報を掲示／公開するために、デバイス１０２、１０４、または１０６の１つ以上を使用することができ、コンテンツ情報は、電子商取引ウェブサイトに掲示／公開される製品情報であることができる。各種の実施形態では、掲示／公開されたコンテンツ情報は、テキストセット照合サーバ１１０に送信される。デバイス１０２、１０４、および１０６のそれぞれでは、１人以上のユーザがコンテンツ情報を掲示／公開することができる。デバイス１０２、１０４、および１０６は、それぞれ、例えばデスクトップコンピュータ、ラップトップコンピュータ、スマートフォン、携帯端末、タブレット端末、またはその他の任意のコンピューティング・デバイスであることができる。デバイス１０２、１０４、および１０６のそれぞれは、ウェブブラウザ・アプリケーション（例えばＭｉｃｒｏｓｏｆｔ  Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ（登録商標）やＧｏｏｇｌｅ  Ｃｈｒｏｍｅ（登録商標））を含むように構成することができる。システム１００の例では、テキストセット照合サーバ１１０が１つ以上のクライアントデバイスからコンテンツ情報を受信できることを例示するために、３つのデバイスが示されているが、システム１００のようなシステムには、４つ以上または２つ以下のデバイスが含まれることも可能である。
【００２６】
一部の実施形態では、ユーザは、また、電子商取引ウェブサイトを閲覧し、そのウェブサイトにおける１つ以上のユーザ操作に応じた製品のお勧めを受信するために、デバイス１０２、１０４、および／または１０６を使用することもできる。例えば、ユーザは、ある製品に関連付けられたウェブページを閲覧し、次いで、（例えば、デバイス１０２、１０４、および／または１０６に関連付けられたディスプレイにおいて、）１つ以上のその他の製品のお勧めを受信する。このような製品のお勧めは、後ほどさらに詳しく論じられるように、テキストセットの照合の結果に基づいて作成することができる。
【００２７】
テキストセット照合サーバ１１０は、１つ以上のデバイス（例えばデバイス１０２、１０４、および１０６）から、ユーザ公開コンテンツ情報を得るように構成される。各種の実施形態では、テキストセット照合サーバ１１０は、このような情報をデバイスから定期的に得る。テキストセット照合サーバ１１０は、得られたコンテンツ情報のテキストセットを（画像のような非テキストベースのコンテンツを無視することによって）抽出し、それらをデータベース１１２（データベース１１２は、１つ以上のデータベースを表すことができる）などのデータベースに記憶するように構成される。現行期間中に得られるテキストセットは、新テキストセットと称される。前期間中に得られたテキストセットは、原テキストセットと称される。一部の実施形態では、新テキストセットまたは原テキストセットのいずれも、データベース１１２として表される同じデータベースに記憶される。テキストセット照合サーバ１１０は、後ほどさらに詳しく論じられるように、データベース１１２に記憶されている様々なペアのテキストセットの間の類似度を先ず決定することに少なくとも部分的に基づいて、データベース１１２のなかのどのテキストセットが互いに関係しているか（例えばどの２つのテキストセットが互いに一致しているか）を決定するように構成される。一部の実施形態では、テキスト照合サーバ１１０は、製品のお勧めの作成を促すために、テキスト照合の結果を電子商取引ウェブサイトに提供するように構成される。
【００２８】
図２は、テキストセットを照合するプロセスの一実施形態を示したフローチャートである。一部の実施形態では、プロセス２００は、システム１００上で実施することができる。プロセス２００は、新テキストセットと原テキストセットとの間、または新テキストセットと別の新テキストセットとの間の類似度を決定するために使用することができる。
【００２９】
２０２では、現行期間に関連付けられたデータから、新テキストセットが抽出される。
【００３０】
ユーザ公開コンテンツ情報などのデータは、期間ごとに取得される。各期間の長さは、システム管理者によって、例えば、１日、一週間、数時間ごとのように、事前に決定することができる。例えば、ユーザ公開コンテンツ情報は、電子商取引ウェブサイト上で入手可能な製品に関する記述／情報（製品情報）であってそれらの製品の売り手によってウェブサイトに掲示された記述／情報を含むことができる。例えば、ウェブサイト上で製品情報を公開することができるためには、ユーザ（例えば売り手）は、そのウェブサイトのアカウントを有している必要があると考えられる。例えば、ユーザは、テキストおよび／またはその他のコンテンツ（例えば画像や双方向ウェブエレメント）を含む製品情報を公開することができる。
【００３１】
例えば、ユーザは、クライアントデバイス（例えばクライアントデバイスにおけるウェブブラウザ）を通じて製品情報を公開することができ、サーバは、各クライアントデバイスから公開された製品情報を定期的に取得することができる。一部の実施形態では、取得された情報は、１つ以上のデータベースに記憶される。各期間中に取得された公開製品情報について、１つ以上のテキストセットを非テキストセットから分離し、同じデータベースまたは異なるデータベースに記憶させることができる。情報は、期間ごとに取得されて、（１つ以上の）データベースに記憶されるので、（１つ以上の）データベースは、１つ以上の前期間からのテキストセット（原テキストセット）と、現行期間からのテキストセット（新テキストセット）とを含む。各種の実施形態では、特定のコンテンツ情報から抽出されたテキストセットは、その特定のコンテンツ情報に関連付けられた関連付け／識別子（例えば、ユーザの識別子、情報が公開された時間、その情報が関連付けられている製品（もしあれば）、情報が先の／前期間または現行期間に公開されたかどうか）とともに記憶させることができる。一部の実施形態では、新しく取得された各コンテンツ情報から抽出されるテキストセットを、新テキストセットと見なすことができ、したがって、各現行期間では、複数の新テキスト（テキストセット）を、対応する数のコンテンツ情報から抽出することが可能である。
【００３２】
一部の実施形態では、現行期間から収集されたコンテンツ情報から１つ以上の新テキストセットが抽出されるさらに前に、所定のフィルタリングルールに基づいて、コンテンツ情報がフィルタリングされる。例えば、公開製品情報が得られた後、例えば製品の画像などの、フィルタの１つ以上の指定文字または指定ワードを含まない製品情報は、フィルタリング除去（すなわち破棄）され、テキスト照合に使用されない。フィルタリングは、照合が実施されるテキストセットの量を軽減し、所望のデータタイプ（例えば解析対象とされる製品情報）に適合しないデータを除外することができる。
【００３３】
例えば、現行期間から取得される製品情報が、ＭＰ３プレーヤに関するものだと想定する。この製品情報は、Ｔｉｔｌｅ：ＭＰ３、Ｃｏｌｏｒ：Ｒｅｄ、Ｍｏｄｅｌ．ｎｏ．：３２５、および特徴記述などのテキストと、ＭＰ３プレーヤの画像などのその他の関連情報とを含むことができる。次いで、製品情報のうち、Ｔｉｔｌｅ：ＭＰ３、Ｃｏｌｏｒ：Ｒｅｄ、Ｍｏｄｅｌ．ｎｏ．：３２５、および特徴記述を含む部分などのテキストセット（「新テキストセット」）を抽出し、記憶させることができる。
【００３４】
２０４では、新テキストセットから、キーワードが抽出される。
【００３５】
各新テキストセットは、個々のワードに分離することができ、それら個々のワードのセットから、キーワードを抽出することができる。一部の実施形態では、キーワードは、２つ以上の個々のワードを含むことができる。キーワードは、それが関連付けられている特定のコンテンツ情報を表すのに有用であるかどうかという基準で識別される。各種の実施形態では、キーワードは、所定のルールセットに基づいて、新テキストセットに関連付けられた個々のワードのセットから識別および抽出することができる。例えば、所定のルールは、キーワードとして指定されたワードのリストおよび／または重要である見込みがないゆえに破棄されるワードのリストを含むことができる。抽出されたキーワードは、テキストセットの照合に使用される。一部の実施形態では、特定のコンテンツ情報から抽出されたキーワードは、そのコンテンツ情報に関連付けられたワードベクトル（またはその他の何らかの形態のデータ構造）に記憶される。
【００３６】
例えば、Ｔｉｔｌｅ：ＭＰ３、Ｃｏｌｏｒ：Ｒｅｄ、Ｍｏｄｅｌ．ｎｏ．：ＸＸ、および特徴記述などの情報を含む新テキストセットが個々のワードに分離された後は、「ＭＰ３」および「ｒｅｄ」などの抽出されたキーワードをワードベクトルに記憶させることができる。
【００３７】
２０６では、新テキストに関連付けられたキーワードに関連付けられる重み値が決定される。
【００３８】
各種の実施形態では、キーワードの重み値は、作成されたワード頻度表に基づいて決定することができる。
【００３９】
一部の実施形態では、ワード頻度表を作成するために、（１つ以上の）データベースに記憶されている（例えば１つ以上の前期間からの）全てのテキストセットが解析され（例えば、個々のワードに分離され、キーワードが識別およびカウントされる）、各テキストセットにおける各ワードの発生回数（すなわち各ワードの頻度）が表に記憶される。一部の実施形態では、ワード頻度表は、１つ以上の新テキストセットが得られるたびに、または定期的に、更新される。各種の実施形態では、ワード頻度表用に、（１つ以上の）データベースに現時点で記憶されている各テキストセットに含まれる各キーワードの頻度に基づいて情報を生成することによって、キーワードの重み値を決定することができる。
【００４０】
各種の実施形態では、２０６において、（現行期間中に取得された）新テキストセットから抽出される任意のキーワードおよび（前期間から取得された）任意の原テキストセットから抽出された任意のキーワードを含む、（１つ以上の）データベースに記憶されている各キーワードについて、重み値が決定される。
【００４１】
一部の実施形態では、ワード頻度表は、（１つ以上の）データベースに記憶されている各テキストセットに含まれるワード（新テキストから抽出されるキーワードおよび非キーワードのワードを含む）ごとの頻度に基づいて、（例えば、１つ以上の新テキストセットが取得された後、または一定の長さの時間が経過した後に、）定期的に更新される。
【００４２】
一部の実施形態では、この更新には、２つのシナリオが考えられる。
【００４３】
シナリオ１：現時点でデータベースに記憶されている（例えば複数の期間にわたって記憶された）全てのテキストセットに基づいて、新しいワード頻度表が作成される。
【００４４】
１つ以上の新テキストセットが得られるたびに、（１つ以上の）データベースに現時点で記憶されている各テキストセットに含まれる各ワードの頻度を含む新しいワード頻度表を作成するために、各新テキストセットのなかのおよびデータベースに記憶されている各原テキストセットのなかの各ワード（キーワードおよび非キーワードのワードを含む）の頻度がカウントされる。頻度を計算するための計算量は、関わるデータの量に線形的に関係しているので、たとえもし、（１つ以上の）データベースに記憶されている全てのテキストをカウントすることによってワード頻度表が更新されるとしても、計算は、（例えば、新テキストセットの抽出元になる情報が期間ごとに大量に生成されるわけではないので）それほど量は大きくなく、それほど時間もかからない。一部の実施形態では、テキストセットは、ワード頻度表が生成されるたびにカウントされる必要があるテキストの量を軽減するために、（１つ以上の）データベースから定期的に除去することができる。例えば、ある新期間では、最も古い期間からのテキストセットをデータベースから除去することができる。一部の実施形態では、シナリオ１は、既存のワード頻度表が利用可能でない（例えば記憶されていない）ときに使用することができる。
【００４５】
シナリオ２：１つ以上の新テキストセットに基づいて、既存のワード頻度表が更新される。
【００４６】
１つ以上の新テキストセットが得られるたびに、各新テキストセットのなかの各ワード（キーワードおよび非キーワードのワードを含む）の頻度がカウントされる。データベースのなかの各テキストセットのなかの各ワードについてこれまでに決定された頻度を含む既存のワード頻度表（すなわち、既存のワード頻度表の情報は、原テキストセットに基づく）が、各新テキストセットのなかのワードのカウント結果に基づいて更新される。一部の実施形態では、シナリオ２は、既存のワード頻度表が利用可能である（例えば記憶されている）ときに使用することができる。
【００４７】
各種の実施形態では、ワード頻度表が作成されたとして、データベースに現時点で記憶されている各テキストセット（新テキストセットおよび原テキストセット）のなかの、分離および抽出を経た各キーワードの重み値を、（１つ以上の）データベースに記憶されている各キーワードについて、以下のように決定することができる。すなわち、ワード頻度表をもとに、（１つ以上の）データベースに現時点で記憶されている各テキストセットのなかのキーワードに対応する頻度が決定され、（１つ以上の）データベースに現時点で記憶されているテキストセットの総数と、キーワードを含むテキストセットの数とに基づく比率が決定され、次いで、各テキストセットのなかのキーワードに対応する頻度と、決定された比率とに基づいて、各テキストセットのなかのキーワードに対応する重み値が決定される。一部の実施形態では、（１つ以上の）データベースに記憶されている各テキストセットについて、そのテキストセットから抽出された全てのキーワードのそれぞれの重み値を保持するために、ベクトルを使用することができる。各テキストセットに含まれるキーワードの比率および重み値を決定する幾つかの具体例が、以下でさらに論じられる。
【００４８】
２０８では、新テキストセットと別のテキストセットとの間の類似度が、新テキストセットに関連付けられたキーワードに関連付けられる重み値と、他方のテキストセットに関連付けられたキーワードに関連付けられる重み値とに少なくとも部分的に基づいて決定される。
【００４９】
一部の実施形態では、各新テキストセットの、（１つ以上の）データベースに現時点で記憶されている別のテキストセットとの関連での類似度を決定することができる。この決定は、任意の２つのテキストセット間の類似度を決定すること、および各新テキストセットの、（１つ以上の）データベースに現時点で記憶されている各原テキストセットとの関連での類似度を決定することを含む。
【００５０】
各新テキストセットと、（１つ以上の）データベースに現時点で記憶されているその他の各テキストセットと、の間の類似度を決定する一例は、別のテキストセットとの類似度を決定されるべき各テキストセットについて、そのテキストセットから抽出される各キーワードのそれぞれの重み値を含む重みベクトル（またはその他の何らかの形態のデータ構造）を構成することと、各新テキストセットについて、その新テキストセットの重みベクトルと、（１つ以上の）データベースに現時点で記憶されているテキストセットに対応する各重みベクトルと、の間の内積を決定し、その新テキストセットと、（１つ以上の）データベースに現時点で記憶されている各テキストセットと、の間の類似度を得ることとを含む。
【００５１】
データベースのなかの原テキストセットの間の類似度は、プロセス２００の前反復において（当時の現行期間であった前期間中に抽出されたテキストセットが、そのときにデータベースにあった原テキストセットと比較されたときに）決定されたので、一部の実施形態では、プロセス２００の現反復では、各新テキストセットと別の新テキストセットとの間、および／または各新テキストセットと（１つ以上の）データベースに記憶されている各原テキストセットとの間でのみ類似度が決定される。（例えば２つの原テキストセット間などの）一部の類似度の決定を回避することによって、処理されるべきデータの量を軽減することができる。
【００５２】
２１０では、決定された類似度に少なくとも部分的に基づいて、新テキストセットがその他のテキストセットに関係しているかどうかを決定することができる。
【００５３】
各新テキストセットと別の新テキストセットとのおよび／または各新テキストセットと原テキストセットとの類似度が決定された後は、類似度に基づいて、それら２つのテキストセットが関係しているかどうかを決定することができる。ペアをなす原テキストセットの間の類似度（および一部の実施形態ではさらに関係性）は、前期間（プロセス２００の前反復）中に既に決定されて記憶されているので、これらは、プロセス２００のこの反復で再び決定される必要はない。
【００５４】
テキストセットが別のテキストセットに関係しているかどうか（例えば、新テキストセットが別の新テキストセットに関係しているかどうかや、新テキストセットが原テキストセットに関係しているかどうか）を決定するためには、例えば、以下の技術のうちの１つを使用することができる。
【００５５】
技術１：類似度の閾値を設定する。
【００５６】
（例えばシステム管理者によって、）類似度の閾値を決定することが可能であり、もし、２つのテストセットの間（例えば、新テキストセットと別の新テキストセットとの間や、新テキストセットと原テキストセットとの間）の類似度が閾値を満たすまたは超えるならば、それら２つのテキストセットは、互いに関係していると決定され、もし、そうでなければ、それら２つのテキストセットは、互いに関係していないと決定される。
【００５７】
技術２：類似度をランク付けし、類似度が最も高ランクの所定の数のテキストセットペアを選択する。
【００５８】
全てのテキストセットペア（例えば、新テキストセットと別の新テキストセットや、新テキストセットと原テキストセット）についての類似度がランク付けされる。次いで、類似度が最も高い（例えばシステム管理者によって設定された）所定の数のテキストセットペアが、互いに関係していると決定される。
【００５９】
テキストセットペアの関係性に関連付けられた識別子が、（１つ以上の）データベースに記憶される。各種の実施形態では、１つのテキストセットは、ゼロ、１つ、または２つ以上のその他のテキストセットに関係することができる。
【００６０】
テキストセットペアの間の関係性は、様々な形で有用であり、例えば、製品のお勧めを行うために使用することができる。この例では、取得されたユーザ公開コンテンツ情報は、電子商取引ウェブサイトに掲示された製品情報に関係していると考えられる。製品情報は、製品の売り手によって掲示された製品の特性、仕様、および／またはその他の記述を含むことができる。したがって、このような情報から抽出されたテキストもやはり、製品に関係している。製品に関連した行為をユーザが電子商取引ウェブサイトで実施する（例えば、双方向ウェブページエレメントをクリックする、製品を購入する、製品に関するフィードバックを提供する）ことに応えて、この製品に関連付けられた１つ以上のテキストセットが、（１つ以上の）データベースから読み出される。次いで、この製品に関連付けられた（１つ以上の）テキストセットに関係していると決定されたテキストセットもまた、（１つ以上の）データベースから読み出される。次いで、関係しているテキストに関連する製品が、ユーザに対してお勧めされる（例えば、その製品を取り上げているウェブサイトによって、ユーザのウェブブラウザに表示される）。
【００６１】
図３は、テキストセットを照合するプロセスの一実施形態を示したフローチャートである。一部の実施形態では、プロセス３００は、システム１００上で実施することができる。プロセス３００は、（１つ以上の）データベースにある任意の２つのテキストセットについて、それら２つのテキストセットが２つの新テキストセット、２つの原テキストセット、または１つの新テキストセットと１つの原テキストセットのいずれとして指定されるかに関わらず、それら２つのテキストセット間の類似度を決定するために使用することができる。
【００６２】
３０２では、現行期間に関連付けられたデータから、テキストセットが抽出される。各種の実施形態では、テキストセットは、複数のその他のテキストセットとともに記憶される。３０２は、上述のプロセスの２０２と同様である。一部の実施形態では、複数のその他のテキストセットは、その他の新テキストセット（現行期間に関連して取得されたテキストセット）および原テキストセット（前期間に関連して取得されたテキストセット）を含む、（１つ以上の）データベースに記憶されている全てのテキストを含む。
【００６３】
３０４では、テキストセットから、キーワードが抽出される。３０４は、上述のプロセスの２０４と同様である。
【００６４】
３０６では、テキストセットに関連付けられたキーワードに関連付けられる重み値が決定される。３０６は、上述のプロセス２００の２０６と同様である。２０６で説明されたのと同様のやり方で、ワード頻度表も決定することができる。
【００６５】
３０８では、テキストセットと別のテキストセットとの間の類似度が、テキストセットに関連付けられたキーワードに関連付けられる重み値と、他方のテキストセットに関連付けられたキーワードに関連付けられる重み値とに少なくとも部分的に基づいて決定される。
【００６６】
各種の実施形態では、類似度は、（１つ以上の）データベースに記憶されている任意のテキストペアについて決定することができる。例えば、データベースのなかの、ペアをなす任意の２つのテキストセットの間の類似度の決定は、任意の２つの新テキストセットの間の類似度を決定することと、各新テキストセットと、データベースに現時点で記憶されている各原テキストセットとの間の類似度を決定することと、任意の２つの原テキストセットの間の類似度を決定することとを含む。任意の２つのテキストセット（例えば、１つの新テキストセットと１つの原テキストセット、２つの新テキストセット、および２つの原テキストセット）の間の類似度の決定は、別のテキストセットとの類似度を決定されるべき各テキストセットについて、そのテキストセットから抽出された各キーワードのそれぞれの重み値を含む重みベクトル（またはその他の何らかの形態のデータ構造）を構成することと、（１つ以上の）データベースに記憶されている各テキストセットについて、そのテキストセットの重みベクトルと、（１つ以上の）データベースに現時点で記憶されているその他の各テキストセットに対応する各重みベクトルと、の間の内積を決定し、そのテキストセットと、（１つ以上の）データベースに現時点で記憶されている各テキストセットと、の間の類似度を得ることとを含む。
【００６７】
一部の実施形態では、ワード頻度表が更新されるたびに、（１つ以上の）データベースに記憶されている各ペアのテキストセットの間の類似度が決定される。
【００６８】
３１０では、決定された類似度に少なくとも部分的に基づいて、テキストセットが他方のテキストセットに関係しているかどうかを決定することができる。
【００６９】
２つのテキストセットが関係しているかどうかを決定するためには、２１０で使用されたのと同じ技術を使用することができる。テキストセットのペアは、２つの新テキストセット、または１つの新テキストセットと１つの原テキストセットはもちろん、２つの原テキストセットも含むことができる。
【００７０】
図４は、テキストセットをフィルタリングするプロセスの一実施形態を示したフローチャートである。一部の実施形態では、プロセス４００は、システム１００上で実施することができる。一部の実施形態では、プロセス４００は、プロセス２００および／またはプロセス３００とあわせて実施することができる。例えば、プロセス４００は、プロセス２００において、２０８の後に、ただし２１０の前に実施することができる。また、例えば、プロセス４００は、プロセス３００において、３０８の後に、ただし３１０の前に実施することができる。
【００７１】
４０２では、複数のテキストセットからの第１のテキストセットと、複数のテキストセットからの第２のテキストセットと、の間の類似度が決定される。各種の実施形態では、第１および第２のテキストセットは、１つ以上のデータベースに記憶されている。各種の実施形態では、どの期間中も、新しいユーザ公開コンテンツ情報が各期間中に取得され、このような情報から抽出されたテキストセットが（１つ以上の）データベースに記憶される。（１つ以上の）データベースは、新テキストセット（現行期間中に得られたテキストセット）および原テキストセット（前期間中に得られたテキストセット）の両方を記憶している。第１のテキストセットは、新テキストセットまたは原テキストセットのいずれかであってよい。第２のテキストセットは、新テキストセットまたは原テキストセットのいずれかであってよい。
【００７２】
もし、プロセス４００が、プロセス２００で実施されたならば、第１および第２のテキストセットは、新テキストセットと、新テキストセットまたは原テキストセットのいずれかとを含む（すなわち、第１および第２のテキストセットの一方が新テキストセットであり、もう一方は別の新テキストセットまたは原テキストセットのいずれかである）。
【００７３】
もし、プロセス４００が、プロセス３００で実施されたならば、第１および第２のテキストセットは、２つの新テキストセット、または２つの原テキストセット、または１つの新テキストセットと１つの原テキストセットを含む（すなわち、第１および第２のテキストセットは、新テキストセットおよび原テキストセットの両方を記憶している（１つ以上の）データベースからの単純に任意の２つのテキストである。）。
【００７４】
４０４では、決定された類似度に基づいて、第１および第２のテキストセットに対し、１つ以上のフィルタリングルールが適用される。
【００７５】
１つ以上のフィルタリングルールは、（１つ以上の）データベースのなかのその他のテキストセットとの類似度に基づいて、特定のテキストセットを有用でないと決定して破棄するために、システム管理者によって設定することができる。（１つ以上の）データベースのなかのテキストセットは、１つ以上のフィルタリングルールに基づいて破棄することができる。例えば、フィルタリングルールは、あるテキストセットと、（１つ以上の）データベースのなかのその他のどのテキストセットと、の間の類似度も類似度閾値未満である場合に、そのテキストセットの破棄を指示することができる。
【００７６】
図５Ａは、テキストセットを照合するプロセスの一例を示したフローチャートである。図５Ｂは、プロセス５００を少なくとも部分的に実施することができるアーキテクチャの一例である。データ層５５０、フィルタ層５５２、およびアルゴリズム層５５４は、ソフトウェアおよび／またはハードウェアの一方または両方を使用して実装することができる。
【００７７】
５０２では、定期的に、ユーザ公開コンテンツ情報が得られてワード頻度表が更新される。
【００７８】
ユーザ公開コンテンツ情報は、所定期間ごとに得られ、得られたコンテンツ情報および／またはそのような情報から抽出されたテキストを記憶する１つ以上データベースに記憶される。また、記憶されているテキストセットのキーワードに関連付けられたワード頻度表も、やはり定期的に更新される。一部の実施形態では、ワード頻度表は、各所定期間にわたってコンテンツ情報が得られた後に更新される。また、図６は、後述のように、更新されたワード頻度表を得るための２つの技術例である。
【００７９】
各種の実施形態では、図５Ｂのデータ層５５０などのデータ層において、定期的に、ユーザ公開コンテンツ情報が得られてワード頻度表が更新される。各種の実施形態では、データ層は、定期的にコンテンツ情報を得てワード頻度表を更新することに関連した論理リソースセットをいう。例えば、データ層は、コンテンツ情報および／またはそこから抽出されたテキストを記憶する１つ以上のデータベースを含むことができる。データ層は、データの少なくとも一部を（例えばユーザインターフェースに）表示させるように構成されたデータアプリケーション層用にデータを提供することができる。一部のプロセス５００では、データ層は、アルゴリズム層用に入力データを提供し、アルゴリズム層の照合決定結果を受信する。
【００８０】
例えば、得られたユーザ公開コンテンツ情報は、売り手によって電子商取引ウェブサイトに掲示された製品情報であることができる。このような情報から抽出されるテキストセットは、製品の性質および製品の記述に関連付けられたテキストセットを含むことができる。一具体例では、特定の製品情報から抽出されたテキストセットを、製品：ＭＰ３プレーヤに関連付けられたものだと想定する。すると、ＭＰ３プレーヤに関連付けられたテキストセットは、ＭＰ３プレーヤに類似している可能性がある製品に関連付けられたその他のテキストセットとの照合に使用することができる。
【００８１】
５０４では、得られたユーザ公開コンテンツ情報に対し、第１のフィルタが適用される。
【００８２】
得られたユーザ公開コンテンツ情報は、（例えば、不適格ユーザによって提供されたゆえにおよび／または完全でないゆえに、）テキストセットを照合するという目的に関わっていない／有用でないと考えられる情報を除去するために、フィルタリングすることができる。各種の実施形態では、テキストセットの照合に適していない／有用でない／関わっていないコンテンツ情報をフィルタリング除去する（すなわち破棄する）ために、得られたユーザ公開コンテンツ情報に対し、（例えばシステム管理者によって）事前に決定された１つ以上のフィルタリングルールが適用される。
【００８３】
例えば、フィルタリングのためのルールは、必須のコンテンツを含まないコンテンツ情報（例えば製品の画像や製品に関する詳細な記述）をフィルタリング除去するように指示することができる。コンテンツ情報には、それが含むコンテンツの種類および量に基づいて、品質得点を割り当てることができる。具体的には、各コンテンツ情報のなかの各コンテンツ（例えば画像や、所要の製品仕様および記述）に点数を割り当てることができる。そして、もし、あるコンテンツ情報に関連付けられた品質得点の累計が、所定の品質得点閾値未満であるならば、そのコンテンツ情報は、破棄される（例えば、テキストセットとの照合に使用されない）。
【００８４】
別の例では、フィルタリングのためのルールは、不適格ユーザによって公開／掲示されたコンテンツ情報をフィルタリング除去するように指示することができる。例えば、電子商取引ウェブサイトの場合は、ユーザ（例えば売り手）は、自身の信頼性に関してその他の使用者（例えば買い手）から評価を受けることができ、したがって、信頼性が所定の値を下回るユーザの場合は、そのユーザは、不適格であると判断され、そのようなユーザによって公開されるコンテンツ情報（例えば製品情報）は、フィルタリング除去される。不適格ユーザの例として、ウェブクローラやロボット、ひいてはウェブサイトに正しく貢献していない人間のユーザが挙げられる。また、例えば、電子商取引ウェブサイトへの訪問回数が所定値を超えるユーザも、やはり不適格であると見なすことができる。これは、ウェブクローラまたはロボットによって提供されるコンテンツ情報を除外するのに特に有用である。なぜならば、実際にウェブクローラまたはロボットであるユーザは、特定期間中に（例えばコンテンツ情報を公開した前後に）極めて頻繁にウェブサイトを訪問する傾向があるからである。また、例えば、ウェブサイトに記憶されているクレジットカード情報が期限切れになったユーザおよび／もしくは信用度の得点が低いユーザ、または所定期間を超えてウェブサイトからの応答が無かったユーザもまた、不適格ユーザであると見なすことができる。非応答ユーザは、設定期間内に操作を行わなかった（例えば、ウェブサイトにログオンしたままであるおよび／またはウェブサイトにあるどのエレメントとも対話しなかった）ユーザである。上記は、フィルタリングルールの例に過ぎず、実施にあたっては、さらに多くのおよび／または異なるフィルタリングルールを適用することが可能である。
【００８５】
一部の実施形態では、図５Ｂのフィルタ層５５４などのフィルタ層において、得られたユーザ公開コンテンツ情報に対し、１つ以上のフィルタリングルールが適用される。各種の実施形態では、フィルタ層は、得られた特定のユーザ公開コンテンツ情報を（もしあれば）フィルタリング除去することに関連した論理リソースセットをいう。一部の実施形態では、１つ以上のフィルタリングルールによってフィルタリング除去されなかったコンテンツ情報が、アルゴリズム層に出力される。
【００８６】
５０６では、フィルタリングを経たコンテンツ情報から、新テキストセットが抽出される。
【００８７】
１つ以上のフィルタリングルールの適用後に破棄されなかったコンテンツ情報は、５０６において処理される。コンテンツ情報は、現行期間中に得られたので、そのコンテンツ情報から抽出されるテキストセットは、新テキストセットと称される。プロセス２００の２０２で説明されたのと同様に、コンテンツ情報の非テキストコンテンツは、抽出されない。これらの新テキストセットは、１つ以上のデータベースに記憶させることができる。
【００８８】
５０８では、新テキストセットと、１つ以上のその他のテキストセットのそれぞれと、の間の類似度が決定される。
【００８９】
新テキストセットと、同じ１つ以上のデータベースに記憶されている１つ以上のその他のテキストセットのそれぞれ（例えば新テキストセットまたは原テキストセット）と、の間の類似度を、決定することができる。２つのテキストセットの間の類似度は、後述されるようなおよび／またはプロセス２００の２０６で説明されたような、更新されたワード頻度表に少なくとも部分的に基づいて決定することができる。
【００９０】
各種の実施形態では、新テキストセットと、１つ以上のテキストセットとの間の類似度は、アルゴリズム層５５４などのアルゴリズム層で決定される。各種の実施形態では、アルゴリズム層は、ペアをなすテキストセットの間の類似度（例えば数値）を計算するためにワード頻度表を使用することに関連した論理リソースセットをいう。各種の実施形態では、決定されたテキストセット間の類似度は、出力されてフィルタ層（例えばフィルタ層５５２）に戻される。
【００９１】
１つのテキストセットと別のテキストセットとの間の類似度の決定に先立って、各テキストセットは、個々のワードに分離され、それらの分離されたワードのなかから、１つ以上のキーワードが選択される。一部の実施形態では、テキストセットから抽出される各キーワードについての重み値が決定される。あるテキストセットに関連付けられたキーワードおよびそれらのそれぞれの重み値は、別のテキストセットと比較されるときに、そのテキストセットを表すものである。
【００９２】
下記は、各テキストセット（例えば新テキストセットまたは原テキストセット）から抽出される各キーワードの重み値を決定する一例である。
【００９３】
まず、各テキストセットについて、そのテキストセットから抽出される各キーワードがそのテキストセットのなかに何回出現するか（例えばテキストセットのなかのキーワードの頻度）を決定する。
【００９４】
テキストセットのなかの各キーワードの頻度は、ワード頻度表を通じて得ることができる。ワード頻度表のなかのワードの頻度は、単語頻度−逆文書頻度（ＴＦ−ＩＤＦ）を通じて得ることができる。すなわち、ｊ番目のテキストセットのなかのｉ番目のキーワードの頻度は、次式：
【数１】
0005717858.tif 000002
から得ることができる。
【００９５】
ここで、ｆi,jは、ｊ番目のテキストセットｄjのなかのｉ番目のキーワードｋiの頻度であり、ｍａｘｆz,jは、ｆi,jの最大値を表しており、ｉおよびｊは、整数である。ワード頻度表は、この式にしたがって更新され、ワード頻度表は、特定のワードの頻度の決定が必要とされるときに、直接照会することができる。
【００９６】
一部の実施形態では、ｆi,jおよびｍａｘｆz,jの値を、実際の条件に基づいて決定することができる。例えば、テキストセットのなかの同じキーワードの複数回の発生が１回の発生だと見なされるように、ｆi,jおよびｍａｘｆz,jを１に設定することが可能である。
【００９７】
第２に、各テキストセットのなかの各キーワードについて、（１つ以上の）データベースに記憶されている全てのテキストセットと、キーワードを含むテキストセットとの比率が決定される。例えば、この比率は、次式：
【数２】
0005717858.tif 000003
を通じて決定することができる。
【００９８】
ここで、Ｎは、（１つ以上の）データベースのなかの全てのテキストセットの数であり、ｎiは、ｉ番目のキーワードｋiを含むテキストセットの数である。
【００９９】
キーワード頻度を決定する技術、およびキーワードに関連付けられる比率を決定するプロセスは、特定の順序で起きる必要はなく、並行して実施されることも可能である。
【０１００】
次いで、決定された、各テキストセットのなかの各キーワードの頻度および上述のような頻度に基づいて、各テキストセットのなかの各キーワードの重み値が決定される。例えば、テキストｄjのなかのキーワードｋiの重み値は、次式：
【数３】
0005717858.tif 000004
を通じて決定することができる。
【０１０１】
各テキストセットのなかの各キーワードの重み値を得た後は、各テキストセットについて重みベクトルを生成することができる。重みベクトルは、そのテキストセットから抽出された全てのキーワードのそれぞれの重み値を含むことができる。テキストのこの重みベクトルは、次いで、そのテキストセットと別のテキストセットとの間の類似度を決定するために使用される。
【０１０２】
例えば、テキストｄjについて生成された、キーワードｉ＝１，２，・・・，ｋを含む重みベクトルは、次のように表すことができる。
【数４】
0005717858.tif 000005
【０１０３】
テキストセットｄjとテキストセットｄmとの間の類似度は、例えば、以下に示されるようなベクトル内積の式を使用して得ることができる。
【数５】
0005717858.tif 000006
【０１０４】
５１０では、決定された類似度に基づいて、新テキストセットが少なくとも１つ以上のその他のテキストセットに関係しているかどうかが決定される。
【０１０５】
新テキストセットと、少なくとも幾つかのその他のテキストセット（例えば、その他の新テキストセットまたは原テキストセット）と、の間の類似度が決定された後、決定された類似度に基づいて、新テキストセットがその他のテキストセットのどれかに関係しているかどうかが決定される。一部の実施形態では、第２のテキストセットが第１のテキストセットに関係しているかどうかは、第１のテキストセットと第２のテキストセットとの間の類似度が所定の閾値を満たすまたは超えるかどうかに基づいて決定される。一部の実施形態では、第２のテキストセットは、ａ）第１のテキストセットとの類似度を決定された全てのテキストセットが、それらそれぞれの第１のテキストセットとの類似度に基づいてランク付けされ、ｂ）第２のテキストセットが、第１のテキストセットとの類似度が高い順に上位Ｎ個のテキストセットにランクしているときに、第１のテキストセットに関係していると決定される。これの目的は、第１のテキストセットとの類似度が比較的低いテキストセットに対し、関係ありの関連付けが付されることを回避することにある。
【０１０６】
特定のテキストセットに関係している（または一致する）と決定されたテキストセットを識別するデータは、これらの関係を後ほど再び呼び出すことができるように、その特定のテキストセットについて記憶される。
【０１０７】
各種の実施形態では、第１のテキストセットに関係しているテキストセットの決定は、フィルタ層において、または随意としてアルゴリズム層において実施される。一部の実施形態では、関係しているテキストセットの決定は、データ層に出力される。
【０１０８】
５１２では、新テキストセットに関係していると決定されたテキストセットが、新テキストセットに関連したユーザ操作に応えて出力される。
【０１０９】
例えば、もし、製品情報に関連付けられたユーザ公開コンテンツ情報からテキスト情報が抽出されたならば、それらのテキストセットは、製品にも関係している。したがって、もし、電子商取引ウェブサイト上で、あるユーザ操作があるテキストセットに関連付けられた製品に関連しているならば、そのテキストセットに関係していると決定されたテキストセットは、（例えば、その関係しているテキストセットを識別するデータを使用して）読み出される。次いで、関係しているテキストセットに関連付けられた製品が、電子商取引ウェブサイト上で（例えばユーザ操作を実施したユーザによって使用されているウェブブラウザに）出力される。
【０１１０】
一具体例として、あるユーザ（例えば潜在的買い手）が、電子商取引ウェブサイトでラップトップ製品を閲覧していると想定する。ラップトップ製品は、そのラップトップに関する製品情報からこれまでに抽出されたテキストに関連付けられている。ラップトップに関連付けられたテキストセットに関係していると決定されたテキストセットが読み出され、それら関係しているテキストセットに関連付けられた製品の少なくとも幾つかがユーザに対して出力される。この例では、関係しているテキストセットは、マウス、キーボード、およびデスクトップコンピュータに関する製品情報からこれまでに抽出されている可能性がある。マウス、キーボード、またはデスクトップコンピュータのうちの少なくとも１つが、お勧め製品としてユーザに対して出力される可能性がある。お勧めされた製品情報は、データ層を通じて表示用に構成することができる。
【０１１１】
図６は、更新されたワード頻度表を得るための２つの技術例を示したフローチャートである。
【０１１２】
更新されたワード頻度表は、第１の技術（６０２→６１０→６１２）または第２の技術（６０２および６０４→６０６→６０８→６１２）のいずれが適用されるにせよ、達成することができる。一部の実施形態では、第１の技術は、既存の（例えば既に記憶されている）ワード頻度表が利用可能でないときに使用することができる。
【０１１３】
第１の技術を使用すると、６０２において、１つ以上のデータベースに記憶されている全てのテキストセットを読み出すことができる。ここで、全てのテキストセットは、新テキストセット（現行期間中に得られたテキストセット）および原テキストセット（１つ以上の前期間から得られたテキストセット）の両方を含む。６１０では、読み出された全てのテキストセットのそれぞれから抽出された各キーワードの頻度の決定に基づいて、新しいワード頻度表が決定される。例えば、ワード頻度表は、各テキストセットのためのセクションと、そのテキストセットに関連付けられた１つ以上のキーワードと、そのテキストセットのなかで各キーワードが出現する対応する頻度とを含むことができる。６１０において作成されたワード頻度表は、６１２において、更新されたワード頻度表として使用される。
【０１１４】
第２の技術を使用すると、６０２において全てのテキストセットを読み出すことに加えて、６０４において、原テキストセット（現行期間中に得られた新テキストセットを含まないテキストセット）が読み出される。例えば、前期間中に得られたテキストセット（原テキストセット）および現行期間中に得られたテキストセット（新テキストセット）の両方を記憶するがそれらのテキストセットに関連付けられた期間どうしを区別しない別のデータベースとは対照的に、前期間中に得られたテキストセットのみを記憶するデータベースに、原テキストセットは、記憶させることができる。６０６では、６０２において読み出された全てのテキストセットと、６０４において読み出された原テキストセットと、の間のデータの差を決定することによって、新テキストセットが決定される。６０８では、新テキストセットから抽出されたキーワードの頻度が決定され、（例えば前期間中に作成された）既存のワード頻度表を更新するために使用される。６０８において更新された既存のワード頻度表は、６１２において、更新されたワード頻度表として使用される。
【０１１５】
図７は、テキストセットを照合するためのシステムの一実施形態を示した図である。
【０１１６】
システム７００は、収集モジュール１０と、ワード分離モジュール２０と、重み値決定モジュール３０と、ワード頻度更新モジュール４０と、類似度決定モジュール５０と、テキスト比較モジュール６０とを含む。
【０１１７】
モジュールおよびユニットは、１つ以上のプロセッサ上で実行されるソフトウェアコンポーネントとして、プログラマブル・ロジックデバイスおよび／もしくは特定の機能を実施するように設計された特殊用途向け集積回路などのハードウェアとして、またはそれらの組み合わせとして実装することができる。一部の実施形態では、モジュールおよびユニットは、本発明の実施形態で説明される方法を（パソコン、サーバ、ネットワーク機器などの）コンピュータデバイスに実行させるための幾つかの命令を含み、かつ（光ディスク、フラッシュストレージデバイス、モバイルハードディスクなどの）不揮発性のストレージ媒体に記憶させることができるソフトウェア製品の形で具現化することができる。モジュールおよびユニットは、１つのデバイスに実装するまたは複数のデバイスに分散させることができる。
【０１１８】
収集モジュール１０は、定期的にユーザ公開コンテンツ情報を取得し、現行期間中に収集されたコンテンツ情報に基づいて、現行期間中に追加された新テキストセットを抽出し、それらを１つ以上のデータベースに記憶するように構成される。
【０１１９】
ワード分離モジュール２０は、新テキストセットのなかの個々のワードを分離し、各テキストセットからキーワードを抽出するように構成される。
【０１２０】
重み値決定モジュール３０は、作成されたワード頻度表に基づいて、（１つ以上の）データベースに記憶されている各テキストセットのなかの各抽出キーワードの重み値を決定するように構成される。
【０１２１】
各種の実施形態では、重み決定モジュール３０は、また、第１の決定ユニット３１、第２の決定ユニット３２、および重み値計算ユニット３３も含む。
【０１２２】
第１の決定ユニット３１は、ワード頻度表に基づいて、（１つ以上の）データベースのなかの各テキストセットのなかの各キーワードの頻度を決定するように構成される。
【０１２３】
第２の決定ユニット３２は、データベースのなかに記憶されている全てのテキストセットの数と、各テキストセットから抽出された各キーワードを含むテキストセットの数との比率を決定するように構成される。
【０１２４】
重み値計算ユニット３３は、各テキストセットのなかの各キーワードの頻度と、第２の決定ユニット３２によって決定される比率とに基づいて、各テキストセットのなかの各キーワードの重み値を得るように構成される。
【０１２５】
ワード頻度更新モジュール４０は、（１つ以上の）データベースのなかの各テキストセットのなかの各ワードの頻度に基づいて、ワード頻度表を定期的に更新するように構成される。ここで、（１つ以上の）データベースのなかのテキストセットは、現行期間から得られた新テキストセットと、１つ以上の前期間から記憶された原テキストセットとを含む。
【０１２６】
各種の実施形態では、ワード頻度更新モジュール４０は、データベースに新テキストセットが追加されたら常に、新テキストセットのなかの各ワードと、データベースに記憶されている原テキストセットのなかの各ワードの頻度とをカウントし、データベースのなかの各テキストセットのなかの各ワードの頻度を含む新しいワード頻度表を作成するように、またはデータベースに新テキストセットが追加されたら常に、各新テキストセットのなかの各ワードの頻度をカウントし、そのカウント結果と、データベースに既に記憶されている原テキストセットのなかの各ワードについて既存のワード頻度表に記憶されている頻度とに基づいて、データベースのなかの各テキストセット（この時点で原テキストセットおよび新テキストセットの両方を含む）のなかの各ワードの頻度を含むように既存のワード頻度表を更新するように構成される。
【０１２７】
類似性決定モジュール５０は、（１つ以上の）データベースのなかの各テキストセットのなかの各キーワードについて決定された重み値に基づいて、各新テキストセットと、データベースのなかの各その他のテキストセットと、の間の類似度を決定するように構成される。一部の実施形態では、類似性決定モジュール５０は、データベースのなかの任意の２つのテキストセット（例えば、２つの新テキストセット、２つの原テキストセット、１つの新テキストセットと１つの原テキストセット）の間の類似度を決定するようにも構成される。
【０１２８】
一部の実施形態では、類似性決定モジュール５０は、また、ベクトル生成ユニット５１および類似性計算ユニット５２も含む。
【０１２９】
ベクトル生成モジュール５１は、別のテキストセットとの類似度を決定されるべき各テキストセットのなかの各キーワードのそれぞれの重み値を使用して、重みベクトルを生成するように構成される。
【０１３０】
類似性計算ユニット５２は、各新テキストセットの重みベクトルと、（１つ以上の）データベースに記憶されているあらゆる２つのテキストセットどうしの重みベクトルの内積と、を決定するように構成される。類似性計算ユニット５２は、新テキストセットと、データベースに記憶されている各その他のテキストセットと、の間の類似度を得るように構成され、または（１つ以上の）データベースに記憶されている各テキストセットについて、そのテキストセットの重みベクトルと、データベースに記憶されている各テキストセットペアの重みベクトルの内積と、を決定し、各ペアのテキストセットの間の類似度を得るようにも構成される。
【０１３１】
テキスト比較モジュール６０は、決定された類似度に基づいて、（１つ以上の）データベースに記憶されている各テキストセットに関係しているテキストセットを決定するように構成される。
【０１３２】
一部の実施形態では、上述のテキスト比較モジュール６０は、
関係しているテキストセットを決定されるべき各テキストセットについて、類似度が設定閾値よりも大きいもしくは設定閾値以上であるテキストセットを、データベースに記憶されている少なくとも１つのテキストセットに対して関係しているテキストセットとして、決定するように構成され、または
関係しているテキストセットを決定されるべき各テキストセットについて、データベースのなかのテキストセットと、関係しているテキストセットを決定されるべきテキストセットと、の間の類似度のランク順に基づいて、データベースに記憶されて高い類似度を有する設定量のテキストセットを、関係しているテキストセットを決定されるべきテキストセットについて関係しているテキストセットとして、決定するように構成される。
【０１３３】
一部の実施形態では、上述のテキスト比較モジュール６０は、また、入力フィルタモジュール７０も含み、該モジュールは、所定のフィルタリングルールに基づいて、現行期間中に収集されたユーザ公開コンテンツ情報をフィルタリングし、フィルタリングを経たコンテンツ情報に基づいて、現行期間中に追加された新テキストセットを抽出し、該新テキストセットをワード分離モジュール２０に入力するように構成される。
【０１３４】
入力フィルタユニット７０は、コンテンツ情報の品質が所定の品質評価値に適合するかどうか、および／またはコンテンツ情報を公開したユーザが適格ユーザであると決定されたかどうかに基づいて、フィルタリングを行うように構成される。
【０１３５】
一部の実施形態では、テキスト比較デバイス６０は、出力フィルタリングモジュール８０も含む。出力フィルタリングモジュール８０は、データベースのなかの各テキストセットの、各新テキストセットとの類似度、またはデータベースのなかの任意の２つのテキストセットの間で計算される類似度に基づいて、関係しているテキストセットを決定されるべき新テキストセットとのもしくはデータベースに記憶されているテキストセットとの類似度が所定の閾値未満であるテキストセットを除去することを決定し、または関係しているテキストセットを決定されるべき新テキストセットにもしくはデータベースに記憶されているテキストセットにあまり類似していないテキストセットを除去することを決定するように構成される。そして、出力フィルタリングモジュール８０は、テキストセットをテキスト比較モジュール６０に提供する。テキスト比較モジュール６０は、次いで、フィルタリングを経たテキストセットに基づいて、新テキストセットにまたはデータベースに記憶されている任意のテキストセットに関係しているテキストセットを決定するように構成される。
【０１３６】
本出願の実施形態によって提供される上述のテキスト照合技術は、ソフトウェアまたはハードウェアのいずれかを通じて実現することができる。例えば、それらの技術は、Ｃ、Ｌｉｎｕｘ（登録商標）オペレーティングシステム、クラスタなどのアプリケーション分散グループ、Ｈａｄｏｏｐ（分散システムアーキテクチャ）グループ、またはその他のハードウェアを通じて実現することができる。上述の技術は、例えば電子取引に使用されるリソース（ソーシング）プラットフォームにおける、製品に関係しているテキストデータの照合に適用されるなど、様々なテキスト照合プロセスに使用することができる。このようにして、関係している製品（例えば製品のお勧め）をユーザに供給することが可能である。
【０１３７】
明らかに、当業者ならば、本発明の趣旨および範囲から逸脱することなく本出願を変更および多様化することができる。したがって、もし、本出願のこれらの変更およびヴァリエーションが、特許請求の範囲およびその等価技術の範囲内であるならば、本出願は、これらの変更形態およびヴァリエーションも網羅することを意図される。
【０１３８】
以上の実施形態は、理解を明瞭にする目的で幾らか詳細に説明されてきたが、発明は、提供された詳細に限定されない。発明を実現するには、数々の代替的手法がある。開示された実施形態は、例示的なものであり、限定を目的としたものではない。
本発明は、以下のような態様で実現することもできる。
適用例１
システムであって、
プロセッサと、
前記プロセッサにつながれ、前記プロセッサに命令を提供するように構成されたメモリと、を備え、
前記プロセッサは、
現行期間に関連付けられたデータからテキストセットを抽出することと、
前記テキストセットを複数のテキストセットとともに記憶することと、
前記テキストセットからキーワードを抽出することと、
前記テキストセットに関連付けられた前記キーワードに関連付けられる重み値を決定することと、
前記テキストセットと別のテキストセットとの間の類似度を、前記テキストセットに関連付けられた前記キーワードに関連付けられる重み値と、前記他方のテキストセットに関連付けられたキーワードに関連付けられる重み値と、に少なくとも部分的に基づいて、決定することと、
前記決定された類似度に少なくとも部分的に基づいて、前記テキストセットが前記他方のテキストセットに関係しているかどうかを決定することと、
を行うように構成される、システム。
適用例２
適用例１のシステムであって、
前記複数のテキストセットは、１つ以上の原テキストセットと、１つ以上の新テキストセットとを含み、原テキストセットは、１つ以上の前期間に関連付けられ、新テキストセットは、現行期間に関連付けられる、システム。
適用例３
適用例１のシステムであって、
前記プロセッサは、さらに、１つ以上のワードのそれぞれに対応する頻度を含むワード頻度表を更新するように構成され、頻度は、前記複数のテキストセットのうちの特定のテキストセットのなかでワードが出現する回数に関連付けられる、システム。
適用例４
適用例３のシステムであって、
前記プロセッサは、さらに、前記テキストセットに関連付けられた１つ以上のキーワードに対応する前記ワード更新表の頻度を使用し、前記１つ以上のキーワードのそれぞれに対応する重み値を生成するように構成される、システム。
適用例５
適用例１のシステムであって、
前記テキストセットは、新テキストセットを含み、前記他方のテキストセットは、原テキストセットを含む、システム。
適用例６
適用例１のシステムであって、
前記テキストセットは、新テキストセットを含み、前記他方のテキストセットは、別の新テキストセットを含む、システム。
適用例７
適用例１のシステムであって、
前記テキストセットと前記他方のテキストセットとの間の類似度を決定するために、前記テキストセットから抽出された１つ以上のキーワードに対応する１つ以上の重み値が、前記他方のテキストセットから抽出された１つ以上のキーワードに対応する１つ以上の重み値と比較される、システム。
適用例８
適用例１のシステムであって、
前記テキストセットが前記他方のテキストセットに関係しているかどうかを決定することは、前記類似度が所定の閾値を少なくとも満たすかどうかに少なくとも部分的に基づく、システム。
適用例９
適用例１のシステムであって、
前記テキストセットが前記他方のテキストセットに関係しているかどうかを決定することは、前記類似度が、前記テキストセットに関連付けられた類似度のうち最も高いランクおよび前記他方のテキストセットに関連付けられた決定された類似度の所定の数に入るかどうかに少なくとも部分的に基づく、システム。
適用例１０
適用例１のシステムであって、
前記プロセッサは、さらに、前記複数のテキストセットのうちの第１の原テキストセットと第２の原テキストセットとの間の類似度を決定するように構成される、システム。
適用例１１
適用例１のシステムであって、
前記テキストセットは、第１の製品に関連付けられ、関係しているテキストセットは、第２の製品に関連付けられ、前記プロセッサは、さらに、前記第１の製品に関連したユーザ操作の受信に応えて、前記第２の製品をお勧め製品として出力するように構成される、システム。
適用例１２
方法であって、
現行期間に関連付けられたデータからテキストセットを抽出することと、
前記テキストセットを複数のテキストセットとともに記憶することと、
前記テキストセットからキーワードを抽出することと、
前記テキストセットに関連付けられた前記キーワードに関連付けられる重み値を決定することと、
前記テキストセットと別のテキストセットとの間の類似度を、前記テキストセットに関連付けられた前記キーワードに関連付けられる重み値と、前記他方のテキストセットに関連付けられたキーワードに関連付けられる重み値と、に少なくとも部分的に基づいて決定することと、
前記決定された類似度に少なくとも部分的に基づいて、前記テキストセットが前記他方のテキストセットに関係しているかどうかを決定することと、
を備える方法。
適用例１３
適用例１２の方法であって、さらに、
１つ以上のワードのそれぞれに対応する頻度を含むワード頻度表を更新することを備え、頻度は、前記複数のテキストセットのうちの特定のテキストセットのなかでワードが出現する回数に関連付けられる、方法。
適用例１４
適用例１３の方法であって、さらに、
前記テキストセットに関連付けられた１つ以上のキーワードに対応する前記ワード更新表の頻度を使用し、前記１つ以上のキーワードのそれぞれに対応する重み値を生成することを備える方法。
適用例１５
適用例１２の方法であって、
前記テキストセットと前記他方のテキストセットとの間の類似度の決定において、前記テキストセットから抽出された１つ以上のキーワードに対応する１つ以上の重み値が、前記他方のテキストセットから抽出された１つ以上のキーワードに対応する１つ以上の重み値と比較される、方法。
適用例１６
適用例１２の方法であって、
前記テキストセットが前記他方のテキストセットに関係しているかどうかを決定することは、前記類似度が所定の閾値を少なくとも満たすかどうかに少なくとも部分的に基づく、方法。
適用例１７
適用例１２の方法であって、
前記テキストセットが前記他方のテキストセットに関係しているかどうかを決定することは、前記類似度が、前記テキストセットに関連付けられた類似度のうち最も高いランクおよび前記他方のテキストセットに関連付けられた決定された類似度の所定の数に入るかどうかに少なくとも部分的に基づく、方法。
適用例１８
適用例１２の方法であって、さらに、
前記複数のテキストセットのうちの第１の原テキストセットと第２の原テキストセットとの間の類似度を決定することを備える方法。
適用例１９
適用例１２の方法であって、
前記テキストセットは、第１の製品に関連付けられ、関係しているテキストセットは、第２の製品に関連付けられ、前記方法は、さらに、前記第１の製品に関連したユーザ操作の受信に応えて前記第２の製品をお勧め製品として出力することを備える方法。
適用例２０
コンピュータによって読み取り可能なストレージ媒体に実装されたコンピュータプログラム製品であって、
現行期間に関連付けられたデータからテキストセットを抽出するためのコンピュータ命令と、
前記テキストセットを複数のテキストセットとともに記憶するためのコンピュータ命令と、
前記テキストセットからキーワードを抽出するためのコンピュータ命令と、
前記テキストセットに関連付けられた前記キーワードに関連付けられる重み値を決定するためのコンピュータ命令と、
前記テキストセットと別のテキストセットとの間の類似度を、前記テキストセットに関連付けられた前記キーワードに関連付けられる重み値と、前記他方のテキストセットに関連付けられたキーワードに関連付けられる重み値と、に少なくとも部分的に基づいて決定するためのコンピュータ命令と、
前記決定された類似度に少なくとも部分的に基づいて、前記テキストセットが前記他方のテキストセットに関係しているかどうかを決定するためのコンピュータ命令と、
を備えるコンピュータプログラム製品。
【図１】
0005717858.tif 000007
【図２】
0005717858.tif 000008
【図３】
0005717858.tif 000009
【図４】
0005717858.tif 000010
【図５Ａ】
0005717858.tif 000011
【図５Ｂ】
0005717858.tif 000012
【図６】
0005717858.tif 000013
【図７】
0005717858.tif 000014