(57)【特許請求の範囲】
【請求項１】
第１のコンピュータが、
有体媒体に記憶された文書にアクセスする段階と、
前記文書に対する一組の目標タグを受け取る段階と、
類似性に応じて複数のタームを選択する段階であって、前記複数のタームの各々は、前記目標タグとの類似性が高く、前記複数のタームに含まれる他のタームとの類似性が低く、前記複数のタームを選択することにより前記文書のオントロジー空間を減縮し、前記類似性は、有向類似性、及び差分類似性よりなるグループから選択した１つ以上の類似性を含む、段階と、
前記タームをタグとして推奨する第２のコンピュータに前記タームを送る段階とを含む方法。
【請求項２】
前記第１のコンピュータが、
前記推奨されたタームのうちの１つ以上のタームの選択を受け取る段階と、
前記選択された１つ以上のタームを前記目標タグの集合に追加する段階と、
前記目標タグの集合により次の複数のタームを選択する段階とをさらに含む、請求項１に記載の方法。
【請求項３】
前記第１のコンピュータが、
前記推奨されたタームのうちの１つ以上のタームの選択を受け取る段階と、
前記選択された１つ以上のタームとの類似度が高い次の複数のタームを選択する段階とをさらに含む、請求項１に記載の方法。
【請求項４】
前記第１のコンピュータが、
前記推奨されたタームのうちの１つ以上のタームの選択を受け取る段階と、
拒絶された１つ以上のタームを特定する段階と、
前記拒絶された１つ以上のタームとの類似度が低い次の複数のタームを選択する段階とをさらに含む、請求項１に記載の方法。
【請求項５】
前記文書に対する一組の目標タグを受け取る段階は、
前記第１のコンピュータが、
ユーザ入力とコンピュータ分析とよりなるグループから選択されたソースから前記目標タグの集合の一目標タグを受け取る段階と、
前記目標タグの前記ソースを記録する段階とをさらに含む、
請求項１に記載の方法。
【請求項６】
前記第１のコンピュータが、
前記目標タグの集合の各目標タグのソースを決定する段階と、
目標タグと関連する複数の検索結果を検索する段階と、
前記目標タグのソースに応じて前記検索結果をランク付けする段階とをさらに含む、
請求項１に記載の方法。
【請求項７】
実行したとき、
有体媒体に記憶された文書にアクセスする段階と、
前記文書に対する一組の目標タグを受け取る段階と、
類似性に応じて複数のタームを選択する段階であって、前記複数のタームの各々は、前記目標タグとの類似性が高く、前記複数のタームに含まれる他のタームとの類似性が低く、前記複数のタームを選択することにより前記文書のオントロジー空間を減縮し、前記類似性は、有向類似性、及び差分類似性よりなるグループから選択した１つ以上の類似性を含む、段階と、
前記タームをタグとして推奨するコンピュータに前記タームを送る段階と
を実行するソフトウェアを記録したコンピュータ読み取り可能記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は辞書分析に関し、より具体的にはオントロジー空間を規定するタームの推奨に関する。
【背景技術】
【０００２】
データのコーパス（corpus）は大量の情報を保持し、関連する情報を見つけるのは困難である。文書にはタグを付けて関連情報の検索を容易にすることができる。しかし、場合によっては、今までの文書タグ付け方法は情報を見つける際に効果的でないことがある。同様に、今までの検索方法は関連情報を見つける際に効果的でないことがある。
［関連出願］
本願は、デイビッド・マービットらにより２００７年１０月５日に出願された米国仮出願第６０／９７７，９３４号、発明の名称「改善されたタグ付け方法」、代理人管理番号第０７３３３８．０５５４号の米国特許法第１１９条（ｅ）項の利益を主張するものである。
【発明の開示】
【課題を解決するための手段】
【０００３】
一実施形態による方法は、有体媒体に記憶された文書にアクセスする段階と、前記文書に対する一組の目標タグを受け取る段階と、複数のタームを選択する段階であって、前記文書のオントロジー空間を減縮するようにタームを選択する段階と、前記タームをタグとして推奨するコンピュータに前記タームを送る段階とを含む。
【０００４】
他の実施形態によるコンピュータ読み取り可能有体媒体は、実行したとき、有体媒体に記憶された文書にアクセスする段階と、前記文書に対する一組の目標タグを受け取る段階と、複数のタームを選択する段階であって、前記文書のオントロジー空間を減縮するようにタームを選択する段階と、前記タームをタグとして推奨するコンピュータに前記タームを送る段階とを実行するソフトウェアをエンコードしたものである。
【０００５】
また、他の実施形態による方法は、検索のための一組の目標検索タームを受け取る段階と、複数の候補タームを選択する段階であって、前記検索のオントロジー空間を減縮するように候補タームを選択する段階と、前記候補タームを検索タームとして推奨するコンピュータに前記候補タームを送る段階とを含む。
【０００６】
さらに他の実施形態によるコンピュータ読み取り可能有体媒体は、実行したとき、検索のための一組の目標検索タームを受け取る段階と、複数の候補タームを選択する段階であって、前記検索のオントロジー空間を減縮するように候補タームを選択する段階と、前記候補タームを検索タームとして推奨するコンピュータに前記候補タームを送る段階とを実行するソフトウェアをエンコードしたものである。
【発明を実施するための最良の形態】
【０００７】
図１は、文書のタグを選択するシステム１０の一実施形態を示す図である。タグ（tag）は文書に割り当てられたワード（words）であり、例えばメタデータとして割り当てられたものである。タグは電子的文書の検索プロセスを容易にするために用いることができる。ある実施形態では、文書が属するオントロジー空間を減縮するタグをその文書に付ける。こうしたタグを用いるとその文書をもっと容易に検索できる。ある実施形態では、文書にタグが付けられたときに、その文書が属するオントロジー空間を減縮する他のタグを推奨する。
【０００８】
ある実施形態では、システム１０は、例えばユーザが目標タグ（target  tags）を選択すると、複数のタグを割り当てる。上記の実施形態において、システム１０は文書に対する複数のタグを推奨する。推奨される複数のタグは、目標タグとの類似性（affinity）が高いが、文書のオントロジー空間を減縮するために、推奨される他のタグとの類似性は低い。システム１０は推奨されたタグの選択を受けて、その選択に応じてより多くのタグを推奨する。システム１０は、最終的にタグを選択すると、その最終的なタグをその文書に付与する。上記の実施形態は、テキストを含む文書のみならず、テキストを含まない文書にもタグを付与するために用いることができる。
【０００９】
ある実施形態では、ワードのサブセット（subset）と辞書Ｄとが与えられた時に、その逆インデックスＩＩから有向類似性を計算することができる。ここで、インデックスＩＩは例えばワードｗｉとｗｊのエントリーＩ（ｗｉ）とＩ（ｗｊ）を含む。一般的に、逆インデックス（inverted  index）は、ターム（term）からその位置へのマッピング、すなわちそのタームが現れる共起コンテキスト（co-occurrence  contexts）へのマッピングを格納したインデックスデータ構造である。Ｄ中のワードｗｉとｗｊの各ペアに対して、ＩＩ中のエントリーＩ（ｗｉ）、Ｉ（ｗｊ）の結合部分中の値を、Ｉ（ｗｉ）中の値の数で割った値としてＤＡ（ｉ，ｊ）を定義する。一般的に、ＤＡ（ｉ，ｊ）はＤＡ（ｊ，ｉ）と必ずしも等しくはない。その結果は任意の適切な方法で格納する。例えば、行ごとに、すなわちＤ（１，ｉ）を格納し、次にＤ（２，ｊ）を格納し、以下同様に格納する。各行ｉに対して、｜Ｉ（ｗｉ）｜を格納し、その後にｗｊとの結合部分（conjunction）の濃度を格納する。
【００１０】
ある実施形態では、有向類似性を３段階で計算する。上記の実施形態では、各辞書タームには一意的な整数の識別子を付与する。逆インデックスのエントリーはその整数識別子に対応する。段階０では、Ｄに対応するＩＩのエントリーを読み出す。パラメータ（ｓ，ｏ）に対して、ｋｓ＋ｏの形である要素識別子を保存する。値ｋｓ＋ｏにより、逆インデックスＩＩ中の調べるべきエントリーのサブセットが決まる。このようにして、有向類似性を並行して計算できる。一例として、パラメータｓ，ｏ（１，０）から得られる結果は、パラメータ（３，０）、（３，１）、（３，２）の計算を合わせたものから得られる結果と同じである。この段階により非常に大きな逆インデックスに対してＤＡテーブルを計算することができる。
【００１１】
段階１では、ＤＡ（ｉ，ｊ）のみに対して行ごとに結合を計算する。段階２では、計算された上部三角領域のＵＴ  ＤＡ配列を読み出す。下部三角領域は、上記三角領域からその転置として求められる。ある実施形態では、同じ次元の複数のＤＡ配列をひとつの配列に結合してもよい。大きな逆インデックスＩＩのＤＡ配列を、パラメータを（ｓ，ｉ）としてｉ＝０．．（ｓ−１）にわたるＤＡの和として計算できる。有向類似性（directional  affinities）を算出できるように、計算した結合（conjunctions）とともに付加的な情報を格納してもよい。ある実施形態では、ＩＩエントリーの濃度を格納してもよい。
【００１２】
ある実施形態では、ＤＡを行ごとに格納し、ＤＡエントリーの計算と並行してＡＡエントリーの計算を進めることができる。具体的に、ＤＡの行をディスクから読み出しつつ加算し、最後に辞書エントリーの数で規格化することによってＡＡを生成する。
【００１３】
図示した実施形態において、システム１０はクライアント２０、サーバ２２、及びメモリ２４を含む。ユーザは、クライアント２０によりサーバ２２と通信して、言語のオントロジーを生成する。クライアント２０は、ユーザ入力をサーバ２２に送信し、サーバ出力をユーザに提供（例えば、表示や印刷）する。サーバシステム２４は言語のオントロジーを生成するアプリケーションを管理する。メモリ２４はサーバシステム２４が使うデータを記憶する。
【００１４】
図示した実施形態において、メモリ２４はページ５０とレコード５４とを記憶している。ページ５０（すなわち文書または共起コンテキスト）はワード（word）の集まりである。ページ５０の例としては、文書のページや、文書や、ブックや、ウェブページや、通信（例えば電子メールやインスタントメッセージ）その他がある。ページ５０はページ識別子により識別できる。ページ５０は有体のコンピュータ読み取り可能媒体に電子的に記憶されていてもよい。ページ５０には任意の適切なコンテンツが含まれる。例えば、テキスト（文字、ワード、数字等）、画像（グラフィックス、写真、ビデオ等）、オーディオ（録音、コンピュータ生成サウンド等）、ソフトウェアプログラムが含まれる。ある実施形態では、一組のページ５０がコーパス（corpus）に属している。コーパスは特定の主題、コミュニティ、組織、エンティティ（entity）に関連している。
【００１５】
レコード５４はページ５０を記述する。本実施形態では、レコード５４は、インデックス５８、逆インデックス６２、オントロジー６６、クラスター６７を含む。インデックス５８はインデックスリストを含み、ページ５０のインデックスリストはページ５０のワードを示す。逆インデックス６２は逆インデックスリストを含み、あるワード（または一組のワード）の逆インデックスリストはそのワード（または一組のワード）を含むページ５０を示す。一実施例では、リストＷｉはワードｗｉを含むページ５０のページ識別子を含む。リストＷｉ＆Ｗｊはワードｗｉとｗｊを両方とも含む連言ページ（conjunction  pages）５０のページ識別子を含む。リストＷｉ＋Ｗｊはワードｗｉまたはｗｊのいずれかを含む選言ページ（disjunction  pages）５０のページ識別子を含む。Ｐ（Ｗｉ）はＷｉのページ５０の数、すなわちワードｗｉを含むページ５０の数である。
【００１６】
一実施形態では、リスト（インデックスリスト、逆インデックスリスト等）はバイナリ・ディシジョン・ダイアグラム（ＢＤＤ）として記憶される。一実施例では、集合Ｗｉのバイナリ・ディシジョン・ダイアグラムＢＤＤ（Ｗｉ）はワードｗｉを有するページ５０を表す。ＢＤＤ（Ｗｉ）の十分割当カウント（satisfying  assignment  count）Ｓａｔｉｓｆ（ＢＤＤ（Ｗｉ））によりワードｗｉを有するページ５０の数Ｐ（Ｗｉ）が求まる。
【数１】
0005391633.tif 000002
【００１７】
したがって、
【数２】
0005391633.tif 000003
【００１８】
オントロジー６６は言語のワードとそのワード間の関係を表すものである。一実施形態では、オントロジー６６はワード間の類似性（affinities）を表す。図示した実施例では、オントロジー６６は類似性マトリックスと類似性グラフを含む。類似性マトリックスの例を図３乃至図５を参照して説明する。類似性グラフの例を図６を参照して説明する。クラスター６７は互いに関係するワードのクラスターを記録している。クラスターは図７を参照してより詳細に説明する。
【００１９】
図示した実施形態では、サーバ２２は類似性モジュール３０、クラスターリングモジュール３１、及びオントロジー特性モジュール３２、及びタギングモジュール３５を含む。類似性モジュール３０はワードのペアの類似性を計算し、その類似性を類似性マトリックスに記録し、及び／または類似性マトリックスをレポートする。類似性モジュール３０は類似性グラフも生成できる。類似性モジュール３０は図２を参照してより詳細に説明する。
【００２０】
実施形態では、クラスターリングモジュール３１は、データセット中の関係する要素のクラスターを特定することにより、そのデータセット中のパターンを発見する。実施形態では、クラスターリングモジュール３１は一組のワード（例えば、言語や一組のページ５０等）のクラスターを特定できる。一般的に、クラスターのワードは互いに強く関係しているが、クラスター外のワードとは関係していない。ワードのクラスターはその一組のワードのテーマ（すなわちトピック）を指定する。ある実施形態では、クラスターリングモジュール３１は、関係するワード間の類似性によりそのクラスターを特定する。その実施形態では、クラスターのワードは互いに強く類似しているが、クラスター外のワードとは類似していない。クラスターリングモジュール３１は図７を参照してより詳細に説明する。
【００２１】
実施形態では、オントロジー特性モジュール３２は一組のワード（例えば、ワードやそのワードを含む文書）のオントロジー特性（ontology  features）を決定し、そのオントロジー特性を様々な場合に適用する。オントロジー特性はワードセットの特徴であり、言語のオントロジー空間にそのワードセットを配置するものである。オントロジー特性の例としては深さ（depth）と具体性（specificity）がある。実施形態では、深さ（depth）はワードセットのテキストとしての精巧さ（textual  sophistication）を示す。深さがより大きい（深い）ワードセットは、より技術的かつ専門的であり、深さがより小さい（浅い）ワードセットは、より一般的なものである。実施形態では、ワードセットの具体性はそのワードセットのテーマの数に関係する。具体性が高いワードセットが有するテーマはより少なく、具体性が低いワードセットが有するテーマはより多い。
【００２２】
オントロジー特性モジュール３２はオントロジー特性を任意の適切な場合に適用する。適切な場合とは、例えば、オントロジー特性による文書の検索、ソート、選択や、文書のオントロジー特性のレポートや、ユーザの文書のオントロジー特性の決定などである。オントロジー特性モジュール３２は図８を参照してより詳細に説明する。
【００２３】
ある実施形態では、タギングモジュール（tagging  module）３５は、文書にタグ付けするタグを選択する。タグは任意の適切な方法で選択することができる。ある実施形態では、タギングモジュール３５はトピックスをそれに関係するワードの統計的分布としてモデル化する。タギングモジュール３５は統計的分布を用いて、文書から選択されたワードが出現する確率が最も高いトピックスを特定し、そのトピックスに応じてその文書のタグを選択する。他の実施形態では、タギングモジュール３５は文書のパラグラフのタグ候補を特定する。タギングモジュール３５はタグ候補の、その文書の他のタグ候補との関係性を決定して、その決定に応じてその文書のタグを選択する。さらに別の実施形態では、タギングモジュール３５は文書のタグを推奨する。タグは、ユーザまたはコンピュータが入力または選択した目標タグ（target  tags）との類似性（例えば、有向類似性や差分類似性）に基づいて推奨する。タグ部３１４は、最終的にタグを選択すると、選択したタグを文書に付与する。タギングモジュール３５は図９を参照してより詳細に説明する。
【００２４】
システム１０の構成要素は、インターフェース、ロジック、メモリ、その他の適切な要素を含む。インターフェースは入力を受信し、出力を送信し、入力や出力を処理し、その他の適当な動作を行う。インターフェースはハードウェア及び／またはソフトウェアを含む。
【００２５】
ロジックは、これらの構成要素の動作を行い、例えば、入力から出力を生成する命令を実行する。ロジックはハードウェア、ソフトウェア及び／またはその他のロジックを含む。ロジックは有体媒体にエンコードされ、コンピュータにより実行された時に動作するものであってもよい。プロセッサ等のある種のロジックが構成要素の動作を管理してもよい。プロセッサの例としては、例えば、コンピュータ、マイクロプロセッサ、アプリケーションその他のロジックがある。
【００２６】
メモリは情報を記憶する。メモリは有体の、コンピュータ読み取り可能な、及び／またはコンピュータ実行可能な記憶媒体である。メモリの例には、コンピュータのメモリ（ＲＡＭ、ＲＯＭ等）、大規模記憶媒体（ハードディスク等）、リムーバブル記憶媒体（ＣＤ、ＤＶＤ等）、データベースやネットワーク記憶装置（サーバ等）、その他のコンピュータ読み取り可能な媒体が含まれる。
【００２７】
本発明の範囲から逸脱することなく、システム１０に修正、追加、または削除をすることができる。システム１０の構成要素は一体であっても分かれていてもよい。さらに、システム１０の動作を実行する構成要素は、これより多くても少なくてもよいし、他の構成要素であってもよい。例えば、生成器４２、４６の動作を１つの構成要素により行ってもよいし、類似性計算器３４の動作を２つ以上の構成要素で行ってもよい。また、システム１０の動作の実行は、ソフトウェア、ハードウェア、及び／またはその他のロジックを含む任意の適切なロジックを用いて行ってもよい。本明細書では、「各」とは、集合の各要素、または集合の部分集合の各要素を指す。
【００２８】
本発明の範囲から逸脱することなく、マトリックスの例に修正、追加、または削除をすることができる。マトリックスに含まれる値はこれより多くても少なくてもよく、他の値が含まれてもよい。また、マトリックスの値を任意の適切な順序で構成してもよい。
【００２９】
図２は、図１のシステム１０で使用できる類似性モジュール３０の一実施形態を示す図である。類似性モジュール３０はワードのペアの類似性を計算し、その類似性を類似性マトリックスに記録し、及び／またはその類似性マトリックスをレポートする。類似性モジュール３０は類似性グラフも生成できる。
【００３０】
図示した実施形態では、類似性モジュール３０は類似性計算器３４、オントロジー生成器３８、及びワード推奨器４８を含む。類似性計算器３４は、ワードｗｉの、または第１のワードｗｉと第２のワードｗｊを含むワードペアの任意の適切なタイプの類似性を計算する。類似性の例には基本類似性、有向類似性、平均類似性、差分類似性、その他の類似性が含まれる。
【００３１】
一実施形態では、ワード推奨器４８は、シード・ワード（seed  word）を受け取り、そのシード・ワードとの類似性が閾値より高いワードを特定する。類似性閾値は任意の適切な値であり、０．２５、０．５、０．７５、０．９５やこれらより大きな値であってもよい。類似性閾値は予めプログラムしても、ユーザが指定してもよい。
【００３２】
基本類似性はワードｗｉ及び／またはｗｊを含むページ５０の量（例えば数）に基づき計算できる。連言ページ量（conjunction  page  amount）はワードｗｉとｗｊを両方とも含むページ５０の量を表し、選言ページ量（disjunction  page  amount）はワードｗｉまたはｗｊのいずれか一方を含むページ５０の量を表す。基本類似性は連言ページ量を選言ページ量で割って求められる。一実施例では、連言ページ数はワードｗｉとワードｗｊを含むページ数を示し、選言ページ数はワードｗｉまたはワードｗｊのいずれかを含むページ数を示す。基本類似性は連言（conjunction）ページ数を選言（disjunction）ページ数で割って求めることができる。
【数３】
0005391633.tif 000004
【００３３】
図３は、基本類似性を記録した類似性マトリックス１１０の一例を示す図である。図示した例では、類似性マトリックス１１０はワードｗ１，．．．，ｗ５のペアごとの類似性を記録している。類似性マトリックス１１０によると、ワードｗ０とｗ１の間の類似性は０．００３であり、ワードｗ０とｗ２の間の類似性は０．００５であり、以下同様である。
【００３４】
図１に戻り、類似性グループは相互に類似性が高いワードのペアを含み、この類似性グループを用いてページのコンテンツに対するワードｗ１、ｗ２間の関係を捉える。類似性が類似性グループ閾値よりも高いことを、類似性が高いという。閾値は任意の適切な値であり、０．５０、０．６０、０．７５、０．９０、０．９５より大きな値であってもよい。１つのワードは２つ以上の類似性グループに属してもよい。一実施形態では、類似性グループはＢＤＤとして表すことができる。逆インデックス６２に、ＢＤＤのポインタをそのグループの各ワードとともに格納してもよい。
【００３５】
有向類似性を用いてワードｗｊに対するワードｗｉの重要性を測ることができる。類似性計算器３４は、ワードｗｊが与えられたときのワードｗｉの有向類似性を、ワードｗｉとｗｊを含むページ５０の量（例えば数）から計算する。ワードｗｉページ量は、ワードｗｉを含むページ５０の量を表す。ワードｗｊが与えられたときのワードｗｉの有向類似性は、連言ページ量をワードｗｊページ量で割ったものである。例えば、ワードｗｊページの数はワードｗｉを含むページ５０の数を示す。ワードｗｊが与えられたときのワードｗｉの有向類似性は、結合ページ５０の数をワードｗｉページ５０の数で割ったものである。
【数４】
0005391633.tif 000005
【００３６】
ＤＡｆｆｉｎｉｔｙ（ｗｉ，ｗｊ）はＤＡｆｆｉｎｉｔｙ（ｗｊ，ｗｉ）と同じではない。ワードｗｉとｗｊの間の有向類似性ＤＡｆｆｉｎｉｔｙ（ｗｉ，ｗｊ）が高いということは、ページ５０がワードｗｊを含むときにそのページ５０がワードｗｉを含む確率が高いということを示す。一例では、ページ［１  ２  ３  ４  ５  ６］がワードｗｉを含み、ページ［４  ２］がワードｗｊを含む。ワードｗｊを含むページがワードｗｉも含むということは、ワードｗｊの観点からは、ワードｗｉの重要性が高いということである。ワードｗｉを含むページの１／３のみがワードｗｊを含むということは、ワードｗｉの観点からは、ワードｗｊの重要性が低いということである。
【００３７】
図４は、ワードｗ０，．．．ｗ５の基本類似性を記録した類似性マトリックス１２０の一例を示す図である。上記の例では、ワード１２４はＡワード、ワード１２８はＢワードである。マトリックス１２０の行はＡワードが与えられたときのＢワードの類似性を記録し、類似性マトリックス１２０の列はＢワードが与えられたときの類似性を記録する。
【００３８】
図１に戻り、他のワードｗｊに対するワードｗｉの平均類似性を計算する。一実施形態では、平均類似性は、ワードｗｉとその他のすべてのワードｗｊとの間の類似性の平均である。Ｎ個のワードに対するワードｗｉの平均類似性は次式で表される。
【数５】
0005391633.tif 000006
【００３９】
図５は、平均類似性を記録した類似性マトリックス１４０の一例を示す図である。行１４２はワード１乃至ワード５０，０００の基本類似性を記録している。行１４４はワード１乃至ワード５０，０００の平均類似性を記録している。
【００４０】
図１に戻り、ワードの平均類似性はそのワードの深さを示す。平均類似性が低いワードは深いワードであると考えられ、平均類似性が高いワードは浅いワードであると考えられる。深いワードは技術的であり、具体的であり、精密であるという傾向がある。深いワードの割合が高いページ５０は深いページであると考えられ、深いワードの割合が低いページ５０は浅いページであると考えられる。一実施形態では、ユーザは検索するワード及び／またはページ５０の深さを指定することができる。
【００４１】
ページ５０の深いワードは関係性が高いワードのクラスターを形成する。クラスターは共通のアイデアやテーマを表す。ページ５０のテーマ数はそのページ５０の具体性（specificity）を示す。テーマが少ないページ５０はより具体的であると考えられ、テーマが多いページ５０はあまり具体的でないと考えられる。
【００４２】
ワードｗｊに対するワードｗｉの差分類似性は、ワードｗｉとｗｊの間の有向類似性からワードｗｊのその他すべてのワードとの平均類似性を引いたものである。差分類似性は次式で表せる：
【数６】
0005391633.tif 000007
【００４３】
差分類似性は、ページ５０にワードｗｊが出現する一般的な傾向によるバイアスを除去したものである。場合によっては、差分類似性は、ページがワードｗｊを含むときにそのページがワードｗｉを含む確率をより正確に示すものである。
差分類似性は様々な応用ができる。一例では、人の名前の間の差分類似性を用いて社会的ネットワークを研究できる。他の例では、言語要素間の差分類似性を用いて自然言語処理を研究できる。他の例では、製品間の差分類似性を用いてマーケティングを研究できる。
【００４４】
類似性計算器３４は、任意の適切な方法を用いて逆インデックスリストを検索し類似性を計算する。例えば、ワードｗｉとワードｗｊを両方とも含むページを特定するため、類似性計算器３４は、ワードｗｉのリストＷｉとワードｗｊのリストＷｊを検索して共通の要素（すなわち共通のページ識別子）を探す。
【００４５】
実施形態では、オントロジー生成器３８は、類似性マトリックスや類似性グラフなどの、言語のオントロジー６６を生成する。オントロジーは、基本類似性、有向類似性、平均類似性、差分類似性その他の任意の適切な類似性から生成できる。オントロジー６６は、任意の適切な方法で、言語から選択されたワードから生成できる。例えば、その言語の一般的に使用されている部分のワードや、主題領域に関係するワードを選択する。
【００４６】
図示した実施例では、オントロジー生成器３８は類似性マトリックス生成器４２と類似性グラフ生成器４６を含む。類似性マトリックス生成器４２は、ワード間の類似性を記録する類似性マトリックスを生成する。類似性グラフ生成器４６は、ワード間の類似性を表す類似性グラフを生成する。類似性グラフでは、ノードはワードを表し、ノード間の有向エッジの重みはそのノードが表すワード間の類似性を表す。類似性グラフは任意の適切な次元数を有する。
【００４７】
図６は、類似性グラフ１５０の一例を示す図である。類似性グラフ１５０はノード１５４とリンク１５８を含む。ノード１５４はワードを表す。この例では、ノード１５４ａはワード「バイナリ（binary）」を表している。ノード１５４間の有向エッジの重みは、ノード１５４が表すワード間の類似性を表す。例えば、重みが大きければ類似性が大きい。ノード間のリンク１５８は、そのノード１５４が表すワード間の類似性がある類似性閾値より大きいことを示している。類似性閾値は任意の適切な値であり、例えば、０．２５、０．５、０．７５、０．９５であっても、これらより大きな値であってもよい。
【００４８】
図７は、図１のシステム１０で使用できるクラスターリングモジュール３１の一実施形態を示す図である。実施形態では、クラスターリングモジュール３１は、データセット中の関係のある要素のクラスターを特定することにより、そのデータセット中のパターンを発見する。実施形態では、クラスターリングモジュール３１は一組のワード（例えば、言語や一組のページ５０等）のクラスターを特定できる。一般的に、クラスターのワードは互いに強く関係しているが、クラスター外のワードとは関係していない。ワードのクラスターはその一組のワードのテーマ（すなわちトピック）を指定する。
【００４９】
ある実施形態では、クラスターリングモジュール３１は、関係するワード間の類似性によりそのクラスターを特定する。その実施形態では、クラスターのワードは互いに強く類似しているが、クラスター外のワードとは類似していない。一実施形態では、ワードは、かなり類似（sufficiently  affine）していれば類似性が高い（highly  affine）と考える。ワードは、類似性規準（例えば閾値）を満たせば十分類似している。以下に類似性規準の例を示す。
【００５０】
任意の適切な類似性を用いてクラスターを特定できる。実施形態では、クラスターリングモジュール３１は有向類似性を用いる。あるワードの他のワードに対する有向類似性はそのワードの共起性（co-occurrence）を特徴づける。クラスターは同様の共起性を有するワードを含んでいる。実施形態では、クラスターリングモジュール３１は差分類似性を用いる。差分類似性は、ページ５０にあるワードが出現する一般的な傾向によるバイアスを除去する傾向がある。
【００５１】
図示した実施形態では、クラスターリングモジュール３１はクラスターリングエンジン２１０とクラスターリング分析器２１４とを含む。クラスターリングエンジン２１０は類似性によりワードのクラスターを特定し、クラスターリング分析器２１４は類似性によるクラスターリングを用いて様々な分析を行う。
【００５２】
クラスターリングエンジン２１０は任意の適切な方法で、類似性によるワードのクラスターを特定する。クラスターの特定方法の３つの例を説明する。一組のワードからのクラスターの構成と、ワードのクラスターへのソーティングと、ワードの類似性ベクトルの比較である。一実施形態では、クラスターリングエンジン２１０は一組のワードからクラスターを構成する。一例では、クラスターリングエンジン２１０は、類似性＊Ａｆｆ（ｗｉ，ｗｊ）を有するワード｛ｗｉ｝の集合ＷからクラスターＳを構成する。類似性値＊Ａｆｆ（ｗｉ，ｗｊ）はワードｗｉのワードｗｊに対する、有向類似性ＤＡｆｆｉｎｉｔｙ（ｗｉ，ｗｊ）や差分類似性ＤｉｆｆＡｆｆ（ｗｉ，ｗｊ）等の任意の適切な類似性を表す。ここで挙げる類似性値の例は規格化した値であってもよい。上記の例では、Ａｆｆｆｏｒ（ｗｉ，ｗｊ）は前方類似性を表し、Ａｆｆｂａｃｋ（ｗｊ，ｗｉ）は後方類似性を表す。
【００５３】
上記の例では、クラスターＳはシード・ワードｗｑで始まる。カレント・ワード（current  word）ｗｘは、カレント・アイテレーション（current  iteration）において集合Ｗのワードと比較される、クラスターＳのワードを表す。カレント・ワードは、最初にシード・ワードｗｑに設定される。
【００５４】
１回の繰り返しにおいて、カレント・ワードｗｘはクラスターＳのワードに設定される。集合Ｗのワードｗｉは、カレント・ワードｗｘとの前方類似性Ａｆｆｆｏｒ（ｗｉ，ｗｊ）に応じてソートされる。ソートされた集合Ｗの始めから開始して、類似性規準を満たす候補ワードｗｃを特定する。類似性規準はカレント・ワードｗｘとの前方類似性規準（a  forward  affinity  with  the  current  word  wx  criterion）を含む：
【数７】
0005391633.tif 000008
及び、シード・ワードｗｑとの後方類似性規準（a  backward  affinity  with  the  seed  word  wq  criterion）：
【数８】
0005391633.tif 000009
ここで、Ｔｈｃｆは候補ワードの前方閾値を表し、Ｔｈｃｂは後方ワードの後方閾値を表す。候補ワード｛ｗｃ｝の順序付き集合の最初のワードをクラスターＳに加える。加えたワードの数はパラメータＳｉｚｅｃで与えられる。閾値ＴｈｃｆとＴｈｃｂは、最小値と最大値の間にある任意の適切な値を有する浮動小数点パラメータである。例としては、ＴｈｃｆとＴｈｃｂの適切な値は実際の類似性の序列リスト（rank-ordered  list）から決定される。例えば、リストの２００番目の値を使用する。パラメータＳｉｚｅｃは任意の適切な値を有する整数パラメータである。適切な値の例として、デフォルト値を１，２，３または４にしてもよい。実施形態では、上記のパラメータは繰り返しによって変化してもよい。
【００５５】
繰り返し回数は任意の適切なものであればよい。一例では、繰り返し回数をこの方法の開始前に指定できる。他の例では、回数をこの方法の実行中に計算できる。例えば、その回数をクラスターＳの大きさの増大率から計算できる。
【００５６】
他の実施形態では、クラスターリングエンジン２１０は、一組のワードをクラスターにソーティングすることにより、クラスターを特定する。一例では、集合Ｗのワード｛ｗｉ｝を、差分類似性や有向類似性などの類似性＊Ａｆｆ（ｗｉ，ｗｊ）に応じてソートする。他の例では、ワード｛ｗｉ｝を、別のワード集合Ｑの各メンバーに対するワードｗｉの類似性の累積関数（合計等）によりソートする。集合Ｗは任意の適切な方法で選択することができる。例えば、集合Ｗはクエリーに最も関係するＸ個のワードである。Ｘは任意の適切な値である。例えば、１０乃至１００、１００乃至２００、または２００以上の値である。
【００５７】
上記の例ではクラスターは最初、空である。集合Ｗの最初のワードｗｉをクラスターに入れる。各繰り返しにおいて、集合Ｗからカレント・ワードｗｘを選択する。＊Ａｆｆ（ｗｘ，ｗｆ）が類似性閾値Ｔｈにより与えられる類似性規準を満たせば、カレント・ワードｗｘをクラスターに入れる。ここで、ｗｆはそのクラスターに入れられた最初のワードを表す。閾値Ｔｈの値は任意の適切なものである。例えば、最小値が０．０で最大値が１．０のとき、０．１乃至０．５の範囲にある値である。＊Ａｆｆ（ｗｘ，ｗｆ）が閾値Ｔｈを満たさないとき、カレント・ワードｗｘは空のクラスターに入れられる。集合Ｗの各ワードに対して繰り返す。
【００５８】
集合Ｗのワードを処理してから、小さいクラスターを削除してもよい。例えば、ワード数がＹに満たないクラスターを削除してもよい。Ｙは任意の適切な値であり、例えば、３乃至５、５乃至１０、１０乃至２５、２５乃至５０、または５０以上の範囲の値である。
【００５９】
クラスター数が満足のいく範囲になければ、閾値Ｔｈを変えて上記プロセスを繰り返す。閾値Ｔｈを変えることによりクラスターに入れる規準が厳しくなったりゆるくなったりする。上記の満足のいく範囲は、任意の適切な値であるクラスター数の最小値と最大値により決めてもよい。適切な値の例としては、最小値については１乃至５、５乃至１０、または１０以上の範囲の値であり、最大値については１０乃至１５、１５乃至２０、または２０以上の範囲の値である。閾値Ｔｈを大きくしてクラスター数を大きくしてもよいし、小さくしてクラスター数を小さくしてもよい。
【００６０】
他の実施形態では、クラスターリングエンジン２１０は、ワードの類似性ベクトルを比較することによりクラスターを特定する。実施形態では、類似性マトリックスの行と列により類似性ベクトル＜ｗｉ，＊Ａｆｆ（ｗｉ，ｗ１），．．．，＊Ａｆｆ（ｗｉ，ｗｊ），．．．，＊Ａｆｆ（ｗｉ，ｗｎ）＞ができる。これはワードｗｉのワードｗｊ（ｊ＝１，．．．，ｎ）に対する類似性を表す。類似性値＊Ａｆｆ（ｗｉ，ｗｊ）はワードｗｉのワードｗｊに対する、有向類似性や差分類似性等の任意の適切な類似性を表す。
【００６１】
実施形態では、類似性値が同様である類似性ベクトルはクラスターを示す。説明のためだけに、類似性ベクトルを類似性空間におけるワードの類似性の座標とみなしてもよい。すなわち、各類似性値＊Ａｆｆ（ｗｉ，ｗｊ）をある次元の座標とみなす。類似性値が近い（similar）類似性ベクトルは、そのベクトルが付随するワードが類似性空間において互いに近いことを示している。すなわち、そのベクトルは、そのワードが他のワードと有する類似性関係が近いことを示し、同じクラスターに含めることが適当であることを示す。
【００６２】
類似性ベクトルは、適切な距離関数により、１つの類似性ベクトルが他の類似性ベクトルの近傍にあるとき、類似性ベクトルは近い。距離関数は、類似性ベクトルに対して、その大きさのベクトルの標準的なユークリッド距離として、またはその大きさのベクトルの余弦として定義することができる。距離関数は、クラスターリングエンジン２１０やユーザによって指定することもできる。
【００６３】
実施形態では、クラスターリングエンジン２１０はクラスターリング・アルゴリズムを用いて、互いに近い値を有する類似性ベクトルを特定する。クラスターリング・アルゴリズムの例には、ダイレクト（direct）・アルゴリズム、反復二分（repeated  bisection）・アルゴリズム、集積（agglomerative）・アルゴリズム、バイアス集積（biased  agglomerative）・アルゴリズムその他の適切なアルゴリズムなどがある。一例では、クラスターリングエンジン２１０は「ＣＬＵＴＯ」などのクラスターリングソフトウェアを含む。
【００６４】
クラスターリング分析器２１４は、任意の適切なアプリケーションにおいて分析のために類似性クラスターリングを用いる。一実施形態では、クラスターリング分析器２１４は類似性クラスターリングを用いてページをカテゴリー分けする。カテゴリーはクラスター識別子またはクラスターのメンバーと関連する。一例では、ページ５０のクラスターを特定し、そのページ５０をそのクラスターに応じてカテゴリー分けする。他の例では、ページ５０の重要なワードを選択し、そのワードを含むクラスターを見つける。ページ５０を見つけたクラスターに応じてカテゴリー分けしてもよい。
【００６５】
一実施形態では、クラスターリング分析器２１４は類似性クラスターリングを用いてページ５０のコーパスを分析する。コーパスは特定の主題、個人のコミュニティ、組織、その他のエンティティ（entity）に関連している。一例では、クラスターリング分析器２１４はコーパスのクラスターを特定し、そのクラスターからそのコーパスのコーパスキャラクタ（corpus  character）を決定する。コーパスキャラクタはそのコーパスに付随するエンティティ（entity）に関連するワードを示す。ページ５０は、コーパスキャラクタのクラスターを有するとき、そのエンティティに関連している。
【００６６】
一実施形態では、クラスターリング分析器２１４は類似性クラスターリングを用いて、検索クエリーの曖昧性を除去し拡張する（query  disambiguation  and  expansion）。上記の実施形態では、クラスターリング分析器２１４は、検索クエリーの検索タームを含むクラスターを特定する。クラスターにより、与えられた検索クエリーに関連する代替的なワードやカテゴリーが提供される。一例では、クラスターからのワードを検索者にレポートして、次の検索クエリーを支援する。他の例では、クラスターリング分析器２１４は、クラスターからワードを選択して、新しい検索クエリーを自動的に形成する。クラスターリング分析器２１４はその新しいクエリーを順番に、または並行して実行する。
【００６７】
一実施形態では、クラスターリング分析器２１４は類似性クラスターリングを用いてソーシャルネットワークを調査（study）する。一例では、ページ５０はソーシャルネットワークに関する情報（insight）を提供する。かかるページの例としては、通信（手紙、電子メール、インスタントメッセージなど）、メモ、記事、議事録などがある。こうしたページ５０は、ソーシャルネットワークを形成する人々のユーザ識別子（名前など）であるワードを含む。名前のクラスターを特定して、そのネットワークを形成する人々の間の関係を分析する。一例では、別の類似性クラスターリングを用いて、システム管理者の名前など、情報を提供しないがほとんどのページ５０に現れる名前をフィルタ除去する。
【００６８】
実施形態では、クラスターリング分析器２１４は、データセットのクラスターを結合及び／または比較することにより、そのデータセットを分析する。一実施形態では、オーバーラップするデータセットのクラスターを比較する。１つのデータセットのクラスターを他のデータセットのクラスターにマッピングすると、そのデータセット間の関係についての情報（insight）が得られる。例えば、データセットは、職場のグループの文書の分析や、そのグループのソーシャルネットワークの調査（study）によるものである。ソーシャルネットワークのクラスターを文書の主題のクラスターにマッピングして、ソーシャルネットワークと主題の間の関係を分析する。
【００６９】
図８はオントロジー特性モジュール３２の一実施形態を示す図である。オントロジー特性モジュール３２は、一組のワード（例えば、ワードそのものやワードを含む文書）のオントロジー特性（ontology  features）を決定し、そのオントロジー特性を様々な場合に適用する。その一組のワードには文書の基本的ターム（essential  terms）が含まれているかも知れない。タームｔは、それに類似したｋ個のタームの少なくとも１つも文書に現れる場合、基本的タームである。そうでなければ、そのタームｔはその文書にとっては基本的ではない。
【００７０】
オントロジー特性は、ある分野においてある文書を他の文書から意味的に区別する特性（feature）軸に沿って、その文書を特徴づける数量化可能な尺度である。例えば、文書の深さは理解可能性に関してその文書を区別し、文書の具体性はフォーカスに関してその文書を区別し、文書のテーマは記載されたトピックスの範囲（addressed  range  of  topics）に関してその文書を区別する。オントロジー特性は任意の適切な方法で定義することができる。例えば、計算言語学における独立したアルゴリズムを用いて文書の可読性（readability）または深さ（depth）を特徴づけることができる。
【００７１】
図示した実施形態では、オントロジー特性モジュール３２は、深さエンジン２３０、テーマエンジン２４０、具体性エンジン２４４、オントロジー特性（ＯＦ）アプリケーションエンジン２５０を含む。深さエンジン２３０はワード（例えばワードそのものやワードを含む文書）の深さ（depth）を決定する。一般的に、深さはワードのテキスト的な精巧さ（textual  sophistication）を示す。深さがより大きい（深い）ワードは、より技術的かつ専門的であり、深さがより小さい（浅い）ワードは、より一般的なものである。実施形態では、深さモジュール３２は文書のワードの深さを計算し、そのワードの深さに基づきその文書の深さを計算する。実施形態では、深さエンジン２３０は深さ値及び／または深さランキングを文書及び／またはワードに割り当てる。より深い文書またはワードにはより高い深さ値または深さランキングが割り当てられ、より浅い文書またはワードにはより低い深さ値または深さランキングが割り当てられる。
【００７２】
深さエンジン２３０はワードの深さを任意の適切な方法で計算する。実施形態では、深さエンジン２３０は平均類似性によりワードの深さを計算する。上記の実施形態では、ワードの深さはそのワードの平均類似性の関数である。より深いワードはより低い平均類似性を有し、より浅いワードはより高い平均類似性を有する。具体例では、深さエンジン２３０はワードをその平均類似性によりランキングすることによりそのワードの深さを計算する。平均類似性が低いワードには高い深さランキングが与えられ、平均類似性が高いワードには低い深さランキングが与えられる。
【００７３】
実施形態では、深さエンジン２３０はクラスターリング分析を用いてワードの深さを計算する。上記の実施形態では、クラスター内のワードは互いに強く類似しているが、クラスター外のワードとはそれほど類似していない。クラスター空間における距離を類似性により測るが、これは深さのインジケータである。実施形態では、属するクラスター数が少ないワード、小さいクラスターに属するワード、及び／または他のクラスターから遠いクラスターに属するワードは深いものとみなされる。一方、属するクラスター数が多いワード、大きいクラスターに属するワード、及び／または他のクラスターに近いクラスターに属するワードは浅いものとみなされる。
【００７４】
他の実施形態では、深さエンジン２３０は類似性グラフ１５０のリンク分析をしてワードの深さを計算する。リンク分析は、ＰＡＧＥＲＡＮＫなどの任意の適切なリンク分析アルゴリズムで行うことができる。便宜的に、図６の類似性グラフ１５０を利用してワードの深さを計算することもできる。類似性グラフ１５０はノード１５４とリンク１５８を含む。ノード１５４はワードを表す。ノード１５４間のリンク１５８は、そのノード１５４が表すワード間の類似性が、ある類似性閾値より大きいこと、すなわちそのワードが十分類似していることを示している。
【００７５】
実施形態では、深さエンジン２３０はノード１５４の人気度（popularity）を計算する。人気のあるノード１５４は浅いワードを表し、人気のないノード１５４は深いワードを表す。第１のノード１５４から第２のノード１５４へのリンク１３６は、第１のノード１５４による第２のノード１５４への人気度投票であると考えられる。また、人気のあるノード１５４からの投票（vote）は人気のないノード１５４からの投票よりも重みが大きい。さらに、第１のノード１５４の第２のノード１５４に対する類似性はその投票に重みづけする。深さエンジン２３０はノード１５４への重みつき投票から、そのノード１５４の人気度を計算する。人気のないワードは深いものと考えられ、人気のあるワードは浅いものと考えられる。
【００７６】
深さエンジン２３０は文書の深さを任意の適切な方法で計算する。実施形態では、深さエンジン２３０は文書の少なくとも１つのワード、一部のワード、またはすべてのワードの深さにより、その文書の深さを計算する。実施形態では、ワードの深さは平均類似性で与えられ、文書の深さをその文書のワードの平均類似性から計算してもよい。例えば、文書の浅さ（shallowness）はその文書のワードの平均類似性の平均、すなわち、その文書中の各ワードの平均類似性の合計をその文書中のワードの総数で割ったものである。文書の深さは、その文書の浅さの逆数として計算できる。
【００７７】
実施形態では、深さは文書中の選択された一組のワードの平均的深さから計算できる。選択された一組のワードには、その文書の基本的ワードが含まれる。例えば、（深さが）トップＸ％のワードが含まれる。ここで、Ｘは１０より小さくても、１０乃至２０でも、２０乃至３０でも、３０乃至４０でも、４０乃至５０でも、５０乃至６０でも、６０乃至７０で、７０より大きくてもよい。選択された一組のワードには、Ｐ％の標準的な文法ワードや、Ｑ％のストップワードが含まれない。ここで、ＰとＱは任意の適切な値であり、１０より小さくても、１０乃至２０でも、２０乃至３０でも、３０乃至４０でも、４０乃至５０でも、５０乃至６０でも、６０乃至７０で、７０より大きくてもよい。
【００７８】
実施形態では、深さエンジン２３０は文書におけるワードの深さの分布により、その文書の深さを計算する。実施形態では、深い文書は、深いワードを有する割合が高い。    
ある実施形態では、深さエンジン２３０は文書の類似性（affinity）によりその文書の深さを計算する。文書間の類似性はその文書間の関係を示す。実施形態では、ワードの平均類似性がそのワードの深さを示すのと同様に、文書の平均類似性はその文書の深さを示す。文書の類似性は任意の適切な方法で定義することができる。一例では、共通ワード数Ｐ（Ｄ１＆Ｄ２）は文書Ｄ１とＤ２の両方にあるワードの数を示し、個別ワード数Ｐ（Ｄ１＋Ｄ２）は文書Ｄ１またはＤ２のいずれかにあるワードの数を示す。文書Ｄ１とＤ２の間の文書類似性ＤｏｃＡｆｆは次式で定義できる：
【数９】
0005391633.tif 000010
【００７９】
深さエンジン２３０は、平均ワード類似性の計算と同様に平均文書類似性を計算する。平均類似性が低い文書は深いものであると考えられ、平均類似性が高い文書は浅いものであると考えられる。
【００８０】
実施形態では、深さエンジン２３０は、文書類似性グラフのリンク分析をして文書の深さを計算する。文書類似性グラフは類似性グラフ１５０と同様だが、文書類似性グラフのノードはワードではなく文書を表す。深さエンジン２３０は第１の文書を表す第１のノードから第２の文書を表す第２のノードへのリンクを、第１の文書が与えられたときの第２の文書の文書類似性で重み付けする。出て行くリンクの重みを規格化してもよい。
【００８１】
実施形態では、深さグラフをユーザインターフェースに表示して文書の深さを表示する。深さレベルを選択できる深さスライダーを併せて表示してもよい。実施形態では、文書がより大きな文書のセクションであるとき、深さグラフはそのセクションを示す。
【００８２】
実施形態では、深さエンジン２３０は文書深さを任意の適切な方法で計算できる。例えば、文書の類似性のヒストグラムを処理し、及び／または深さに基づき異なるワードの割合をトランケート（truncate）してからヒストグラムを処理することができる。他の方法には、Ｇｕｎｎｉｎｇ−Ｆｏｇ法、Ｆｌｅｓｃｈ法、またはＦｒｙ法がある。
【００８３】
実施形態では、深さエンジン２３０は深さ値をある深さレベルにマッピングして、深さを較正してもよい。実施形態では、範囲Ｒｉの深さ値をレベルＬｉにマッピングする。例えば、Ｒ０＝｛ｒ０：ｒ０＜ｃ０｝をレベルＬ０にマッピングし、Ｒ１＝｛ｒ１：ｃ０＜ｒ１＜ｃ１｝をレベルＬ１にマッピングし、．．．，Ｒｎ＝｛ｒｎ：ｃｎ＜ｒｎ｝をレベルＬｎにマッピングする。これらの範囲は任意の適切な深さ値を含み、同じ大きさである必要はない。レベルの数は任意の適切なものであればよく、５より少なくても、５から７であっても、７または８であっても、８から１０であっても、１０から２０であっても、２０から５０であっても、５０から１００であっても、１００より多くてもよい。
【００８４】
テーマエンジン２４０は文書のテーマ（すなわちトピックス）を決定する。実施形態では、クラスターリングモジュール３１が特定した文書中のワードのクラスターから、テーマエンジン２４０がテーマを決定する。上記の通り、ワードのクラスターはその一組のワードのテーマ（すなわちトピック）を指定する。文書のテーマはその文書の内容に関して有用な情報を提供する。例えば、クラスター｛腎臓、肝臓、タンパク質、問題｝を含む文書は、おそらく腎臓の機能低下による肝臓からのタンパク質のもれに関するものであり、インゲン豆のタンパク質成分に関するものではない。
【００８５】
実施形態では、テーマエンジン２４０はテーママップからテーマを決定する。上記の実施形態では、例えば、ターム頻度−逆文書頻度（ＴＦ−ＩＤＦ）（term  frequency-inverse  document  frequency）法など任意の適切な方法を用いて文書からキーワードを抽出する。キーワードを用いてテーママップからテーマの候補を選択する。テーマ候補を文書と比較して、そのテーマがその文書に合致するか決定する。例として、テーマ候補のヒストグラムを文書のヒストグラムと比較する。テーマ候補が文書と合致したら、そのテーマにより、その文書のテーマのタイプや数を推定する。
【００８６】
具体性エンジン２４４は文書の具体性（specificity）を計算する。実施形態では、具体性エンジン２４４は、具体性値及び／または具体性ランキングを文書に割り当てる。より具体的な文書にはより高い具体性値または具体性ランキングが割り当てられ、より具体的でない文書にはより低い具体性値または具体性ランキングが割り当てられる。
【００８７】
実施形態では、具体性エンジン２４０は文書のテーマの数から具体性を計算する。例として、具体的な文書のテーマは少なく、具体的でない文書のテーマは多い。実施形態では、具体性エンジン２４０は文書のテーマの数と、そのテーマ間の類似性から具体性を計算する。例として、具体的な文書のテーマは、テーマ間の類似性が高くて少ない。一方、具体的でない文書のテーマは、テーマ間の類似性が低くて多い。
【００８８】
実施形態では、テーマの数は深さ（すなわちレベル）に依存する。例えば、深さが小さい１つのテーマは深さが大きい複数のテーマを表す。実施形態では、深さはユーザが深さスライダーを用いて選択するか、予め決まっている。実施形態では、レベルはユーザが選択するか、予め決まっている。例えば、任意の適切な数のレベルを決めて、そのレベルに対して深さを計算する。例えば、レベルは、ドメインベース（例えば、エンジニアリング、医療、ニュース、スポーツ、金融などのドメイン）、専門ベース（例えば、心臓科、眼科、腎臓科などの専門）、トピックベース（例えば、高血圧、コレステロール、バイパス手術、動脈硬化などのトピックス）、詳細ベース（例えば、立ちくらみ、慢性高血圧、急性高血圧などの詳細）、解決策ベース（例えば、老人性病因、医薬、遺伝子などの解決策）、人ベース（例えば、ユーザクエリーレベルなど）などがある。
【００８９】
オントロジー特性アプリケーションエンジン２５０は、（深さ、テーマ、具体性などの）オントロジー特性を用いて、任意の適切な状況でオントロジー特性分析を行う。適切な場合とは、例えば、オントロジー特性による文書の検索、ソート、推奨、選択や、文書のオントロジー特性のレポートや、ユーザの文書（または複数組みの文書）のオントロジー特性の決定などである。実施形態では、オントロジー特性アプリケーションエンジン２５０はオントロジー特性に関する情報を含むインデックスを使用する。一例では、オントロジー特性アプリケーションエンジン２５０は、深さランキングにより生成及び／または維持された文書深さ（ＤＤ）逆インデックス６２を使用する。ＤＤ逆インデックス６２は、ＤＤ逆インデックスリストを含む。ワードのＤＤ逆インデックスリストは、そのワードを含む文書（またはページ５０）の文書識別子をリストする。文書の文書識別子はその文書の深さを示す。例えば、文書識別子のエンコードに用いるバイナリエンコーディングは、深さを示す。場合によっては、ＤＤ逆インデックスリストは十分な深さを有する文書のみをリストしたものである。他の例では、オントロジー特性アプリケーションエンジン２５０は、逆インデックス６２に加えてランキングテーブルと深さテーブルを利用する。深さテーブルは文書の深さを示すものである。
【００９０】
実施形態では、オントロジー特性アプリケーションエンジン２５０は、指定された文書深さや具体性の値などの指定されたオントロジー特性値を有する文書を検索する。指定地は予め決められていても、計算してもユーザが選択してもよい。実施形態では、深さスライダーや具体性スライダーなどのグラフィカルな要素を用いて値を選択してもよい。
【００９１】
実施形態では、オントロジー特性アプリケーションエンジン２５０は、文書をソートするソート規準としてオントロジー特性を利用する。例えば、オントロジー特性アプリケーションエンジン２５０は、ソート規準だけでなく、テーマに関して文書深さ及び／または具体性により文書をソートする。例として、オントロジー特性アプリケーションエンジン２５０は、ＤＤ逆インデックス６２を検索して、文書深さによりソートされた文書を求める。例として、オントロジー特性アプリケーションエンジン２５０は、非ＤＤ逆インデックス６２を用いて文書を検索して、深さにより文書をソートする。
【００９２】
実施形態では、オントロジー特性アプリケーションエンジン２５０は、オントロジー特性の値をクライアント２０にグラフィカルに表示する。例えば、検索結果のトップＸ％の文書など、文書の一部または全部をグラフィカルに表示してもよい。オントロジー特性値を任意の適切な方法で表示できる。例として、数字、言葉、アイコンなどのグラフィカルインジケータにより値を示すことができる。例えば、検索結果のリスト中のアイテムや、オンラインニュースペーパーのヘッドラインや、文書アイコンなどの隣にグラフィカルインジケータを配置してもよい。例として、既存の図象（iconography）を修正して値を表示できる。例えば、テキストのサイズ、フォント、スタイル、カラーやグラフィカルインジケータにより値を示すことができる。他の例では、グラフにより値を示すことができる。オントロジー特性ヒストグラムは、文書量軸とオントロジー特性軸を含み、あるオントロジー特性値を有する文書の量を示す。例えば、文書量軸と文書深さ軸とを含む文書深さヒストグラムは、文書深さごとの文書量を示している。
【００９３】
実施形態では、ユーザは、オントロジー特性アプリケーションエンジン２５０により、特定のオントロジー特性値を有する文書の検索をすることができる。ユーザは、クエリーで用いる複数のワードのそれぞれにオントロジー特性値を指定することができる。例として、ユーザは、オントロジー特性アプリケーションエンジン２５０により深さを選択するオプションを提供され、深さを選択して入力することができる。そのオプションは任意の適切な方法で提供することができる。例えば：（ｉ）絶対的ターム（深さを表す数字や数字の範囲など）；（ｉｉ）相対的ターム（深さに関する検索結果の一部で、例えば「最も深いＸ％」など）；（ｉｉｉ）意味的ターム（「入門的」、「浅い」、「深い」、「極めて深い」、「非常に技術的」など）；（ｉｖ）グラフィカルターム（スライダー、ボタン、その他のグラフィカル要素など）；（ｖ）任意の適切なタームの組み合わせ（意味的ラベルを伴うスライダーなど）である。場合によっては、スライダーの端は「浅い」と「深い」である。ユーザはスライダーを一端または他端に向けて動かして深さを選択できる。検索結果が求まると、スライダーの横に文書深さヒストグラムが表示され、スライダーを文書深さの軸として使用できる。
【００９４】
実施形態では、オントロジー特性アプリケーションエンジン２５０はユーザのオントロジー特性キャラクタを計算できる。オントロジー特性キャラクタには、テーマとの関連でユーザ深さとユーザ具体性が含まれる。オントロジー特性キャラクタはそのユーザの文書のオントロジー特性を記述する。例えば、科学者は、第三者である評価者（third  grader）が使う文書より深い文書を使う。オントロジー特性キャラクタはテーマに対して与えられる。例えば、遺伝学者は、詩の分野で使うものよりも深い文書を遺伝学の分野では使う。オントロジー特性キャラクタを用いてユーザの専門を決定し、その人の経歴を構成し、またはソーシャルネットワークを分析してもよい。
【００９５】
ユーザの通信（電子メールやインスタントメッセージなど）や、ウェブページや、検索履歴（検索クエリーや選択したページなど）などの任意の適切な文書を分析してオントロジー特性キャラクタを推定する。実施形態では、オントロジー特性アプリケーションエンジン２５０はオントロジー特性キャラクタ（ontology  feature  character）を時間的に追跡して、過去のキャラクタを使って将来のキャラクタを予測できる。例として、オントロジー特性アプリケーションエンジン２５０では、一般的にユーザ深さ及び／または具体性は時間及び／またはある分野における活動とともに増大することを仮定してもよい。
【００９６】
実施形態では、オントロジー特性アプリケーションエンジン２５０では複数の動作を組み合わせてもよい。例えば、オントロジー特性アプリケーションエンジン２５０はユーザの深さをモニターし、そのユーザ深さに応じた文書を検索する。一例では、ユーザ深さをモニターし、ニュースをその深さに応じて提供する。将来のユーザ深さを予測して、予測されたユーザ深さに合ったニュースを提供する。
図９は、文書に付与するタグを選択するタギングモジュール３５の一実施形態を示す図である。タグは任意の適切な方法で選択することができる。ある実施形態では、タギングモジュール３５はトピックス（またはテーマ）をそれに関係するワードの統計的分布としてモデル化する。タギングモジュール３５は統計的分布を用いて、文書のランキングが高いワードが出現する確率が最も高いトピックスを特定し、そのトピックスに応じてその文書のタグを選択する。図示した実施形態では、タギングモジュール３５はトピックモデル部３１０と文書タグ部３１４とを含む。ある実施形態では、トピックモデル部３１０はトピックスをモデル化する統計的分布を生成し、文書タグ部３１４はその統計的分布に基づきタグを選択する。トピックモデル部３１０と文書タグ部３１４は任意の適切な方法を用いてトピックのモデル化とタグの選択を行う。図１０を参照して方法の例を説明する。
【００９７】
他の実施形態では、タギングモジュール３５は文書のパラグラフを分析してタグを付与する。上記の実施形態では、タギングモジュール３５は文書のパラグラフのタグ候補を特定する。タギングモジュール３５はタグ候補の、その文書の他のタグ候補との関係性を決定して、その関係性に応じてその文書のタグを選択する。文書のパラグラフを分析してタグを付与する方法の一例を、図１を参照してより詳しく説明する。
【００９８】
さらに別の実施形態では、タギングモジュール３５はユーザまたはコンピュータが選択した推奨タグに基づきタグを付与する。上記の実施形態では、タギングモジュール３５は文書に対するタグを推奨する。推奨される複数のタグは、目標タグとの類似性（affinity）が高いが、文書のオントロジー空間を減縮するために、推奨される他のタグとの類似性は低い。タギングモジュール３５はタグの選択に応じてタグの推奨を継続できる。タギングモジュール３５は、タグを選択し終わると、選択したタグを文書に付与する。タグの付与方法の一例を、図１２を参照して詳しく説明する。
【００９９】
図１０は、トピックスの統計的分布に応じてタグを付与する方法の一例を示す図である。統計的分布は多数のワードから生成されてもよい。任意の適切なワードの集合（universe）、例えばある言語またはコーパスのワードを用いる。あるトピックスに適したワードはその他のワードよりも相対的出現確率が高い。例えば、「自転車」というトピックについては、「タイヤ」、「チェーン」、「乗る」などのワードが、「レンガ」、「バケツ」、「ピザ」などのワードよりも相対的出現確率が高い。
【０１００】
上記方法はステップ４１０で開始し、コーパスの文書のタームを任意の適切なランキング方法を用いてランク付けする。ランキング方法の一例では、タームを頻度（例えば、ＴＦ（term  frequency）またはＴＦ−ＩＤＦ（term  frequency-inverse  document  frequency））によりランク付けする。頻度が高いとランキングが高くなる。ランキング方法の別の例では、タームの他のタームとの共起（co-occurrence）がランダムな場合より高い標準偏差によりタームをランク付けする。標準偏差が高いとランキングが高くなる。
ステップ４１４において、ランキングの高いタームをその文書のキーワードとして選択する。例としては、ランキングがトップＮ個のタームを用いる。Ｎは１乃至５、５乃至１０、または１０以上でもよい。他の例では、文書の平均ランキングより所定量（例えば標準偏差）上のタームを用いる。
【０１０１】
ステップ４１８において、キーワードに応じて文書をクラスター化する。クラスターはそのキーワードに関連付けられる。クラスターと関連するキーワードはそのクラスターのトピックである。文書がＮ個のキーワードを有するとき、その文書はＮ個のクラスターで表される。ステップ４２２において小さいクラスターを削除する。小さいクラスターは大きさの閾値を満たさない、例えば文書がＭ個未満のクラスターである。ここで、Ｍは０乃至５０、５０乃至１００、または２００以上であってもよい。ある例では、Ｍはコーパスの大きさから計算する。例えば、Ｍは０％乃至３％、３％乃至５％、または５％以上の範囲の値である。
【０１０２】
ステップ４２６においてクラスターの統計を集め、ステップ４２８においてその統計からクラスターの統計分布を作成する。任意の適切な統計を集めて任意の適切な統計分布（周波数分布や確率分布）を生成することができる。ある例では、クラスター中の各ワードについて、その頻度を示すＴＦ（term  frequency）を計算する。クラスター中のワードの出現数から、またはそのワードを含むクラスター中の文書数からＴＦを計算する。ＴＦからターム分布を作成する。他の例では、クラスターのトピックの他のクラスターのトピックスとの共起（co-occurrence）を示す共起値を他のクラスターのそれぞれに対して計算する。その共起値から共起分布を作成する。ステップ４３０において次のクラスターがあれば、ステップ４２６に戻り、次のクラスターの統計を収集する。ステップ４３０において次のクラスターが無ければ、ステップ４３４に進む。
【０１０３】
ステップ４３４において、統計的分布が類似するクラスターを統合する。統計的分布を比較して、類似するものは１つの頻度分布に統合する。例えば、「車」がトピックのクラスターと「自動車」がトピックのクラスターは統計分布が類似していれば、１つのクラスターに統合する。分布の差が閾値より小さいとき、統計的分布は類似するとみなす。差の閾値は任意の適切な値を有し、例えば、１％以下、５％乃至１０％、または１０％以上の範囲の値である。大きなクラスターのトピックを統合クラスターのトピックとして選択してもよい。
【０１０４】
ステップ４３８において、文書に、クラスターに基づきタグとしてトピックスを付与する。複数のクラスターを統合し、他のクラスターを削除するので、文書に付与するトピックスは変わっている可能性もある。トピックスを付与し直すことにより、その文書の情報をより表すが重複が少ないタグとなる。そして、本方法は終了する。コーパスの文書が更新された時に上記の方法を実行してもよい。
【０１０５】
ステップ４４２において文書にタグを付与する。文書タグ部３１４は任意の適切な方法で統計分布に応じて文書にタグを付与する。ある例では、ステップ４３８において、文書タグ部３１４はトピックスの再付与に応じてコーパス中の文書にタグを付与する。
他の例では、文書タグ部３１４は必ずしもコーパス中にない文書にタグを付与してもよい。統計分布を用いて文書の選択されたワードが高い出現確率を有するトピックスを特定し、特定したトピックスをタグとして選択する。上記の例では、文書タグ部３１４は、上で説明したように、任意の適切なランキング方法により文書のワードをランク付けする。ランキングが最も高いワードから始めて、文書タグ部３１４は各トピックスのワードの頻度をそのトピックスの統計分布から決定する。文書タグ部３１４は、そのワードが最も頻出率の高いトピックから、最も頻出率が低いトピックスまで、トピックスをランク付けする。トピックスに関するワードの統計的分布を作成する。
【０１０６】
上記の例では、文書タグ部３１４は、同様に、文書のその他のランキングが高いワードの統計的分布を作成する。ある例では、ワードの統計的分布を、例えば一様に、またはワードのランキングに応じて重み付けしてもよい。例えば、ランキングが高いワードの統計的分布は重みを大きくする。統計的分布を統合して統合した統計的分布を作成してもよい。ある実施形態では重み付けした統計的分布を合計する。例えば、トピックに関連する値を合計して、文書のランキングが高いワードが与えられたときにそのトピックの尤度（likelihood）を示す値を求める。文書タグ部３１４は文書のタグとして尤度の高い（likely）トピックスを付与する。
【０１０７】
図１１は、文書のパラグラフを分析してその文書にタグを付与する方法の一例を示す図である。この方法はマイクロ・アイデア、アイデア、及び仮説を含む文書に利用できる。ある実施形態では、マイクロ・アイデアは独立した自己完結的な表現単位である。関係する１つまたは複数のマイクロ・アイデアによりアイデアが形成される。関係する１つまたは複数のアイデアにより仮説が形成される。ある例では、文がマイクロ・アイデアを表し、段落がアイデアを表し、一連の関連する段落が仮説を表す。この例では、複数の段落が関連しており、その段落のコア・タームの有向類似性は比較的高い。コア・タームの共通集合をタグとして利用する。
【０１０８】
ステップ５０６でこの方法は始まり、分析するテキスト単位として文書の段落Ｐｉを特定する。段落は、任意の適切な一組の文字、ワード、または文である。文は、一定数または可変数のワード、段落マーク、またはクラスター化など任意の適切な方法で指定されたものである。段落は、大変複雑な多数のワードを含めて画成してもよい。
ステップ５１０において段落Ｐｉを選択する。ステップ５１４において、段落Ｐｉに対してタグｔｋのタグ候補集合Ｓｉ＝＜ｔ１，ｔ２．．．ｔｍ＞を決定（establish）する。ある実施形態では、ランキングが高いワードをタグ候補として選択する。（ワードは任意の適切なランキング方法でランク付けできる。）ある実施形態では、結果として望ましいタグ候補数に応じて、最初のタグ候補数を選択する。例えば、結果として望ましい数をｋとすると、最初の数はｃ＊ｋ（ｃ＞１）である。パラメータｃはｃ＝２，３，４または５など任意の適切な値でよい。ランキングが高いタグ候補を選択し、集合Ｓｉのルートｒｉとする。
【０１０９】
ステップ５１８において、タグ候補同士の関係性（relatedness）を任意の適切な関係性決定法により決定する。一般的に、関係性は任意の適切な方法で測定でき、例えば任意の適切な類似性を用いて測定してもよい。例えば、目標タグとの類似性が高い（more  affine）タグは関係性が高い（more  related）とし、目標タグとの類似性が低いタグは関係性が低いとする。ある実施形態では、タグを（例えば、有向類似性及び／または差分類似性を用いて）クラスター化し、クラスターとなったタグを関係性がある（related）とみなす。
【０１１０】
ステップ５２０において、タグ候補に優先重み（preference  weights）を付与する。優先重みは任意の適切なランキング方法により付与できる。例えば、段落中で頻度が高いタグ候補、及び／または文書中の平均類似性の逆数が大きいタグ候補に大きな優先重みをつける。ステップ５２４において、他のタグ候補との関係性が大きくないタグ候補をタグ候補集合から削除する。任意の適切な関係性閾値により、タグの他のタグとの関係性が大きいかどうかを指定できる。ステップ５３０において次の段落があるか判断する。次の段落があれば、ステップ５１０に戻って次の段落を選択する。次の段落が無ければ、ステップ５３４に進む。
【０１１１】
ステップ５３４において、別の段落のタグ候補集合の関係性を決定する。関係性（relatedness）は任意の適切な関係性決定法により決定できる。段落内分析の場合と同様に、ある実施形態では、タグ候補をクラスター化して、クラスターを形成するタグ候補は関係性が高い（sufficiently  related）と考える。他の実施形態では、各タグ候補に対して相関プロファイルを生成する。相関プロファイルはタグ候補の他のタグ候補（例えば、他のタグ候補集合のタグ）に対する相関性を示す。相関性が高いことは、関係性が高いことを表す。
【０１１２】
相関プロファイルは任意の適切な方法で算出することができる。ある例では、タグ候補の相関プロファイルをタグ候補を含むタグ候補集合の数から生成し、そのタグ候補集合におけるそのタグ候補の頻度を考慮に入れる。頻度が高く多くのタグ候補集合に出現するタグ候補の相関性は高い。
【０１１３】
他の例では、（ルートｒｊを有する）他の集合Ｓｊに対する（ルートｒｉを有する）集合Ｓｉのタグ候補の相関性プロファイルは、ルートｒｉとｒｊの有向類似性から決定できる。これらの例では、集合Ｓｉと集合Ｓｊのタグ候補の相関性の値は、そのタグ候補の優先重みに、集合Ｓｊにおけるルートｒｉ→ｒｊの有向類似性を乗ずることにより計算できる。タグ候補集合Ｓｊの相関性（co-relatedness）は、その集合の相関性値を結合（例えば、合計）することにより計算できる。
【０１１４】
さらに他の例では、（タグｔｊを有する）他の集合Ｓｊに対する集合Ｓｉのタグ候補ｔｉの相関性プロファイルは、タグｔｉとｔｊの有向類似性から決定できる。これらの例では、集合Ｓｉと集合Ｓｊのタグ候補の相関性値は、集合Ｓｊについてタグｔｉ→ｔｊの有向類似性を決定して、その有向類似性を合計することにより計算される。タグ候補と集合Ｓｊの相関性（co-relatedness）は、その集合の相関性値を結合することにより計算できる。
【０１１５】
ステップ５３８において、タグ候補からタグを選択する。ある実施形態では、他のタグ候補と関連性が最も高いタグ候補を選択する。ある例では、クラスターのランキングが最も高いタグ候補を選択する。他の例では、相関性プロファイル（co-relation  profiles）により相関性が最も高いタグ候補を選択する。選択したタグ数ｋは所定の定数でもよく、クエリータームの深さにより決まる値であってもよい。例えば、タームが深いクエリーでは、タグ数ｋを大きく、または小さくする。そして、本方法は終了する。
【０１１６】
図１２は、タグの選択に応じてタグを付与する方法の一例を示す図である。この方法はステップ４５０の最初の段階で開始する。最初の段階において、文書タグ部３１４は文書の目標タグとして最初のタグを受け取る。最初のタグは任意の適切なソース（source）から得られる。例えば、最初のタグはユーザまたはロジック（コンピュータなど）により入力される。ロジックは、その文書、ユーザに関連するその他の文書、その文書に対して選択されたその他のタグの分析結果から得られたタグを入力する。文書タグ部３１４はタグのソースを記録する。
【０１１７】
ある実施形態では、クライアント２０にグラフィカルユーザインターフェースを表示する。これにより、ユーザはその文書タグ部３１４とインターラクト（interact）できる。ある例では、ユーザはインターフェースによりタグの追加または削除を要求できる。他の例では、そのインターフェースは、タグが特定のタームを有すべき望ましい関係性の程度をユーザが示すことができるグラフィカル要素を含む。例えば、そのインターフェースはスライダーを含み、程度が高いことを示すためにそのスライダーをタームに近づけたり、程度が低いことを示すためにそのスライダーをそのタームから遠ざけたりできる。
【０１１８】
ステップ４５４の候補段階において、文書タグ部３１４はタグの入力に応じてタームを推奨する。推奨されるタームは、文書をオントロジー空間の最小値に関連づけるように選択される。例えば、推奨される複数のタームは、入力されたタグとの類似性は高いが、互いの類似性は低い。例えば、入力されたタグが「木」であれば、推奨されるタグは「植物」、「家族」、または「コンピュータサイエンス」である。
【０１１９】
推奨されるタームはオーバースペック（over  specification）やアンダースペック（under  specification）とならないものである。オーバースペックは、追加的な情報をあまり提供しないオントロジー的に冗長なタグを提供した結果である。例えば、文書のタグが「tree」と「woods」であるとき、「forest」を加えても追加的な情報をあまり提供できない。アンダースペックは文書を明確にしないタグを提供する結果生じる。例えば、文書のタグ「bank」では、その文書が金融機関を扱っているのか、川を扱っているのか、それともビルボードテーブルの列を扱っているのか分からない。
【０１２０】
ステップ４５８のテスト段階において、文書タグ部３１４は（例えばユーザによって）選択された推奨タームや選択または拒絶されていないタームをモニターする。例えば、文書タグ部３１４は「fluid」を受け取り、「adaptable」、「flexible」、「liquid」、「solution」及び「melted」を推奨する。文書タグ部３１４は「liquid」と「melted」が拒絶されたことを記録（note）するので、「solution」は推奨しない。選択されたタームを目標タグの集合に追加する。
【０１２１】
ある実施形態では、文書タグ部３１４は、ユーザやロジック（コンピュータ等）などであるタグのソースを記録する。ソースは任意の適切なアプリケーションを有する。例えば、ソースは検索結果のランク付けに用いられる。一例では、ユーザが選択したタグを含む検索結果はロジックが生成したタグを含む結果よりも高くランク付けされる。
【０１２２】
ステップ４６２における発展段階では、文書タグ部３１４は推奨されたタームと選択されたタームとの差を評価して、新しいタームを推奨する。文書タグ部３１４は、選択されたタームとの類似性（例えば有向類似性や差分類似性）が高いターム、または拒絶されたタームとの類似性が低いタームを推奨し、拒絶されたタームとの類似性が高いタームや選択されたタームとの類似性が低いタームは推奨しない。ある実施形態では、文書タグ部３１４はオントロジー的に冗長なタグは削除する。タグは、任意の適切な繰り返し回数（例えば、１回乃至５回、６回乃至１０回、１０回以上）で推奨及び選択される。
【０１２３】
ステップ４６６の付与段階で、文書タグ部３１４は文書にタグを付与（assign）する。ある実施形態では、文書タグ部３１４はテスト段階に応じて、またはテスト段階とは関わりなく最初のタグに応じて、タグを付与する。そして、本方法は終了する。
【０１２４】
本発明の範囲から逸脱することなく、本方法に修正、追加、または削除をすることができる。本方法に含まれるステップはこれより多くても少なくてもよく、他のステップが含まれてもよい。また、ステップを好適な任意の順序で実行してもよい。
【０１２５】
ある実施形態では、上記の方法を実行して、タグではなく検索タームを選択してもよい。この明細書に含まれる説明、特にタグの付与方法の説明において、「タグ」を「検索ターム」で置き換えて上記の実施形態を説明することもできる。
【０１２６】
例えば、一方法は最初の段階で開始する。その最初の段階では、最初の検索タームを受け取り、検索の目標検索タームとする。この最初の検索タームはユーザまたはロジック（コンピュータなど）である任意の適切なソースから入力される。候補段階において、入力された検索タームに応じてタームを推奨する。推奨されるタームは、検索をオントロジー空間の最小値に関連づけるように選択される。テスト段階において、（例えばユーザによって）選択された推奨タームや選択または拒絶されていないタームをモニターする。発展段階において、推奨タームと、新しいタームを推奨するために選択されたタームとの間の差異を評価する。検索タームは、任意の適切な繰り返し回数（例えば、１回乃至５回、６回乃至１０回、１０回以上）で推奨及び選択される。検索タームを、選択された検索タームに応じて選択してもよい。
【０１２７】
本発明の範囲から逸脱することなく、本方法に修正、追加、または削除をすることができる。本方法に含まれるステップはこれより多くても少なくてもよく、他のステップが含まれてもよい。また、ステップを好適な任意の順序で実行してもよい。
【０１２８】
本発明の実施形態により以下の技術的有利性がもたらされる。一実施形態の技術的優位性は、例えばユーザによりなされた選択に応じてタグを付与することである。文書のオントロジー空間を減縮するタグをユーザに推奨する。ユーザは推奨されたタグから選択でき、その選択に基づいて、より多くのタグを推奨してもよい。テキストを含む文書のみならず、テキストを含まない文書にもタグを付与することができる。
【０１２９】
本開示を実施形態に関して説明したが、これらの実施形態の変形や置き換えは当業者には明らかであろう。従って、上記の実施形態の説明は本開示を限定するものではない。特許請求の範囲に記載した本開示の精神と範囲から逸脱せずに、その他の変更、置き換え、改変も可能である。
【０１３０】
上記の実施形態に関して以下の付記を記載する。
（付記１）  有体媒体に記憶された文書にアクセスする段階と、
前記文書に対する一組の目標タグを受け取る段階と、
複数のタームを選択する段階であって、前記文書のオントロジー空間を減縮するようにタームを選択する段階と、
前記タームをタグとして推奨するコンピュータに前記タームを送る段階とを含む方法。
（付記２）  前記複数のタームを選択する段階は、類似性に応じて前記複数のタームを選択する段階であって、目標タグとの類似性が高く、その他のタームとの類似性が低いタームを選択する段階を含む、付記１に記載の方法。
（付記３）  前記推奨されたタームのうちの１つ以上のタームの選択を受け取る段階と、
前記選択された１つ以上のタームを前記目標タグの集合に追加する段階と、
前記目標タグの集合により次の複数のタームを選択する段階とをさらに含む、付記１に記載の方法。
（付記４）  前記推奨されたタームのうちの１つ以上のタームの選択を受け取る段階と、
前記選択された１つ以上のタームとの類似度が高い次の複数のタームを選択する段階とをさらに含む、付記１に記載の方法。
（付記５）  前記推奨されたタームのうちの１つ以上のタームの選択を受け取る段階と、
拒絶された１つ以上のタームを特定する段階と、
前記拒絶された１つ以上のタームとの類似度が低い次の複数のタームを選択する段階とをさらに含む、付記１に記載の方法。
（付記６）  前記文書の前記目標タグの集合にアクセスする段階は、
ユーザ入力とコンピュータ分析とよりなるグループから選択されたソースから前記目標タグの集合の一目標タグを受け取る段階と、
前記目標タグの前記ソースを記録する段階とをさらに含む、
付記１に記載の方法。
（付記７）  前記目標タグの集合の各目標タグのソースを決定（establish）する段階と、
目標タグと関連する複数の検索結果を検索する段階と、
前記目標タグのソースに応じて前記検索結果をランク付けする段階とをさらに含む、
付記１に記載の方法。
（付記８）  前記目標タグの集合から冗長タームを削除する段階をさらに含む、
付記１に記載の方法。
（付記９）  タグが特定のタームに対して有すべき要求される関係性の程度を受け取るグラフィカル要素を表示する段階をさらに含む、付記１に記載の方法。
（付記１０）  前記目標タグに対応するクラスターから目標タグとの類似性が高いタームを特定することにより、類似性に応じて前記複数のタームを選択する段階をさらに含む、
付記１に記載の方法。
（付記１１）  類似性に応じて前記複数のタームを選択する段階であって、前記類似性は、類似性、平均類似性、有向類似性、及び差分類似性よりなるグループから選択した１つ以上の類似性を含む段階を含む、付記１に記載の方法。
（付記１２）  実行したとき、
有体媒体に記憶された文書にアクセスする段階と、
前記文書に対する一組の目標タグを受け取る段階と、
複数のタームを選択する段階であって、前記文書のオントロジー空間を減縮するようにタームを選択する段階と、
前記タームをタグとして推奨するコンピュータに前記タームを送る段階と
を実行するソフトウェアをエンコードしたコンピュータ読み取り可能有体媒体。
（付記１３）  前記ソフトウェアは、類似性に応じて前記複数のタームを選択する段階であって、目標タグとの類似性が高く、その他のタームとの類似性が低いタームを選択する段階により複数のタームを選択する、付記１２に記載のコンピュータ読み取り可能有体媒体。
（付記１４）  前記ソフトウェアは実行されたとき、
前記推奨されたタームのうちの１つ以上のタームの選択を受け取る段階と、
前記選択された１つ以上のタームを前記目標タグの集合に追加する段階と、
前記目標タグの集合により次の複数のタームを選択する段階と
を実行する、付記１２に記載のコンピュータ読み取り可能有体媒体。
（付記１５）  前記ソフトウェアは実行されたとき、
前記推奨されたタームのうちの１つ以上のタームの選択を受け取る段階と、
前記選択された１つ以上のタームとの類似度が高い次の複数のタームを選択する段階と
を実行する、付記１２に記載のコンピュータ読み取り可能有体媒体。
（付記１６）  前記ソフトウェアは実行されたとき、
前記推奨されたタームのうちの１つ以上のタームの選択を受け取る段階と、
拒絶された１つ以上のタームを特定する段階と、
前記拒絶された１つ以上のタームとの類似度が低い次の複数のタームを選択する段階と
をさらに実行する、付記１２に記載のコンピュータ読み取り可能有体媒体。
（付記１７）  前記ソフトウェアは
ユーザ入力とコンピュータ分析とよりなるグループから選択されたソースから前記目標タグの集合の一目標タグを受け取る段階と、
前記目標タグの前記ソースを記録する段階と
により前記文書の前記目標タグの集合にアクセスする、付記１２に記載のコンピュータ読み取り可能有体媒体。
（付記１８）  前記ソフトウェアは実行されたとき、
前記目標タグの集合の各目標タグのソースを決定（establish）する段階と、
目標タグと関連する複数の検索結果を検索する段階と、
前記目標タグのソースに応じて前記検索結果をランク付けする段階と
をさらに実行する、付記１２に記載のコンピュータ読み取り可能有体媒体。
（付記１９）  前記ソフトウェアは実行されたとき、前記目標タグの集合から冗長タームを削除する段階をさらに実行する、付記１２に記載のコンピュータ読み取り可能有体媒体。
（付記２０）  前記ソフトウェアは実行されたとき、タグが特定のタームに対して有すべき要求される関係性の程度を受け取るグラフィカル要素を表示する段階をさらに実行する、付記１２に記載のコンピュータ読み取り可能有体媒体。
（付記２１）  前記ソフトウェアは、実行されたとき、前記目標タグに対応するクラスターから目標タグとの類似性が高いタームを特定する段階により類似性に応じて前記複数のタームを選択する、付記１２に記載のコンピュータ読み取り可能有体媒体。
（付記２２）  前記ソフトウェアは、実行されたとき、類似性に応じて前記複数のタームを選択し、前記類似性は、類似性、平均類似性、有向類似性、及び差分類似性よりなるグループから選択した１つ以上の類似性をさらに含む、付記１２に記載のコンピュータ読み取り可能有体媒体。
（付記２３）  検索のための一組の目標検索タームを受け取る段階と、
複数の候補タームを選択する段階であって、前記検索のオントロジー空間を減縮するように候補タームを選択する段階と、
前記候補タームを検索タームとして推奨するコンピュータに前記候補タームを送る段階とを含む方法。
（付記２４）  前記複数の候補タームを選択する段階は、類似性に応じて前記複数の候補タームを選択する段階であって、目標検索タームとの類似性が高く、その他のタームとの類似性が低い候補タームを選択する段階を含む、付記２３に記載の方法。
（付記２５）  前記候補タームのうちの１つ以上のタームの選択を受け取る段階と、
前記選択された１つ以上のタームを前記目標検索タームの集合に追加する段階と、
前記目標検索タームの集合により次の複数のタームを選択する段階と
を含む、付記２３に記載の方法。
（付記２６）  前記候補タームのうちの１つ以上のタームの選択を受け取る段階と、
前記選択された１つ以上のタームとの類似度が高い次の複数のタームを選択する段階とをさらに含む、付記２３に記載の方法。
（付記２７）  前記候補タームのうちの１つ以上のタームの選択を受け取る段階と、
拒絶された１つ以上のタームを特定する段階と、
前記拒絶された１つ以上のタームとの類似度が低い次の複数のタームを選択する段階とをさらに含む、付記２３に記載の方法。
（付記２８）  前記検索のための前記目標検索タームの集合を受け取る段階は、
ユーザ入力とコンピュータ分析とよりなるグループから選択されたソースから前記目標検索タームの集合の一目標検索タームを受け取る段階と、
前記目標検索タームの前記ソースを記録する段階と、
をさらに含む、付記２３に記載の方法。
（付記２９）  前記目標検索タームの集合の各目標検索タームのソースを決定（establish）する段階と、
目標検索タームと関連する複数の検索結果を検索する段階と、
前記目標検索タームのソースに応じて前記検索結果をランク付けする段階とをさらに含む、付記２３に記載の方法。
（付記３０）  前記目標検索タームの集合から冗長タームを削除する段階をさらに含む、付記２３に記載の方法。
（付記３１）  候補タームが検索タームに対して有すべき要求される関係性の程度を受け取るグラフィカル要素を表示する段階をさらに含む、付記２３に記載の方法。
（付記３２）  前記目標検索タームに対応するクラスターから目標検索タームとの類似性が高い候補タームを特定する段階により、前記複数の候補タームを選択する段階をさらに含む、付記２３に記載の方法。
（付記３３）  類似性に応じて前記複数の候補タームを選択する段階であって、前記類似性は、類似性、平均類似性、有向類似性、及び差分類似性よりなるグループから選択した１つ以上の類似性をさらに含む段階を含む、付記２３に記載の方法。
（付記３４）  実行したとき
検索のための一組の目標検索タームを受け取る段階と、
複数の候補タームを選択する段階であって、前記検索のオントロジー空間を減縮するように候補タームを選択する段階と、
前記候補タームを検索タームとして推奨するコンピュータに前記候補タームを送る段階と
を実行するソフトウェアをエンコードしたコンピュータ読み取り可能有体媒体。
（付記３５）  前記ソフトウェアは、
類似性に応じて前記複数の候補タームを選択する段階であって、目標検索タームとの類似性が高く、その他のタームとの類似性が低い候補タームを選択する段階により複数の候補タームを選択する、付記３４に記載のコンピュータ読み取り可能有体媒体。
（付記３６）  前記ソフトウェアは実行されたとき、
前記候補タームのうちの１つ以上のタームの選択を受け取る段階と、
前記選択された１つ以上のタームを前記目標検索タームの集合に追加する段階と、
前記目標検索タームの集合により次の複数のタームを選択する段階とを含む、
付記３４に記載のコンピュータ読み取り可能有体媒体。
（付記３７）  前記ソフトウェアは実行されたとき、
前記候補タームのうちの１つ以上のタームの選択を受け取る段階と、
前記選択された１つ以上のタームとの類似度が高い次の複数のタームを選択する段階とを実行する、付記３４に記載のコンピュータ読み取り可能有体媒体。
（付記３８）  前記ソフトウェアは実行されたとき、
前記候補タームのうちの１つ以上のタームの選択を受け取る段階と、
拒絶された１つ以上のタームを特定する段階と、
前記拒絶された１つ以上のタームとの類似度が低い次の複数のタームを選択する段階とをさらに実行する、付記３４に記載のコンピュータ読み取り可能有体媒体。
（付記３９）  前記ソフトウェアは
ユーザ入力とコンピュータ分析とよりなるグループから選択されたソースから前記目標検索タームの集合の一目標検索タームを受け取る段階と、
前記目標検索タームの前記ソースを記録する段階と
により前記検索の前記目標検索タームの集合を受け取る、付記３４に記載のコンピュータ読み取り可能有体媒体。
（付記４０）  前記ソフトウェアは実行されたとき、
前記目標検索タームの集合の各目標検索タームのソースを決定（establish）する段階と、
目標検索タームと関連する複数の検索結果を検索する段階と、
前記目標検索タームのソースに応じて前記検索結果をランク付けする段階とをさらに実行する、付記３４に記載のコンピュータ読み取り可能有体媒体。
（付記４１）  前記ソフトウェアは実行されたとき、
前記目標検索タームの集合から冗長タームを削除する段階をさらに実行する、付記３４に記載のコンピュータ読み取り可能有体媒体。
（付記４２）  前記ソフトウェアは実行されたとき、
候補タームが検索タームに対して有すべき要求される関係性の程度を受け取るグラフィカル要素を表示する段階をさらに含む、付記３４に記載のコンピュータ読み取り可能有体媒体。
（付記４３）  前記ソフトウェアは、実行されたとき、
前記目標検索タームに対応するクラスターから目標検索タームとの類似性が高い候補タームを特定する段階により類似性に応じて前記複数の候補タームを選択する、付記３４に記載のコンピュータ読み取り可能有体媒体。
（付記４４）  前記ソフトウェアは、実行されたとき、類似性に応じて前記複数の候補タームを選択し、前記類似性は、類似性、平均類似性、有向類似性、及び差分類似性よりなるグループから選択した１つ以上の類似性をさらに含む、付記３４に記載のコンピュータ読み取り可能有体媒体。
【図面の簡単な説明】
【０１３１】
【図１】文書のタグを選択するシステムの一実施形態を示す図である。
【図２】図１のシステムで利用できる類似性モジュールの一実施形態を示すブロック図である。
【図３】基本類似性を記録する類似性マトリックスの一例を示す図である。
【図４】基本類似性を記録する類似性マトリックスの一例を示す図である。
【図５】平均類似性を記録する類似性マトリックスの一例を示す図である。
【図６】類似性グラフの一例を示す図である。
【図７】図１のシステムで使用できるクラスターリングモジュールの一実施形態を示す図である。
【図８】図１のシステムで利用できるオントロジー特性モジュールの一実施形態を示すブロック図である。
【図９】図１のシステムで使用できるタギングモジュールの一実施形態を示す図である。
【図１０】トピックの統計的分布の決定方法の一例を示す図である。
【図１１】文書のパラグラフを分析してその文書にタグを割り当てる方法の一例を示す図である。
【図１２】タグの選択に応じてタグを割り当てる方法の一例を示す図である。
【符号の説明】
【０１３２】
２０  クライアント
２２  サーバ
２４  メモリ
２６  ディシジョン・ダイアグラム・エンジン
３０  類似性モジュール
３１  クラスタリングモジュール
３２  オントロジー特性モジュール
３４  類似性計算器
３５  タギングモジュール
３８  オントロジー生成器
４２  類似性マトリックス生成器
４６  類似性グラフ生成器
４８  ワード推奨器
５０  ページ
５４  レコード
５８  インデックス
６２  逆インデックス
６６  オントロジー
６７  クラスター
２１０  クラスタリングエンジン
２１４  クラスタ分析器
２３０  深さエンジン
２４０  テーマエンジン
２４４  具体性エンジン
２５０  オントロジー特性アプリケーションモジュール
３１０  トピックモデル部
３１４  タグ部
【図１】
0005391633.tif 000011
【図２】
0005391633.tif 000012
【図３】
0005391633.tif 000013
【図４】
0005391633.tif 000014
【図５】
0005391633.tif 000015
【図６】
0005391633.tif 000016
【図７】
0005391633.tif 000017
【図８】
0005391633.tif 000018
【図９】
0005391633.tif 000019
【図１０】
0005391633.tif 000020
【図１１】
0005391633.tif 000021
【図１２】
0005391633.tif 000022