IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社半導体エネルギー研究所の特許一覧

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-06-05
(45)【発行日】2024-06-13
(54)【発明の名称】翻訳用の文書検索システム
(51)【国際特許分類】
   G06F 16/33 20190101AFI20240606BHJP
【FI】
G06F16/33
【請求項の数】 3
(21)【出願番号】P 2020557017
(86)(22)【出願日】2019-11-19
(86)【国際出願番号】 IB2019059907
(87)【国際公開番号】W WO2020109921
(87)【国際公開日】2020-06-04
【審査請求日】2022-11-18
(31)【優先権主張番号】P 2018224825
(32)【優先日】2018-11-30
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】000153878
【氏名又は名称】株式会社半導体エネルギー研究所
(72)【発明者】
【氏名】岡野 達也
(72)【発明者】
【氏名】齊藤 祥子
【審査官】三橋 竜太郎
(56)【参考文献】
【文献】国際公開第2013/098886(WO,A1)
【文献】特開2006-092135(JP,A)
【文献】特開2012-104051(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00-16/958
(57)【特許請求の範囲】
【請求項1】
複数の検索対象文書をそれぞれ分割することで作成され、且つ第1の言語で作成された翻訳文が存在する複数の文章ブロックの中から、特定の文章ブロックを検索する翻訳用の文書検索システムであって、
処理部を有し、
前記処理部は、
検索用文書を分割することで作成された複数の検索用文章ブロックの1つである、第1の検索用文章ブロックを準備する機能と、
前記複数の文章ブロックのうち少なくとも一部を第1の対象として、前記第1の検索用文章ブロックを検索条件に用いて全文検索を行うことで、前記第1の対象に含まれる文章ブロックそれぞれの、前記第1の検索用文章ブロックに対する第1の関連度を算出する機能と、
前記第1の関連度の高さに基づいて、前記第1の対象の中から第2の対象を決定する機能と、
前記第1の検索用文章ブロックに含まれる文ごとに、前記第2の対象に含まれる文それぞれとの第1の類似度を算出する機能と、
前記第1の類似度を用いて、前記第1の検索用文章ブロックに類似する文章ブロックを少なくとも1つ検索する機能と、を有し、
前記翻訳用の文書検索システムは、前記検索した前記文章ブロックに対応する前記翻訳文を利用する機能を有する、翻訳用の文書検索システム。
【請求項2】
複数の検索対象文書をそれぞれ分割することで作成され、且つ第1の言語で作成された翻訳文が存在する複数の文章ブロックの中から、特定の文章ブロックを検索する翻訳用の文書検索システムであって、
処理部を有し、
前記処理部は、
検索用文書を分割することで作成された複数の検索用文章ブロックの1つである、第1の検索用文章ブロックを準備する機能と、
前記複数の文章ブロックのうち少なくとも一部を第1の対象として、前記第1の検索用文章ブロックに含まれる各文を検索条件に用いて全文検索を行うことで、前記第1の対象に含まれる文それぞれの、前記第1の検索用文章ブロックに含まれる各文に対する第1の関連度を算出する機能と、
前記第1の関連度の高さに基づいて、前記第1の対象に含まれる文の中から第2の対象を決定する機能と、
前記第1の検索用文章ブロックに含まれる文ごとに、前記第2の対象に含まれる文それぞれとの第1の類似度を算出する機能と、
前記第1の類似度を用いて、前記第1の検索用文章ブロックに類似する文章ブロックを少なくとも1つ検索する機能と、を有し、
前記翻訳用の文書検索システムは、前記検索した前記文章ブロックに対応する前記翻訳文を利用する機能を有する、翻訳用の文書検索システム。
【請求項3】
請求項1又は請求項2において、
前記処理部は、
前記第1の類似度のうち閾値以上の値を用いて、前記第1の検索用文章ブロックに類似する文章ブロックを少なくとも1つ検索する機能を有する、翻訳用の文書検索システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の一態様は、文書検索方法、文書検索システム、プログラム、及び非一時的コンピュータ可読記憶媒体に関する。
【0002】
なお、本発明の一態様は、上記の技術分野に限定されない。本発明の一態様の技術分野としては、半導体装置、表示装置、発光装置、蓄電装置、記憶装置、電子機器、照明装置、入力装置(例えば、タッチセンサなど)、入出力装置(例えば、タッチパネルなど)、それらの駆動方法、又はそれらの製造方法を一例として挙げることができる。
【背景技術】
【0003】
大量の文書の中から、目的の文書を効率良く検索する文書検索技術が盛んに開発されている。例えば、特許文献1には、類似文書検索方法が開示されている。
【0004】
類似文書は、目的の文書に対して全体的に類似している場合も、ある部分で類似性が極端に高く、他の部分は類似性が極めて低い場合もある。
【0005】
特許文献1では、目的の文書に対して、類似文書が、全体的に類似しているのか、一部のみ類似しているのか、を判断するための指標として、詳細度を算出している。
【先行技術文献】
【特許文献】
【0006】
【文献】特開2004-295712号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
特許出願業務において、新しい明細書(後願の明細書)を作成する際に、自社で過去に作成された明細書(先願の明細書)の記載を参考にする、または引用することがある。ここで、先願の明細書の翻訳文が作成済みであれば、後願の明細書の翻訳文を作成する際に、先願の明細書の翻訳文を参考にする、または引用することができ、後願の明細書の翻訳にかかる時間を短縮することができる。
【0008】
類似文書の検索方法によっては、目的の文書に対して高い類似度が算出される文書の中に、実際は類似していなくても、全体的にある程度の類似度を有するために、文書全体の類似度が高く算出される文書が含まれることがある。一方、残りの部分の類似性が極めて低くても、類似性が極端に高い部分を有する(例えば、完全一致の文章を含む)文書は、文書全体の類似度が低く算出されてしまうことがある。例えば、翻訳文を参考にする、または引用するためには、前者の文書よりも、後者の文書の方が、好ましい。
【0009】
また、文章を1文ずつ検索することで、完全一致の文章を見つけることもできるが、文章の流れが切れてしまうことや、明細書によって訳語が統一されていないことがある。したがって、章ごとなど、複数の文を含む文章単位で、類似箇所を把握できることが望ましい。
【0010】
また、新しい明細書を作成する際に参考にする明細書は、一つとは限らない。したがって、どの明細書を参考にして新しい明細書を作成したか、だけでなく、どの明細書のどの部分を参考にして、新しい明細書のどの部分を作成したか、を容易に把握できることが望ましい。そして、これは明細書に限らず、あらゆる文書に共通していえることである。しかし、新しい文書を作成する際、どの文書のどの部分を参考にしたか、詳細に記録することは、手間がかかり、煩雑な作業である。
【0011】
本発明の一態様は、文書のブロックごとに、類似する文書を検索できる文書検索方法を提供することを課題の一つとする。または、本発明の一態様は、文書のブロックごとに、類似する文書を検索できる文書検索システムを提供することを課題の一つとする。または、本発明の一態様は、簡便な入力方法で、文書のブロックごとに、類似する文書を検索できる文書検索方法を提供することを課題の一つとする。
【0012】
本発明の一態様は、高い精度で文書を検索できる文書検索方法を提供することを課題の一つとする。または、本発明の一態様は、高い精度で文書を検索できる文書検索システムを提供することを課題の一つとする。または、本発明の一態様は、簡便な入力方法で、精度の高い文書検索、特に知的財産に係る文書の検索を実現することを課題の一つとする。
【0013】
なお、これらの課題の記載は、他の課題の存在を妨げるものではない。本発明の一態様は、必ずしも、これらの課題の全てを解決する必要はないものとする。明細書、図面、請求項の記載から、これら以外の課題を抽出することが可能である。
【課題を解決するための手段】
【0014】
本発明の一態様は、複数の検索対象文書をそれぞれ分割することで作成された複数の文章ブロックの中から、特定の文章ブロックを検索する文書検索方法であって、検索用文書の一部である、第1の検索用文章ブロックを準備し、複数の文章ブロックのうち少なくとも一部を第1の対象として、第1の検索用文章ブロックを検索条件に用いて全文検索を行うことで、第1の対象に含まれる文章ブロックそれぞれの、第1の検索用文章ブロックに対する第1の関連度を算出し、第1の関連度の高さに基づいて、第1の対象の中から第2の対象を決定し、第1の検索用文章ブロックに含まれる文ごとに、第2の対象に含まれる文それぞれとの第1の類似度を算出し、第1の類似度を用いて、第1の検索用文章ブロックに類似する文章ブロックを少なくとも1つ検索する、文書検索方法である。
【0015】
検索用文書を分割することで、複数の検索用文章ブロックを作成することが好ましい。このとき、第1の検索用文章ブロックは、複数の検索用文章ブロックの一つであることが好ましい。
【0016】
さらに、検索用文書の他の一部である、第2の検索用文章ブロックを準備し、複数の文章ブロックのうち少なくとも一部を第3の対象として、第2の検索用文章ブロックを検索条件に用いて全文検索を行うことで、第3の対象に含まれる文章ブロックそれぞれの、第2の検索用文章ブロックに対する第2の関連度を算出し、第2の関連度の高さに基づいて、第3の対象の中から第4の対象を決定し、第2の検索用文章ブロックに含まれる文ごとに、第4の対象に含まれる文それぞれとの第2の類似度を算出し、第2の類似度を用いて、第2の検索用文章ブロックに類似する文章ブロックを少なくとも1つ検索することが好ましい。このとき、第1の対象と第3の対象とは、同一であってもよく、互いに異なっていてもよい。
【0017】
第1の類似度のうち閾値以上の値を用いて、第1の検索用文章ブロックに類似する文章ブロックを少なくとも1つ検索することが好ましい。
【0018】
本発明の一態様は、複数の検索用文章ブロックのそれぞれについて、複数の検索対象文書をそれぞれ分割することで作成された複数の文章ブロックの中から、類似する文章ブロックを検索する文書検索方法であって、検索用文書を分割することで、複数の検索用文章ブロックを作成し、複数の検索用文章ブロックのそれぞれについて、複数の文章ブロックのうち少なくとも一部を第1の対象として、検索用文章ブロックを検索条件に用いて全文検索を行うことで、第1の対象に含まれる文章ブロックそれぞれの、検索用文章ブロックに対する関連度を算出するステップと、関連度の高さに基づいて、第1の対象の中から第2の対象を決定するステップと、検索用文章ブロックに含まれる文ごとに、第2の対象に含まれる文それぞれとの類似度を算出するステップと、類似度を用いて、検索用文章ブロックに類似する文章ブロックを少なくとも1つ検索するステップと、を行う、文書検索方法である。
【0019】
本発明の一態様は、複数の検索対象文書をそれぞれ分割することで作成された複数の文章ブロックの中から、特定の文章ブロックを検索する文書検索方法であり、検索用文書の一部である、第1の検索用文章ブロックを準備し、複数の文章ブロックのうち少なくとも一部を第1の対象として、第1の検索用文章ブロックに含まれる各文を検索条件に用いて全文検索を行うことで、第1の対象に含まれる文それぞれの、第1の検索用文章ブロックに含まれる各文に対する第1の関連度を算出し、第1の検索用文章ブロックに含まれる文ごとに、第1の関連度の高さに基づいて、第1の対象に含まれる文の中から第2の対象を決定し、第1の検索用文章ブロックに含まれる文ごとに、第2の対象に含まれる文それぞれとの第1の類似度を算出し、第1の類似度を用いて、第1の検索用文章ブロックに類似する文章ブロックを少なくとも1つ検索する、文書検索方法である。
【0020】
検索用文書を分割することで、複数の検索用文章ブロックを作成することが好ましい。このとき、第1の検索用文章ブロックは、複数の検索用文章ブロックの一つであることが好ましい。
【0021】
さらに、検索用文書の他の一部である、第2の検索用文章ブロックを準備し、複数の文章ブロックのうち少なくとも一部を第3の対象として、第2の検索用文章ブロックに含まれる各文を検索条件に用いて全文検索を行うことで、第3の対象に含まれる文それぞれの、第2の検索用文章ブロックに含まれる各文に対する第2の関連度を算出し、第2の検索用文章ブロックに含まれる文ごとに、第2の関連度の高さに基づいて、第3の対象に含まれる文の中から第4の対象を決定し、第2の検索用文章ブロックに含まれる文ごとに、第4の対象に含まれる文それぞれとの第2の類似度を算出し、第2の類似度を用いて、第2の検索用文章ブロックに類似する文章ブロックを少なくとも1つ検索することが好ましい。このとき、第1の対象と第3の対象とは、同一であってもよく、互いに異なっていてもよい。
【0022】
第1の類似度のうち閾値以上の値を用いて、第1の検索用文章ブロックに類似する文章ブロックを少なくとも1つ検索することが好ましい。
【0023】
本発明の一態様は、複数の検索用文章ブロックのそれぞれについて、複数の検索対象文書をそれぞれ分割することで作成された複数の文章ブロックの中から、類似する文章ブロックを検索する文書検索方法であって、検索用文書を分割することで、複数の検索用文章ブロックを作成し、複数の検索用文章ブロックのそれぞれについて、複数の文章ブロックのうち少なくとも一部を第1の対象として、検索用文章ブロックに含まれる各文を検索条件に用いて全文検索を行うことで、第1の対象に含まれる文それぞれの、検索用文章ブロックに含まれる各文に対する関連度を算出するステップと、検索用文章ブロックに含まれる文ごとに、関連度の高さに基づいて、第1の対象に含まれる文の中から第2の対象を決定するステップと、検索用文章ブロックに含まれる文ごとに、第2の対象に含まれる文それぞれとの類似度を算出するステップと、類似度を用いて、検索用文章ブロックに類似する文章ブロックを少なくとも1つ検索するステップと、を行う、文書検索方法である。
【0024】
本発明の一態様は、上記の文書検索方法のいずれかを行う機能を有する文書検索システムである。
【0025】
本発明の一態様は、複数の検索対象文書をそれぞれ分割することで作成された複数の文章ブロックの中から、特定の文章ブロックを検索する文書検索システムであって、処理部を有し、処理部は、検索用文書を分割することで作成された複数の検索用文章ブロックの1つである、第1の検索用文章ブロックを準備する機能と、複数の文章ブロックのうち少なくとも一部を第1の対象として、第1の検索用文章ブロックを検索条件に用いて全文検索を行うことで、第1の対象に含まれる文章ブロックそれぞれの、第1の検索用文章ブロックに対する第1の関連度を算出する機能と、第1の関連度の高さに基づいて、第1の対象の中から第2の対象を決定する機能と、第1の検索用文章ブロックに含まれる文ごとに、第2の対象に含まれる文それぞれとの第1の類似度を算出する機能と、第1の類似度を用いて、第1の検索用文章ブロックに類似する文章ブロックを少なくとも1つ検索する機能と、を有する、文書検索システムである。
【0026】
本発明の一態様は、上記の文書検索方法のいずれかをプロセッサに実行させる機能を有するプログラムである。本発明の一態様は、当該プログラムが記憶された非一時的コンピュータ可読記憶媒体である。
【0027】
プログラムは、様々なタイプの一時的なコンピュータ可読記憶媒体によってコンピュータに供給されてもよい。一時的なコンピュータ可読記憶媒体としては、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読記憶媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【0028】
本発明の一態様は、複数の検索対象文書をそれぞれ分割することで作成された複数の文章ブロックの中から、特定の文章ブロックを検索するプログラムであって、検索用文書を分割することで作成された複数の検索用文章ブロックの1つである、第1の検索用文章ブロックを準備するステップと、複数の文章ブロックのうち少なくとも一部を第1の対象として、第1の検索用文章ブロックを検索条件に用いて全文検索を行うことで、第1の対象に含まれる文章ブロックそれぞれの、第1の検索用文章ブロックに対する第1の関連度を算出するステップと、第1の関連度の高さに基づいて、第1の対象の中から第2の対象を決定するステップと、第1の検索用文章ブロックに含まれる文ごとに、第2の対象に含まれる文それぞれとの第1の類似度を算出するステップと、第1の類似度を用いて、第1の検索用文章ブロックに類似する文章ブロックを少なくとも1つ検索するステップと、を、プロセッサに実行させるプログラムである。本発明の一態様は、当該プログラムが記憶された非一時的コンピュータ可読記憶媒体である。
【0029】
非一時的コンピュータ可読記憶媒体としては、様々なタイプの実体のある記憶媒体を用いることができる。非一時的コンピュータ可読記憶媒体としては、例えば、RAM(Random Access Memory)等の揮発性メモリ、ROM(Read Only Memory)等の不揮発性メモリが挙げられる。そのほか、ハードディスクドライブ(Hard Disc Drive:HDD)及びソリッドステートドライブ(Solid State Drive:SSD)等の記録メディアドライブ、光磁気ディスク、CD-ROM、CD-R等が挙げられる。
【発明の効果】
【0030】
本発明の一態様により、文書のブロックごとに、類似する文書を検索できる文書検索方法を提供できる。本発明の一態様により、文書のブロックごとに、類似する文書を検索できる文書検索システムを提供できる。本発明の一態様により、簡便な入力方法で、文書のブロックごとに、類似する文書を検索できる文書検索方法を提供できる。
【0031】
本発明の一態様により、高い精度で文書を検索できる文書検索方法を提供できる。本発明の一態様により、高い精度で文書を検索できる文書検索システムを提供できる。本発明の一態様により、簡便な入力方法で、精度の高い文書検索、特に知的財産に係る文書の検索を実現できる。
【0032】
なお、これらの効果の記載は、他の効果の存在を妨げるものではない。本発明の一態様は、必ずしも、これらの効果の全てを有する必要はない。明細書、図面、請求項の記載から、これら以外の効果を抽出することが可能である。
【図面の簡単な説明】
【0033】
図1は文書検索方法の一例を示すフロー図である。
図2は検索を行う前段階の処理の一例を示す図である。
図3A図3B図3Cは文書検索方法の一例を示す図である。
図4A図4B図4Cは文書検索方法の一例を示す図である。
図5A図5Bは文書検索方法の一例を示す図である。
図6A図6B図6Cは文書検索方法の一例を示す図である。
図7A図7B図7Cは文書検索方法の一例を示す図である。
図8A図8B図8Cは文書検索方法の一例を示す図である。
図9A図9Bは文書検索方法の一例を示す図である。
図10は文書検索方法の一例を示すフロー図である。
図11は文書検索方法の一例を示すフロー図である。
図12は文書検索方法の一例を示す図である。
図13は文書検索システムの一例を示すブロック図である。
図14は文書検索システムの一例を示すブロック図である。
【発明を実施するための形態】
【0034】
実施の形態について、図面を用いて詳細に説明する。但し、本発明は以下の説明に限定されず、本発明の趣旨及びその範囲から逸脱することなくその形態及び詳細を様々に変更し得ることは当業者であれば容易に理解される。従って、本発明は以下に示す実施の形態の記載内容に限定して解釈されるものではない。
【0035】
なお、以下に説明する発明の構成において、同一部分又は同様な機能を有する部分には同一の符号を異なる図面間で共通して用い、その繰り返しの説明は省略する。また、同様の機能を指す場合には、ハッチパターンを同じくし、特に符号を付さない場合がある。
【0036】
また、図面において示す各構成の、位置、大きさ、範囲などは、理解の簡単のため、実際の位置、大きさ、範囲などを表していない場合がある。このため、開示する発明は、必ずしも、図面に開示された位置、大きさ、範囲などに限定されない。
【0037】
(実施の形態1)
本実施の形態では、本発明の一態様の文書検索方法について図1図12を用いて説明する。なお、データの模式図は一例であり、これに限定されない。
【0038】
本発明の一態様は、複数の検索対象文書をそれぞれ分割することで作成された複数の文章ブロックの中から、特定の文章ブロックを検索する文書検索方法である。
【0039】
まず、検索用文書の一部である、第1の検索用文章ブロックを準備する。
【0040】
例えば、第1の検索用文章ブロックは、検索用文書の一部を抽出することで作成できる。または、第1の検索用文章ブロックは、検索用文書を分割することで作成された複数の検索用文章ブロックの一つであってもよい。
【0041】
本発明の一態様の文書検索方法では、事前に、複数の検索対象文書から複数の文章ブロックを作成しておき、さらに、検索時には、検索用文書から検索用文章ブロックを作成する。これにより、検索用文章ブロックに類似する文章ブロックを検索することができる。したがって、検索用文書全体を検索条件に用いる場合や、検索対象が文書全体である場合に比べて、類似箇所の対応関係を把握することが容易となる。
【0042】
次に、複数の文章ブロックのうち少なくとも一部を第1の対象として、第1の検索用文章ブロックを検索条件に用いて全文検索を行うことで、第1の対象に含まれる文章ブロックそれぞれの、第1の検索用文章ブロックに対する第1の関連度を算出する。
【0043】
検索対象文書の数が多いほど、文章ブロックの数も多くなる。本発明の一態様では、検索用文章ブロックごとに、検索の対象となる文章ブロック(第1の対象)を絞り込むことができるため、処理量を削減し、検索速度を高めることができる。
【0044】
次に、第1の関連度の高さに基づいて、第1の対象の中から第2の対象を決定する。
【0045】
全文検索では、文や単語の順番は考慮されないため、算出される関連度は類似度とは異なる。一方で、検索用文章ブロックと共通する単語を有する文章ブロックは、関連度の値が高くなり、類似性の低い文章ブロックは、関連度の値も低くなるため、類似度を算出すべき対象を高い精度で絞り込むことができる。
【0046】
次に、第1の検索用文章ブロックに含まれる文ごとに、第2の対象に含まれる文それぞれとの第1の類似度を算出する。
【0047】
全文検索に比べて、類似度を算出する処理は、所要時間が長くなりやすい。本発明の一態様では、第1の対象の中から第2の対象を決定し、対象を絞り込んだ後に類似度を算出するため、文書検索にかかる時間を短縮することができる。
【0048】
類似度は、文同士の字面の一致度に基づいて算出することができる。全文検索と異なり、類似度の算出においては、文中の単語の順番が考慮される。したがって、第1の検索用文章ブロックが有する文と共通する単語を有していても単語の並び順が異なる文は、類似度が低くなる。
【0049】
そして、第1の類似度を用いて、第1の検索用文章ブロックに類似する文章ブロックを少なくとも1つ検索する。
【0050】
以上のように、本発明の一態様の文書検索方法を用いることで、検索用文書の特定の箇所に類似する、他の文書の記載箇所を容易に把握することができる。
【0051】
また、本発明の一態様の文書検索方法は、検索用文書を入力すればよく、検索に用いるキーワードの選定が不要であるため、使用者の負担が少なく、技量による検索結果の差が生じにくいという利点がある。
【0052】
また、検索対象となる文章ブロックを、第1の対象、第2の対象と順に絞り込んだ後に、類似度の算出を行うため、文書検索にかかる時間を短縮することができる。
【0053】
また、全文検索は、第1の検索用文章ブロックに含まれる文を1つずつ検索条件に用いて行ってもよい。この場合、第1の対象に含まれる文それぞれの、第1の検索用文章ブロックに含まれる各文に対する第1の関連度を算出する。そして、第1の検索用文章ブロックに含まれる文ごとに、第1の関連度の高さに基づいて、第1の対象に含まれる文の中から第2の対象を決定する。
【0054】
文章ブロックには複数の文が含まれる。文章ブロックに含まれる文のうち、第1の検索用文章ブロックに含まれる文と類似する文が大半であるとは限らない。そのため、類似度の高い文章ブロックを高い精度で検索するためには、多くの文章ブロックについて類似度の算出を行う必要があり、類似度を算出する時間が長くなることがある。また、類似度の算出に要する時間を短縮するために、第2の対象である文章ブロックの数を少なくすることで、類似度の高い文が含まれる文章ブロックを取りこぼす恐れがある。
【0055】
そこで、文章ブロック単位でなく、文単位で、第1の対象から第2の対象を絞り込むことが好ましい。具体的には、第1の検索用文章ブロックに含まれる文ごとに、関連度の高い文を検索し、文単位で、類似度を算出する対象を絞り込むことが好ましい。文単位で対象を絞り込むことで、文章ブロック単位で対象を絞り込む場合に比べて、類似度の高い文(及び文章ブロック)の取りこぼしの抑制と、類似度の算出に要する時間の短縮と、の両立を図ることができる。
【0056】
<文書検索方法の例1>
図1に、文書検索方法のフローチャートを示す。図1に示すように、本発明の一態様の文書検索方法は、ステップA1~ステップA6の6つのステップを有する。
【0057】
なお、特に説明のない限り、要素(文書、文章ブロック、または文など)を複数有する構成を説明する場合であっても、各々の要素に共通する事項を説明する場合には、変数及びアルファベットを省略して説明する。例えば、検索対象文書TD1、検索対象文書TD2、及び検索対象文書TDn等に共通する事項を説明する場合に、検索対象文書TDと記す場合がある。
【0058】
[前処理]
まず、図2を用いて、検索を行う前段階の処理について説明する。
【0059】
前処理では、複数の検索対象文書TDを分割し、複数の文章ブロックTBを作成する。
【0060】
本実施の形態の文書検索方法では、事前に準備された複数の文書をブロックに分ける。そして、検索時には、入力された検索用文書もブロックに分ける。これにより、検索用文書の各ブロックに類似する文章ブロックを検索することができる。
【0061】
図2では、n個(nは2以上の整数)の検索対象文書TDを準備する例を示す。
【0062】
検索対象文書TDとしては、特に限定はなく、様々な文書を用いることができる。
【0063】
検索対象文書TDとしては、例えば、知的財産に係る文書が挙げられる。知的財産に係る文書としては、具体的には、特許出願に用いた明細書、特許請求の範囲、及び要約書などが挙げられる。さらに、知的財産に係る文書としては、特許文献(公開特許公報、特許公報など)、実用新案公報、意匠公報、及び論文などの刊行物が挙げられる。国内で発行された刊行物に限られず、世界各国で発行された刊行物を、知的財産に係る文書として用いることができる。
【0064】
そのほか、検索対象文書TDとして、書籍、論文、レポート、コラム、または、その他の文を含む各種著作物を用いてもよい。また、検索対象文書TDとして、診療文書などを用いてもよい。
【0065】
また、文書の言語についても特に限定はなく、例えば、日本語、英語、中国語、韓国語などの文書を用いることができる。
【0066】
図2に示す検索対象文書TD1は、x個(xは2以上の整数)の文章ブロック(文章ブロックTB1(1)から文章ブロックTB1(x))に分割される。
【0067】
また、検索対象文書TD2は、y個(yは2以上の整数)の文章ブロック(文章ブロックTB2(1)から文章ブロックTB2(y))に分割される。
【0068】
また、検索対象文書TDnは、z個(zは2以上の整数)の文章ブロック(文章ブロックTBn(1)から文章ブロックTBn(z))に分割される。
【0069】
例えば、検索対象文書が複数の章からなる文書である場合、章ごとに分割することで、複数の文章ブロックを作成してもよい。
【0070】
具体的には、特許明細書の場合、「背景、課題、手段、及び効果」、「実施の形態1」、「実施の形態2」などに分割することができる。
【0071】
また、論文の場合、「序論」、「研究手法」、「結果」、「考察」、「結論」などに分割することができる。
【0072】
なお、検索対象文書の全ての文を用いて、複数の文章ブロックを作成してもよく、検索対象文書のうち必要な部分のみを用いて、複数の文章ブロックを作成してもよい。
【0073】
例えば、検索対象文書が特許明細書の場合、「符号の説明」を用いずに、複数の文章ブロックを作成してもよい。
【0074】
前処理は、文書検索を行う前(ステップA1を行う前)に少なくとも一度実施する。前処理は、用途に応じて、複数回実施してもよい。例えば、定期的に前処理を行い、検索対象文書の追加、更新、または削除を行うことで、検索精度及び利便性を高めることができる。
【0075】
さらに、複数の文章ブロックTBを用いて、全文検索に用いるためのインデックスファイルを作成することが好ましい。これにより、全文検索を短時間で行うことができる。インデックスファイルの構成は、特に限定されず、例えば、文字列、文書名、文章ブロック名、出現頻度などの情報を有することができる。
【0076】
また、例えば、インデックスファイルは、検索対象文書TD(または文章ブロックTB)の各言語の翻訳文が存在するか否かの情報を有していてもよい。これにより、検索時に、「英語の翻訳文が存在する」、「中国語の翻訳文が存在する」などの条件を指定することができる。
【0077】
次に、図3図5を用いて、図1に示す6つのステップの詳細について説明する。
【0078】
[ステップA1:複数の検索用文章ブロックSTBの作成]
まず、検索用文書STDを分割することで、複数の検索用文章ブロックSTBを作成する(図3A)。
【0079】
図3Aに示すように、検索用文書STDは、w個(wは2以上の整数)の検索用文章ブロック(検索用文章ブロックSTB(1)から検索用文章ブロックSTB(w))に分割される。
【0080】
本実施の形態の文書検索方法では、入力された検索用文書STDを、複数の検索用文章ブロックSTBに分けるため、検索用文章ブロックSTBごとに、類似する文書(文章ブロックTB)を検索することができる。
【0081】
検索用文書STDとしては、特に限定はなく、様々な文書を用いることができる。
【0082】
検索用文書STDとしては、例えば、翻訳前の、知的財産に係る文書が挙げられる。これにより、検索対象文書TDの中から、翻訳済みの類似の文書を検索することができ、翻訳文を参考にする、または引用することができる。
【0083】
また、検索用文書STDとして、書籍、論文、レポート、コラム、または、文を含む各種著作物を用いることができる。これにより、検索対象文書TDの中から、類似の文書を検索することができ、検索用文書STDに、盗用または盗作の疑いが無いか、確認することができる。
【0084】
また、検索用文書STDとして、診療文書を用いることができる。治療の途中経過が記載された診療文書を用いて、類似の症例の診療文書を検索することで、診療の参考にすることや、患者が今後どのような経過を辿るのか検討することができる。
【0085】
[ステップA2:検索用文章ブロックSTB(i)の選択]
次に、w個の検索用文章ブロックSTBの中から、検索を行う検索用文章ブロックSTB(i)(iは、1以上w以下の整数)を選択する。
【0086】
なお、1つの検索用文章ブロックSTBのみについて検索を行う場合は、ステップA1において検索用文書STDの中から必要な部分を抽出することで、検索用文章ブロックSTBを作成してもよい。
【0087】
また、複数の検索用文章ブロックSTBについてそれぞれ検索を行う場合は、1つずつ逐次検索してもよい(文書検索方法の例3参照)し、複数を並列で検索してもよい(文書検索方法の例4参照)し、逐次処理と並列処理を組み合わせて検索してもよい。
【0088】
本実施の形態の文書検索方法では、検索用文章ブロックSTBごとに、類似の文章ブロックTBを検索することができるため、検索用文書STDの特定の箇所に類似する、検索対象文書TDの記載箇所を精度よく、簡便に把握することができる。
【0089】
[ステップA3:検索用文章ブロックSTB(i)に対する関連度の算出]
次に、検索用文章ブロックSTB(i)に対する関連度を算出する。
【0090】
具体的には、検索用文章ブロックSTB(i)を検索条件に用いて全文検索を行うことで、検索対象となる文章ブロックTBそれぞれの、検索用文章ブロックSTB(i)に対する関連度を算出する。
【0091】
ここで、全ての文章ブロックTBについて、検索用文章ブロックSTB(i)に対する関連度を算出してもよく、一部の文章ブロックTBについて、検索用文章ブロックSTB(i)に対する関連度を算出してもよい。
【0092】
例えば、特許明細書の場合、「背景、課題、手段、及び効果」について類似文書を探したいときは、検索対象文書の「背景、課題、手段、及び効果」のみを検索対象にすればよく、「実施の形態1」などは、検索の対象外とすることができる。
【0093】
また、「実施の形態1」について、類似文書を探したい場合、検索対象文書の各実施の形態を検索対象にし、「背景、課題、手段、及び効果」は、検索の対象外とすることができる。さらに、「英語の翻訳文が存在する」類似文書を探したい場合、「英語の翻訳文が存在する」検索対象文書の各実施の形態を検索対象にすることができる。
【0094】
全文検索において、関連度を算出する文章ブロックTBは、例えば、インデックスファイルに含まれる情報に基づいて、自動で選択される。または、検索用文書STDを入力する際に、関連度を算出する文章ブロックTBを指定してもよい。
【0095】
このように、検索用文章ブロックSTB(i)に応じて、検索対象となる文章ブロックを変えることで、処理量を削減し、文書検索にかかる時間を短縮することができる。
【0096】
文書検索方法の例1では、検索用文章ブロックSTB(i)を、全文検索の一つの検索条件として用いる場合を示す。なお、後述するように、検索用文章ブロックSTB(i)に含まれる各文を、全文検索の検索条件として用いてもよい(文書検索方法の例2参照)。つまり、検索条件の数が、検索用文章ブロックSTB(i)に含まれる文の数だけあってもよい。
【0097】
全文検索方法に特に限定は無く、逐次検索、インデックス検索等を用いることができる。
【0098】
特に、インデックス検索は、検索対象である文章ブロックTBが多い場合であっても検索速度が低下しにくいため、好ましい。
【0099】
インデックス検索では、あらかじめ検索対象となる文章ブロックTBを走査しておき、高速な検索が可能になるようなインデックスファイルを準備しておく。
【0100】
インデックスファイルを構成する文字列を抽出する方法に特に限定は無く、わかち書き(単語をスペースで区切ること)、形態素解析、N-gram(N文字インデックス法、Nグラム法などともいう)等を用いることができる。
【0101】
特に、N-gramは、形態素解析に比べて、完全一致の検索に有利であり、専門用語、新語、略語などが問題になりにくいため、好ましい。
【0102】
関連度の算出には、例えば、TF-IDF(Term Frequency-Inverse Document Frequency)を用いることが好ましい。TF値は、ある文章ブロック内での各単語の出現頻度を表し、IDF値は、単語が一部の文章ブロックに集中して出現する度合いを表す。ある単語が1つの文章ブロックに多く出現するほど、当該単語の当該文章ブロックにおけるTF値は高くなる。多くの文章ブロックに出現する単語のIDF値は小さく、一部の文章ブロックにのみ出現する単語のIDF値は高くなる。各単語のTF値とIDF値の積を求めることで、当該単語が文章ブロックを特徴づける単語であるかどうかのスコアを算出することができる。
【0103】
なお、関連度の算出は、TF-IDFを用いた方法に限定されない。
【0104】
例えば、オープンソースの検索エンジンライブラリであるApache Luceneを用いて、全文検索を行うことができる。
【0105】
図3Bでは、検索用文章ブロックSTB(1)に対する関連度を算出する例を示す。また、検索対象である第1の対象110(1)が、各検索対象文書TDが有する1つ目の文章ブロックTB(1)である例を示す。
【0106】
[ステップA4:第1の対象110(i)の中から第2の対象120(i)を決定]
次に、関連度の高さに基づいて、第1の対象110(i)の中から第2の対象120(i)を決定する。
【0107】
第2の対象120(i)に含まれる文章ブロックTBの数は、特に限定されない。第2の対象120(i)は、次のステップで類似度を算出する対象となる。全文検索に比べて、類似度を算出する処理は、所要時間が長くなりやすい。第1の対象110(i)の中から第2の対象120(i)を決定し、対象を絞り込んだ後に類似度を算出することで、文書検索にかかる時間を短縮することができる。
【0108】
例えば、ステップA3における全文検索の結果を、関連度の高い順にソートすることで、検索用文章ブロックSTB(i)に対する関連度の高い文章ブロックTBを把握することができる。
【0109】
図3Cでは、検索用文章ブロックSTB(1)に対する関連度の高い上位10個の文章ブロックTBを第2の対象120(1)として用いる例を示す。図3Cでは、一例として、文章ブロックTB4(1)が1位(Rank 1)、文章ブロックTB1(1)が2位(Rank 2)、そして、文章ブロックTB9(1)が10位(Rank 10)である場合を示す。
【0110】
[ステップA5:検索用文章ブロックSTB(i)に対する類似度の算出]
次に、検索用文章ブロックSTB(i)に対する類似度を算出する。具体的には、検索用文章ブロックSTB(i)に含まれる文ごとに、第2の対象120(i)に含まれる文それぞれとの類似度を算出する。
【0111】
本発明の一態様の文書検索方法では、文と文との間の類似度を求める。具体的には、文同士の字面の一致度に基づいて、類似度を算出することが好ましい。
【0112】
例えば、文書の差分を求めるアルゴリズムであるdiffを用いて、類似度を算出することができる。
【0113】
まず、図4Aに示すように、検索用文章ブロックSTB(1)の1つ目の文STS1と、第2の対象120(1)に含まれる文それぞれとの類似度を算出する。
【0114】
次に、図4Bに示すように、検索用文章ブロックSTB(1)の2つ目の文STS2と、第2の対象120(1)に含まれる文それぞれとの類似度を算出する。同様に、検索用文章ブロックSTB(1)の各文と、第2の対象120(1)に含まれる文それぞれとの類似度を算出する。
【0115】
そして、図4Cに示すように、検索用文章ブロックSTB(1)の最後の文STSp(pは1以上の整数)まで類似度の算出を行うことで、検索用文章ブロックSTB(1)に含まれる全ての文について、第2の対象120(1)に含まれる文それぞれとの類似度を算出する。なお、図4Cでは、pが3以上の整数である例を示す。
【0116】
なお、検索用文章ブロックSTB(1)の複数の文に対する類似度の算出を、並列で行ってもよい。例えば、図4Aに示す処理と、図4Bに示す処理と、図4Cに示す処理は、全て並列で行われてもよい。
【0117】
算出した類似度を用いることで、検索用文章ブロックSTB(1)に類似する文章ブロックTBを求めることができる。
【0118】
例えば、各文章ブロックTBにおいて、検索用文章ブロックSTB(1)の各文に対する類似度が最も高い文の類似度の和を算出し、当該和を、検索用文章ブロックSTB(1)の文の数で割ることで、当該文章ブロックTBの、検索用文章ブロックSTB(1)に対する規格化類似度を求めることができる。
【0119】
図5Aでは、文章ブロックTB4(1)において、検索用文章ブロックSTB(1)の1つ目の文STS1に対する類似度が最も高い文は1つ目の文S1(類似度は1)であり、2つ目の文STS2に対する類似度が最も高い文は2つ目の文S2(類似度は0.9)であり、最後の文STSpに対する類似度が最も高い文は3つ目の文S3(類似度は0.5)である。これらp個の類似度を足し、文の数pで割ることで、文章ブロックTB4(1)の、検索用文章ブロックSTB(1)に対する規格化類似度を求めることができる。
【0120】
なお、文同士の類似度のうち、閾値以上の値を用いると、検索の精度を高めることができるため、好ましい。例えば、閾値が0.8である場合、図5Aに示す文章ブロックTB4(1)において、最後の文STSpに対する類似度が最も高い文S3の類似度は0.5であるため、類似度の和を算出する際に用いない(0とみなす)ことになる。
【0121】
[ステップA6:結果の出力]
そして、検索用文章ブロックSTB(i)に対する規格化類似度が高い文章ブロックTBを出力する。
【0122】
図5Bは、規格化類似度が高い順に文章ブロックTB(Block)を並べた例である。また、Scoreとして、規格化類似度を百分率で表す例を示す。
【0123】
ステップA3で行った全文検索では、文や単語の順番は考慮されないため、算出される関連度は類似度とは異なる。ステップA5で類似度を算出することで、ステップA4(図3C)で第2の対象120(1)として決定した10個の文章ブロックTBを、検索用文章ブロックSTB(1)に対する類似性の高い順番に並べることができる(図5B)。
【0124】
以上のように、検索用文書STDを検索用文章ブロックSTBに分割し、類似する文章ブロックを検索することで、検索用文章ブロックSTBに対して、類似する文書(文章ブロックTB)を検索することができる。これにより、検索用文書STD全体を検索条件に用いる場合や、検索対象が文書全体である場合に比べて、類似箇所の対応関係を把握することが容易となる。
【0125】
また、検索対象となる文章ブロックを、第1の対象、第2の対象と順に絞り込んだ後に、類似度の算出を行うため、文書検索にかかる時間を短縮することができる。
【0126】
<文書検索方法の例2>
次に、図6図9を用いて、ステップA3以降の変形例を説明する。具体的には、検索用文章ブロックSTB(i)に含まれる各文を、全文検索の検索条件として用いる場合について説明する。
【0127】
[ステップA3:検索用文章ブロックSTB(i)に対する関連度の算出]
文書検索方法の例2におけるステップA3では、検索用文章ブロックSTB(i)に含まれる各文を検索条件に用いて全文検索を行う。これにより、検索対象に含まれる文それぞれの、検索用文章ブロックSTB(i)に含まれる各文に対する関連度を算出する。
【0128】
ここで、全ての文章ブロックTBについて、検索用文章ブロックSTB(i)に含まれる各文に対する関連度を算出してもよく、一部の文章ブロックTBについて、検索用文章ブロックSTB(i)に含まれる各文に対する関連度を算出してもよい。
【0129】
検索用文章ブロックSTB(i)に応じて、検索対象となる文章ブロックを変えることで、処理量を削減し、文書検索にかかる時間を短縮することができる。
【0130】
全文検索方法及び関連度の算出の方法は、文書検索方法の例1と同様の方法を用いることができる。
【0131】
まず、図6Aに示すように、検索用文章ブロックSTB(1)の1つ目の文STS1を検索条件に用いて全文検索を行うことで、第1の対象110(1)に含まれる各文の、1つ目の文STS1に対する関連度を算出する。なお、第1の対象110(1)に含まれる文とは、第1の対象110(1)に含まれる複数の文章ブロックTBを構成する文を指す。
【0132】
次に、図6Bに示すように、検索用文章ブロックSTB(1)の2つ目の文STS2を検索条件に用いて全文検索を行うことで、第1の対象110(1)に含まれる各文の、2つ目の文STS2に対する関連度を算出する。同様に、検索用文章ブロックSTB(1)の各文に対する関連度を算出する。
【0133】
そして、図6Cに示すように、検索用文章ブロックSTB(1)の最後の文STSp(pは2以上の整数)まで関連度の算出を行うことで、第1の対象110(1)に含まれる文の、検索用文章ブロックSTB(1)に含まれる各文に対する関連度を算出する。なお、図6Cでは、pが3以上の整数である例を示す。
【0134】
なお、検索用文章ブロックSTB(1)の各文を検索条件に用いた全文検索を、並列で行ってもよい。例えば、図6Aに示す処理と、図6Bに示す処理と、図6Cに示す処理は、全て並列で行われてもよい。
【0135】
[ステップA4:第1の対象110(i)の中から第2の対象120(i)を決定]
次に、検索用文章ブロックSTB(i)に含まれる文ごとに、関連度の高さに基づいて、第1の対象110(i)に含まれる文の中から第2の対象120(i)を決定する。
【0136】
第2の対象120(i)に含まれる文の数は、特に限定されない。第2の対象120(i)は、次のステップで類似度を算出する対象となる。全文検索に比べて、類似度を算出する処理は、所要時間が長くなりやすい。第1の対象110(i)の中から第2の対象120(i)を決定し、対象を絞り込んだ後に類似度を算出することで、文書検索にかかる時間を短縮することができる。
【0137】
例えば、ステップA3における全文検索の結果を、関連度の高い順にソートすることで、検索用文章ブロックSTB(i)に含まれる各文に対する関連度の高い文を把握することができる。
【0138】
図7Aでは、検索用文章ブロックSTB(1)の1つ目の文STS1に対する関連度の高い上位300個の文を第2の対象120(1)(STS1)として用いる例を示す。図7Aでは、一例として、文章ブロックTB4(1)の1つ目の文TB4(1)_S1が1位(Rank 1)、文章ブロックTB3(1)の1つ目の文TB3(1)_S1が2位(Rank 2)、そして、文章ブロックTB6(1)の6つ目の文TB6(1)_S6が300位(Rank 300)である場合を示す。
【0139】
図7Bでは、検索用文章ブロックSTB(1)の2つ目の文STS2に対する関連度の高い上位300個の文を第2の対象120(1)(STS2)として用いる例を示す。図7Bでは、一例として、文章ブロックTB1(1)の2つ目の文TB1(1)_S2が1位(Rank 1)、文章ブロックTB3(1)の2つ目の文TB3(1)_S2が2位(Rank 2)、そして、文章ブロックTB62(1)の8つ目の文TB62(1)_S8が300位(Rank 300)である場合を示す。
【0140】
そして、図7Cに示すように、検索用文章ブロックSTB(1)の最後の文STSpに対する関連度の高い上位300個の文として、第2の対象120(1)(STSp)を決定する。図7Cでは、一例として、文章ブロックTB2(1)の9つ目の文TB2(1)_S9が1位(Rank 1)、文章ブロックTB6(1)の8つ目の文TB6(1)_S8が2位(Rank 2)、そして、文章ブロックTB7(1)の12個目の文TB7(1)_S12が300位(Rank 300)である場合を示す。以上のように、検索用文章ブロックSTB(1)に含まれる全ての文について、それぞれ、第2の対象120(1)を決定する。同様に、検索用文章ブロックSTB(i)に含まれる全ての文について、それぞれ、関連度の高さに基づいて、第1の対象110(i)に含まれる文の中から第2の対象120(i)を決定する。
【0141】
[ステップA5:検索用文章ブロックSTB(i)に対する類似度の算出]
次に、検索用文章ブロックSTB(i)に対する類似度を算出する。具体的には、検索用文章ブロックSTB(i)に含まれる文ごとに、第2の対象120(i)に含まれる文それぞれとの類似度を算出する。
【0142】
類似度の算出方法は、文書検索方法の例1と同様の方法を用いることができる。
【0143】
まず、図8Aに示すように、検索用文章ブロックSTB(1)の1つ目の文STS1と、第2の対象120(1)(STS1)に含まれる文それぞれとの類似度を算出する。
【0144】
次に、図8Bに示すように、検索用文章ブロックSTB(1)の2つ目の文STS2と、第2の対象120(1)(STS2)に含まれる文それぞれとの類似度を算出する。同様に、検索用文章ブロックSTB(1)の各文と、第2の対象120(1)に含まれる文それぞれとの類似度を算出する。
【0145】
そして、図8Cに示すように、検索用文章ブロックSTB(1)の最後の文STSpまで類似度の算出を行うことで、検索用文章ブロックSTB(1)に含まれる全ての文について、第2の対象120(1)に含まれる文それぞれとの類似度を算出する。
【0146】
なお、検索用文章ブロックSTB(1)の複数の文に対する類似度の算出を、並列で行ってもよい。例えば、図8Aに示す処理と、図8Bに示す処理と、図8Cに示す処理は、全て並列で行われてもよい。
【0147】
算出した類似度を用いることで、検索用文章ブロックSTB(1)に類似する文章ブロックTBを求めることができる。
【0148】
例えば、各文章ブロックTBにおいて、検索用文章ブロックSTB(1)の各文に対する類似度が最も高い文の類似度の和を算出し、当該和を、検索用文章ブロックSTB(1)の文の数で割ることで、当該文章ブロックTBの、検索用文章ブロックSTB(1)に対する規格化類似度を求めることができる。
【0149】
図9Aでは、文章ブロックTB4(1)において、検索用文章ブロックSTB(1)の1つ目の文STS1に対する類似度が最も高い文は1つ目の文S1(類似度は1)であり、2つ目の文STS2に対する類似度が最も高い文は2つ目の文S2(類似度は0.90)である。このように、p個の各文に対する最も高い類似度を足し、文の数pで割ることで、文章ブロックTB4(1)の、検索用文章ブロックSTB(1)に対する規格化類似度を求めることができる。なお、文章ブロックTB4(1)において、26個目の文S26も、検索用文章ブロックSTB(1)の1つ目の文STS1に対する類似度が高い(類似度0.80)が、1つ目の文S1よりも低いため、S26の類似度の値は使用しない。
【0150】
なお、文同士の類似度のうち、閾値以上の値を用いると、検索の精度を高めることができるため、好ましい。図9Aに示す文章ブロックTB9(1)において、検索用文章ブロックSTB(1)の1つ目の文STS1に対する類似度が最も高い文は2つ目の文S2(類似度は0.70)であり、2つ目の文STS2に対する類似度が最も高い文は1つ目の文S1(類似度は0.60)であり、最後の文STSpに対する類似度が最も高い分は3つ目の文S3(類似度は0.60)である。閾値を用いない場合、p個の各文に対する最も高い類似度の和の算出に、これら3つの文の類似度の値が使用される。一方、例えば、閾値が0.8である場合、これら3つの文の類似度の値は、閾値未満であるため、類似度の和を算出する際に用いない(0とみなす)ことになる。
【0151】
[ステップA6:結果の出力]
そして、検索用文章ブロックSTB(i)に対する規格化類似度が高い文章ブロックTBを出力する。
【0152】
図9Bは、規格化類似度が高い順に文章ブロックTBを並べた例である。また、Scoreとして、規格化類似度を百分率で表す例を示す。
【0153】
文書検索方法の例2では、検索用文章ブロックSTB(i)に含まれる文ごとに、第1の対象110(i)の中から第2の対象120(i)となる文を決定する。したがって、文章ブロックTBに含まれる文のうち、検索用文章ブロックSTB(i)に含まれる文との関連性が高い文のみ、当該検索用文章ブロックSTB(i)に含まれる文との類似度を算出することができる。文単位で対象を絞り込むことで、文章ブロック単位で対象を絞り込む場合に比べて、類似度の高い文(及び文章ブロック)の取りこぼしを抑制でき、かつ、類似度の算出に要する時間を短縮することができる。また、実際は類似していない文章ブロックTBの類似度が高くなることを防止できる。
【0154】
例えば、文書検索方法の例2を用いることで、文書検索方法の例1(図5B)では上位10位にならなかった文章ブロックTB7(1)、TB3(1)、TB6(1)が上位10位になる、ということも起こりうる(図9B)。
【0155】
文書検索方法の例2は、文書検索方法の例1に比べて、残りの部分の類似性が極めて低くても、類似性が極端に高い部分を有する(例えば、完全一致の文章を含む)文章ブロックの類似度を高く算出することができる。
【0156】
<文書検索方法の例3>
次に、複数の検索用文章ブロックSTBについて、類似する文章ブロックを逐次検索する方法について説明する。なお、文書検索方法の例3では、全ての検索用文章ブロックSTBについて、類似する文章ブロックを検索する例を示すが、これに限定されず、一部の検索用文章ブロックSTBについて、類似する文章ブロックを検索してもよい。図10に、文書検索方法のフローチャートを示す。
【0157】
なお、検索を行う前段階の処理については、文書検索方法の例1と同様であるため、説明を省略する。
【0158】
[ステップB1:複数の検索用文章ブロックSTB(1)~STB(w)の作成]
まず、検索用文書STDを分割することで、複数の検索用文章ブロックSTBを作成する。ここでは、w個(wは2以上の整数)の検索用文章ブロック(検索用文章ブロックSTB(1)から検索用文章ブロックSTB(w))に分割する例を示す。ステップB1は、図3Aに示すステップA1と同様に行うことができる。
【0159】
[ステップB2:検索用文章ブロックSTB(i)の選択(i=1)]
次に、w個の検索用文章ブロックSTBの中から、検索を行う検索用文章ブロックSTB(i)(iは、1以上w以下の整数)を選択する。
【0160】
なお、一部または全部の検索用文章ブロックSTBについて、類似する文章ブロックを検索する順番は特に限定されない。
【0161】
文書検索方法の例3では、検索用文章ブロックSTB(1)から順に検索を行う例を示す。そのため、ステップB2では、i=1を選択する。
【0162】
[ステップB3:検索用文章ブロックSTB(i)に対する関連度の算出]
次に、検索用文章ブロックSTB(i)に対する関連度を算出する。
【0163】
ステップB2でi=1を選択したため、1回目のステップB3では、検索用文章ブロックSTB(1)に対する関連度を算出する。1回目のステップB3は、図3Bに示すステップA3と同様に行うことができる。
【0164】
[ステップB4:第1の対象110(i)の中から第2の対象120(i)を決定]
次に、関連度の高さに基づいて、第1の対象110(i)の中から第2の対象120(i)を決定する。
【0165】
ステップB2でi=1を選択したため、1回目のステップB4では、関連度の高さに基づいて、第1の対象110(1)の中から第2の対象120(1)を決定する。1回目のステップB4は、図3Cに示すステップA4と同様に行うことができる。
【0166】
[ステップB5:検索用文章ブロックSTB(i)に対する類似度の算出]
次に、検索用文章ブロックSTB(i)に対する類似度を算出する。具体的には、検索用文章ブロックSTB(i)に含まれる文ごとに、第2の対象120(i)に含まれる文それぞれとの類似度を算出する。
【0167】
ステップB2でi=1を選択したため、1回目のステップB5では、検索用文章ブロックSTB(1)に対する類似度を算出する。1回目のステップB5は、図4A図4C及び図5Aに示すステップA5と同様に行うことができる。
【0168】
[ステップB6:全ての検索用文章ブロックSTBに対して類似度を算出したか(i=w?)]
以上のステップB3からステップB5までの処理を、全ての検索用文章ブロックSTBに対して順に行う。類似度を算出していない検索用文章ブロックSTBがある場合は、ステップB7を経由してステップB3に戻る。そして、全ての検索用文章ブロックSTBに対して類似度を算出した場合は、ステップB8に進む。
【0169】
[ステップB7:iに1を足す(i=i+1)]
ステップB6からステップB3に戻る際に、ステップB7として、iに1を加える。つまり、2回目のステップB3~B5は、検索用文章ブロックSTB(2)に対して行う。このように、検索用文章ブロックSTB(w)に対して類似度を算出するまで、ステップB3~B5を繰り返し行う。
【0170】
[ステップB8:結果の出力]
そして、各検索用文章ブロックSTBに対する規格化類似度が高い文章ブロックTBを出力する。
【0171】
図12は、検索用文章ブロックSTB別で、規格化類似度が高い順に文章ブロックTBを並べた例である。さらに、図5Bに示すScoreのように、類似度の高さを示す値を出力してもよい。
【0172】
以上のように、検索用文章ブロックSTBごとに、類似する文章ブロックを順に検索した後、全ての結果を出力することで、検索用文書STDの各検索用文章ブロックSTBに対して、類似する文書(文章ブロックTB)を検索することができる。
【0173】
<文書検索方法の例4>
次に、複数の検索用文章ブロックSTBについて、並列で、類似する文章ブロックを検索する方法について説明する。なお、文書検索方法の例4では、全ての検索用文章ブロックSTBについて、類似する文章ブロックを検索する例を示すが、これに限定されず、一部の検索用文章ブロックSTBについて、類似する文章ブロックを検索してもよい。図11に、文書検索方法のフローチャートを示す。
【0174】
なお、検索を行う前段階の処理については、文書検索方法の例1と同様であるため、説明を省略する。
【0175】
[ステップC1:複数の検索用文章ブロックSTBの作成]
まず、検索用文書STDを分割することで、複数の検索用文章ブロックSTBを作成する。ここでは、w個(wは2以上の整数)の検索用文章ブロック(検索用文章ブロックSTB(1)から検索用文章ブロックSTB(w))に分割する例を示す。ステップC1は、図3Aに示すステップA1と同様に行うことができる。
【0176】
以降のステップC2~C5の処理は、2個以上の検索用文章ブロックSTBについて、並列で行うことができる。文章検索方法の例4では、w個の検索用文章ブロックSTBについて、並列で行う例を示す。
【0177】
[ステップC2(i):検索用文章ブロックSTB(i)の選択]
次に、w個の検索用文章ブロックSTBの中から、検索を行う検索用文章ブロックSTB(i)(iは、1以上w以下の整数)を選択する。
【0178】
図11に示すステップC2(1)では、i=1を選択する。ステップC2(1)と並行して行われるステップC2(2)では、i=2を選択し、ステップC2(w)では、i=wを選択する。
【0179】
[ステップC3(i):検索用文章ブロックSTB(i)に対する関連度の算出]
次に、検索用文章ブロックSTB(i)に対する関連度を算出する。
【0180】
図11に示すステップC3(1)では、検索用文章ブロックSTB(1)に対する関連度を算出する。ステップC3(1)は、図3Bに示すステップA3と同様に行うことができる。
【0181】
ステップC3(1)と並行して行われるステップC3(2)では、検索用文章ブロックSTB(2)に対する関連度を算出し、ステップC3(w)では、検索用文章ブロックSTB(w)に対する関連度を算出する。
【0182】
[ステップC4(i):第1の対象110(i)の中から第2の対象120(i)を決定]
次に、関連度の高さに基づいて、第1の対象110(i)の中から第2の対象120(i)を決定する。
【0183】
図11に示すステップC4(1)では、関連度の高さに基づいて、第1の対象110(1)の中から第2の対象120(1)を決定する。ステップC4(1)は、図3Cに示すステップA4と同様に行うことができる。
【0184】
ステップC4(1)と並行して行われるステップC4(2)では、関連度の高さに基づいて、第1の対象110(2)の中から第2の対象120(2)を決定し、ステップC4(w)では、関連度の高さに基づいて、第1の対象110(w)の中から第2の対象120(w)を決定する。
【0185】
[ステップC5:検索用文章ブロックSTB(i)に対する類似度の算出]
次に、検索用文章ブロックSTB(i)に対する類似度を算出する。具体的には、検索用文章ブロックSTB(i)に含まれる文ごとに、第2の対象120(i)に含まれる文それぞれとの類似度を算出する。
【0186】
図11に示すステップC5(1)では、検索用文章ブロックSTB(1)に対する類似度を算出する。ステップC5(1)は、図4A図4C及び図5Aに示すステップA5と同様に行うことができる。
【0187】
ステップC5(1)と並行して行われるステップC5(2)では、検索用文章ブロックSTB(2)に対する類似度を算出し、ステップC4(w)では、検索用文章ブロックSTB(w)に対する類似度を算出する。
【0188】
[ステップC6:結果の出力]
そして、各検索用文章ブロックSTBに対する規格化類似度が高い文章ブロックTBを出力する。
【0189】
図12は、検索用文章ブロックSTB別で、規格化類似度が高い順に文章ブロックTBを並べた例である。なお、図5Bに示すScoreのように、類似度の高さを示す値を出力してもよい。
【0190】
以上のように、各検索用文章ブロックSTBに類似する文章ブロックを並列で検索した後、全ての結果を出力することで、検索用文書STDの各検索用文章ブロックSTBに対して、類似する文書(文章ブロックTB)を検索することができる。
【0191】
以上のように、本実施の形態の文書検索方法では、検索用文章ブロックに類似する文章ブロックを検索することで、検索用文書の特定の箇所に類似する、検索対象文書の記載箇所を精度よく検索することができる。これにより、検索用文書全体を検索条件に用いる場合や、検索対象が文書全体である場合に比べて、類似箇所の対応関係を把握することが容易となる。
【0192】
また、本実施の形態の文書検索方法では、全文検索結果を用いて、検索用文章ブロックに対する類似度を算出する対象を絞り込む。これにより、文書検索に係る時間を短縮することができる。
【0193】
本実施の形態は、他の実施の形態と適宜組み合わせることができる。また、本明細書において、1つの実施の形態の中に、複数の構成例が示される場合は、構成例を適宜組み合わせることが可能である。
【0194】
(実施の形態2)
本実施の形態では、本発明の一態様の文書検索システムについて図13及び図14を用いて説明する。
【0195】
本実施の形態の文書検索システムは、実施の形態1に示す文書検索方法を用いて、文書を検索することができる。具体的には、事前に準備された文章ブロックを検索の対象として、入力された検索用文書(の検索用文章ブロック)に類似する文書(文章ブロック)を検索することができる。
【0196】
<文書検索システムの構成例1>
図13に、文書検索システム100のブロック図を示す。なお、本明細書に添付した図面では、構成要素を機能ごとに分類し、互いに独立したブロックとしてブロック図を示しているが、実際の構成要素は機能ごとに完全に切り分けることが難しく、一つの構成要素が複数の機能に係わることもあり得る。また、一つの機能が複数の構成要素に係わることもあり得、例えば、処理部103で行われる処理は、処理によって異なるサーバで実行されることがある。
【0197】
文書検索システム100は、少なくとも、処理部103を有する。図13に示す文書検索システム100は、さらに、入力部101、伝送路102、記憶部105、データベース107、及び出力部109を有する。
【0198】
[入力部101]
入力部101には、文書検索システム100の外部から検索用文書STDが供給される。入力部101に供給された検索用文書STDは、伝送路102を介して、処理部103、記憶部105、またはデータベース107に供給される。
【0199】
[伝送路102]
伝送路102は、各種データを伝達する機能を有する。入力部101、処理部103、記憶部105、データベース107、及び出力部109の間のデータの送受信は、伝送路102を介して行うことができる。例えば、検索用文書STD、検索用文章ブロックSTB、検索対象文書TD、及び文章ブロックTBなどのデータが、伝送路102を介して、送受信される。
【0200】
[処理部103]
処理部103は、入力部101、記憶部105、データベース107などから供給されたデータを用いて、演算を行う機能を有する。処理部103は、演算結果を、記憶部105、データベース107、出力部109などに供給することができる。
【0201】
処理部103には、チャネル形成領域に金属酸化物を有するトランジスタを用いることが好ましい。当該トランジスタはオフ電流が極めて低いため、当該トランジスタを記憶素子として機能する容量素子に流入した電荷(データ)を保持するためのスイッチとして用いることで、データの保持期間を長期にわたり確保することができる。この特性を、処理部103が有するレジスタ及びキャッシュメモリのうち少なくとも一方に用いることで、必要なときだけ処理部103を動作させ、他の場合には直前の処理の情報を当該記憶素子に待避させることにより処理部103をオフにすることができる。すなわち、ノーマリーオフコンピューティングが可能となり、文書検索システムの低消費電力化を図ることができる。
【0202】
なお、本明細書等において、チャネル形成領域に酸化物半導体または金属酸化物を用いたトランジスタをOxide Semiconductorトランジスタ、あるいはOSトランジスタと呼ぶ。OSトランジスタのチャネル形成領域は、金属酸化物を有することが好ましい。
【0203】
本明細書等において、金属酸化物(metal oxide)とは、広い意味での金属の酸化物である。金属酸化物は、酸化物絶縁体、酸化物導電体(透明酸化物導電体を含む)、酸化物半導体(Oxide Semiconductorまたは単にOSともいう)などに分類される。例えば、トランジスタの半導体層に金属酸化物を用いた場合、当該金属酸化物を酸化物半導体と呼称する場合がある。つまり、金属酸化物が増幅作用、整流作用、及びスイッチング作用の少なくとも1つを有する場合、当該金属酸化物を、金属酸化物半導体(metal oxide semiconductor)、略してOSと呼ぶことができる。
【0204】
チャネル形成領域が有する金属酸化物はインジウム(In)を含むことが好ましい。チャネル形成領域が有する金属酸化物がインジウムを含む金属酸化物の場合、OSトランジスタのキャリア移動度(電子移動度)が高くなる。また、チャネル形成領域が有する金属酸化物は、元素Mを含む酸化物半導体であると好ましい。元素Mは、アルミニウム(Al)、ガリウム(Ga)、またはスズ(Sn)であることが好ましい。元素Mに適用可能な他の元素としては、ホウ素(B)、シリコン(Si)、チタン(Ti)、鉄(Fe)、ニッケル(Ni)、ゲルマニウム(Ge)、イットリウム(Y)、ジルコニウム(Zr)、モリブデン(Mo)、ランタン(La)、セリウム(Ce)、ネオジム(Nd)、ハフニウム(Hf)、タンタル(Ta)、タングステン(W)などがある。ただし、元素Mとして、前述の元素を複数組み合わせても構わない場合がある。元素Mは、例えば、酸素との結合エネルギーが高い元素である。例えば、酸素との結合エネルギーがインジウムよりも高い元素である。また、チャネル形成領域が有する金属酸化物は、亜鉛(Zn)を含むことが好ましい。亜鉛を含む金属酸化物は結晶化しやすくなる場合がある。
【0205】
チャネル形成領域が有する金属酸化物は、インジウムを含む金属酸化物に限定されない。半導体層は、例えば、亜鉛スズ酸化物、ガリウムスズ酸化物などの、インジウムを含まず、亜鉛を含む金属酸化物、ガリウムを含む金属酸化物、スズを含む金属酸化物などであっても構わない。
【0206】
また、処理部103には、チャネル形成領域にシリコンを含むトランジスタを用いてもよい。
【0207】
また、処理部103には、チャネル形成領域に酸化物半導体を含むトランジスタと、チャネル形成領域にシリコンを含むトランジスタと、を組み合わせて用いることが好ましい。
【0208】
処理部103は、例えば、演算回路または中央演算装置(CPU:Central Processing Unit)等を有する。
【0209】
処理部103は、DSP(Digital Signal Processor)、GPU(Graphics Processing Unit)等のマイクロプロセッサを有していてもよい。マイクロプロセッサは、FPGA(Field Programmable Gate Array)、FPAA(Field Programmable Analog Array)等のPLD(Programmable Logic Device)によって実現された構成であってもよい。処理部103は、プロセッサにより種々のプログラムからの命令を解釈し実行することで、各種のデータ処理及びプログラム制御を行うことができる。プロセッサにより実行しうるプログラムは、プロセッサが有するメモリ領域及び記憶部105のうち少なくとも一方に格納される。
【0210】
処理部103はメインメモリを有していてもよい。メインメモリは、RAM等の揮発性メモリ、及びROM等の不揮発性メモリのうち少なくとも一方を有する。
【0211】
RAMとしては、例えばDRAM(Dynamic Random Access Memory)、SRAM(Static Random Access Memory)等が用いられ、処理部103の作業空間として仮想的にメモリ空間が割り当てられ利用される。記憶部105に格納されたオペレーティングシステム、アプリケーションプログラム、プログラムモジュール、プログラムデータ、及びルックアップテーブル等は、実行のためにRAMにロードされる。RAMにロードされたこれらのデータ、プログラム、及びプログラムモジュールは、それぞれ、処理部103に直接アクセスされ、操作される。
【0212】
ROMには、書き換えを必要としない、BIOS(Basic Input/Output System)及びファームウェア等を格納することができる。ROMとしては、マスクROM、OTPROM(One Time Programmable Read Only Memory)、EPROM(Erasable Programmable Read Only Memory)等が挙げられる。EPROMとしては、紫外線照射により記憶データの消去を可能とするUV-EPROM(Ultra-Violet Erasable Programmable Read Only Memory)、EEPROM(Electrically Erasable Programmable Read Only Memory)、フラッシュメモリ等が挙げられる。
【0213】
[記憶部105]
記憶部105は、処理部103が実行するプログラムを記憶する機能を有する。また、記憶部105は、処理部103が生成した演算結果、及び、入力部101に入力されたデータなどを記憶する機能を有していてもよい。
【0214】
記憶部105は、揮発性メモリ及び不揮発性メモリのうち少なくとも一方を有する。記憶部105は、例えば、DRAM、SRAMなどの揮発性メモリを有していてもよい。記憶部105は、例えば、ReRAM(Resistive Random Access Memory、抵抗変化型メモリともいう)、PRAM(Phase change Random Access Memory)、FeRAM(Ferroelectric Random Access Memory)、MRAM(Magnetoresistive Random Access Memory、磁気抵抗型メモリともいう)、またはフラッシュメモリなどの不揮発性メモリを有していてもよい。また、記憶部105は、ハードディスクドライブ(Hard Disc Drive:HDD)及びソリッドステートドライブ(Solid State Drive:SSD)等の記録メディアドライブを有していてもよい。
【0215】
[データベース107]
データベース107は、少なくとも、検索対象文書TD及び文章ブロックTBなどのデータを記憶する機能を有する。また、データベース107は、処理部103が生成した演算結果、及び、入力部101に入力されたデータなどを記憶する機能を有していてもよい。なお、記憶部105及びデータベース107は互いに分離されていなくてもよい。例えば、文書検索システムは、記憶部105及びデータベース107の双方の機能を有する記憶ユニットを有していてもよい。
【0216】
なお、処理部103、記憶部105、及びデータベース107が有するメモリは、それぞれ、非一時的コンピュータ可読記憶媒体の一例ということができる。
【0217】
[出力部109]
出力部109は、文書検索システム100の外部にデータを供給する機能を有する。例えば、処理部103における演算結果を外部に供給することができる。
【0218】
<文書検索システムの構成例2>
図14に、文書検索システム150のブロック図を示す。文書検索システム150は、サーバ151と、端末152(パーソナルコンピュータなど)とを有する。
【0219】
サーバ151は、通信部161a、伝送路162、処理部163a、及びデータベース167を有する。図14では図示しないが、さらに、サーバ151は、記憶部、入出力部などを有していてもよい。
【0220】
端末152は、通信部161b、伝送路168、処理部163b、記憶部165、及び入出力部169を有する。図14では図示しないが、端末152は、さらに、データベースなどを有していてもよい。
【0221】
文書検索システム150の使用者は、端末152から、検索用文書STDを、サーバ151に入力する。検索用文書STDは、通信部161bから通信部161aに送信される。
【0222】
通信部161aが受信した検索用文書STDは、伝送路162を介して、データベース167または記憶部(図示しない)に保存される。または、検索用文書STDは、通信部161aから、直接、処理部163aに供給されてもよい。
【0223】
実施の形態1で説明した、検索用文章ブロックSTBの作成、関連度の算出、及び類似度の算出は、それぞれ、高い処理能力が求められる。サーバ151が有する処理部163aは、端末152が有する処理部163bに比べて処理能力が高い。したがって、これらの処理は、それぞれ、処理部163aで行われることが好ましい。
【0224】
そして、処理部163aにより検索結果が生成される。検索結果は、伝送路162を介して、データベース167または記憶部(図示しない)に保存される。または、検索結果は、処理部163aから、直接、通信部161aに供給されてもよい。その後、サーバ151から、検索結果が、端末152に出力される。検索結果は、通信部161aから通信部161bに送信される。
【0225】
[入出力部169]
入出力部169には、文書検索システム150の外部からデータが供給される。入出力部169は、文書検索システム150の外部にデータを供給する機能を有する。なお、文書検索システム100のように、入力部と出力部が分かれていてもよい。
【0226】
[伝送路162及び伝送路168]
伝送路162及び伝送路168は、データを伝達する機能を有する。通信部161a、処理部163a、及びデータベース167の間のデータの送受信は、伝送路162を介して行うことができる。通信部161b、処理部163b、記憶部165、及び入出力部169の間のデータの送受信は、伝送路168を介して行うことができる。
【0227】
[処理部163a及び処理部163b]
処理部163aは、通信部161a及びデータベース167などから供給されたデータを用いて、演算を行う機能を有する。処理部163bは、通信部161b、記憶部165、及び入出力部169などから供給されたデータを用いて、演算を行う機能を有する。処理部163a及び処理部163bは、処理部103の説明を参照できる。処理部163aは、処理部163bに比べて処理能力が高いことが好ましい。
【0228】
[記憶部165]
記憶部165は、処理部163bが実行するプログラムを記憶する機能を有する。また、記憶部165は、処理部163bが生成した演算結果、通信部161bに入力されたデータ、及び入出力部169に入力されたデータなどを記憶する機能を有する。
【0229】
[データベース167]
データベース167は、検索対象文書TD及び文章ブロックTBを記憶する機能を有する。また、データベース167は、処理部163aが生成した演算結果、及び通信部161aに入力されたデータなどを記憶する機能を有していてもよい。または、サーバ151は、データベース167とは別に記憶部を有し、当該記憶部が、処理部163aが生成した演算結果、及び通信部161aに入力されたデータなどを記憶する機能を有していてもよい。
【0230】
[通信部161a及び通信部161b]
通信部161a及び通信部161bを用いて、サーバ151と端末152との間で、データの送受信を行うことができる。通信部161a及び通信部161bとしては、ハブ、ルータ、モデムなどを用いることができる。データの送受信には、有線を用いても無線(例えば、電波、赤外線など)を用いてもよい。
【0231】
本実施の形態は、他の実施の形態と適宜組み合わせることができる。
【符号の説明】
【0232】
S1:文、S2:文、S3:文、S26:文、STB:検索用文章ブロック、STD:検索用文書、STS1:文、STS2:文、STSp:文、TB:文章ブロック、TB1:文章ブロック、TB2:文章ブロック、TB3:文章ブロック、TB4:文章ブロック、TB6:文章ブロック、TB7:文章ブロック、TB9:文章ブロック、TB62:文章ブロック、TD:検索対象文書、TD1:検索対象文書、TD2:検索対象文書、TDn:検索対象文書、100:文書検索システム、101:入力部、102:伝送路、103:処理部、105:記憶部、107:データベース、109:出力部、110:第1の対象、110(i):第1の対象、120:第2の対象、120(i):第2の対象、150:文書検索システム、151:サーバ、152:端末、161a:通信部、161b:通信部、162:伝送路、163a:処理部、163b:処理部、165:記憶部、167:データベース、168:伝送路、169:入出力部
図1
図2
図3A
図3B
図3C
図4A
図4B
図4C
図5A
図5B
図6A
図6B
図6C
図7A
図7B
図7C
図8A
図8B
図8C
図9A
図9B
図10
図11
図12
図13
図14