(57)【要約】  文書中に表現されているセンチメントを求めるためのシステム、そのための命令を記憶するコンピュータ可読記憶媒体、及びそのためのコンピュータ実装型の方法が開示されている。複数の文書から或る文書が受信される。文書の中で、少なくとも１つのセンチメントシグネチャをキーワードのリストからの少なくとも１つのキーワードの所定距離内に含んでいる文が識別され、ここに、キーワードのリストは、複数の文書から抽出され相転移式を使用してフィルタに掛けられており、少なくとも１つのセンチメントシグネチャは、文中の少なくとも１つのセンチメントの表現に対応している。文の少なくとも１つのキーワードに対応する少なくとも１つのカテゴリであって、キーワードのリストを使用して生成されているカテゴリのリストに含まれている、少なくとも１つのカテゴリが求められる。少なくとも１つのセンチメントシグネチャに基づいて、少なくとも１つのカテゴリに対応する少なくとも１つのセンチメントが求められる。【選択図】  図１
2013525868.tif 000002
【特許請求の範囲】
【請求項１】
文書中に表現されているセンチメント（sentiment:感情）を求めるためのコンピュータ実装型の方法において、
複数の文書からの或る文書を受信する段階と、
少なくとも１つのプロセッサを使用し、前記文書中に、少なくとも１つのセンチメントシグネチャをキーワードのリストからの少なくとも１つのキーワードの所定距離内に含んでいる文を識別する段階であって、前記キーワードのリストは、前記複数の文書から抽出され相転移式を使用してフィルタに掛けられており、前記少なくとも１つのセンチメントシグネチャは、前記文中の少なくとも１つのセンチメントの表現に対応している、文を識別する段階と、
前記文の前記少なくとも１つのキーワードに対応する少なくとも１つのカテゴリを求める段階であって、前記少なくとも１つのカテゴリは、前記キーワードのリストを使用して生成されているカテゴリのリストに含まれている、カテゴリを求める段階と、
前記少なくとも１つのセンチメントシグネチャに基づいて、前記少なくとも１つのカテゴリに対応する少なくとも１つのセンチメントを求める段階と、から成るコンピュータ実装型の方法。
【請求項２】
前記の、少なくとも１つのセンチメントシグネチャをキーワードのリストからの少なくとも１つのキーワードの所定距離内に含んでいる文を識別する段階に先立って、
前記複数の文書のそれぞれの文書からキーワードを抽出し、
それぞれのキーワードについて、
前記複数の文書中の前記キーワードの頻出度ｆと当該キーワードを含んでいる文書の数Ｎを計算し、
前記相転移式を使用して、前記複数の文書中の前記キーワードの前記頻出度と当該キーワードを含んでいる文書の前記数とに基づいて、前記キーワードの関連度を計算し、
前記キーワードの前記関連度が所定の閾値を超えていたら、当該キーワードを前記キーワードのリストに加えることによって、前記キーワードのリストを抽出する段階を更に備えている、請求項１に記載のコンピュータ実装型の方法。
【請求項３】
前記相転移式は、
2013525868.tif 000006
であり、ここにｘ≧１である、請求項２に記載のコンピュータ実装型の方法。
【請求項４】
ｘは３である、請求項３に記載のコンピュータ実装型の方法。
【請求項５】
前記文の前記少なくとも１つのキーワードに対応する少なくとも１つのカテゴリを求める段階に先立って、
前記複数の文書の中で、前記キーワードのリストからの少なくとも１つのキーワードを含んでいる文書の第１のセットを識別し、
前記文書の第１のセットの中の少なくとも所定の数の文書中に含まれているキーワードのセットを識別し、
前記キーワードのセットを、カテゴリそれぞれが各々のキーワードセットを含んでいる前記カテゴリのリストに加えることによって、前記カテゴリのリストを生成する段階を更に備えている、請求項１に記載のコンピュータ実装型の方法。
【請求項６】
前記文の前記少なくとも１つのキーワードに対応する少なくとも１つのカテゴリを求める段階に先立って、
前記キーワードのリストの中で、互いに関係のあるキーワードのペアであって、固有のキーワードのペアである、キーワードのペアを求め、
前記キーワードのペアのセットであって、それぞれのセットは当該セットの中の前記キーワードのペア全てに共通する少なくとも１つのキーワードを含んでいる、キーワードのペアのセットを識別し、
所定の終結条件が達成されるまで、前記キーワードのペアのセット同士を反復的に組み合わせてゆき、それぞれの組み合わされたセットには、当該組み合わされたセットの中の前記キーワードのペア全てに共通する少なくとも１つのキーワードが含まれている、その様に組み合わせてゆくことによって、前記カテゴリのリストを生成する段階を更に備えている、請求項１に記載のコンピュータ実装型の方法。
【請求項７】
前記文の前記少なくとも１つのキーワードに対応する少なくとも１つのカテゴリを求める段階は、サポートベクターマシンを使用して、前記文の前記少なくとも１つのキーワードに対応する前記少なくとも１つのカテゴリを求める段階を含んでいる、請求項１に記載のコンピュータ実装型の方法。
【請求項８】
前記文の前記少なくとも１つのキーワードに対応する少なくとも１つのカテゴリを求める段階は、ニューラルネットワークを使用して、前記文の前記少なくとも１つのキーワードに対応する前記少なくとも１つのカテゴリを求める段階を含んでいる、請求項１に記載のコンピュータ実装型の方法。
【請求項９】
前記文の前記少なくとも１つのキーワードに対応する少なくとも１つのカテゴリを求める段階は、
複数のカテゴリスペクトルであって、カテゴリスペクトルそれぞれが各々のカテゴリに対応している前記キーワードのリスト中のキーワードの出現頻度を含んでいる、カテゴリスペクトルを入手する段階と、
前記少なくとも１つのキーワードに基づいて、前記文についてカテゴリスペクトルを求める段階と、
前記文のカテゴリスペクトルと前記複数のカテゴリスペクトルの中のそれぞれのカテゴリスペクトルのドット積を計算する段階と、
前記少なくとも１つのカテゴリを、所定の閾値を超えている少なくとも１つのドット積に対応するカテゴリとして確定する段階と、を含んでいる、請求項１に記載のコンピュータ実装型の方法。
【請求項１０】
前記の、前記複数のカテゴリスペクトルを入手する段階に先立って、それぞれのカテゴリについて、
前記カテゴリに対応する文書の集積体を入手し、
前記文書の集積体の中のそれぞれの文書からキーワードを抽出し、
前記相転移式を使用して前記キーワードをフィルタに掛け、フィルタリング済みキーワードを導き出し、
前記文書の集積体中の前記フィルタリング済みキーワードの出現頻度を求め、
前記フィルタリング済みキーワードの前記出現頻度を正規化して、前記カテゴリについてのカテゴリスペクトルを導き出すことによって、前記カテゴリについての前記カテゴリスペクトルを求める段階を更に備えている、請求項９に記載のコンピュータ実装型の方法。
【請求項１１】
前記の、複数の文書からの或る文書を受信する段階に先立って、
文書の集積体の中のそれぞれの文書について、
前記文書からｎ−グラムを抽出し、
前記文書について、前記抽出されたｎ−グラムに基づいて、ｎ−グラムの出現頻度をｎ−グラムのサイズの関数として示すｎ−グラムスペクトルを求め、
前記文書の前記ｎ−グラムスペクトルが、所定の方程式によって定義されている基準ｎ−グラムスペクトルに所定の閾値内で整合しているかどうかを判定し、
前記文書の前記ｎ−グラムスペクトルが前記基準ｎ−グラムスペクトルに前記所定の閾値内で整合している場合は、当該文書を前記複数の文書に加え、
前記文書の前記ｎ−グラムスペクトルが前記基準ｎ−グラムスペクトルに前記所定の閾値内で整合していない場合は、当該文書を捨てることによって、前記文書の集積体から前記複数の文書を選択する段階を更に備えている、請求項１に記載のコンピュータ実装型の方法。
【請求項１２】
前記所定の方程式は、
2013525868.tif 000007
であり、ここに、ｘは前記ｎ−グラムのサイズであり、ａ、ｂ、及びｃは、前記所定の方程式のピークがサイズ２のｎ−グラムとサイズ３のｎ−グラムの間となる所定の値である、請求項１１に記載のコンピュータ実装型の方法。
【請求項１３】
前記少なくとも１つのセンチメントシグネチャは、前記少なくとも１つのセンチメントの表現が前記文中に存在していることを指し示す少なくとも１つの単語を含んでいる、請求項１に記載のコンピュータ実装型の方法。
【請求項１４】
前記少なくとも１つのセンチメントは、少なくとも１つのカテゴリに関係のある意見の表現である、請求項１に記載のコンピュータ実装型の方法。
【請求項１５】
前記少なくとも１つのカテゴリは、製品と関連付けられている、請求項１に記載のコンピュータ実装型の方法。
【請求項１６】
前記少なくとも１つのカテゴリは、サービスと関連付けられている、請求項１に記載のコンピュータ実装型の方法。
【請求項１７】
文書中に表現されているセンチメントを求めるためのシステムにおいて、
少なくとも１つのプロセッサと、
メモリと、
前記メモリに記憶されている少なくとも１つのプログラムであって、
複数の文書からの或る文書を受信するための命令と、
前記文書中に、少なくとも１つのセンチメントシグネチャをキーワードのリストからの少なくとも１つのキーワードの所定距離内に含んでいる文を識別するための命令であって、前記キーワードのリストは、前記複数の文書から抽出され相転移式を使用してフィルタに掛けられており、前記少なくとも１つのセンチメントシグネチャは、前記文中の少なくとも１つのセンチメントの表現に対応している、文を識別するための命令と、
前記文の前記少なくとも１つのキーワードに対応する少なくとも１つのカテゴリを求めるための命令であって、前記少なくとも１つのカテゴリは、前記キーワードのリストを使用して生成されているカテゴリのリストに含まれている、カテゴリを求めるための命令と、
前記少なくとも１つのセンチメントシグネチャに基づいて、前記少なくとも１つのカテゴリに対応する少なくとも１つのセンチメントを求めるための命令と、を備えている少なくとも１つのプログラムと、を備えているシステム。
【請求項１８】
前記キーワードのリストを抽出するための命令を更に備えており、前記文書から前記キーワードのリストを抽出する命令は、
前記複数の文書のそれぞれの文書からキーワードを抽出し、
それぞれのキーワードについて、
前記複数の文書中の前記キーワードの頻出度ｆと当該キーワードを含んでいる文書の数Ｎを計算し、
前記相転移式を使用して、前記複数の文書中の前記キーワードの前記頻出度と当該キーワードを含んでいる文書の前記数とに基づいて、前記キーワードの関連度を計算し、
前記キーワードの前記関連度が所定の閾値を超えていたら、当該キーワードを前記キーワードのリストに加える、ための命令を含んでいる、請求項１７に記載のシステム。
【請求項１９】
前記相転移式は、
2013525868.tif 000008
であり、ここにｘ≧１である、請求項１８に記載のシステム。
【請求項２０】
コンピュータに実行させるように構成されている少なくとも１つのプログラムを記憶するコンピュータ可読記憶媒体において、前記少なくとも１つのプログラムが、
複数の文書からの或る文書を受信するための命令と、
前記文書中に、少なくとも１つのセンチメントシグネチャをキーワードのリストからの少なくとも１つのキーワードの所定距離内に含んでいる文を識別するための命令であって、前記キーワードのリストは、前記複数の文書から抽出され相転移式を使用してフィルタに掛けられており、前記少なくとも１つのセンチメントシグネチャは、前記文中の少なくとも１つのセンチメントの表現に対応している、文を識別するための命令と、
前記文の前記少なくとも１つのキーワードに対応する少なくとも１つのカテゴリを求めるための命令であって、前記少なくとも１つのカテゴリは、前記キーワードのリストを使用して生成されているカテゴリのリストに含まれている、カテゴリを求めるための命令と、
前記少なくとも１つのセンチメントシグネチャに基づいて、前記少なくとも１つのカテゴリに対応する少なくとも１つのセンチメントを求めるための命令と、を備えている、コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の相互参照）
本出願は、２０１０年１２月２３日に「文書中に表現されているセンチメントを求めるためのシステム及び方法」という名称で出願されている米国特許出願第１２／９７７，５１３号に対する優先権を主張する。本出願は、更に、２００９年１２月２４日に「センチメントプラットフォーム」の名称で出願されている米国仮特許出願第６１／２８４，８２０号に対する優先権を主張する。本出願は、更に、２００９年１２月２４日に「移動式センチメントプラットフォーム」の名称で出願されている米国仮特許出願第６１／２８４，８１９号に対する優先権を主張する。本出願は、更に、２０１０年１０月１５日に「センチメントエンジン」という名称で出願されている米国仮特許出願第６１／３９３，８１３号に対する優先権を主張するものであり、上記４件の出願のそれぞれを参考文献としてここにそっくりそのまま援用する。
開示されている実施形態は、概括的には、文書中に表現されているセンチメント（感情）を求めることに関する。
【背景技術】
【０００２】
インターネットは、様々な主題に関して情報を含んでいる。この情報は、特定の分野の専門家又は一時的ユーザー（例えば、ブロガーやレビュアーなど）によって書かれている。検索エンジンは、ユーザーが自分たちにとって関心のある主題に関して情報を含んでいる文書を識別できるようにしている。しかしながら、特定の主題に関してこれらのユーザーによって表現されているセンチメントを識別することは現在のところ難しい。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】米国特許出願第１２／９７７，５１３号
【特許文献２】米国仮特許出願第６１／２８４，８２０号
【特許文献３】米国仮特許出願第６１／２８４，８１９号
【特許文献４】米国仮特許出願第６１／３９３，８１３号
【発明の概要】
【０００４】
文書中に表現されているセンチメントを求めるためのシステム、そのための命令を記憶するコンピュータ可読記憶媒体、及びそのためのコンピュータ実装型の方法が開示されている。複数の文書から或る文書が受信される。文書の中で、少なくとも１つのセンチメントシグネチャをキーワードのリストからの少なくとも１つのキーワードの所定距離内に含んでいる文が識別され、ここに、キーワードのリストは、複数の文書から抽出され相転移式を使用してフィルタに掛けられており、少なくとも１つのセンチメントシグネチャは、文中の少なくとも１つのセンチメントの表現に対応している。文の少なくとも１つのキーワードに対応する少なくとも１つのカテゴリであって、キーワードのリストを使用して生成されているカテゴリのリストに含まれている、少なくとも１つのカテゴリが求められる。少なくとも１つのセンチメントシグネチャに基づいて、少なくとも１つのカテゴリに対応する少なくとも１つのセンチメントが求められる。
【０００５】
図面全体を通して同様の参照番号は対応する部分を指す。
【図面の簡単な説明】
【０００６】
【図１】幾つかの実施形態によるネットワークを示しているブロック線図である。
【図２】幾つかの実施形態によるセンチメントサーバを示しているブロック線図である。
【図３】幾つかの実施形態による、文書中に表現されているセンチメントを求めるための方法のフローチャートである。
【図４】幾つかの実施形態による、キーワードのリストを抽出するための方法のフローチャートである。
【図５】幾つかの実施形態による、カテゴリのリストを生成するための方法のフローチャートである。
【図６】幾つかの実施形態による、カテゴリのリストを生成するための別の方法のフローチャートである。
【図７】幾つかの実施形態による、文の少なくとも１つのキーワードに対応する少なくとも１つのカテゴリを求めるための別の方法のフローチャートである。
【図８】幾つかの実施形態による、カテゴリについてのカテゴリスペクトルを求めるための方法のフローチャートである。
【図９】幾つかの実施形態による、文書の集積体から複数の文書を選択するための方法のフローチャートである。
【図１０】幾つかの実施形態による機械のブロック線図である。
【発明を実施するための形態】
【０００７】
次に続く記述では、説明を目的とした実施形態を具現化している例示的なシステム、方法、技法、命令シーケンス、及び演算処理機械プログラム製品を含んでいる。以下の記述では、説明を目的として、発明主題の様々な実施形態を理解できるように数多くの特定の詳細事項が示されている。とはいえ、当業者には、発明主題の実施形態はこれらの特定の詳細事項なしに実践され得ることが明白であろう。概して、よく知られている命令インスタンス、プロトコル、構造、技法は詳細に示されていない。
【０００８】
ここに記載の実施形態は、文書中に表現されているセンチメントを求めるための技法を提供している。
【０００９】
図１は、幾つかの実施形態による、ネットワーク１２０を示しているブロック線図である。ネットワーク１２０は、概して、演算処理ノードを一体に連結することのできる何らかの型式の有線又は無線の通信チャネルを含むことができる。これには、限定するわけではないが、ローカルエリアネットワーク、ワイドエリアネットワーク、又はネットワークの組合せが含まれる。幾つかの実施形態では、ネットワーク１２０はインターネットを含んでいる。
【００１０】
幾つかの実施形態では、ネットワーク１２０にはサーバ１００が連結されている。サーバ１００は、文書１０２を含んでいる。文書１０２は、限定するわけではないが、ウェブ文書（例えば、ハイパーテキストマークアップ言語（ＨＴＭＬ）文書や拡張可能マークアップ言語（ＸＭＬ）文書など）、テキスト文書、スプレッドシート、プレゼンテーション、走査された文書（例えば、走査されたテキストなど）、画像、及び同種のものを含めた何れの型式の文書であってもよい。
【００１１】
幾つかの実施形態では、ネットワーク１２０にはアグリゲータ１０４が連結されている。アグリゲータ１０４は、文書１０６を含んでいる。幾つかの実施形態では、アグリゲータ１０４は、サーバ１００から少なくとも文書１０２のサブセットを入手する。例えば、アグリゲータ１０４は、サーバ１００をクロールし、サーバ１００から少なくとも文書１０２のサブセットを取り出す。
【００１２】
幾つかの実施形態では、ネットワーク１２０にはセンチメントサーバ１０８が連結されている。センチメントサーバ１０８は、ここに説明されている様に、文書中に表現されているセンチメントを求めるように構成されている。センチメントサーバ１０８によって使用される文書には、サーバ１００から（例えば、サーバ１００をクロールすることによって）入手された文書、アグリゲータ１０４から（例えば、アグリゲータ１０４から文書を購入することによって）入手された文書、又はそれらの組合せが含まれる。
【００１３】
図２は、幾つかの実施形態によるセンチメントサーバ１０８を示しているブロック線図である。センチメントサーバ１０８は、文書中に表現されているセンチメントを求めるように構成されているセンチメントモジュール２０２と、サーバ１００をクロールして少なくとも文書１０２のサブセットを入手するように構成されているクローリングモジュール２０４（随意）と、文書からキーワードを抽出するように構成されているキーワードモジュール２０６と、キーワードと文書をフィルタに掛けるように構成されているフィルタリングモジュール２０８と、文書、文、及び／又はキーワードを分類するように構成されている分類モジュール２１０と、を含んでいる。これらのモジュールの機能性は組み合わされていてもよいことに留意されたい。例えば、センチメントモジュール２０２は、キーワードモジュール２０６とフィルタリングモジュール２０８の機能性を含んでいてもよい。これらのモジュールについては、以下に図３−図９に関連付けて更に詳細に説明されている。
【００１４】
文書中に表現されているセンチメントを求める
図３は、幾つかの実施形態による、文書中に表現されているセンチメントを求めるための方法３００のフローチャートである。センチメントモジュール２０２は、複数の文書からの或る文書を受信する（３０２）。例えば、複数の文書には、少なくとも文書１０２のサブセット、少なくとも文書１０６のサブセット、又はそれらの組合せが含まれる。複数の文書を選択するプロセスについては、以下に図９に関連付けて更に詳細に説明されている。
【００１５】
センチメントモジュール２０２は、次に、文書の中で、少なくとも１つのセンチメントシグネチャをキーワードリストからの少なくとも１つのキーワードの所定距離内に含んでいる文を識別する（３０４）。少なくとも１つのセンチメントシグネチャは、文中の少なくとも１つのセンチメントの表現に対応している。幾つかの実施形態では、少なくとも１つのセンチメントシグネチャには、当該少なくとも１つのセンチメントの表現が文中に存在していることを指し示す少なくとも１つの単語（例えば形容詞）が含まれる。幾つかの実施形態では、センチメントシグネチャには極性が関連付けられている。例えば、極性は、センチメントシグネチャが肯定的センチメントを反映しているか、否定的センチメントを反映しているか、又は中立的センチメントを反映しているかを指し示す。
【００１６】
センチメントモジュール２０２は、文よりも大きい又は小さい分法的な単位を識別することもできることに着目されたい。例えば、センチメントモジュール２０２は、少なくとも１つのセンチメントシグネチャを少なくとも１つのキーワードの所定距離内に含んでいる段落又は句を識別していてもよい。
【００１７】
幾つかの実施形態では、キーワードのリストは、複数の文書から抽出され、相転移式を使用してフィルタにかけられる。これらの実施形態については、以下に図４に関連付けて更に詳細に説明されている。
【００１８】
幾つかの実施形態では、前記少なくとも１つのセンチメントシグネチャは、センチメントシグネチャのリストに含まれている。センチメントシグネチャのリストは、手作業で生成されていてもよい。
【００１９】
次いで、分類モジュール２１０が、文の少なくとも１つのキーワードに対応する少なくとも１つのカテゴリを求める（３０６）。幾つかの実施形態では、少なくとも１つのカテゴリは、製品、サービス、又はそれらの組合せと関連付けられている。文の少なくとも１つのキーワードに対応する少なくとも１つのカテゴリを求めるプロセスについては、以下に図７及び図８に関連付けて更に詳細に説明されている。幾つかの実施形態では、少なくとも１つのカテゴリは、キーワードのリストを使用して生成されているカテゴリのリストに含まれている。これらの実施形態については、以下に図５及び図６に関連付けて更に詳細に説明されている。
【００２０】
センチメントモジュール２０２は、その後、少なくとも１つのセンチメントシグネチャに基づいて、少なくとも１つのカテゴリに対応する少なくとも１つのセンチメントを求める（３０８）。幾つかの実施形態では、少なくとも１つのセンチメントは、少なくとも１つのカテゴリに関係のある意見の表現である。
【００２１】
図３に関連付けて記載されているプロセスを明快にするにあたり、「The the room was stinky and the carpets were dirty.（部屋  は  臭く  カーペット  は  汚かった）」という例示としての文を含んでいる文書の例を考察してみよう。「stinky（臭い）」及び「dirty（汚い）」という単語は否定的センチメント（例えば負の極性）を表現するセンチメントシグネチャであり、「room（部屋）」及び「carpets（カーペット）」という単語はキーワードであり、所定距離は３であると仮定する。センチメントモジュール２０２は、この例示としての文を、センチメントシグネチャ「stinky（臭い）」がキーワード「room（部屋）」から２単語離れており、センチメントシグネチャ「dirty（汚い）」がキーワード「carpets（カーペット）」から２単語離れていることを理由に識別する（３０４）。分類モジュール２１０は、次に、文のキーワードに対応するカテゴリを求める（３０６）。この例では、分類モジュール２１０は、「ホテル客室」が文のキーワードについてのカテゴリであると確定する。センチメントモジュール２０２は、すると、ホテル客室（例えばカテゴリ）に関して表現されているセンチメントは否定的センチメントであると判定する（３０８）。
【００２２】
キーワードのリストを抽出する
幾つかの実施形態では、文書の中で、少なくとも１つのセンチメントシグネチャをキーワードのリストからの少なくとも１つのキーワードの所定距離内に含んでいる文を識別する（３０４）段階に先立って、キーワードモジュール２０６が複数の文書からキーワードのリストを抽出する。図４は、幾つかの実施形態による、キーワードのリストを抽出するための方法４００のフローチャートである。
【００２３】
キーワードモジュール２０６は、複数の文書のそれぞれの文書からキーワードを抽出する（４０２）。
【００２４】
それぞれのキーワードについて、キーワードモジュール２０６は以下の動作を行う。キーワードモジュール２０６は、複数の文書中のキーワードの頻出度ｆと当該キーワードを含んでいる文書の数Ｎを計算する（４０４）。次に、キーワードモジュール２０６は、相転移式を使用して、複数の文書中のキーワードの頻出度と当該キーワードを含んでいる文書の数とに基づいて、キーワードの関連度を計算する（４０６）。幾つかの実施形態では、相転移式は、
2013525868.tif 000003
であり、ここにｘ≧１である。幾つかの実施形態では、ｘは３である。キーワードモジュール２０６は、次に、キーワードの関連度が所定の閾値を超えていたら、当該キーワードをキーワードのリストに加える（４０８）。
【００２５】
カテゴリのリストを生成する
幾つかの実施形態では、文の少なくとも１つのキーワードに対応する少なくとも１つのカテゴリを求める（３０６）段階に先立って、分類モジュール２１０がカテゴリのリストを生成する。
【００２６】
図５は、幾つかの実施形態による、カテゴリのリストを生成するための方法５００のフローチャートである。分類モジュール２１０は、複数の文書の中で、キーワードのリストからの少なくとも１つのキーワードを含んでいる文書の第１のセットを識別する（５０２）。次に、分類モジュール２１０は、文書の第１のセットの中の少なくとも所定の数の文書中に含まれているキーワードのセットを識別する（５０４）。分類モジュール２１０は、次いで、キーワードのセットを、カテゴリそれぞれが各々のキーワードセットを含んでいるカテゴリのリストに加える（５０６）。こうして、これらの実施形態では、分類モジュール２１０は、少なくとも所定の数の文書に出現しているキーワードを識別することによってカテゴリを求める。
【００２７】
図６は、幾つかの実施形態による、カテゴリのリストを生成するための方法６００のフローチャートである。分類モジュール２１０は、キーワードのリストの中で互いに関係のあるキーワードのペアであって、固有のキーワードペアである、キーワードのペアを求める（６０２）。次に、分類モジュール２１０は、キーワードのペアのセットであって、それぞれのセットはセットの中のキーワードのペア全てに共通する少なくとも１つのキーワードを含んでいる、キーワードのペアのセットを識別する（６０４）。所定の終結条件が達成されるまで、分類モジュール２１０は、キーワードのペアのセット同士を反復的に組み合わせてゆき、それぞれの組み合わされたセットには、当該組み合わされたセットの中のキーワードのペア全てに共通する少なくとも１つのキーワードが含まれている、その様に組み合わせてゆく（６０６）。こうして、これらの実施形態では、分類モジュール２１０は、互いに関係のあるキーワードのセットを求め、ペア同士（又はより大きなキーワードグループ同士）を反復的に組み合わせていってカテゴリを形成させる。例えば、分類エンジン２１０は、キーワードのリストから以下のキーワードのペア、即ち、｛パリ、ロマンス｝、｛パリ、恋の街｝、｛パリ、フランス｝、｛犬、ビーグル｝、｛猫、シャム｝を識別する。分類エンジン２１０は、次いで、「パリ」という単語が｛パリ、ロマンス｝、｛パリ、恋の街｝、｛パリ、フランス｝のペアに共通していることから、｛パリ、ロマンス、恋の街、フランス｝が関係のあるキーワードのセット（例えばカテゴリ）であると確定する。分類エンジン２１０は、｛パリ、ロマンス、恋の街｝が関係のあるキーワードのセットであると確定する場合もあることに留意されたい。特定のカテゴリと関連付けられているキーワードの数は、幾つかの要因によって異なり、その様な要因には、限定するわけではないが、所望の特定性の量（例えば、４つのキーワードを含んでいるカテゴリは、３つのキーワードを含んでいるカテゴリよりも特定性が高い）、特定のカテゴリと関連付けられている文書の数、及び特定のカテゴリと関連付けられている文の数などが含まれる。幾つかの実施形態では、所定の終結条件は、カテゴリについて所望されている特定性の高さによって決まる。カテゴリを記述するのに使用されているキーワードが多いほど、カテゴリは特定性がより高いということになる（例えば、｛パリ、ロマンス、恋の街、フランス｝は｛パリ、ロマンス、恋の街｝より特定性が高い）。
【００２８】
キーワードに対応するカテゴリを求める
キーワードに対応するカテゴリを求めるのに幾つかの技法が使用できる。
【００２９】
幾つかの実施形態では、分類モジュール２１０は、文の少なくとも１つのキーワードに対応する少なくとも１つのカテゴリを、サポートベクターマシンを使用して求める（３０６）。
【００３０】
幾つかの実施形態では、分類モジュール２１０は、文の少なくとも１つのキーワードに対応する少なくとも１つのカテゴリを、ニューラルネットワークを使用して求める（３０６）。
【００３１】
図７は、幾つかの実施形態による、或る文の少なくとも１つのキーワードに対応する少なくとも１つのカテゴリを求めるための方法７００のフローチャートである。分類モジュール２１０は、複数のカテゴリスペクトルであって、カテゴリスペクトルそれぞれが各々のカテゴリに対応しているキーワードリスト中のキーワードの出現頻度を含んでいる、カテゴリスペクトルを入手する（７０２）。
【００３２】
次に、分類モジュール２１０は、少なくとも１つのキーワードに基づいて、文についてカテゴリスペクトルを求める（７０４）。幾つかの実施形態では、分類モジュール２１０は、文のカテゴリスペクトルを正規化する。分類モジュール２１０は、次いで、文のカテゴリスペクトルと複数のカテゴリスペクトルの中のそれぞれのカテゴリスペクトルのドット積を計算する（７０６）。分類モジュール２１０は、次いで、少なくとも１つのカテゴリを、所定の閾値を超えている少なくとも１つのドット積に対応するカテゴリとして確定する（７０８）。カテゴリスペクトルは、｛単語ＩＤ，頻出度｝のペアによって表すことができ、単語ＩＤの値は固有キーワードに対応しており、頻出度は単語ＩＤに対応するキーワードの出現頻度に対応していることに着目されたい。例えば、キーワード「パリ」は８という単語ＩＤを有し、出現頻度は１００２であるとする。すると、カテゴリスペクトルは｛８，１００２｝というペアを含むことになる。更に、カテゴリスペクトルは、視覚的に表すこともできることに着目されたい。例えば、２Ｄプロット上で、ｘ軸を単語ＩＤ、そしてｙ軸を頻出度とすることもできる。更に、２つのカテゴリスペクトルのドット積は、それぞれの単語ＩＤについてのキーワードの出現頻度の積の総和であることに着目されたい（例えば、
2013525868.tif 000004
であり、ここにｉは単語ＩＤに対応しており、頻出度1iは第１のカテゴリについての単語ＩＤ「ｉ」に対応するキーワードの出現頻度であり、頻出度2iは第２のカテゴリについての単語ＩＤ「ｉ」に対応するキーワードの出現頻度である）。
【００３３】
幾つかの実施形態では、複数のカテゴリスペクトルを入手する段階に先立って、分類モジュール２１０は、それぞれのカテゴリについてカテゴリスペクトルを求める。図８は、幾つかの実施形態による、カテゴリについてカテゴリスペクトルを求めるための方法８００のフローチャートである。分類モジュール２１０は、カテゴリに対応する文書の集積体を入手する（８０２）。次に、分類モジュール２１０は、文書の集積体の中のそれぞれの文書からキーワードを抽出する（８０４）。分類モジュール２１０は、次いで、相転移式を使用してキーワードをフィルタに掛け、フィルタリング済みキーワードを導き出す（８０６）。次に、分類モジュール２１０は、文書の集積体中のフィルタリング済みキーワードの出現頻度を求める（８０８）。幾つかの実施形態では、それぞれのキーワードの出現頻度が、全てのカテゴリに亘る集積体全体の中で当該キーワードが見られた総カウント数で割られる。幾つかの実施形態では、次いで、得られたカテゴリスペクトルに閾値が適用される。これらの実施形態では、或るカテゴリ内のキーワードの総カウント数を全てのカテゴリに亘る総キーワードカウント数で割った振幅が所定の閾値よりも大きければ、当該振幅は式又はアルゴリズムによって新値へリセットされる。幾つかの実施形態では、次いで、得られたスペクトルに閾値が適用される。これらの実施形態では、或るカテゴリ内のキーワードカウント数を、キーワードが全てのカテゴリに亘って出現しているページの総ページカウント数で割った振幅が、所定の閾値よりも大きければ、当該振幅は式又はアルゴリズムによって新たな値へリセットされる。新しい値は、全てのカテゴリに亘って極めて共通に使用されている共通単語を排除するべくゼロに設定される。
【００３４】
次いで、分類モジュール２１０は、フィルタリング済みキーワードの出現頻度を正規化して、カテゴリについてのカテゴリスペクトルを導き出す（８１０）。幾つかの実施形態では、カテゴリスペクトルは、カテゴリスペクトルそれぞれのスペクトル下面積が同じになるように正規化される。そうすることで、カテゴリ間の比較バイアスが小さくなる。
【００３５】
文書を選択する
文書１０２及び／又は文書１０６は、ほとんど或いは全く価値を持たない文書を含んでいるかもしれない。例えば、文書１０２及び／又は文書１０６は、検索エンジンの順位付けを増強するために機械によって生成された文書を含んでいるかもれしない。機械によって生成される文書は、典型的に、センチメントの表現を含んでいない。これらの形式の文書は、大抵、フィルタに掛けて除外するのが望ましい。よって、幾つかの実施形態では、複数の文書からの文書を受信する段階に先立って、フィルタリングモジュール２０８が、文書の集積体から複数の文書を選択する。図９は、幾つかの実施形態による、文書の集積体から複数の文書を選択するための方法９００のフローチャートである。文書の集積体の中のそれぞれの文書について、フィルタリングモジュール２０８は、以下の動作を行う。フィルタリングモジュール２０８は、文書からｎ−グラムを抽出する（９０２）。次に、フィルタリングモジュール２０８は、当該文書について、抽出されたｎ−グラムに基づいて、ｎ−グラムの出現頻度をｎ−グラムのサイズの関数として示すｎ−グラムスペクトルを求める（９０４）。フィルタリングモジュール２０８は、次いで、文書のｎ−グラムスペクトルが、所定の方程式によって定義されている基準ｎ−グラムスペクトルに、所定の閾値内で整合しているがどうかを判定する（９０６）。幾つかの実施形態では、所定の方程式は、
2013525868.tif 000005
であり、ここに、ｘはｎ−グラムのサイズであり、ａ、ｂ、及びｃは、所定の方程式のピークがサイズ２のｎ−グラムとサイズ３のｎ−グラムの間となる所定の値である。幾つかの実施形態では、ｂの値は１と２の間であり、ｃの値は１と２の間である。フィルタリングモジュール２０８は、文書のｎ−グラムスペクトルが基準ｎ−グラムスペクトルに所定の閾値内で整合している場合は、当該文書を前記複数の文書に加える（９０８）。フィルタリングモジュール２０８は、文書のｎ−グラムスペクトルが基準ｎ−グラムスペクトルに所定の閾値内で整合していない場合は、当該文書を捨てる（９１０）。
【００３６】
例示としてのコンピュータシステム
図１０は、一例としてコンピュータシステム１０００の形態をしている機械であって、その内部では、ここに論じられている方法論の何れか１つ又はそれ以上を機械に遂行させるための命令のセットが実行される機械のブロック線図を描いている。代わりの実施形態では、機械は、独立デバイスとして作動していたり、或いは他の機械に接続（ネットワーク化）されていることもある。或るネットワーク化された配備では、機械は，サーバ−クライアントネットワーク環境でサーバ機又はクライアント機の資格で作動していることもあろうし、ピア・ツー・ピア（又は分散型）ネットワーク環境でピア機として作動していることもあろう。
【００３７】
機械は、当該機械に取らせるアクションを特定している命令のセット（順次的又はそれ以外）を実行することができる。更に、たった１つの機械しか示されていないが、「機械」という用語は、個別に或いは合同で、ここに論じられている方法論の何れか１つ又はそれ以上を遂行するべく命令の（単数又は複数の）セットを実行する、機械の何らかの集合体む含むものと解釈されたい。
【００３８】
本例のコンピュータシステム１０００は、バス１００８を介して互いに通信しているプロセッサ１００２（例えば、中央演算処理ユニット（ＣＰＵ）、グラフィック処理ユニット（ＧＰＵ）、又は両方）とメモリ１００４を含んでいる。メモリ１００４には、揮発性メモリデバイス（例えば、ＤＲＡＭ、ＳＲＡＭ、ＤＤＲ  ＲＡＭ、又は他の揮発性ソリッドステートメモリデバイス）、不揮発性メモリデバイス（例えば、磁気ディスクメモリデバイス、光ディスクメモリデバイス、フラッシュメモリデバイス、テープドライブ、又は他の不揮発性ソリッドステートメモリデバイス）、又はそれらの組合せが含まれる。メモリ１００４は、随意的に、コンピュータシステム１０００から遠隔に置かれている１つ又はそれ以上の記憶デバイスを含んでいてもよい。コンピュータシステム１０００は、更に、映像表示ユニット１００６（例えば、プラズマディスプレイ、液晶ディスプレイ（ＬＣＤ）、又はブラウン管（ＣＲＴ）を含むことができる。コンピュータシステム１０００は、更に、入力デバイス１０１０（例えば、キーボード、マウス、トラックボール、タッチスクリーンディスプレイなど）、出力デバイス１０１２（例えばスピーカ）、及びネットワークインターフェースデバイス１０１６を含むことができる。コンピュータシステム１０００の上述の構成要素は、単体のハウジング又はケース（図１０に点線で描かれている）内に置かれていてもよい。代わりに、構成要素のサブセットが、ハウジングの外部に置かれていてもよい。例えば、映像表示ユニット１００６と入力デバイス１０１０と出力デバイス１０１２はハウジングの外部に存在していて、ハウジングの外側のアクセスできる外部ポート又はコネクタを介してバス１００８に連結されていてもよい。
【００３９】
メモリ１００４は、ここに記載されている方法論又は機能の何れか１つ又はそれ以上を具現化するか又は当該方法論又は機能の何れか１つ又はそれ以上によって利用されるデータ構造及び命令１０２２（例えばソフトウェア）の１つ又はそれ以上のセットを記憶させておく機械可読媒体１０２０を含んでいる。データ構造の１つ又はそれ以上のセットはデータを記憶している。機械可読媒体とは、機械によって読み出しできる記憶媒体（例えばコンピュータ可読記憶媒体）を指すことに留意されたい。データ構造及び命令１０２２は、更に、全部が又は少なくとも一部が、メモリ１００４内及び／又はコンピュータシステム１０００によって実行中のプロセッサ１００２内に在ってもよく、メモリ１００４とプロセッサ１００２もまた機械可読有形媒体の構成要素である。
【００４０】
データ構造及び命令１０２２は、更に、ネットワーク１２０経由で、ネットワークインターフェース１０１６を介し、多数のよく知られている転送プロトコル（例えばハイパーテキスト転送プロトコル（ＨＴＴＰ））を利用して送受信されていてもよい。ネットワーク１２０は、概して、演算処理ノード（例えばコンピュータシステム１０００）を一体に連結することのできる何らかの型式の有線又は無線の通信チャネルを含むことができる。これには、限定するわけではないが、ローカルエリアネットワーク、ワイドエリアネットワーク、又はネットワークの組合せが含まれる。幾つかの実施形態では、ネットワーク１２０はインターネットを含んでいる。
【００４１】
特定の実施形態は、ここでは、論理又は多数の構成要素、モジュール、又は機構を含んでいるものとして説明されている。モジュールは、ソフトウェアモジュール（例えば、機械可読媒体上に又は送信信号中に具現化されているコード及び／又は命令）又はハードウェアモジュールのどちらを構成している場合もある。ハードウェアジュールは、特定の動作を遂行することのできる有形ユニットであり、特定の方式に構成又は配列させることができる。例示としての実施形態では、１つ又はそれ以上のコンピュータシステム（例えばコンピュータシステム１０００）又はコンピュータシステムの１つ又はそれ以上のハードウェアモジュール（例えばプロセッサ１００２又はプロセッサのグループ）は、ソフトウェア（例えばアプリケーション又はアプリケーション部分）によって、ここに記載されている特定の動作を遂行するように作動するハードウェアモジュールとして構成されている。
【００４２】
様々な実施形態では、ハードウェアモジュールは、機械的又は電子的に実装することができる。例えば、ハードウェアモジュールは、特定の動作を遂行するように永続的に（例えば、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）や特定用途向け集積回路（ＡＳＩＣ）の様な特殊目的プロセッサとして）構成されている専用の回路構成又は論理を備えていてもよい。ハードウェアモジュールは、更に、特定の動作を遂行するようにソフトウェアによって暫定的に構成されているプログラム可能な論理又は回路構成（例えば、汎用プロセッサ１００２又は他のプログラム可能なプロセッサ内に包含されているもの）を備えていてもよい。ハードウェアモジュールを、機械的に、専用且つ永続的な構成の回路構成に実装するか又は暫定的な構成の回路構成（例えばソフトウェアによって構成）に実装するかの決断は、費用及び時間的な考慮事項によって主導されることになるのが理解されるであろう。
【００４３】
従って、「ハードウェア」と言う用語は、有形のエンティティであって、物理的に構築されていて、或る特定の方式に作動するように及び／又はここに記載の特定の動作を遂行するように永続的に構成されている（例えば配線接続されている）又は暫定的に構成されている（例えばプログラムされている）エンティティを網羅するものであると理解されたい。ハードウェアモジュールが暫定的に構成されている（例えばプログラムされている）実施形態を考察してみるが、そこでは、ハードウェアのそれぞれは、どの時々にも構成されなくてはならない或いはインスタンス生成されなくてはならないというわけではない。例えば、ハードウェアモジュールが、ソフトウェアを使用して構成されている汎用プロセッサ１００２を備えている場合、汎用プロセッサ１００２は、異なった時期に各々異なったハードウェアモジュールとして構成されていてもよい。従ってソフトウェアは、プロセッサ１００２を、例えば、或る時には特定のハードウェアモジュールを成すように、そして異なった時には異なったハードウェアモジュールを成すように、構成することができる。
【００４４】
モジュールは、他のモジュールに情報を提供したり他のモジュールから情報を受信したりすることができる。例えば、記載されているモジュールは、通信可能に連結されているものと見なすことができるであろう。その様なハードウェアモジュールが複数同時に存在している場合、通信は、モジュール同士をつなぐ信号送信（例えば、適切な回路又はバスを経由）を通して実現させることができるであろう。複数のモジュールが異なった時期に構成又はインスタンス生成されている実施形態では、その様なモジュール間の通信は、それら複数のモジュールがアクセスできるメモリ構造に情報を記憶させたりメモリ構造から情報を取り出したりすることを通して実現させることができるであろう。例えば、１つのモジュールが或る動作を遂行し、当該動作の出力を、同モジュールが通信可能に連結されているメモリデバイスに記憶させる。すると、別のモジュールは、後刻、メモリデバイスにアクセスし、記憶されている出力を取り出し処理する。モジュールは、更に、入力デバイス又は出力デバイスとの通信を始動することもあるであろうし、リソース（例えば情報の集合体）に関して作動することもできる。
【００４５】
ここに説明されている一例としての方法の各種動作は、少なくとも部分的には、関連の動作を遂行するように暫定的に（例えば、機械可読媒体に記憶されているソフトウェア、コード、及び／又は命令によって）構成されているか又は永続的に構成されている１つ又はそれ以上のプロセッサ１００２によって遂行させることができる。その様なプロセッサ１００２は、暫定的に構成されているか永続的に構成されているかを問わず、１つ又はそれ以上の動作又は機能を遂行するように作動するプロセッサ実装型（コンピュータ実装型）モジュールを成していてもよい。ここで言及されているモジュールは、幾つかの一例としての実施形態では、プロセッサ実装型（又はコンピュータ実装型）モジュールを備えている。
【００４６】
また、ここに説明されている方法は、少なくとも部分的には、プロセッサ実装型（又はコンピュータ実装型）及び／又はプロセッサ実行可能（又はコンピュータ実行可能）とすることができる。例えば、方法の動作のうち少なくとも幾つかは、１つ又はそれ以上のプロセッサ１００２又はプロセッサ実装型（又はコンピュータ実装型）モジュールによって遂行されていてもよい。同様に、方法の動作のうち少なくとも幾つかは、コンピュータ可読記憶媒体に記憶されていて、１つ又はそれ以上のプロセッサ１００２又はプロセッサ実装型（コンピュータ実装型）モジュールに実行させる、命令によって統制されていてもよい。動作のうちの或る種の動作の遂行は、１つ又はそれ以上のプロセッサ１００２に亘って分散されており、単一の機械内に存在させるだけではなく、多数の機械に跨って配備させることもできる。幾つかの一例としての実施形態では、プロセッサ１００２は、（例えば、自宅環境内、会社環境内、又はサーバファームとしての）単一の場所に置かれており、他の実施形態では、プロセッサ１００２は、多数の場所に跨って分散されている。
【００４７】
（単数又は複数の）実施形態は様々な実装及び活用に関連付けて説明されているが、これらの実施形態は説明を目的とするものであり、当該（単数又は複数の）実施形態の範囲は前記実装及び活用に限定されない。概して、ここに記載の実施形態は、ここに定義されている何れかの（単数又は複数の）ハードウェアシステムと矛盾しない設備で実装することができるであろう。多くの変型、修正、追加、及び改良が実施可能であろう。
【００４８】
ここでは単一のインスタンスとして説明されている構成要素、動作、及び／又は構造には、複数のインスタンスが提供されていてもよい。最後に、各種構成要素、動作、及びデータ記憶の間の境界線はどちらかというと自由裁量的であり、特定の動作は特定の例示的構成に照らして示されている。他の機能性割り付けも想定され、それらも（単数又は複数の）実施形態の範囲に入ることであろう。概して、例示としての構成では別々の構成要素として提示されている構造及び機能性は、合体型の構造又は構成要素として実装することができる。同様に、単体構成要素として提示されている構造及び機能性は、別々の構成要素として実装することができる。これら及び他の変型、修正、追加、及び改良は、（単数又は複数の）実施形態の範囲内に入る。
【００４９】
例示としての実施形態
以下の論考は、文書中に表現されているセンチメントを求めるための非限定的な例示としての実施形態を含んでいる。
【００５０】
Ａ．シード単語の初期リスト（シード単語リスト）が、関連集積体テキストを識別するのを支援するべく形成される。特定の主題にとってのシードキーワードのリストは、限定するわけではないが主題用語集を含めた原典及び主題事項の専門家から入手される。
【００５１】
Ｂ．集積体の中の文書からの原文テキストが入手される。例えば、集積体は、ウェブサイト（例えば、ブログやレビューウェブサイトなど）からの文書を含んでいるかもしれない。それぞれの文書中の単語がシード単語リストと比較される。文書中の単語で、シード単語リストの成員と一致している単語の数及び／又は比率が所定の閾値に合致するか又は超えていれば、当該文書は合格文書リストに加えられる。そうでなければ、文書は捨てられる。
【００５２】
Ｃ．初期シード単語リストは、シード単語リストからの単語を、合格文書リスト中の文書からのキーワードとＮ−グラムを（例えば、標準的なキーワード抽出及びＮ−グラム抽出ツールを使用して）抽出することによって得られる単語のリストと組み合わせることで拡張される。キーワードとＮ−グラムは、シード単語リストの結果を組み合わせる前に、以下に説明されている選択された文書のノード構造を計算するプロセスを用いて更に精錬される。
【００５３】
Ｄ．文書のノード構造は、キーワードとＮ−グラムの初期セットを向上させるために作成される。このプロセスは、マルチフラクタルデータ構造を作成するために、単語(例えばテキストフォーマット)から情報を抽出することを伴う。マルチフラクタルデータ構造は、スケール内スケールを呈するデータ構造の１つである。１つのスケールでのパターンは、別のスケールで見られるパターンとは僅かに異なっている。一旦、データが抽出され、そのマルチフラクタル構造が求められたら、データ構造をメモリに記憶させ、コンピュータがアクセスしてデータ構造を用いて演算を遂行することができるようにしておく。このデータ構造は、情報の自然な構造を表しており、関連の情報を効率良く識別するのに有用である。データ構造は、以下の様にアセンブルされる。
【００５４】
１．ｋ個のシードカテゴリ名の単語のリスト（シード単語リスト）を作る。
２．ｋ個のカテゴリ名単語のそれぞれをクローラに入れて、ｋ個のカテゴリ名単語のそれぞれからＮ（ｋ）個のウェブページを取り出す。
３．Ｎ（ｋ）個のページのそれぞれを採り、固有単語のリストを作り、それら単語がそれぞれのページに出現した回数を数える。ストップワード（stop words：不要語）（例えば、「the（その）」、「his（彼の）」、「and（及び）」など）は、この段階で取り除かれる。更に、単語の数を、名詞及び隣接の形容詞までに減らす。
４．Ｎ（ｋ）個のページのそれぞれからＭ（例えば１０）個の最頻出単語を採り、第１ページの最頻出単語に索引（例えば、１，２，３，４，５，６，７，８，９，及び１０）を割り当て、第２ページの最頻出単語に索引（例えば、１１，１３，．．．，２１）を割り当て、以下同様に、第１のカテゴリからのＮ（１）個のページが尽きるまで索引を割り当ててゆく。一連なりの語は、単一索引（主題グループと呼称）で識別させることができる。第２のカテゴリ名のＮ（２）個のページについて繰り返し、全ｋ個のカテゴリが尽きるまで継続する。
５．全ｋ個についてのＮ（ｋ）個のページのそれぞれのＭの総和を計算し、当該値をＮ単語と命名する。
６．横軸ｘと縦軸ｙのグラフを作る。
７．ゼロで埋めたＮ単語×Ｎ単語の行列を作成し、これをＷと呼ぶ。
８．第１ウェブページからの単語データを採り、単語リンク係数を、以下の方法を使用して計算する。
ａ．リストに挙げられた最頻出単語のそれぞれについて、単語リンクと呼ばれる固有ペア（ｘ，ｙ）を作成し、ここに、ｘはｙとは同単語ではない。
ｂ．単語リンクをページリンク係数と組み合わせ、その結果、高い単語リンクとページリンクの係数のものは低い単語リンクとページリンクの係数のものよりも選択スコアが高くなる。ページリンク係数は、ウェブページへ入って来るページリンクのリンク構造及びコンテンツの分析に根ざしている。この選択スコアは、データからタグを拾うのに使用される値である。ページリンク係数が利用不可である場合、１．０の様なデフォルト値に設定されるものとする。
９．演算処理目的で、以下を行う。
ａ．単語リンク係数の単語係数を、行列Ｗの第ｘ列と第ｙ行の（ｘ，ｙ）＝（１，３），（１，４），．．．，（１，Ｍ＋１）に記憶する。ｘとｙは、以上に定義されているリストからの単語索引である。
ｂ．（ｘ，ｙ）＝（２，３），．．．，（２，Ｍ＋１）についてプロセスを繰り返し、最終的に、（Ｍ）番目及び（Ｍ＋１）番目の単語即ち（ｘ，ｙ）＝（Ｍ，Ｍ＋１）についてプロセスを行う。ページの第２のカテゴリについては、第１の係数エントリは、（ｘ，ｙ）＝（Ｍ＋２，Ｍ＋３）である。係数エントリのそれぞれは、文書からの２つの単語で互いと一体であるところを見つけられるか又は互いと関連付けられている２つの単語の結合性を表している。
ｃ．主題全てのページ全てについて９ｂの段階を繰り返すが、但し、以下の状況は例外とする。
ｉ．現在の単語を先のｘ単語索引中に見つけることができる場合はいつでも、係数は全て先の索引中に見つけられる係数と、大係数の組合せが小係数の組合せより大きくなる傾向を示すようなやり方で組み合わされる。例えば、単語「犬」は、単語索引４に対応し、それに附随してＷ１の単語係数（４，８）を有しており、そして単語「犬」は、別のページにも同様に出現していて、索引２５を持ち、Ｗ２の単語係数（２５，８）を持っている場合、索引２５の結合性係数は全て、対応するｙの索引それぞれについて索引４のｘ値へ組み加えられる。この事例では、Ｗ（４，８）はＷ（２５，８）と組み合わされることになり、結果は新たなＷ（４，８）に割り当てられる。係数の移入と組み合わせが完了した後、Ｗ（２５，８）は０．０の様な小さい値に設定される。この規則は、「犬」のインスタンスで１番目のインスタンス以後に起こった他の全てのインスタンスに適用される。
ii．ｙ単語索引上に見つけられる重複単語は、ｘ単語索引について行われたのと同じか又は同様のやり方で、元のｙ単語索引へ組み入れてゆけばよい。それらが組み合わされないと、主題の関数としてそれぞれの単語の影響が見られることとなり、というのも、それぞれの主題はｙ索引の一定範囲内に在るからである。
１０．各々の単語リンク係数から単語順位付けスコアを計算することによって、最多最高単語リンク係数を有する単語が最少で低い単語リンク係数の単語よりも順位が高くなるようなやり方で、単語を順位付ける。
ａ．Ｒ（ｉ）を所与の単語ノードの順位付けであるとしよう。
ｂ．Ｗ（ｉ，ｊ）を単語同士の結合性係数であるとしよう。
ｃ．次の様に計算し、即ち、それぞれのｉについて、Ｒ（ｉ）＝Ｒ（Ｗ（ｉ，ｊ））であり、順位付けは、それぞれのｊに対する単語リンク重み（既にページ順位付け重みが含まれている）の関数である。
ｄ．タグ及びグループについて、より大きい重みを有する単語を選択する。
１１．データをグラフィック様式で視覚的に分析する場合は、以下を行う。
ａ．単語及びページリンク係数に基づくスコアに比例させたドットを、（ｘ，ｙ）＝（１，３），（１，４），．．．，（１，Ｍ＋１）座標上に置く。同じことを、（ｘ，ｙ）＝（２，３），．．．，（２，Ｍ＋１）について、そして最終的に、Ｍ番目及び（Ｍ＋１）番目の単語、（ｘ，ｙ）＝（Ｍ，Ｍ＋１）について行う。ページの第２のカテゴリについて、第１のドットは、（ｘ，ｙ）＝（Ｍ＋２，Ｍ＋３）ということになる。ドットそれぞれは、文書からの２つの単語で互いと一体であるところを見つけられるか又は互いと関連付けられている２つの単語の結合性を表している。ｘ軸とｙ軸は、以上に定義されているリストからの単語索引である。
ｂ．全ての主題の文書全てについて１１ａの項を繰り返すが、但し、以下の状況は例外とする。
ｉ．現在の単語を先のｘ単語索引中に見つけることができる場合はいつでも、ドットは全て先の索引に記録される。例えば、単語「犬」は、たまたま単語索引４となっていて、同様に索引２５でも出現していた場合、索引２５の結合性ドットは全て、索引４のｘ値へ移される。ドットは、移された後、グラフ上の元の位置から削除される。この規則は、「犬」のインスタンスで１番目のインスタンス以後に起こった他の全てのインスタンスに適用される。
ii．ｙ単語索引上に見つけられる重複単語は、ｘ単語索引について行われたのと同じか又は同様のやり方で、元のｙ単語索引へ組み入れてゆけばよい。それらが組み合わされないと、主題の関数としてそれぞれの単語の影響が見られることとなり、というのも、それぞれの主題はｙ索引の一定範囲内に在るからである。
ｃ．グラフ上の縦の縞を調べ、最も優勢な縞が、タグ単語又は主題グループとして選択される単語のＷ１索引に相当する。最も多くのリンク又はドットを有しているＷ１単語が、タグ単語又は主題グループとして選択されることになる。リストを更に絞るために、これらの単語に追加のフィルタリングを適用することができる。
【００５５】
Ｅ．「タグ単語」又は「主題グループ」は、シード単語リストと組み合わされて、実働単語リストが作成される。
【００５６】
Ｆ．実働単語リストは、他の文書を入手し（例えば、クローリングを介す、アリゲータから文書を入手する、など）、以上のＣ及びＤの段階により、追加文書の所定の数（追加リスト拡張数）に、より多くの文書を入手することによって補強される。
【００５７】
Ｇ．収穫されたＮ−グラムの成長速度が満足のいく速度に落ちてくるまで、Ｆ段階が繰り返される。
【００５８】
Ｈ．センチメント分析エンジンのために、主題に関するトピック、形容詞、及び固有名詞のリストが作成される。例えば、主題が「ホテル」である場合、トピック／キーワードには、コンシェルジュ、浴室、ベッド、寝室、フロントデスク、テレビ、ルームサービス、メイドサービス、清潔さ、エレベーター、レストラン、予約、及びチェックアウトが含まれることであろう。形容詞には、きびきびした、感じのよい、だらだらした、無礼な、清潔な、汚い、親切な、印象的な、ひどい、すてきな、困惑させる、不行き届きな、不潔な、不親切な、が含まれることであろう。固有名詞には、マリオット、ハイアット、フォーシーズンズ、モーテル６、インターコンチネンタル、クオリティイン、ハワードジョンソンなど、が含まれることであろう。
【００５９】
Ｉ．キーワードと形容詞の両方を含んでいる文が、今後の分析のために識別される。
【００６０】
Ｊ．キーワードと形容詞のグループと関心事である主題（例えば、ホテルチェーンの名称）とが、当該キーワード及び形容詞のグループの前後に固有名を探すことによって、相関付けられる。固有名詞とキーワード／形容詞のグループは、今後の分析及び提示のために保存される。
【００６１】
Ｋ．レビューサイトの場合、日付が入手され、サイトは周期的に再訪される。期間は、ブログ及び／又はレビューのエントリの日付を識別し、ブログのエントリから次のエントリまでの時間周期を計算し、ブログエントリの時間周期に基づいてレビューサイトをどれぐらいの頻度で再訪するかを決めることによって、確定することができる。不変時間周期（例えば、最小時間周期や平均時間周期の３分の１など）が選定されてもよい。代わりに、所定の要因（例えば季節など）に依存する可変時間周期が選定されてもよい。例えば、ホテルの事例では、当方において７月４日の様な休日周辺では、より多くのエントリが投稿され、従って、クローリングから次のクローリングまでの期間はこの時期周辺では短くなるであろう。可変期間は、地元の催事（例えばインディアナポリス５００マイルレース）に基づいて選定されることもあろう。例えば、ホテルの事例では、インディアナポリス５００マイルレースに供出されるホテルについてのクローリングからクローリングまでの期間は、当該催事時期周辺では下がるであろう。サンプリング時間周期が確定されたら、サイトは次のテキストについてクロールされる。
【００６２】
Ｌ．それぞれのウェブサイトからのカテゴリ別に、時間依存性が作られてもよい。
【００６３】
Ｍ．或る主題について、カテゴリのリストが入手される。シードカテゴリのリストは、主題ウェブサイト上のヘッドラインを見ることによって入手される。他の主題ウェブサイトでの単語の頻出度が識別される。
【００６４】
Ｎ．レビューサイトの重要度は以下の様に求められる。
ａ．レビューサイトの入って来るリンクと出てゆくリンクが分析される。
ｉ．リンク先のサイトの正当性がチェックされ、それらがＳＰＡＭリンクでないことが確かめられる。
ii．リンク先サイトでの単語の語彙分布が分析される。
iii．リンク先サイトについての語彙スペクトルが基準語彙スペクトルの所定閾値内になければ、当該リンクは捨てられる。
ｂ．所与の主題について競合するサイトでの、ブログエントリ又はサイトに対するコメント／評価の更新頻度対タイムスタンプデルタが識別される。
ｉ．タイムスタンプデルタが短ければ、コニュニティーの大勢の人々が定期で当該特定のウェブサイトを活発に読んだり更新したりしていることを意味する。正当なコメントが最も素早く寄せられるサイトが、コミュニティー内で最も重要度の高いサイトであると見なされる。
【００６５】
Ｏ．コミュニティー成員からの提案は以下の様に識別される。
ａ．推奨を識別するパターンのリストが作成される。例えば、パターンには、「お勧めです」、「改善の余地あり」、「友達みんなに教える」など、が含まれるであろう。
ｂ．これらの文中の主題キーワード又はＮ−グラムが識別される。
ｃ．キーワードパターンが見つけられたら、これらの文は、それぞれの主題事項についての提案として提示用に保存される。
【００６６】
Ｐ．移動式デバイス用のユーザーインターフェース。
ａ．各種製品及びサービス、例えばホテルサービス、の消費者センチメント評価を見るためのユーザーインターフェースの設計は、閲覧、データエントリ、及び採点の検索が、使用し易くなるようにフォーマットされなくてはならない。Ｘ−Ｙ図の形式をしている各種パラメータ対時間のグラフ、又はパレート図の形式をしている順位付けされた問題は、スマートフォンの画面内に納まる必要がある。様々なデータを閲覧するための横及び縦方向のスクローリングは、画面上で指をスワイプすることによるか、ミニトラックボールや親指ジョイスティックにより、又はユーザーキーをトグル切替することにより、操作できるようにすればよい。データは、センチメントを露わにしているブログからのソース記述を含んでいるリスト断片、時間依存プロット、及び／又はパレート図とすることができる。
【００６７】
以上の記述は、説明上、特定の実施形態に関連付けて記載されている。しかしながら、説明を目的とした以上の論考は、網羅的であろうとするものでも、また実施形態を開示されている厳密な形態に限定しようとするものでもない。多くの修正又は変型が上記の教示に照らし実施可能である。実施形態は、原理及びその実践的適用を最も分かり易く説明し、それにより、当業者がそれら実施形態及び企図される特定の利用に相応に各種修正を施した様々な実施形態を最適に活用することができるように、選定され記載されている。
【符号の説明】
【００６８】
１００  サーバ
１０２  サーバに含まれている文書
１０４  アグリゲータ
１０６  アグリゲータに含まれている文書
１０８  センチメントサーバ
１２０  ネットワーク
２０２  センチメントモジュール
２０４  クローリングモジュール
２０６  キーワードモジュール
２０８  フィルタリングモジュール
２１０  分類モジュール、分類エンジン
１０００  コンピュータシステム
１００２  プロセッサ
１００４  メモリ
１００６  映像表示ユニット
１００８  バス
１０１０  入力デバイス
１０１２  出力デバイス
１０１６  ネットワークインターフェースデバイス
１０２０  機械可読媒体
１０２２  データ構造及び命令
【図１】
2013525868.tif 000009
【図２】
2013525868.tif 000010
【図３】
2013525868.tif 000011
【図４】
2013525868.tif 000012
【図５】
2013525868.tif 000013
【図６】
2013525868.tif 000014
【図７】
2013525868.tif 000015
【図８】
2013525868.tif 000016
【図９】
2013525868.tif 000017
【図１０】
2013525868.tif 000018
【国際調査報告】
2013525868.tif 000019