[go: up one dir, main page]

JP2006018829A - Automated classification generation - Google Patents

Automated classification generation Download PDF

Info

Publication number
JP2006018829A
JP2006018829A JP2005184985A JP2005184985A JP2006018829A JP 2006018829 A JP2006018829 A JP 2006018829A JP 2005184985 A JP2005184985 A JP 2005184985A JP 2005184985 A JP2005184985 A JP 2005184985A JP 2006018829 A JP2006018829 A JP 2006018829A
Authority
JP
Japan
Prior art keywords
document
node
training
terms
term
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2005184985A
Other languages
Japanese (ja)
Other versions
JP2006018829A5 (en
JP4141460B2 (en
Inventor
Christopher B Weare
ビー.ウェアー クリストファー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2006018829A publication Critical patent/JP2006018829A/en
Publication of JP2006018829A5 publication Critical patent/JP2006018829A5/ja
Application granted granted Critical
Publication of JP4141460B2 publication Critical patent/JP4141460B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/36Creation of semantic tools, e.g. ontology or thesauri
    • G06F16/367Ontology
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99935Query augmenting and refining, e.g. inexact access
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99942Manipulating data structure, e.g. compression, compaction, compilation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99943Generating database or data structure, e.g. via user interface

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Animal Behavior & Ethology (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To structure the categories of information as a binary tree with the nodes of the binary tree containing information relevant to the search, in a hierarchical classification of document. <P>SOLUTION: The binary tree is trained or formed by examining a training set of documents and separating those documents into two child nodes. Each of those sets of documents is then further split into two nodes to create binary tree data structure. The nodes are generated to maximize the likelihood that all of the training documents are in either or both of the two child nodes. In one example, each node of the binary tree may be associated with a list of terms and each term in each list of terms is associated with a probability of that term appearing in a document given that node. New documents may be categorized by the nodes of the tree. For example, the new documents may be assigned to a particular node based upon the statistical similarity between that document and the associated node. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本出願は分類生成を対象とし、より詳細には、文書の自動分類生成を対象とする。   This application is directed to classification generation, and more specifically to automatic classification generation of documents.

対象の特定の文書を見つけるために、コンピュータユーザは、クエリエンジンによる電子検索を行って文書の集まりを探すことができる。しかし、インターネット上のWebページや文書データベースなどの文書の集まりの一部は、一般にユーザによって示されたクエリ用語に基づいて多数の文書をユーザに戻す場合もある。取り出された文書のばらつきに対処するために、結果または文書へのリンクを、日付、人気、検索用語との類似度によってさらにソートまたはフィルタ処理し、かつ/または手動で導出された階層型分類(hierarchical taxonomy)に従ってカテゴリ化することができる。さらに、または代わりに、ユーザは特定のカテゴリを選択して、検索をそのカテゴリ内の文書に制限することができる。   To find a specific document of interest, a computer user can perform an electronic search with a query engine to find a collection of documents. However, some collections of documents, such as web pages and document databases on the Internet, may return a large number of documents to the user based on query terms generally indicated by the user. To address variations in retrieved documents, results or links to documents are further sorted or filtered by date, popularity, similarity to search terms, and / or manually derived hierarchical classification ( categorization according to hierarchical taxonomy). Additionally or alternatively, the user can select a particular category and limit the search to documents within that category.

一般に、階層型分類(またはテキスト分類)は、予め定められた1組のカテゴリ内の文書をどのように分類するかに関する専門知識をコード化する1組のルールを手動で定義することによって生成される。マシンで増強された分類生成(Machine augmented taxonomy generation)は、一般に制御された辞書を手動で維持し、文書に関連付けられ、制御された辞書内にある割り当てられたキーワードまたはメタデータに基づいて文書をソートすることに依存していた。   In general, a hierarchical classification (or text classification) is generated by manually defining a set of rules that encodes expertise on how to classify documents within a predetermined set of categories. The Machine augmented taxonomy generation generally maintains manually controlled dictionaries and associates documents with documents based on assigned keywords or metadata in the controlled dictionaries. Relied on sorting.

Hofmann, "Probabilistic Latent Semantic Indexing," Proceedings of the 22nd Int'l SIGR Conference on Research and Development in Information Retrieval, pp. 50-57, August 15-19, 1999, Berkeley, CAHofmann, "Probabilistic Latent Semantic Indexing," Proceedings of the 22nd Int'l SIGR Conference on Research and Development in Information Retrieval, pp. 50-57, August 15-19, 1999, Berkeley, CA Zhai他、 "A study of smoothing methods for language information retrieval," ACM Transactions, Vol. 22, No. 2, April 2004, pp. 179-214Zhai et al., "A study of smoothing methods for language information retrieval," ACM Transactions, Vol. 22, No. 2, April 2004, pp. 179-214 Viterbi, "Error bounds for convolutional codes and an asymptotically optical decoding algorithm," IEEE Trans. Information Theory, IT-13, pp. 260-269, 1967Viterbi, "Error bounds for convolutional codes and an asymptotically optical decoding algorithm," IEEE Trans. Information Theory, IT-13, pp. 260-269, 1967

カテゴリ、および制御された辞書を生成し、維持する際にマンパワーが必要なため、手動による分類、またはマシンにより増強された分類を作成し、維持するコストは高価である。さらに、ソートされる内容の性質または内容自体は、非常に頻繁に変更される可能性があるので、分類を手動で適合させることは、制御された辞書で増強されたとしても、実用的ではない。   Because manpower is required to create and maintain categories and controlled dictionaries, the cost of creating and maintaining manual classification or machine-enhanced classification is expensive. In addition, the nature of the content being sorted or the content itself can change very often, so manually adapting the classification is not practical, even if augmented with a controlled dictionary. .

読者に基本的な理解を提供するために、以下に本開示の簡単な概略を示す。この概要は、本開示の網羅的または限定的な概説ではない。この概要は、本発明の主な、かつ/または重要な要素を識別したり、本発明の範囲を画定したり、何らかの方法で本発明の範囲を限定したりするために提供されているわけではない。単に、後述するより詳細な説明の導入として、開示した概念の一部を簡略化した形式で提示するためのものである。   In order to provide the reader with a basic understanding, a brief summary of the present disclosure is provided below. This summary is not an exhaustive or limiting overview of the disclosure. This summary is not provided to identify key and / or important elements of the invention, to define the scope of the invention, or to limit the scope of the invention in any way. Absent. Its sole purpose is to present some disclosed concepts in a simplified form as a prelude to the more detailed description that is discussed later.

カテゴリ、および制御された辞書を生成し、維持する際にマンパワーが必要なため、手動による分類、またはマシンにより増強された分類を作成し、維持するコストは高価である。さらに、ソートされる内容の性質または内容自体は、非常に頻繁に変更される可能性があるので、分類を手動で適合させることは、制御された辞書で増強されたとしても、実用的ではない。   Because manpower is required to create and maintain categories and controlled dictionaries, the cost of creating and maintaining manual classification or machine-enhanced classification is expensive. In addition, the nature of the content being sorted or the content itself can change very often, so manually adapting the classification is not practical, even if augmented with a controlled dictionary. .

階層型分類またはテキスト分類の構造を自動的に生成するために、任意の外的知識なしに文書を分類することができる。すなわち、文書自体から抽出された知識のみに基づいて文書を分類することができる。後述する階層型分類では、情報の関連のカテゴリを、検索に関連する情報を含むバイナリツリーのノードを含むバイナリツリーとして構成することができる。バイナリツリーは、1組の訓練文書を検査し、こうした文書を2つの子ノードに分けることによって「訓練」または形成することができる。次いでこうした文書の組のそれぞれをさらに2つのノードに分割して、バイナリツリーデータ構造を作成することができる。ノードは、訓練文書のすべてが2つのノードのいずれかまたは両方にある尤度を最大にするように生成することができる。一例では、バイナリツリーの各ノードは、用語のリストに関連付けることができ、用語の各リスト内の各用語は、そのノードが与えられた文書にその用語が出現する確率に関連付けられる。新しい文書が加わると、こうした文書を、その文書と関連のノードとの間の統計的類似度に基づいて特定のノードに割り当てることができる。   Documents can be classified without any external knowledge to automatically generate a hierarchical or text classification structure. That is, it is possible to classify a document based only on knowledge extracted from the document itself. In the hierarchical classification described below, a related category of information can be configured as a binary tree including nodes of a binary tree including information related to search. A binary tree can be “trained” or formed by examining a set of training documents and splitting them into two child nodes. Each such set of documents can then be further divided into two nodes to create a binary tree data structure. Nodes can be generated to maximize the likelihood that all of the training documents are in either or both of the two nodes. In one example, each node of the binary tree can be associated with a list of terms, and each term in each list of terms is associated with the probability that the term will appear in the document given that node. As new documents are added, such documents can be assigned to specific nodes based on the statistical similarity between the document and the associated node.

特定のノードに関連付けられている文書は、ノードの割当に基づいて取り出すことができ、例えば、指定されたクエリ用語に一致するノードを探すことによってあるノードの文書を取り出すことができる。一部の場合、ユーザによるクエリに応答して選択された文書を戻すために、検索エンジンによって一般の逆引きインデックスを使用する場合もある。検索結果内の文書のばらつきの問題に対処するために、クエリエンジンは、関連するノードに基づいて選択された文書をソートし、クラスタ化し、かつ/またはフィルタ処理することができる。検索を拡大するには、関連のノードからの追加の文書を戻すことができる。   A document associated with a particular node can be retrieved based on the node assignment, for example, a node's document can be retrieved by looking for a node that matches a specified query term. In some cases, a general reverse index may be used by a search engine to return selected documents in response to a query by a user. To address the issue of document variability in search results, the query engine can sort, cluster, and / or filter selected documents based on the associated nodes. To expand the search, additional documents from related nodes can be returned.

上記の態様および付随する本発明の利点の多くは、以下の詳細な説明を添付の図面と併せ読めば、より容易に理解でき、またより良く了解できよう。   Many of the above aspects and attendant advantages of the present invention will be more readily understood and better understood when the following detailed description is read in conjunction with the accompanying drawings.

バイナリツリーとして示したブランチ/ノードの分類は、一種の階層型分類である。図1は、バイナリツリー150を示している。サブジェクトノード154は、対象のノードを表す。インターネット検索エンジンの文脈で、サブジェクトノード154は、ユーザのクエリに十分類似した1つのカテゴリを表すか、クエリ用語に一致する文書の位置であり得る。親ノード153は、サブジェクトノード154より1レベル高い(または1カテゴリ広い)ノードであり、祖父(母)ノード151は、サブジェクトノード154より2レベル高い(または2カテゴリ広い)。子ノード156、158は、サブジェクトノード154より1レベル低いノードであり、孫ノード157、159、160、161は、サブジェクトノード154より2レベル低い。兄弟ノード155は、サブジェクトノード154と等しいレベルにあり、同じ親ノードに関連付けられているノードである。両方の方向に、さらに「曾」ノード(図示せず)のレベルも存在し得る(曾祖父(母)、曾曾孫など)。図1に示すように、祖父(母)ノード151は、ルートノード、すなわちバイナリツリー150において最もレベルの高いノードである。バイナリツリーは、バランスがとれていてもとれていなくてもよいが、バイナリツリーの性質では、各ノードには子がちょうど2つあるか、子がないかのいずれかである必要がある。   The branch / node classification shown as a binary tree is a kind of hierarchical classification. FIG. 1 shows a binary tree 150. The subject node 154 represents a target node. In the context of an Internet search engine, subject node 154 may represent a category that is sufficiently similar to the user's query or may be the location of a document that matches the query term. The parent node 153 is a node that is one level higher (or one category wider) than the subject node 154, and the grandfather (mother) node 151 is two levels higher (or two categories wider) than the subject node 154. The child nodes 156 and 158 are nodes that are one level lower than the subject node 154, and the grandchild nodes 157, 159, 160, and 161 are two levels lower than the subject node 154. Sibling node 155 is a node that is at the same level as subject node 154 and is associated with the same parent node. There may also be levels of “曾” nodes (not shown) in both directions (great-grandfather (mother), great-grandchild, etc.). As shown in FIG. 1, the grandfather (mother) node 151 is the root node, that is, the highest level node in the binary tree 150. The binary tree does not have to be balanced, but the nature of the binary tree requires that each node has either exactly two children or no children.

訓練セット内の文書は、任意の適したソースを使用して選択することができる。例えば、文書のバッチは、カテゴリ化されることが望まれる場合がある。ツリーを訓練するために、カテゴリ化すべき文書の少なくとも一部分を1組の訓練文書として選択することができる。追加の、または別の訓練文書を、ニュース文書用のReuters(登録商標)コレクション、医薬文書用のOHSUMED(商標)コレクション、書き込まれたニュースグループメッセージ用の20Newsgroups(商標)コレクション、およびニュース文書用のAP(商標)コレクションを含むベンチマークコレクションから選択することができる。   Documents in the training set can be selected using any suitable source. For example, a batch of documents may be desired to be categorized. To train the tree, at least a portion of the documents to be categorized can be selected as a set of training documents. Additional or separate training documents for the Reuters® collection for news documents, the OHSUMED ™ collection for pharmaceutical documents, the 20 Newgroups ™ collection for written newsgroup messages, and news documents You can choose from benchmark collections including AP ™ collections.

図2に示すように、1組の訓練文書210は、各文書内の用語など、1組の訓練文書からの外的情報に基づいてバイナリ階層型分類ツリーを生成するツリー生成器220に入力される。したがって、訓練文書を検査して、すべての訓練文書内の用語に基づいて1組の訓練用語を決定することができる。   As shown in FIG. 2, a set of training documents 210 is input to a tree generator 220 that generates a binary hierarchical classification tree based on external information from the set of training documents, such as terms in each document. The Thus, the training documents can be examined to determine a set of training terms based on the terms in all training documents.

ツリーの訓練に使用される用語は、任意の適した方法を使用して、選択された訓練文書内から選択することができる。図3は、図2のツリー生成器220の一例を示している。ツリー生成器220は、ツリーの訓練に使用する訓練用語320のベクトルまたはリストを決定するために用語生成器310を含み得る。例えば、ナイーブベイズの仮定の下では、各文書は、統計的に関連のない用語の集まりとして扱われるため、ナイーブベイズの仮定の下で、各訓練文書を用語のリストまたはベクトルとして扱うことができる。   The terms used for training the tree can be selected from within the selected training document using any suitable method. FIG. 3 shows an example of the tree generator 220 of FIG. Tree generator 220 may include term generator 310 to determine a vector or list of training terms 320 to use for training the tree. For example, under Naive Bayes assumptions, each document is treated as a collection of statistically unrelated terms, so under Naive Bayes assumptions, each training document can be treated as a list or vector of terms .

ツリーの訓練に使用される用語は、各用語の出現の累計回数に基づいて、すべての文書に出現するすべての用語から選択することができる。ツリーを訓練する用語は、多数の文書内に出現し、かつ/または特定の文書にしばしば出現する可能性がある。さらに、用語生成器は、ツリーを訓練するために選択された用語が文書の訓練における有効度がより低いと確認されていないことを確実にするために、予め定められた排除用語のリストにアクセスしてもよい。例えば、前置詞、冠詞、および/または代名詞などの用語は、ほとんどの文書にしばしば出現するが、分類ツリーを訓練するための用語として最適ではない場合がある。さらに、排除用語リストは、使用可能なストップリストからアクセスすることができる。排除用語は、ヒューリスティックス、訓練用語の過去の性能を含む任意の方法を使用し、かつ1組の訓練文書内の各文書において用語の出現が実質的に同じである場合に生成することができる。   The terms used for training the tree can be selected from all terms appearing in all documents based on the cumulative number of occurrences of each term. The term to train the tree can appear in many documents and / or often appear in a particular document. In addition, the term generator accesses a predefined list of excluded terms to ensure that the terms selected to train the tree have not been confirmed to be less effective in training the document. May be. For example, terms such as prepositions, articles, and / or pronouns often appear in most documents, but may not be optimal terms for training a classification tree. In addition, the exclusion term list can be accessed from an available stop list. Exclusion terms can be generated using any method, including heuristics, past performance of training terms, and where the occurrences of terms are substantially the same in each document within a set of training documents.

一部の場合、計算の効率のためにシステムの訓練に使用される用語の数を限定することが有益となり得る。一般に、訓練文書の集成の性質に応じてNが10,000から100,000にわたる場合、何らかの実用的な測定に従って、上位N個の用語が訓練用語として選択される。最も簡単な2つの測定値は、資料内で使用されている単語の数(用語数)、および単語を含む文書の数(文書数)である。別の有用な測定は、これらの測定値の両方を結合する。例えば、所与の用語の実用的な測定は、用語数の2乗を文書数で割ったものになり得る。   In some cases it may be beneficial to limit the number of terms used to train the system for computational efficiency. In general, if N ranges from 10,000 to 100,000, depending on the nature of the training document assembly, the top N terms are selected as training terms according to some practical measurement. The two simplest measurements are the number of words used in the material (number of terms) and the number of documents containing the word (number of documents). Another useful measurement combines both of these measurements. For example, a practical measure of a given term can be the term number squared divided by the number of documents.

図3に示すように、用語生成器310は、1組の訓練文書210を受信し、各文書内の各用語の出現回数を数え、用語を含む訓練セット内のすべての文書のこうした数を累積する。用語の出現回数(用語数)の2乗を用語を含む文書数(文書数)で割ったものが大きい場合、用語は訓練文書内で頻繁に使用されている。逆に、用語の出現回数の2乗を文書数で割ったものが小さい場合、用語は時々しか使用されていないか、しばしば使用されている場合、用語は各文書内に2、3回しか出現しない。相対頻度を計算する様々な方法を含めて、訓練用語を選択する他の方法も適しており、かつ/または単一の用語として数えられる句を形成するために複数の単語をトークン化することができる。選択された用語は、図3に示すように、用語のベクトル320としてデータストア内に格納することができる。用語のベクトル320は、データストア内で、バイナリツリーの現在のノード(第1の反復でルートノードである)に関連付けることができる。   As shown in FIG. 3, the term generator 310 receives a set of training documents 210, counts the number of occurrences of each term in each document, and accumulates these numbers for all documents in the training set that contain the term. To do. A term is frequently used in training documents when the square of the number of occurrences of the term (number of terms) divided by the number of documents containing the term (number of documents) is large. Conversely, if the square of the number of occurrences of the term divided by the number of documents is small, the term is used only occasionally or if it is used often, the term appears only a few times in each document do not do. Other methods of selecting training terms are suitable, including various methods of calculating relative frequencies, and / or tokenizing multiple words to form a phrase that counts as a single term it can. The selected terms can be stored in the data store as a vector 320 of terms, as shown in FIG. The term vector 320 can be associated with the current node of the binary tree (which is the root node in the first iteration) in the data store.

図3に示すように、用語生成器310は、用語ベクトル320をノード生成器330に渡す。ノード生成器330は、各子ノードが選択された訓練用語の用語リストまたはベクトル320に関連付けられている状態で、現在のノードの2つの子ノードを生成することができる。2つの子ノードを形成するために、用語ベクトル320内の各用語は、その用語が文書に出現する確率、言い換えれば、その単語が文書に出現するように選択される確率に関連付けることができる。第1の子ノードに関連付けられている確率は、図3に示すように、データストア内のベクトル340に1組の用語の確率として格納され、第2の子ノードに関連付けられている確率は、データストア内のベクトル350に1組の用語確率として格納され得る。各子ノードは、1つの用語確率のベクトルに関連付けられるため、生成される2つの子ノードに対応して2つの用語確率のベクトル340、350が生成される。   As shown in FIG. 3, term generator 310 passes term vector 320 to node generator 330. The node generator 330 can generate two child nodes of the current node with each child node associated with a selected training term term list or vector 320. To form two child nodes, each term in term vector 320 can be associated with the probability that the term will appear in the document, in other words, the probability that the word will be selected to appear in the document. The probability associated with the first child node is stored as a set of term probabilities in a vector 340 in the data store, as shown in FIG. 3, and the probability associated with the second child node is It can be stored as a set of term probabilities in a vector 350 in the data store. Since each child node is associated with one term probability vector, two term probability vectors 340, 350 are generated corresponding to the two generated child nodes.

用語確率の各ベクトル340、350を開発するために、文書に出現する用語の各確率を初期化することができる。例えば、確率は、乱数生成器で確率を無作為に生成する、または1組の訓練文書内の用語の出現回数を調整または変更するなど、任意の適した方法を介して初期化することができる。一部の場合、文書に出現する用語の確率を、各用語確率ベクトルにおいて異なる値に初期化することが適している場合がある。より詳細には、必ず2つの用語確率ベクトル340、350が同じにならないようにすることが適している場合がある。   In order to develop each vector 340, 350 of term probabilities, each probability of terms appearing in the document can be initialized. For example, probabilities can be initialized via any suitable method, such as randomly generating probabilities with a random number generator, or adjusting or changing the number of occurrences of a term in a set of training documents. . In some cases, it may be appropriate to initialize the probability of terms appearing in the document to different values in each term probability vector. More specifically, it may be appropriate to ensure that the two term probability vectors 340, 350 are not the same.

次いでノード生成器330は、2つの子ノードにそれぞれ関連付けられている用語確率ベクトル340、350内の用語の確率を最適化することができる。例えば、用語の確率は、期待値最大化、遺伝的アルゴリズム、ニューラルネットワーク、シミュレーテッドアニーリングなど、任意の適した方法を使用して最適化することができる。例えば、ノード生成器330は、訓練文書のそれぞれが兄弟ノードの両方に関連付けられている用語のリストから形成され得る尤度を最大にするために、用語の確率を最適化することができる。より詳細には、各訓練文書が文書に出現する各用語の初期化された確率(用語確率ベクトル340)に基づいて第1の子ノードに関連付けられている用語(用語ベクトル320)によって作成される確率を計算し、同じ訓練文書が文書に出現する各用語の初期化された確率(用語確率ベクトル350)に基づいて第2の子ノードに関連付けられている用語(用語ベクトル320)によって作成される確率を計算することによって、各ベクトルの用語の確率は、訓練文書の集成全体にわたって最適化することができる。   The node generator 330 can then optimize the probabilities of terms in the term probability vectors 340, 350 associated with the two child nodes, respectively. For example, the term probabilities can be optimized using any suitable method, such as expectation maximization, genetic algorithm, neural network, simulated annealing, and the like. For example, the node generator 330 can optimize the probability of terms to maximize the likelihood that each of the training documents can be formed from a list of terms associated with both sibling nodes. More specifically, each training document is created by a term (term vector 320) associated with the first child node based on the initialized probability of each term appearing in the document (term probability vector 340). Probability is calculated and the same training document is created by the term (term vector 320) associated with the second child node based on the initialized probability (term probability vector 350) of each term that appears in the document By calculating the probabilities, the probability of each vector term can be optimized over the entire training document collection.

期待値最大化を使用して、図3に示したノード生成器320は、すべての訓練文書が2つの兄弟ノードのそれぞれにおける用語によって生成される対数尤度を最大にすることができる。すべての訓練文書が2つの各ノードで入手可能な用語によって生成される対数尤度は、次の式によって得られる。
L=Sum{Sum[n(di,wjk)log(P(di,wjk)),j],i,k}
上記の式中、n(di,wjk)はノードkでの文書di内の用語wjの出現回数、P(di,wjk)は任意の文書に出現する用語の確率に基づく、文書di内に出現するノードkの用語wjの確率である。各ノードに関連付けられている用語の確率は、次いで対数尤度を最大にするように繰り返し調整することができる。最大化は、絶対最大値または相対最大値とすることができる。結果として得られたこれらの用語の確率は、図3のベクトル340、350に格納され、データストア内のそれぞれの子ノードに関連付けられる。このように、2つの子ノード(または図1の親ノード152、153)のそれぞれは、訓練用語のリスト(用語ベクトル320)、および1組の訓練文書が各子ノードの用語から形成される対数尤度を最大にするために最適化された文書に出現する各用語のそれぞれの確率(用語確率ベクトル340、350)に関連付けられる。
Using expectation maximization, the node generator 320 shown in FIG. 3 can maximize the log likelihood that all training documents are generated by terms in each of the two sibling nodes. The log likelihood that all training documents are generated by the terms available at each of the two nodes is given by:
L = Sum {Sum [n (d i , w jk ) log (P (d i , w jk )), j], i, k}
In the above formula, n (d i , w jk ) is based on the number of occurrences of the term w j in the document d i at the node k, and P (d i , w jk ) is based on the probability of the term appearing in an arbitrary document. , The probability of the term w j of the node k appearing in the document d i . The probability of the term associated with each node can then be adjusted iteratively to maximize log likelihood. Maximization can be an absolute maximum or a relative maximum. The resulting probabilities for these terms are stored in vectors 340, 350 in FIG. 3 and associated with each child node in the data store. Thus, each of the two child nodes (or parent nodes 152, 153 in FIG. 1) has a list of training terms (term vector 320) and a logarithm in which a set of training documents is formed from the terms of each child node. Associated with the respective probabilities (term probability vectors 340, 350) of each term appearing in the document optimized to maximize likelihood.

一例では、問題の形態の形式化を使用して、期待値最大化を使用した単語および文書の確率を解くことができる。様々なバージョンの期待値最大化が適している可能性があるが、代表的な1つの例は、参照により本明細書に組み込む、非特許文献1に記載されている。一部の場合、Hofmannによって述べられているように、期待値最大化手法に従うことが適し得るが、期待値最大化プロセスで文書の確率を再訓練するのではなく、文書の確率と単語の確率との間のKl divergenceなどの距離測定を使用して新しい文書のモデルパラメータの調整を低減することができる。   In one example, problem form formalization can be used to solve word and document probabilities using expectation maximization. While various versions of expectation maximization may be suitable, one representative example is described in Non-Patent Document 1, which is incorporated herein by reference. In some cases, it may be appropriate to follow the expectation maximization approach as described by Hofmann, but instead of retraining the document probabilities in the expectation maximization process, document probabilities and word probabilities Distance measurements such as Kl divergence between and can be used to reduce adjustment of model parameters for new documents.

より低いレベルのバイナリツリーの1組のテスト文書を形成するには、1組のテスト文書210を、2つの子ノードのうちの少なくとも1つに割り当てる。このように、第1の子ノードに関連付けられている文書を、2つの孫ノードを生成するために使用し、第2の子ノードに関連付けられている文書を、さらに2つの孫ノードを生成するために使用して、図1のバイナリツリー150を形成することができる。   To form a set of test documents for a lower level binary tree, a set of test documents 210 is assigned to at least one of the two child nodes. Thus, the document associated with the first child node is used to generate two grandchild nodes, and the document associated with the second child node is further generated with two grandchild nodes. Can be used to form the binary tree 150 of FIG.

図3に示すように、ツリー生成器220は、1組の訓練文書210を2つの子ノードのうちの少なくとも1つまたはヌルセットに割り当てる文書割当器360を含み得る。文書が訓練に適していないと決定されると、文書割当器360は、文書をヌルセットに割り当てることができる。このように、図3に示すように、3組の文書、第1の子ノードに関連付けられている文書セット362、第2の子ノードに関連付けられている文書セット364、および訓練セットから削除される文書のヌルセットである文書セット366を形成することができる。   As shown in FIG. 3, the tree generator 220 may include a document assigner 360 that assigns a set of training documents 210 to at least one of the two child nodes or a null set. If it is determined that the document is not suitable for training, the document assigner 360 can assign the document to a null set. Thus, as shown in FIG. 3, the document is deleted from the three sets of documents, the document set 362 associated with the first child node, the document set 364 associated with the second child node, and the training set. A document set 366 that is a null set of documents can be formed.

図3の文書割当器360は、エントロピまたは距離測定など任意の適した方法を使用して、訓練セット210の各文書を2つの子ノードのうちの一方または両方、またはヌルセットに関連付けることができる。例えば、文書割当器360は、それぞれの子ノードに関連付けられている最適化された用語確率ベクトル340、350を使用して、各文書と2つの子ノードのそれぞれとの間のKl divergenceを決定することができる。代表的な1つの例では、Kl divergenceは、次の式を使用して決定することができる。
j=Sum[P(wj)*log(P(wi)/Zj(wi))]
式中、SjはKl divergence、P(wi)は用語wiが所与の文書内で検出される確率、およびZj(wi)は用語wiがノードjで検出される確率である。上記の式の対称的なバージョンを含めて、他の適した系統的に定められた距離または類似度も適していることを理解されたい。
The document allocator 360 of FIG. 3 may associate each document of the training set 210 with one or both of the two child nodes, or a null set, using any suitable method such as entropy or distance measurement. For example, the document allocator 360 uses the optimized term probability vectors 340, 350 associated with each child node to determine the Kl divergence between each document and each of the two child nodes. be able to. In one representative example, Kl divergence can be determined using the following equation:
S j = Sum [P (w j ) * log (P (w i ) / Z j (w i ))]
Where S j is the Kl divergence, P (w i ) is the probability that the term w i is detected in a given document, and Z j (w i ) is the probability that the term w i is detected at node j. is there. It should be understood that other suitable systematically defined distances or similarities are suitable, including symmetric versions of the above equations.

一般に、文書は、所与のノードで検出された用語のサブセットのみを含んでいる。したがって、Kl divergenceを制約するために、平滑化された単語の確率(smoothed word probabilities)を使用することができる。用語の確率は、任意の適した方法を使用して平滑化することができる。テキスト情報の取り出しの分野の専門家は、それだけには限定されないが、簡易Jelinek−Mercer(simplified Jelinek−Mercer)、Dirichlet事前分布(Dirichlet prior)、および絶対ディスカウンティング(absolute discounting)など、単語の確率の平滑化のいくつかの方法に精通している。代表的な1つの例は、参照により本明細書に組み込む、非特許文献2に記載されている。このように、文書の集成全体はシステムエラーを考慮したシステム知識を提供し、新しい文書は、それが用語の1つの考え得る出現または組み合わせにすぎないように統計的に扱われるため、文書に出現する用語の確率はゼロではない。Jensen−Shannon divergence、ピアソンのカイ二乗検定などを含めて、距離または類似度の他の統計的な測定を使用できることを当分野の専門家は理解されよう。   In general, a document contains only a subset of terms found at a given node. Therefore, smoothed word probabilities can be used to constrain Kl divergence. The term probabilities can be smoothed using any suitable method. Experts in the field of text information retrieval include, but are not limited to, simplified Jelinek-Mercer (simplied Jelinek-Mercer), Dirichlet priors, and absolute discounting probabilities of words (absolute disccounting), etc. Familiar with several methods of smoothing. One representative example is described in Non-Patent Document 2, which is incorporated herein by reference. In this way, the entire collection of documents provides system knowledge that takes into account system errors, and the new document appears in the document because it is treated statistically so that it is only one possible occurrence or combination of terms. The probability of the term to be is not zero. Those skilled in the art will appreciate that other statistical measures of distance or similarity can be used, including Jensen-Shannon divergence, Pearson's chi-square test, and the like.

一例で、各文書は、最も低いKl divergenceを有するノードに割り当てることができる。さらに、または代わりに、Kl divergenceが予め定められた閾値を下回る場合、各文書をノードに割り当てることができる。一部の場合、第1のノードへのKl divergence、および第2のノードへのKl divergenceは、ほぼ等しい、または類似している場合がある。この場合、文書は、両方のノードに関連付けることができる。他の場合、両方のノードへのKl divergenceは、予め定められた閾値に比べて比較的大きい可能性がある。この場合、文書はヌルセットに割り当てられる。例えば、その文書は訓練文書としての使用に適していないことになり得る。   In one example, each document can be assigned to the node with the lowest Kl divergence. Additionally or alternatively, each document can be assigned to a node if Kl divergence falls below a predetermined threshold. In some cases, the Kl divergence to the first node and the Kl divergence to the second node may be approximately equal or similar. In this case, the document can be associated with both nodes. In other cases, the Kl divergence to both nodes may be relatively large compared to a predetermined threshold. In this case, the document is assigned to a null set. For example, the document may not be suitable for use as a training document.

上記のステップは、バイナリツリーの新しいレベルが生成されるたびに再帰的に繰り返され、このプロセスは、切断条件が達成されると停止することができる。図3に示すように、ツリー生成器は、切断条件が達成されたかどうかを決定するツリーマネージャ370を含み得る。切断条件は、(例えば特定のノードに関連付けられている文書数が特定の閾値より小さいなど)ノード内にあり得る文書の最低数、2つの新しいノードから1組の訓練文書へのKl divergenceが1組の訓練文書と親ノードとの間のKl divergenceと類似する(例えば親ノードに対するKl divergenceと子ノードに対するKl divergenceとの間の差は、予め定められた閾値を下回る)、所与のブランチに沿ったツリーの深さが予め定められた限界に到達した(例えばツリー内の層の数が予め定められた閾値を超えるなど)、2つのノード間のKl divergenceが予め定められた閾値を下回る(例えば第1のノードと第2のノードとの間の差は予め定められた閾値を下回る)など、任意の適したパラメータまたは距離とすることができる。   The above steps are recursively repeated each time a new level of the binary tree is generated, and the process can be stopped when the cutting condition is achieved. As shown in FIG. 3, the tree generator may include a tree manager 370 that determines whether a cutting condition has been achieved. The cutting condition is that the minimum number of documents that can be in a node (eg, the number of documents associated with a particular node is less than a certain threshold), and the Kl divergence from two new nodes to a set of training documents is 1. Similar to the Kl diversity between a set of training documents and the parent node (eg, the difference between the Kl diversity for the parent node and the Kl diversity for the child node is below a predetermined threshold) for a given branch The depth of the tree along the line has reached a predetermined limit (eg, the number of layers in the tree exceeds a predetermined threshold), and the Kl divergence between the two nodes is below the predetermined threshold ( (For example, the difference between the first node and the second node is below a predetermined threshold) Suitable parameters or distances.

訓練セット内の文書の少なくとも一部が2つの子ノードのうちの少なくとも1つまたはヌルセットに割り当てられているとき、各子ノードは、元の訓練文書の組のサブセット(文書セット362または文書セット364)に関連付けられる。次いでツリーマネージャ370は、これらの文書の組のそれぞれを、新しい1組の訓練文書として転送して、訓練用語の新しいリストを生成することができる。より詳細には、ツリーマネージャ370は、文書セット362を、1組の訓練文書として使用するように用語生成器310に送信して、第1の子ノードの2つの孫ノードに関連付けられている1組の訓練用語320を生成することができる。同様に、ツリーマネージャは、文書セット364を、1組の訓練文書として使用するように用語生成器310に送信して、第2の子ノードの2つの孫ノードに関連付けられている1組の訓練用語320を生成することができる。   When at least some of the documents in the training set are assigned to at least one of the two child nodes or a null set, each child node is a subset of the original training document set (document set 362 or document set 364). ). The tree manager 370 can then transfer each of these sets of documents as a new set of training documents to generate a new list of training terms. More specifically, the tree manager 370 sends the document set 362 to the term generator 310 for use as a set of training documents, associated with two grandchild nodes of the first child node. A set of training terms 320 can be generated. Similarly, the tree manager sends the document set 364 to the term generator 310 for use as a set of training documents for a set of training associated with the two grandchild nodes of the second child node. The term 320 can be generated.

新しい訓練用語の各組は、ノード生成器330によって使用されて、孫ノードごとに関連の用語確率ベクトルを生成し、最適化することができる。上述したように、用語確率ベクトルは、用語の確率を無作為に生成することによって初期化することができる。あるいは、直前のレベル(子ノード)からの用語の確率を調整して、各孫ノードに関連付けられている用語確率ベクトルを初期化することができる。例えば、用語確率ベクトル340は、直前のノードの元の用語確率値の約90%から約110%の値で無作為に調整することができ、同様に、用語確率ベクトル350は、直前のノードの元の用語確率値の約90%から約110%の値で無作為に調整することができる。 Each set of new training terms can be used by the node generator 330 to generate and optimize an associated term probability vector for each grandchild node. As described above, the term probability vector can be initialized by randomly generating the term probabilities. Alternatively, the term probability vector associated with each grandchild node can be initialized by adjusting the probability of terms from the previous level (child node). For example, the term probability vector 340 can be randomly adjusted to a value of about 90% to about 110% of the previous term's original term probability value, and similarly, the term probability vector 350 can be It can be randomly adjusted with values from about 90% to about 110% of the original term probability value.

次いでノード生成器330は、孫ノードごとに用語確率値を最適化することができる。これらの最適化された用語確率は、次いでそれぞれ2つの新しい孫ノードに関連付けられ、文書を4つの新しい孫ノードのうちの少なくとも1つまたはヌルセットにさらに割り当てるために使用することができる。より詳細には、文書セット362の各文書は、ヌルセットまたは第1の子ノードに関連付けられている2つの孫ノードのうちの少なくとも一方に関連付けることができ、文書セット364の各文書は、ヌルセットまたは第2の子ノードに関連付けられている2つの孫ノードのうちの少なくとも一方に関連付けることができる。ノードとの文書の関連付けは、データストアに格納することができる。結果として、図2および図3に示すように、複数のノードを含むバイナリツリーデータ構造230が形成され、各ノードは、文書に出現する各用語の関連した確率(用語確率ベクトル340または350)で用語のベクトル(用語ベクトル320)に関連付けられる。  The node generator 330 can then optimize the term probability value for each grandchild node. These optimized term probabilities are then each associated with two new grandchild nodes and can be used to further assign the document to at least one of the four new grandchild nodes or a null set. More specifically, each document in the document set 362 can be associated with at least one of a null set or two grandchild nodes associated with the first child node, and each document in the document set 364 can be a null set or It can be associated with at least one of the two grandchild nodes associated with the second child node. Document associations with nodes can be stored in a data store. As a result, as shown in FIGS. 2 and 3, a binary tree data structure 230 is formed that includes a plurality of nodes, each node with an associated probability of each term appearing in the document (term probability vector 340 or 350). Associated with a vector of terms (term vector 320).

図4は、図2のツリー生成器220の動作の方法例400を示している。410で、ツリー生成器は1組の訓練文書を受信する。上述したように、ナイーブベイズの仮定下では、各文書は、その文書に出現する用語のリストとして表される。412で、ツリー生成器は、各文書内の各用語の出現頻度を数える。文書に出現する用語のリストに基づいて、ツリー生成器は、414で、用語生成器を介して、用語ベクトルとして表される第1の組の訓練用語を選択する。訓練ベクトル内の訓練用語ごとに、ツリー生成器は、416で、ノード生成器を介して、訓練用語が所与の文書に出現する第1の確率を生成し、第1の確率の組は第1の用語確率ベクトルとして表される。418で、第1の用語確率ベクトルは、第1の子ノードに関連付けられる。また、用語生成器は、420で、用語ベクトル内の用語ごとに、その用語が所与の文書内に出現する第2の確率も生成し、第2の確率の組は第2の用語確率ベクトルとして表される。422で、第2の用語確率ベクトルは、第2の子ノードに関連付けられる。上述したように、ノード生成器は、用語確率ベクトルを無作為な値で初期化し、訓練文書が第1および第2の子ノードのそれぞれに関連付けられている用語の確率によって生成される対数尤度を最大にする期待値最大化に基づいてこうした確率を最適化する。文書割当器を介して、ツリー生成器は、424で、(用語のリストとして扱われた)各訓練文書を第1の子ノード、第2の子ノード、および訓練に適してない文書のヌルセットのうちの少なくとも1つに関連付ける。ノード生成器は、426で、用語生成器を介して、第1の子ノードに関連付けられている1組の訓練文書に出現する用語の少なくとも一部に基づいて第2の組の訓練用語または用語ベクトルを形成する。この場合もまた、ノード生成器を介して、ツリー生成器は、428で、第2の用語ベクトル内の訓練用語ごとに、そのノードが与えられた文書に訓練用語が出現する第3の確率を生成し、430で、結果として得られた第3の用語確率ベクトルを第1の孫ノードに関連付ける。同様に、ツリー生成器は、432で、第2の用語ベクトル内の訓練用語ごとに、そのノードが与えられた文書に訓練用語が出現する第4の確率を生成し、434で、結果として得られた第4の用語確率ベクトルを第2の孫ノードに関連付ける。第3および第4の用語確率ベクトルに基づいて、ツリー生成器は、436で、文書割当器を介して、第1の子ノードに関連付けられている各文書を、第1の孫ノード、第2の孫ノード、およびヌルセットのうちの少なくとも1つに関連付ける。図4のプロセス、またはその一部は、指定された切断条件に到達するまで、必要に応じて繰り返すことができる。   FIG. 4 illustrates an example method 400 of operation of the tree generator 220 of FIG. At 410, the tree generator receives a set of training documents. As described above, under Naive Bayes' assumption, each document is represented as a list of terms that appear in that document. At 412, the tree generator counts the frequency of occurrence of each term in each document. Based on the list of terms appearing in the document, the tree generator selects a first set of training terms represented as a term vector at 414 via the term generator. For each training term in the training vector, the tree generator, at 416, generates a first probability that the training term appears in the given document via the node generator, and the first set of probabilities is the first probability set. It is expressed as one term probability vector. At 418, the first term probability vector is associated with the first child node. The term generator also generates, at 420, for each term in the term vector, a second probability that the term appears in a given document, and the second set of probabilities is a second term probability vector. Represented as: At 422, the second term probability vector is associated with the second child node. As described above, the node generator initializes the term probability vector with a random value and the log likelihood generated by the probability of the term that the training document is associated with each of the first and second child nodes. We optimize these probabilities based on maximizing the expected value that maximizes. Via the document allocator, the tree generator at 424 replaces each training document (treated as a list of terms) with a first child node, a second child node, and a null set of documents not suitable for training. Associate with at least one of them. The node generator, at 426, via the term generator, a second set of training terms or terms based on at least some of the terms that appear in the set of training documents associated with the first child node. Form a vector. Again, via the node generator, the tree generator, at 428, gives, for each training term in the second term vector, a third probability that the training term will appear in the document given that node. And at 430, associate the resulting third term probability vector with the first grandchild node. Similarly, the tree generator generates, at 432, a fourth probability that the training term appears in the document given that node for each training term in the second term vector, and at 434 the resulting Associating the resulting fourth term probability vector with the second grandchild node. Based on the third and fourth term probability vectors, the tree generator at 436 assigns each document associated with the first child node to the first grandchild node, the second, via the document allocator. Associated with at least one of the grandchild node and the null set. The process of FIG. 4, or a portion thereof, can be repeated as necessary until a specified cutting condition is reached.

あるノードに関連付けられている各訓練文書セットは、訓練文書がバイナリ分類ツリーによってカテゴリ化される文書のサブセットである場合、結果として得られた分類ツリーデータ構造内のそのノードに関連付けられたままであり得る。一例では、各文書セットは、ツリー内のそのレベルに関係なく、そのそれぞれのノードに割り当てられたままであり、その結果親ノードは、その子ノードのそれぞれのすべての文書に関連付けられている。別の例では、結果として得られたツリーデータ構造のリーフノードに関連付けられている文書セットのみが、文書の関連付けのデータストアに保持され得る。あるいは、1組の訓練文書がカテゴリ化される文書の組の一部ではない場合、文書の関連付けは無視または削除され得る。このように、訓練文書は、分類ツリーを訓練するためにだけ使用することができる。   Each training document set associated with a node remains associated with that node in the resulting classification tree data structure if the training document is a subset of documents categorized by a binary classification tree. obtain. In one example, each document set remains assigned to its respective node, regardless of its level in the tree, so that the parent node is associated with every document of each of its child nodes. In another example, only the document set associated with the leaf nodes of the resulting tree data structure may be maintained in the document association data store. Alternatively, if the set of training documents is not part of the set of documents to be categorized, the document association can be ignored or deleted. In this way, the training document can only be used to train the classification tree.

新しい文書は、図2に示すように、文書がバイナリツリーデータ構造250のノードに関連付けられた状態で、新しい各文書をバイナリツリーのノードに関連付けて階層型分類ツリーを形成することによって分類することができる。図2に示すように、文書ソータ240は、新しい文書242を受信し、その文書をツリー230の少なくとも1つのノードに関連付ける。各文書のノードの関連付けは、データストアに格納することができる。文書ソータ240は、図3で示したツリー生成器の文書割当器360とまったく同じものとすることができ、関連付けをエントロピまたは距離測定(Kl divergenceなど)に基づかせることができる。しかし、訓練プロセスとは異なり、用語のリスト、および各ノードでのその関連の用語の確率は調整されない。その結果、新しい文書の割当は、最も小さいKl divergenceを有するノード、および/またはノードへのKl divergenceが予め定められた閾値を下回るノードに基づいて次レベルのノードを選択することによって決定されたパスでバイナリツリーのノードを「歩く」ことになる。ツリーは割り当てられる各文書によって「歩かれる」ため、割当プロセスは、並列計算で達成することができる。   A new document is classified by associating each new document with a binary tree node to form a hierarchical classification tree with the document associated with the nodes of the binary tree data structure 250, as shown in FIG. Can do. As shown in FIG. 2, document sorter 240 receives a new document 242 and associates the document with at least one node of tree 230. The association of each document node can be stored in a data store. The document sorter 240 can be exactly the same as the document allocator 360 of the tree generator shown in FIG. 3, and the association can be based on entropy or distance measurements (such as Kl divergence). However, unlike the training process, the list of terms and their associated term probabilities at each node are not adjusted. As a result, new document assignments are determined by selecting the next level node based on the node with the smallest Kl divergence and / or the node whose Kl diverging is below a predetermined threshold. Will "walk" through the nodes of the binary tree. Since the tree is “walked” by each assigned document, the allocation process can be accomplished with parallel computing.

新しい文書が1組の訓練文書にはないツリーを含み得るため、文書の確率の大部分は、実際には文書に出現しない用語の用語確率の平滑化に基づき得る。上述したように、用語の確率は、簡易Jelinek−Mercer、Dirichlet事前分布、および絶対ディスカウンティングを含む任意の適した方法を使用して平滑化することができる。このように、文書の集成全体はシステムエラーを考慮したシステム知識を提供し、新しい文書は、それが用語の1つの考え得る出現または組み合わせにすぎないように統計的に扱われるため、文書に出現する用語の確率はゼロではない。   Since a new document may contain a tree that is not in the set of training documents, the majority of document probabilities may be based on smoothing the term probabilities for terms that do not actually appear in the document. As described above, the term probabilities can be smoothed using any suitable method, including simplified Jelinek-Mercer, Dirichlet priors, and absolute discounting. In this way, the entire collection of documents provides system knowledge that takes into account system errors, and the new document appears in the document because it is treated statistically so that it is only one possible occurrence or combination of terms. The probability of the term to be is not zero.

図5は、図2の文書ソータ240の動作の方法例500を示している。文書ソータは、510で、バイナリツリー分類データ構造に関連付けられる新しい文書にアクセスする。文書ソータは、512で、新しい文書と第1の子ノードとの間の第1の距離値を決定し、514で、新しい文書と第2の子ノードとの間の第2の距離値を決定する。上述したように、Kl divergenceなどの距離測定は、用語のリストが文書に出現する確率に基づいており、各子ノードは、用語ごとにそれ自体の関連の確率を有し得る。   FIG. 5 illustrates an example method 500 of operation of the document sorter 240 of FIG. The document sorter accesses a new document associated with the binary tree classification data structure at 510. The document sorter determines a first distance value between the new document and the first child node at 512 and determines a second distance value between the new document and the second child node at 514. To do. As described above, distance measurements such as Kl divergence are based on the probability that a list of terms will appear in the document, and each child node may have its own associated probability for each term.

文書ソータは、516で、切断条件が満たされているかどうかを決定する。上述したように、切断条件は、子ノード間のKl divergenceが所与の閾値を上回る、または親ノードがバイナリツリーのリーフノードであるなど、任意の適した条件とすることができる。切断条件が満たされている場合、文書は、2つの子ノードの親ノードに関連付けられる。切断条件が満たされていない場合、文書ソータは、520で、決定された距離値の1つが距離閾値を下回るかどうかを決定する。距離閾値は、予め定められており、文書ソータ内で一定とすることができる。このように、2つの距離値が距離閾値を下回っている場合、文書は、両方のノードに従い得る。あるいは、距離閾値は、ソートされる文書に基づいて動的な値とすることができる。例えば、距離閾値は、2つの計算された距離値のうちの最大のものとすることができる。距離値の一方が距離閾値を下回る場合、文書ソータは、522で、2つの子ノードがその距離値に関連付けられている子ノード(例えばその子ノードを通る親の2つの孫ノードなど)から延びているかどうかを決定する。例えば、第1の距離値が閾値を下回る場合、文書ソータは、第1の子ノードが2つの子ノード自体を有しているかどうか、例えばツリーが第1の子ノードから延びているかどうかを決定する。2つの孫ノードが存在する場合、文書ソータは、512、514で第1および第2の距離値を決定することに関連して上述したように、新しい文書と第1の孫ノードとの間の第3の距離値を決定し、新しい文書と第2の孫ノードとの間の第4の距離値を決定する。文書ソータは、切断条件が満たされ、文書がバイナリツリーの少なくとも1つのノードに関連付けられるまで、バイナリツリーを引き続き歩く。   The document sorter determines 516 whether the cutting condition is met. As described above, the cutting condition can be any suitable condition, such as the Kl divergence between child nodes exceeds a given threshold, or the parent node is a leaf node of a binary tree. If the cutting condition is met, the document is associated with the parent node of the two child nodes. If the cutting condition is not met, the document sorter determines at 520 whether one of the determined distance values is below a distance threshold. The distance threshold is predetermined and can be constant in the document sorter. Thus, if two distance values are below the distance threshold, the document can follow both nodes. Alternatively, the distance threshold can be a dynamic value based on the document being sorted. For example, the distance threshold can be the largest of the two calculated distance values. If one of the distance values falls below the distance threshold, the document sorter extends at 522 from the child node with which the two child nodes are associated with the distance value (eg, the two grandchildren of the parent through the child node). Determine whether or not. For example, if the first distance value is below a threshold, the document sorter determines whether the first child node has two child nodes themselves, for example, whether the tree extends from the first child node. To do. If there are two grandchild nodes, the document sorter will determine whether the first and second grandchild nodes are between 512 and 514 as described above in connection with determining the first and second distance values. A third distance value is determined and a fourth distance value between the new document and the second grandchild node is determined. The document sorter continues to walk the binary tree until the cutting condition is met and the document is associated with at least one node of the binary tree.

Kl divergenceに基づいて文書を単一のノードに割り当てるより、文書ソータ240は、文書割当器360とは異なるプロセスを使用して、新しい文書をバイナリ分類ツリーのノードに関連付けることができる。一例で、文書ソータ240は、ルートノードから文書のパス全体にわたって最小のKl divergenceに基づいて文書を割り当てることができる。より詳細には、上述したように、文書は、文書と次に低いレベルの2つの兄弟ノードとの間の計算されたKl divergenceに基づいてツリーを「歩く」。しかし、文書を所与のノードの2つの選択肢のより小さいKl divergence値を有するノードに関連付けるのではなく、文書のKl divergenceを、文書がツリー内を歩くパス全体の合計Kl divergence値に累積または結合することができる。次いで文書を、予め定められた閾値を下回る結合されたKl divergenceを有する、かつ/または最低値を有するパスに割り当てることができる。結合されたKl divergence値は、ビタビアルゴリズムなど複合決定理論を含む任意の適した方法を使用して決定することができる。ビタビアルゴリズムは、事後的に最高の意味で、有限ノードの離散時間プロセス(finite−node, discrete time process)と見なされ得るバイナリツリーの最も可能性が高いノードシーケンスまたはパスを見つけることができる。代表的な1つの例は、参照により本明細書に組み込む、非特許文献3に記載されている。   Rather than assigning a document to a single node based on Kl divergence, document sorter 240 can use a different process than document assigner 360 to associate a new document with a node in the binary classification tree. In one example, the document sorter 240 can assign documents based on a minimum Kl divergence from the root node to the entire document path. More specifically, as described above, the document “walks” the tree based on the calculated Kl divergence between the document and the next lower level two sibling nodes. However, instead of associating the document with a node having a smaller Kl divergence value of the two alternatives for a given node, the document's Kl divergence is accumulated or combined into the total Kl divergence value of the entire path that the document walks through the tree can do. The document can then be assigned to a path that has a combined Kl divergence below a predetermined threshold and / or has a minimum value. The combined Kl divergence value can be determined using any suitable method including complex decision theory, such as the Viterbi algorithm. The Viterbi algorithm can find the most likely node sequence or path of a binary tree that can be considered in the best sense afterwards as a finite-node, discrete time process. One representative example is described in Non-Patent Document 3, which is incorporated herein by reference.

文書とバイナリツリー構造のノードとの間の関連付けは、データストアに格納することができる。関連付けは、関連付けデータストア、テーブル、ベクトル、または文書のメタデータの一部としてなど、任意の適したフォーマットおよび/またはインデックスで格納することができる。例えば、ツリーの各ノードは、階層型分類のそのパスに従ってアドレス指定可能である。このパスは、図1に示すように、サブジェクトノード154を上位ノード(例えば親ノードおよび祖父(母)ノード)、および下位ノード(子および孫)と接続するブランチをトラバースすることによって作成することができる。このパスは、ノードパスまたはカテゴリパスと呼ばれ、「祖父(母)/親/サブジェクトノード/子」の形式で格納される。ツリー構造内でのノードの位置の任意の適した指示が適していることを理解されたい。例えば、バイナリ文字列は、「0」で左側の子へのトラバースを示し、「1」で右側の子へのトラバースを示すことによってノードへのパスを示すことができる。別の例では、例えば祖父(母)ノードが1であり、親ノードにはそれぞれ2および3と番号を付けるなど、ノードに番号を付けることができる。一例では、文書ソータ240は、データベース、インデックス、または文書メタデータの一部分など、関連のノードのパスを示す文字列をデータストア内に格納することができる。   Associations between documents and nodes in a binary tree structure can be stored in a data store. The association can be stored in any suitable format and / or index, such as as part of an association data store, table, vector, or document metadata. For example, each node of the tree can be addressed according to its path of hierarchical classification. This path may be created by traversing the branch connecting subject node 154 with the upper nodes (eg, parent and grandfather (mother) nodes) and lower nodes (child and grandchild) as shown in FIG. it can. This path is called a node path or a category path, and is stored in the format of “grandfather (mother) / parent / subject node / child”. It should be understood that any suitable indication of the position of the node within the tree structure is suitable. For example, a binary string can indicate a path to a node by indicating “0” to traverse to the left child and “1” to indicate traversal to the right child. In another example, the nodes can be numbered, for example, the grandfather (mother) node is 1, and the parent nodes are numbered 2 and 3, respectively. In one example, the document sorter 240 may store a string in the data store that indicates the path of the associated node, such as a database, an index, or a portion of document metadata.

図2に示すように、関連の文書を含むバイナリ分類ツリー250は、必要に応じて文書の取り出し、クラスタ化、ソート、かつ/またはフィルタ処理に使用されるように、情報取り出しシステム260に送信される。例えば、あるノード内の文書は、指定されたクエリ用語に一致するノードを探すことによって取り出されるなど、特定のノードに関連付けられている文書をノード割当に基づいて取り出すことができる。一部の場合、ユーザによるクエリに応答して選択された文書を戻すために、検索エンジンによって一般の逆引きインデックスを使用する場合もある。検索結果内の文書のばらつきの問題に対処するために、クエリエンジンは、関連するノードに基づいて選択された文書をソートし、またはクラスタ化することができる。さらに、または代わりに、クエリエンジンによって選択された文書に固有の階層型ツリーを形成することができる。このように、取り出された文書の少なくとも一部分を使用して、こうした文書に固有のバイナリツリーを生成または訓練することができ、次いで文書を、それぞれのノードに従ってソートまたはクラスタ化して、コンピュータユーザに階層型検索結果を示すようにすることができる。階層型分類ツリーは、ユーザの選好に従ってユーザにこうした文書のみを戻すために文書のフィルタ処理に使用することもできる。さらに、分類ツリーは、選択された文書に類似の、またはそれに関連付けられる追加の文書の指示を戻すことができる。例えば、クエリエンジンは、クエリ用語に基づいて文書を取り出すことができ、取り出された文書は、バイナリ分類ツリーの特定のノードに関連付けることができる。また、クエリエンジンは、取り出された文書だけではなく、同じノードおよび/または隣接するノードに関連付けられている文書のリストも戻して、検索をユーザによって提示されたクエリ用語以上に拡大することができる。さらに、または代わりに、隣接するノードに関連付けられているラベルを取り出された文書とともにユーザに戻して、所望の文書の位置をさらに検索することを示すことができる。カテゴリ化された文書は、検索を使用可能な文書の一部分のみに制限するために、ノードの関連付けに基づいて検索を行うこともできる。任意の適した情報取り出し方法および使用は、上記のバイナリツリーに適切に基づき得ることを理解されたい。   As shown in FIG. 2, a binary classification tree 250 containing related documents is sent to an information retrieval system 260 for use in document retrieval, clustering, sorting, and / or filtering as needed. The For example, documents associated with a particular node can be retrieved based on the node assignment, such as documents within a node are retrieved by looking for a node that matches a specified query term. In some cases, a general reverse index may be used by a search engine to return selected documents in response to a query by a user. To address the issue of document variability in search results, the query engine can sort or cluster selected documents based on the associated nodes. Additionally or alternatively, a hierarchical tree specific to the document selected by the query engine can be formed. In this way, at least a portion of the retrieved documents can be used to generate or train a binary tree that is unique to such documents, and then the documents are sorted or clustered according to their respective nodes and hierarchized to computer users. The type search result can be shown. Hierarchical classification trees can also be used to filter documents to return only those documents to the user according to user preferences. In addition, the classification tree can return indications of additional documents that are similar to or associated with the selected document. For example, the query engine can retrieve documents based on query terms, and the retrieved documents can be associated with specific nodes of the binary classification tree. The query engine can also return not only the retrieved documents, but also a list of documents associated with the same node and / or adjacent nodes to expand the search beyond the query terms presented by the user. . Additionally or alternatively, the label associated with the adjacent node can be returned to the user along with the retrieved document to indicate further searching for the location of the desired document. Categorized documents can also be searched based on node associations to limit the search to only a portion of the available documents. It should be understood that any suitable information retrieval method and use may be appropriately based on the binary tree described above.

図6は、ツリー生成器220と文書ソータ240との任意の組み合わせを実施できる好適なコンピューティングシステム環境900の例を示している。コンピューティングシステム環境900は、適したコンピューティング環境の一例にすぎず、本発明の使用または機能の範囲に関する限定を示唆するものではない。また、コンピューティング環境900を、動作環境900の例に示した構成要素のいずれか1つ、またはその組み合わせに関連する任意の依存性または必要条件を有しているものと解釈すべきではない。   FIG. 6 illustrates an example of a suitable computing system environment 900 in which any combination of tree generator 220 and document sorter 240 can be implemented. The computing system environment 900 is only one example of a suitable computing environment and is not intended to suggest any limitation as to the scope of use or functionality of the invention. Neither should the computing environment 900 be interpreted as having any dependency or requirement relating to any one or combination of components illustrated in the example operating environment 900.

本発明は、他の多くの汎用または専用コンピューティングシステム環境または構成で動作可能である。本発明との使用に適したよく知られているコンピューティングシステム、環境、および/または構成の例には、それだけには限定されないが、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルドまたはラップトップ装置、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラム可能家庭用電化製品、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、上記の任意のシステムまたは装置を含む分散コンピューティング環境などがある。   The invention is operational with numerous other general purpose or special purpose computing system environments or configurations. Examples of well-known computing systems, environments, and / or configurations suitable for use with the present invention include, but are not limited to, personal computers, server computers, handheld or laptop devices, multiprocessor systems, There are microprocessor-based systems, set-top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, distributed computing environments including any of the above systems or devices, and the like.

本発明は、コンピュータによって実行されるプログラムモジュールなどのコンピュータ実行可能命令の一般的な文脈で説明することができる。一般にプログラムモジュールは、特定のタスクを実行する、または特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、構成要素、データ構造などを含む。また、本発明は、タスクが通信ネットワークによってリンクされているリモート処理装置によって実行される分散コンピューティング環境でも実施することができる。分散コンピューティング環境では、プログラムモジュールを、メモリ記憶装置を含むローカルおよびリモートのコンピュータ記憶媒体に置くことができる。   The invention may be described in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. The invention may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules can be located in both local and remote computer storage media including memory storage devices.

図6を参照すると、本発明を実施するシステムの例は、汎用コンピューティング装置をコンピュータ20の形で含んでいる。コンピュータ20の構成要素は、それだけには限定されないが、処理ユニット21、システムメモリ22、およびシステムメモリを含む様々なシステム構成要素を処理ユニット21に結合するシステムバス23を含む。システムバス23は、様々なバスアーキテクチャのうちの任意のものを使用するメモリバスまたはメモリコントローラ、周辺バス、およびローカルバスを含むいくつかのタイプのバス構造のうちどんなものでもよい。こうしたアーキテクチャには、それだけには限定されないが一例として、業界標準アーキテクチャ(ISA)バス、マイクロチャネルアーキテクチャ(MCA)バス、拡張ISA(EISA)バス、ビデオ電子装置規格化協会(VESA)ローカルバス、およびメザニンバスとしても知られている周辺部品相互接続(PCI)バスなどがある。   With reference to FIG. 6, an exemplary system for implementing the invention includes a general purpose computing device in the form of a computer 20. The components of the computer 20 include, but are not limited to, a processing unit 21, a system memory 22, and a system bus 23 that couples various system components including the system memory to the processing unit 21. The system bus 23 may be any of several types of bus structures including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures. Examples of such architectures include, but are not limited to, industry standard architecture (ISA) bus, microchannel architecture (MCA) bus, extended ISA (EISA) bus, video electronics standardization association (VESA) local bus, and mezzanine There are peripheral component interconnect (PCI) buses, also known as buses.

コンピュータ20は、一般に様々なコンピュータ可読媒体を含む。コンピュータ可読媒体は、コンピュータ20からアクセスできる使用可能な任意の媒体とすることができ、揮発性および不揮発性媒体、取外式および固定式媒体を含む。コンピュータ可読媒体は、それだけには限定されないが一例として、コンピュータ記憶媒体および通信媒体を含み得る。コンピュータ記憶媒体には、コンピュータ可読命令、データ構造、プログラムモジュール、他のデータなど、情報を記憶するための任意の方法または技術で実施される揮発性および不揮発性の取外式および固定式媒体がある。コンピュータ記憶媒体には、それだけには限定されないが、RAM、ROM、EEPROM、フラッシュメモリまたは他のメモリ技術、CD−ROM、デジタル多用途ディスク(DVD)または他の光ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置または他の磁気記憶装置、または所望の情報の格納に使用でき、コンピュータ20からアクセスできる他の任意の媒体などがある。通信媒体は一般に、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータを搬送波または他の移送機構などの変調されたデータ信号に組み込む。これには任意の情報配送媒体がある。「変調されたデータ信号」という用語は、信号に情報を符号化するように1つまたは複数のその特性が設定または変更された信号を意味する。通信媒体には、それだけには限定されないが一例として、有線ネットワーク、直接配線された接続などの有線媒体、および音響、RF、赤外線、その他の無線媒体などの無線媒体がある。また、上記のどんな組み合わせでもコンピュータ可読媒体の範囲内に含まれるものとする。   Computer 20 typically includes a variety of computer readable media. Computer readable media can be any available media that can be accessed by computer 20 and includes both volatile and nonvolatile media, removable and non-removable media. Computer-readable media can include, by way of example and not limitation, computer storage media and communication media. Computer storage media includes volatile and non-volatile removable and non-removable media implemented in any method or technique for storing information, such as computer readable instructions, data structures, program modules, and other data. is there. Computer storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disk (DVD) or other optical disk storage device, magnetic cassette, magnetic tape, There may be a magnetic disk storage device or other magnetic storage device, or any other medium that can be used to store desired information and that is accessible from the computer 20. Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism. This includes any information delivery medium. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. Examples of communication media include, but are not limited to, wired media such as wired networks, direct wired connections, and wireless media such as acoustic, RF, infrared, and other wireless media. Any combination of the above should be included within the scope of computer-readable media.

システムメモリ22は、読み取り専用メモリ(ROM)24やランダムアクセスメモリ(RAM)25など、揮発性および/または不揮発性メモリの形のコンピュータ記憶媒体を含む。基本入出力システム26(BIOS)は、例えば起動中など、コンピュータ20内の要素間での情報の転送を助ける基本ルーチンを含み、一般にROM24に格納されている。RAM25は一般に、処理ユニット21から直接アクセス可能な、かつ/または処理ユニット21が現在処理しているデータおよび/またはプログラムモジュールを含む。図6は、それだけには限定されないが一例として、オペレーティングシステム35、アプリケーションプログラム36、他のプログラムモジュール37、およびプログラムデータ38を示している。   The system memory 22 includes computer storage media in the form of volatile and / or nonvolatile memory such as read only memory (ROM) 24 and random access memory (RAM) 25. The basic input / output system 26 (BIOS) includes basic routines that assist in transferring information between elements within the computer 20, such as during startup, and is generally stored in the ROM 24. The RAM 25 generally includes data and / or program modules that are directly accessible from and / or currently being processed by the processing unit 21. FIG. 6 shows, by way of example and not limitation, an operating system 35, application programs 36, other program modules 37, and program data 38.

コンピュータ20は、他の取外式/固定式、揮発性/不揮発性コンピュータ記憶媒体を含むこともできる。一例にすぎないが、図6は、固定式不揮発性磁気媒体から読み取り、あるいはそこに書き込むハードディスクドライブ27、取外式不揮発性磁気ディスク29から読み取り、あるいはそこに書き込む磁気ディスクドライブ28、およびCD−ROMや他の光媒体など、取外式不揮発性光ディスク31から読み取り、あるいはそこに書き込む光ディスクドライブ30を示している。動作環境の例で使用できる他の取外式/固定式、揮発性/不揮発性コンピュータ記憶媒体には、それだけには限定されないが、磁気テープカセット、フラッシュメモリカード、デジタル多用途ディスク、デジタルビデオテープ、半導体RAM、半導体ROMなどがある。ハードディスクドライブ27は一般に、インターフェイス32などの固定式メモリインターフェイスを介してシステムバス23に接続され、磁気ディスクドライブ28および光ディスクドライブ30は一般に、インターフェイス33などの取外式メモリインターフェイスによってシステムバス23に接続される。   The computer 20 may also include other removable / non-removable, volatile / nonvolatile computer storage media. By way of example only, FIG. 6 illustrates a hard disk drive 27 that reads from or writes to a fixed non-volatile magnetic medium, a magnetic disk drive 28 that reads from or writes to a removable non-volatile magnetic disk 29, and a CD- An optical disk drive 30 is shown which reads from or writes to a removable non-volatile optical disk 31, such as a ROM or other optical medium. Other removable / fixed, volatile / nonvolatile computer storage media that can be used in the example operating environment include, but are not limited to, magnetic tape cassettes, flash memory cards, digital versatile discs, digital video tapes, There are semiconductor RAM, semiconductor ROM, and the like. The hard disk drive 27 is typically connected to the system bus 23 via a fixed memory interface such as an interface 32, and the magnetic disk drive 28 and optical disk drive 30 are typically connected to the system bus 23 via a removable memory interface such as an interface 33. Is done.

上述し、図6に示したドライブおよびその関連のコンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、およびコンピュータ20の他のデータの記憶域を提供する。図6では例えば、ハードディスクドライブ27は、オペレーティングシステム35、アプリケーションプログラム36、他のプログラムモジュール37、およびプログラムデータ38を格納するものとして示されている。これらの構成要素は、オペレーティングシステム35、アプリケーションプログラム36、他のプログラムモジュール37、およびプログラムデータ38と同じであっても、異なっていてもよいことに留意されたい。オペレーティングシステム35、アプリケーションプログラム36、他のプログラムモジュール37、およびプログラムデータ38は少なくとも異なるコピーである。ユーザは、キーボード40、および一般にマウス、トラックボール、またはタッチパッドと呼ばれるポインティング装置42などの入力装置を介してコマンドおよび情報をコンピュータ20に入力することができる。他の入力装置(図示せず)には、マイクロフォン、ジョイスティック、ゲームパッド、衛星パラボラアンテナ、スキャナなどがある。これらおよび他の入力装置は、しばしばシステムバスに結合されているユーザ入力インターフェイス46を介して処理ユニット21に接続されるが、パラレルポート、ゲームポート、ユニバーサルシリアルバス(USB)など他のインターフェイスおよびバス構造で接続してもよい。モニタ47または他のタイプの表示装置もまた、ビデオインターフェイス58などのインターフェイスを介してシステムバス23に接続される。モニタに加えて、コンピュータは、出力周辺インターフェイスを介して接続できるスピーカ、プリンタなど他の周辺出力装置を含むこともできる。   The drive described above and shown in FIG. 6 and its associated computer storage media provide storage for computer readable instructions, data structures, program modules, and other data on the computer 20. In FIG. 6, for example, hard disk drive 27 is shown as storing operating system 35, application program 36, other program modules 37, and program data 38. Note that these components can either be the same as or different from operating system 35, application programs 36, other program modules 37, and program data 38. The operating system 35, application program 36, other program modules 37, and program data 38 are at least different copies. A user may enter commands and information into the computer 20 through input devices such as a keyboard 40 and pointing device 42, commonly referred to as a mouse, trackball or touch pad. Other input devices (not shown) include a microphone, joystick, game pad, satellite dish, scanner, and the like. These and other input devices are often connected to the processing unit 21 via a user input interface 46 that is coupled to the system bus, but other interfaces and buses such as parallel ports, game ports, universal serial bus (USB), etc. You may connect by structure. A monitor 47 or other type of display device is also connected to the system bus 23 via an interface, such as a video interface 58. In addition to the monitor, the computer can also include other peripheral output devices such as speakers, printers, etc. that can be connected via an output peripheral interface.

コンピュータ20は、リモートコンピュータ49など1つまたは複数のリモートコンピュータへの論理接続を使用してネットワーク式環境で動作することができる。リモートコンピュータ49は、パーソナルコンピュータ、サーバ、ルータ、ネットワークPC、ピア装置、または他の一般のネットワークノードでよく、一般にコンピュータ20に関連して上述した多くまたはすべての要素を含むが、図6にはメモリ記憶装置50のみを示している。図6に示した論理接続は、ローカルエリアネットワーク(LAN)51および広域ネットワーク(WAN)52を含むが、他のネットワークを含んでいてもよい。こうしたネットワーキング環境は、オフィス、全社規模のコンピュータネットワーク、イントラネット、およびインターネットではごく一般的である。   Computer 20 can operate in a networked environment using logical connections to one or more remote computers, such as remote computer 49. The remote computer 49 may be a personal computer, server, router, network PC, peer device, or other common network node, and generally includes many or all of the elements described above in connection with the computer 20, although FIG. Only the memory storage device 50 is shown. The logical connection shown in FIG. 6 includes a local area network (LAN) 51 and a wide area network (WAN) 52, but may include other networks. Such networking environments are very common in offices, enterprise-wide computer networks, intranets, and the Internet.

LANネットワーキング環境で使用する場合、コンピュータ20は、ネットワークインターフェイスまたはアダプタ53を介してLAN51に接続される。WANネットワーキング環境で使用する場合、コンピュータ20は一般に、モデム54、またはインターネットなどWAN52を介して通信を確立する他の手段を含む。モデム54は、内蔵のものでも外付けのものでもよく、ユーザ入力インターフェイス46または他の適切な機構を介してシステムバス23に接続することができる。ネットワーク式環境では、コンピュータ20に関連して示したプログラムモジュール、またはその一部をリモートメモリ記憶装置に格納することができる。図6は、それだけには限定されないが一例として、リモートアプリケーションプログラム36をメモリ装置50上に存在するものとして示している。図示したネットワーク接続は例であり、コンピュータ間の通信リンクを確立する他の手段を使用してもよいことは理解されよう。   When used in a LAN networking environment, the computer 20 is connected to the LAN 51 via a network interface or adapter 53. When used in a WAN networking environment, the computer 20 typically includes a modem 54 or other means for establishing communications over the WAN 52, such as the Internet. The modem 54 may be internal or external and can be connected to the system bus 23 via a user input interface 46 or other suitable mechanism. In a networked environment, program modules shown in connection with computer 20 or portions thereof may be stored on a remote memory storage device. FIG. 6 shows the remote application program 36 as existing on the memory device 50 as an example, but not limited thereto. It will be appreciated that the network connections shown are exemplary and other means of establishing a communications link between the computers may be used.

本発明の好ましい実施形態について示し、説明してきたが、本発明の意図および範囲から逸脱することなく様々な変更を加えることができることを理解されたい。   While the preferred embodiment of the invention has been illustrated and described, it will be appreciated that various changes can be made therein without departing from the spirit and scope of the invention.

独占的な権利または特権を主張する本発明の実施形態は頭記のように定義される。   Embodiments of the invention that claim exclusive rights or privileges are defined as above.

一実施形態における階層型バイナリツリー例を示す図である。It is a figure which shows the example of the hierarchical binary tree in one Embodiment. 一実施形態における図1のバイナリツリーを形成し、使用するのに適したバイナリツリー分類プロセスを示す概略図例である。FIG. 2 is a schematic diagram illustrating a binary tree classification process suitable for forming and using the binary tree of FIG. 1 in one embodiment. 一実施形態における図2の分類プロセスのツリー生成例を示す概略図である。FIG. 3 is a schematic diagram illustrating a tree generation example of the classification process of FIG. 2 in one embodiment. 一実施形態における分類バイナリツリーを生成する方法例を示すフローチャートである。6 is a flowchart illustrating an example method for generating a classified binary tree in one embodiment. 一実施形態におけるバイナリツリーに文書を割り当てる方法例を示すフローチャートである。6 is a flowchart illustrating an example method for assigning a document to a binary tree according to an embodiment. 本発明の一実施形態を実施するのに有用なシステム例を示すブロック図である。1 is a block diagram illustrating an example system useful for implementing an embodiment of the present invention.

符号の説明Explanation of symbols

151〜161 ノード
210 訓練文書
220 ツリー生成器
240 文書ソータ
242 文書
260 情報取り出しシステム
310 用語生成器
320 用語ベクトル
330 ノード生成器
360 文書割当器
362,364,366 文書セット
370 ツリーマネージャ

151-161 Node 210 Training document 220 Tree generator 240 Document sorter 242 Document 260 Information retrieval system 310 Term generator 320 Term vector 330 Node generator 360 Document assigner 362, 364, 366 Document set 370 Tree manager

Claims (36)

(a)1組の訓練文書に基づいた訓練用語のリストを受信し、第1の確率の組を含む第1の兄弟ノードを生成し、第2の確率の組を含む第2の兄弟ノードを生成するように構成されているノード生成器であって、前記第1の確率の組は、前記訓練用語のリスト内の用語ごとに、前記用語が文書に出現する確率を含み、前記第2の確率の組は、前記訓練用語のリスト内の用語ごとに、前記用語が文書に出現する確率を含むノード生成器と、
(b)前記第1および第2の確率の組に基づいて、前記1組の訓練文書の各文書を、前記第1の兄弟ノード、前記第2の兄弟ノード、およびヌルセットから成るグループのうちの少なくとも1つに関連付けるように構成されている文書割当器であって、前記文書は第1の文書セットを形成する前記第1の兄弟ノードに関連付けられ、前記文書は第2の文書セットを形成する前記第2の兄弟ノードに関連付けられる文書割当器と、
(c)前記第1の文書セットおよび第2の文書セットのうちの少なくとも一方を前記ノード生成器に接続して、前記ノード生成器および前記文書割当器の再帰的性能に基づいて、複数の兄弟ノードの階層を含むバイナリツリーデータ構造を作成するように構成されているツリーマネージャと
を含むコンピュータ実行可能構成要素を有することを特徴とするコンピュータ可読媒体。
(A) receiving a list of training terms based on a set of training documents, generating a first sibling node including a first set of probabilities, and selecting a second sibling node including a second set of probabilities A node generator configured to generate, wherein the first set of probabilities includes, for each term in the list of training terms, a probability that the term appears in a document; A set of probabilities, for each term in the list of training terms, a node generator containing the probability that the term appears in the document;
(B) based on the set of first and second probabilities, each document of the set of training documents is selected from the group consisting of the first sibling node, the second sibling node, and a null set. A document allocator configured to associate with at least one, wherein the document is associated with the first sibling node forming a first document set, and the document forms a second document set. A document allocator associated with the second sibling node;
(C) connecting at least one of the first document set and the second document set to the node generator, and a plurality of siblings based on recursive performance of the node generator and the document allocator. A computer readable medium comprising: a computer executable component including: a tree manager configured to create a binary tree data structure including a hierarchy of nodes.
新しい文書を、前記確率の組の前記生成された確率に基づいて前記複数の兄弟ノードのうちの少なくとも1つのノードに関連付けるように構成されている文書ソータをさらに含むことを特徴とする請求項1に記載のコンピュータ可読媒体。   The document sorter is further configured to associate a new document with at least one of the plurality of sibling nodes based on the generated probability of the set of probabilities. A computer-readable medium according to claim 1. 前記文書ソータは、前記新しい文書と前記第1および第2の兄弟ノードのそれぞれとの間の統計距離を比較することを特徴とする請求項2に記載のコンピュータ可読媒体。   The computer-readable medium of claim 2, wherein the document sorter compares statistical distances between the new document and each of the first and second sibling nodes. 前記1組の訓練文書を受信し、前記1組の訓練文書内の前記文書の少なくとも一部分に出現する用語に基づいて前記訓練用語のリストを生成するように構成されている用語生成器をさらに含むことを特徴とする請求項1に記載のコンピュータ可読媒体。   A term generator configured to receive the set of training documents and generate a list of the training terms based on terms appearing in at least a portion of the documents in the set of training documents. The computer-readable medium of claim 1. 前記用語生成器は、前記文書の少なくとも一部分に出現する前記用語の出現頻度に基づいて前記訓練用語のリストを生成することを特徴とする請求項4に記載のコンピュータ可読媒体。   The computer-readable medium of claim 4, wherein the term generator generates the list of training terms based on the frequency of occurrence of the terms appearing in at least a portion of the document. 前記用語生成器は、予め定められた排除用語のリストを考慮に入れることを特徴とする請求項4に記載のコンピュータ可読媒体。   The computer-readable medium of claim 4, wherein the term generator takes into account a predetermined list of excluded terms. 前記ノード生成器は、前記第1および第2の確率の組に基づいて第1および第2のノードに関連付けられた訓練文書のすべてについての尤度を最大にすることに基づいて、前記第1および第2の確率の組を決定することを特徴とする請求項1に記載のコンピュータ可読媒体。   The node generator is configured to maximize the likelihood for all of the training documents associated with the first and second nodes based on the first and second set of probabilities. The computer-readable medium of claim 1, wherein the set of and second probabilities is determined. 前記ノード生成器は、期待値最大化アルゴリズムに基づいて前記尤度を最大にすることを特徴とする請求項7に記載のコンピュータ可読媒体。   The computer-readable medium of claim 7, wherein the node generator maximizes the likelihood based on an expectation maximization algorithm. 前記文書割当器は、前記1組の訓練文書の各文書と、前記第1のノードおよび前記第2のノードのそれぞれとの間の統計距離値を決定することを特徴とする請求項1に記載のコンピュータ可読媒体。   The document allocator determines a statistical distance value between each document of the set of training documents and each of the first node and the second node. Computer readable media. 前記文書割当器は、前記文書と前記第1のノードとの間の前記決定された距離値が予め定められた閾値を下回る場合、前記1組の訓練文書の文書を前記第1のノードに関連づけることを特徴とする請求項9に記載のコンピュータ可読媒体。   The document allocator associates documents of the set of training documents with the first node when the determined distance value between the document and the first node is below a predetermined threshold. The computer-readable medium of claim 9. 前記距離値はKl divergence値であることを特徴とする請求項9に記載のコンピュータ可読媒体。   The computer-readable medium of claim 9, wherein the distance value is a Kl divergence value. (a)1組の訓練文書で検出される個々の用語に割り当てられた第1の確率のリストが関連付けられているコンピュータ可読媒体の少なくとも1つの領域に格納されているルートノードと、
(b)前記コンピュータ可読媒体の少なくとも1つの領域に格納され、親−子関係で前記ルートノードに関連付けられている第1の子ノードであって、1組の訓練ノードで検出される個々の用語に割り当てられた第2の確率のリストが関連付けられている第1の子ノードと、
(c)前記コンピュータ可読媒体の少なくとも1つの領域に格納され、親−子関係で前記ルートノードに関連付けられている第2の子ノードであって、1組の訓練ノードで検出される個々の用語に割り当てられた第3の確率のリストが関連付けられている第2の子ノードと
を含むバイナリツリーデータ構造を格納することを特徴とするコンピュータ可読媒体。
(A) a root node stored in at least one region of a computer readable medium associated with a list of first probabilities assigned to individual terms detected in a set of training documents;
(B) a first child node stored in at least one region of the computer readable medium and associated with the root node in a parent-child relationship and detected by a set of training nodes A first child node associated with a second list of probabilities assigned to
(C) a second child node stored in at least one region of the computer readable medium and associated with the root node in a parent-child relationship, the individual terms detected at a set of training nodes A computer readable medium storing a binary tree data structure comprising: a second child node associated with a list of third probabilities assigned to.
(a)文書に出現する複数の用語と、
(b)バイナリ分類ツリーのどのノードが前記文書に関連付けられているかを示すノードインジケータを含むメタデータであって、前記バイナリ分類ツリーの各ノードは、用語リストおよび用語確率リストに関連付けられるメタデータと
を含む前記文書を格納することを特徴とするコンピュータ可読媒体。
(A) a plurality of terms appearing in the document;
(B) metadata including a node indicator indicating which nodes of the binary classification tree are associated with the document, each node of the binary classification tree including metadata associated with a term list and a term probability list; A computer readable medium storing the document including:
前記メタデータはテキスト文字列を含むことを特徴とする請求項13に記載のコンピュータ可読媒体。   The computer-readable medium of claim 13, wherein the metadata comprises a text string. 前記テキスト文字列は、前記バイナリ分類ツリーを介する前記関連のノードへの前記パスのバイナリ指示を含むことを特徴とする請求項14に記載のコンピュータ可読媒体。   The computer-readable medium of claim 14, wherein the text string includes a binary indication of the path to the associated node through the binary classification tree. (a)1組の訓練文書に基づいてバイナリ分類ツリーを作成するステップであって、前記バイナリ分類ツリーの各ノードは用語のリストに関連付けられ、前記各用語のリスト内の各用語が当該用語が前記ノードに与えられた文書に出現する確率に関連付けられるステップと、
(b)新しい文書を当該文書と前記ノードとの間の距離値に基づいて前記バイナリツリーの少なくとも1つのノードに関連付けるステップと
を含むことを特徴とする方法。
(A) creating a binary classification tree based on a set of training documents, wherein each node of the binary classification tree is associated with a list of terms, and each term in the list of terms is represented by the term Associated with the probability of appearing in the document given to the node;
(B) associating a new document with at least one node of the binary tree based on a distance value between the document and the node.
前記バイナリ分類ツリーを作成するステップは、前記1組の訓練文書内の各文書が前記バイナリ分類ツリーの2つの兄弟ノードのそれぞれに関連付けられている前記用語のリストによって生成される尤度を最大にする期待値最大化アルゴリズムに基づいて文書に出現する前記用語の各確率を決定するステップを含むことを特徴とする請求項16に記載の方法。   Creating the binary classification tree maximizes the likelihood that each document in the set of training documents is generated by the list of terms associated with each of the two sibling nodes of the binary classification tree. 17. The method of claim 16, comprising determining each probability of the term appearing in a document based on an expected value maximization algorithm. 前記距離値はKl divergenceに基づいて決定されることを特徴とする請求項16に記載の方法。   The method of claim 16, wherein the distance value is determined based on Kl divergence. 前記新しい文書は距離閾値を下回るKl divergenceを有するノードに関連付けられていることを特徴とする請求項18に記載の方法。   The method of claim 18, wherein the new document is associated with a node having a Kl divergence below a distance threshold. 前記新しい文書を関連付けるステップは、前記新しい文書を、パスが前記パスにわたって最も小さいKl divergenceを有するノードに関連付けるステップを含むことを特徴とする請求項18に記載の方法。   19. The method of claim 18, wherein associating the new document includes associating the new document with a node whose path has the smallest Kl divergence across the path. 前記バイナリ分類ツリーを作成するステップは、前記用語のリストに関連付けられている前記ノードの親ノードに関連付けられている前記用語のリストに基づいてノードに関連付けられる用語の各リストを決定するステップを含むことを特徴とする請求項16に記載の方法。   Creating the binary classification tree includes determining each list of terms associated with a node based on the list of terms associated with a parent node of the node associated with the list of terms. The method according to claim 16. 前記バイナリ分類ツリーを作成するステップは、前記1組の訓練文書の少なくとも一部分を第1の子ノード、第2の子ノード、およびヌルセットのうちの少なくとも1つに関連付けるステップを含むことを特徴とする請求項16に記載の方法。   Creating the binary classification tree includes associating at least a portion of the set of training documents with at least one of a first child node, a second child node, and a null set. The method of claim 16. 前記訓練文書の少なくとも一部分を関連付けるステップは、各用語が前記第1の子ノードに関連付けられる各確率、および各用語が前記第2の子ノードに関連付けられる各確率に基づくことを特徴とする請求項22に記載の方法。   The step of associating at least a portion of the training document is based on each probability that each term is associated with the first child node and each probability that each term is associated with the second child node. 23. The method according to 22. (a)文書にアクセスするステップと、
(b)1組の訓練用語が前記文書に出現する第1の確率に基づいて、前記文書と2つの兄弟ノードのうちの第1のものとの間の第1の距離値を決定するステップと、
(c)前記1組の訓練用語が前記文書に出現する第2の確率に基づいて、前記文書と2つの兄弟ノードのうちの第2のものとの間の第2の距離値を決定するステップと、
(d)前記第1の距離値が距離閾値を下回る場合、2つの子ノードが2つの兄弟ノードのうちの第1のものに関連付けられているかどうかを決定するステップと、
(e)2つの子ノードが2つの兄弟ノードのうちの第1のものに関連付けられている場合、前記文書と前記2つの子ノードのうちの前記第1のものとの間の第3の距離値を決定し、前記文書と前記第2の子ノードのうちの第2のものとの間の第4の距離値を決定するステップと、
(f)2つの子ノードが2つの兄弟ノードのうちの第1のものに関連付けられている場合、前記第3の距離値および前記第4の距離値に基づいて前記文書を前記第1および第2の子ノードのうちの少なくとも一方に関連付けるステップと
を含むステップを実行するコンピュータ実行可能命令を有することを特徴とするコンピュータ可読媒体。
(A) accessing a document;
(B) determining a first distance value between the document and a first of the two sibling nodes based on a first probability that a set of training terms will appear in the document; ,
(C) determining a second distance value between the document and a second of the two sibling nodes based on a second probability that the set of training terms appears in the document. When,
(D) determining whether two child nodes are associated with a first of two sibling nodes if the first distance value is below a distance threshold;
(E) a third distance between the document and the first of the two child nodes if two child nodes are associated with the first of the two sibling nodes Determining a value and determining a fourth distance value between the document and a second one of the second child nodes;
(F) if two child nodes are associated with the first of the two sibling nodes, the document is said to be based on the third distance value and the fourth distance value. A computer-readable medium having computer-executable instructions for performing steps including: associating with at least one of two child nodes.
前記第1の距離値を決定するステップは、前記文書と2つの兄弟ノードのうちの第1のものとの間の第1のKl divergenceを決定するステップを含み、前記第2の距離値を決定するステップは、前記文書と2つの兄弟ノードのうちの第2のものとの間の第2のKl divergenceを決定するステップを含むことを特徴とする請求項24に記載のコンピュータ可読媒体。   Determining the first distance value includes determining a first Kl divergence between the document and a first one of two sibling nodes, and determining the second distance value. The computer-readable medium of claim 24, wherein the step of determining includes determining a second Kl divergence between the document and a second of two sibling nodes. 前記距離閾値は前記第2の距離値であることを特徴とする請求項24に記載のコンピュータ可読媒体。   The computer-readable medium of claim 24, wherein the distance threshold is the second distance value. 前記距離閾値は予め定められたエントロピ値であることを特徴とする請求項24に記載のコンピュータ可読媒体。   The computer-readable medium of claim 24, wherein the distance threshold is a predetermined entropy value. 前記第2の距離値が前記距離閾値を下回るかどうかを決定し、他の2つの子ノードが2つの兄弟ノードのうちの第2のものに関連付けられているかどうかを決定するステップをさらに含むことを特徴とする請求項24に記載のコンピュータ可読媒体。   Further comprising determining whether the second distance value is below the distance threshold and determining whether the other two child nodes are associated with a second of the two sibling nodes. 25. The computer readable medium of claim 24. 他の2つの子ノードが2つの兄弟ノードのうちの第2のものに関連付けられている場合、前記文書と前記他の2つの子ノードのうちの第1のものとの間の第5の距離値を決定し、前記文書と前記他の2つの子ノードのうちの第2のものとの間の第6の距離値を決定するステップをさらに含むことを特徴とする請求項28に記載のコンピュータ可読媒体。   A fifth distance between the document and the first of the other two child nodes if the other two child nodes are associated with a second of the two sibling nodes 29. The computer of claim 28, further comprising determining a value and determining a sixth distance value between the document and a second of the other two child nodes. A readable medium. 他の2つの子ノードが2つの兄弟ノードのうちの第2のものに関連付けられていない場合、前記文書を2つの兄弟ノードのうちの第2のものに関連付けるステップをさらに含むことを特徴とする請求項28に記載のコンピュータ可読媒体。   If the other two child nodes are not associated with a second of the two sibling nodes, the method further comprises associating the document with the second of the two sibling nodes. 30. The computer readable medium of claim 28. 2つの子ノードが2つの兄弟ノードのうちの第1のものに関連付けられていない場合、前記文書を2つの兄弟ノードのうちの第1のものに関連付けるステップをさらに含むことを特徴とする請求項24に記載のコンピュータ可読媒体。   The method further comprises associating the document with the first of the two sibling nodes if two child nodes are not associated with the first of the two sibling nodes. 24. The computer readable medium according to 24. 前記第1および第2の距離値のいずれも前記距離閾値を下回らない場合、前記文書を2つの兄弟ノードのうちの前記第1および第2のものの親ノードに関連付けるステップをさらに含むことを特徴とする請求項24に記載のコンピュータ可読媒体。   Further comprising associating the document with a parent node of the first and second of the two sibling nodes if neither of the first and second distance values is below the distance threshold. 25. The computer readable medium of claim 24. (a)用語のリストをそれぞれ含む1組の訓練文書を受信するステップと、
(b)前記用語のリストに列挙された前記用語の少なくとも一部分から第1の組の訓練用語を選択するステップと、
(c)前記訓練用語ごとに、前記訓練用語が任意の文書に出現する第1の確率を生成し、その確率を第1のノードに関連付けるステップと、
(d)前記訓練用語ごとに、前記訓練用語が任意の文書に出現する第2の確率を生成し、その確率を第2のノードに関連付けるステップと、
(e)前記訓練用語ごとの前記第1および第2の確率に基づいて、前記用語のリストの各々を、前記第1のノード、前記第2のノード、およびヌルセットから成る前記グループのうちの少なくとも1つに関連付けるステップと、
(f)前記第1のノードに関連付けられている前記用語のリストに列挙された前記用語の少なくとも一部分から第2の組の訓練用語を形成するステップと、
(g)前記第2の組の訓練用語内の前記訓練用語ごとに、前記訓練用語が任意の文書に出現する第3の確率を生成し、その確率を第3のノードに関連付けるステップと、
(h)前記第2の組の訓練用語内の前記訓練用語ごとに、前記訓練用語が任意の文書に出現する第4の確率を生成し、その確率を第4のノードに関連付けるステップと、
(i)訓練用語ごとの前記第3および第4の確率に基づいて、用語の各リストを、前記第3のノード、前記第4のノード、および前記ヌルセットから成る前記グループのうちの少なくとも1つに関連付けるステップと
を含むことを特徴とする方法。
(A) receiving a set of training documents each including a list of terms;
(B) selecting a first set of training terms from at least a portion of the terms listed in the list of terms;
(C) generating, for each training term, a first probability that the training term appears in any document and associating the probability with a first node;
(D) generating, for each training term, a second probability that the training term appears in any document and associating the probability with a second node;
(E) based on the first and second probabilities for each training term, each of the list of terms is at least one of the group consisting of the first node, the second node, and a null set. Associating with one,
(F) forming a second set of training terms from at least a portion of the terms listed in the list of terms associated with the first node;
(G) for each training term in the second set of training terms, generating a third probability that the training term appears in any document and associating the probability with a third node;
(H) for each training term in the second set of training terms, generating a fourth probability that the training term appears in any document and associating the probability with a fourth node;
(I) Based on the third and fourth probabilities for each training term, each list of terms is at least one of the group consisting of the third node, the fourth node, and the null set. And a step of associating with.
前記用語の前記確率を生成するステップは、前記用語のリストの各々が前記バイナリツリーの層の第1のノードおよび第2のノードの少なくとも一方にある前記確率を最大にするステップを含むことを特徴とする請求項33に記載の方法。   Generating the probabilities of the terms includes maximizing the probabilities that each list of terms is in at least one of a first node and a second node of the binary tree layer. 34. The method of claim 33. 新しい文書を前記バイナリツリーのノードに割り当てるステップをさらに含むことを特徴とする請求項33に記載の方法。   The method of claim 33, further comprising assigning a new document to a node of the binary tree. 前記新しい文書を割り当てるステップは、前記新しい文書に出現する用語の新しいリストを生成し、各用語が前記ツリーの各ノードに関連付けられる前記確率に基づいて前記ツリーを歩くステップを含むことを特徴とする請求項35に記載の方法。
Assigning the new document includes generating a new list of terms that appear in the new document and walking the tree based on the probability that each term is associated with each node of the tree. 36. The method of claim 35.
JP2005184985A 2004-06-30 2005-06-24 Automatic classification generation Expired - Fee Related JP4141460B2 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/881,893 US7266548B2 (en) 2004-06-30 2004-06-30 Automated taxonomy generation

Publications (3)

Publication Number Publication Date
JP2006018829A true JP2006018829A (en) 2006-01-19
JP2006018829A5 JP2006018829A5 (en) 2008-02-14
JP4141460B2 JP4141460B2 (en) 2008-08-27

Family

ID=35063178

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005184985A Expired - Fee Related JP4141460B2 (en) 2004-06-30 2005-06-24 Automatic classification generation

Country Status (8)

Country Link
US (1) US7266548B2 (en)
EP (1) EP1612701A3 (en)
JP (1) JP4141460B2 (en)
KR (1) KR20060048583A (en)
CN (1) CN1716256A (en)
BR (1) BRPI0502591A (en)
CA (1) CA2510761A1 (en)
MX (1) MXPA05007136A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007272892A (en) * 2006-03-29 2007-10-18 Xerox Corp Hierarchical clustering with real-time updating
JP2008299382A (en) * 2007-05-29 2008-12-11 Fujitsu Ltd Data division program, recording medium recording the program, data division apparatus, and data division method
US11657077B2 (en) 2016-03-03 2023-05-23 Rakuten Group, Inc. Document classification device, document classification method and document classification program

Families Citing this family (87)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2556023A1 (en) * 2004-02-20 2005-09-09 Dow Jones Reuters Business Interactive, Llc Intelligent search and retrieval system and method
US7698333B2 (en) * 2004-07-22 2010-04-13 Factiva, Inc. Intelligent query system and method using phrase-code frequency-inverse phrase-code document frequency module
EP1825395A4 (en) * 2004-10-25 2010-07-07 Yuanhua Tang Full text query and search systems and methods of use
US20080077570A1 (en) * 2004-10-25 2008-03-27 Infovell, Inc. Full Text Query and Search Systems and Method of Use
US7814105B2 (en) * 2004-10-27 2010-10-12 Harris Corporation Method for domain identification of documents in a document database
US7457808B2 (en) * 2004-12-17 2008-11-25 Xerox Corporation Method and apparatus for explaining categorization decisions
US9400838B2 (en) * 2005-04-11 2016-07-26 Textdigger, Inc. System and method for searching for a query
CA2545237A1 (en) * 2005-07-29 2007-01-29 Cognos Incorporated Method and system for managing exemplar terms database for business-oriented metadata content
CA2545232A1 (en) * 2005-07-29 2007-01-29 Cognos Incorporated Method and system for creating a taxonomy from business-oriented metadata content
US8023739B2 (en) * 2005-09-27 2011-09-20 Battelle Memorial Institute Processes, data structures, and apparatuses for representing knowledge
US8600997B2 (en) * 2005-09-30 2013-12-03 International Business Machines Corporation Method and framework to support indexing and searching taxonomies in large scale full text indexes
WO2007081681A2 (en) 2006-01-03 2007-07-19 Textdigger, Inc. Search system with query refinement and search method
WO2007114932A2 (en) 2006-04-04 2007-10-11 Textdigger, Inc. Search system and method with text function tagging
US8429526B2 (en) * 2006-04-10 2013-04-23 Oracle International Corporation Efficient evaluation for diff of XML documents
US8055597B2 (en) * 2006-05-16 2011-11-08 Sony Corporation Method and system for subspace bounded recursive clustering of categorical data
US7664718B2 (en) * 2006-05-16 2010-02-16 Sony Corporation Method and system for seed based clustering of categorical data using hierarchies
US20070271286A1 (en) * 2006-05-16 2007-11-22 Khemdut Purang Dimensionality reduction for content category data
US7761394B2 (en) * 2006-05-16 2010-07-20 Sony Corporation Augmented dataset representation using a taxonomy which accounts for similarity and dissimilarity between each record in the dataset and a user's similarity-biased intuition
US7630946B2 (en) * 2006-05-16 2009-12-08 Sony Corporation System for folder classification based on folder content similarity and dissimilarity
US7844557B2 (en) * 2006-05-16 2010-11-30 Sony Corporation Method and system for order invariant clustering of categorical data
US7640220B2 (en) * 2006-05-16 2009-12-29 Sony Corporation Optimal taxonomy layer selection method
US7961189B2 (en) * 2006-05-16 2011-06-14 Sony Corporation Displaying artists related to an artist of interest
US20080027971A1 (en) * 2006-07-28 2008-01-31 Craig Statchuk Method and system for populating an index corpus to a search engine
US9189464B2 (en) * 2006-09-27 2015-11-17 Educational Testing Service Method and system for XML multi-transform
US7496568B2 (en) * 2006-11-30 2009-02-24 International Business Machines Corporation Efficient multifaceted search in information retrieval systems
US20080140591A1 (en) * 2006-12-12 2008-06-12 Yahoo! Inc. System and method for matching objects belonging to hierarchies
KR100837751B1 (en) * 2006-12-12 2008-06-13 엔에이치엔(주) A method of measuring association between words based on a document set and a system for performing the method
US7689625B2 (en) * 2007-01-10 2010-03-30 Microsoft Corporation Taxonomy object modeling
US8104080B2 (en) * 2007-01-26 2012-01-24 Microsoft Corporation Universal schema for representing management policy
US20080184277A1 (en) * 2007-01-26 2008-07-31 Microsoft Corporation Systems management policy validation, distribution and enactment
US8732197B2 (en) * 2007-02-02 2014-05-20 Musgrove Technology Enterprises Llc (Mte) Method and apparatus for aligning multiple taxonomies
US9405819B2 (en) * 2007-02-07 2016-08-02 Fujitsu Limited Efficient indexing using compact decision diagrams
US20080222515A1 (en) * 2007-02-26 2008-09-11 Microsoft Corporation Parameterized types and elements in xml schema
US7765241B2 (en) * 2007-04-20 2010-07-27 Microsoft Corporation Describing expected entity relationships in a model
US7792826B2 (en) * 2007-05-29 2010-09-07 International Business Machines Corporation Method and system for providing ranked search results
US20090012984A1 (en) * 2007-07-02 2009-01-08 Equivio Ltd. Method for Organizing Large Numbers of Documents
US9081852B2 (en) * 2007-10-05 2015-07-14 Fujitsu Limited Recommending terms to specify ontology space
US8171029B2 (en) * 2007-10-05 2012-05-01 Fujitsu Limited Automatic generation of ontologies using word affinities
US20090112865A1 (en) * 2007-10-26 2009-04-30 Vee Erik N Hierarchical structure entropy measurement methods and systems
US20090254540A1 (en) * 2007-11-01 2009-10-08 Textdigger, Inc. Method and apparatus for automated tag generation for digital content
US8099430B2 (en) * 2008-12-18 2012-01-17 International Business Machines Corporation Computer method and apparatus of information management and navigation
US8745028B1 (en) * 2007-12-27 2014-06-03 Google Inc. Interpreting adjacent search terms based on a hierarchical relationship
US8331699B2 (en) * 2009-03-16 2012-12-11 Siemens Medical Solutions Usa, Inc. Hierarchical classifier for data classification
CN102474899A (en) * 2009-07-30 2012-05-23 朴琇民 Contact information providing device, method and portable terminal using same
US8600967B2 (en) * 2010-02-03 2013-12-03 Apple Inc. Automatic organization of browsing histories
US8954440B1 (en) * 2010-04-09 2015-02-10 Wal-Mart Stores, Inc. Selectively delivering an article
US20110307243A1 (en) * 2010-06-10 2011-12-15 Microsoft Corporation Multilingual runtime rendering of metadata
US20110307240A1 (en) * 2010-06-10 2011-12-15 Microsoft Corporation Data modeling of multilingual taxonomical hierarchies
US20120076416A1 (en) * 2010-09-24 2012-03-29 Castellanos Maria G Determining correlations between slow stream and fast stream information
US8775444B2 (en) * 2010-10-29 2014-07-08 Xerox Corporation Generating a subset aggregate document from an existing aggregate document
US11228566B1 (en) 2011-03-08 2022-01-18 Ciphercloud, Inc. System and method to anonymize data transmitted to a destination computing device
US9432342B1 (en) 2011-03-08 2016-08-30 Ciphercloud, Inc. System and method to anonymize data transmitted to a destination computing device
US8726398B1 (en) 2011-12-13 2014-05-13 Ciphercloud, Inc. System and method to anonymize data transmitted to a destination computing device
US9338220B1 (en) 2011-03-08 2016-05-10 Ciphercloud, Inc. System and method to anonymize data transmitted to a destination computing device
US9852311B1 (en) 2011-03-08 2017-12-26 Ciphercloud, Inc. System and method to anonymize data transmitted to a destination computing device
US9300637B1 (en) * 2011-03-08 2016-03-29 Ciphercloud, Inc. System and method to anonymize data transmitted to a destination computing device
US9413526B1 (en) 2011-03-08 2016-08-09 Ciphercloud, Inc. System and method to anonymize data transmitted to a destination computing device
US9356993B1 (en) 2011-03-08 2016-05-31 Ciphercloud, Inc. System and method to anonymize data transmitted to a destination computing device
US9667741B1 (en) 2011-03-08 2017-05-30 Ciphercloud, Inc. System and method to anonymize data transmitted to a destination computing device
US8645381B2 (en) * 2011-06-27 2014-02-04 International Business Machines Corporation Document taxonomy generation from tag data using user groupings of tags
US9477749B2 (en) 2012-03-02 2016-10-25 Clarabridge, Inc. Apparatus for identifying root cause using unstructured data
US20130246392A1 (en) * 2012-03-14 2013-09-19 Inago Inc. Conversational System and Method of Searching for Information
US8874435B2 (en) 2012-04-17 2014-10-28 International Business Machines Corporation Automated glossary creation
JP6183376B2 (en) * 2013-01-11 2017-08-23 日本電気株式会社 Index generation apparatus and method, search apparatus, and search method
GB2517122A (en) * 2013-04-30 2015-02-18 Giovanni Tummarello Method and system for navigating complex data sets
US9548049B2 (en) * 2014-02-19 2017-01-17 Honeywell International Inc. Methods and systems for integration of speech into systems
US10084526B2 (en) * 2014-07-25 2018-09-25 Sanechips Technology Co., Ltd. Path detection method and device, and sphere decoding detection device
US10002185B2 (en) 2015-03-25 2018-06-19 International Business Machines Corporation Context-aware cognitive processing
US20160371345A1 (en) * 2015-06-22 2016-12-22 International Business Machines Corporation Preprocessing Heterogeneously-Structured Electronic Documents for Data Warehousing
WO2017137439A1 (en) * 2016-02-08 2017-08-17 Koninklijke Philips N.V. Device for and method of determining clusters
US9471836B1 (en) * 2016-04-01 2016-10-18 Stradvision Korea, Inc. Method for learning rejector by forming classification tree in use of training images and detecting object in test images, and rejector using the same
US11157540B2 (en) * 2016-09-12 2021-10-26 International Business Machines Corporation Search space reduction for knowledge graph querying and interactions
CN109767430B (en) * 2017-01-10 2021-06-08 中钞印制技术研究院有限公司 Quality detection method and quality detection system for valuable bills
US11397558B2 (en) 2017-05-18 2022-07-26 Peloton Interactive, Inc. Optimizing display engagement in action automation
CN107330021A (en) * 2017-06-20 2017-11-07 北京神州泰岳软件股份有限公司 Data classification method, device and equipment based on multiway tree
US10963495B2 (en) * 2017-12-29 2021-03-30 Aiqudo, Inc. Automated discourse phrase discovery for generating an improved language model of a digital assistant
US10929613B2 (en) 2017-12-29 2021-02-23 Aiqudo, Inc. Automated document cluster merging for topic-based digital assistant interpretation
US10963499B2 (en) 2017-12-29 2021-03-30 Aiqudo, Inc. Generating command-specific language model discourses for digital assistant interpretation
US11783179B2 (en) * 2017-12-29 2023-10-10 Robert Bosch Gmbh System and method for domain- and language-independent definition extraction using deep neural networks
US11080341B2 (en) * 2018-06-29 2021-08-03 International Business Machines Corporation Systems and methods for generating document variants
WO2020032125A1 (en) * 2018-08-07 2020-02-13 国立大学法人名古屋工業大学 Discussion support device, and program for discussion support device
CN112445900A (en) * 2019-08-29 2021-03-05 上海卓繁信息技术股份有限公司 Quick retrieval method and system
CN111177301B (en) * 2019-11-26 2023-05-26 云南电网有限责任公司昆明供电局 Method and system for identifying and extracting key information
CN111460747B (en) * 2020-04-10 2023-03-31 重庆百瑞互联电子技术有限公司 Standard unit tracking method for integrated circuit design
CN111563097A (en) * 2020-04-30 2020-08-21 广东小天才科技有限公司 Unsupervised topic aggregation method and device, electronic equipment and storage medium
CN113569012B (en) * 2021-07-28 2023-12-26 卫宁健康科技集团股份有限公司 Medical data query method, device, equipment and storage medium
CN116166798A (en) * 2022-12-06 2023-05-26 杭州安恒信息技术股份有限公司 Text classification model training method, device and equipment based on hierarchical Softmax

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5325298A (en) * 1990-11-07 1994-06-28 Hnc, Inc. Methods for generating or revising context vectors for a plurality of word stems
US5619709A (en) * 1993-09-20 1997-04-08 Hnc, Inc. System and method of context vector generation and retrieval
US6484149B1 (en) * 1997-10-10 2002-11-19 Microsoft Corporation Systems and methods for viewing product information, and methods for generating web pages
US6446061B1 (en) * 1998-07-31 2002-09-03 International Business Machines Corporation Taxonomy generation for document collections
US6360227B1 (en) * 1999-01-29 2002-03-19 International Business Machines Corporation System and method for generating taxonomies with applications to content-based recommendations
US6678681B1 (en) * 1999-03-10 2004-01-13 Google Inc. Information extraction from a database
US6438590B1 (en) * 1999-04-13 2002-08-20 Hewlett-Packard Company Computer system with preferential naming service
US6298340B1 (en) * 1999-05-14 2001-10-02 International Business Machines Corporation System and method and computer program for filtering using tree structure
US6404752B1 (en) * 1999-08-27 2002-06-11 International Business Machines Corporation Network switch using network processor and methods
US6615209B1 (en) * 2000-02-22 2003-09-02 Google, Inc. Detecting query-specific duplicate documents
US6675163B1 (en) * 2000-04-06 2004-01-06 International Business Machines Corporation Full match (FM) search algorithm implementation for a network processor
US6704729B1 (en) * 2000-05-19 2004-03-09 Microsoft Corporation Retrieval of relevant information categories
US7136854B2 (en) * 2000-07-06 2006-11-14 Google, Inc. Methods and apparatus for providing search results in response to an ambiguous search query
US6529903B2 (en) * 2000-07-06 2003-03-04 Google, Inc. Methods and apparatus for using a modified index to provide search results in response to an ambiguous search query
US20020078091A1 (en) * 2000-07-25 2002-06-20 Sonny Vu Automatic summarization of a document
US6658423B1 (en) * 2001-01-24 2003-12-02 Google, Inc. Detecting duplicate and near-duplicate files
US7039803B2 (en) * 2001-01-26 2006-05-02 International Business Machines Corporation Method for broadcast encryption and key revocation of stateless receivers
US6526440B1 (en) * 2001-01-30 2003-02-25 Google, Inc. Ranking search results by reranking the results based on local inter-connectivity
US8001118B2 (en) * 2001-03-02 2011-08-16 Google Inc. Methods and apparatus for employing usage statistics in document retrieval
US7085771B2 (en) * 2002-05-17 2006-08-01 Verity, Inc System and method for automatically discovering a hierarchy of concepts from a corpus of documents
US7103609B2 (en) * 2002-10-31 2006-09-05 International Business Machines Corporation System and method for analyzing usage patterns in information aggregates
US7320000B2 (en) * 2002-12-04 2008-01-15 International Business Machines Corporation Method and apparatus for populating a predefined concept hierarchy or other hierarchical set of classified data items by minimizing system entrophy
US7130777B2 (en) * 2003-11-26 2006-10-31 International Business Machines Corporation Method to hierarchical pooling of opinions from multiple sources

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007272892A (en) * 2006-03-29 2007-10-18 Xerox Corp Hierarchical clustering with real-time updating
JP2008299382A (en) * 2007-05-29 2008-12-11 Fujitsu Ltd Data division program, recording medium recording the program, data division apparatus, and data division method
US11657077B2 (en) 2016-03-03 2023-05-23 Rakuten Group, Inc. Document classification device, document classification method and document classification program

Also Published As

Publication number Publication date
MXPA05007136A (en) 2006-01-11
CN1716256A (en) 2006-01-04
US7266548B2 (en) 2007-09-04
CA2510761A1 (en) 2005-12-30
EP1612701A2 (en) 2006-01-04
EP1612701A3 (en) 2008-05-21
US20060004747A1 (en) 2006-01-05
BRPI0502591A (en) 2006-02-07
KR20060048583A (en) 2006-05-18
JP4141460B2 (en) 2008-08-27

Similar Documents

Publication Publication Date Title
JP4141460B2 (en) Automatic classification generation
US8407164B2 (en) Data classification and hierarchical clustering
Dai et al. Co-clustering based classification for out-of-domain documents
US7711747B2 (en) Interactive cleaning for automatic document clustering and categorization
JP3665480B2 (en) Document organizing apparatus and method
US9355171B2 (en) Clustering of near-duplicate documents
JP5092165B2 (en) Data construction method and system
US8781817B2 (en) Phrase based document clustering with automatic phrase extraction
US20020174095A1 (en) Very-large-scale automatic categorizer for web content
Huang et al. Topic detection from large scale of microblog stream with high utility pattern clustering
KR20060045743A (en) Content Propagation for Expanded Document Search
Liu et al. A novel DBSCAN with entropy and probability for mixed data
Obaid et al. Semantic Web and Web Page Clustering Algorithms: A Landscape View.
CN119336900B (en) Retrieval optimization method based on hierarchical expert routing model and CoT reasoning
Liao et al. Mining concept sequences from large-scale search logs for context-aware query suggestion
Punera et al. Enhanced hierarchical classification via isotonic smoothing
Adami et al. Bootstrapping for hierarchical document classification
Marath et al. Large-scale web page classification
Deshmukh et al. A literature survey on latent semantic indexing
Kumar et al. Hierarchical topic segmentation of websites
Kim et al. Improving patent search by search result diversification
CN100378713C (en) Method and apparatus for automatically determining distinctive features for classifying objects
US20080046429A1 (en) System and method for hierarchical segmentation of websites by topic
CN115757435B (en) A method for determining screening factors to support semantic-aware ciphertext retrieval acceleration
O'Driscoll CITYNET Europe

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20071213

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071218

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071218

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20071218

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20071226

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20080123

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080421

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080516

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080610

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110620

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4141460

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110620

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120620

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120620

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130620

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees