JPH11143902A - n−gramを用いた類似文書検索方法 - Google Patents
n−gramを用いた類似文書検索方法Info
- Publication number
- JPH11143902A JPH11143902A JP9309078A JP30907897A JPH11143902A JP H11143902 A JPH11143902 A JP H11143902A JP 9309078 A JP9309078 A JP 9309078A JP 30907897 A JP30907897 A JP 30907897A JP H11143902 A JPH11143902 A JP H11143902A
- Authority
- JP
- Japan
- Prior art keywords
- character string
- search
- document
- extracting
- extracted
- 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.)
- Pending
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】
【課題】本発明の課題は、日本語のように文字種の多い
言語に対しても、高速で高精度な類似文書検索システム
を提供することである。 【解決手段】テキストデータベース中のテキスト103
に存在する特徴文字列のそのテキスト103における出
現頻度を出現頻度ファイル104として格納するステッ
プと、ユーザが指定したテキストから特徴文字列を抽出
するステップと、ユーザが指定したテキストにおける特
徴文字列の出現頻度を計数するステップとを有し、出現
頻度ファイル104とユーザが指定したテキストにおけ
る出現頻度を用いてユーザが指定したテキストに対する
類似度を算出し、算出された類似度を用いて文書を検索
する。
言語に対しても、高速で高精度な類似文書検索システム
を提供することである。 【解決手段】テキストデータベース中のテキスト103
に存在する特徴文字列のそのテキスト103における出
現頻度を出現頻度ファイル104として格納するステッ
プと、ユーザが指定したテキストから特徴文字列を抽出
するステップと、ユーザが指定したテキストにおける特
徴文字列の出現頻度を計数するステップとを有し、出現
頻度ファイル104とユーザが指定したテキストにおけ
る出現頻度を用いてユーザが指定したテキストに対する
類似度を算出し、算出された類似度を用いて文書を検索
する。
Description
【0001】
【発明の属する技術分野】本発明は、ユーザが指定した
文書と類似する文書を、文書データベースの中から検索
する方法に関する。
文書と類似する文書を、文書データベースの中から検索
する方法に関する。
【0002】
【従来の技術】近年、パーソナルコンピュータやインタ
ーネット等の普及に伴い、電子化文書が爆発的に増加し
ており、今後も加速度的に増大していくものと予想され
る。このような状況において、ユーザが所望する情報を
含んだ文書を高速かつ効率的に検索したいという要求が
高まってきている。
ーネット等の普及に伴い、電子化文書が爆発的に増加し
ており、今後も加速度的に増大していくものと予想され
る。このような状況において、ユーザが所望する情報を
含んだ文書を高速かつ効率的に検索したいという要求が
高まってきている。
【0003】このような要求に応える技術として全文検
索がある。全文検索では、検索対象文書をテキストとし
て計算機システムに登録してデータベース化し、この中
からユーザが指定した検索文字列(以下、検索タームと
呼ぶ)を含む文書を検索する。このように全文検索で
は、文書中の文字列そのものを対象として検索を行なう
ため、予めキーワードを付与し、このキーワードを手掛
りに検索する従来の検索システムとは異なり、検出漏れ
が原理的に生じないという特長がある。
索がある。全文検索では、検索対象文書をテキストとし
て計算機システムに登録してデータベース化し、この中
からユーザが指定した検索文字列(以下、検索タームと
呼ぶ)を含む文書を検索する。このように全文検索で
は、文書中の文字列そのものを対象として検索を行なう
ため、予めキーワードを付与し、このキーワードを手掛
りに検索する従来の検索システムとは異なり、検出漏れ
が原理的に生じないという特長がある。
【0004】しかし、ユーザが所望する情報を含んだ文
書を的確に検索するためには、ユーザの検索意図を正確
に表す複雑な検索条件式を入力する必要がある。
書を的確に検索するためには、ユーザの検索意図を正確
に表す複雑な検索条件式を入力する必要がある。
【0005】この繁雑さを解消するために、ユーザが自
分の所望する内容の文書(以下、種文書と呼ぶ)を指定
し、その文書と類似する文書を検索する類似文書検索技
術が注目されている。
分の所望する内容の文書(以下、種文書と呼ぶ)を指定
し、その文書と類似する文書を検索する類似文書検索技
術が注目されている。
【0006】類似文書検索の方法としては、例えば、
「特開平8−335222号公報」に、形態素解析等に
より種文書中に含まれる単語を抽出し、これを用いて類
似文書を検索する技術(以下、従来技術1と呼ぶ)が開
示されている。
「特開平8−335222号公報」に、形態素解析等に
より種文書中に含まれる単語を抽出し、これを用いて類
似文書を検索する技術(以下、従来技術1と呼ぶ)が開
示されている。
【0007】また、「特開平6−110948号公報」
には、種文書中から連続するn文字の文字列(以下、n-g
ramと呼ぶ)を抽出し、これを用いて類似文書を検索す
る技術(以下、従来技術2と呼ぶ)が開示されている。
には、種文書中から連続するn文字の文字列(以下、n-g
ramと呼ぶ)を抽出し、これを用いて類似文書を検索す
る技術(以下、従来技術2と呼ぶ)が開示されている。
【0008】上記2つの従来技術について、その概要を
説明する。
説明する。
【0009】従来技術1では、形態素解析により種分書
中に含まれる単語を抽出し、この単語を含む文書を類似
文書として検索する。例えば、「この装置は地下水脈の
観測にも使える。」という文書を種文書とする場合、形
態素解析により単語辞書を参照して、「装置」「地下」
「水脈」「観測」「使える」という単語が抽出される。
この結果、「地下水脈を観測することによる地震の発生
を予測する。」という文書を類似文書として検索するこ
とができる。 しかし従来技術1では、単語の抽出に単
語辞書を用いるため、次のような2つの問題が生じる。
中に含まれる単語を抽出し、この単語を含む文書を類似
文書として検索する。例えば、「この装置は地下水脈の
観測にも使える。」という文書を種文書とする場合、形
態素解析により単語辞書を参照して、「装置」「地下」
「水脈」「観測」「使える」という単語が抽出される。
この結果、「地下水脈を観測することによる地震の発生
を予測する。」という文書を類似文書として検索するこ
とができる。 しかし従来技術1では、単語の抽出に単
語辞書を用いるため、次のような2つの問題が生じる。
【0010】まず、単語辞書に含まれていない単語は、
種文書から検索用の単語として抽出されないためこの単
語を含む文書を検索することができないという問題があ
る。このため、ユーザが所望する情報が新語で表され、
これが単語辞書に含まれていない場合、目的の情報を含
む文書を検索することができなくなる。
種文書から検索用の単語として抽出されないためこの単
語を含む文書を検索することができないという問題があ
る。このため、ユーザが所望する情報が新語で表され、
これが単語辞書に含まれていない場合、目的の情報を含
む文書を検索することができなくなる。
【0011】次に、ユーザが所望する情報を表わす言葉
が単語辞書に含まれる場合でも、単語の抽出の仕方によ
っては検索漏れが生じてしまう。例えば、上記の「この
装置は地下水脈の観測にも使える。」という種文書から
は、「装置」「地下」「水脈」「観測」「使える」とい
う単語が抽出される。しかし、「地下水」という単語が
抽出されないため「地下水の大量汲み上げで地盤沈下地
域が拡大した。」という文書は、類似文書として検索す
ることができないという問題がある。
が単語辞書に含まれる場合でも、単語の抽出の仕方によ
っては検索漏れが生じてしまう。例えば、上記の「この
装置は地下水脈の観測にも使える。」という種文書から
は、「装置」「地下」「水脈」「観測」「使える」とい
う単語が抽出される。しかし、「地下水」という単語が
抽出されないため「地下水の大量汲み上げで地盤沈下地
域が拡大した。」という文書は、類似文書として検索す
ることができないという問題がある。
【0012】以上が従来技術1の問題点である。
【0013】この問題を解決するために、上記従来技術
2が提案されている。これは、n-gramを用いた類似文書
検索方法である。
2が提案されている。これは、n-gramを用いた類似文書
検索方法である。
【0014】以下、文書1「新開発の心電計による発作
時の心電図」、文書2「新しいソフトウェアの開発作
業」、および文書3「ソフト開発を支援するソフトウェ
ア」が登録されているデータベースを対象に、n-gramの
nの値を2として、ユーザが文書2を種文書に指定した
場合を例に、従来技術2の具体的な処理方法を説明し、
その問題点を述べる。
時の心電図」、文書2「新しいソフトウェアの開発作
業」、および文書3「ソフト開発を支援するソフトウェ
ア」が登録されているデータベースを対象に、n-gramの
nの値を2として、ユーザが文書2を種文書に指定した
場合を例に、従来技術2の具体的な処理方法を説明し、
その問題点を述べる。
【0015】まず、データベース中の文書1〜文書3か
ら2-gramを抽出する。
ら2-gramを抽出する。
【0016】
【表1】
【0017】表1に、文書1に出現する2-gramの中から
重複を排除して抽出した2-gram(以下、重複排除2-gram
と呼ぶ)を示す。次に、これらの2-gramの各々に対しウ
ェイトを計算する。このウェイトは各々の2-gramの出現
頻度をその文書中に出現する2-gramの重複を含めた総出
現頻度で割ることによって求める。ウェイトは各々の2-
gramのその文書内における出現割合を表し、この値が大
きい2-gramほどその文書に頻繁に出現することを意味す
る。文書2および文書3に対しても同様の処理を施し、
それぞれウェイトを求める。表2および表3にこの処理
結果を示す。
重複を排除して抽出した2-gram(以下、重複排除2-gram
と呼ぶ)を示す。次に、これらの2-gramの各々に対しウ
ェイトを計算する。このウェイトは各々の2-gramの出現
頻度をその文書中に出現する2-gramの重複を含めた総出
現頻度で割ることによって求める。ウェイトは各々の2-
gramのその文書内における出現割合を表し、この値が大
きい2-gramほどその文書に頻繁に出現することを意味す
る。文書2および文書3に対しても同様の処理を施し、
それぞれウェイトを求める。表2および表3にこの処理
結果を示す。
【0018】
【表2】
【0019】
【表3】
【0020】その後、データベース中の文書間の共通性
を除去する。ここでは、まず、データベース中に存在す
る2-gramの中で重複を排除した2-gramについて、その共
通性ウェイトを算出する。この共通性ウェイトは、デー
タベース中の全文書に関する各2-gramのウェイトの総和
を、全文書数で割ることによって算出する。共通性ウェ
イトは、各2-gramのデータベース全体における出現割合
を表し、この値が大きい2-gramほどデータベース中のど
の文書にも共通して出現することを意味する。
を除去する。ここでは、まず、データベース中に存在す
る2-gramの中で重複を排除した2-gramについて、その共
通性ウェイトを算出する。この共通性ウェイトは、デー
タベース中の全文書に関する各2-gramのウェイトの総和
を、全文書数で割ることによって算出する。共通性ウェ
イトは、各2-gramのデータベース全体における出現割合
を表し、この値が大きい2-gramほどデータベース中のど
の文書にも共通して出現することを意味する。
【0021】
【表4】
【0022】表4に、文書1、文書2および文書3の間
の共通性ウェイトを示す。
の共通性ウェイトを示す。
【0023】例えば、2-gram「新開」の共通性ウェイト
は、(0.063+0.0+0.0)/3=0.021である。ここで2-gram
「新開」は文書2および文書3に出現していないのでウ
ェイトはそれぞれ「0.0」となっている。2-gram「開
発」の共通性ウェイトは、(0.063+0.077+0.067)/3=0.06
9である。
は、(0.063+0.0+0.0)/3=0.021である。ここで2-gram
「新開」は文書2および文書3に出現していないのでウ
ェイトはそれぞれ「0.0」となっている。2-gram「開
発」の共通性ウェイトは、(0.063+0.077+0.067)/3=0.06
9である。
【0024】上述したように、共通性ウェイトは各n-gr
amのウェイトの平均値である。
amのウェイトの平均値である。
【0025】この共通性ウェイトを各n-gramのウェイト
から差し引くことにより、データベース中の文書間の共
通性を除去する(この値を従来技術2では、正規化ウェ
イトと呼んでいる)。正規化ウェイトは、データベース
における各n-gramの出現偏りを表し、この値が大きいn-
gramほどある特定の文書に偏って出現することを意味す
る。
から差し引くことにより、データベース中の文書間の共
通性を除去する(この値を従来技術2では、正規化ウェ
イトと呼んでいる)。正規化ウェイトは、データベース
における各n-gramの出現偏りを表し、この値が大きいn-
gramほどある特定の文書に偏って出現することを意味す
る。
【0026】もし、あるn-gramが全ての文書に同じ割合
で出現していれば、ウェイトと共通性ウェイトは同じ値
となるため、正規化ウェイトは「0」となる。つまり、
どの文書においても同じような割合で出現するn-gramに
関しては、ウェイトが限りなく「0」に近づくことにな
る。
で出現していれば、ウェイトと共通性ウェイトは同じ値
となるため、正規化ウェイトは「0」となる。つまり、
どの文書においても同じような割合で出現するn-gramに
関しては、ウェイトが限りなく「0」に近づくことにな
る。
【0027】表5、表6および表7に、文書1、文書2
および文書3の正規化ウェイトを示す。
および文書3の正規化ウェイトを示す。
【0028】
【表5】
【0029】
【表6】
【0030】
【表7】
【0031】以上のようにして得られた正規化ウェイト
を用いて、ユーザが種文書として指定した文書とデータ
ベース中の全文書との類似性を求め、これを類似度とし
て表わす。文書番号をiとすると、文書iの類似度S(i)
は、以下に示す式(1)によって求められる。
を用いて、ユーザが種文書として指定した文書とデータ
ベース中の全文書との類似性を求め、これを類似度とし
て表わす。文書番号をiとすると、文書iの類似度S(i)
は、以下に示す式(1)によって求められる。
【0032】
【数1】
【0033】ここで、U(j)は種文書中のj番目のn-gram
の正規化ウェイトを示し、R(j)はデータベース中文書の
j番目のn-gramの正規化ウェイトを示す。また、nはデー
タベース中の全文書数を表わす。この式を用いてデータ
ベース中の全ての文書の類似度を算出すると以下のよう
になる。
の正規化ウェイトを示し、R(j)はデータベース中文書の
j番目のn-gramの正規化ウェイトを示す。また、nはデー
タベース中の全文書数を表わす。この式を用いてデータ
ベース中の全ての文書の類似度を算出すると以下のよう
になる。
【0034】 S(1) = 0.018 S(2) = 1.0 S(3) = 0.119 最後に、得られた類似度の降順に文書を出力する。この
例では、文書2、文書3、文書1の順で出力されること
になる。
例では、文書2、文書3、文書1の順で出力されること
になる。
【0035】以上が、従来技術2の具体的な処理内容で
ある。このように従来技術2では、単語辞書に基づく形
態素解析を用いることなく種文書に類似する文書を検索
することができるため、従来技術1における2つの問題
点を解決することができる。
ある。このように従来技術2では、単語辞書に基づく形
態素解析を用いることなく種文書に類似する文書を検索
することができるため、従来技術1における2つの問題
点を解決することができる。
【0036】しかし、この従来技術2には次のような2
つの問題点がある。
つの問題点がある。
【0037】まず、第一の問題点は、種文書から抽出さ
れるn-gram数が膨大になるため、検索に長大な時間を要
してしまうという問題である。例えば、1,000文字から
なる種文書から全ての2-gramを抽出した場合、999個の2
-gramが抽出されることになる。そのため、抽出した全
ての2-gramを類似検索に用いる従来技術2の方法では、
1個の2-gramの検索が0.1秒で済んだとしても、999個の2
-gramでは99.9秒、すなわち約1分40秒も検索時間が掛か
ってしまうことになる。
れるn-gram数が膨大になるため、検索に長大な時間を要
してしまうという問題である。例えば、1,000文字から
なる種文書から全ての2-gramを抽出した場合、999個の2
-gramが抽出されることになる。そのため、抽出した全
ての2-gramを類似検索に用いる従来技術2の方法では、
1個の2-gramの検索が0.1秒で済んだとしても、999個の2
-gramでは99.9秒、すなわち約1分40秒も検索時間が掛か
ってしまうことになる。
【0038】また、第二の問題点は、全てのn-gramを用
いて類似文書を検索するため、検索結果にノイズが含ま
れるという問題である。
いて類似文書を検索するため、検索結果にノイズが含ま
れるという問題である。
【0039】以下、この問題点を、文書1〜文書3が登
録されている前記データベースに、文書4「新しいソフ
トクリーム券の配布作業」を追加した場合を例に、具体
的に説明する。
録されている前記データベースに、文書4「新しいソフ
トクリーム券の配布作業」を追加した場合を例に、具体
的に説明する。
【0040】本例では、文書2が、種文書としてユーザ
に指定されたものとする。
に指定されたものとする。
【0041】まず、文書4から2-gramを抽出し、ウェイ
トを求めた結果を表8に示す。
トを求めた結果を表8に示す。
【0042】
【表8】
【0043】この文書4のウェイトと表1〜表3に示し
た文書1〜文書3のウェイトを用いて、共通性ウェイト
を算出する。
た文書1〜文書3のウェイトを用いて、共通性ウェイト
を算出する。
【0044】
【表9】
【0045】表9に、文書1〜文書4の間の共通性ウェ
イトを示す。例えば、2-gram「開発」の共通性ウェイト
は、(0.063+0.077+0.067+0.000)/4=0.052となる。次
に、この共通性ウェイトを各文書の重複排除2-gramのウ
ェイトから差し引くことにより、データベース中の文書
間の共通性を除去した正規化ウェイトを求める。
イトを示す。例えば、2-gram「開発」の共通性ウェイト
は、(0.063+0.077+0.067+0.000)/4=0.052となる。次
に、この共通性ウェイトを各文書の重複排除2-gramのウ
ェイトから差し引くことにより、データベース中の文書
間の共通性を除去した正規化ウェイトを求める。
【0046】
【表10】
【0047】
【表11】
【0048】
【表12】
【0049】
【表13】
【0050】表10〜表13に文書1〜文書4における
2-gramの正規化ウェイトを示す。これらを用いて、種文
書である文書2に対する各文書の類似度を式(1)を用
いて算出すると、 S(1) = 0.036 S(2) = 1.0 S(3) = 0.179 S(4) = 0.190 となる。
2-gramの正規化ウェイトを示す。これらを用いて、種文
書である文書2に対する各文書の類似度を式(1)を用
いて算出すると、 S(1) = 0.036 S(2) = 1.0 S(3) = 0.179 S(4) = 0.190 となる。
【0051】ここで、文書3は文書2と同様にソフトウ
ェアに関する文書であるにも関わらず、関係のない文書
4の方が文書2に類似していると判断されてしまってい
る。これは、文書2の「ソフトウェア」から抽出される
「ソフ」「フト」が、文書4の「ソフトクリーム」から
も抽出されることによる。n-gramは単語のように意味的
にまとまった単位の文字列ではないため、同じn-gramで
あっても文書内で同じ意味を表現しているとは限らな
い。そのため、この例のように全く関係のない文書が高
い類似度を持つ文書として探し出されてしまうという問
題がある。
ェアに関する文書であるにも関わらず、関係のない文書
4の方が文書2に類似していると判断されてしまってい
る。これは、文書2の「ソフトウェア」から抽出される
「ソフ」「フト」が、文書4の「ソフトクリーム」から
も抽出されることによる。n-gramは単語のように意味的
にまとまった単位の文字列ではないため、同じn-gramで
あっても文書内で同じ意味を表現しているとは限らな
い。そのため、この例のように全く関係のない文書が高
い類似度を持つ文書として探し出されてしまうという問
題がある。
【0052】
【発明が解決しようとする課題】こうした従来技術の問
題に対し、本発明では以下の課題を解決することを目的
とする。
題に対し、本発明では以下の課題を解決することを目的
とする。
【0053】(1)検索精度の高い類似文書検索方法を
提供する。
提供する。
【0054】(2)日本語のように文字種の多い言語に
対しても、高速に類似文書検索が行える方法を提供す
る。
対しても、高速に類似文書検索が行える方法を提供す
る。
【0055】
【課題を解決するための手段】上記課題を解決するため
に、本発明による文書検索方法では、以下に示すステッ
プで種文書と類似する文書を検索する。
に、本発明による文書検索方法では、以下に示すステッ
プで種文書と類似する文書を検索する。
【0056】すなわち、本発明による文書検索方法で
は、文書の登録処理として、(ステップ1)登録対象文
書を読み込む文書読込みステップ、(ステップ2)上記
文書読込みステップで読み込んだ登録対象文書の文字列
を、漢字やカタカナ等の文字種境界で分割し、同一文字
種で構成される文字列(以下、同一文字種文字列と呼
ぶ)として抽出する同一文字種文字列抽出ステップ、
(ステップ3)上記同一文字種文字列抽出ステップで抽
出した同一文字種文字列に対して、その文字種を判定
し、漢字ならば予め定められた長さの文字列を自立語の
可能性があるもの(以下、特徴文字列と呼ぶ)として、
そこから抽出し、カタカナや英字ならば同一文字種文字
列そのものを特徴文字列として抽出し、それ以外の文字
種ならば特徴文字列としては抽出を行わない登録用特徴
文字列抽出ステップ、(ステップ4)上記登録用特徴文
字列抽出ステップで抽出した特徴文字列に関して、登録
対象文書内における出現頻度を計数する出現頻度計数ス
テップ、(ステップ5)上記出現頻度計数ステップで計
数した出現頻度を該当する出現頻度ファイルに格納する
出現頻度ファイル作成登録ステップ、を有し、種文書に
類似する文書の検索処理として、(ステップ6)種文書
を読み込む種文書読込みステップ、(ステップ7)上記
種文書読込みステップにおいて読み込んだ種文書の文字
列を文字種境界で分割し、同一文字種文字列として抽出
する同一文字種文字列抽出ステップ、(ステップ8)上
記同一文字種文字列抽出ステップで抽出した同一文字種
文字列に対して、その文字種を判定し、漢字ならば予め
定められた長さの文字列を特徴文字列としてそこから抽
出し、カタカナや英字ならば同一文字種文字列そのもの
を特徴文字列として抽出し、それ以外の文字種ならば特
徴文字列としては抽出を行わない検索用特徴文字列抽出
ステップ、(ステップ9)上記検索用特徴文字列抽出ス
テップで抽出した特徴文字列に関して、種文書内の出現
頻度を計数する出現頻度計数ステップ、(ステップ1
0)上記出現頻度計数ステップで抽出した全ての特徴文
字列に対して、前記出現頻度ファイルを読み込み、デー
タベース内の各文書における出現頻度を取得する出現頻
度取得ステップ、(ステップ11)上記出現頻度取得ス
テップで抽出した特徴文字列に関し、上記出現頻度計数
ステップで計数した種文書内の出現頻度と、上記出現頻
度取得ステップで取得したデータベース内の各文書にお
ける出現頻度を用いて、予め定められた算出式に基づい
て種文書とデータベース内の各文書との類似度を算出す
る類似度算出ステップ、(ステップ12)上記類似度算
出ステップで算出した類似度の降順に、文書の一覧を表
示する検索結果表示ステップを有する。
は、文書の登録処理として、(ステップ1)登録対象文
書を読み込む文書読込みステップ、(ステップ2)上記
文書読込みステップで読み込んだ登録対象文書の文字列
を、漢字やカタカナ等の文字種境界で分割し、同一文字
種で構成される文字列(以下、同一文字種文字列と呼
ぶ)として抽出する同一文字種文字列抽出ステップ、
(ステップ3)上記同一文字種文字列抽出ステップで抽
出した同一文字種文字列に対して、その文字種を判定
し、漢字ならば予め定められた長さの文字列を自立語の
可能性があるもの(以下、特徴文字列と呼ぶ)として、
そこから抽出し、カタカナや英字ならば同一文字種文字
列そのものを特徴文字列として抽出し、それ以外の文字
種ならば特徴文字列としては抽出を行わない登録用特徴
文字列抽出ステップ、(ステップ4)上記登録用特徴文
字列抽出ステップで抽出した特徴文字列に関して、登録
対象文書内における出現頻度を計数する出現頻度計数ス
テップ、(ステップ5)上記出現頻度計数ステップで計
数した出現頻度を該当する出現頻度ファイルに格納する
出現頻度ファイル作成登録ステップ、を有し、種文書に
類似する文書の検索処理として、(ステップ6)種文書
を読み込む種文書読込みステップ、(ステップ7)上記
種文書読込みステップにおいて読み込んだ種文書の文字
列を文字種境界で分割し、同一文字種文字列として抽出
する同一文字種文字列抽出ステップ、(ステップ8)上
記同一文字種文字列抽出ステップで抽出した同一文字種
文字列に対して、その文字種を判定し、漢字ならば予め
定められた長さの文字列を特徴文字列としてそこから抽
出し、カタカナや英字ならば同一文字種文字列そのもの
を特徴文字列として抽出し、それ以外の文字種ならば特
徴文字列としては抽出を行わない検索用特徴文字列抽出
ステップ、(ステップ9)上記検索用特徴文字列抽出ス
テップで抽出した特徴文字列に関して、種文書内の出現
頻度を計数する出現頻度計数ステップ、(ステップ1
0)上記出現頻度計数ステップで抽出した全ての特徴文
字列に対して、前記出現頻度ファイルを読み込み、デー
タベース内の各文書における出現頻度を取得する出現頻
度取得ステップ、(ステップ11)上記出現頻度取得ス
テップで抽出した特徴文字列に関し、上記出現頻度計数
ステップで計数した種文書内の出現頻度と、上記出現頻
度取得ステップで取得したデータベース内の各文書にお
ける出現頻度を用いて、予め定められた算出式に基づい
て種文書とデータベース内の各文書との類似度を算出す
る類似度算出ステップ、(ステップ12)上記類似度算
出ステップで算出した類似度の降順に、文書の一覧を表
示する検索結果表示ステップを有する。
【0057】上記文書検索方法を用いた本発明の原理
を、以下に説明する。
を、以下に説明する。
【0058】文書を登録する際には、(ステップ1)〜
(ステップ5)を実行する。まず、(ステップ1)で登
録対象となる文書を読み込む。次に、(ステップ2)に
おいて、(ステップ1)で読み込んだ登録対象文書中の
文字列を、漢字やカタカナ等の文字種境界で分割し、同
一文字種からなる文字列を抽出する。例えば、前記の文
書4「新しいソフトクリーム券の配布作業」という文書
からは、「新」「しい」「ソフトクリーム」「券」
「の」「配布作業」という6個の同一文字種文字列が抽
出される。
(ステップ5)を実行する。まず、(ステップ1)で登
録対象となる文書を読み込む。次に、(ステップ2)に
おいて、(ステップ1)で読み込んだ登録対象文書中の
文字列を、漢字やカタカナ等の文字種境界で分割し、同
一文字種からなる文字列を抽出する。例えば、前記の文
書4「新しいソフトクリーム券の配布作業」という文書
からは、「新」「しい」「ソフトクリーム」「券」
「の」「配布作業」という6個の同一文字種文字列が抽
出される。
【0059】次に、(ステップ3)において、(ステッ
プ2)で抽出した同一文字種文字列について、その文字
種を判定し、漢字ならば予め定められた長さの文字列を
特徴文字列としてそこから抽出し、カタカナや英字なら
ば同一文字種文字列そのものを特徴文字列として抽出
し、それ以外の文字種ならば特徴文字列としては抽出を
行わない。例えば、予め漢字文字列から2-gramを抽出す
るものと定められている場合には、上記(ステップ2)
における同一文字種文字列からは、「ソフトクリーム」
「配布」「布作」「作業」が特徴文字列として抽出され
る。
プ2)で抽出した同一文字種文字列について、その文字
種を判定し、漢字ならば予め定められた長さの文字列を
特徴文字列としてそこから抽出し、カタカナや英字なら
ば同一文字種文字列そのものを特徴文字列として抽出
し、それ以外の文字種ならば特徴文字列としては抽出を
行わない。例えば、予め漢字文字列から2-gramを抽出す
るものと定められている場合には、上記(ステップ2)
における同一文字種文字列からは、「ソフトクリーム」
「配布」「布作」「作業」が特徴文字列として抽出され
る。
【0060】次に、(ステップ4)において、(ステッ
プ3)で抽出した特徴文字列の登録対象文書内における
出現頻度を計数する。例えば、上記の文書4「新しいソ
フトクリーム券の配布作業」という文書では、特徴文字
列「ソフトクリーム」が1回出現し、「作業」は1回出
現するという情報が得られる。
プ3)で抽出した特徴文字列の登録対象文書内における
出現頻度を計数する。例えば、上記の文書4「新しいソ
フトクリーム券の配布作業」という文書では、特徴文字
列「ソフトクリーム」が1回出現し、「作業」は1回出
現するという情報が得られる。
【0061】次に、(ステップ5)において、先に(ス
テップ4)で計数した特徴文字列の出現頻度を該当する
出現頻度ファイルに格納する。図2に出現頻度ファイル
の例を示す。本図に示した出現頻度ファイルは、表1、
表2、表3および表8に示した文書1〜文書4を登録し
た場合の例である。
テップ4)で計数した特徴文字列の出現頻度を該当する
出現頻度ファイルに格納する。図2に出現頻度ファイル
の例を示す。本図に示した出現頻度ファイルは、表1、
表2、表3および表8に示した文書1〜文書4を登録し
た場合の例である。
【0062】検索時には、(ステップ6)〜(ステップ
12)からなる類似文書検索ステップを実行する。
12)からなる類似文書検索ステップを実行する。
【0063】まず、(ステップ6)において、種文書と
して文書2を読み込む。
して文書2を読み込む。
【0064】次に、(ステップ7)において、(ステッ
プ6)で読み込んだ種文書(文書2)の文字列を文字種
境界で分割し、同一文字種文字列を抽出する。
プ6)で読み込んだ種文書(文書2)の文字列を文字種
境界で分割し、同一文字種文字列を抽出する。
【0065】次に、(ステップ8)において、上記(ス
テップ7)で抽出した同一文字種文字列から、登録時の
(ステップ3)と同様の方法で特徴文字列を抽出する。
図3に文書2が種文書として指定された場合の(ステッ
プ8)の特徴文字列抽出処理の概要を示す。本図では、
同一文字種文字列が漢字の場合には、2-gramを抽出する
ものとしている。文書2から全ての2-gramを抽出した場
合には、13種類の2-gramが抽出されていたのに対し、
本方法では、「ソフトウェア」「開発」「発作」「作
業」の4種類の特徴文字列に削減することができてい
る。このように、全てのn-gramを抽出する前述した従来
技術2に比べ、本発明では抽出する特徴文字列の種類を
大幅に削除できることになる。
テップ7)で抽出した同一文字種文字列から、登録時の
(ステップ3)と同様の方法で特徴文字列を抽出する。
図3に文書2が種文書として指定された場合の(ステッ
プ8)の特徴文字列抽出処理の概要を示す。本図では、
同一文字種文字列が漢字の場合には、2-gramを抽出する
ものとしている。文書2から全ての2-gramを抽出した場
合には、13種類の2-gramが抽出されていたのに対し、
本方法では、「ソフトウェア」「開発」「発作」「作
業」の4種類の特徴文字列に削減することができてい
る。このように、全てのn-gramを抽出する前述した従来
技術2に比べ、本発明では抽出する特徴文字列の種類を
大幅に削除できることになる。
【0066】次に、(ステップ9)において、(ステッ
プ8)で抽出した特徴文字列の種文書内における出現頻
度を計数する。そして、(ステップ10)において、
(ステップ8)で抽出した特徴文字列に関して、前述し
た出現頻度ファイルを参照し、データベース内の各文書
における出現頻度を得る。そして、(ステップ11)に
おいて、(ステップ8)で抽出した特徴文字列に対し
て、(ステップ9)と(ステップ10)で計数した種文
書内における出現頻度と、データベース内の各文書にお
ける出現頻度を基に、類似度を算出する。類似度の算出
式には、従来技術2で示した式(1)を用いてもよい。
式(1)を用いて、文書2が種文書として指定された場
合の類似度を算出すると、次のようになる。
プ8)で抽出した特徴文字列の種文書内における出現頻
度を計数する。そして、(ステップ10)において、
(ステップ8)で抽出した特徴文字列に関して、前述し
た出現頻度ファイルを参照し、データベース内の各文書
における出現頻度を得る。そして、(ステップ11)に
おいて、(ステップ8)で抽出した特徴文字列に対し
て、(ステップ9)と(ステップ10)で計数した種文
書内における出現頻度と、データベース内の各文書にお
ける出現頻度を基に、類似度を算出する。類似度の算出
式には、従来技術2で示した式(1)を用いてもよい。
式(1)を用いて、文書2が種文書として指定された場
合の類似度を算出すると、次のようになる。
【0067】 S(1)=0.077 S(2)=1.0 S(3)=0.263 S(4)=0.148 この結果、(ステップ12)で、文書を類似度の降順に
表示すると、文書2、文書3、文書4および文書1の順
に表示される。この類似度算出結果(S(1)=0.077、S(2)
=1.0、S(3)=0.263、S(4)=0.148)は、従来技術2による
類似度算出結果(S(1) = 0.036、S(2) = 1.0、S(3) =
0.179、S(4) = 0.190)とは異なり、文書2に類似した
順に、類似度が正しく算出されることになる。
表示すると、文書2、文書3、文書4および文書1の順
に表示される。この類似度算出結果(S(1)=0.077、S(2)
=1.0、S(3)=0.263、S(4)=0.148)は、従来技術2による
類似度算出結果(S(1) = 0.036、S(2) = 1.0、S(3) =
0.179、S(4) = 0.190)とは異なり、文書2に類似した
順に、類似度が正しく算出されることになる。
【0068】以上のように、本発明の類似文書検索方法
によれば、分かち書きのない日本語のような文書に対し
て、類似文書検索を行なっても、従来技術1のような単
語辞書を用いることなく種文書から文字列を機械的に抽
出するため、従来技術2のようにどんな単語についても
漏れのない検索を行なうことが可能となる。また、従来
技術2のように文書中から単純にn-gramを抽出するので
はなく、文字種に応じて特徴文字列を抽出することによ
り、意味のまとまった文字列を用いて検索を行なうこと
ができるため、高精度な類似文書検索を実現することが
できるようになる。さらに、全n-gramを抽出する従来技
術2に比べ、抽出する文字列の種類が大幅に削減される
ため、高速に類似文書を検索することができるようにな
る。
によれば、分かち書きのない日本語のような文書に対し
て、類似文書検索を行なっても、従来技術1のような単
語辞書を用いることなく種文書から文字列を機械的に抽
出するため、従来技術2のようにどんな単語についても
漏れのない検索を行なうことが可能となる。また、従来
技術2のように文書中から単純にn-gramを抽出するので
はなく、文字種に応じて特徴文字列を抽出することによ
り、意味のまとまった文字列を用いて検索を行なうこと
ができるため、高精度な類似文書検索を実現することが
できるようになる。さらに、全n-gramを抽出する従来技
術2に比べ、抽出する文字列の種類が大幅に削減される
ため、高速に類似文書を検索することができるようにな
る。
【0069】
【発明の実施の形態】以下、本発明の第一の実施例につ
いて図1を用いて説明する。
いて図1を用いて説明する。
【0070】本発明を適用した類似文書検索システムの
第一例は、ディスプレイ100、キーボード101、中
央演算処理装置(CPU)102、磁気ディスク装置1
05、フロッピディスクドライブ(FDD)106、主
メモリ109およびこれらを結ぶバス108から構成さ
れる。
第一例は、ディスプレイ100、キーボード101、中
央演算処理装置(CPU)102、磁気ディスク装置1
05、フロッピディスクドライブ(FDD)106、主
メモリ109およびこれらを結ぶバス108から構成さ
れる。
【0071】磁気ディスク装置105は二次記憶装置の
一つであり、テキスト103、出現頻度ファイル104
が格納される。FDD106を介してフロッピディスク
107に格納されている情報が、主メモリ109あるい
は磁気ディスク装置105へ読み込まれる。
一つであり、テキスト103、出現頻度ファイル104
が格納される。FDD106を介してフロッピディスク
107に格納されている情報が、主メモリ109あるい
は磁気ディスク装置105へ読み込まれる。
【0072】主メモリ109には、システム制御プログ
ラム110、文書登録制御プログラム111、共有ライ
ブラリ112、テキスト登録プログラム113、出現頻
度ファイル作成登録プログラム114、検索制御プログ
ラム118、検索条件式解析プログラム119、類似文
書検索プログラム120および類似度ソートプログラム
126が格納されるとともにワークエリア130が確保
される。
ラム110、文書登録制御プログラム111、共有ライ
ブラリ112、テキスト登録プログラム113、出現頻
度ファイル作成登録プログラム114、検索制御プログ
ラム118、検索条件式解析プログラム119、類似文
書検索プログラム120および類似度ソートプログラム
126が格納されるとともにワークエリア130が確保
される。
【0073】共有ライブラリ112は、同一文字種文字
列抽出プログラム115、特徴文字列抽出プログラム1
16、漢字文字列対応特徴文字列抽出プログラム127
およびカタカナ文字列対応特徴文字列抽出プログラム1
28で構成される。
列抽出プログラム115、特徴文字列抽出プログラム1
16、漢字文字列対応特徴文字列抽出プログラム127
およびカタカナ文字列対応特徴文字列抽出プログラム1
28で構成される。
【0074】出現頻度ファイル作成登録プログラム11
4は、出現頻度ファイル作成プログラム117で構成さ
れると共に、後述するように同一文字種文字列抽出プロ
グラム115と特徴文字列抽出プログラム116を呼び
出す構成をとる。
4は、出現頻度ファイル作成プログラム117で構成さ
れると共に、後述するように同一文字種文字列抽出プロ
グラム115と特徴文字列抽出プログラム116を呼び
出す構成をとる。
【0075】類似文書検索プログラム120は、種文書
読込みプログラム121、同一文字種文字列抽出プログ
ラム115、出現頻度計数プログラム123、出現頻度
ファイル読込みプログラム124および類似度算出プロ
グラム125で構成されると共に、後述するように特徴
文字列抽出プログラム116を呼び出す構成をとる。
読込みプログラム121、同一文字種文字列抽出プログ
ラム115、出現頻度計数プログラム123、出現頻度
ファイル読込みプログラム124および類似度算出プロ
グラム125で構成されると共に、後述するように特徴
文字列抽出プログラム116を呼び出す構成をとる。
【0076】文書登録制御プログラム111および検索
制御プログラム118は、ユーザによるキーボード10
1からの指示に応じてシステム制御プログラム110に
よって起動され、それぞれテキスト登録プログラム11
3および出現頻度ファイル作成登録プログラム114の
制御と、検索条件式解析プログラム119、類似文書検
索プログラム120および類似度ソートプログラム12
6の制御を行なう。
制御プログラム118は、ユーザによるキーボード10
1からの指示に応じてシステム制御プログラム110に
よって起動され、それぞれテキスト登録プログラム11
3および出現頻度ファイル作成登録プログラム114の
制御と、検索条件式解析プログラム119、類似文書検
索プログラム120および類似度ソートプログラム12
6の制御を行なう。
【0077】以下、本実施例における類似文書検索シス
テムの処理手順について説明する。
テムの処理手順について説明する。
【0078】まず、システム制御プログラム110の処
理手順について図4のPAD(Problem Ana
lysis Diagram)図を用いて説明する。
理手順について図4のPAD(Problem Ana
lysis Diagram)図を用いて説明する。
【0079】システム制御プログラム110は、まずス
テップ400で、キーボード101から入力されたコマ
ンドを解析する。
テップ400で、キーボード101から入力されたコマ
ンドを解析する。
【0080】そしてステップ401で、この結果が登録
実行のコマンドであると解析された場合には、ステップ
402で文書登録制御プログラム111を起動して、文
書の登録を行なう。
実行のコマンドであると解析された場合には、ステップ
402で文書登録制御プログラム111を起動して、文
書の登録を行なう。
【0081】またステップ403で、検索実行のコマン
ドであると解析された場合には、ステップ404で検索
制御プログラム118を起動して、類似文書の検索を行
なう。
ドであると解析された場合には、ステップ404で検索
制御プログラム118を起動して、類似文書の検索を行
なう。
【0082】以上が、システム制御プログラム110の
処理手順である。
処理手順である。
【0083】次に、図4に示したステップ402でシス
テム制御プログラム110により起動される文書登録制
御プログラム111の処理手順について、図5のPAD
図を用いて説明する。
テム制御プログラム110により起動される文書登録制
御プログラム111の処理手順について、図5のPAD
図を用いて説明する。
【0084】文書登録制御プログラム111は、まずス
テップ500でテキスト登録プログラム113を起動
し、FDD106に挿入されたフロッピディスク107
から登録すべき文書のテキストデータをワークエリア1
30に読み込み、これをテキスト103として磁気ディ
スク装置105に格納する。テキストデータは、フロッ
ピディスク107を用いて入力するだけに限らず、通信
回線やCD−ROM装置(図1には示していない)等を
用いて他の装置から入力するような構成を取ることも可
能である。
テップ500でテキスト登録プログラム113を起動
し、FDD106に挿入されたフロッピディスク107
から登録すべき文書のテキストデータをワークエリア1
30に読み込み、これをテキスト103として磁気ディ
スク装置105に格納する。テキストデータは、フロッ
ピディスク107を用いて入力するだけに限らず、通信
回線やCD−ROM装置(図1には示していない)等を
用いて他の装置から入力するような構成を取ることも可
能である。
【0085】次に、ステップ501で出現頻度ファイル
作成登録プログラム114を起動し、磁気ディスク装置
105に格納されているテキスト103を読み出し、そ
の中の各文書における出現頻度ファイル104を作成
し、磁気ディスク装置105に格納する。
作成登録プログラム114を起動し、磁気ディスク装置
105に格納されているテキスト103を読み出し、そ
の中の各文書における出現頻度ファイル104を作成
し、磁気ディスク装置105に格納する。
【0086】以上が、文書登録制御プログラム111の
処理手順である。
処理手順である。
【0087】次に、図5に示したステップ501で文書
登録制御プログラム111により起動される出現頻度フ
ァイル作成登録プログラム114の処理手順について、
図6のPAD図を用いて説明する。
登録制御プログラム111により起動される出現頻度フ
ァイル作成登録プログラム114の処理手順について、
図6のPAD図を用いて説明する。
【0088】出現頻度ファイル作成登録プログラム11
4は、まずステップ600で同一文字種文字列抽出プロ
グラム115を起動し、テキスト103をワークエリア
130に読み込み、文字種境界でその文字列を分割する
ことにより同一文字種文字列を抽出し、ワークエリア1
30に格納する。
4は、まずステップ600で同一文字種文字列抽出プロ
グラム115を起動し、テキスト103をワークエリア
130に読み込み、文字種境界でその文字列を分割する
ことにより同一文字種文字列を抽出し、ワークエリア1
30に格納する。
【0089】次に、ステップ601において、特徴文字
列抽出プログラム116を起動し、ワークエリア130
に格納されている同一文字種文字列から特徴文字列を抽
出し、同じくワークエリア130に格納する。
列抽出プログラム116を起動し、ワークエリア130
に格納されている同一文字種文字列から特徴文字列を抽
出し、同じくワークエリア130に格納する。
【0090】そして、ステップ602において、出現頻
度ファイル作成プログラム117を起動し、ワークエリ
ア130に格納されている特徴文字列を参照して、その
出現頻度を計数し、出現頻度ファイル104として磁気
ディスク装置105に格納する。
度ファイル作成プログラム117を起動し、ワークエリ
ア130に格納されている特徴文字列を参照して、その
出現頻度を計数し、出現頻度ファイル104として磁気
ディスク装置105に格納する。
【0091】以上が、出現頻度ファイル作成登録プログ
ラム114の処理手順である。
ラム114の処理手順である。
【0092】次に、図6に示したステップ601におい
て出現頻度ファイル作成登録プログラム114により起
動される特徴文字列抽出プログラム116の処理手順に
ついて、図7のPAD図を用いて説明する。
て出現頻度ファイル作成登録プログラム114により起
動される特徴文字列抽出プログラム116の処理手順に
ついて、図7のPAD図を用いて説明する。
【0093】特徴文字列抽出プログラム116は、同一
文字種文字列抽出プログラム115により抽出された同
一文字種文字列の数を調べ、全ての同一文字種文字列に
ついてステップ701以降を繰り返し実行する(ステッ
プ700)。
文字種文字列抽出プログラム115により抽出された同
一文字種文字列の数を調べ、全ての同一文字種文字列に
ついてステップ701以降を繰り返し実行する(ステッ
プ700)。
【0094】ステップ701では、ワークエリア130
に格納されている同一文字種文字列の文字種を判定し、
その文字種が漢字の場合にはステップ702を実行し、
カタカナの場合には、ステップ703を実行する。
に格納されている同一文字種文字列の文字種を判定し、
その文字種が漢字の場合にはステップ702を実行し、
カタカナの場合には、ステップ703を実行する。
【0095】ステップ702では、後述する漢字文字列
対応特徴文字列抽出プログラム127を起動し、漢字文
字列から特徴文字列を抽出する。
対応特徴文字列抽出プログラム127を起動し、漢字文
字列から特徴文字列を抽出する。
【0096】ステップ703では、同様に後述するカタ
カナ文字列対応特徴文字列抽出プログラム128を起動
し、カタカナ文字列から特徴文字列を抽出する。
カナ文字列対応特徴文字列抽出プログラム128を起動
し、カタカナ文字列から特徴文字列を抽出する。
【0097】以上が、特徴文字列抽出プログラム116
の処理手順である。
の処理手順である。
【0098】次に、図7に示したステップ702で特徴
文字列抽出プログラム116により起動される漢字文字
列対応特徴文字列抽出プログラム127の処理手順につ
いて、図8のPAD図を用いて説明する。
文字列抽出プログラム116により起動される漢字文字
列対応特徴文字列抽出プログラム127の処理手順につ
いて、図8のPAD図を用いて説明する。
【0099】漢字文字列対応特徴文字列抽出プログラム
127では、ステップ800において、同一文字種文字
列抽出プログラム115により抽出されワークエリア1
30に格納されている漢字文字列を取得する。 そし
て、ステップ801において、上記ステップ800で取
得した漢字文字列の先頭から一文字ずつずらしながら、
n-gram(nの値は、予め定めておく)を特徴文字列として
抽出する。
127では、ステップ800において、同一文字種文字
列抽出プログラム115により抽出されワークエリア1
30に格納されている漢字文字列を取得する。 そし
て、ステップ801において、上記ステップ800で取
得した漢字文字列の先頭から一文字ずつずらしながら、
n-gram(nの値は、予め定めておく)を特徴文字列として
抽出する。
【0100】以上が、漢字文字列対応特徴文字列抽出プ
ログラム127の処理手順である。
ログラム127の処理手順である。
【0101】次に、図7に示したステップ703で特徴
文字列抽出プログラム116により起動されるカタカナ
文字列対応特徴文字列抽出プログラム128の処理手順
について、図9のPAD図を用いて説明する。
文字列抽出プログラム116により起動されるカタカナ
文字列対応特徴文字列抽出プログラム128の処理手順
について、図9のPAD図を用いて説明する。
【0102】カタカナ文字列対応特徴文字列抽出プログ
ラム128では、ステップ900において、同一文字種
文字列抽出プログラム115により抽出されワークエリ
ア130に格納されているカタカナ文字列を取得する。
ラム128では、ステップ900において、同一文字種
文字列抽出プログラム115により抽出されワークエリ
ア130に格納されているカタカナ文字列を取得する。
【0103】そして、ステップ901において、上記ス
テップ900で取得したカタカナ文字列そのものを特徴
文字列として抽出する。
テップ900で取得したカタカナ文字列そのものを特徴
文字列として抽出する。
【0104】以上が、カタカナ文字列対応特徴文字列抽
出プログラム128の処理手順である。
出プログラム128の処理手順である。
【0105】以下に、図7に示した特徴文字列抽出プロ
グラム116の処理手順について具体例を用いて説明す
る。
グラム116の処理手順について具体例を用いて説明す
る。
【0106】まず、図7の特徴文字列抽出プログラム1
16のステップ702における漢字文字列対応特徴文字
列抽出プログラム127と、ステップ703におけるカ
タカナ文字列対応特徴文字列抽出プログラム128の処
理手順について、図10〜図12の例を用いて説明す
る。 漢字文字列対応特徴文字列抽出プログラム127
とカタカナ文字列対応特徴文字列抽出プログラム128
は特徴文字列抽出プログラム116によって起動され
る。このとき、同一文字種文字列抽出プログラム115
によって抽出された同一文字種文字列が漢字文字列対応
特徴文字列抽出プログラム127とカタカナ文字列対応
特徴文字列抽出プログラム128へワークエリア130
を介して渡される。
16のステップ702における漢字文字列対応特徴文字
列抽出プログラム127と、ステップ703におけるカ
タカナ文字列対応特徴文字列抽出プログラム128の処
理手順について、図10〜図12の例を用いて説明す
る。 漢字文字列対応特徴文字列抽出プログラム127
とカタカナ文字列対応特徴文字列抽出プログラム128
は特徴文字列抽出プログラム116によって起動され
る。このとき、同一文字種文字列抽出プログラム115
によって抽出された同一文字種文字列が漢字文字列対応
特徴文字列抽出プログラム127とカタカナ文字列対応
特徴文字列抽出プログラム128へワークエリア130
を介して渡される。
【0107】図10は文書1、文書2、文書3および文
書4からなるテキスト103から、同一文字種文字列抽
出プログラム115により同一文字種文字列が抽出され
た結果を示したものである。例えば、文書2「新しいソ
フトウェアの開発作業」からは「新」「しい」「ソフト
ウェア」「の」「開発作業」という5個の同一文字種文
字列が抽出される。
書4からなるテキスト103から、同一文字種文字列抽
出プログラム115により同一文字種文字列が抽出され
た結果を示したものである。例えば、文書2「新しいソ
フトウェアの開発作業」からは「新」「しい」「ソフト
ウェア」「の」「開発作業」という5個の同一文字種文
字列が抽出される。
【0108】この抽出された同一文字種文字列の文字種
にしたがって、特徴文字列抽出プログラム116は、漢
字文字列対応特徴文字列抽出プログラム127あるいは
カタカナ文字列対応特徴文字列抽出プログラム128を
起動する。
にしたがって、特徴文字列抽出プログラム116は、漢
字文字列対応特徴文字列抽出プログラム127あるいは
カタカナ文字列対応特徴文字列抽出プログラム128を
起動する。
【0109】漢字文字列対応特徴文字列抽出プログラム
127は、ワークエリア130に格納されている漢字文
字列の先頭から一文字ずつずらしながら、全ての2-gram
を特徴文字列として抽出する。図11は、図10の例で
抽出された漢字文字列から、漢字文字列対応特徴文字列
抽出プログラム127により特徴文字列を抽出した結果
を示している。例えば、同一文字種文字列1000の中
で文書2から抽出された「新」「しい」「ソフトウェ
ア」「の」「開発作業」からは、「開発」「発作」「作
業」が抽出される。
127は、ワークエリア130に格納されている漢字文
字列の先頭から一文字ずつずらしながら、全ての2-gram
を特徴文字列として抽出する。図11は、図10の例で
抽出された漢字文字列から、漢字文字列対応特徴文字列
抽出プログラム127により特徴文字列を抽出した結果
を示している。例えば、同一文字種文字列1000の中
で文書2から抽出された「新」「しい」「ソフトウェ
ア」「の」「開発作業」からは、「開発」「発作」「作
業」が抽出される。
【0110】カタカナ文字列対応特徴文字列抽出プログ
ラム128は、ワークエリア130に格納されているカ
タカナ文字列そのものを特徴文字列として抽出する。図
12は、図10の例で抽出されたカタカナ文字列から、
カタカナ文字列対応特徴文字列抽出プログラムにより特
徴文字列を抽出した結果である。例えば、同一文字種文
字列1000の中で文書2から抽出された「新」「し
い」「ソフトウェア」「の」「開発作業」からは、「ソ
フトウェア」が抽出される。
ラム128は、ワークエリア130に格納されているカ
タカナ文字列そのものを特徴文字列として抽出する。図
12は、図10の例で抽出されたカタカナ文字列から、
カタカナ文字列対応特徴文字列抽出プログラムにより特
徴文字列を抽出した結果である。例えば、同一文字種文
字列1000の中で文書2から抽出された「新」「し
い」「ソフトウェア」「の」「開発作業」からは、「ソ
フトウェア」が抽出される。
【0111】以上が、第一の実施例における特徴文字列
抽出プログラム116のステップ702における漢字文
字列対応特徴文字列抽出プログラム127と、ステップ
703におけるカタカナ文字列対応特徴文字列抽出プロ
グラム128の処理手順である。
抽出プログラム116のステップ702における漢字文
字列対応特徴文字列抽出プログラム127と、ステップ
703におけるカタカナ文字列対応特徴文字列抽出プロ
グラム128の処理手順である。
【0112】この例では、漢字文字列対応特徴文字列抽
出プログラム127の処理として、漢字文字列から2-gr
amを特徴文字列として抽出するものとして説明したが、
1-gram、あるいは3-gram以上であっても、さらには、そ
れらの組み合わせであっても、同様に特徴文字列抽出の
処理を行うことができることは明らかであろう。
出プログラム127の処理として、漢字文字列から2-gr
amを特徴文字列として抽出するものとして説明したが、
1-gram、あるいは3-gram以上であっても、さらには、そ
れらの組み合わせであっても、同様に特徴文字列抽出の
処理を行うことができることは明らかであろう。
【0113】次に、図4に示したステップ404でシス
テム制御プログラム110により起動される検索制御プ
ログラム118による類似文書検索の処理手順につい
て、図13のPAD図を用いて説明する。
テム制御プログラム110により起動される検索制御プ
ログラム118による類似文書検索の処理手順につい
て、図13のPAD図を用いて説明する。
【0114】検索制御プログラム118は、まずステッ
プ1300で検索条件式解析プログラム119を起動
し、キーボード101から入力された検索条件式を解析
し、検索条件式のパラメータとして指定された種文書番
号を抽出する。
プ1300で検索条件式解析プログラム119を起動
し、キーボード101から入力された検索条件式を解析
し、検索条件式のパラメータとして指定された種文書番
号を抽出する。
【0115】次に、ステップ1301で類似文書検索プ
ログラム120を起動し、上記ステップ1300で抽出
された種文書番号に対し、磁気ディスク装置105に格
納されているテキスト103中の各文書の類似度を算出
する。
ログラム120を起動し、上記ステップ1300で抽出
された種文書番号に対し、磁気ディスク装置105に格
納されているテキスト103中の各文書の類似度を算出
する。
【0116】そして、ステップ1302において、類似
度ソートプログラム126を起動し、上記ステップ13
01で算出された各文書の類似度を降順にソートする。
度ソートプログラム126を起動し、上記ステップ13
01で算出された各文書の類似度を降順にソートする。
【0117】最後に、ステップ1303において上記ス
テップ1302でソートされた類似度を各文書番号と共
に出力する。
テップ1302でソートされた類似度を各文書番号と共
に出力する。
【0118】以上が、検索制御プログラム118による
文書検索の処理手順である。
文書検索の処理手順である。
【0119】次に、図13に示したステップ1301で
検索制御プログラム118により起動される類似文書検
索プログラム120の処理手順について、図14のPA
D図を用いて説明する。 類似文書検索プログラム12
0は、まずステップ1400で種文書読込みプログラム
121を起動し、検索条件式解析プログラム119によ
って検索条件式から抽出された文書番号の種文書をワー
クエリア130に読み込む。ここで、種文書は、テキス
ト103中に格納されている文書を読み込むだけでな
く、フロッピディスク107、CD−ROM装置(図1
には示していない)や通信回線等を用いて、他の装置か
ら入力するような構成を取ることも可能であり、また、
全文検索システム等による検索結果から入力するような
構成を取ることも可能であり、類似度ソートプログラム
126の出力から種文書を選択する構成を取ることも可
能である。
検索制御プログラム118により起動される類似文書検
索プログラム120の処理手順について、図14のPA
D図を用いて説明する。 類似文書検索プログラム12
0は、まずステップ1400で種文書読込みプログラム
121を起動し、検索条件式解析プログラム119によ
って検索条件式から抽出された文書番号の種文書をワー
クエリア130に読み込む。ここで、種文書は、テキス
ト103中に格納されている文書を読み込むだけでな
く、フロッピディスク107、CD−ROM装置(図1
には示していない)や通信回線等を用いて、他の装置か
ら入力するような構成を取ることも可能であり、また、
全文検索システム等による検索結果から入力するような
構成を取ることも可能であり、類似度ソートプログラム
126の出力から種文書を選択する構成を取ることも可
能である。
【0120】次に、ステップ1401において、同一文
字種文字列抽出プログラム115を起動し、上記種文書
読込みステップ1400で読み込んだ種文書のテキスト
を、文字種境界で分割して同一文字種文字列を取得し、
ワークエリア130に格納する。
字種文字列抽出プログラム115を起動し、上記種文書
読込みステップ1400で読み込んだ種文書のテキスト
を、文字種境界で分割して同一文字種文字列を取得し、
ワークエリア130に格納する。
【0121】そして、ステップ1402において特徴文
字列抽出プログラム116を起動し、上記同一文字種文
字列抽出ステップ1401で取得した同一文字種文字列
から、特徴文字列を抽出する。
字列抽出プログラム116を起動し、上記同一文字種文
字列抽出ステップ1401で取得した同一文字種文字列
から、特徴文字列を抽出する。
【0122】図15に、この処理の具体例を示す。特徴
文字列抽出プログラム116の処理手順に関しては、前
に説明した通りである。
文字列抽出プログラム116の処理手順に関しては、前
に説明した通りである。
【0123】本例では、種文書である文書2「新しいソ
フトウェアの開発作業」から、「新」「しい」「ソフト
ウェア」「の」「開発作業」という5個の同一文字種文
字列1500が抽出されることになる。この抽出された
同一文字種文字列1500の文字種にしたがって、特徴
文字列を抽出する。この結果、文書2からは「ソフトウ
ェア」「開発」「発作」「作業」の4個の特徴文字列1
501が抽出される。
フトウェアの開発作業」から、「新」「しい」「ソフト
ウェア」「の」「開発作業」という5個の同一文字種文
字列1500が抽出されることになる。この抽出された
同一文字種文字列1500の文字種にしたがって、特徴
文字列を抽出する。この結果、文書2からは「ソフトウ
ェア」「開発」「発作」「作業」の4個の特徴文字列1
501が抽出される。
【0124】次に図14のステップ1403で、出現頻
度計数プログラム123を起動し、上記特徴文字列抽出
ステップ1402で抽出した特徴文字列の種文書内にお
ける出現頻度を計数する。
度計数プログラム123を起動し、上記特徴文字列抽出
ステップ1402で抽出した特徴文字列の種文書内にお
ける出現頻度を計数する。
【0125】図16に、この具体例を示す。本図は、図
15に例示した種文書から抽出された特徴文字列150
1の出現頻度を計数した結果を示している。すなわち、
「(ソフトウェア,1)、(開発,1)、(発作,
1)、(作業,1)」という出現頻度1600が得られ
ている。ここで、例えば(開発,1)は、特徴文字列
「開発」が「1」回出現するということを示している。
15に例示した種文書から抽出された特徴文字列150
1の出現頻度を計数した結果を示している。すなわち、
「(ソフトウェア,1)、(開発,1)、(発作,
1)、(作業,1)」という出現頻度1600が得られ
ている。ここで、例えば(開発,1)は、特徴文字列
「開発」が「1」回出現するということを示している。
【0126】次に、図14のステップ1404で、出現
頻度ファイル読込みプログラム124を起動し、上記特
徴文字列抽出ステップ1402で抽出した特徴文字列
の、テキスト103中の各文書における出現頻度を出現
頻度ファイル104から読み込む。
頻度ファイル読込みプログラム124を起動し、上記特
徴文字列抽出ステップ1402で抽出した特徴文字列
の、テキスト103中の各文書における出現頻度を出現
頻度ファイル104から読み込む。
【0127】図17に、この具体例を示す。ここでは、
図15の例で抽出された特徴文字列1501のテキスト
103中の各文書における出現頻度を、読み込んだ出現
頻度ファイルから取得した結果を示している。
図15の例で抽出された特徴文字列1501のテキスト
103中の各文書における出現頻度を、読み込んだ出現
頻度ファイルから取得した結果を示している。
【0128】この例では、種文書から抽出された「ソフ
トウェア」「開発」「発作」「作業」という4個の特徴
文字列1501の出現頻度を、出現頻度ファイル104
から得る。この結果、出現頻度1700として、例えば
文書3の場合「(ソフトウェア,1)、(開発,1)、
(発作,0)、(作業,0)」という値を得ることがで
きる。
トウェア」「開発」「発作」「作業」という4個の特徴
文字列1501の出現頻度を、出現頻度ファイル104
から得る。この結果、出現頻度1700として、例えば
文書3の場合「(ソフトウェア,1)、(開発,1)、
(発作,0)、(作業,0)」という値を得ることがで
きる。
【0129】最後に、図14のステップ1405で、類
似度算出プログラム125を起動し、上記出現頻度計数
ステップ1403で計数した特徴文字列の種文書内にお
ける出現頻度と、上記出現頻度ファイル読込みステップ
1404で読み込んだ特徴文字列のテキスト103内の
各文書における出現頻度から、テキスト103中の各文
書との類似度を算出する。
似度算出プログラム125を起動し、上記出現頻度計数
ステップ1403で計数した特徴文字列の種文書内にお
ける出現頻度と、上記出現頻度ファイル読込みステップ
1404で読み込んだ特徴文字列のテキスト103内の
各文書における出現頻度から、テキスト103中の各文
書との類似度を算出する。
【0130】図18に、この具体例を示す。ここでは、
図16の例で計数した種文書における出現頻度1600
および図17の例で取得したテキスト103中の各文書
における出現頻度1700を用いて、各文書の類似度S
(1)〜S(4)を算出した結果を示している。すなわち、次
のような結果が得られる。
図16の例で計数した種文書における出現頻度1600
および図17の例で取得したテキスト103中の各文書
における出現頻度1700を用いて、各文書の類似度S
(1)〜S(4)を算出した結果を示している。すなわち、次
のような結果が得られる。
【0131】 S(1)=0.077 S(2)=1.0 S(3)=0.263 S(4)=0.148 本実施例では、この類似度の算出に、従来技術2に開示
されている式(1)を用いるが、他の方法を用いても構
わない。
されている式(1)を用いるが、他の方法を用いても構
わない。
【0132】以上が、類似文書検索プログラム118の
処理手順である。
処理手順である。
【0133】以上が、本発明の第一の実施例である。
【0134】なお、本実施例においては、特徴文字列抽
出プログラム116は、漢字対応特徴文字列抽出プログ
ラム127およびカタカナ文字列対応特徴文字列抽出プ
ログラム128を含む構成としたが、英字や数字等に対
応した特徴文字列抽出プログラムを含む構成としてもよ
いし、漢字文字列対応特徴文字列抽出プログラム127
あるいはカタカナ文字列対応特徴文字列抽出プログラム
128を含まない構成であってもよい。
出プログラム116は、漢字対応特徴文字列抽出プログ
ラム127およびカタカナ文字列対応特徴文字列抽出プ
ログラム128を含む構成としたが、英字や数字等に対
応した特徴文字列抽出プログラムを含む構成としてもよ
いし、漢字文字列対応特徴文字列抽出プログラム127
あるいはカタカナ文字列対応特徴文字列抽出プログラム
128を含まない構成であってもよい。
【0135】また、本実施例においては、同一文字種文
字列から特徴文字列を抽出する構成としたが、特定の文
字種間を境界として前後に跨る部分文字列を特徴文字列
として抽出することにより、例えば、「F1」や「ビタ
ミンC」等の文字列を検索に用いることもでき、さらに
高精度な類似文書検索を実現することが可能となる。
字列から特徴文字列を抽出する構成としたが、特定の文
字種間を境界として前後に跨る部分文字列を特徴文字列
として抽出することにより、例えば、「F1」や「ビタ
ミンC」等の文字列を検索に用いることもでき、さらに
高精度な類似文書検索を実現することが可能となる。
【0136】さらに、本実施例においては、出現頻度フ
ァイル104を図2に示した表形式で作成されるものと
したが、この方法では、データベースが大規模になるに
伴い特徴文字列の種類が増加するため、出現頻度ファイ
ル読込みステップ1404の処理に長大な時間を要する
ことになる。この問題は、特徴文字列に対して検索用の
インデクスを付加することにより解決できる。これによ
り、大規模なデータベースに対しても高速な類似文書検
索を実現することが可能となる。この特徴文字列に対す
る検索用インデクスとしては、「特開平8−32911
2号公報」等に開示されているような単語インデクス方
式を用いることができる。
ァイル104を図2に示した表形式で作成されるものと
したが、この方法では、データベースが大規模になるに
伴い特徴文字列の種類が増加するため、出現頻度ファイ
ル読込みステップ1404の処理に長大な時間を要する
ことになる。この問題は、特徴文字列に対して検索用の
インデクスを付加することにより解決できる。これによ
り、大規模なデータベースに対しても高速な類似文書検
索を実現することが可能となる。この特徴文字列に対す
る検索用インデクスとしては、「特開平8−32911
2号公報」等に開示されているような単語インデクス方
式を用いることができる。
【0137】次に、本発明の第二の実施例について図1
9を用いて説明する。
9を用いて説明する。
【0138】本発明を適用した類似文書検索システムの
第二例は、種文書から抽出した特徴文字列のデータベー
ス内の各文書における出現頻度の取得に、検索漏れのな
い全文検索インデクスを利用するものである。これによ
り、本類似文書検索システムを全文検索システムと組み
合わせて実現した場合に、出現頻度ファイルをもつ必要
がなくなる。
第二例は、種文書から抽出した特徴文字列のデータベー
ス内の各文書における出現頻度の取得に、検索漏れのな
い全文検索インデクスを利用するものである。これによ
り、本類似文書検索システムを全文検索システムと組み
合わせて実現した場合に、出現頻度ファイルをもつ必要
がなくなる。
【0139】すなわち、本方法によれば、第一の実施例
における出現頻度ファイル104の特徴文字列の検索に
全文検索インデクスを利用することができ、大規模なデ
ータベースに対しても高速な類似文書検索を実現するこ
とが可能となる。さらに、出現頻度ファイル104を全
文検索用インデクスで代用するため、第一の実施例に比
べ必要となる磁気ディスク容量を削減できることにな
る。
における出現頻度ファイル104の特徴文字列の検索に
全文検索インデクスを利用することができ、大規模なデ
ータベースに対しても高速な類似文書検索を実現するこ
とが可能となる。さらに、出現頻度ファイル104を全
文検索用インデクスで代用するため、第一の実施例に比
べ必要となる磁気ディスク容量を削減できることにな
る。
【0140】本実施例は、第一の実施例(図1)とほぼ
同様の構成を取るが、類似文書検索プログラム120を
構成する出現頻度ファイル読込みプログラム124が異
なる。このプログラムの代わりに、図19に示すよう
に、特徴文字列検索プログラム1900が用いられる。
同様の構成を取るが、類似文書検索プログラム120を
構成する出現頻度ファイル読込みプログラム124が異
なる。このプログラムの代わりに、図19に示すよう
に、特徴文字列検索プログラム1900が用いられる。
【0141】以下、本実施例における処理手順のうち、
第一の実施例とは異なる類似文書検索プログラム120
aの処理手順について図20を用いて説明する。
第一の実施例とは異なる類似文書検索プログラム120
aの処理手順について図20を用いて説明する。
【0142】ここで、第一の実施例における類似文書検
索プログラム120(図14)と異なる点は、出現頻度
取得ステップ2004だけである。他の処理ステップの
処理手順は、第一の実施例で説明した通りである。
索プログラム120(図14)と異なる点は、出現頻度
取得ステップ2004だけである。他の処理ステップの
処理手順は、第一の実施例で説明した通りである。
【0143】出現頻度取得ステップ2004では、特徴
文字列検索プログラム1900を起動し、特徴文字列抽
出ステップ1402で抽出された特徴文字列を全文検索
システム1901で検索することにより、テキスト10
3内の各文書における出現頻度を取得する。
文字列検索プログラム1900を起動し、特徴文字列抽
出ステップ1402で抽出された特徴文字列を全文検索
システム1901で検索することにより、テキスト10
3内の各文書における出現頻度を取得する。
【0144】本実施例の出現頻度取得ステップ2004
で用いる特徴文字列検索プログラム1900は、検索漏
れがなく、かつ、各文書における出現頻度を取得できる
全文検索方式であれば、どのような方式を適用しても構
わない。例えば、「特開昭64−35627号公報」
(以下、従来技術3と呼ぶ)で開示されているようなn-
gramインデクス方式を用いることも可能である。
で用いる特徴文字列検索プログラム1900は、検索漏
れがなく、かつ、各文書における出現頻度を取得できる
全文検索方式であれば、どのような方式を適用しても構
わない。例えば、「特開昭64−35627号公報」
(以下、従来技術3と呼ぶ)で開示されているようなn-
gramインデクス方式を用いることも可能である。
【0145】この従来技術3によるn-gramインデクス方
式では、文書の登録時に、データベースへ登録する文書
のテキストデータからn-gramとそのn-gramのテキスト中
における出現位置を抽出し、全文検索用インデクス19
03として磁気ディスク装置1902に格納しておく。
検索時には指定された検索ターム中に出現するn−gr
amを抽出し、これらに対応するインデクスを上記磁気
ディスク装置1902から読み込み、インデクス中のn
−gramの出現位置を比較し、検索タームから抽出し
たn-gramの位置関係とインデクス中のn-gramの位置関係
が等しいかどうかを判定することによって、指定された
検索タームが出現する文書を高速に検索する。
式では、文書の登録時に、データベースへ登録する文書
のテキストデータからn-gramとそのn-gramのテキスト中
における出現位置を抽出し、全文検索用インデクス19
03として磁気ディスク装置1902に格納しておく。
検索時には指定された検索ターム中に出現するn−gr
amを抽出し、これらに対応するインデクスを上記磁気
ディスク装置1902から読み込み、インデクス中のn
−gramの出現位置を比較し、検索タームから抽出し
たn-gramの位置関係とインデクス中のn-gramの位置関係
が等しいかどうかを判定することによって、指定された
検索タームが出現する文書を高速に検索する。
【0146】この方式を用いて、特徴文字列を検索ター
ムとして全文検索システム1901へ入力し、該検索タ
ームの出現文書とその位置情報を取得することにより、
該特徴文字列の各文書における出現頻度を求めることが
可能となる。
ムとして全文検索システム1901へ入力し、該検索タ
ームの出現文書とその位置情報を取得することにより、
該特徴文字列の各文書における出現頻度を求めることが
可能となる。
【0147】以下、この従来技術3を用いた出現頻度の
算出方法を図21を用いて具体的に説明する。なお本図
では、n-gramのnの値を2としている。
算出方法を図21を用いて具体的に説明する。なお本図
では、n-gramのnの値を2としている。
【0148】まず、文書の登録時にデータベースに登録
するテキスト2101がインデクス作成部2102に読
み込まれ、n-gramインデクス2100が作成される。こ
のn-gramインデクス2100には、テキスト2101に
出現する全ての2-gramとテキスト2101におけるその
2-gramの出現位置が格納される。
するテキスト2101がインデクス作成部2102に読
み込まれ、n-gramインデクス2100が作成される。こ
のn-gramインデクス2100には、テキスト2101に
出現する全ての2-gramとテキスト2101におけるその
2-gramの出現位置が格納される。
【0149】本図に示すテキスト2101では、「心
電」という2-gramはテキスト2101(文書番号
「1」)の5文字目、15文字目、・・・に現われるの
で、n-gramインデクス2100には2-gram「心電」とこ
れに対応したかたちで出現位置{(1,5)、(1,1
5)、・・・}が格納される。
電」という2-gramはテキスト2101(文書番号
「1」)の5文字目、15文字目、・・・に現われるの
で、n-gramインデクス2100には2-gram「心電」とこ
れに対応したかたちで出現位置{(1,5)、(1,1
5)、・・・}が格納される。
【0150】検索時には、まず、検索タームがn-gram抽
出部2103に入力され、検索ターム中に出現する全て
のn-gramとそのn-gramの検索タームにおける出現位置が
抽出される。次に、抽出されたn-gramとこれに対応する
n-gramの検索タームにおける出現位置がインデクス検索
部2104に入力される。
出部2103に入力され、検索ターム中に出現する全て
のn-gramとそのn-gramの検索タームにおける出現位置が
抽出される。次に、抽出されたn-gramとこれに対応する
n-gramの検索タームにおける出現位置がインデクス検索
部2104に入力される。
【0151】インデクス検索部2104では、検索ター
ムから抽出されたn-gramに対応するインデクスがn-gram
インデクス2100から読み込まれ、これらのインデク
スの中から文書番号が一致し、かつ検索ターム中の位置
関係と同じ位置関係を持つものが抽出され、検索結果と
して出力される。
ムから抽出されたn-gramに対応するインデクスがn-gram
インデクス2100から読み込まれ、これらのインデク
スの中から文書番号が一致し、かつ検索ターム中の位置
関係と同じ位置関係を持つものが抽出され、検索結果と
して出力される。
【0152】検索タームとして「心電図」が入力された
本図の場合、まず、n-gram抽出部2103において、
(n-gram「心電」、n-gram位置「1」)と(n-gram「電
図」、n-gram位置「2」)が抽出される。ここで、 n-g
ram位置「1」は検索タームの先頭、 n-gram位置「2」
はその次の文字位置を示す。
本図の場合、まず、n-gram抽出部2103において、
(n-gram「心電」、n-gram位置「1」)と(n-gram「電
図」、n-gram位置「2」)が抽出される。ここで、 n-g
ram位置「1」は検索タームの先頭、 n-gram位置「2」
はその次の文字位置を示す。
【0153】次に、インデクス検索部2104におい
て、n-gramインデクス2100からn-gram「心電」と
「電図」に対応するインデクスが読み込まれる。これら
のインデクスにおける出現位置がn-gram位置「1」とn-
gram位置「2」のように連続するものが、すなわち隣接
するものが抽出され検索結果として出力される。
て、n-gramインデクス2100からn-gram「心電」と
「電図」に対応するインデクスが読み込まれる。これら
のインデクスにおける出現位置がn-gram位置「1」とn-
gram位置「2」のように連続するものが、すなわち隣接
するものが抽出され検索結果として出力される。
【0154】本図では、 n-gram「心電」の出現位置
「15」とn-gram「電図」の出現位置「16」が隣接す
るため、 n-gram「心電図」が文字列として存在するこ
とが分かり、文書1中に検索ターム「心電図」が出現す
ることが示される。しかし、 n-gram「心電」の出現位
置「5」とn-gram「電図」の出現位置「16」は隣接し
ていないため、この位置には検索ターム「心電図」が出
現しないことが分かる。
「15」とn-gram「電図」の出現位置「16」が隣接す
るため、 n-gram「心電図」が文字列として存在するこ
とが分かり、文書1中に検索ターム「心電図」が出現す
ることが示される。しかし、 n-gram「心電」の出現位
置「5」とn-gram「電図」の出現位置「16」は隣接し
ていないため、この位置には検索ターム「心電図」が出
現しないことが分かる。
【0155】本方法において、検索タームとして特徴文
字列入力した場合、上記インデクス検索部2104から
検索結果として出力される出現位置を計数することによ
り、該当特徴文字列の出現頻度を得ることが可能とな
る。
字列入力した場合、上記インデクス検索部2104から
検索結果として出力される出現位置を計数することによ
り、該当特徴文字列の出現頻度を得ることが可能とな
る。
【0156】以上説明したように、本実施例によれば、
出現頻度ファイルの特徴文字列検索用インデクスと出現
頻度ファイルの代わりに、全文検索インデクスを利用で
きるため、大規模なデータベースに対しても余分なファ
イルを増やさずに、高速に類似文書検索を実現すること
が可能となる。
出現頻度ファイルの特徴文字列検索用インデクスと出現
頻度ファイルの代わりに、全文検索インデクスを利用で
きるため、大規模なデータベースに対しても余分なファ
イルを増やさずに、高速に類似文書検索を実現すること
が可能となる。
【0157】次に、本発明の第三の実施例について図2
2を用いて説明する。
2を用いて説明する。
【0158】本発明を適用した類似文書検索システムの
第三例は、種文書から抽出した特徴文字列の重要度を算
出し、この重要度が所定値を満たす特徴文字列に限定し
て、データベース内の各文書における出現頻度を取得
し、これに基づいて類似度を算出するものである。
第三例は、種文書から抽出した特徴文字列の重要度を算
出し、この重要度が所定値を満たす特徴文字列に限定し
て、データベース内の各文書における出現頻度を取得
し、これに基づいて類似度を算出するものである。
【0159】すなわち、本方法は、第一の実施例におけ
る出現頻度ファイル読込みステップ1404で出現頻度
の取得対象とする特徴文字列数を削減することによっ
て、類似度算出に用いる特徴文字列数を削減し、文字数
の多い種文書に対しても高速な類似文書検索を実現でき
るようにするものである。
る出現頻度ファイル読込みステップ1404で出現頻度
の取得対象とする特徴文字列数を削減することによっ
て、類似度算出に用いる特徴文字列数を削減し、文字数
の多い種文書に対しても高速な類似文書検索を実現でき
るようにするものである。
【0160】本実施例は、第一の実施例(図1)とほぼ
同様の構成を取るが、類似文書検索プログラム120が
異なり、図22に示すように、特徴文字列選択プログラ
ム2200を有する。
同様の構成を取るが、類似文書検索プログラム120が
異なり、図22に示すように、特徴文字列選択プログラ
ム2200を有する。
【0161】以下、本実施例における処理手順のうち、
第一の実施例とは異なる類似文書検索プログラム120
bの処理手順について図23のPAD図を用いて説明す
る。
第一の実施例とは異なる類似文書検索プログラム120
bの処理手順について図23のPAD図を用いて説明す
る。
【0162】ここで、第一の実施例における類似文書検
索プログラム120(図14)の処理手順と異なる点
は、特徴文字列選択ステップ2300だけである。他の
処理ステップの処理手順は、第一の実施例で説明した通
りである。
索プログラム120(図14)の処理手順と異なる点
は、特徴文字列選択ステップ2300だけである。他の
処理ステップの処理手順は、第一の実施例で説明した通
りである。
【0163】特徴文字列選択ステップ2300では、特
徴文字列選択プログラム2200を起動し、特徴文字列
抽出ステップ1402(特徴文字列抽出プログラム11
6)で抽出した特徴文字列の重要度を算出し、所定の値
を満たす文字列を類似検索用の特徴文字列として選択す
る。
徴文字列選択プログラム2200を起動し、特徴文字列
抽出ステップ1402(特徴文字列抽出プログラム11
6)で抽出した特徴文字列の重要度を算出し、所定の値
を満たす文字列を類似検索用の特徴文字列として選択す
る。
【0164】以下、特徴文字列選択ステップ2300で
起動される特徴文字列選択プログラム2200の処理手
順を図24のPAD図を用いて説明する。
起動される特徴文字列選択プログラム2200の処理手
順を図24のPAD図を用いて説明する。
【0165】特徴文字列選択プログラム2200は、ま
ず、ステップ2400において特徴文字列抽出ステップ
1402で抽出された特徴文字列を取得すし、ワークエ
リア130に格納する。
ず、ステップ2400において特徴文字列抽出ステップ
1402で抽出された特徴文字列を取得すし、ワークエ
リア130に格納する。
【0166】次に、ステップ2401で各特徴文字列が
出現する文書数を出現頻度ファイル104から取得す
る。
出現する文書数を出現頻度ファイル104から取得す
る。
【0167】そして、ステップ2402において、所定
の重要度算出式を用いて該特徴文字列の重要度を算出す
る。
の重要度算出式を用いて該特徴文字列の重要度を算出す
る。
【0168】この結果、該重要度が所定値を満たす特徴
文字列に限定し、これを類似度算出用の特徴文字列とし
て抽出する(ステップ2403)。この重要度には、従
来技術2の共通性ウェイトを用いてもよい。本実施例で
は、重要度の算出に以下に示す式(2)を用いる。
文字列に限定し、これを類似度算出用の特徴文字列とし
て抽出する(ステップ2403)。この重要度には、従
来技術2の共通性ウェイトを用いてもよい。本実施例で
は、重要度の算出に以下に示す式(2)を用いる。
【0169】
【数2】
【0170】ここで、nはデータベース中の文書数、Num
Docは特徴文字列のデータベースにおける出現文書数を
示す。この値は、特徴文字列がデータベース中の全ての
文書に出現する場合に最も小さく、特定の文書に偏って
出現する場合に大きくなる。
Docは特徴文字列のデータベースにおける出現文書数を
示す。この値は、特徴文字列がデータベース中の全ての
文書に出現する場合に最も小さく、特定の文書に偏って
出現する場合に大きくなる。
【0171】また、特徴文字列を抽出する際に基準とす
る閾値としては、上限とする重要度と下限とする重要度
を予め定めておいてもよいし、重要度の上位k個(kは1
以上の予め定められた整数)を採るものとしてもよい。
る閾値としては、上限とする重要度と下限とする重要度
を予め定めておいてもよいし、重要度の上位k個(kは1
以上の予め定められた整数)を採るものとしてもよい。
【0172】以下、図25に示す具体例で特徴文字列選
択ステップ2200の処理手順を説明する。なお本図で
は、図15の例で抽出した特徴文字列1501を対象と
し、重要度が3.0以上である特徴文字列を選択するもの
とする。
択ステップ2200の処理手順を説明する。なお本図で
は、図15の例で抽出した特徴文字列1501を対象と
し、重要度が3.0以上である特徴文字列を選択するもの
とする。
【0173】まず、ステップ1404(図23)でワー
クエリア130に読み込んだ出現頻度ファイル104か
ら各特徴文字列の出現文書数を取得する。この例では、
文書2の特徴文字列1501の各出現文書数2500と
して、[ソフトウェア,2]、[開発,3]、[発作,
2]、[作業,2]が得られる。ここで、[ソフトウェ
ア,2]は、特徴文字列「ソフトウェア」がデータベー
ス中の「2」つの文書に出現することを表わす。
クエリア130に読み込んだ出現頻度ファイル104か
ら各特徴文字列の出現文書数を取得する。この例では、
文書2の特徴文字列1501の各出現文書数2500と
して、[ソフトウェア,2]、[開発,3]、[発作,
2]、[作業,2]が得られる。ここで、[ソフトウェ
ア,2]は、特徴文字列「ソフトウェア」がデータベー
ス中の「2」つの文書に出現することを表わす。
【0174】次に、各特徴文字列の出現文書数2500
から重要度2501を算出し、重要度が3.0以上の特徴
文字列を抽出する。この結果、「ソフトウェア」という
1個の特徴文字列2502が類似度算出用の特徴文字列
として選択されることになる。
から重要度2501を算出し、重要度が3.0以上の特徴
文字列を抽出する。この結果、「ソフトウェア」という
1個の特徴文字列2502が類似度算出用の特徴文字列
として選択されることになる。
【0175】このように、特徴文字列の個数を4個から
1個に削減することができるため、類似度算出に要する
時間を大幅に削減することができる。
1個に削減することができるため、類似度算出に要する
時間を大幅に削減することができる。
【0176】なお、本実施例では、出現頻度ファイル1
04を参照して、各特徴文字列の出現文書数を取得する
構成としたが、文書登録時に各文書中の特徴文字列を計
数し、各特徴文字列の出現文書数を求め、これを出現文
書数ファイルとして記憶しておくことにより、さらに高
速に特徴文字列を選択することも可能である。
04を参照して、各特徴文字列の出現文書数を取得する
構成としたが、文書登録時に各文書中の特徴文字列を計
数し、各特徴文字列の出現文書数を求め、これを出現文
書数ファイルとして記憶しておくことにより、さらに高
速に特徴文字列を選択することも可能である。
【0177】また、本実施例では、出現頻度ファイル1
04を参照して、各特徴文字列の出現文書数を取得し重
要度を算出する構成としたが、文書登録時に各文書にお
ける特徴文字列の重要度を算出し、これを重要度ファイ
ルとして記憶しておくことにより、さらに高速に特徴文
字列を選択することが可能となる。
04を参照して、各特徴文字列の出現文書数を取得し重
要度を算出する構成としたが、文書登録時に各文書にお
ける特徴文字列の重要度を算出し、これを重要度ファイ
ルとして記憶しておくことにより、さらに高速に特徴文
字列を選択することが可能となる。
【0178】さらに、本実施例では、重要度の算出に特
徴文字列のデータベース中の出現文書数を用いたが、例
えば、特徴文字列の文字種類や文字列長、種文書内の出
現頻度あるいは出現位置等の情報のいずれか一つ、ある
いは、それらを組み合わせることにより算出することも
可能である。
徴文字列のデータベース中の出現文書数を用いたが、例
えば、特徴文字列の文字種類や文字列長、種文書内の出
現頻度あるいは出現位置等の情報のいずれか一つ、ある
いは、それらを組み合わせることにより算出することも
可能である。
【0179】以上説明したように、本発明によれば、分
かち書きのない日本語のような文書に対して、類似文書
検索を行なった場合においても、種文書から文字列を機
械的に抽出することにより、どんな単語についても漏れ
のない検索を行なうことが可能となる。また、文字種に
応じて特徴文字列を抽出することにより、意味のまとま
った文字列を用いて検索を行なうことができるため、高
精度な類似文書検索を実現することができるようにな
る。さらに、抽出する文字列の種類が大幅に削減される
ため、高速に類似文書を検索することができるようにな
る。
かち書きのない日本語のような文書に対して、類似文書
検索を行なった場合においても、種文書から文字列を機
械的に抽出することにより、どんな単語についても漏れ
のない検索を行なうことが可能となる。また、文字種に
応じて特徴文字列を抽出することにより、意味のまとま
った文字列を用いて検索を行なうことができるため、高
精度な類似文書検索を実現することができるようにな
る。さらに、抽出する文字列の種類が大幅に削減される
ため、高速に類似文書を検索することができるようにな
る。
【0180】さらに、全文検索システムと組み合わせて
用いることにより、大規模な文書データベースに対して
も、高速な類似文書検索が実現可能となる。
用いることにより、大規模な文書データベースに対して
も、高速な類似文書検索が実現可能となる。
【0181】
【発明の効果】本発明によれば、単語辞書を用いずに類
似文書検索を行なった場合でも、意味のまとまった文字
列を用いて検索を行なうことができるため、高精度な類
似文書検索を実現することができる。また、抽出する文
字列の文字種に応じて最適な長さの部分文字列(n-gra
m)を抽出するため、高速に類似文書を検索することが
できるようになる。
似文書検索を行なった場合でも、意味のまとまった文字
列を用いて検索を行なうことができるため、高精度な類
似文書検索を実現することができる。また、抽出する文
字列の文字種に応じて最適な長さの部分文字列(n-gra
m)を抽出するため、高速に類似文書を検索することが
できるようになる。
【図1】本発明による類似文書検索システムの第一の実
施例の全体構成を示す図である。
施例の全体構成を示す図である。
【図2】出現頻度ファイルの構成例を示す図である。
【図3】特徴文字列抽出処理の流れを示すPAD図であ
る。
る。
【図4】本発明の第一の実施例におけるシステム制御プ
ログラムの処理手順を示すPAD図である。
ログラムの処理手順を示すPAD図である。
【図5】本発明の第一の実施例における文書登録制御プ
ログラムの処理手順を示すPAD図である。
ログラムの処理手順を示すPAD図である。
【図6】本発明の第一の実施例における出現頻度ファイ
ル作成プログラムの処理手順を示すPAD図である。
ル作成プログラムの処理手順を示すPAD図である。
【図7】本発明の第一の実施例における特徴文字列抽出
プログラムの処理手順を示すPAD図である。
プログラムの処理手順を示すPAD図である。
【図8】本発明の第一の実施例における漢字文字列対応
特徴文字列抽出プログラムの処理手順を示すPAD図で
ある。
特徴文字列抽出プログラムの処理手順を示すPAD図で
ある。
【図9】本発明の第一の実施例におけるカタカナ文字列
対応特徴文字列抽出プログラムの処理手順を示すPAD
図である。
対応特徴文字列抽出プログラムの処理手順を示すPAD
図である。
【図10】本発明の第一の実施例における同一文字種文
字列抽出プログラムの処理例を示す図である。
字列抽出プログラムの処理例を示す図である。
【図11】本発明の第一の実施例における漢字文字列対
応特徴文字列抽出プログラムの処理例を示す図である。
応特徴文字列抽出プログラムの処理例を示す図である。
【図12】本発明の第一の実施例におけるカタカナ文字
列対応特徴文字列抽出プログラムの処理例を示す図であ
る。
列対応特徴文字列抽出プログラムの処理例を示す図であ
る。
【図13】本発明の第一の実施例における検索制御プロ
グラムの処理手順を示すPAD図である。
グラムの処理手順を示すPAD図である。
【図14】本発明の第一の実施例における類似文書検索
プログラムの処理手順を示すPAD図である。
プログラムの処理手順を示すPAD図である。
【図15】本発明の第一の実施例における特徴文字列抽
出プログラムの処理例を示す図である。
出プログラムの処理例を示す図である。
【図16】本発明の第一の実施例における出現頻度計数
プログラムの処理例を示す図である。
プログラムの処理例を示す図である。
【図17】本発明の第一の実施例における出現頻度取得
ファイル読込みプログラムの処理例を示す図である。
ファイル読込みプログラムの処理例を示す図である。
【図18】本発明の第一の実施例における類似度算出プ
ログラムの処理例を示す図である。
ログラムの処理例を示す図である。
【図19】本発明の第二の実施例における検索処理系の
プログラム構成を示す図である。
プログラム構成を示す図である。
【図20】本発明の第二の実施例における類似文書検索
プログラムの処理手順を示すPAD図である。
プログラムの処理手順を示すPAD図である。
【図21】本発明の第二の実施例におけるn-gramインデ
クスの例を示す図である。
クスの例を示す図である。
【図22】本発明の第三の実施例における検索処理系の
プログラム構成を示す図である。
プログラム構成を示す図である。
【図23】本発明の第三の実施例における類似文書検索
プログラムの処理手順を示すPAD図である。
プログラムの処理手順を示すPAD図である。
【図24】本発明の第三の実施例における特徴文字列選
択プログラムの処理手順を示すPAD図である。
択プログラムの処理手順を示すPAD図である。
【図25】本発明の第三の実施例における特徴文字列の
選択の例を示す図である。
選択の例を示す図である。
100…ディスプレイ、 101…キーボード、 102…中央演算処理装置(CPU)、 103…テキスト、 104…出現頻度ファイル、 105…磁気ディスク装置、 106…フロッピディスクドライブ(FDD)、 107…フロッピディスク、 108…バス、 109…主メモリ、 110…システム制御プログラム、 111…文書登録制御プログラム、 112…共有ライブラリ、 113…テキスト登録プログラム、 114…出現頻度ファイル作成登録プログラム、 115…同一文字種文字列抽出プログラム、 116…登録用特徴文字列抽出プログラム、 117…出現頻度ファイル作成プログラム、 118…検索制御プログラム、 119…検索条件式解析プログラム、 120…類似文書検索プログラム、 121…種文書読込みプログラム、 123…出現頻度計数プログラム、 124…出現頻度読込みプログラム、 125…類似度算出プログラム、 126…類似度ソートプログラム、 127…漢字文字列対応特徴文字列抽出プログラム、 128…カタカナ文字列対応特徴文字列抽出プログラ
ム、 130…ワークエリア
ム、 130…ワークエリア
───────────────────────────────────────────────────── フロントページの続き (72)発明者 菅谷 奈津子 神奈川県川崎市幸区鹿島田890番地 株式 会社日立製作所情報・通信開発本部内 (72)発明者 川下 靖司 神奈川県横浜市戸塚区戸塚町3090番地 株 式会社日立製作所ソフトウェア開発本部内
Claims (10)
- 【請求項1】文字情報をコードデータとして蓄積したテ
キストデータベースを対象に、ユーザが指定した文書と
類似する文書を検索する類似文書検索方法において、 ユーザが指定した文書のテキスト(指定テキストと呼
ぶ)から所定の文字種の変わり目を境界として文字列を
抽出する文字列抽出ステップと、 予め定められた一つ以上の文字列の種類に応じて、その
中から一つ以上の部分文字列を抽出する検索用部分文字
列抽出ステップと、 該指定テキストに対する該テキストデータベース中のテ
キストの類似度を所定の類似度算出式を用いて算出する
類似度算出ステップを有することを特徴とした類似文書
検索方法。 - 【請求項2】請求項1記載の類似文書検索方法における
前記文字列抽出ステップで、 該指定テキストから抽出する文字列として、全ての文字
種の変わり目を境界として同一文字種からなる文字列を
抽出する同一文字種文字列抽出ステップを有することを
特徴とした類似文書検索方法。 - 【請求項3】請求項2記載の類似文書検索方法における
前記検索用部分文字列抽出ステップで、 全ての文字種に応じて予め定められた文字列長の部分文
字列を検索用部分文字列として抽出する文字種別検索用
部分文字列抽出ステップを有することを特徴とした類似
文書検索方法。 - 【請求項4】請求項1、2および3に記載の類似文書検
索方法における前記検索用部分文字列抽出ステップで、 予め定められた長さの文字列を検索用部分文字列として
抽出するステップ、 前記文字列抽出ステップで抽出された文字列そのものを
検索用部分文字列として抽出するステップ、 前記文字列抽出ステップで抽出された文字列とその部分
文字列の指定テキストにおける出現頻度比を算出し、所
定値を満たす部分文字列を検索用部分文字列として抽出
するステップ、 前記文字列抽出ステップで抽出された文字列から、予め
作成しておいた、検索用部分文字列として抽出しない文
字列を不要語として記載した排除文字列辞書に含まれな
い文字列を、検索用部分文字列として抽出するステッ
プ、 および、前記文字列抽出ステップで抽出された文字列か
ら検索用部分文字列としては部分文字列を抽出しないス
テップ、 のいずれか一つ、あるいは、それらを組み合わせること
により検索用部分文字列を抽出する検索用部分文字列抽
出ステップを有することを特徴とした類似文書検索方
法。 - 【請求項5】請求項1、2および3に記載の類似文書検
索方法における前記検索用部分文字列抽出ステップで、 予め定められた長さの文字列を検索用部分文字列として
抽出する所定長文字列抽出ステップ、 前記文字列抽出ステップで抽出された文字列そのものを
検索用部分文字列として抽出する最長文字列抽出ステッ
プ、 前記文字列抽出ステップで抽出された文字列とその部分
文字列の指定テキストにおける出現頻度比を算出し、所
定値を満たす部分文字列を検索用部分文字列として抽出
する高出現頻度比文字列抽出ステップ、 上記所定長文字列抽出ステップ、最長文字列抽出ステッ
プおよび高出現頻度比文字列抽出ステップの中の少なく
とも一つの抽出ステップで抽出された部分文字列から、
予め作成しておいた、検索用部分文字列として抽出しな
い文字列を不要語として記載した排除文字列辞書に含ま
れる文字列を削除するステップ、 および、前記文字列抽出ステップで抽出された文字列か
ら検索用部分文字列としては部分文字列を抽出しないス
テップ、 のいずれか一つ、あるいは、それらを組み合わせること
により検索用部分文字列を抽出する検索用部分文字列抽
出ステップを有することを特徴とした類似文書検索方
法。 - 【請求項6】請求項1、2、3および4に記載の類似文
書検索方法において、 前記検索用部分文字列抽出ステップで抽出された検索用
部分文字列の重要度を、予め定められた算出式を用いて
算出し、所定値を満たす検索用部分文字列を抽出する検
索用部分文字列選択ステップを有することを特徴とした
類似文書検索方法。 - 【請求項7】請求項5記載の類似文書検索方法における
前記検索用部分文字列選択ステップとして、 前記検索用部分文字列抽出ステップにおいて抽出された
検索用部分文字列の文字種類、文字列長、テキストデー
タベース内の出現文書数、指定テキストにおける出現頻
度および該テキストにおける出現位置等の情報のいずれ
か一つ、あるいは、それらを組み合わせて、検索用部分
文字列の重要度を算出する重要度算出ステップを有する
ことを特徴とした類似文書検索方法。 - 【請求項8】請求項6記載の類似文書検索方法におい
て、 登録時に検索用部分文字列のテキストデータベース内の
出現文書数を出現文書数ファイルとして保存する出現文
書数ファイル作成ステップを有し、 検索時における前記重要度算出ステップにおいて、上記
出現文書数ファイルから該検索用部分文字列の出現文書
数を読み込む出現文書数ファイル読込みステップを有す
ることを特徴とした類似文書検索方法。 - 【請求項9】請求項6および7に記載の類似文書検索方
法において、 登録時に検索用部分文字列の重要度を予め定められた算
出式を用いて算出し、これを重要度ファイルとして保存
する重要度ファイル作成ステップを有し、 検索時における前記重要度算出ステップにおいて、上記
重要度ファイルから該検索用部分文字列の重要度を読み
込む重要度ファイル読込みステップを有することを特徴
とした類似文書検索方法。 - 【請求項10】請求項1〜8に記載の類似文書検索方法
において、 登録時に検索用部分文字列のテキストデータベース内の
各テキストにおける出現頻度を出現頻度ファイルとして
保存する出現頻度ファイル作成ステップを有し、 検索時における前記類似度算出ステップにおいて、上記
出現頻度ファイルから出現頻度情報を読み込む出現頻度
ファイル読込みステップを有することを特徴とした類似
文書検索方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP9309078A JPH11143902A (ja) | 1997-11-11 | 1997-11-11 | n−gramを用いた類似文書検索方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP9309078A JPH11143902A (ja) | 1997-11-11 | 1997-11-11 | n−gramを用いた類似文書検索方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH11143902A true JPH11143902A (ja) | 1999-05-28 |
Family
ID=17988627
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP9309078A Pending JPH11143902A (ja) | 1997-11-11 | 1997-11-11 | n−gramを用いた類似文書検索方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH11143902A (ja) |
Cited By (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH11338883A (ja) * | 1998-05-29 | 1999-12-10 | Hitachi Ltd | 特徴文字列抽出方法および装置とこれを用いた類似文書検索方法および装置並びに特徴文字列抽出プログラムを格納した記憶媒体および類似文書検索プログラムを格納した記憶媒体 |
| US6865571B2 (en) | 2000-10-31 | 2005-03-08 | Hitachi, Ltd. | Document retrieval method and system and computer readable storage medium |
| US7054860B2 (en) | 2000-06-02 | 2006-05-30 | Hitachi, Ltd. | Method and system for retrieving a document and computer readable storage medium |
| JP2006172372A (ja) * | 2004-12-20 | 2006-06-29 | Dainippon Printing Co Ltd | 検索装置および方法 |
| JP2006209399A (ja) * | 2005-01-27 | 2006-08-10 | Fuji Xerox Co Ltd | 文書検索装置および方法 |
| US9442901B2 (en) | 2011-04-28 | 2016-09-13 | Fujitsu Limited | Resembling character data search supporting method, resembling candidate extracting method, and resembling candidate extracting apparatus |
| JP2018018240A (ja) * | 2016-07-27 | 2018-02-01 | 富士ゼロックス株式会社 | データ処理装置およびプログラム |
| US10423613B2 (en) | 2013-12-20 | 2019-09-24 | Hitachi, Ltd. | Data search method and data search system |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH056398A (ja) * | 1991-06-28 | 1993-01-14 | Ricoh Co Ltd | 文書登録装置及び文書検索装置 |
| JPH08221443A (ja) * | 1995-02-17 | 1996-08-30 | Fujitsu Ltd | 漢字を含むテキストの検索方法及び装置 |
| JPH09153051A (ja) * | 1995-11-29 | 1997-06-10 | Hitachi Ltd | 類似文書検索方法 |
| JPH09293078A (ja) * | 1996-04-17 | 1997-11-11 | Internatl Business Mach Corp <Ibm> | 情報検索方法、情報検索装置及び情報検索プログラムを格納する記憶媒体 |
-
1997
- 1997-11-11 JP JP9309078A patent/JPH11143902A/ja active Pending
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH056398A (ja) * | 1991-06-28 | 1993-01-14 | Ricoh Co Ltd | 文書登録装置及び文書検索装置 |
| JPH08221443A (ja) * | 1995-02-17 | 1996-08-30 | Fujitsu Ltd | 漢字を含むテキストの検索方法及び装置 |
| JPH09153051A (ja) * | 1995-11-29 | 1997-06-10 | Hitachi Ltd | 類似文書検索方法 |
| JPH09293078A (ja) * | 1996-04-17 | 1997-11-11 | Internatl Business Mach Corp <Ibm> | 情報検索方法、情報検索装置及び情報検索プログラムを格納する記憶媒体 |
Cited By (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH11338883A (ja) * | 1998-05-29 | 1999-12-10 | Hitachi Ltd | 特徴文字列抽出方法および装置とこれを用いた類似文書検索方法および装置並びに特徴文字列抽出プログラムを格納した記憶媒体および類似文書検索プログラムを格納した記憶媒体 |
| US7054860B2 (en) | 2000-06-02 | 2006-05-30 | Hitachi, Ltd. | Method and system for retrieving a document and computer readable storage medium |
| US6865571B2 (en) | 2000-10-31 | 2005-03-08 | Hitachi, Ltd. | Document retrieval method and system and computer readable storage medium |
| JP2006172372A (ja) * | 2004-12-20 | 2006-06-29 | Dainippon Printing Co Ltd | 検索装置および方法 |
| JP2006209399A (ja) * | 2005-01-27 | 2006-08-10 | Fuji Xerox Co Ltd | 文書検索装置および方法 |
| US9442901B2 (en) | 2011-04-28 | 2016-09-13 | Fujitsu Limited | Resembling character data search supporting method, resembling candidate extracting method, and resembling candidate extracting apparatus |
| US10423613B2 (en) | 2013-12-20 | 2019-09-24 | Hitachi, Ltd. | Data search method and data search system |
| JP2018018240A (ja) * | 2016-07-27 | 2018-02-01 | 富士ゼロックス株式会社 | データ処理装置およびプログラム |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6654717B2 (en) | Multi-language document search and retrieval system | |
| JP3918531B2 (ja) | 類似文書検索方法およびシステム | |
| JP2783558B2 (ja) | 要約生成方法および要約生成装置 | |
| JP3696745B2 (ja) | 文書検索方法及び文書検索システム及び文書検索プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
| US8024175B2 (en) | Computer program, apparatus, and method for searching translation memory and displaying search result | |
| JP2742115B2 (ja) | 類似文書検索装置 | |
| US20090292693A1 (en) | Text searching method and device and text processor | |
| JP2001043236A (ja) | 類似語抽出方法、文書検索方法及びこれらに用いる装置 | |
| KR100396826B1 (ko) | 정보검색에서 질의어 처리를 위한 단어 클러스터 관리장치 및 그 방법 | |
| JP2001526425A (ja) | データ表示テキストの言語および文字セットの特定 | |
| JP3220865B2 (ja) | フルテキストサーチ方法 | |
| JP2000200281A (ja) | 情報検索装置および情報検索方法ならびに情報検索プログラムを記録した記録媒体 | |
| JPH11143902A (ja) | n−gramを用いた類似文書検索方法 | |
| JPH08147311A (ja) | 構造化文書検索方法及び装置 | |
| JP5269399B2 (ja) | 構造化文書検索装置、方法およびプログラム | |
| JPH06348757A (ja) | 文書検索装置および方法 | |
| JPH09153051A (ja) | 類似文書検索方法 | |
| JP2000285122A (ja) | シソーラス生成装置および方法,ならびにシソーラス生成プログラムを記録した記録媒体 | |
| JP3249743B2 (ja) | 文書検索システム | |
| JP2001014326A (ja) | 構造指定による類似文書の検索装置及び検索方法 | |
| JP2783622B2 (ja) | 複合データベースシステム | |
| JP2002189734A (ja) | 検索語抽出装置および検索語抽出方法 | |
| JP2002132789A (ja) | 文書検索方法 | |
| JP3325677B2 (ja) | 文書検索装置 | |
| JP3376996B2 (ja) | フルテキストサーチ方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20041221 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050217 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20050419 |