JP5142897B2 - 文検索装置,文検索プログラム,文検索方法 - Google Patents
文検索装置,文検索プログラム,文検索方法 Download PDFInfo
- Publication number
- JP5142897B2 JP5142897B2 JP2008232098A JP2008232098A JP5142897B2 JP 5142897 B2 JP5142897 B2 JP 5142897B2 JP 2008232098 A JP2008232098 A JP 2008232098A JP 2008232098 A JP2008232098 A JP 2008232098A JP 5142897 B2 JP5142897 B2 JP 5142897B2
- Authority
- JP
- Japan
- Prior art keywords
- sentence
- search target
- sentences
- case
- search
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
例えば,特許文献1や特許文献2には,入力された文に含まれるキーワードやそれをさらに拡張したキーワードを抽出或いは生成し,そのキーワードを含む文を文書データの中から検索することについて示されている。
さらに,比較的短い事例文章,即ち,複数の事例文が順に並ぶ事例文集合が検索条件として入力された場合に,比較的長い検索対象となる文章,即ち,複数の検索対象文が順に並ぶ検索対象文集合から,前記事例文章が表す文脈やシナリオについて一致度が高い一部の文章(文の集合)を検索したいというニーズもある。この場合,複数の前記事例文の並び順(前後関係)が,検索結果として得たい文章のシナリオや文脈を表す指標となる。従って,上記ニーズは,複数の事例文が順に並ぶ事例文集合(事例文章ともいえる)が入力された場合に,複数の検索対象文が順に並ぶ検索対象文集合(検索対象文章ともいえる)において,前記事例文それぞれと一致度の高い複数の検索対象文が,前記事例文集合における前記事例文の並びの順と同じ順序で登場するときに,それら複数の検索対象文の組合せを,より優先して検索結果に含めたいというニーズであるといえる。
従って,本発明は上記事情に鑑みてなされたものであり,その目的とするところは,検索対象文章(複数の検索対象文が順に並ぶ検索対象文集合)から,入力された事例文章(複数の事例文が順に並ぶ事例文集合)に対して文内容及び複数の文の並びについて一致度の高い文章(文の集合)を検索したいというニーズに対応することができる文検索装置,文検索プログラム及び文検索方法を提供することにある。
(1)検索結果に含めたい文を例示する複数の事例文が順に並ぶ事例文集合の情報を入力して記憶手段に記録する事例文集合入力手段。
(2)前記検索対象文それぞれについて,前記事例文それぞれとの一致度合いの指標値である文一致度を算出する文一致度算出手段。
(3)前記検索対象文それぞれについて,前記事例文それぞれとの間の前記文一致度が高いものを優先して対応する前記事例文である対応事例文を特定する対応事例文特定手段。
(4)複数の前記検索対象文の中から前記事例文それぞれとの間の前記文一致度が高いものを優先して1つ又は複数の代表検索対象文を選択する代表検索対象文選択手段。
(5)前記代表検索対象文それぞれについて,前記検索対象文集合の内での並び順が当該代表検索対象文に対して予め設定された前後の範囲内にある前記検索対象文である前後検索対象文と当該代表検索対象文との間の並びの前後関係が,前記前後検索対象文についての前記対応事例文と当該代表検索対象文についての前記対応事例文との間の前記事例文集合内における並びの前後関係と一致する場合に,当該前後検索対象文における前記対応事例文に対する前記文一致度と当該代表検索対象文における前記対応事例文に対する前記文一致度の一方又は両方を高める方向に補正する文一致度補正手段。
(6)前記検索対象文それぞれについて,前記文一致度補正手段による補正を経た前記文一致度に応じて,検索結果として出力するか否かの判別及び検索結果として出力する優先順位の判別の一方又は両方を行う検索対象文出力判別手段。
なお,「情報を入力」とは,キーボードやマウス等の操作部に対する操作に応じて情報を入力することの他,通信手段を通じて外部装置から情報を入力することや,ハードディスクやDVD等の情報記録媒体に記録(記憶)された情報を読み出して入力すること等,各種の情報入力の態様を含むことを意味する。
同様に,「出力する」とは,通信手段を通じて外部装置に情報を送信することの他,表示部に情報を表示することや,ハードディスクやDVD等の情報記録媒体に情報を記録する(記憶させる)こと等,各種の情報出力の態様を含むことを意味する。
また,本明細書において,「一致度が高い」,「一致度が低い」という記載は,「一致度」を表す数値の高低を意味するものではなく,「一致している度合い」の高低を意味するものである。従って,例えば,「一致度」の数値が小さいほど「一致している度合い」が高いことを意味する場合や,「一致度」がa,b,c,d…等の評価ランクとして表現される場合等も考えられる。同様に,「一致度」の加算/減算は,それぞれ「一致している度合い」を高くする方向/低くする方向に値(評価値)を変更することを意味するものである。従って,「評価値が高い(大きい)」,「評価値が低い(小さい)」という記載も,1つの前記検索対象文と,前記正事例文及び前記負事例文それぞれとの間の「一致している度合い」を統合評価した結果の高低を意味するものである。
例えば,本発明に係る文検索装置が,さらに,次の(7)に示す構成要素を備えればなお好適である。
(7)前記検索対象文,前記積極的事例文及び前記消極的事例文それぞれについて,構文解析処理を施すことにより文中における文法上の属性と語句との対応関係を表す構文解析結果情報を生成する構文解析手段。
この場合,前記文一致度算出手段が,前記検索対象文それぞれについて,前記事例文それぞれとの間で前記構文解析結果情報を比較することにより前記文一致度を算出する。
これにより,複数の前記検索対象文の中から,積極的な検索条件を表す複数の前記事例文それぞれに対し文としての内容(例えば,構文解析結果)の一致度が高い文が検索される。
なお,前記文法上の属性が,文法上の格,品詞,語句の時制,受動態か能動態か,肯定形の語句か否定形の語句か,及び1つの文に複数の単文が含まれる場合におけるある語句が属する単文の他の単文に対する文法上の階層関係の深さのうちの1つ又は複数を含むことが考えられる。
また,例えば,前記代表検索対象文選択手段が,複数の前記検索対象文の中から,前記事例文それぞれとの間の前記文一致度の合計又は平均が高いものから順に予め定められた数の前記代表検索対象文を選択することが考えられる。
また,本発明に係る文検索装置が,さらに,次の(8)に示す構成要素を備え,かつ,前記文一致度算出手段が次の(9)に示す処理を実行すればなお好適である。
(8)前記検索対象文,前記積極的事例文及び前記消極的事例文それぞれに含まれる語句について,記憶手段に記憶されたシソーラス辞書の情報に基づいてカテゴリを判別するカテゴリ判別手段。
(9)前記文一致度算出手段が,前記構文解析結果情報の比較において比較対象となる2つの語句の一致を判別する際に,該2つの語句が一致しない場合には該2つの語句について前記カテゴリ判別手段により判別されたカテゴリの比較によって語句の一致を判別する。
これにより,2つの文の一致度を算出する際に,比較対象となる2つの語句(属性が一致する語句)が表現において異なる場合でも,その語句の意味を広く解釈すれば実質的な意味が同じ或いは類語である(前記シソーラス辞書における前記カテゴリが同じである)場合には,その2つの語句の一致度合いが比較的高い(完全な不一致ではない)として処理され,より柔軟な検索が行われる。なお,シソーラス辞書は,語句(単語)と,語句の上位/下位の関係や同義関係,類義関係等によって分類されたカテゴリ(の識別情報)との対応関係を表す周知の概念辞書である。
また,本発明は,以上に示した本発明に係る文検索装置が備える各構成要素が実行する処理をコンピュータに実行させるための文検索プログラム(予め記憶手段に記憶された複数の検索対象文の中から所望の文を検索し,検索結果を情報出力手段を通じて出力する処理をコンピュータに実行させるための文検索プログラム)として捉えることもできる。
同様に,本発明は,以上に示した本発明に係る文検索装置が備える各構成要素が実行する処理をコンピュータによって実行する文検索方法(予め記憶手段に記憶された複数の検索対象文の中から所望の文を検索し,検索結果を情報出力手段を通じて出力する処理をコンピュータに実行する文検索方法)として捉えることもできる。
ここに,図1は本発明の実施形態に係る文検索装置X(コンピュータ)の概略構成を表すブロック図,図2は文検索装置Xによる文検索処理の手順を表すフローチャート,図3は文検索装置Xが表示装置に表示させる初期画面の一例を表す図,図4は検索対象文の構文解析処理のプロセス及び処理結果の一例を表す図,図5は文検索装置Xにおける文一致度補正処理による補正前後のデータ内容の一例を表す図である。
文検索装置Xは,予めハードディスク等の記憶手段に記憶された検索対象データD0に含まれる複数の検索対象文の中から,その検索対象文と検索条件として入力される複数の文の集合(後述する複数の事例文からなる事例文情報D1)との間で文内容を比較することによって所望の文(検索対象文)を検索して出力する処理を実行するコンピュータである。即ち,コンピュータが備えるCPU1が,予め記憶手段に記憶された文検索プログラム10を実行することにより,そのコンピュータが文検索装置Xとして機能する。言い換えると,前記文検索プログラム10は,コンピュータを文検索装置Xとして機能させるためのプログラムである。
ここで,前記検索対象データD0は,複数の検索対象文が順に並ぶ検索対象文集合のデータである。また,前記事例文情報D1は,検索結果に含めたい文を例示する複数の事例文が順に並ぶ事例文集合の情報である。
前記CPU1は,各種プログラムを実行することにより各種の演算処理を行う演算装置(プロセッサ)である。前記RAM2は,前記CPU1により実行されるプログラムや一時記憶データが展開される高速メモリである。前記ROM3は,前記CPU1により実行されるBIOS等のプログラムが予め記憶された不揮発性メモリである。前記入力装置4は,キーボードやマウス等,操作部に対する操作に応じて情報を入力する情報入力手段である。前記表示装置5は,前記CPU1による演算結果等の各種情報を映像として出力する液晶表示パネルやCRT等である。前記データ記憶部7は,前記CPU1により実行或いは参照される前記文検索プログラム10や各種情報が記憶されるハードディスク等の情報記憶手段である。
このデータ記憶部7には,検索対象データD0,事例文情報D1,検索文解析結果情報D2,事例文解析結果情報D3,構文解析辞書情報D4及びシソーラス辞書情報D5などの情報が記憶される他,前記CPU1により実行される文検索プログラム10も記憶される。なお,文検索プログラム10には,周知の構文解析プログラム(プログラムモジュール)も含まれる。なお,前記検索文解析結果情報D2及び前記事例文解析結果情報D3を総称して構文解析結果情報D2,D3という。
なお,前記データ記憶部7には,当該文検索装置X(コンピュータ)を構成する各ハードウェアと前記文検索プログラム10を含む各種アプリケーションプログラムとの間の中継処理を行うOS(オペレーションシステム)及びファイルシステムのプログラムも記憶されている(不図示)。
まず,CPU1は,各種ワーク変数を初期化する処理を実行する(S1)。この文検索処理で用いられワーク変数(ステップS1で初期化される変数)としては,構文解析の結果の情報が設定される解析結果変数S,P,カウンタ変数i,j,k,後述する統合一致度,最大一致度及び対応事例文番号の各々を表す変数Esum,Emax及びQ,検索対象文を検索した結果の情報が設定される変数y等がある。
次に,CPU1は,所定の初期画面g0(図3参照)を前記表示装置5に表示させ,その初期画面g0の表示中における前記入力装置4に対する操作入力に応じて,次の(S2−1)〜(S2−3)に示す各処理を実行する(S2)。
(S2−1)複数の検索対象文が順に並ぶ検索対象文の集合のデータである前記検索対象データD0を指定する処理。
(S2−2)複数の事例文が順に並ぶ事例文集合の情報(前記事例文情報D1)を入力して前記データ記憶部7に記録する(記憶させる)事例文情報入力処理。
(S2−3)検索処理の開始操作を検知する処理。
ここで,前記事例文は,検索結果に含めたい文を例示する文である。
なお,ステップS2の処理を実行するCPU1が,前記事例文情報入力手段の一例である。
前記初期画面g0には,検索対象フォルダ名入力枠g1と,参照ボタンg2と,検索結果表示枠g3と,事例文入力枠g4と,検索実行ボタンg5とが含まれる。
ステップS2において,複数の検索対象文を含む文章のデータである前記検索対象データD0を指定する処理は,そのデータが存在するフォルダ名(以下,検索対象フォルダ名という)を入力する処理である。
図3における前記検索対象フォルダ名入力枠g1は,前記検索対象フォルダ名の入力枠(情報入力枠)である。CPU1は,この検索対象フォルダ名入力枠g1に対し前記入力装置4におけるキーボードを通じて入力されたフォルダ名を前記検索対象フォルダ名として入力する処理の他,前記参照ボタンg2の操作に応じて前記初期画面g0に前記データ記憶部7内のフォルダ名のリスト(選択肢)を表示させ,そのリストの中から前記入力装置4におけるマウス等を通じた選択操作に応じて1つ又は複数のフォルダ名を選択し,選択したフォルダ名を前記検索対象フォルダ名として入力する処理も実行する。以後,CPU1は,入力された前記検索対象フォルダ名により特定されるフォルダ内に存在する1又は複数の文書データを参照し,その文書データに含まれる複数の文を検索対象文として文検索処理を実行する。
なお,CPU1が,不図示の通信手段(通信インターフェース)を通じて外部装置から前記検索対象フォルダ名,前記事例文情報D1を入力することや,ハードディスクやDVD等の情報記録媒体に記録(記憶)された情報を読み出すことにより同情報を入力すること等も考えられる。
また,ステップS2において,CPU1が実行する検索処理の開始操作の検知処理は,前記初期画面g0における前記検索実行ボタンg5が前記入力装置4におけるマウス等によって操作されたことを検知する処理である。
そして,CPU1は,検索処理の開始操作があったことを検知すると,前記検索対象データD0内の各検索対象文及び前記事例文情報D1内の各事例文について,周知の構文解析処理を施す。そして,CPU1は,その構文解析処理によって文中における文法上の属性と語句との対応関係を表す構文解析結果情報である前記検索文解析結果情報D2及び前記事例文解析結果情報D3を生成し,それらの情報D2,D3を前記データ記憶部7に記録する(S3,前記構文解析手段の一例)。このステップS3の処理は,CPU1が,周知の構文解析プログラムを実行することによって実現される。
例えば,前記CPU1は,前記解析対象文について,周知の形態素解析処理を実行し,その解析結果を前記データ記憶部7に一次的に記録する。これにより,前記解析対象文が語句(単語)ごとに区分され,その結果がデータ記憶部7に記録される。
さらに,CPU1は,形態素解析処理の結果をデータ記憶部7から読み出しつつ,周知の係り受け解析処理等を実行することにより,前記解析対象文を,それに含まれる単文ごとに,前記解析対象文の文中における文法上の属性と,その単文に含まれる語句との対応関係を表す構文解析結果情報(前記検索文解析結果情報D2及び前記事例文解析結果情報D3)を生成する。その構文解析結果情報D2,D3は,単文ごとに1つのレコードが構成され,そのレコードは,その単文が属する前記解析対象文の識別番号のフィールド(文番号フィールド),及び複数の文法上の属性ごとに設定された複数のフィールド(属性フィールド)それぞれに対応づけられたデータの集合である。
例えば,前記解析対象文が,「彼が来た。」という文のように,主節一つからのみ構成される文(単文)である場合,その解析対象文の構文解析結果情報は一つのレコードに展開される。一方,前記解析対象文が,「彼が加入したことにより,作業が円滑化した。」という文のように,複数(この例では,2つ)の単文が接続詞でつながれているような複文である場合や,「彼が帰り,彼女が来た。」という文のように複数(この例では2つ)の単文が並列された「重文」である場合には,その解析対象文の構文解析結果情報は,単文ごとの複数のレコードに展開される。
ここで,文法上の属性(構文解析結果情報D2,D3における属性フィールド)としては,文法上の格(ハ格,ガ格,ヲ格など),品詞(形容詞,動詞など),語句の時制(現在形,過去形等),受動態か能動態か,肯定形の語句か否定形の語句か,及び1つの文に複数の単文が含まれる場合におけるある語句が属する単文の他の単文に対する文法上の階層関係の深さ等が考えられる。
例えば,「本を買った店は有名だ。」という文について構文解析処理が実行された場合について説明する。
この場合,CPU1は,前記構文解析辞書情報D4の参照により品詞が動詞である語句「だ」を特定し,この動詞「だ」を含む深さd34が第0層の節(即ち,主節)「有名だ」を特定する。さらに,CPU1は,前記構文解析辞書情報D4の参照により品詞が動詞である語句「買った」を特定し,この動詞「買った」を含む深さd34が第1層の節「本を買った」を特定する。
このように,CPU1は,構文解析処理を実行することにより,前記解析対象文それぞれについて,その文に含まれる単文(節)の前記解析対象文の文中における階層の深さd34(他の単文に対する文法上の階層関係の深さ)を判別し,その判別結果を「深さフィールド」(属性フィールドの一例)のデータとして前記データ記憶部7に記録する。この深さd34は,その値(内容)が0層であるか否かにより,その単文(節)が主節であるか否かを特定する情報でもある。
また,前記CPU1は,構文解析処理を実行して前記構文解析辞書情報D4を参照することにより,品詞d25が名詞である語句とその語句に付加されている助詞の語句とを特定し,さらに,その組み合わせに基づいて語句の文法上の格d55(ハ格,ガ格,ヲ格など)を特定し,その特定結果を格フィールド(ハ格フィールド,ガ格フィールド,ヲ格フィールド等)のデータとして前記データ記憶部7に記録する。なお,図4における「ハ格」,「ガ格」及び「ヲ格」は,それぞれ「未格」,「主格」及び「目的格」と同義である。このように,構文解析結果情報D2,D3は,文中における文法上の属性と語句との対応関係を表す情報である。
なお,図4には図示されていないが,CPU1は,構文解析処理を実行して前記構文解析辞書情報D4を参照することにより,前記解析対象文に含まれる各語句について,品詞が動詞である語句が受動態であるか能動態であるか,及び肯定形の語句(「…である」等)であるか否定形の語句(「…ではない」等)であるかについても自動判別し,その判別結果を対応する属性フィールドのデータとして前記データ記憶部7に記録する。
ここで,「語句が否定形である」ということは,品詞が動詞である語句に付随する語句が否定形の属性を有すること,即ち,品詞が動詞である語句に,当該文が否定文であることを表す語句が付随していること,と等価であり,それ以外の状態が,「語句が肯定形である」状態である。従って,肯定形の語句であるか否定形の語句であるかの情報は,当該文が肯定文であるか否定文であるかを表す情報である。例えば,構文解析処理において,「停止せず」という動詞の語句は,「停止」+「する」+「ぬ」という語句に分解され,動詞の語句に「ぬ」という否定形の語句(否定の助動詞)が付随しているため,「停止せず」という語句を含む文は,否定文であると判別される。
以上のようにしてCPU1は,ステップS3において,前記検索対象文それぞれについての構文解析結果の情報である前記検索文解析結果情報D2と,前記事例文それぞれについての構文解析結果の情報である前記事例文解析結果情報D3とを生成し,それらを前記データ記憶部7に記録する。
以上に示したような構文解析処理が終了すると,次に,CPU1は,構文解析処理によって区分された語句(前記検索対象データD0及び前記事例文情報D1に含まれる語句)それぞれについて,前記シソーラス辞書情報D5に基づいてそのカテゴリd26を判別し,その判別結果を判別対象となった語句に対応づけて構文解析結果情報D2,D3に含めて前記データ記憶部7に記録する(図4参照)。
前述したように,前記シソーラス辞書情報D5は,複数の語句とその語句それぞれのカテゴリの識別情報(同義語及び類義語の区分ごとに割り当てられた識別情報)とが対応付けられた周知の概念辞書の情報である。
例えば,前記シソーラス辞書情報D5においては,「発揮」,「表面化」,「登場」等の複数の語句が同じカテゴリ(の識別情報)に対応づけられている。
そして,以上に示したステップS1〜S4の処理が終了すると,CPU1は,カウンタ変数i(初期値は1)を参照し,前記検索対象データD0にi番目の検索対象文が存在するか否かを判別する(S5)。なお,iは,当該検索対象文の識別番号であるとともに,前記検索対象データD0内における当該検索対象文の並び順の番号でもある。
ここで,i番目の検索対象文が存在する場合,CPU1は,前記検索文解析結果情報D2の中から,そのi番目の検索対象文についての構文解析結果である語句とその語句の属性との組合せ(フィールドとレコードのデータとの組合せ)を変数Sに代入する(S6)。これにより,変数Sに割り当てられたRAM2の記憶領域に構文解析結果が記憶される。但し,対応する前記カテゴリd26(前記シソーラス辞書情報に基づき判別されたカテゴリ)が存在する語句については,そのカテゴリd26も,語句と対応づけて変数Sに代入される。
また,i番目の検索対象文に複数の単文が含まれる場合には,各単文に対応する複数のレコードのデータが変数Sに代入される。
その後,CPU1は,以下に示すように,i番目の前記検索対象文について,前記事例文それぞれと一致する度合いを評価する処理(S7〜S14)を実行する。
まず,CPU1は,カウンタ変数j(初期値は1)を参照し,前記事例文情報D1にj番目の事例文が存在するか否かを判別する(S7)。
ここで,j番目の事例文が存在する場合,CPU1は,前記事例文解析結果情報D3の中から,そのj番目の事例文についての構文解析結果であるレコードのデータを変数Pに代入する(S8)。但し,対応する前記カテゴリd26が存在する語句については,そのカテゴリd26も,語句と対応づけて変数Pに代入される。また,j番目の事例文に複数の単文が含まれる場合には,各単文に対応する複数のレコードのデータが変数Pに代入される。
次に,CPU1は,変数Sに代入された検索対象文の構文解析結果と変数Pに代入された前記事例文の構文解析結果とを比較し,それぞれの構文解析結果における語句とその語句の文法上の属性との組合せの一致の程度を表す事例文一致度E(i,j)(S・P間の文一致度)を算出する(S9,文一致度算出処理)。
より具体的には,CPU1は,検索対象文の構文解析結果(変数Sの内容)と前記事例文の構文解析結果(変数Pの内容)との間で,語句(レコードのデータ)とその語句の文法上の属性(レコードのデータに対応するフィールド)との組合せを順次比較し,その組合せが一致するごとに前記事例文一致度E(i,j)の値を所定値だけ増加させる。
次に,CPU1は,i番目の検索対象文とj番目の事例文との間の前記事例文一致度E(i,j)を,i番目の検索対象文についての統合一致度Esum(i)に加算する(S10)。ここで,統合一致度Esum(i)は,i番目の検索対象文を,検索結果として出力するか否かの判別や検索結果として出力する優先順位の判別に用いる指標値である。なお,前記統合一致度Esum(i)の初期値は最小値(=0)である。
さらに,CPU1は,i番目の検索対象文における各事例文との間の前記事例文一致度E(i,j)の最大値である最大一致度Emax(i)と,その最大一致度Emax(i)が得られる前記事例文の前記事例文情報D1内での並び順の番号(以下,対応事例文番号Q(i)という)とを,必要に応じて更新する(S11)。ここで,対応事例文番号Q(i)は,前記事例文の識別番号でもあり,その番号Q(i)により識別される前記事例文のことを,以下,対応事例文という。
即ち,CPU1は,i番目の検索対象文とj番目の事例文との間の前記事例文一致度E(i,j)が,その時点における前記最大一致度Emax(i)よりも大きく,かつ,その文一致度E(i,j)が予め設定されたしきい値以上である場合に,その最大一致度Emax(i)の値を,前記事例文一致度E(i,j)の値に更新する。さらにその場合,CPU1は,前記対応事例文番号Q(i)の内容を,当該事例文一致度E(i,j)が得られた前記事例文の識別番号jに更新する。また,前記事例文一致度E(i,j)が,その時点における前記最大一致度Emax(i)と等しい場合,前記対応事例文番号Q(i)の内容に,当該事例文一致度E(i,j)が得られた前記事例文の識別番号jを追加する。これにより,1つの前記検索対象文に対して複数の前記対応事例文番号Q(i)が設定される場合があり得る。なお,前記最大一致度Emax(i)の初期値は最小値(=0)である。
そして,CPU1は,変数jを1ずつカウントアップしつつ(S12),入力された全ての前記事例文についてのステップS8〜S11の処理が終了するまで(j番目の事例文が存在しないと判別する(S7)まで),ステップS7〜S11の処理を繰り返す。
以上のようにしてステップS7〜S12の処理が終了すると,続いて,CPU1は,前記検索対象文の番号iと,その検索対象文について得られた前記統合一致度Esum(i)と,前記対応事例文番号Q(i)と,前記最大一致度Emax(i)との組合せ情報を,変数yに追加記録する(S13)。これにより,変数yには検索対象文それぞれについての前記統合一致度Esum(i),前記対応事例文番号Q(i)及び前記最大一致度Emax(i)が蓄積される。
そして,CPU1は,変数iを1ずつカウントアップするとともに変数jを初期化(j=1)しつつ(S14),前記検索対象データD0に含まれる全ての検索対象文についてステップS6〜S13の処理が終了するまで(i番目の検索対象文が存在しないと判別する(S5)まで)ステップS5〜S13の処理を繰り返す。
ここで,前記検索対象文ごとの前記対応事例文番号Q(i)を求める処理(S11,S13:対応事例文特定処理)は,前記検索対象文それぞれについて,前記文一致度E(i,j)が最も高い前記事例文を前記対応事例文として特定する処理である。これは,前記検索対象文それぞれについて,前記事例文それぞれとの間の前記文一致度E(i,j)が高いもの(予め設定されたしきい値以上であるもの)を優先して前記対応事例文を特定する対応事例文特定処理の一例である。
なお,前記対応事例文特定処理の他の例としては,前記文一致度E(i,j)が予め定められたしきい値以上であれば,その文一致度E(i,j)が得られた前記j事例文を前記対応事例文として特定すること等が考えられる。
その結果,前記統合一致度Esum(i)は,対応する前記検索対象文の構文解析結果(文の内容)が,前記事例文それぞれの構文解析結果に対して一致する度合いが高いほど高い値となる。
なお,前記(1)式に基づきi番目の検索対象文とj番目の事例文との間の前記事例文一致度E(i,j)を算出する場合,i番目の検索対象文と全ての事例文との間の文の一致度の指標値である前記統合一致度Esum(i)は,次の(2)式により算出できる。
そして,全ての検索対象文について,前記統合一致度Esum(i),前記対応事例文番号Q(i)及び前記最大一致度Emax(i)を求める処理が終了すると,CPU1は,変数yを参照し,前記統合一致度Esum(i)の高いものから順に(降順に)予め設定された数(指定数)の検索対象文を選択する(S15:代表検索対象文選択処理)。前述したように,本実施形態においては,前記統合一致度Esum(i)は,前記事例文それぞれとの間の前記文一致度E(i,j)の合計である。なお,このステップS15で選択される前記検索対象文を,以下,代表検索対象文という。
このステップS15の処理は,複数の前記検索対象文の中から,前記事例文それぞれとの間の前記文一致度E(i,j)が高いものを優先して1つ又は複数の前記代表検索対象文を選択する代表検索対象文選択処理の一例である。
なお,前記代表検索対象文選択処理の他の例としては,複数の前記検索対象文の中から,前記統合一致度Esum(i)が予め定められたしきい値以上であるものを前記代表検索対象文として選択する処理等が考えられる。
また,前記検索対象文それぞれについて算出した前記文一致度E(i,j)の平均値又は最大値を前記統合一致度Esum(i)とすること等も考えられる。
次に,CPU1は,カウンタ変数k(初期値は1)を参照し,ステップS15で選択された文にk番目の前記代表検索対象文が存在するか否かを判別する(S16)。なお,kは,ステップS15で選択された前記代表検索対象文の中における各代表検索対象文の識別番号である。
そして,k番目の前記代表検索対象文が存在する場合,CPU1は,以下に示す文一致度補正処理(ステップS17−1〜S17−4)を実行する(S17)。
<ステップS17−1>
即ち,前記文一致度補正処理において,CPU1は,まず,前記検索対象データD0(検索対象文の集合)の内での並び順がk番目の前記代表検索対象文に対して予め設定された前後の範囲内にある前記検索対象文(以下,前後検索対象文という)を特定する(S17−1)。
<ステップ17−2>
次に,CPU1は,前記前後検索対象文とk番目の前記代表検索対象文との間の前記検索対象データD0内での並びの前後関係が,前記前後検索対象文についての前記対応事例文とk番目の前記代表検索対象文についての前記対応事例文との間の前記事例文情報D1内における並びの前後関係と一致するか否かを判別する(S17−2)。ここで,k番目の前記代表検索対象文の前記検索対象データD0内での並び順の番号をkxとする。この場合,k番目の前記代表検索対象文についての前記対応事例文の前記事例文情報D1内での並び順の番号は,前記対応事例番号Q(kx)である。
また,前記前後検索対象文の前記検索対象データD0内での並び順の番号を(kx+α)とする。前記前後の範囲を表す予め設定された正の整数をWとした場合,αは(−w≦α≦+w)を満たす整数である。
<ステップS17−3>
そして,CPU1は,ステップS17−2において前記前後関係が一致すると判別した場合に,前記前後関係が一致すると判別された前記前後検索対象文,即ち,(kx+α)番目の前記検索対象文における前記最大一致度Emax(kx+α)と,k番目の前記代表検索対象文における前記最大一致度Emax(kx)との一方又は両方を高める方向に補正する。
例えば,前記最大一致度Emax(kx+α)及び前記最大一致度Emax(kx)のうちの小さい方の値を,大きい方の値に更新する(値を大きい方に揃える)。
或いは,前記最大一致度Emax(kx+α)及び前記最大一致度Emax(kx)の両方を,予め定められた値だけ増大させる(一致度を高める)補正を行うことも考えられる。
<ステップS17−4>
さらに,CPU1は,前記最大一致度Emax(kx+α)及び前記最大一致度Emax(kx)の一方又は両方を補正した分(増大分)だけ,それに対応する前記統合一致度Esum(kx+α)及び前記統合一致度Esum(kx)の一方又は両方を補正する。
そして,CPU1は,カウンタ変数kを1ずつカウントアップしつつ(S18),以上に示したステップS17−1〜S17−4の処理を,前記代表検索対象文それぞれについて実行する(S16〜S18)。
なお,ステップS17−2において前記前後関係が一致しないと判別された場合には,補正は行われない。
図5に示される例は,k番目の前記代表検索対象文の前記検索対象データD0内での並び順の番号kx=10,前記前後の範囲を表す整数W=3である場合の例である。従って,6つの前記前後検索対象文の前記検索対象データD0内での並び順は,それぞれ7〜9番及び11〜13番である。
図5に示される例では,k番目の前記代表検索対象文を中心とする7番目〜13番目の前記検索対象文それぞれに対する前記対応事例文の並び順は,それぞれ1番,3番,対応事例文なし,2番,対応事例文なし,3番,4番である。なお,「対応事例文なし」とは,前記最大一致度Emaxが予め設定された下限値(図5に示される例では,下限値=30)未満であるために,前記対応事例文が存在しないことを表す。
そして,図5に示される例では,前記前後検索対象文(7〜9番,11〜13番)と前記代表検索対象文(10番)それぞれとの組合せのうち,その並びの前後関係が,前記前後検索対象文についての前記対応事例文(1番,3番,なし,3番,4番)と前記代表検索対象文についての前記対応事例文(2番)との間の並びの前後関係と一致するものは,7番目,12番目及び13番目の前記前後検索対象文それぞれと前記代表検索対象文(10番)との組合せである。
そして,図5に示される例は,それら前後関係が一致する組合せについて,前記最大一致度Emax(7),Emax(12),Emax(13)それぞれと前記最大一致度Emax(10)とのうちの小さい方の値を,大きい方の値に更新補正される状況を表している。図5に示される例では,小さい方の前記最大一致度Emax(7),Emax(12),Emax(13)が,大きい方の前記最大一致度Emax(10)に揃えられるよう補正されている。さらに,それと併せて,その補正分だけ,前記統合一致度Esum(7),Esum(12),Esum(13)も補正されている。
この図5に示されるような処理が,ステップS17において行われる。
或いは,CPU1が,前記統合一致度Esum(i)が予め設定されたしきい値以上である検索対象文を選出し,選出した検索対象文のリストを前記統合一致度Esum(i)が高いものから順に前記表示装置5に表示させることも考えられる。
また,CPU1が,全ての検索対象文を,前記統合一致度Esum(i)が高いものから順に(前記統合一致度Esum(i)が高い検索対象文の優先順位を上げて)前記表示装置5の画面に表示させることも考えられる。
このように,CPU1は,前記検索対象文それぞれについて,前記事例文それぞれとの間の前記文一致度E(i,j)に基づく前記統合一致度Esum(i)を算出し(S10,S17),その前記統合一致度Esum(i)のレベルに応じて検索結果として出力するか否かの判別や,検索結果として出力する優先順位の判別(S19)を行う(前記検索対象文出力判別手段の一例)。
さらに,文検索装置Xは,その代表検索対象文及びその前後の所定範囲内に並ぶ前記前後検索対象文について,その並びの前後関係が,対応する(比較的一致度の高い)前記事例文(前記対応事例文)の並びの前後関係と一致すれば,その代表検索対象文及びその前後の前後検索対象文の一方又は両方の前記一致度がより高まるよう補正する(S17)。
その結果,前記事例文情報D1に対して文内容及び複数の文の並びについて一致度の高い文章(前記検索対象文の集合)が,より優先して検索結果に反映されることになる。
1 :CPU
2 :RAM
3 :ROM
4 :入力装置
5 :表示装置
7 :データ記憶部
10:文検索プログラム
D0:検索対象データ
D1:事例文情報
D2:検索文解析結果情報
D3:事例文解析結果情報
D4:構文解析辞書情報
D5:シソーラス辞書情報
S1,S2,…:処理手順(ステップ)
Claims (8)
- 予め記憶手段に記憶され複数の検索対象文が順に並ぶ検索対象文集合から所望の文を検索して出力する文検索装置であって,
検索結果に含めたい文を例示する複数の事例文が順に並ぶ事例文集合の情報を入力して記憶手段に記録する事例文集合入力手段と,
前記検索対象文それぞれについて,前記事例文それぞれとの一致度合いの指標値である文一致度を算出する文一致度算出手段と,
前記検索対象文それぞれについて,前記事例文それぞれとの間の前記文一致度が高いものを優先して対応する前記事例文である対応事例文を特定する対応事例文特定手段と,
複数の前記検索対象文の中から前記事例文それぞれとの間の前記文一致度が高いものを優先して1つ又は複数の代表検索対象文を選択する代表検索対象文選択手段と,
前記代表検索対象文それぞれについて,前記検索対象文集合の内での並び順が当該代表検索対象文に対して予め設定された前後の範囲内にある前記検索対象文である前後検索対象文と当該代表検索対象文との間の並びの前後関係が,前記前後検索対象文についての前記対応事例文と当該代表検索対象文についての前記対応事例文との間の前記事例文集合内における並びの前後関係と一致する場合に,当該前後検索対象文における前記対応事例文に対する前記文一致度と当該代表検索対象文における前記対応事例文に対する前記文一致度との一方又は両方を高める方向に補正する文一致度補正手段と,
前記検索対象文それぞれについて,前記文一致度補正手段による補正を経た前記文一致度に応じて,検索結果として出力するか否かの判別及び検索結果として出力する優先順位の判別の一方又は両方を行う検索対象文出力判別手段と,
を具備してなることを特徴とする文検索装置。 - 前記検索対象文及び前記事例文それぞれについて,構文解析処理を施すことにより文中における文法上の属性と語句との対応関係を表す構文解析結果情報を生成する構文解析手段を具備し,
前記文一致度算出手段が,前記検索対象文それぞれについて,前記事例文それぞれとの間で前記構文解析結果情報を比較することにより前記文一致度を算出してなる請求項1に記載の文検索装置。 - 前記文法上の属性が,文法上の格,品詞,語句の時制,受動態か能動態か,肯定形の語句か否定形の語句か,及び1つの文に複数の単文が含まれる場合におけるある語句が属する単文の他の単文に対する文法上の階層関係の深さのうちの1つ又は複数を含んでなる請求項2に記載の文検索装置。
- 前記対応事例文特定手段が,前記検索対象文それぞれについて,前記文一致度が最も高い前記事例文を前記対応事例文として特定してなる請求項1〜3のいずれかに記載の文検索装置。
- 前記代表検索対象文選択手段が,複数の前記検索対象文の中から,前記事例文それぞれとの間の前記文一致度の合計又は平均が高いものから順に予め定められた数の前記代表検索対象文を選択してなる請求項1〜4のいずれかに記載の文検索装置。
- 前記検索対象文及び前記事例文それぞれに含まれる語句について,記憶手段に記憶されたシソーラス辞書の情報に基づいてカテゴリを判別するカテゴリ判別手段を具備し,
前記文一致度算出手段が,前記構文解析結果情報の比較において比較対象となる2つの語句の一致を判別する際に,該2つの語句が一致しない場合には該2つの語句について前記カテゴリ判別手段により判別されたカテゴリの比較によって語句の一致を判別してなる請求項1〜5のいずれかに記載の文検索装置。 - 予め記憶手段に記憶され複数の検索対象文が順に並ぶ検索対象文集合から所望の文を検索し,検索結果を情報出力手段を通じて出力する処理をコンピュータに実行させるための文検索プログラムであって,
コンピュータに,
検索結果に含めたい文を例示する複数の事例文が順に並ぶ事例文集合の情報を入力して記憶手段に記録する事例文集合入力処理と,
前記検索対象文それぞれについて,前記事例文それぞれとの一致度合いの指標値である文一致度を算出する文一致度算出処理と,
前記検索対象文それぞれについて,前記事例文それぞれとの間の前記文一致度が高いものを優先して対応する前記事例文である対応事例文を特定する対応事例文特定処理と,
複数の前記検索対象文の中から前記事例文それぞれとの間の前記文一致度が高いものを優先して1つ又は複数の代表検索対象文を選択する代表検索対象文選択処理と,
前記代表検索対象文それぞれについて,前記検索対象文集合の内での並び順が当該代表検索対象文に対して予め設定された前後の範囲内にある前記検索対象文である前後検索対象文と当該代表検索対象文との間の並びの前後関係が,前記前後検索対象文についての前記対応事例文と当該代表検索対象文についての前記対応事例文との間の前記事例文集合内における並びの前後関係と一致する場合に,当該前後検索対象文における前記対応事例文に対する前記文一致度と当該代表検索対象文における前記対応事例文に対する前記文一致度との一方又は両方を高める方向に補正する文一致度補正処理と,
前記検索対象文それぞれについて,前記文一致度補正処理による補正を経た前記文一致度に応じて,検索結果として出力するか否かの判別及び検索結果として出力する優先順位の判別の一方又は両方を行う検索対象文出力判別処理と,
を実行させるための文検索プログラム。 - 予め記憶手段に記憶され複数の検索対象文が順に並ぶ検索対象文集合から所望の文を検索し,検索結果を情報出力手段を通じて出力する処理をコンピュータによって実行する文検索方法であって,
コンピュータにより,
検索結果に含めたい文を例示する複数の事例文が順に並ぶ事例文集合の情報を入力して記憶手段に記録する事例文集合入力処理と,
前記検索対象文それぞれについて,前記事例文それぞれとの一致度合いの指標値である文一致度を算出する文一致度算出処理と,
前記検索対象文それぞれについて,前記事例文それぞれとの間の前記文一致度が高いものを優先して対応する前記事例文である対応事例文を特定する対応事例文特定処理と,
複数の前記検索対象文の中から前記事例文それぞれとの間の前記文一致度が高いものを優先して1つ又は複数の代表検索対象文を選択する代表検索対象文選択処理と,
前記代表検索対象文それぞれについて,前記検索対象文集合の内での並び順が当該代表検索対象文に対して予め設定された前後の範囲内にある前記検索対象文である前後検索対象文と当該代表検索対象文との間の並びの前後関係が,前記前後検索対象文についての前記対応事例文と当該代表検索対象文についての前記対応事例文との間の前記事例文集合内における並びの前後関係と一致する場合に,当該前後検索対象文における前記対応事例文に対する前記文一致度と当該代表検索対象文における前記対応事例文に対する前記文一致度との一方又は両方を高める方向に補正する文一致度補正処理と,
前記検索対象文それぞれについて,前記文一致度補正処理による補正を経た前記文一致度に応じて,検索結果として出力するか否かの判別及び検索結果として出力する優先順位の判別の一方又は両方を行う検索対象文出力判別処理と,
を実行してなることを特徴とする文検索方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008232098A JP5142897B2 (ja) | 2008-09-10 | 2008-09-10 | 文検索装置,文検索プログラム,文検索方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008232098A JP5142897B2 (ja) | 2008-09-10 | 2008-09-10 | 文検索装置,文検索プログラム,文検索方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010066964A JP2010066964A (ja) | 2010-03-25 |
JP5142897B2 true JP5142897B2 (ja) | 2013-02-13 |
Family
ID=42192504
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008232098A Expired - Fee Related JP5142897B2 (ja) | 2008-09-10 | 2008-09-10 | 文検索装置,文検索プログラム,文検索方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5142897B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4735726B2 (ja) * | 2009-02-18 | 2011-07-27 | ソニー株式会社 | 情報処理装置および方法、並びにプログラム |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2943447B2 (ja) * | 1991-01-30 | 1999-08-30 | 三菱電機株式会社 | テキスト情報抽出装置とテキスト類似照合装置とテキスト検索システムとテキスト情報抽出方法とテキスト類似照合方法、及び、質問解析装置 |
JP2001167096A (ja) * | 1999-12-06 | 2001-06-22 | Ricoh Co Ltd | 文書検索システム、文書検索方法及びその方法を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体 |
JP4301496B2 (ja) * | 2003-10-27 | 2009-07-22 | 日本電信電話株式会社 | データベース検索装置、データベース検索方法およびプログラム |
JP2008152641A (ja) * | 2006-12-19 | 2008-07-03 | Toyota Central R&D Labs Inc | 類似例文検索装置 |
-
2008
- 2008-09-10 JP JP2008232098A patent/JP5142897B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2010066964A (ja) | 2010-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107209759B (zh) | 注解辅助装置及记录介质 | |
JP3170400B2 (ja) | 意味パターン認識による文字列検索方法及びその装置 | |
US10140333B2 (en) | Trusted query system and method | |
JP4306894B2 (ja) | 自然言語処理装置及びその方法、及び自然言語認識装置 | |
US5257186A (en) | Digital computing apparatus for preparing document text | |
US9280535B2 (en) | Natural language querying with cascaded conditional random fields | |
US10552467B2 (en) | System and method for language sensitive contextual searching | |
US20170308607A1 (en) | Method and System for a Semantic Search Engine | |
US20070106499A1 (en) | Natural language search system | |
WO2014208213A1 (ja) | ノン・ファクトイド型質問応答システムおよび方法 | |
EP2400400A1 (en) | Semantic search engine using lexical functions and meaning-text criteria | |
US20070016863A1 (en) | Method and apparatus for extracting and structuring domain terms | |
US20070100814A1 (en) | Apparatus and method for detecting named entity | |
JPH05197712A (ja) | 共起辞書構築・更新方法と共起・意味解析方法 | |
CA2638558A1 (en) | Topic word generation method and system | |
JP6729095B2 (ja) | 情報処理装置及びプログラム | |
JP6260294B2 (ja) | 情報検索装置、情報検索方法および情報検索プログラム | |
WO2017215242A1 (zh) | 简历搜索方法及装置 | |
US8380731B2 (en) | Methods and apparatus using sets of semantically similar words for text classification | |
US6278990B1 (en) | Sort system for text retrieval | |
Xiong et al. | HANSpeller: a unified framework for Chinese spelling correction | |
JP2000200281A (ja) | 情報検索装置および情報検索方法ならびに情報検索プログラムを記録した記録媒体 | |
JPH0721183A (ja) | 機械翻訳装置 | |
Xiong et al. | Extended HMM and ranking models for Chinese spelling correction | |
JP5142897B2 (ja) | 文検索装置,文検索プログラム,文検索方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110204 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20121026 |
|
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: 20121113 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121120 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151130 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5142897 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |