JPH0944507A - Matching device - Google Patents

Matching device

Info

Publication number
JPH0944507A
JPH0944507A JP7190343A JP19034395A JPH0944507A JP H0944507 A JPH0944507 A JP H0944507A JP 7190343 A JP7190343 A JP 7190343A JP 19034395 A JP19034395 A JP 19034395A JP H0944507 A JPH0944507 A JP H0944507A
Authority
JP
Japan
Prior art keywords
hierarchical
data
thesaurus
matching
distance
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
JP7190343A
Other languages
Japanese (ja)
Other versions
JP3603395B2 (en
Inventor
Tadanobu Miyauchi
忠信 宮内
Yoshihiro Ueda
良寛 上田
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP19034395A priority Critical patent/JP3603395B2/en
Publication of JPH0944507A publication Critical patent/JPH0944507A/en
Application granted granted Critical
Publication of JP3603395B2 publication Critical patent/JP3603395B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide the matching device which matches words in a thesaurus at high speed and efficiently with small data size. SOLUTION: A hierarchical relation coding part 2 is previously stored with words and codes given according to the hierarchical positions of the words. When data to be compared is inputted from an input part 1, the hierarchical relation coding part 2 returns the code according to the inputted data. A matching part 3 performs bit logical operation for a plurality of data supplied from the input part 1 by using codes obtained from the hierarchical relation coding part 2. Through this bit logical operation, conceptual distances, hierarchical level differences, etc., of the hierarchical relation are calculated and on the basis of them, priority is calculated. Matching results are outputted from an output part 4.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、データのマッチン
グの度合いを算出するマッチング装置に関連するもので
あり、特に、データ間の階層関係に基づくマッチング装
置に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a matching device for calculating a degree of data matching, and more particularly to a matching device based on a hierarchical relationship between data.

【0002】[0002]

【従来の技術】従来より、テキスト検索や自動分類の研
究が活発に行なわれている。こうした分野において、シ
ソーラスと呼ばれる単語間の上位/下位関係および類義
語を定義した辞書の重要性がますます高まっている。
2. Description of the Related Art Conventionally, researches on text retrieval and automatic classification have been actively conducted. In these fields, dictionaries that define synonyms and upper / lower relations between words called thesaurus are becoming more and more important.

【0003】テキスト検索においては、ユーザの入力し
た表現が検索対象中の表現と一致しないことがしばしば
発生する。このため、検索された内容のヒット率を確保
するために、類義語や上位/下位語を含めた検索が必要
である。そこで、シソーラスを用いることにより検索要
求の単語を展開する手法などがよく用いられる。
In text search, the expression entered by the user often does not match the expression being searched. Therefore, in order to secure the hit rate of the searched contents, it is necessary to perform a search that includes synonyms and higher / lower words. Therefore, a method of expanding the word of the search request by using a thesaurus is often used.

【0004】一般的には、検索時に検索要求に基づきシ
ソーラスの階層をたどり、得られた類義語または上位/
下位語のそれぞれを用いて検索がなされる。このとき、
検索のたびに毎回シソーラスの階層をたどったのでは検
索速度が低下するため、例えば、特開平2−28027
4号公報の「データベース検索システムの包括検索方
式」で述べられているように、あらかじめシソーラスの
上位/下位などを含めた包括インデックスを作成し、検
索時の速度低下を防ごうとする技術などが提案されてい
る。
Generally, when searching, the hierarchy of the thesaurus is traced based on the search request, and the obtained synonyms or higher /
A search is made using each of the subordinate terms. At this time,
If the thesaurus hierarchy is traced every time the search is performed, the search speed decreases, so that, for example, Japanese Patent Laid-Open No. 2-28027
As described in "Comprehensive Search Method of Database Search System" in Japanese Patent Publication No. 4, there is a technique for creating a comprehensive index including the upper and lower ranks of the thesaurus in advance to prevent the search speed from decreasing. Proposed.

【0005】しかしながら、このような包括インデック
スを保持したとしても、包括インデックスに含まれる複
数のデータベースキーに基づいた検索を行なう必要があ
るため、依然として単純一致検索に比べて速度の低下は
発生する。また、こうした包括インデックス情報を予め
作成しておく必要があるため、データ量やデータベース
構築時のコストの増加を招くという問題もある。
However, even if such a comprehensive index is held, since it is necessary to perform a search based on a plurality of database keys included in the comprehensive index, the speed is still reduced as compared with the simple match search. Further, since it is necessary to create such comprehensive index information in advance, there is a problem that the amount of data and the cost for constructing a database increase.

【0006】例えば、検索キーとキーワード間でシソー
ラスを考慮したマッチングを行ない、マッチング度合い
によって検索結果とするか否かを判定することも考えら
れるが、従来のマッチング手法では、マッチングの計算
に時間がかかり、検索で用いることができる技術ではな
かった。
For example, it is conceivable to perform matching in consideration of a thesaurus between a search key and a keyword and determine whether or not the search result is to be obtained based on the degree of matching. However, in the conventional matching method, it takes time to calculate the matching. This is a technology that cannot be used for searching.

【0007】一方、テキストの自動分類と呼ばれる分野
では、なんらかの基準を用いてテキスト間の意味的な距
離を用いることにより、テキストの分類が行なわれる。
このとき、テキスト間の距離を求めるためにもシソーラ
スが用いられる。
On the other hand, in the field called automatic text classification, text is classified by using a semantic distance between texts using some standard.
At this time, the thesaurus is also used to obtain the distance between the texts.

【0008】例えば、情報処理,Vol.36,No.
2,1995.2,飯田,「人工知能におけるスーパー
コンピューティング」,pp.164−168において
は、句同士の間の距離を求める技術の一環として、概念
階層を用いた単語間の距離計算方法が示されており、入
力と用例間の意味距離が、あらかじめ付与された10進
シソーラスコードの照合により計算されている。
For example, information processing, Vol. 36, no.
2, 1995.2, Iida, "Supercomputing in Artificial Intelligence," pp. In 164 to 168, as a part of the technique for obtaining the distance between phrases, a method for calculating a distance between words using a concept hierarchy is shown, and a semantic distance between an input and an example is given in advance. It is calculated by matching the base thesaurus code.

【0009】しかしながら、この計算法は共通の上位ノ
ードへの距離のみによる計算であるため、木構造のリー
フ(葉)であり、同一階層に並ぶ単語間の距離しか計算
できない。単語はすべて同一レベルのリーフとして表現
されるわけではないので、階層の途中の概念やリーフま
での階層数が異なる場合には適用できない。したがっ
て、単語間の距離の比較においては、このような単純な
方法では依然充分ではない。また、並列計算機を想定し
ているため、効率的な距離計算には連想メモリなど特殊
な処理を必要とし、現在のところ一般的でない。
However, since this calculation method is a calculation based only on the distance to a common upper node, it is a leaf of a tree structure and only the distance between words arranged in the same hierarchy can be calculated. Since all words are not expressed as leaves at the same level, they cannot be applied when the concept in the middle of the hierarchy or the number of layers up to the leaf is different. Therefore, in comparing the distance between words, such a simple method is still insufficient. In addition, since a parallel computer is assumed, efficient distance calculation requires special processing such as associative memory, which is not common at present.

【0010】このように、従来の技術においては、シソ
ーラスにおける単語間のマッチングを効率的に行なうに
は、依然不十分な技術しか存在しなかった。
As described above, in the conventional technique, there is still insufficient technique for efficiently performing word matching in the thesaurus.

【0011】[0011]

【発明が解決しようとする課題】本発明は、上述した事
情に鑑みてなされたものであり、特に、シソーラスにお
ける単語間のマッチングを、高速かつ少ないデータサイ
ズで効率的に行なうマッチング装置を提供することを目
的とするものである。
SUMMARY OF THE INVENTION The present invention has been made in view of the above circumstances, and in particular, provides a matching device for efficiently matching words between words in a thesaurus at a high speed and with a small data size. That is the purpose.

【0012】[0012]

【課題を解決するための手段】本発明は、データ間の階
層関係に基づく類似度を算出するマッチング装置におい
て、階層関係をもつデータ群の各データを階層関係に応
じたコードとともに保持し入力に応じたコードに変換す
る階層データコード化手段と、与えられた少なくとも二
つのデータについて前記階層データコード化手段より得
られたコードに基づき論理演算により階層関係における
距離を算出する距離算出手段を有することを特徴とする
ものである。
According to the present invention, in a matching apparatus for calculating a degree of similarity based on a hierarchical relation between data, each data of a data group having a hierarchical relation is held together with a code according to the hierarchical relation and input. Hierarchical data encoding means for converting into a corresponding code, and distance calculating means for calculating the distance in the hierarchical relationship by logical operation based on the code obtained by the hierarchical data encoding means for at least two given data. It is characterized by.

【0013】さらに、請求項2に記載の発明のように、
与えられた少なくとも二つのデータについて前記階層デ
ータコード化手段より得られたコードに基づき論理演算
により階層レベルの差を算出する階層差算出手段を設け
ることができる。
Further, as in the invention described in claim 2,
Hierarchical difference calculating means for calculating a hierarchical level difference by logical operation based on a code obtained by the hierarchical data coding means for at least two data given can be provided.

【0014】さらに、請求項3に記載の発明のように、
前記距離算出手段および前記階層差算出手段の結果に基
づき優先度を算出する優先度算出手段を設けることがで
きる。
Further, as in the invention according to claim 3,
Priority calculation means for calculating priority based on the results of the distance calculation means and the layer difference calculation means can be provided.

【0015】[0015]

【作用】本発明によれば、階層関係をもつデータ群の各
データに対して、階層関係に応じたコードを保持させて
おく。そして、与えられた少なくとも二つのデータにつ
いて、対応するコードを得て、そのコードに基づき論理
演算により階層関係における距離を算出する。これによ
り、従来のように算術演算など、時間のかかる演算を行
なうことなく距離計算を行なうことができ、データ間の
階層関係に基づくマッチングが高速かつ容易に実現可能
となる。また、請求項2および請求項3に記載の発明の
ように、用途に応じ、階層差算出手段や、さらに優先度
算出手段を設けるなど、種々の構成をとることで、階層
レベル差や優先度といったよりきめ細かな比較が可能と
なる。
According to the present invention, the code corresponding to the hierarchical relationship is held for each data of the data group having the hierarchical relationship. Then, for at least two pieces of given data, a corresponding code is obtained, and the distance in the hierarchical relationship is calculated by a logical operation based on the code. As a result, distance calculation can be performed without performing a time-consuming operation such as an arithmetic operation as in the related art, and matching based on a hierarchical relationship between data can be realized at high speed and easily. Further, as in the inventions according to claim 2 and claim 3, by adopting various configurations such as providing a layer difference calculating means and further a priority calculating means according to the use, the layer level difference and the priority can be obtained. It is possible to make a more detailed comparison.

【0016】[0016]

【発明の実施の態様】図1は、本発明のマッチング装置
の1つの実施の態様を示す概略構成図である。図中、1
は入力部、2は階層関係コード化部、3はマッチング
部、4は出力部である。入力部1は、比較すべきデータ
を与える。階層関係コード化部2は、入力に応じて、あ
らかじめ階層間の位置にしたがって付与されたコードを
返す。マッチング部3は、入力部1から与えられた複数
のデータを、階層関係コード化部2から得られるコード
を用いてビット論理演算でマッチングを行なう。出力部
4は、マッチング部3により得られた結果を出力する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS FIG. 1 is a schematic configuration diagram showing one embodiment of a matching apparatus of the present invention. In the figure, 1
Is an input unit, 2 is a hierarchical relation coding unit, 3 is a matching unit, and 4 is an output unit. The input unit 1 gives data to be compared. The hierarchical relation coding unit 2 returns a code given in advance according to a position between layers in response to an input. The matching unit 3 performs matching on a plurality of data supplied from the input unit 1 by bit logic operation using a code obtained from the hierarchical relation coding unit 2. The output unit 4 outputs the result obtained by the matching unit 3.

【0017】図2は、本発明のマッチング装置の1つの
実施の態様を類似語検索システムに適用した場合の一例
を示すブロック構成図である。図中、10は検索要求入
力部、11は端末、12はOCR、13は電話および音
声認識部、14は記憶装置、15は赤外線・無線受信
部、20はシソーラスコード化部、21はシソーラス、
30はマッチング部、31は距離算出部、32は階層差
算出部、33は優先度算出部、34は出力指示部、40
は出力部、41は端末、42はファクシミリやプリン
タ、43は電話やポケベル、44は赤外線・無線発信
部、50はデータベース部、51はデータベースであ
る。検索要求入力部10は、図1に示した入力部1に対
応し、同様に、シソーラスコード化部20は階層関係コ
ード化部2に、マッチング部30はマッチング部3に、
出力部40は出力部4にそれぞれ対応する。データベー
ス部50は、検索対象となる各種の文書を電子的に記憶
する部分であり、文書はデータベース51に記憶され
る。
FIG. 2 is a block diagram showing an example in which one embodiment of the matching apparatus of the present invention is applied to a similar word search system. In the figure, 10 is a search request input unit, 11 is a terminal, 12 is OCR, 13 is a telephone and voice recognition unit, 14 is a storage device, 15 is an infrared / radio receiver, 20 is a thesaurus coding unit, 21 is a thesaurus,
30 is a matching unit, 31 is a distance calculation unit, 32 is a layer difference calculation unit, 33 is a priority calculation unit, 34 is an output instruction unit, 40
Is an output unit, 41 is a terminal, 42 is a facsimile or printer, 43 is a telephone or pager, 44 is an infrared / wireless transmission unit, 50 is a database unit, and 51 is a database. The search request input unit 10 corresponds to the input unit 1 shown in FIG. 1, and similarly, the thesaurus coding unit 20 is the hierarchical relation coding unit 2, the matching unit 30 is the matching unit 3, and the like.
The output unit 40 corresponds to the output unit 4, respectively. The database unit 50 is a unit that electronically stores various documents to be searched, and the documents are stored in the database 51.

【0018】検索要求入力部10は、例えば、端末1
1、OCR12、音声を入力するマイクなどを具備した
電話および音声認識部13、メモリやディスク、テープ
等の記憶装置14、携帯情報機器などからの赤外線や無
線を受信する赤外線・無線受信部15などから構成され
ている。もちろん、これらのうちの一部でもよいし、こ
れ以外の入力装置を用いるようにしてもよい。
The search request input unit 10 is, for example, the terminal 1
1, OCR 12, telephone and voice recognition unit 13 having a microphone for inputting voice, storage device 14 such as memory, disk, tape, infrared / radio receiving unit 15 for receiving infrared rays and radio waves from portable information equipment, etc. It consists of Of course, some of these may be used, or an input device other than this may be used.

【0019】出力部40は、端末41のディスプレイ、
ファクシミリ/プリンタ42、音声合成によりスピーカ
から出力する電話やポケベル43、携帯情報機器へ赤外
線や無線を用いて情報を伝送する赤外線・無線発信部4
4などから構成される。もちろん、これらの一部で構成
してもよいし、これ以外の出力装置を用いるようにして
もよく、いったんネットワーク等に接続された記憶装置
に蓄えるように構成してもよい。
The output unit 40 is a display of the terminal 41,
Facsimile / printer 42, telephone or pager 43 that outputs from a speaker by voice synthesis, infrared / wireless transmitter 4 that transmits information to portable information equipment by infrared or wireless
4 and the like. Of course, a part of them may be used, an output device other than this may be used, or the output device may be temporarily stored in a storage device connected to a network or the like.

【0020】シソーラスコード化部20は、入力された
単語に応じて、シソーラス21の階層構造に応じて保持
されたコードに変換する部分である。
The thesaurus coding unit 20 is a unit that converts the input word into a code held according to the hierarchical structure of the thesaurus 21.

【0021】マッチング部30は、入力された単語とデ
ータベース51中の文書のキーワードを比較し、検索要
求に一致あるいは類似したキーワードを有する文書を出
力指示する部分である。距離算出部31は、シソーラス
コード化部20で変換された検索要求と文書のキーワー
ドのコード同士を論理演算し、階層関係における距離を
算出する部分である。階層差算出部32は、シソーラス
コード化部20で変換された検索要求と文書のキーワー
ドのコード同士を論理演算し、階層レベルの差を算出す
る部分である。優先度算出部33は、距離算出部および
階層差算出部の結果に基づき、マッチング結果の優先度
を算出する部分である。出力指示部34は、優先度算出
部33で得られた結果に基づき、データベース部50か
ら検索要求に一致または類似したキーワードを有する文
書を取り出し、出力部40に出力を指示する。
The matching unit 30 is a unit that compares the input word with the keyword of the document in the database 51 and outputs the document having the keyword matching or similar to the search request. The distance calculation unit 31 is a unit that logically operates the codes of the search request and the document keyword converted by the thesaurus coding unit 20 to calculate the distance in the hierarchical relationship. The layer difference calculation unit 32 is a unit that performs a logical operation on the search request converted by the thesaurus encoding unit 20 and the code of the keyword of the document to calculate the difference between the layer levels. The priority calculation unit 33 is a unit that calculates the priority of the matching result based on the results of the distance calculation unit and the layer difference calculation unit. Based on the result obtained by the priority calculation unit 33, the output instruction unit 34 takes out a document having a keyword matching or similar to the search request from the database unit 50, and instructs the output unit 40 to output it.

【0022】図3は、類似語検索システムの一例におけ
る全体の動作の一例を示すフローチャート、図4は、マ
ッチングアルゴリズムの一例の概略を示すフローチャー
トである。まず、S61において、検索要求入力部10
からユーザの検索要求RQが入力されると、S62にお
いて、シソーラスコード化部20でシソーラスコードへ
の変換が行なわれ、検索要求のシソーラスコードC1が
得られる。
FIG. 3 is a flow chart showing an example of the overall operation in an example of a similar word search system, and FIG. 4 is a flow chart showing an outline of an example of a matching algorithm. First, in S61, the search request input unit 10
When the user's search request RQ is input from, the conversion to thesaurus code is performed by the thesaurus coding unit 20 in S62, and the thesaurus code C1 of the search request is obtained.

【0023】続いて、S63において、検索対象となる
データベース51より一つの文書DQが取り出される。
さらに、S64において、この文書のキーワードKWを
順次取り出す。キーワードは、検索時にその場で文書中
から抽出してもよいし、検索の高速性が必要であれば、
あらかじめ文書に手動または自動で付与されたものを用
いればよい。S65において、キーワードKWは、検索
要求RQと同様に、シソーラスコード化部20でコード
変換され、キーワードのシソーラスコードC2が得られ
る。
Then, in S63, one document DQ is retrieved from the database 51 to be searched.
Further, in S64, the keywords KW of this document are sequentially extracted. Keywords may be extracted from the document on the spot at the time of search, or if high-speed search is required,
A document that is manually or automatically added to the document in advance may be used. In S65, the keyword KW is code-converted by the thesaurus coding unit 20 as in the search request RQ, and the keyword thesaurus code C2 is obtained.

【0024】検索要求のシソーラスコードC1とキーワ
ードのシソーラスコードC2がともに得られると、S6
6において、コードのマッチングが行なわれる。まず、
階層差算出部32は、S81において、検索要求のシソ
ーラスコードC1の階層レベルを論理演算によって求
め、検索要求の階層レベルL1とする。同様に、S82
において、キーワードのシソーラスコードC2の階層レ
ベルを論理演算によって求め、キーワードの階層レベル
L2とする。S83において、検索要求の階層レベルL
1とキーワードの階層レベルL2の差を求め、階層レベ
ル差LDとする。続いて、距離算出部31は、S84に
おいて、検索要求のシソーラスコードC1とキーワード
のシソーラスコードC2のビット排他論理和を計算し、
概念距離CDとする。さらに、優先度算出部33は、S
85において、抽出された階層レベル差LDと概念距離
CDに応じて優先度PLを算出する。
When both the thesaurus code C1 of the search request and the thesaurus code C2 of the keyword are obtained, S6 is executed.
At 6, code matching is performed. First,
In S81, the layer difference calculation unit 32 obtains the layer level of the search request thesaurus code C1 by a logical operation and sets it as the layer level L1 of the search request. Similarly, S82
In step 1, the hierarchical level of the thesaurus code C2 of the keyword is obtained by a logical operation and set as the hierarchical level L2 of the keyword. In S83, the hierarchical level L of the search request
The difference between 1 and the hierarchical level L2 of the keyword is calculated and used as the hierarchical level difference LD. Subsequently, the distance calculation unit 31 calculates the bit-exclusive OR of the thesaurus code C1 of the search request and the thesaurus code C2 of the keyword in S84,
The conceptual distance CD. Furthermore, the priority calculation unit 33 uses the S
At 85, the priority PL is calculated according to the extracted layer level difference LD and the conceptual distance CD.

【0025】このようにしてコードのマッチングが行な
われると、得られた階層レベル差LD、概念距離CD、
優先度PLなどが基準を満たしているか否かを、S67
でチェックする。S68で基準を満たしていると判定さ
れれば、出力指示部34は、S69で結果バッファBF
に文書DQを出力する。もちろん、出力部40に直接出
力指示を行なってもよい。
When the codes are matched in this way, the obtained hierarchy level difference LD, concept distance CD,
Whether or not the priority PL and the like satisfy the criteria is determined in S67.
To check. When it is determined in S68 that the criterion is satisfied, the output instruction unit 34 determines in S69 the result buffer BF.
The document DQ is output to. Of course, the output unit 40 may be directly instructed to output.

【0026】S70において、現在処理中の文書に付与
されているキーワードがすべて処理されたか否かを判定
し、最後のキーワードの処理が終了するまで、S64〜
S70の処理を繰り返し行なう。1つの文書について、
すべてのキーワードの処理が終了すると、S71におい
て、すべての文書について処理を行なったか否かを判定
し、最後の文書の処理が終了するまで、S63〜S70
の処理を繰り返し行なう。
In step S70, it is determined whether or not all the keywords attached to the document currently being processed have been processed, and the processing in steps S64 to S64 is performed until the processing of the last keyword is completed.
The process of S70 is repeated. For one document,
When all the keywords have been processed, it is determined in S71 whether or not all the documents have been processed, and steps S63 to S70 are executed until the processing of the last document is completed.
Is repeated.

【0027】このような処理を行なうことによって、検
索要求に一致あるいは類似したキーワードを有する文書
が検索され、出力されることになる。上述のように、マ
ッチング処理では階層差や概念距離を、論理演算を用い
て行なっているので、高速にマッチング処理を行なうこ
とができる。そのため、従来のようにシソーラス階層を
たどったり、包括インデックスを用いることなどもな
く、少ないデータサイズで高速な類似語検索を実現する
ことができる。
By carrying out such processing, a document having a keyword matching or similar to the search request is searched and output. As described above, in the matching process, the layer difference and the conceptual distance are calculated by using the logical operation, so that the matching process can be performed at high speed. Therefore, it is possible to realize a high-speed similar word search with a small data size without tracing the thesaurus hierarchy or using a comprehensive index as in the related art.

【0028】以下、具体例を用いて、上述の動作の一例
を説明する。図5は、シソーラスの構成の具体例を示す
説明図である。例えば、「自家用車」という単語は、
「自動車」の下位概念であり、「スポーツカー」、「セ
ダン」、「RV車」などの上位概念を表わす。それぞれ
の単語には、図中の角カッコ“[]”内に示すように、
各階層の同じ親を有する各単語について、レベル1から
始まるコードを順次割り振る。ここでは一つの階層につ
き2進4ビットを用い、16進数で示している。
An example of the above operation will be described below by using a specific example. FIG. 5 is an explanatory diagram showing a specific example of the structure of the thesaurus. For example, the word "private car"
It is a subordinate concept of “automobile” and represents a superordinate concept such as “sports car”, “sedan”, and “RV car”. For each word, as shown in square brackets "[]" in the figure,
A code starting from level 1 is sequentially assigned to each word having the same parent in each hierarchy. Here, binary 4 bits are used for one layer and are shown in hexadecimal.

【0029】実際に各単語に割り当てられるコードの例
の一部も、図中の丸カッコ“()”内に示している。例
えば、「自家用車」という単語においては、 具体物[2]→機械[3]→乗物[A]→車両[2]→
自動車[4]→自家用車[4] という階層をたどり、さらに1レベルの下位データを持
つため、これを[0]と表わし、「23A2440H」
という4バイトの16進コードを割り当てる。ここで、
末尾の‘H’は、16進数であることを示しており、1
6進の「23A2440」という値を示している。同様
に、「自家用車」の下位に位置し、末端のデータである
「セダン」という単語には、「23A2442H」とい
うコードを割り当てる。ここでは各ノードが15個以下
の8階層としたため、4ビット7レベルのコードを用い
たが、もちろんこの割り当ては自由であり、シソーラス
の構造に応じて設計すればよい。なお、この割り当て
は、シソーラスの階層構造をトラバースすることにより
容易に自動的化できるため、人手によるコード付与など
の手間を排除することが可能である。
Some examples of codes actually assigned to the respective words are also shown in parentheses "()" in the drawing. For example, in the word “private car”, concrete object [2] → machine [3] → vehicle [A] → vehicle [2] →
Following the hierarchy of car [4] → private car [4], and having one level of lower-order data, this is represented as [0] and "23A2440H"
Is assigned a 4-byte hexadecimal code. here,
The trailing'H 'indicates hexadecimal numbers, 1
The hexadecimal value "23A2440" is shown. Similarly, the code "23A2442H" is assigned to the word "sedan", which is located at the lower level of "private vehicle" and is the end data. Here, since each node has eight hierarchies of 15 or less, a 4-bit 7-level code is used, but of course, this allocation is free and may be designed according to the structure of the thesaurus. Since this assignment can be easily automated by traversing the hierarchical structure of the thesaurus, it is possible to eliminate the labor such as manual code assignment.

【0030】図3のS61で入力された検索要求RQ
は、S62において、シソーラスコードC1へ変換され
る。図6は、シソーラスコードへの変換の一例を示す概
念図である。ここでは、データ構造として特開平5−2
8194号公報の「データアクセス方式」に述べられて
いるような、ハッシングを用いた例を示す。入力された
データは、ハッシュ関数によって得られたハッシュ値を
もとにハッシュテーブルを参照する。ここでは、ハッシ
ュテーブルにはチェインインデックスへのポインタが格
納されており、このポインタをもとにチェインインデッ
クスを参照し、このチェインインデックスで衝突をチェ
ックした後、変換データが参照される。変換データに
は、単語に対応するコードが格納されており、入力デー
タに対応するコードが得られる。
Search request RQ input in S61 of FIG.
Is converted to the thesaurus code C1 in S62. FIG. 6 is a conceptual diagram showing an example of conversion into a thesaurus code. Here, as a data structure, Japanese Patent Laid-Open No. 5-2
An example using hashing as described in "Data Access Method" of Japanese Patent No. 8194 will be shown. The input data refers to the hash table based on the hash value obtained by the hash function. Here, a pointer to a chain index is stored in the hash table, the chain index is referred to based on this pointer, and after checking the chain index for collision, the converted data is referred to. A code corresponding to a word is stored in the converted data, and a code corresponding to the input data is obtained.

【0031】例えば、「セダン」というデータが入力さ
れると、ハッシュ関数によりハッシュ値が得られ、これ
をもとにハッシュテーブルが参照され、さらにチェイン
インデックにより衝突がチェックされた後、シソーラス
コードC1として「23A2442H」が得られる。ま
た、図6に示したように、「オートバイ」と「バイク」
などの同義語は、入力データとしては異なるが、変換に
より同一化されたコードとなる。このように、シソーラ
スにおける階層関係をたどる必要なしに、直接、データ
からコードを得ることができる。
For example, when the data "sedan" is input, the hash value is obtained by the hash function, the hash table is referred to based on this, and the chain index is checked for collision, and then the thesaurus code C1. As a result, "23A2442H" is obtained. Also, as shown in FIG. 6, "motorcycle" and "motorcycle"
Although synonyms such as are different as input data, they are codes that are made uniform by conversion. In this way, the code can be obtained directly from the data without having to follow the hierarchical relationships in the thesaurus.

【0032】なお、ここではハッシュ法を用いた例につ
いて説明したが、BTreeなど、他のデータ構造を用
いてもよいことはもちろんである。
Although an example using the hash method has been described here, it goes without saying that another data structure such as BTree may be used.

【0033】このようにして、入力された検索要求RQ
は、ハッシュ関数により変換され、ハッシュテーブルと
チェインインデックスをたどることにより、シソーラス
コードC1に変換される。続いて、S63で検索対象と
なるデータベース51より文書が1つ取り出され、さら
にS64でこの文書のキーワードが取り出される。ここ
では、キーワードKWとして「パソコン」が取り出され
たとする。キーワードKWは、S65で上述と同様の方
法によりシソーラスコード化部20でコード変換され
る。たとえばキーワードが「パソコン」の場合には、図
5に示すように、「23EC220H」というシソーラ
スコードに変換される。
The search request RQ input in this way
Is converted by a hash function and converted into a thesaurus code C1 by tracing a hash table and a chain index. Then, one document is retrieved from the database 51 to be searched in S63, and the keyword of this document is retrieved in S64. Here, it is assumed that “personal computer” is retrieved as the keyword KW. The keyword KW is code-converted by the thesaurus coding unit 20 in S65 by the same method as described above. For example, when the keyword is "personal computer", it is converted into a thesaurus code "23EC220H" as shown in FIG.

【0034】検索要求のシソーラスコードC1と、キー
ワードのシソーラスコードC2がともに得られると、S
66でコードのマッチングが行なわれる。マッチング
は、大きく階層差算出部32におけるレベル差の計算
と、距離算出部31における概念距離の計算に分けられ
る。
When both the thesaurus code C1 of the retrieval request and the thesaurus code C2 of the keyword are obtained, S
At 66, code matching is performed. Matching is roughly divided into level difference calculation in the layer difference calculation unit 32 and concept distance calculation in the distance calculation unit 31.

【0035】まず、階層差算出部32は、S81,S8
2において、検索要求のシソーラスコードC1とキーワ
ードのシソーラスコードC2の階層レベルを計算する。
具体的には、次に示すような4ビット単位のマスクコー
ドを用意し、検索要求のシソーラスコードC1およびキ
ーワードのシソーラスコードC2とのANDを順次と
り、非ゼロになるまで繰り返すことでレベルが決定され
る。なお、レベル1までのANDがすべて0であった場
合、すなわちC1またはC2のコードが0の場合、それ
はシソーラスの根、この場合「概念」であるからレベル
は0となる。 レベル7: 000000FH レベル6: 00000F0H レベル5: 0000F00H レベル4: 000F000H レベル3: 00F0000H レベル2: 0F00000H レベル1: F000000H
First, the layer difference calculation unit 32 uses S81 and S8.
In step 2, the hierarchical levels of the search request thesaurus code C1 and the keyword thesaurus code C2 are calculated.
Specifically, a mask code in units of 4 bits as shown below is prepared, the AND is sequentially performed with the thesaurus code C1 of the search request and the thesaurus code C2 of the keyword, and the level is determined by repeating until AND becomes non-zero. To be done. When all the ANDs up to level 1 are 0, that is, when the code of C1 or C2 is 0, it is the root of the thesaurus, and in this case, it is the "concept", so the level is 0. Level 7: 000000FH Level 6: 00000F0H Level 5: 0000F00H Level 4: 000F000H Level 3: 00F0000H Level 2: 0F00000H Level 1: F000000H

【0036】「セダン」に関するコードは、上述のよう
に「23A2442H」であったから、まず00000
0FHとのANDを取ると、 000000FH AND 23A2442H = 2H となり、非ゼロであるのでレベル7の単語であることが
わかり、終了する。
As the code for the "sedan" was "23A2442H" as described above, first 00000
When it is ANDed with 0FH, it becomes 000000FH AND 23A2442H = 2H, and since it is non-zero, it is found to be a level 7 word, and the processing ends.

【0037】「パソコン」に関するコードは、上述のよ
うに「23EC220H」であったから、まず0000
00FHとのANDを取ると、 000000FH AND 23EC220H = 0H となり、ゼロであるので、さらに00000F0Hとの
ANDを取る。すると、 00000F0H AND 23EC220H = 20H となり、非ゼロであるので、レベル6の単語であること
がわかり、終了する。
Since the code for the "personal computer" was "23EC220H" as described above, first 0000
When ANDed with 00FH, the result is 000000FH AND 23EC220H = 0H, which is zero, and is further ANDed with 00000F0H. Then, 00000F0H AND 23EC220H = 20H, which is a nonzero value, is known to be a level 6 word, and the processing ends.

【0038】ここでは、ANDによるマスクを用いた方
法を述べたが、レベルに応じたビット数、例えば、レベ
ル7の場合4ビットだけ右シフトし、下位桁あふれフラ
グをチェックするなどの方法でも、もちろん論理的に同
一になる。いずれにせよ、これらのビット単位の論理演
算は、一般に非常に高速に実行可能であるため、処理の
高速化を実現することが可能である。
Although the method using the mask by AND has been described here, the number of bits according to the level, for example, in the case of level 7, right shifting by 4 bits and checking the lower overflow flag are also possible. Of course they are logically the same. In any case, since these bit-wise logical operations can be generally executed at very high speed, it is possible to realize high-speed processing.

【0039】こうして得られた階層レベルの差の絶対値
をS83で計算し、階層レベル差LDとする。ここでは
|7−6|=1となる。
The absolute value of the difference between the hierarchy levels obtained in this way is calculated in S83 to be the hierarchy level difference LD. In this case, | 7-6 | = 1.

【0040】続いて、距離算出部31において、単語間
の概念距離が計算される。概念距離は、コード間のビッ
ト排他的論理和(XOR)に基づいて求められる。ここ
では、 23A2442H XOR 23EC220H = 4E662H となる。こうして得られる値は、単語(概念)間のいわ
ば近さを示す。概念距離はここで得られた値の範囲に応
じて付与する。この付与には、上述の階層レベルチェッ
クと同様に、次に示すマスクコードとのANDで非ゼロ
になる最小のものとして、容易に求められる。なお、X
ORの結果が全ビット0の場合、同一のコードであるか
ら概念距離は0となる。 概念距離7: F000000H 概念距離6: 0F00000H 概念距離5: 00F0000H 概念距離4: 000F000H 概念距離3: 0000F00H 概念距離2: 00000F0H 概念距離1: 000000FH
Subsequently, the distance calculation unit 31 calculates the conceptual distance between words. The conceptual distance is obtained based on the bit exclusive OR (XOR) between codes. Here, 23A2442H XOR 23EC220H = 4E662H. The value thus obtained indicates the so-called closeness between words (concepts). The conceptual distance is given according to the range of values obtained here. Similar to the above-mentioned hierarchy level check, this assignment can be easily obtained as the minimum value which becomes non-zero by AND with the following mask code. Note that X
When all bits of the OR result are 0, the concept code is 0 because the codes are the same. Concept Distance 7: F000000H Concept Distance 6: 0F00000H Concept Distance 5: 00F0000H Concept Distance 4: 000F000H Concept Distance 3: 0000F00H Concept Distance 2: 00000F0H Concept Distance 1: 000000FH

【0041】ここでは、ビット排他論理和の値が「4E
662H」であるので、 F000000H AND 4E662H = 0H 0F00000H AND 4E662H = 0H 00F0000H AND 4E662H = 40000H となり、概念距離=5であることがわかる。
Here, the value of the bit exclusive OR is "4E".
662H ”, F000000H AND 4E662H = 0H 0F00000H AND 4E662H = 0H 00F0000H AND 4E662H = 40000H, and it is understood that the conceptual distance = 5.

【0042】図7は、マッチング結果の具体例の説明図
である。図7には、「セダン」を検索要求として、各キ
ーワードと、そのキーワードのシソーラスコードC2、
「セダン」のシソーラスコードC1「23A2442
H」とのビット排他論理和の値、概念距離、レベル差、
優先度について示している。優先度については、後で再
びこの図を参照して説明する。
FIG. 7 is an explanatory diagram of a specific example of the matching result. In FIG. 7, each keyword and the thesaurus code C2 of the keyword are used as a search request for "sedan".
"Sedan" thesaurus code C1 "23A2442
Value of bit exclusive OR with “H”, concept distance, level difference,
It shows about the priority. The priority will be described later with reference to this figure again.

【0043】図7に示すように、概念距離はレベル差と
は直接関係ない。例えば、「セダン」に関し、1レベル
上位(親子関係)である「自家用車」とのビット排他論
理和の値は2H、その1レベル下で同じ上位語を持つ
「スポーツカー」とは3Hとなり、これらは非常に近い
関係であり、概念距離は1になる。
As shown in FIG. 7, the concept distance is not directly related to the level difference. For example, regarding "sedans", the value of the bit exclusive OR with "private car" which is one level higher (parent-child relationship) is 2H, and "sports car" having the same higher word one level below is 3H, These are very close relationships, and the concept distance is 1.

【0044】一方、2レベル上位(祖父母関係)である
「自動車」では、ビット排他論理和の値は42Hである
が、その1レベル下位(おじ/おば)にあたる「バス」
とは52H、さらに1レベル下(いとこ)、すなわち同
レベルの「ボンネットバス」では50Hとなり、これら
との概念距離は2になる。さらに、前述の「パソコン」
に対しては、ビット排他論理和の値は4E662Hとな
り、概念距離は5である。
On the other hand, in the "car" which is two levels higher (grandparent relationship), the value of the bit exclusive OR is 42H, but the "bus" which is one level lower (uncle / aunt).
And 52H, and one level lower (a cousin), that is, 50H for a "bonnet bus" of the same level, and the conceptual distance from them is 2. In addition, the "PC" mentioned above
, The bit exclusive OR value is 4E662H, and the concept distance is 5.

【0045】図8は、具体例における概念距離の一部を
2次元にマッピングした概念図である。図8において、
○はノードを示し、実線はシソーラス階層を示してお
り、高さが階層レベルを示している。ここで示したシソ
ーラス階層は、図5に示したものの一部である。いま、
「セダン」を基準とし、概念距離を2次元上の距離に対
応させると、等しい概念距離のノードは、図8に示すよ
うに等距離の円弧上に配置して示すことができる。
FIG. 8 is a conceptual diagram in which a part of the conceptual distance in the specific example is two-dimensionally mapped. In FIG.
A circle indicates a node, a solid line indicates a thesaurus hierarchy, and a height indicates a hierarchy level. The thesaurus hierarchy shown here is part of what is shown in FIG. Now
If the concept distance is made to correspond to a two-dimensional distance based on the “sedan”, nodes having the same concept distance can be arranged and shown on arcs of equal distance as shown in FIG.

【0046】なお、上述の例では、概念距離の計算にあ
たり、マスクコードによるANDを用いたが、論理的に
同一であればさまざまな方法で実現し得る。図9は、概
念距離のORゲートによる算出法の説明図である。例え
ば、図9に示すように、同一階層に相当するビットのO
Rをとり、ONとなる最上位ビットを概念距離とするこ
とが考えられる。図9に示した例では、「セダン」と
「パソコン」のシソーラスコードのビット排他論理和の
値「4E662H」を4ビットごとにOR回路に入力
し、出力として「0011111」を得る。この結果の
最上位ビットの位置は5番目であるので、概念距離は5
となる。この計算方法では、ワイヤードロジックにより
簡単に回路を構成できるので、ハードウェア化に向いた
方法ということができる。もちろん、他の方法を用いて
演算してもよい。
In the above example, the AND of the mask code is used in the calculation of the conceptual distance, but it can be realized by various methods as long as they are logically the same. FIG. 9 is an explanatory diagram of a method of calculating the conceptual distance using an OR gate. For example, as shown in FIG. 9, O of bits corresponding to the same layer
It is conceivable to take R and set the most significant bit that turns ON as the concept distance. In the example shown in FIG. 9, the value "4E662H" of the bit exclusive OR of thesaurus codes of "sedan" and "personal computer" is input to the OR circuit every 4 bits, and "0011111" is obtained as an output. Since the position of the most significant bit of this result is the fifth, the concept distance is 5
Becomes In this calculation method, the circuit can be easily configured by the wired logic, so it can be said to be a method suitable for hardware implementation. Of course, the calculation may be performed using another method.

【0047】また、この例では、この後に優先度を算出
するために、0〜7に限定した概念距離を導入してい
る。実際に上述のようにして、ある概念距離をもつ表現
間のXORの演算を行なうと、その結果は特定の範囲
(概念距離2の場合10H〜FFH)のみをとるので、
例えば、単語間のおおざっぱな距離を求める場合には、
XORを計算した結果を直接用いてももちろんよい。
Further, in this example, the concept distance limited to 0 to 7 is introduced in order to calculate the priority thereafter. When the XOR operation between expressions having a certain concept distance is actually performed as described above, the result takes only a specific range (10H to FFH in the case of the concept distance 2).
For example, to find a rough distance between words,
Of course, the result of calculating XOR may be used directly.

【0048】さらに、この実施の態様では、シソーラス
の全階層に4ビットの固定長を割り当てているが、リー
フに近付くにつれてノード数が増えるなどシソーラスの
構造はさまざまである。このような場合には、各階層ご
とに異なるビット数を割り当てればよく、記憶容量が限
られている場合でも、これを有効に利用することが可能
である。加えて、シソーラスにおいてはすべてのリーフ
データが同じ階層レベルになるとは限らないが、本発明
は異なる階層レベルにまたがるデータが比較可能である
ため、このような場合においても非常に有効である。
Further, in this embodiment, a fixed length of 4 bits is assigned to all layers of the thesaurus, but the thesaurus structure is various, such that the number of nodes increases as the leaves get closer. In such a case, a different number of bits may be assigned to each layer, and this can be effectively used even when the storage capacity is limited. In addition, in the thesaurus, not all leaf data are at the same hierarchical level, but the present invention can compare data across different hierarchical levels, so that it is very effective even in such a case.

【0049】続いて、優先度算出部33ではS85にお
いて、距離算出部31で算出された概念距離と、階層差
算出部32で算出された階層レベル差に応じ、優先度を
算出する。上述のように、概念距離と階層レベル差は直
接関係はない。また、概念距離が同一でも、それらの間
の類似度が異なることは多い。上述の図8に示すよう
に、「セダン」に対して「自動車」と「ボンネットバ
ス」はともに概念距離2であるが、類似度は「自動車」
のほうが直接の孫であるため、類似度は高いと考えられ
る。一方、シソーラスの構成によっては上位ノードに対
し下位ノードとして類義語が並ぶような場合もある。こ
のような場合は同じ階層レベルの方が類似度が高くな
る。このように、概念距離と階層レベル差を用いること
により、これらを別の軸として評価することができる。
Then, in S85, the priority calculation unit 33 calculates the priority according to the conceptual distance calculated by the distance calculation unit 31 and the layer level difference calculated by the layer difference calculation unit 32. As described above, the concept distance and the hierarchy level difference are not directly related. Even if the concept distances are the same, the similarities between them often differ. As shown in FIG. 8 described above, both “car” and “bonnet bus” have a conceptual distance of 2 with respect to “sedan”, but the similarity is “car”.
Is a direct grandchild, so the similarity is considered to be high. On the other hand, depending on the structure of the thesaurus, synonyms may be arranged as lower nodes with respect to upper nodes. In such a case, the same hierarchical level has a higher degree of similarity. Thus, by using the concept distance and the layer level difference, these can be evaluated as different axes.

【0050】この例では、優先度として、次のような計
算式を用いる。 優先度 = 総レベル数×2 − (概念距離×2 − レベル差) ここで、この例では総レベル数は7としている。上述の
図7に示した各キーワードでは、「セダン」に対し、次
のような値が返される。 14:セダン(7×2 − (0×2 − 0) = 14) 13:自家用車 12:スポーツカー,自動車 11:バス,車両,・・・ 10:ボンネットバス,オートバイ,・・・ ・・・ 5:パソコン,・・・ ・・・ もちろん、上述の計算式のほか、種々の計算方法によっ
て優先度を算出してもよい。
In this example, the following formula is used as the priority. Priority = total number of levels × 2− (conceptual distance × 2−level difference) Here, the total number of levels is 7 in this example. For each of the keywords shown in FIG. 7, the following values are returned for "sedan". 14: Sedan (7 × 2- (0 × 2-0) = 14) 13: Private car 12: Sports car, automobile 11: Bus, vehicle, ... 10: Bonnet bus, motorcycle, ... 5: PC, ... Of course, the priority may be calculated by various calculation methods other than the above-described calculation formula.

【0051】続いて、図3のS67で、上述のようにし
て得られたマッチング結果を用いて、抽出基準のチェッ
クを行なう。ここでは単純に優先度の値が12以上の場
合、適合結果とする。上述の図7に示した各キーワード
の例では、文書が「セダン」、「自家用車」、「スポー
ツカー」、「自動車」のいずれかのキーワードを有して
いれば、結果バッファBFに出力される。
Then, in S67 of FIG. 3, the extraction criterion is checked using the matching result obtained as described above. Here, if the priority value is 12 or more, it is regarded as the matching result. In the example of each keyword shown in FIG. 7 above, if the document has any of the keywords “sedan”, “private car”, “sports car”, and “automobile”, the document is output to the result buffer BF. It

【0052】もちろん、この基準とする値は適宜設定す
ればよい。また、この抽出基準については、他の抽出基
準を用いてもよい。例えば、必要に応じて文書全体を走
査したのちに統計処理によって抽出基準に対して重みづ
けをするなどがある。
Of course, this reference value may be set appropriately. Further, other extraction criteria may be used as the extraction criteria. For example, the entire document is scanned as needed, and then the extraction criterion is weighted by statistical processing.

【0053】このようにして、検索要求と1つのキーワ
ードとのマッチング処理および文書の抽出が終了する。
ここまでの処理が1つの文書に付されているすべてのキ
ーワードについて繰り返し、さらに、それらをデータベ
ース51中の各文書に対して順次行なうことで処理が進
められる。
In this way, the matching process between the search request and one keyword and the document extraction are completed.
The processing is advanced by repeating the processing up to this point for all the keywords attached to one document, and further sequentially performing them for each document in the database 51.

【0054】以上の処理により、結果バッファBFに
は、ユーザからの検索要求「セダン」に類似したキーワ
ードを含む文書、具体的には「セダン」、「スポーツカ
ー」、「RV車」、「自家用車」、「自動車」などを含
む文書が蓄積される。この結果に対し、出力指示部34
は優先度に基づいた文書の出力指示を出力部40に対し
て行なう。出力部40は、検索結果を出力し、検索処理
は終了する。
Through the above processing, the result buffer BF stores a document containing keywords similar to the user's search request "sedan", specifically "sedan", "sports car", "RV car", "private use". Documents including “car”, “car”, etc. are accumulated. In response to this result, the output instruction unit 34
Instructs the output unit 40 to output a document based on the priority. The output unit 40 outputs the search result, and the search process ends.

【0055】上述の類似語検索システムでは、マッチン
グ部30において、概念距離、階層レベル差、およびこ
れらから優先度を算出したが、例えば、概念距離のみを
利用したり、概念距離と階層レベル差を利用するなど、
これらのうちの一部の計算結果を利用してもよい。
In the above-mentioned similar word retrieval system, the matching unit 30 calculates the concept distance, the hierarchy level difference, and the priority from these, but, for example, only the concept distance is used, or the concept distance and the hierarchy level difference are calculated. To use,
You may use the calculation result of some of these.

【0056】本発明は、階層関係を持つデータ間の比較
処理一般に適用でき、上述の類似語検索システムへの適
用のみに限定されるものではないことは言うまでもな
い。以下、本発明のマッチング装置の1つの実施の態様
を文書自動分類システムに適用した場合について述べ
る。
Needless to say, the present invention can be applied to general comparison processing between data having a hierarchical relationship and is not limited to application to the above-mentioned similar word retrieval system. Hereinafter, a case where one embodiment of the matching device of the present invention is applied to an automatic document classification system will be described.

【0057】現在、自動分類においては、標本データを
用いた自動分類が一般的な技術のひとつである。しか
し、シソーラス展開を含めることは、コストの問題から
従来は困難であった。本発明のマッチング装置を、標準
データとのマッチングに適用することにより、低コスト
で自動分類が可能となる。
Currently, in automatic classification, automatic classification using sample data is one of the general techniques. However, it has been difficult to include thesaurus expansion in the past due to cost issues. By applying the matching device of the present invention to matching with standard data, automatic classification can be performed at low cost.

【0058】例えば、次のようなキーワードを持つ標本
データ群(一部)に対して、ある文書を自動分類するこ
とを考える。 [標本1] キーワード: 携帯,電話,自動車,PHS カテゴリ: 移動体電話 [標本2] キーワード: 端末,反射,抵抗,遅延 カテゴリ: ターミネータ [標本3] キーワード: 携帯,端末,PDA,ネットワーク カテゴリ: 携帯端末
For example, consider automatically classifying a document with respect to a sample data group (part) having the following keywords. [Sample 1] Keywords: Cellular, Telephone, Automotive, PHS Category: Mobile Phone [Sample 2] Keywords: Terminal, Reflection, Resistance, Delay Category: Terminator [Sample 3] Keywords: Cellular, Terminal, PDA, Network Category: Cellular Terminal

【0059】入力文書も同様にキーワードを持つとす
る。これは、あらかじめ付与されたものでも、その場で
抽出したものでもかまわない。 [入力文書] キーワード: モーバイル,端末,通信
It is assumed that the input document also has keywords. This may be given in advance or extracted on the spot. [Input document] Keywords: mobile, terminal, communication

【0060】ここで、シソーラス展開を含めた入力文書
と各標本のキーワード間の類似度を求める。類似度の計
算には、上述の類似語検索システムの場合と同様の方法
を用いることができる。さらに、入力文書の各キーワー
ドとの類似度がもっとも低いもの同士の和を求める。標
本1〜3において計算した例を示す。 (標本1) モーバイル:携帯=1,端末:PHS=4,通信:電話
=2 合計7 (標本2) モーバイル:遅延=6,端末:端末=0,通信:遅延=
3 合計9 (標本3) モーバイル:携帯=1,端末:端末=0,通信:ネット
ワーク=2 合計3
Here, the similarity between the input document including the thesaurus expansion and the keyword of each sample is obtained. The method similar to the case of the above-mentioned similar word search system can be used for the calculation of the similarity. Furthermore, the sum of those having the lowest similarity to each keyword of the input document is obtained. The example calculated in the samples 1-3 is shown. (Sample 1) Mobile: Cellular = 1, Terminal: PHS = 4, Communication: Telephone = 2 Total 7 (Sample 2) Mobile: Delay = 6, Terminal: Terminal = 0, Communication: Delay =
3 Total 9 (Sample 3) Mobile: Mobile = 1, Terminal: Terminal = 0, Communication: Network = 2 Total 3

【0061】こうして得られた和のもっとも小さい標本
が、入力文書との類似度がもっとも高いと考えられるた
め、入力された文書を当該カテゴリに分類する。この例
では、標本3において計算された和が最も小さいので、
入力文書は標本3のカテゴリ「携帯端末」に分類され
る。以上の処理を入力文書すべてに対して順次行なこと
で自動分類が行なわれる。
The sample having the smallest sum obtained in this way is considered to have the highest degree of similarity to the input document, so the input document is classified into the relevant category. In this example, the sum calculated in sample 3 is the smallest, so
The input document is classified into the category “mobile terminal” of the sample 3. Automatic classification is performed by sequentially performing the above-mentioned processing for all input documents.

【0062】なお、上述の各システムへの適用例におい
ては、シソーラスを用いた例について述べたが、階層構
造をなすデータは一般に広く用いられているため、本発
明はファイルディレクトリなど、シソーラス以外のデー
タ間のマッチングにも適用することができる。
In the above application examples to each system, an example using a thesaurus has been described. However, since data having a hierarchical structure is generally widely used, the present invention applies to other than the thesaurus such as a file directory. It can also be applied to matching between data.

【0063】[0063]

【発明の効果】以上の説明から明らかなように、本発明
によれば、シソーラスのような階層構造をなすデータ間
での比較が、AND、XORといった単純なビット論理
演算をベースとする簡単な処理のみで高速に実行するこ
とが可能となる。また、ビット論理演算処理をベースと
することにより、ソフトウェアによる実現はもちろん、
ハードウェア化も容易である。
As is apparent from the above description, according to the present invention, comparison between data having a hierarchical structure such as a thesaurus is simple based on simple bit logical operations such as AND and XOR. It becomes possible to execute at high speed only by processing. In addition, by using bit logic operation processing as a base, not to mention realization by software,
It is easy to implement as hardware.

【0064】本発明により、従来の共通上位ノードまで
の階層数といった単純な処理では困難であった、階層の
途中にまたがるようなデータ間の場合でも比較可能とな
った。加えて、階層レベル差を用いることにより、デー
タの種類に応じたきめ細かな比較基準を設け、優先度づ
けを行なうことができる。
According to the present invention, it is possible to make a comparison even in the case of data extending in the middle of a hierarchy, which was difficult with the conventional simple processing such as the number of layers up to the common upper node. In addition, by using the layer level difference, it is possible to set a detailed comparison standard according to the type of data and to set the priority.

【0065】このように、従来困難であったシソーラス
展開を含むマッチング処理が簡単に、しかも高速に実行
できるので、本発明のマッチング処理を適用した例えば
類似テキスト検索やテキスト自動分類などが、高速かつ
低コストで実現可能となるという効果がある。
As described above, since the matching processing including thesaurus expansion, which has been difficult in the past, can be executed easily and at high speed, for example, similar text search and automatic text classification to which the matching processing of the present invention is applied can be performed at high speed. There is an effect that it can be realized at low cost.

【図面の簡単な説明】[Brief description of drawings]

【図1】 本発明のマッチング装置の1つの実施の態様
を示す概略構成図である。
FIG. 1 is a schematic configuration diagram showing an embodiment of a matching device of the present invention.

【図2】 本発明のマッチング装置の1つの実施の態様
を類似語検索システムに適用した場合の一例を示すブロ
ック構成図である。
FIG. 2 is a block diagram showing an example in which one embodiment of the matching device of the present invention is applied to a similar word search system.

【図3】 類似語検索システムの一例における全体の動
作の一例を示すフローチャートである。
FIG. 3 is a flowchart showing an example of overall operation in an example of a similar word search system.

【図4】 マッチングアルゴリズムの一例の概略を示す
フローチャートである。
FIG. 4 is a flowchart showing an outline of an example of a matching algorithm.

【図5】 シソーラスの構成の具体例を示す説明図であ
る。
FIG. 5 is an explanatory diagram showing a specific example of the structure of a thesaurus.

【図6】 シソーラスコードへの変換の一例を示す概念
図である。
FIG. 6 is a conceptual diagram showing an example of conversion into a thesaurus code.

【図7】 マッチング結果の具体例の説明図である。FIG. 7 is an explanatory diagram of a specific example of a matching result.

【図8】 具体例における概念距離の一部を2次元にマ
ッピングした概念図である。
FIG. 8 is a conceptual diagram in which a part of the conceptual distance in a specific example is two-dimensionally mapped.

【図9】 概念距離のORゲートによる算出法の説明図
である。
FIG. 9 is an explanatory diagram of a method of calculating a conceptual distance using an OR gate.

【符号の説明】[Explanation of symbols]

1…入力部、2…階層関係コード化部、3…マッチング
部、4…出力部、10…検索要求入力部、11…端末、
12…OCR、13…電話および音声認識部、14…記
憶装置、15…赤外線・無線受信部、20…シソーラス
コード化部、21…シソーラス、30…マッチング部、
31…距離算出部、32…階層差算出部、33…優先度
算出部、34…出力指示部、40…出力部、41…端
末、42…ファクシミリ/プリンタ、43…電話・ポケ
ベル、44…赤外線・無線発信部、50…データベース
部、51…データベース。
1 ... Input unit, 2 ... Hierarchical relationship coding unit, 3 ... Matching unit, 4 ... Output unit, 10 ... Search request input unit, 11 ... Terminal,
12 ... OCR, 13 ... Telephone and voice recognition unit, 14 ... Storage device, 15 ... Infrared / wireless receiving unit, 20 ... Thesaurus coding unit, 21 ... Thesaurus, 30 ... Matching unit,
31 ... Distance calculation unit, 32 ... Hierarchical difference calculation unit, 33 ... Priority calculation unit, 34 ... Output instruction unit, 40 ... Output unit, 41 ... Terminal, 42 ... Facsimile / printer, 43 ... Telephone / pager, 44 ... Infrared ray -Wireless transmission unit, 50 ... Database unit, 51 ... Database.

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】 データ間の階層関係に基づく類似度を算
出するマッチング装置において、階層関係をもつデータ
群の各データを階層関係に応じたコードとともに保持し
入力に応じたコードに変換する階層データコード化手段
と、与えられた少なくとも二つのデータについて前記階
層データコード化手段より得られたコードに基づき論理
演算により階層関係における距離を算出する距離算出手
段を有することを特徴とするマッチング装置。
1. Hierarchical data in which each data of a data group having a hierarchical relationship is held together with a code according to the hierarchical relationship and converted into a code according to an input in a matching device for calculating a similarity based on a hierarchical relationship between data. A matching device comprising: a coding means and a distance calculation means for calculating a distance in a hierarchical relationship by a logical operation based on a code obtained by the hierarchical data coding means for at least two given data.
【請求項2】 さらに、与えられた少なくとも二つのデ
ータについて前記階層データコード化手段より得られた
コードに基づき論理演算により階層レベルの差を算出す
る階層差算出手段を有することを特徴とする請求項1に
記載のマッチング装置。
2. A hierarchical difference calculating means for calculating a hierarchical level difference by a logical operation based on a code obtained by the hierarchical data coding means for at least two given data. Item 1. The matching device according to item 1.
【請求項3】 さらに、前記距離算出手段および前記階
層差算出手段の結果に基づき優先度を算出する優先度算
出手段を有することを特徴とする請求項2に記載のマッ
チング装置。
3. The matching apparatus according to claim 2, further comprising priority calculation means for calculating priority based on the results of the distance calculation means and the layer difference calculation means.
JP19034395A 1995-07-26 1995-07-26 Matching device and matching method Expired - Fee Related JP3603395B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19034395A JP3603395B2 (en) 1995-07-26 1995-07-26 Matching device and matching method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19034395A JP3603395B2 (en) 1995-07-26 1995-07-26 Matching device and matching method

Publications (2)

Publication Number Publication Date
JPH0944507A true JPH0944507A (en) 1997-02-14
JP3603395B2 JP3603395B2 (en) 2004-12-22

Family

ID=16256624

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19034395A Expired - Fee Related JP3603395B2 (en) 1995-07-26 1995-07-26 Matching device and matching method

Country Status (1)

Country Link
JP (1) JP3603395B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09212522A (en) * 1996-02-07 1997-08-15 Fuji Xerox Co Ltd Document information retrieval device
JP2002041885A (en) * 2000-07-27 2002-02-08 Ribnet Co Ltd Information exchange system for lease or buying and selling real estate article
JP2009031955A (en) * 2007-07-26 2009-02-12 Fuji Xerox Co Ltd Remote conference system and program for remote conference system
JP2009075603A (en) * 2001-02-12 2009-04-09 Gracenote Inc Generating and matching hashes of multimedia content

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0528199A (en) * 1991-07-18 1993-02-05 Canon Inc Document retrieval device
JPH0573615A (en) * 1991-09-17 1993-03-26 Kobe Nippon Denki Software Kk System for managing hierarchical structure type information
JPH05165888A (en) * 1991-12-16 1993-07-02 Hitachi Ltd Case search system and its search method
JPH07141381A (en) * 1993-11-19 1995-06-02 Sharp Corp Electronic dictionary display

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0528199A (en) * 1991-07-18 1993-02-05 Canon Inc Document retrieval device
JPH0573615A (en) * 1991-09-17 1993-03-26 Kobe Nippon Denki Software Kk System for managing hierarchical structure type information
JPH05165888A (en) * 1991-12-16 1993-07-02 Hitachi Ltd Case search system and its search method
JPH07141381A (en) * 1993-11-19 1995-06-02 Sharp Corp Electronic dictionary display

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09212522A (en) * 1996-02-07 1997-08-15 Fuji Xerox Co Ltd Document information retrieval device
JP2002041885A (en) * 2000-07-27 2002-02-08 Ribnet Co Ltd Information exchange system for lease or buying and selling real estate article
JP2009075603A (en) * 2001-02-12 2009-04-09 Gracenote Inc Generating and matching hashes of multimedia content
JP2009031955A (en) * 2007-07-26 2009-02-12 Fuji Xerox Co Ltd Remote conference system and program for remote conference system

Also Published As

Publication number Publication date
JP3603395B2 (en) 2004-12-22

Similar Documents

Publication Publication Date Title
US6539373B1 (en) Contextual searching by determining intersections of search results
US7433869B2 (en) Method and apparatus for document clustering and document sketching
CN104199965B (en) Semantic information retrieval method
US7761451B2 (en) Efficient querying and paging in databases
CN105045875B (en) Personalized search and device
US20130141259A1 (en) Method and system for data compression
JP2020537268A (en) Methods and systems for semantic search in large databases
WO1998039715A9 (en) System and method for rapidly identifying the existence and location of an item in a file
JP2002520712A (en) Data retrieval system and method and its use in search engines
CN107291785A (en) A kind of data search method and device
US6735600B1 (en) Editing protocol for flexible search engines
Vallée et al. The number of symbol comparisons in QuickSort and QuickSelect
CN113641782B (en) Information retrieval method, device, equipment and medium based on retrieval statement
Segal et al. Enclosing k points in the smallest axis parallel rectangle
CN109992590B (en) Approximate space keyword query method and system with digital attributes in traffic network
JP7082542B2 (en) Trajectory search device and trajectory search program
CN114385777A (en) Text data processing method and device, computer equipment and storage medium
JP3603395B2 (en) Matching device and matching method
CN112836009A (en) A paper duplication checking method and system supporting privacy protection
CN110245275B (en) A fast normalization method for large-scale similar news headlines
CN117171164B (en) Data storage method, device, terminal device and storage medium
CN119917942A (en) A method for constructing knowledge semantic tree based on text data
CN118051648A (en) Method, apparatus, device, medium and program product for retrieving information
CN118689963A (en) Work order information query method, device, computer equipment and storage medium
CN115017384B (en) Item category identification method, device, electronic device and storage medium

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040217

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040416

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040525

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040723

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: 20040907

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040920

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20071008

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20081008

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20091008

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20101008

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees