(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0018】
発明は、プロセス、装置、システム、合成物、コンピュータによって読み取り可能なストレージ媒体に実装されたコンピュータプログラム製品、ならびに/または結合先のメモリに記憶されている命令および/もしくは結合先のメモリによって提供される命令を実行するように構成されたプロセッサのようなプロセッサなどの、数々の形態で実現することができる。本明細書では、これらの実現形態、または発明がとりうるその他のあらゆる形態を、技術と称することができる。総じて、開示されるプロセスのステップの順序は、発明の範囲内で可変であることができる。別途明記されない限り、タスクを実施するように構成されるものとして説明されるプロセッサまたはメモリなどの構成要素は、所定時にタスクを実施するように一時的に構成される汎用の構成要素として、またはタスクを実施するように製造された特殊な構成要素として実装することができる。本明細書で使用される「プロセッサ」という用語は、コンピュータプログラム命令などのデータを処理するように構成された1つ以上のデバイス、回路、および/または処理コアをいう。
【0019】
発明の原理を例示している添付の図面とともに、以下で、発明の1つ以上の実施形態の詳細な説明が提供される。発明は、このような実施形態との関連で説明されているが、いかなる実施形態にも限定されない。発明の範囲は、特許請求の範囲によってのみ限定され、発明は、数々の代替形態、変更形態、および均等物を網羅している。以下の説明では、発明の完全な理解を与えるために、数々の具体的詳細が明記されている。これらの詳細は、例示を目的として提供されるものであり、発明は、これらの詳細の一部または全部を伴わずとも、特許請求の範囲にしたがって実施することが可能である。明瞭さを期するために、発明に関係する技術分野で知られる技工物は、発明が不必要に不明瞭にされないように、詳細な説明を省略されている。
【0020】
テキストセットを照合する技術が開示される。各種の実施形態では、コンテンツ情報が取得され、定期的に記憶される。また、取得されたコンテンツ情報からのテキストも、1つ以上のテキストセットとして抽出されて、(例えば1つ以上のデータベースに)記憶される。本明細書で使用される「原テキスト」という用語は、現行期間よりも前の期間中に取得されて記憶されたテキストをいう。本明細書で使用される「新テキスト」という用語は、現行期間中に取得されて記憶されるテキストをいう。本明細書で使用される「テキスト」または「テキストセット」という用語は、マシンによって読み取り可能な任意のテキスト(例えばコンピューティング・デバイスを通じて入力された英数字またはコンピュータによって認識される紙面のテキスト)をいう。各種の実施形態では、各期間中に抽出されるテキストセットは、同じデータベースが前期間からの原テキストセットおよび現行期間からの新テキストセットの両方を含むように、同じ1つ以上のデータベースに蓄積される。
【0021】
各種の実施形態では、「原」テキストセットおよび「新」テキストセットという呼び名は、そのテキストセットがそれぞれ前期間中または現行期間中に取得されたかどうかに基づく。各現行期間が終了して前期間と称されるようになり、次の新しい/現行期間が始まるのに伴って、同じテキストセットに対して本明細書で使用される呼び名は、「新」から「原」に変化する。それでもなお、ペアをなすテキストセットの間で決定される類似度は、各テキストセットの中身(例えばテキストセットから抽出された1つ以上のキーワード)に基づき、そのテキストセットの呼び名が「新」または「原」であるかによって影響されない。なぜならば、呼び名は、ある期間が終了して次の期間が始まるのに伴って、変化するからである。例えば、新しい期間が始まるときに、直近期間からの「新」テキストセットは、「原」テキストセットと称されるようになり、新しい現行期間中に得られるテキストセットが、「新」と称される。
【0022】
開示されるテキストセット照合技術は、(例えばあらゆる)2つのテキストセットどうしを比較して、それら2つのテキストセットの間の類似度を決定するために使用することができる。2つのテキストセットは、1つ以上の期間にわたって抽出されたテキストセットを記憶されている同じ(1つ以上の)データベースから取り出される。2つのテキストセットは、1つの新テキストと1つの原テキスト、2つの新テキストセット、および2つの原テキストセットを含むことができる。
【0023】
各種の実施形態では、ワード頻度表が定期的に更新され、1つ以上のデータベースに記憶されている任意の2つのテキストセットの間の類似度を決定するために使用される。
【0024】
図1は、テキストセットを照合するためのシステムの図を示している。システム100は、デバイス102、104、106と、ネットワーク108と、テキストセット照合サーバ110と、データベース112とを含む。ネットワーク108は、様々な高速データネットワークおよび/または電気通信ネットワークを含むことができる。一部の実施形態では、テキストセット照合サーバ110は、電子商取引ウェブサイトの一構成要素であるおよび/または電子商取引ウェブサイトに関連付けられている。
【0025】
デバイス102、104、および106は、それぞれ、ユーザがそこでコンテンツ情報を掲示/公開することができるユーザ端末を表している。一部の実施形態では、ユーザは、コンテンツ情報を掲示/公開するために、デバイス102、104、または106の1つ以上を使用することができ、コンテンツ情報は、電子商取引ウェブサイトに掲示/公開される製品情報であることができる。各種の実施形態では、掲示/公開されたコンテンツ情報は、テキストセット照合サーバ110に送信される。デバイス102、104、および106のそれぞれでは、1人以上のユーザがコンテンツ情報を掲示/公開することができる。デバイス102、104、および106は、それぞれ、例えばデスクトップコンピュータ、ラップトップコンピュータ、スマートフォン、携帯端末、タブレット端末、またはその他の任意のコンピューティング・デバイスであることができる。デバイス102、104、および106のそれぞれは、ウェブブラウザ・アプリケーション(例えばMicrosoft Internet Explorer(登録商標)やGoogle Chrome(登録商標))を含むように構成することができる。システム100の例では、テキストセット照合サーバ110が1つ以上のクライアントデバイスからコンテンツ情報を受信できることを例示するために、3つのデバイスが示されているが、システム100のようなシステムには、4つ以上または2つ以下のデバイスが含まれることも可能である。
【0026】
一部の実施形態では、ユーザは、また、電子商取引ウェブサイトを閲覧し、そのウェブサイトにおける1つ以上のユーザ操作に応じた製品のお勧めを受信するために、デバイス102、104、および/または106を使用することもできる。例えば、ユーザは、ある製品に関連付けられたウェブページを閲覧し、次いで、(例えば、デバイス102、104、および/または106に関連付けられたディスプレイにおいて、)1つ以上のその他の製品のお勧めを受信する。このような製品のお勧めは、後ほどさらに詳しく論じられるように、テキストセットの照合の結果に基づいて作成することができる。
【0027】
テキストセット照合サーバ110は、1つ以上のデバイス(例えばデバイス102、104、および106)から、ユーザ公開コンテンツ情報を得るように構成される。各種の実施形態では、テキストセット照合サーバ110は、このような情報をデバイスから定期的に得る。テキストセット照合サーバ110は、得られたコンテンツ情報のテキストセットを(画像のような非テキストベースのコンテンツを無視することによって)抽出し、それらをデータベース112(データベース112は、1つ以上のデータベースを表すことができる)などのデータベースに記憶するように構成される。現行期間中に得られるテキストセットは、新テキストセットと称される。前期間中に得られたテキストセットは、原テキストセットと称される。一部の実施形態では、新テキストセットまたは原テキストセットのいずれも、データベース112として表される同じデータベースに記憶される。テキストセット照合サーバ110は、後ほどさらに詳しく論じられるように、データベース112に記憶されている様々なペアのテキストセットの間の類似度を先ず決定することに少なくとも部分的に基づいて、データベース112のなかのどのテキストセットが互いに関係しているか(例えばどの2つのテキストセットが互いに一致しているか)を決定するように構成される。一部の実施形態では、テキスト照合サーバ110は、製品のお勧めの作成を促すために、テキスト照合の結果を電子商取引ウェブサイトに提供するように構成される。
【0028】
図2は、テキストセットを照合するプロセスの一実施形態を示したフローチャートである。一部の実施形態では、プロセス200は、システム100上で実施することができる。プロセス200は、新テキストセットと原テキストセットとの間、または新テキストセットと別の新テキストセットとの間の類似度を決定するために使用することができる。
【0029】
202では、現行期間に関連付けられたデータから、新テキストセットが抽出される。
【0030】
ユーザ公開コンテンツ情報などのデータは、期間ごとに取得される。各期間の長さは、システム管理者によって、例えば、1日、一週間、数時間ごとのように、事前に決定することができる。例えば、ユーザ公開コンテンツ情報は、電子商取引ウェブサイト上で入手可能な製品に関する記述/情報(製品情報)であってそれらの製品の売り手によってウェブサイトに掲示された記述/情報を含むことができる。例えば、ウェブサイト上で製品情報を公開することができるためには、ユーザ(例えば売り手)は、そのウェブサイトのアカウントを有している必要があると考えられる。例えば、ユーザは、テキストおよび/またはその他のコンテンツ(例えば画像や双方向ウェブエレメント)を含む製品情報を公開することができる。
【0031】
例えば、ユーザは、クライアントデバイス(例えばクライアントデバイスにおけるウェブブラウザ)を通じて製品情報を公開することができ、サーバは、各クライアントデバイスから公開された製品情報を定期的に取得することができる。一部の実施形態では、取得された情報は、1つ以上のデータベースに記憶される。各期間中に取得された公開製品情報について、1つ以上のテキストセットを非テキストセットから分離し、同じデータベースまたは異なるデータベースに記憶させることができる。情報は、期間ごとに取得されて、(1つ以上の)データベースに記憶されるので、(1つ以上の)データベースは、1つ以上の前期間からのテキストセット(原テキストセット)と、現行期間からのテキストセット(新テキストセット)とを含む。各種の実施形態では、特定のコンテンツ情報から抽出されたテキストセットは、その特定のコンテンツ情報に関連付けられた関連付け/識別子(例えば、ユーザの識別子、情報が公開された時間、その情報が関連付けられている製品(もしあれば)、情報が先の/前期間または現行期間に公開されたかどうか)とともに記憶させることができる。一部の実施形態では、新しく取得された各コンテンツ情報から抽出されるテキストセットを、新テキストセットと見なすことができ、したがって、各現行期間では、複数の新テキスト(テキストセット)を、対応する数のコンテンツ情報から抽出することが可能である。
【0032】
一部の実施形態では、現行期間から収集されたコンテンツ情報から1つ以上の新テキストセットが抽出されるさらに前に、所定のフィルタリングルールに基づいて、コンテンツ情報がフィルタリングされる。例えば、公開製品情報が得られた後、例えば製品の画像などの、フィルタの1つ以上の指定文字または指定ワードを含まない製品情報は、フィルタリング除去(すなわち破棄)され、テキスト照合に使用されない。フィルタリングは、照合が実施されるテキストセットの量を軽減し、所望のデータタイプ(例えば解析対象とされる製品情報)に適合しないデータを除外することができる。
【0033】
例えば、現行期間から取得される製品情報が、MP3プレーヤに関するものだと想定する。この製品情報は、Title:MP3、Color:Red、Model.no.:325、および特徴記述などのテキストと、MP3プレーヤの画像などのその他の関連情報とを含むことができる。次いで、製品情報のうち、Title:MP3、Color:Red、Model.no.:325、および特徴記述を含む部分などのテキストセット(「新テキストセット」)を抽出し、記憶させることができる。
【0034】
204では、新テキストセットから、キーワードが抽出される。
【0035】
各新テキストセットは、個々のワードに分離することができ、それら個々のワードのセットから、キーワードを抽出することができる。一部の実施形態では、キーワードは、2つ以上の個々のワードを含むことができる。キーワードは、それが関連付けられている特定のコンテンツ情報を表すのに有用であるかどうかという基準で識別される。各種の実施形態では、キーワードは、所定のルールセットに基づいて、新テキストセットに関連付けられた個々のワードのセットから識別および抽出することができる。例えば、所定のルールは、キーワードとして指定されたワードのリストおよび/または重要である見込みがないゆえに破棄されるワードのリストを含むことができる。抽出されたキーワードは、テキストセットの照合に使用される。一部の実施形態では、特定のコンテンツ情報から抽出されたキーワードは、そのコンテンツ情報に関連付けられたワードベクトル(またはその他の何らかの形態のデータ構造)に記憶される。
【0036】
例えば、Title:MP3、Color:Red、Model.no.:XX、および特徴記述などの情報を含む新テキストセットが個々のワードに分離された後は、「MP3」および「red」などの抽出されたキーワードをワードベクトルに記憶させることができる。
【0037】
206では、新テキストに関連付けられたキーワードに関連付けられる重み値が決定される。
【0038】
各種の実施形態では、キーワードの重み値は、作成されたワード頻度表に基づいて決定することができる。
【0039】
一部の実施形態では、ワード頻度表を作成するために、(1つ以上の)データベースに記憶されている(例えば1つ以上の前期間からの)全てのテキストセットが解析され(例えば、個々のワードに分離され、キーワードが識別およびカウントされる)、各テキストセットにおける各ワードの発生回数(すなわち各ワードの頻度)が表に記憶される。一部の実施形態では、ワード頻度表は、1つ以上の新テキストセットが得られるたびに、または定期的に、更新される。各種の実施形態では、ワード頻度表用に、(1つ以上の)データベースに現時点で記憶されている各テキストセットに含まれる各キーワードの頻度に基づいて情報を生成することによって、キーワードの重み値を決定することができる。
【0040】
各種の実施形態では、206において、(現行期間中に取得された)新テキストセットから抽出される任意のキーワードおよび(前期間から取得された)任意の原テキストセットから抽出された任意のキーワードを含む、(1つ以上の)データベースに記憶されている各キーワードについて、重み値が決定される。
【0041】
一部の実施形態では、ワード頻度表は、(1つ以上の)データベースに記憶されている各テキストセットに含まれるワード(新テキストから抽出されるキーワードおよび非キーワードのワードを含む)ごとの頻度に基づいて、(例えば、1つ以上の新テキストセットが取得された後、または一定の長さの時間が経過した後に、)定期的に更新される。
【0042】
一部の実施形態では、この更新には、2つのシナリオが考えられる。
【0043】
シナリオ1:現時点でデータベースに記憶されている(例えば複数の期間にわたって記憶された)全てのテキストセットに基づいて、新しいワード頻度表が作成される。
【0044】
1つ以上の新テキストセットが得られるたびに、(1つ以上の)データベースに現時点で記憶されている各テキストセットに含まれる各ワードの頻度を含む新しいワード頻度表を作成するために、各新テキストセットのなかのおよびデータベースに記憶されている各原テキストセットのなかの各ワード(キーワードおよび非キーワードのワードを含む)の頻度がカウントされる。頻度を計算するための計算量は、関わるデータの量に線形的に関係しているので、たとえもし、(1つ以上の)データベースに記憶されている全てのテキストをカウントすることによってワード頻度表が更新されるとしても、計算は、(例えば、新テキストセットの抽出元になる情報が期間ごとに大量に生成されるわけではないので)それほど量は大きくなく、それほど時間もかからない。一部の実施形態では、テキストセットは、ワード頻度表が生成されるたびにカウントされる必要があるテキストの量を軽減するために、(1つ以上の)データベースから定期的に除去することができる。例えば、ある新期間では、最も古い期間からのテキストセットをデータベースから除去することができる。一部の実施形態では、シナリオ1は、既存のワード頻度表が利用可能でない(例えば記憶されていない)ときに使用することができる。
【0045】
シナリオ2:1つ以上の新テキストセットに基づいて、既存のワード頻度表が更新される。
【0046】
1つ以上の新テキストセットが得られるたびに、各新テキストセットのなかの各ワード(キーワードおよび非キーワードのワードを含む)の頻度がカウントされる。データベースのなかの各テキストセットのなかの各ワードについてこれまでに決定された頻度を含む既存のワード頻度表(すなわち、既存のワード頻度表の情報は、原テキストセットに基づく)が、各新テキストセットのなかのワードのカウント結果に基づいて更新される。一部の実施形態では、シナリオ2は、既存のワード頻度表が利用可能である(例えば記憶されている)ときに使用することができる。
【0047】
各種の実施形態では、ワード頻度表が作成されたとして、データベースに現時点で記憶されている各テキストセット(新テキストセットおよび原テキストセット)のなかの、分離および抽出を経た各キーワードの重み値を、(1つ以上の)データベースに記憶されている各キーワードについて、以下のように決定することができる。すなわち、ワード頻度表をもとに、(1つ以上の)データベースに現時点で記憶されている各テキストセットのなかのキーワードに対応する頻度が決定され、(1つ以上の)データベースに現時点で記憶されているテキストセットの総数と、キーワードを含むテキストセットの数とに基づく比率が決定され、次いで、各テキストセットのなかのキーワードに対応する頻度と、決定された比率とに基づいて、各テキストセットのなかのキーワードに対応する重み値が決定される。一部の実施形態では、(1つ以上の)データベースに記憶されている各テキストセットについて、そのテキストセットから抽出された全てのキーワードのそれぞれの重み値を保持するために、ベクトルを使用することができる。各テキストセットに含まれるキーワードの比率および重み値を決定する幾つかの具体例が、以下でさらに論じられる。
【0048】
208では、新テキストセットと別のテキストセットとの間の類似度が、新テキストセットに関連付けられたキーワードに関連付けられる重み値と、他方のテキストセットに関連付けられたキーワードに関連付けられる重み値とに少なくとも部分的に基づいて決定される。
【0049】
一部の実施形態では、各新テキストセットの、(1つ以上の)データベースに現時点で記憶されている別のテキストセットとの関連での類似度を決定することができる。この決定は、任意の2つのテキストセット間の類似度を決定すること、および各新テキストセットの、(1つ以上の)データベースに現時点で記憶されている各原テキストセットとの関連での類似度を決定することを含む。
【0050】
各新テキストセットと、(1つ以上の)データベースに現時点で記憶されているその他の各テキストセットと、の間の類似度を決定する一例は、別のテキストセットとの類似度を決定されるべき各テキストセットについて、そのテキストセットから抽出される各キーワードのそれぞれの重み値を含む重みベクトル(またはその他の何らかの形態のデータ構造)を構成することと、各新テキストセットについて、その新テキストセットの重みベクトルと、(1つ以上の)データベースに現時点で記憶されているテキストセットに対応する各重みベクトルと、の間の内積を決定し、その新テキストセットと、(1つ以上の)データベースに現時点で記憶されている各テキストセットと、の間の類似度を得ることとを含む。
【0051】
データベースのなかの原テキストセットの間の類似度は、プロセス200の前反復において(当時の現行期間であった前期間中に抽出されたテキストセットが、そのときにデータベースにあった原テキストセットと比較されたときに)決定されたので、一部の実施形態では、プロセス200の現反復では、各新テキストセットと別の新テキストセットとの間、および/または各新テキストセットと(1つ以上の)データベースに記憶されている各原テキストセットとの間でのみ類似度が決定される。(例えば2つの原テキストセット間などの)一部の類似度の決定を回避することによって、処理されるべきデータの量を軽減することができる。
【0052】
210では、決定された類似度に少なくとも部分的に基づいて、新テキストセットがその他のテキストセットに関係しているかどうかを決定することができる。
【0053】
各新テキストセットと別の新テキストセットとのおよび/または各新テキストセットと原テキストセットとの類似度が決定された後は、類似度に基づいて、それら2つのテキストセットが関係しているかどうかを決定することができる。ペアをなす原テキストセットの間の類似度(および一部の実施形態ではさらに関係性)は、前期間(プロセス200の前反復)中に既に決定されて記憶されているので、これらは、プロセス200のこの反復で再び決定される必要はない。
【0054】
テキストセットが別のテキストセットに関係しているかどうか(例えば、新テキストセットが別の新テキストセットに関係しているかどうかや、新テキストセットが原テキストセットに関係しているかどうか)を決定するためには、例えば、以下の技術のうちの1つを使用することができる。
【0056】
(例えばシステム管理者によって、)類似度の閾値を決定することが可能であり、もし、2つのテストセットの間(例えば、新テキストセットと別の新テキストセットとの間や、新テキストセットと原テキストセットとの間)の類似度が閾値を満たすまたは超えるならば、それら2つのテキストセットは、互いに関係していると決定され、もし、そうでなければ、それら2つのテキストセットは、互いに関係していないと決定される。
【0057】
技術2:類似度をランク付けし、類似度が最も高ランクの所定の数のテキストセットペアを選択する。
【0058】
全てのテキストセットペア(例えば、新テキストセットと別の新テキストセットや、新テキストセットと原テキストセット)についての類似度がランク付けされる。次いで、類似度が最も高い(例えばシステム管理者によって設定された)所定の数のテキストセットペアが、互いに関係していると決定される。
【0059】
テキストセットペアの関係性に関連付けられた識別子が、(1つ以上の)データベースに記憶される。各種の実施形態では、1つのテキストセットは、ゼロ、1つ、または2つ以上のその他のテキストセットに関係することができる。
【0060】
テキストセットペアの間の関係性は、様々な形で有用であり、例えば、製品のお勧めを行うために使用することができる。この例では、取得されたユーザ公開コンテンツ情報は、電子商取引ウェブサイトに掲示された製品情報に関係していると考えられる。製品情報は、製品の売り手によって掲示された製品の特性、仕様、および/またはその他の記述を含むことができる。したがって、このような情報から抽出されたテキストもやはり、製品に関係している。製品に関連した行為をユーザが電子商取引ウェブサイトで実施する(例えば、双方向ウェブページエレメントをクリックする、製品を購入する、製品に関するフィードバックを提供する)ことに応えて、この製品に関連付けられた1つ以上のテキストセットが、(1つ以上の)データベースから読み出される。次いで、この製品に関連付けられた(1つ以上の)テキストセットに関係していると決定されたテキストセットもまた、(1つ以上の)データベースから読み出される。次いで、関係しているテキストに関連する製品が、ユーザに対してお勧めされる(例えば、その製品を取り上げているウェブサイトによって、ユーザのウェブブラウザに表示される)。
【0061】
図3は、テキストセットを照合するプロセスの一実施形態を示したフローチャートである。一部の実施形態では、プロセス300は、システム100上で実施することができる。プロセス300は、(1つ以上の)データベースにある任意の2つのテキストセットについて、それら2つのテキストセットが2つの新テキストセット、2つの原テキストセット、または1つの新テキストセットと1つの原テキストセットのいずれとして指定されるかに関わらず、それら2つのテキストセット間の類似度を決定するために使用することができる。
【0062】
302では、現行期間に関連付けられたデータから、テキストセットが抽出される。各種の実施形態では、テキストセットは、複数のその他のテキストセットとともに記憶される。302は、上述のプロセスの202と同様である。一部の実施形態では、複数のその他のテキストセットは、その他の新テキストセット(現行期間に関連して取得されたテキストセット)および原テキストセット(前期間に関連して取得されたテキストセット)を含む、(1つ以上の)データベースに記憶されている全てのテキストを含む。
【0063】
304では、テキストセットから、キーワードが抽出される。
304は、上述のプロセスの
204と同様である。
【0064】
306では、テキストセットに関連付けられたキーワードに関連付けられる重み値が決定される。306は、上述のプロセス200の206と同様である。206で説明されたのと同様のやり方で、ワード頻度表も決定することができる。
【0065】
308では、テキストセットと別のテキストセットとの間の類似度が、テキストセットに関連付けられたキーワードに関連付けられる重み値と、他方のテキストセットに関連付けられたキーワードに関連付けられる重み値とに少なくとも部分的に基づいて決定される。
【0066】
各種の実施形態では、類似度は、(1つ以上の)データベースに記憶されている任意のテキストペアについて決定することができる。例えば、データベースのなかの、ペアをなす任意の2つのテキストセットの間の類似度の決定は、任意の2つの新テキストセットの間の類似度を決定することと、各新テキストセットと、データベースに現時点で記憶されている各原テキストセットとの間の類似度を決定することと、任意の2つの原テキストセットの間の類似度を決定することとを含む。任意の2つのテキストセット(例えば、1つの新テキストセットと1つの原テキストセット、2つの新テキストセット、および2つの原テキストセット)の間の類似度の決定は、別のテキストセットとの類似度を決定されるべき各テキストセットについて、そのテキストセットから抽出された各キーワードのそれぞれの重み値を含む重みベクトル(またはその他の何らかの形態のデータ構造)を構成することと、(1つ以上の)データベースに記憶されている各テキストセットについて、そのテキストセットの重みベクトルと、(1つ以上の)データベースに現時点で記憶されているその他の各テキストセットに対応する各重みベクトルと、の間の内積を決定し、そのテキストセットと、(1つ以上の)データベースに現時点で記憶されている各テキストセットと、の間の類似度を得ることとを含む。
【0067】
一部の実施形態では、ワード頻度表が更新されるたびに、(1つ以上の)データベースに記憶されている各ペアのテキストセットの間の類似度が決定される。
【0068】
310では、決定された類似度に少なくとも部分的に基づいて、テキストセットが他方のテキストセットに関係しているかどうかを決定することができる。
【0069】
2つのテキストセットが関係しているかどうかを決定するためには、210で使用されたのと同じ技術を使用することができる。テキストセットのペアは、2つの新テキストセット、または1つの新テキストセットと1つの原テキストセットはもちろん、2つの原テキストセットも含むことができる。
【0070】
図4は、テキストセットをフィルタリングするプロセスの一実施形態を示したフローチャートである。一部の実施形態では、プロセス400は、システム100上で実施することができる。一部の実施形態では、プロセス400は、プロセス200および/またはプロセス300とあわせて実施することができる。例えば、プロセス400は、プロセス200において、208の後に、ただし210の前に実施することができる。また、例えば、プロセス400は、プロセス300において、308の後に、ただし310の前に実施することができる。
【0071】
402では、複数のテキストセットからの第1のテキストセットと、複数のテキストセットからの第2のテキストセットと、の間の類似度が決定される。各種の実施形態では、第1および第2のテキストセットは、1つ以上のデータベースに記憶されている。各種の実施形態では、どの期間中も、新しいユーザ公開コンテンツ情報が各期間中に取得され、このような情報から抽出されたテキストセットが(1つ以上の)データベースに記憶される。(1つ以上の)データベースは、新テキストセット(現行期間中に得られたテキストセット)および原テキストセット(前期間中に得られたテキストセット)の両方を記憶している。第1のテキストセットは、新テキストセットまたは原テキストセットのいずれかであってよい。第2のテキストセットは、新テキストセットまたは原テキストセットのいずれかであってよい。
【0072】
もし、プロセス400が、プロセス200で実施されたならば、第1および第2のテキストセットは、新テキストセットと、新テキストセットまたは原テキストセットのいずれかとを含む(すなわち、第1および第2のテキストセットの一方が新テキストセットであり、もう一方は別の新テキストセットまたは原テキストセットのいずれかである)。
【0073】
もし、プロセス400が、プロセス300で実施されたならば、第1および第2のテキストセットは、2つの新テキストセット、または2つの原テキストセット、または1つの新テキストセットと1つの原テキストセットを含む(すなわち、第1および第2のテキストセットは、新テキストセットおよび原テキストセットの両方を記憶している(1つ以上の)データベースからの単純に任意の2つのテキストである。)。
【0074】
404では、決定された類似度に基づいて、第1および第2のテキストセットに対し、1つ以上のフィルタリングルールが適用される。
【0075】
1つ以上のフィルタリングルールは、(1つ以上の)データベースのなかのその他のテキストセットとの類似度に基づいて、特定のテキストセットを有用でないと決定して破棄するために、システム管理者によって設定することができる。(1つ以上の)データベースのなかのテキストセットは、1つ以上のフィルタリングルールに基づいて破棄することができる。例えば、フィルタリングルールは、あるテキストセットと、(1つ以上の)データベースのなかのその他のどのテキストセットと、の間の類似度も類似度閾値未満である場合に、そのテキストセットの破棄を指示することができる。
【0076】
図5Aは、テキストセットを照合するプロセスの一例を示したフローチャートである。
図5Bは、プロセス500を少なくとも部分的に実施することができるアーキテクチャの一例である。データ層550、フィルタ層552、およびアルゴリズム層554は、ソフトウェアおよび/またはハードウェアの一方または両方を使用して実装することができる。
【0077】
502では、定期的に、ユーザ公開コンテンツ情報が得られてワード頻度表が更新される。
【0078】
ユーザ公開コンテンツ情報は、所定期間ごとに得られ、得られたコンテンツ情報および/またはそのような情報から抽出されたテキストを記憶する1つ以上データベースに記憶される。また、記憶されているテキストセットのキーワードに関連付けられたワード頻度表も、やはり定期的に更新される。一部の実施形態では、ワード頻度表は、各所定期間にわたってコンテンツ情報が得られた後に更新される。また、
図6は、後述のように、更新されたワード頻度表を得るための2つの技術例である。
【0079】
各種の実施形態では、
図5Bのデータ層550などのデータ層において、定期的に、ユーザ公開コンテンツ情報が得られてワード頻度表が更新される。各種の実施形態では、データ層は、定期的にコンテンツ情報を得てワード頻度表を更新することに関連した論理リソースセットをいう。例えば、データ層は、コンテンツ情報および/またはそこから抽出されたテキストを記憶する1つ以上のデータベースを含むことができる。データ層は、データの少なくとも一部を(例えばユーザインターフェースに)表示させるように構成されたデータアプリケーション層用にデータを提供することができる。一部のプロセス500では、データ層は、アルゴリズム層用に入力データを提供し、アルゴリズム層の照合決定結果を受信する。
【0080】
例えば、得られたユーザ公開コンテンツ情報は、売り手によって電子商取引ウェブサイトに掲示された製品情報であることができる。このような情報から抽出されるテキストセットは、製品の性質および製品の記述に関連付けられたテキストセットを含むことができる。一具体例では、特定の製品情報から抽出されたテキストセットを、製品:MP3プレーヤに関連付けられたものだと想定する。すると、MP3プレーヤに関連付けられたテキストセットは、MP3プレーヤに類似している可能性がある製品に関連付けられたその他のテキストセットとの照合に使用することができる。
【0081】
504では、得られたユーザ公開コンテンツ情報に対し、第1のフィルタが適用される。
【0082】
得られたユーザ公開コンテンツ情報は、(例えば、不適格ユーザによって提供されたゆえにおよび/または完全でないゆえに、)テキストセットを照合するという目的に関わっていない/有用でないと考えられる情報を除去するために、フィルタリングすることができる。各種の実施形態では、テキストセットの照合に適していない/有用でない/関わっていないコンテンツ情報をフィルタリング除去する(すなわち破棄する)ために、得られたユーザ公開コンテンツ情報に対し、(例えばシステム管理者によって)事前に決定された1つ以上のフィルタリングルールが適用される。
【0083】
例えば、フィルタリングのためのルールは、必須のコンテンツを含まないコンテンツ情報(例えば製品の画像や製品に関する詳細な記述)をフィルタリング除去するように指示することができる。コンテンツ情報には、それが含むコンテンツの種類および量に基づいて、品質得点を割り当てることができる。具体的には、各コンテンツ情報のなかの各コンテンツ(例えば画像や、所要の製品仕様および記述)に点数を割り当てることができる。そして、もし、あるコンテンツ情報に関連付けられた品質得点の累計が、所定の品質得点閾値未満であるならば、そのコンテンツ情報は、破棄される(例えば、テキストセットとの照合に使用されない)。
【0084】
別の例では、フィルタリングのためのルールは、不適格ユーザによって公開/掲示されたコンテンツ情報をフィルタリング除去するように指示することができる。例えば、電子商取引ウェブサイトの場合は、ユーザ(例えば売り手)は、自身の信頼性に関してその他の使用者(例えば買い手)から評価を受けることができ、したがって、信頼性が所定の値を下回るユーザの場合は、そのユーザは、不適格であると判断され、そのようなユーザによって公開されるコンテンツ情報(例えば製品情報)は、フィルタリング除去される。不適格ユーザの例として、ウェブクローラやロボット、ひいてはウェブサイトに正しく貢献していない人間のユーザが挙げられる。また、例えば、電子商取引ウェブサイトへの訪問回数が所定値を超えるユーザも、やはり不適格であると見なすことができる。これは、ウェブクローラまたはロボットによって提供されるコンテンツ情報を除外するのに特に有用である。なぜならば、実際にウェブクローラまたはロボットであるユーザは、特定期間中に(例えばコンテンツ情報を公開した前後に)極めて頻繁にウェブサイトを訪問する傾向があるからである。また、例えば、ウェブサイトに記憶されているクレジットカード情報が期限切れになったユーザおよび/もしくは信用度の得点が低いユーザ、または所定期間を超えてウェブサイトからの応答が無かったユーザもまた、不適格ユーザであると見なすことができる。非応答ユーザは、設定期間内に操作を行わなかった(例えば、ウェブサイトにログオンしたままであるおよび/またはウェブサイトにあるどのエレメントとも対話しなかった)ユーザである。上記は、フィルタリングルールの例に過ぎず、実施にあたっては、さらに多くのおよび/または異なるフィルタリングルールを適用することが可能である。
【0085】
一部の実施形態では、
図5Bのフィルタ層554などのフィルタ層において、得られたユーザ公開コンテンツ情報に対し、1つ以上のフィルタリングルールが適用される。各種の実施形態では、フィルタ層は、得られた特定のユーザ公開コンテンツ情報を(もしあれば)フィルタリング除去することに関連した論理リソースセットをいう。一部の実施形態では、1つ以上のフィルタリングルールによってフィルタリング除去されなかったコンテンツ情報が、アルゴリズム層に出力される。
【0086】
506では、フィルタリングを経たコンテンツ情報から、新テキストセットが抽出される。
【0087】
1つ以上のフィルタリングルールの適用後に破棄されなかったコンテンツ情報は、506において処理される。コンテンツ情報は、現行期間中に得られたので、そのコンテンツ情報から抽出されるテキストセットは、新テキストセットと称される。プロセス200の202で説明されたのと同様に、コンテンツ情報の非テキストコンテンツは、抽出されない。これらの新テキストセットは、1つ以上のデータベースに記憶させることができる。
【0088】
508では、新テキストセットと、1つ以上のその他のテキストセットのそれぞれと、の間の類似度が決定される。
【0089】
新テキストセットと、同じ1つ以上のデータベースに記憶されている1つ以上のその他のテキストセットのそれぞれ(例えば新テキストセットまたは原テキストセット)と、の間の類似度を、決定することができる。2つのテキストセットの間の類似度は、後述されるようなおよび/またはプロセス200の206で説明されたような、更新されたワード頻度表に少なくとも部分的に基づいて決定することができる。
【0090】
各種の実施形態では、新テキストセットと、1つ以上のテキストセットとの間の類似度は、アルゴリズム層
554などのアルゴリズム層で決定される。各種の実施形態では、アルゴリズム層は、ペアをなすテキストセットの間の類似度(例えば数値)を計算するためにワード頻度表を使用することに関連した論理リソースセットをいう。各種の実施形態では、決定されたテキストセット間の類似度は、出力されてフィルタ層(例えばフィルタ層
552)に戻される。
【0091】
1つのテキストセットと別のテキストセットとの間の類似度の決定に先立って、各テキストセットは、個々のワードに分離され、それらの分離されたワードのなかから、1つ以上のキーワードが選択される。一部の実施形態では、テキストセットから抽出される各キーワードについての重み値が決定される。あるテキストセットに関連付けられたキーワードおよびそれらのそれぞれの重み値は、別のテキストセットと比較されるときに、そのテキストセットを表すものである。
【0092】
下記は、各テキストセット(例えば新テキストセットまたは原テキストセット)から抽出される各キーワードの重み値を決定する一例である。
【0093】
まず、各テキストセットについて、そのテキストセットから抽出される各キーワードがそのテキストセットのなかに何回出現するか(例えばテキストセットのなかのキーワードの頻度)を決定する。
【0094】
テキストセットのなかの各キーワードの頻度は、ワード頻度表を通じて得ることができる。ワード頻度表のなかのワードの頻度は、単語頻度−逆文書頻度(TF−IDF)を通じて得ることができる。すなわち、j番目のテキストセットのなかのi番目のキーワードの頻度は、次式:
【数1】
から得ることができる。
【0095】
ここで、f
i,jは、j番目のテキストセットd
jのなかのi番目のキーワードk
iの頻度であり、maxf
z,jは、f
i,jの最大値を表しており、iおよびjは、整数である。ワード頻度表は、この式にしたがって更新され、ワード頻度表は、特定のワードの頻度の決定が必要とされるときに、直接照会することができる。
【0096】
一部の実施形態では、f
i,jおよびmaxf
z,jの値を、実際の条件に基づいて決定することができる。例えば、テキストセットのなかの同じキーワードの複数回の発生が1回の発生だと見なされるように、f
i,jおよびmaxf
z,jを1に設定することが可能である。
【0097】
第2に、各テキストセットのなかの各キーワードについて、(1つ以上の)データベースに記憶されている全てのテキストセットと、キーワードを含むテキストセットとの比率が決定される。例えば、この比率は、次式:
【数2】
を通じて決定することができる。
【0098】
ここで、Nは、(1つ以上の)データベースのなかの全てのテキストセットの数であり、n
iは、i番目のキーワードk
iを含むテキストセットの数である。
【0099】
キーワード頻度を決定する技術、およびキーワードに関連付けられる比率を決定するプロセスは、特定の順序で起きる必要はなく、並行して実施されることも可能である。
【0100】
次いで、決定された、各テキストセットのなかの各キーワードの頻度および上述のような頻度に基づいて、各テキストセットのなかの各キーワードの重み値が決定される。例えば、テキストd
jのなかのキーワードk
iの重み値は、次式:
【数3】
を通じて決定することができる。
【0101】
各テキストセットのなかの各キーワードの重み値を得た後は、各テキストセットについて重みベクトルを生成することができる。重みベクトルは、そのテキストセットから抽出された全てのキーワードのそれぞれの重み値を含むことができる。テキストのこの重みベクトルは、次いで、そのテキストセットと別のテキストセットとの間の類似度を決定するために使用される。
【0102】
例えば、テキストd
jについて生成された、キーワードi=1,2,・・・,kを含む重みベクトルは、次のように表すことができる。
【数4】
【0103】
テキストセットd
jとテキストセットd
mとの間の類似度は、例えば、以下に示されるようなベクトル内積の式を使用して得ることができる。
【数5】
【0104】
510では、決定された類似度に基づいて、新テキストセットが少なくとも1つ以上のその他のテキストセットに関係しているかどうかが決定される。
【0105】
新テキストセットと、少なくとも幾つかのその他のテキストセット(例えば、その他の新テキストセットまたは原テキストセット)と、の間の類似度が決定された後、決定された類似度に基づいて、新テキストセットがその他のテキストセットのどれかに関係しているかどうかが決定される。一部の実施形態では、第2のテキストセットが第1のテキストセットに関係しているかどうかは、第1のテキストセットと第2のテキストセットとの間の類似度が所定の閾値を満たすまたは超えるかどうかに基づいて決定される。一部の実施形態では、第2のテキストセットは、a)第1のテキストセットとの類似度を決定された全てのテキストセットが、それらそれぞれの第1のテキストセットとの類似度に基づいてランク付けされ、b)第2のテキストセットが、第1のテキストセットとの類似度が高い順に上位N個のテキストセットにランクしているときに、第1のテキストセットに関係していると決定される。これの目的は、第1のテキストセットとの類似度が比較的低いテキストセットに対し、関係ありの関連付けが付されることを回避することにある。
【0106】
特定のテキストセットに関係している(または一致する)と決定されたテキストセットを識別するデータは、これらの関係を後ほど再び呼び出すことができるように、その特定のテキストセットについて記憶される。
【0107】
各種の実施形態では、第1のテキストセットに関係しているテキストセットの決定は、フィルタ層において、または随意としてアルゴリズム層において実施される。一部の実施形態では、関係しているテキストセットの決定は、データ層に出力される。
【0108】
512では、新テキストセットに関係していると決定されたテキストセットが、新テキストセットに関連したユーザ操作に応えて出力される。
【0109】
例えば、もし、製品情報に関連付けられたユーザ公開コンテンツ情報からテキスト情報が抽出されたならば、それらのテキストセットは、製品にも関係している。したがって、もし、電子商取引ウェブサイト上で、あるユーザ操作があるテキストセットに関連付けられた製品に関連しているならば、そのテキストセットに関係していると決定されたテキストセットは、(例えば、その関係しているテキストセットを識別するデータを使用して)読み出される。次いで、関係しているテキストセットに関連付けられた製品が、電子商取引ウェブサイト上で(例えばユーザ操作を実施したユーザによって使用されているウェブブラウザに)出力される。
【0110】
一具体例として、あるユーザ(例えば潜在的買い手)が、電子商取引ウェブサイトでラップトップ製品を閲覧していると想定する。ラップトップ製品は、そのラップトップに関する製品情報からこれまでに抽出されたテキストに関連付けられている。ラップトップに関連付けられたテキストセットに関係していると決定されたテキストセットが読み出され、それら関係しているテキストセットに関連付けられた製品の少なくとも幾つかがユーザに対して出力される。この例では、関係しているテキストセットは、マウス、キーボード、およびデスクトップコンピュータに関する製品情報からこれまでに抽出されている可能性がある。マウス、キーボード、またはデスクトップコンピュータのうちの少なくとも1つが、お勧め製品としてユーザに対して出力される可能性がある。お勧めされた製品情報は、データ層を通じて表示用に構成することができる。
【0111】
図6は、更新されたワード頻度表を得るための2つの技術例を示したフローチャートである。
【0112】
更新されたワード頻度表は、第1の技術(602→610→612)または第2の技術(602および604→606→608→612)のいずれが適用されるにせよ、達成することができる。一部の実施形態では、第1の技術は、既存の(例えば既に記憶されている)ワード頻度表が利用可能でないときに使用することができる。
【0113】
第1の技術を使用すると、602において、1つ以上のデータベースに記憶されている全てのテキストセットを読み出すことができる。ここで、全てのテキストセットは、新テキストセット(現行期間中に得られたテキストセット)および原テキストセット(1つ以上の前期間から得られたテキストセット)の両方を含む。610では、読み出された全てのテキストセットのそれぞれから抽出された各キーワードの頻度の決定に基づいて、新しいワード頻度表が決定される。例えば、ワード頻度表は、各テキストセットのためのセクションと、そのテキストセットに関連付けられた1つ以上のキーワードと、そのテキストセットのなかで各キーワードが出現する対応する頻度とを含むことができる。610において作成されたワード頻度表は、612において、更新されたワード頻度表として使用される。
【0114】
第2の技術を使用すると、602において全てのテキストセットを読み出すことに加えて、604において、原テキストセット(現行期間中に得られた新テキストセットを含まないテキストセット)が読み出される。例えば、前期間中に得られたテキストセット(原テキストセット)および現行期間中に得られたテキストセット(新テキストセット)の両方を記憶するがそれらのテキストセットに関連付けられた期間どうしを区別しない別のデータベースとは対照的に、前期間中に得られたテキストセットのみを記憶するデータベースに、原テキストセットは、記憶させることができる。606では、602において読み出された全てのテキストセットと、604において読み出された原テキストセットと、の間のデータの差を決定することによって、新テキストセットが決定される。608では、新テキストセットから抽出されたキーワードの頻度が決定され、(例えば前期間中に作成された)既存のワード頻度表を更新するために使用される。608において更新された既存のワード頻度表は、612において、更新されたワード頻度表として使用される。
【0115】
図7は、テキストセットを照合するためのシステムの一実施形態を示した図である。
【0116】
システム700は、収集モジュール10と、ワード分離モジュール20と、重み値決定モジュール30と、ワード頻度更新モジュール40と、類似度決定モジュール50と、テキスト比較モジュール60とを含む。
【0117】
モジュールおよびユニットは、1つ以上のプロセッサ上で実行されるソフトウェアコンポーネントとして、プログラマブル・ロジックデバイスおよび/もしくは特定の機能を実施するように設計された特殊用途向け集積回路などのハードウェアとして、またはそれらの組み合わせとして実装することができる。一部の実施形態では、モジュールおよびユニットは、本発明の実施形態で説明される方法を(パソコン、サーバ、ネットワーク機器などの)コンピュータデバイスに実行させるための幾つかの命令を含み、かつ(光ディスク、フラッシュストレージデバイス、モバイルハードディスクなどの)不揮発性のストレージ媒体に記憶させることができるソフトウェア製品の形で具現化することができる。モジュールおよびユニットは、1つのデバイスに実装するまたは複数のデバイスに分散させることができる。
【0118】
収集モジュール10は、定期的にユーザ公開コンテンツ情報を取得し、現行期間中に収集されたコンテンツ情報に基づいて、現行期間中に追加された新テキストセットを抽出し、それらを1つ以上のデータベースに記憶するように構成される。
【0119】
ワード分離モジュール20は、新テキストセットのなかの個々のワードを分離し、各テキストセットからキーワードを抽出するように構成される。
【0120】
重み値決定モジュール30は、作成されたワード頻度表に基づいて、(1つ以上の)データベースに記憶されている各テキストセットのなかの各抽出キーワードの重み値を決定するように構成される。
【0121】
各種の実施形態では、重み決定モジュール30は、また、第1の決定ユニット31、第2の決定ユニット
32、および重み値計算ユニット
33も含む。
【0122】
第1の決定ユニット31は、ワード頻度表に基づいて、(1つ以上の)データベースのなかの各テキストセットのなかの各キーワードの頻度を決定するように構成される。
【0123】
第2の決定ユニット32は、データベースのなかに記憶されている全てのテキストセットの数と、各テキストセットから抽出された各キーワードを含むテキストセットの数との比率を決定するように構成される。
【0124】
重み値計算ユニット33は、各テキストセットのなかの各キーワードの頻度と、第2の決定ユニット32によって決定される比率とに基づいて、各テキストセットのなかの各キーワードの重み値を得るように構成される。
【0125】
ワード頻度更新モジュール40は、(1つ以上の)データベースのなかの各テキストセットのなかの各ワードの頻度に基づいて、ワード頻度表を定期的に更新するように構成される。ここで、(1つ以上の)データベースのなかのテキストセットは、現行期間から得られた新テキストセットと、1つ以上の前期間から記憶された原テキストセットとを含む。
【0126】
各種の実施形態では、ワード頻度更新モジュール40は、データベースに新テキストセットが追加されたら常に、新テキストセットのなかの各ワードと、データベースに記憶されている原テキストセットのなかの各ワードの頻度とをカウントし、データベースのなかの各テキストセットのなかの各ワードの頻度を含む新しいワード頻度表を作成するように、またはデータベースに新テキストセットが追加されたら常に、各新テキストセットのなかの各ワードの頻度をカウントし、そのカウント結果と、データベースに既に記憶されている原テキストセットのなかの各ワードについて既存のワード頻度表に記憶されている頻度とに基づいて、データベースのなかの各テキストセット(この時点で原テキストセットおよび新テキストセットの両方を含む)のなかの各ワードの頻度を含むように既存のワード頻度表を更新するように構成される。
【0127】
類似性決定モジュール50は、(1つ以上の)データベースのなかの各テキストセットのなかの各キーワードについて決定された重み値に基づいて、各新テキストセットと、データベースのなかの各その他のテキストセットと、の間の類似度を決定するように構成される。一部の実施形態では、類似性決定モジュール50は、データベースのなかの任意の2つのテキストセット(例えば、2つの新テキストセット、2つの原テキストセット、1つの新テキストセットと1つの原テキストセット)の間の類似度を決定するようにも構成される。
【0128】
一部の実施形態では、類似性決定モジュール50は、また、ベクトル生成ユニット51および類似性計算ユニット52も含む。
【0129】
ベクトル生成モジュール51は、別のテキストセットとの類似度を決定されるべき各テキストセットのなかの各キーワードのそれぞれの重み値を使用して、重みベクトルを生成するように構成される。
【0130】
類似性計算ユニット52は、各新テキストセットの重みベクトルと、(1つ以上の)データベースに記憶されているあらゆる2つのテキストセットどうしの重みベクトルの内積と、を決定するように構成される。類似性計算ユニット52は、新テキストセットと、データベースに記憶されている各その他のテキストセットと、の間の類似度を得るように構成され、または(1つ以上の)データベースに記憶されている各テキストセットについて、そのテキストセットの重みベクトルと、データベースに記憶されている各テキストセットペアの重みベクトルの内積と、を決定し、各ペアのテキストセットの間の類似度を得るようにも構成される。
【0131】
テキスト比較モジュール60は、決定された類似度に基づいて、(1つ以上の)データベースに記憶されている各テキストセットに関係しているテキストセットを決定するように構成される。
【0132】
一部の実施形態では、上述のテキスト比較モジュール60は、
関係しているテキストセットを決定されるべき各テキストセットについて、類似度が設定閾値よりも大きいもしくは設定閾値以上であるテキストセットを、データベースに記憶されている少なくとも1つのテキストセットに対して関係しているテキストセットとして、決定するように構成され、または
関係しているテキストセットを決定されるべき各テキストセットについて、データベースのなかのテキストセットと、関係しているテキストセットを決定されるべきテキストセットと、の間の類似度のランク順に基づいて、データベースに記憶されて高い類似度を有する設定量のテキストセットを、関係しているテキストセットを決定されるべきテキストセットについて関係しているテキストセットとして、決定するように構成される。
【0133】
一部の実施形態では、上述のテキスト比較モジュール60は、また、入力フィルタモジュール70も含み、該モジュールは、所定のフィルタリングルールに基づいて、現行期間中に収集されたユーザ公開コンテンツ情報をフィルタリングし、フィルタリングを経たコンテンツ情報に基づいて、現行期間中に追加された新テキストセットを抽出し、該新テキストセットをワード分離モジュール20に入力するように構成される。
【0134】
入力フィルタユニット70は、コンテンツ情報の品質が所定の品質評価値に適合するかどうか、および/またはコンテンツ情報を公開したユーザが適格ユーザであると決定されたかどうかに基づいて、フィルタリングを行うように構成される。
【0135】
一部の実施形態では、テキスト比較デバイス60は、出力フィルタリングモジュール80も含む。出力フィルタリングモジュール80は、データベースのなかの各テキストセットの、各新テキストセットとの類似度、またはデータベースのなかの任意の2つのテキストセットの間で計算される類似度に基づいて、関係しているテキストセットを決定されるべき新テキストセットとのもしくはデータベースに記憶されているテキストセットとの類似度が所定の閾値未満であるテキストセットを除去することを決定し、または関係しているテキストセットを決定されるべき新テキストセットにもしくはデータベースに記憶されているテキストセットにあまり類似していないテキストセットを除去することを決定するように構成される。そして、出力フィルタリングモジュール80は、テキストセットをテキスト比較モジュール60に提供する。テキスト比較モジュール60は、次いで、フィルタリングを経たテキストセットに基づいて、新テキストセットにまたはデータベースに記憶されている任意のテキストセットに関係しているテキストセットを決定するように構成される。
【0136】
本出願の実施形態によって提供される上述のテキスト照合技術は、ソフトウェアまたはハードウェアのいずれかを通じて実現することができる。例えば、それらの技術は、C、Linux(登録商標)オペレーティングシステム、クラスタなどのアプリケーション分散グループ、Hadoop(分散システムアーキテクチャ)グループ、またはその他のハードウェアを通じて実現することができる。上述の技術は、例えば電子取引に使用されるリソース(ソーシング)プラットフォームにおける、製品に関係しているテキストデータの照合に適用されるなど、様々なテキスト照合プロセスに使用することができる。このようにして、関係している製品(例えば製品のお勧め)をユーザに供給することが可能である。
【0137】
明らかに、当業者ならば、本発明の趣旨および範囲から逸脱することなく本出願を変更および多様化することができる。したがって、もし、本出願のこれらの変更およびヴァリエーションが、特許請求の範囲およびその等価技術の範囲内であるならば、本出願は、これらの変更形態およびヴァリエーションも網羅することを意図される。
【0138】
以上の実施形態は、理解を明瞭にする目的で幾らか詳細に説明されてきたが、発明は、提供された詳細に限定されない。発明を実現するには、数々の代替的手法がある。開示された実施形態は、例示的なものであり、限定を目的としたものではない。
本発明は、以下のような態様で実現することもできる。
適用例1
システムであって、
プロセッサと、
前記プロセッサにつながれ、前記プロセッサに命令を提供するように構成されたメモリと、を備え、
前記プロセッサは、
現行期間に関連付けられたデータからテキストセットを抽出することと、
前記テキストセットを複数のテキストセットとともに記憶することと、
前記テキストセットからキーワードを抽出することと、
前記テキストセットに関連付けられた前記キーワードに関連付けられる重み値を決定することと、
前記テキストセットと別のテキストセットとの間の類似度を、前記テキストセットに関連付けられた前記キーワードに関連付けられる重み値と、前記他方のテキストセットに関連付けられたキーワードに関連付けられる重み値と、に少なくとも部分的に基づいて、決定することと、
前記決定された類似度に少なくとも部分的に基づいて、前記テキストセットが前記他方のテキストセットに関係しているかどうかを決定することと、
を行うように構成される、システム。
適用例2
適用例1のシステムであって、
前記複数のテキストセットは、1つ以上の原テキストセットと、1つ以上の新テキストセットとを含み、原テキストセットは、1つ以上の前期間に関連付けられ、新テキストセットは、現行期間に関連付けられる、システム。
適用例3
適用例1のシステムであって、
前記プロセッサは、さらに、1つ以上のワードのそれぞれに対応する頻度を含むワード頻度表を更新するように構成され、頻度は、前記複数のテキストセットのうちの特定のテキストセットのなかでワードが出現する回数に関連付けられる、システム。
適用例4
適用例3のシステムであって、
前記プロセッサは、さらに、前記テキストセットに関連付けられた1つ以上のキーワードに対応する前記ワード更新表の頻度を使用し、前記1つ以上のキーワードのそれぞれに対応する重み値を生成するように構成される、システム。
適用例5
適用例1のシステムであって、
前記テキストセットは、新テキストセットを含み、前記他方のテキストセットは、原テキストセットを含む、システム。
適用例6
適用例1のシステムであって、
前記テキストセットは、新テキストセットを含み、前記他方のテキストセットは、別の新テキストセットを含む、システム。
適用例7
適用例1のシステムであって、
前記テキストセットと前記他方のテキストセットとの間の類似度を決定するために、前記テキストセットから抽出された1つ以上のキーワードに対応する1つ以上の重み値が、前記他方のテキストセットから抽出された1つ以上のキーワードに対応する1つ以上の重み値と比較される、システム。
適用例8
適用例1のシステムであって、
前記テキストセットが前記他方のテキストセットに関係しているかどうかを決定することは、前記類似度が所定の閾値を少なくとも満たすかどうかに少なくとも部分的に基づく、システム。
適用例9
適用例1のシステムであって、
前記テキストセットが前記他方のテキストセットに関係しているかどうかを決定することは、前記類似度が、前記テキストセットに関連付けられた類似度のうち最も高いランクおよび前記他方のテキストセットに関連付けられた決定された類似度の所定の数に入るかどうかに少なくとも部分的に基づく、システム。
適用例10
適用例1のシステムであって、
前記プロセッサは、さらに、前記複数のテキストセットのうちの第1の原テキストセットと第2の原テキストセットとの間の類似度を決定するように構成される、システム。
適用例11
適用例1のシステムであって、
前記テキストセットは、第1の製品に関連付けられ、関係しているテキストセットは、第2の製品に関連付けられ、前記プロセッサは、さらに、前記第1の製品に関連したユーザ操作の受信に応えて、前記第2の製品をお勧め製品として出力するように構成される、システム。
適用例12
方法であって、
現行期間に関連付けられたデータからテキストセットを抽出することと、
前記テキストセットを複数のテキストセットとともに記憶することと、
前記テキストセットからキーワードを抽出することと、
前記テキストセットに関連付けられた前記キーワードに関連付けられる重み値を決定することと、
前記テキストセットと別のテキストセットとの間の類似度を、前記テキストセットに関連付けられた前記キーワードに関連付けられる重み値と、前記他方のテキストセットに関連付けられたキーワードに関連付けられる重み値と、に少なくとも部分的に基づいて決定することと、
前記決定された類似度に少なくとも部分的に基づいて、前記テキストセットが前記他方のテキストセットに関係しているかどうかを決定することと、
を備える方法。
適用例13
適用例12の方法であって、さらに、
1つ以上のワードのそれぞれに対応する頻度を含むワード頻度表を更新することを備え、頻度は、前記複数のテキストセットのうちの特定のテキストセットのなかでワードが出現する回数に関連付けられる、方法。
適用例14
適用例13の方法であって、さらに、
前記テキストセットに関連付けられた1つ以上のキーワードに対応する前記ワード更新表の頻度を使用し、前記1つ以上のキーワードのそれぞれに対応する重み値を生成することを備える方法。
適用例15
適用例12の方法であって、
前記テキストセットと前記他方のテキストセットとの間の類似度の決定において、前記テキストセットから抽出された1つ以上のキーワードに対応する1つ以上の重み値が、前記他方のテキストセットから抽出された1つ以上のキーワードに対応する1つ以上の重み値と比較される、方法。
適用例16
適用例12の方法であって、
前記テキストセットが前記他方のテキストセットに関係しているかどうかを決定することは、前記類似度が所定の閾値を少なくとも満たすかどうかに少なくとも部分的に基づく、方法。
適用例17
適用例12の方法であって、
前記テキストセットが前記他方のテキストセットに関係しているかどうかを決定することは、前記類似度が、前記テキストセットに関連付けられた類似度のうち最も高いランクおよび前記他方のテキストセットに関連付けられた決定された類似度の所定の数に入るかどうかに少なくとも部分的に基づく、方法。
適用例18
適用例12の方法であって、さらに、
前記複数のテキストセットのうちの第1の原テキストセットと第2の原テキストセットとの間の類似度を決定することを備える方法。
適用例19
適用例12の方法であって、
前記テキストセットは、第1の製品に関連付けられ、関係しているテキストセットは、第2の製品に関連付けられ、前記方法は、さらに、前記第1の製品に関連したユーザ操作の受信に応えて前記第2の製品をお勧め製品として出力することを備える方法。
適用例20
コンピュータによって読み取り可能なストレージ媒体に実装されたコンピュータプログラム製品であって、
現行期間に関連付けられたデータからテキストセットを抽出するためのコンピュータ命令と、
前記テキストセットを複数のテキストセットとともに記憶するためのコンピュータ命令と、
前記テキストセットからキーワードを抽出するためのコンピュータ命令と、
前記テキストセットに関連付けられた前記キーワードに関連付けられる重み値を決定するためのコンピュータ命令と、
前記テキストセットと別のテキストセットとの間の類似度を、前記テキストセットに関連付けられた前記キーワードに関連付けられる重み値と、前記他方のテキストセットに関連付けられたキーワードに関連付けられる重み値と、に少なくとも部分的に基づいて決定するためのコンピュータ命令と、
前記決定された類似度に少なくとも部分的に基づいて、前記テキストセットが前記他方のテキストセットに関係しているかどうかを決定するためのコンピュータ命令と、
を備えるコンピュータプログラム製品。