(57)【要約】【課題】単語の欠損や表記ゆれが含まれている文書に対しても適切な回答文を得る。【解決手段】入力される入力質問文を受付ける入力部２０２と、入力部で受付ける文章の形態素解析を行うテキスト解析部２０７と、想定質問文と回答文を対応付けて蓄積する想定質問記憶部２０５と、想定質問記憶部から入力質問文に類似する想定質問文を検索して、想定質問文に対応する回答文を得る検索部２０３と、検索部により得られる回答文を出力する出力部２０４と、テキスト解析部によって単語列に変換された入力質問文と想定質問文について、単語ごとの正規化を行う正規化処理部２０８と、を有し、検索部２０３は、正規化処理部２０８によって単語の正規化が行われた入力質問文と想定質問文との類似判定を行う。【選択図】図２
2020190970.tif 000002
【特許請求の範囲】
【請求項１】
入力される入力質問文を受付ける入力部と、
前記入力部で受付ける文章の形態素解析を行うテキスト解析部と、
想定質問文と回答文を対応付けて蓄積する想定質問記憶部と、
前記想定質問記憶部から前記入力質問文に類似する前記想定質問文を検索して、前記想定質問文に対応する回答文を得る検索部と、
前記検索部により得られる回答文を出力する出力部と、
前記テキスト解析部によって単語列に変換された前記入力質問文と前記想定質問文について、単語ごとの正規化を行う正規化処理部と、を有し、
前記検索部は、前記正規化処理部によって単語の正規化が行われた前記入力質問文と前記想定質問文との類似判定を行う、
ことを特徴とする文書処理装置。
【請求項２】
前記正規化部は、任意の第１の単語と第２の単語について、対象文書群において該第１の単語と該第２の単語の周辺に出現する単語の一致数が所定値以上であり、かつ、対象文書群の単語を網羅する関連語情報に該第２の単語が含まれていない場合、該第１の単語を含む文章に対して、該第１の単語を該第２の単語に置換する、
請求項１に記載の文書処理装置。
【請求項３】
前記正規化部は、任意の第１の単語について、検索対象文書群において所定の長さの単語列における前記第１の単語との共起確率が所定値以上である第２の単語と第３の単語が存在する場合、該第２の単語または該第３の単語を含む単語列に対して該第１の単語を挿入する、
請求項１に記載の文書処理装置。
【請求項４】
前記正規化部は、任意の第１の単語について、検索対象文書群において所定の長さの単語列における前記第１の単語との共起確率が所定値以上である第２の単語と第３の単語が存在する場合、該第１の単語と該第２の単語を含み、該第１の単語と該第２の単語の間の単語の数が所定数以下の文章と、該第１の単語と該第３の単語を含み、該第１の単語と該第３の単語の間の単語の数が所定数以下の文章に対して、該第１の単語を削除する、
請求項１に記載の文書処理装置。
【請求項５】
学習コーパス内に所定の回数以上出現する名詞と未知語の単語について、該単語の同義語と属性語を生成する正規化ＤＢ登録部と、
前記正規化ＤＢ登録部により生成された属性語を登録する属性語テーブルと、
前記正規化ＤＢ登録部により生成された同義語を登録する同義語テーブルと、
を有する請求項１に記載の文書処理装置。
【請求項６】
前記正規化部は、
前記入力部が受け付ける前記入力質問文に含まれる普通名詞と未知語の単語について、前記同義語テーブルを検索して、検索の結果、前記同義語テーブルに対象語が登録されている場合、該対象語と対になっている正規化語を取得して、対象の前記単語を正規化語に置き換える、
を有する請求項５に記載の文書処理装置。
【請求項７】
前記正規化部は、
前記入力部が受け付ける前記入力質問文に含まれる普通名詞と未知語の単語について、前記属性語テーブルを検索して、前記単語について一致する対象語がある場合、該対象語に対応する属性語を取得して、該属性語が入力される単語列に存在していない場合、取得した前記属性語を前記単語列に挿入する、
を有する請求項５に記載の文書処理装置。
【請求項８】
前記検索部は、前記正規化処理部によって、前記入力質問文に含まれる前記単語が正規化語に置き換えられた前記入力質問文と前記想定質問文との類似判定を行う、
または、前記属性語が前記単語列に挿入された前記入力質問文と前記想定質問文との類似判定を行う、
を有する請求項６または７に記載の文書処理装置。
【請求項９】
前記正規化ＤＢ登録部は、前記学習コーパスから単語埋め込みベクトルと形態素Ｎグラムを生成した後、形態素Ｎグラムの１グラムを参照して、出現頻度が所定の回数以上で品詞が、普通名詞、固有名詞、未知語である単語を抽出し、該単語に対してコサイン類似度が所定の値以上の単語を対象語とし、Ｎグラムに前記対象語に対応する着目語が存在しない場合、前記対象語は該着目語の同義語・表記ゆれ、または関連語と判定する、
請求項６または７に記載の文書処理装置。
【請求項１０】
コンピュータを用いて文書処理を行う文書処理方法であって、
入力される入力質問文を受付ける入力ステップと、
前記入力ステップで受付ける文章の形態素解析を行うテキスト解析ステップと、
想定質問文と回答文を対応付けて蓄積する想定質問記憶部から前記入力質問文に類似する前記想定質問文を検索して、前記想定質問文に対応する回答文を得る検索ステップと、
前記検索ステップにより得られる回答文を出力する出力ステップと、
前記テキスト解析ステップによって単語列に変換された前記入力質問文と前記想定質問文について、単語ごとの正規化を行う正規化処理ステップと、を有し、
前記検索ステップは、前記正規化処理ステップによって単語の正規化が行われた前記入力質問文と前記想定質問文との類似判定を行う、
ことを特徴とする文書処理方法。
【請求項１１】
学習コーパス内に所定の回数以上出現する名詞と未知語の単語について、該単語の同義語を生成する正規化ＤＢ登録ステップと、
前記正規化ＤＢ登録ステップにより生成された同義語を同義語テーブルに登録するステップと、を有し、
前記正規化ステップは、
前記入力ステップで受け付ける前記入力質問文に含まれる普通名詞と未知語の単語について、前記同義語テーブルを検索して、検索の結果、前記同義語テーブルに対象語が登録されている場合、該対象語と対になっている正規化語を取得して、対象の前記単語を正規化語に置き換える、請求項１０に記載の文書処理方法。
【請求項１２】
学習コーパス内に所定の回数以上出現する名詞と未知語の単語について、該単語の属性語を生成する正規化ＤＢ登録ステップと、
前記正規化ＤＢ登録ステップにより生成された属性語を属性語テーブルに登録するステップと、を有し、
前記正規化ステップは、
前記入力ステップで受け付ける前記入力質問文に含まれる普通名詞と未知語の単語について、前記属性語テーブルを検索して、前記単語について一致する対象語がある場合、該対象語に対応する属性語を取得して、該属性語が入力される単語列に存在していない場合、取得した前記属性語を前記単語列に挿入する、請求項１０に記載の文書処理方法。
【請求項１３】
前記コンピュータにネットワークを介して接続される端末に、
前記入力質問文の入力欄と、検索ボタンと、該入力欄に入力された前記入力質問文の正規化結果と、検索の結果得られた前記回答文と、を含む画面を表示する
請求項１０に記載の文書処理方法。
【請求項１４】
前記同義語テーブルによる単語の置換、または前記属性語テーブルによる単語の補完を行った場合、前記コンピュータにネットワークを介して接続される端末に、正規化なしで再検索するかを問い合わせる画面を表示する
請求項１１または１２に記載の文書処理方法。
【請求項１５】
コンピュータで実行される文書処理プログラムであって、該コンピュータは、
入力される入力質問文を受付ける入力ステップと、
前記入力ステップで受付ける文章の形態素解析を行うテキスト解析ステップと、
想定質問文と回答文を対応付けて蓄積する想定質問記憶部から前記入力質問文に類似する前記想定質問文を検索して、前記想定質問文に対応する回答文を得る検索ステップと、
前記検索ステップにより得られる回答文を出力する出力ステップと、
前記テキスト解析ステップによって単語列に変換された前記入力質問文と前記想定質問文について、単語ごとの正規化を行う正規化処理ステップと、
前記検索ステップは、前記正規化処理ステップによって単語の正規化が行われた前記入力質問文と前記想定質問文との類似判定を行う、
を実行することを特徴とする文書処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文書処理装置およびその方法、プログラムに係り、特に、質問文に対して回答文を得る対話型文書検索装置および方法、プログラムに関する。
【背景技術】
【０００２】
対話型検索装置は、特定の分野に関する質問を自然文で受け付け、システムが自然文で回答を返す装置であり、質問回答システムとも呼ばれる。この種の装置として、例えば、特許文献１には、質問文から抽出したキーワードに関する多数のコメント文章を潜在的なトピックグループに分類した上で、トピックグループに含まれる文章群と類似する回答文を対応付けて回答候補を選定し、選定した回答文候補についてそれぞれの差分となる代表キーワードを明示してユーザに選択させる技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−１４３０６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に記載の技術によれば、質問文に対する回答文が得られ、とりわけ、ユーザの質問文に対して複数の回答文の候補が存在する場合、ユーザの意図を反映した回答文を明示する（絞り込む）ことができる。
【０００５】
しかし、質問文や回答文に言葉の省略や表記ゆれがある場合、キーワードがうまく適合せず、適切な回答文の検索ができない可能性がある。特許文献１に記載のように、一般に公開されるＦＡＱや業務マニュアルなど、校正が十分に行われている文書を対象とする場合、このような問題が生じる可能性は低い。しかし、社内向けの問い合わせ記録等の文書は校正がされておらず、省略や表記ゆれが多く含まれている可能性がある。特に専門用語が多い技術分野では、専門用語や固有名詞の省略表現が多用され、作成者によっては表現の仕方が異なる傾向にある。このような文書資源を活用して質問検索の仕組みを構築しようとすると、文章に含まれる単語の細かな違いが原因で、検索漏れや誤った検索結果の回答を行う恐れがある。
【０００６】
そこで、本発明の目的は、単語の欠損や表記ゆれが含まれている文書に対しても適切な回答文を得ることにある。
【課題を解決するための手段】
【０００７】
本発明に係る文章処理装置は、好ましい一実施形態によれば、入力される入力質問文を受付ける入力部と、前記入力部で受付ける文章の形態素解析を行うテキスト解析部と、想定質問文と回答文を対応付けて蓄積する想定質問記憶部と、前記想定質問記憶部から前記入力質問文に類似する前記想定質問文を検索して、前記想定質問文に対応する回答文を得る検索部と、前記検索部により得られる回答文を出力する出力部と、前記テキスト解析部によって単語列に変換された前記入力質問文と前記想定質問文について、単語ごとの正規化を行う正規化処理部と、を有し、
前記検索部は、前記正規化処理部によって単語の正規化が行われた前記入力質問文と前記想定質問文との類似判定を行う、文書処理装置として構成される。
本発明はまた、文書処理方法および文書処理プログラムとして構成される。
【発明の効果】
【０００８】
本発明によれば、単語の欠損や表記ゆれが含まれている文書に対しても適切な回答文を得ることが可能となる。
【図面の簡単な説明】
【０００９】
【図１】一実施形態に係る対話型検索システムの一例を示す図である。
【図２】一実施形態に係る対話型検索装置の構成例を示す図である。
【図３】一実施形態に係る正規化ＤＢ登録処理のフローチャートを示す図である。
【図４】一実施形態に係る正規化ＤＢ登録処理の品詞対応テーブルを示す図である。
【図５】一実施形態に係る同義語テーブルを示す図である。
【図６】一実施形態に係る属性語登録処理のフローチャートを示す図である。
【図７】一実施形態に係る属性語候補テーブルを示す図である。
【図８】一実施形態に係る属性語テーブルを示す図である。
【図９】一実施形態（実施例１）に係る正規化処理のフローチャートを示す図である。
【図１０】一実施形態に係る想定質問登録処理のフローチャートを示す図である。
【図１１】一実施形態に係る検索処理のフローチャートを示す図である。
【図１２】一実施形態に係る属性語テーブル・同義語テーブル編集処理のフローチャートを示す図である。
【図１３】実施例２に係る正規化処理のフローチャートを示す図である。
【図１４】一実施形態に係る端末の表示画面の例を示す図である。
【図１５】一実施形態に係る端末の表示画面の例を示す図である。
【発明を実施するための形態】
【００１０】
文書処理装置の好ましい実施形態として対話型検索装置の例を挙げる。すなわち、検索対象の文書群をもとに同義語と省略される可能性がある単語を推定し、ユーザから入力される入力質問文と検索対象の想定質問文の双方について、同義語や表記ゆれを統一し、省略されている単語を補完する正規化処理を行った上で検索を行う対話型検索装置について説明する。
【００１１】
文書中の任意の単語Ａと単語Ｂについて、それぞれが同じような文脈で使われている場合、単語Ａと単語Ｂはその文書中で相対的に近い意味で使われていると考えられる。二つの文章が同じ文脈かどうかは文章を構成する単語とその係り受け関係によって決まるが、同じ文脈の文章は同じ単語で構成されていることが多く、単語の一致数だけでも二つの文章が同じ文脈かどうかの判定はある程度可能とされる。したがって、単語Ａ、単語Ｂの周辺に出現する単語がある程度一致していれば、単語Ａと単語Ｂは、同じ文脈で使われており、すなわち、近い意味の単語であると考えることができる。
【００１２】
このような仮定のもとに単語間の意味の近さを数値化する技術に単語埋め込みベクトルがある。単語埋め込みベクトルは、学習コーパス中のすべての単語についてその前後に現れる複数単語の統計をもとに、単語を２００次元程度の実数ベクトルに変換する手法で、単語間の意味の近さをベクトル間のコサイン類似度によって計ることができる。単語埋め込みベクトルを対象の文書群から生成し、任意の単語についてコサイン類似度が一定以上の単語を抽出すれば、その単語と近い意味で使われている単語を抽出することができる。
【００１３】
しかし、単語間のコサイン類似度は、双方の単語の前後に現れる単語が一致数によるため、同義語以外でも、高頻度でその単語と係り受け関係を持って共起するような単語も抽出される。そこで、対象文書群の形態素Ｎグラム（単語Ｎグラム）を生成し、単語埋め込みベクトルのコサイン類似度によって抽出された単語が同じＮグラムエントリに含まれるかどうかによって近接して共起関係にあるかどうかを判定し、同義語と分ける。
【００１４】
ここで、共起関係にある単語が、一方を省略してもその単語で構成していた句の意味が変わらない可能性がある単語となる。そこで、このような単語のリストを作成し、検索時に文章中の単語の補完に用いる。
【００１５】
コサイン類似度が高いが共起関係にはない単語は、同義語候補である。このような単語には、置き換えても意味が変わらない同義語や表記ゆれのほかにも、地名のように同種だが置き換えできない関連語も含まれる。そこで、後述の品詞情報をもとに同義語と関連語の判定を行い、同義語・表記ゆれを抽出する。これをもとに、検索時に文章中の同義語と表記ゆれの統一を行う。
【実施例１】
【００１６】
以下、図面を参照して、好ましい実施形態について説明する。
実施例１は、ユーザにより入力される入力質問文と検索対象の想定質問文について、同義語と表記ゆれを一意な表記に正規化し、省略されている単語を補完した上で検索を行う対話型検索装置の例について説明するものである。
【００１７】
図１は、対話型検索システムを示す。
対話型検索システムは、対話型検索装置１００と、端末１９を含んで構成される。端末１９は、ネットワークに接続可能な、例えばＰＣ（パーソナルコンピュータ）、スマートフォン、タブレット等の、ユーザが操作する情報処理装置である。端末１９は、ネットワークを介して対話型検索装置１００と接続し、対話型検索装置１００に質問文のテキストを送信し、対話型検索装置１００からの応答を受信する。なお、図１には１台の端末１９が示されているが、対話型検索装置１００には複数の端末１９が接続され得る。
【００１８】
文書処理装置としての対話型検索装置１００は、通信部１０１を介して、端末１９と通信を行いながら検索処理を実行するコンピュータであり、プログラムを実行して所用の機能を実現するＣＰＵ（処理部）１０２と、データを記憶するメモリ１０３および記憶装置１０４を有する。
【００１９】
図２は、対話型検索装置１００の機能構成を示す。
対話型検索装置１００は、入力部２０２、検索部２０３、出力部２０３、想定質問記憶部２０５、登録部２０６、テキスト解析部２０７、正規化処理部２０８、正規化ＤＢ登録部２０９、形態素解析辞書２１０、属性語テーブル２１１、同義語テーブル２１２、属性語候補テーブル２１６、関連語ＤＢ２１３、形態素Ｎグラム２１４、単語埋め込みベクトル２１５を有して構成される。これらの主な構成部位は、対話型検索プログラムがＣＰＵ１０２で実行されることで実現される。また、上記のテーブルやＤＢ（データベース）は、メモリ１０３または記憶装置１０４内に形成される。以下、各部位について詳細に説明する。
【００２０】
ユーザインタフェース部２０１は、対話型検索装置のユーザインタフェースを提供するモジュールであり、ＷｅｂサーバとＷｅｂアプリケーションサーバ等で実現される機能である。ユーザインタフェース部２０１は、端末１９にブラウザで表示する対話型検索装置のユーザインタフェースを生成し、端末１９からのテキスト入力を受け付けて入力部２０２に出力し、出力部２０４から回答文を受け取って端末１９に出力する。
なお、端末１９で専用のアプリケーションを使用し、ユーザインタフェース部２０１がそのアプリケーションに対してテキストのやりとりをするよう構成しても良い。
【００２１】
入力部２０２は、ユーザインタフェース部２０１から受け取ったテキストデータを対話型検索装置の各モジュールへ転送するモジュールであり、テキストデータの加工、登録、検索は、すべて入力部２０２を介して行われる。
【００２２】
検索部２０３は、ユーザインタフェース部２０１を介して端末１９から入力される質問文（以下、入力質問文という）について、想定質問記憶部２０５で検索を行い、検索の結果得られた回答文を出力部２０４に出力するモジュールである。検索部２０３は、入力質問文を想定質問記憶部２０５に登録されている想定質問と比較して類似度を算出する。その結果、最も類似度が高い想定質問文に対応付いた回答文を出力部２０４に出力する。このとき、類似度が所定の閾値を下回った場合は、回答文は出力せず、該当する想定質問文が見つからなかった（即ち対象がない）旨を出力部２０４に出力する。検索処理は、テキストの比較を行って類似度を数値化できればよく、公知の全文検索技術などを用いて実現できる。
【００２３】
出力部２０４は、検索部２０３から転送される回答文をユーザインタフェース部２０１に出力するモジュールである。検索部２０３による検索で、質問文に適合する結果が得られなかったことが伝達された場合は、質問に回答できない旨を表す回答文を生成して出力する。
【００２４】
想定質問記憶部２０５は、想定質問文とその回答文を格納するモジュールである。想定質問文には一つの回答文が対応付けられている。より詳しく言えば、形態素解析済みの想定質問文と、テキストのままの回答文を登録する。検索処理では、回答文に対する検索は行わない前提であるので回答文はテキストのままとしている。なお、一つの回答文に複数の想定質問文が対応づけられていてもよい。想定質問の作成時に明示的に複数の言い回しの質問文を作成する場合は、一つの回答文に複数の想定質問文が対応付けられる。
【００２５】
登録部２０６は、想定質問とその回答を想定質問記憶部２０５に登録するモジュールである。想定質問データは、入力部２０２から入力される。登録部２０６は、想定質問データを一件ずつ、または一括で登録できる。なお、登録に際しては、入力部２０２から入力されたデータに対して、重複登録などのデータの不備をチェックした上で登録を行う。入力された想定質問データについて、既に登録済みの想定質問と回答が含まれている場合や、回答文が対応付いていない想定質問文は除外する。また、登録部２０６は、正規化処理部２０８が行う正規化処理で利用するため、入力されたデータを正規化ＤＢ登録部２０９にも出力する。
【００２６】
テキスト解析部２０７は、入力部２０２から入力されるテキストの形態素解析を行い、さらに、正規化処理部２０８を介して形態素解析結果の正規化を行い、正規化された形態素解析結果を入力部２０２に出力する。なお、テキスト解析部２０７は、形態素解析の前処理として、英数字記号、カタカナの全角への統一、漢字については旧字体などの異字体を常用漢字に変換する処理を行い、文字単位で可能な正規化を行う。
【００２７】
形態素解析では、形態素解析辞書２１０を用いてテキストを単語列に分割し、読みと品詞情報を付与する。形態素解析辞書２１０には、単語ごとの読み・品詞情報と、大量のテキストコーパスから学習された単語の生起コストと単語間の連接コストを持つデータベースである。テキスト解析部２０７の形態素解析処理は、形態素解析辞書２１０の情報をもとに、テキストを日本語として適切な位置で区切って単語列に分割する。
【００２８】
テキスト解析部２０７は、形態素解析辞書２１０に登録されていない単語でも、長音符を含むカタカナの連続、ハイフンを含む英数字の連続は、一つの単語として分割するように処理する。このように分割された単語は、未知語のタグを付与し、辞書によって解析された一般の単語と区別できるようにしておく。この処理によって、辞書にないカタカナ表記の専門用語や製品名などの固有名詞、英数字列で書かれた製品や部品の型式も一つの単語として分割される。
【００２９】
正規化処理部２０８は、入力された単語列について同義語と表記ゆれの正規化と省略されている単語の補完を行うモジュールである。同義語と表記ゆれの正規化では、同義語テーブル２１２を参照して、該当する単語があれば、同義語テーブル２１２に登録されている単語に置換する。省略されている単語の補完では、属性語テーブル２１１を参照して、該当する単語があれば、属性語テーブル２１１に登録されている単語の挿入を行う。正規化処理部２０８が実行する正規化処理の詳細については後述する。
【００３０】
属性語テーブル２１１は、ある単語と共起関係にあり、かつ、省略されることがある単語が登録されている。例えば、「Ａ社」製の製品「Ａ０１」があり、「Ａ０１」は「Ａ社」製であることが自明である場合、「Ａ社」は省略され、単に「Ａ０１」と書かれる場合がある。属性語テーブル２１１は、このような場合の「Ａ社」と「Ａ０１」の対が登録される。「Ａ社」は「Ａ０１」の属性を表すことから、本実施例では、「Ａ０１」に対する「Ａ社」を属性語と呼ぶ。属性語テーブル２１１は正規化ＤＢ登録部２０９によって作成される。属性語テーブルの例を図８に示す。属性語候補テーブル２１６は、正規化ＤＢ登録部２０６が属性語テーブル２１１を作成する過程で生成するテーブルである。属性語候補テーブルの例を図７に示す。
【００３１】
同義語テーブル２１２は、ある単語と同じ意味で置き換えが可能である同義語が登録されている。表記ゆれは、例えば、「コンピューター」に対する「コンピュータ」、「Ｃｏｍｐｕｔｅｒ」などである。同義語テーブル２１２は正規化ＤＢ登録部２０９によって作成される。同義語テーブルの例を図５に示す。
【００３２】
関連語ＤＢ２１３は、想定質問記憶部２０５に登録される文書と同じ分野の技術仕様書や製品マニュアルなどで、想定質問記憶部２０５に登録される文書に含まれる単語を包含し、かつ、文書校正がされていて表記ゆれが存在しない文書の形態素解析結果が格納される。関連語ＤＢ２１３は、正規化ＤＢ登録部２０９が実行する正規化ＤＢ登録処理において、質問文中の未知語が表記ゆれかどうかを判定するために使用される。なお、想定質問記憶部２０５に登録される文書を包含できる単語のリストがあれば、これを登録するようにしても良い。
【００３３】
形態素Ｎグラム２１４は、想定質問記憶部２０５に登録されるすべての想定質問文とその回答文の形態素解析結果から作成した形態素Ｎグラムである。形態素Ｎグラム２１４は、正規化ＤＢ登録部２０９が実行する正規化ＤＢ登録処理において作成され、同処理において学習コーパス内で出現回数が所定の回数以上の単語を抽出する処理と、二つの単語に共起関係があるかを調べ処理に使用する。本実施例では最大３つまでの連接する単語の出現確率を求めた３グラムを用いて説明するが、学習コーパスとして使用する想定質問文と回答文が十分多ければ４グラム以上を用いても良い。Ｎが大きければ、より離れた位置で共起関係にある単語の対も確認することができる。
【００３４】
単語埋め込みベクトル２１５は、想定質問記憶部２０５に登録されるすべての想定質問文とその回答文の形態素解析結果から作成した単語埋め込みベクトルである。単語埋め込みベクトル２１５は、正規化ＤＢ登録部２０９が実行する正規化ＤＢ登録処理において作成され、同義語と属性語を抽出する処理で使用される。
【００３５】
正規化ＤＢ登録部２０９は、登録部２０６から転送される想定質問文と回答文を用いて、属性語テーブル２１１と同義語テーブル２１２を作成する正規化ＤＢ登録処理を行うモジュールである。属性語テーブル２１１と同義語テーブル２１２の作成には、単語埋め込みベクトル２１５と形態素Ｎグラム２１４、関連語ＤＢ２１３を用いる。単語埋め込みベクトル２１５と形態素Ｎグラム２１４は、登録部２０６が想定質問記憶部２０５に登録した想定質問とその回答の形態素解析結果から生成する。
【００３６】
［正規化ＤＢ登録処理］
正規化ＤＢ登録処理のフローを図３に示す。正規化ＤＢ登録処理では、学習コーパス（学習テキスト）内に所定の回数以上出現する名詞と未知語について、その単語の同義語と属性語を推定して、それぞれ属性語テーブル２１１と同義語テーブル２１２に登録する。正規化ＤＢ登録処理は、ユーザによって想定質問集の一括登録が行われる時に、登録部２０６を介して実行される。正規化ＤＢ登録部２０９は、登録部２０６から形態素解析処理済みの想定質問集のテキストが入力されると、そのテキストから単語埋め込みベクトル２１５を生成する。なお、想定質問記憶部２０５に単語埋め込みベクトルは、word2vec等、学習コーパス内での単語の相対的な意味に基づいて単語をベクトル化する技術である。単語埋め込みベクトルでは、ベクトル間のコサイン類似度によって単語間の意味の近さが表される。正規化ＤＢ登録部２０９は、単語埋め込みベクトルと併せて、形態素Ｎグラムの生成も行う。
【００３７】
正規化ＤＢ登録部２０９は、学習コーパスから単語埋め込みベクトルと形態素Ｎグラムを生成した後、形態素Ｎグラムの１グラムを参照して、出現頻度が所定の回数以上で品詞が、普通名詞、固有名詞、未知語である単語を抽出する（Ｓ３０１）。抽出した単語の一つに着目し（Ｓ３０２）、その単語（以下、着目語という）に対してコサイン類似度が所定の値以上の単語（以下、対象語という）を単語埋め込みベクトルから抽出する（Ｓ３０３）。対象語は、単語埋め込みベクトルの生成に用いた学習コーパスにおいて、着目語と相対的に意味が近いと計算された単語である。
【００３８】
単語間の意味の近さは、学習コーパス内でその単語の前後の文脈に現れる単語によって算出され、コサイン類似度が高い単語同士は、同じような文脈で使われる単語となる。したがって、対象語は着目語と全く同じ意味で置き換え可能な同義語である場合のほか、例えば地名同士など同種だが置き換えはできない関連語である場合がある。また、これ以外にも、同じ句の中で共起関係にある単語も該当する。同じ句の中で共起関係にある単語は、一方を省略しても意味が通じることがあり、以降の処理でこれらを分類し、同義語と属性語を抽出する。
【００３９】
コサイン類似度が所定の値以上である対象語があった場合（Ｓ３０３：ＹＥＳ）、正規化ＤＢ登録部２０９は、対象語の一つに着目すると、Ｎグラムの２グラムと３グラムのエントリを参照し、着目語と対象語を含むエントリを探す。二つの単語を含むエントリがあれば（Ｓ３０４：ＹＥＳ）、その二つの単語は共起関係にある単語と判定できる。しかし、この段階では、どちらが属性語であるかは判定できない。
【００４０】
「Ａ社（の製品の）Ａ０１」という例の場合、「Ａ０１」が「Ａ社」製品の固有名詞であれば、「Ａ社」は「Ａ０１」の属性語であり、省略しても意味が通じる単語と考えられる。しかし、「Ａ０１」が、「Ａ社」製品の固有名詞ではなく、「Ｂ社（の製品の）Ａ０１」という例も考えられる。この場合は、「Ａ社」は省略できない単語である。したがって、省略可能な属性語を推定するためには、学習コーパス全体の単語関係を調べる必要がある。そこで、この時点では、属性語候補として属性語候補テーブル２１６に登録する（Ｓ３０５）。
【００４１】
このとき、対象語と着目語は、Ｎグラムエントリの中の語順で属性語候補１、属性語候補２という形で登録する。例えば、Ｎグラムエントリに対象語の単語、着目語の単語の語順で出ていれば、対象語を属性語候補１に、着目語を属性語候補２に登録する。図７に属性語候補の例を示す。例えば、着目語が「Ａ０１」、対象語が「Ａ社」であり、３グラムエントリとして「Ａ社  の  Ａ０１」が存在した場合、「Ａ社」を属性語候補１に、「Ａ０１」を属性語候補２に登録する（７０４）。
【００４２】
Ｎグラムに着目語と対象語を含むエントリが存在しない場合（Ｓ３０４：ＮＯ）、対象語は着目語の同義語・表記ゆれ、または関連語と判定する。正規化ＤＢ登録部２０９は、次に対象語が同義語・表記ゆれか、関連語かの判定を行う。同義語・表記ゆれと関連語の判定は、着目語と対象語のそれぞれの品詞の組み合わせによって一次判定を行い、品詞に組み合わせによっては、さらに関連語ＤＢ２１３を使用した二次判定を行う。この判定基準を図００に示す。正規化ＤＢ登録部２０９は、図４に示す品詞対応テーブル（同義語判定基準）に従って同義語テーブルへの登録を行う（Ｓ３０６）。
【００４３】
着目語と対象語がともに普通名詞の場合（４０５）、正規化ＤＢ登録部２０９は、対象語を着目語の同義語と判定し、対象語を着目語の同義語として同義語テーブル２１２に登録する。着目語が普通名詞で対象語が固有名詞の場合（４０６）、対象語は着目語より狭い意味を持ち、相互に置き換えることはできないと考えられるため、正規化ＤＢ登録部２０９は、対象語を関連語と判定し、同義語テーブル２１２への登録は行わない。対象語が普通名詞で着目語が未知語の場合（４０７）、対象語は着目語の表記ゆれか、着目語と同種の固有名詞である可能性がある。対象語が着目語の表記ゆれか固有名詞かは、関連語ＤＢ２１３を参照して、対象語が存在するかをチェックすることで判定する。
【００４４】
関連語ＤＢ２１３に格納されている文書は、対話型検査装置で扱う業務の専門用語が十分に含まれており、かつ、校正がされているため表記ゆれは存在しないものとする。したがって、対象語が、関連語ＤＢ２１３に存在していれば、対象語は表記ゆれではなく当該分野で使われる固有名詞であると判断できる。この場合、着目語が普通名詞で、対象語が固有名詞であるときと同じ条件となるため、正規化ＤＢ登録部２０９は、対象語を関連語と判定する。一方、対象語が関連語ＤＢ２１３に存在しなければ、対象語は着目語の表記ゆれであるとみなせる。したがって、正規化ＤＢ登録部２０９は、対象語を着目語の同義語と判定する。
【００４５】
着目語が固有名詞で対象語が普通名詞の場合（４０８）、対象語は着目語と同種の一般名詞であるため、正規化ＤＢ登録部２０９は、対象語を着目語の関連語と判定し、同義語テーブル２１２への登録は行わない。着目語も対象語も固有名詞である場合（４０９）、着目語と対象語は同種の単語であるため、正規化ＤＢ登録部２０９は、やはり、対象語を着目語の関連語と判定し、同義語テーブル２１２への登録は行わない。着目語が固有名詞で対象語が未知語の場合（４１０）、対象語は着目語の表記ゆれ、または同種の関連語と考えられる。そこで、いずれかを判定するために関連語ＤＢ２１３を参照する。対象語が関連語ＤＢの中に存在すれば、対象語を関連語と判定する。対象語が関連語ＤＢに存在しない場合は、対象語は着目語の表記ゆれ（同義語）と判定し、同義語テーブル２１２に登録する。
【００４６】
着目語が未知語で対象語が普通名詞の場合（４１１）、または着目語が未知語で対象語が固有名詞の場合（４１２）、着目語が対象語の表記ゆれ、または関連語と判定し、正規化ＤＢ登録部２０９は、いずれかを判定するために関連語ＤＢ２１３を参照する。参照の結果、着目語が関連語ＤＢの中に存在すれば、正規化ＤＢ登録部２０９は、着目語を対象語の関連語と判定し、同義語テーブル２１２への登録は行わない。着目語が関連語ＤＢに存在しない場合は、正規化ＤＢ登録部２０９は、着目語は対象語の表記ゆれ（同義語）と判定し、同義語テーブル２１２に登録する。
【００４７】
着目語も対象語も未知語の場合（４１３）、着目語と対象語のいずれも固有名詞、あるいは、いずれも表記ゆれ、あるいはどちらかが固有名詞でもう一方が表記ゆれのパターンが考えられる。そこで、正規化ＤＢ登録部２０９は、着目語と対象語の両方について、関連語ＤＢ２１３を参照して検索し、関連語ＤＢ内に存在するかどうかをチェックする。着目語と対象語の双方が関連語ＤＢに存在する場合、着目語と対象語は相互に関連語の関係にあるため、同義語テーブル２１２に登録しない。
【００４８】
着目語と対象語のいずれも関連語ＤＢに存在しない場合、着目語、対象語ともに他の単語の表記ゆれと考えられるため、同義語テーブルに登録しない。着目語と対象語のいずれかが関連語ＤＢに存在した場合、関連語ＤＢに存在しなかった単語を、関連語ＤＢに存在した単語の表記ゆれと判定し、同義語テーブル２１２に登録する。
【００４９】
以上の処理を、着目語の対象語すべてについて実施する（Ｓ３０７：ＹＥＳ）。着目語のすべての対象語についてチェックが終わったら（Ｓ３０７：ＮＯ）、着目語を変えて同様の処理を繰り返し（Ｓ３０８：ＹＥＳ）、出現頻度が所定以上の名詞、固有名詞、未知語について、それらの同義語と属性語候補の抽出を行う。
【００５０】
図５に同義語テーブルの例を示す。対象語（５０１）を正規化表記（５０２）に置換する規則であることを示す。５０３は普通名詞における表記ゆれの例である。５０４は未知語の表記ゆれの例である。５０５は同義語の例である。
【００５１】
次に、Ｓ３０５で抽出した属性語候補から属性語を判定して、属性語テーブルに登録を行う（Ｓ３０９）。図６に属性語登録処理のフローを示し、図７に属性語候補の例を示す。正規化ＤＢ登録部２０９は、属性語テーブル２１１を参照し、二つ以上の属性語候補の対に含まれる単語があるかを調べる。図７の例では「Ａ社」が７０４と７０５に、「ＬＡＮ」が７０７と７０８に、「ポート」が７０７と７０８に含まれている。
【００５２】
二つ以上の属性語候補の対に含まれている単語がなければ（Ｓ６０１：ＮＯ）、属性語の登録は行わずに処理を終了する。これは一つの属性語候補の対だけでは、どちらが属性語かの判定ができないためである。二つ以上の属性語候補の対に含まれている単語がある場合（Ｓ６０１：ＹＥＳ）、正規化ＤＢ登録部２０９は、それらの単語を含む属性語候補の対を抽出する（Ｓ６０２）。図７では、７０６の「ＯＦＦ」「ＯＮ」の対以外の対が抽出される。
【００５３】
次に抽出した属性語候補の対の一つに着目し（Ｓ６０３）、属性語候補１、属性語候補２ともに２つ以上の属性語候補の対に含まれるかを調べる。７０４の場合、「Ａ社」は、７０４と７０５に含まれるが、「Ａ０１」が含まれるのは７０４のみである。したがって、この条件には含まれない（Ｓ６０４：ＮＯ）。この条件が成立する場合、正規化ＤＢ登録部２０９は、その属性語候補ペアを属性語テーブルに登録する（Ｓ６０５）。このとき、２つ以上の属性語候補ペアに含まれる単語を属性語とする。７０４の場合、「Ａ社」が属性語となる。
【００５４】
一方、属性語候補１、属性語候補２の単語がともに他の属性語候補ペアにも含まれる場合（Ｓ６０４：ＹＥＳ）、属性語には登録しない。図７では、７０７、７０８、７０９がこれに該当する。７０７では、属性語候補１の「ＬＡＮ」が７０７と７０９に含まれ、属性語候補２の「ポート」も７０７と７０８に含まれている。「ＬＡＮ」と「ＵＳＢ」に対して「ポート」は共通の属性であるが、「ポート」と「ケーブル」に対しては「ＬＡＮ」が共通の属性である。
【００５５】
相互に属性の関係がある場合は、属性語の補完を行うと異なる意味になる可能性が高いため、属性語としての登録は行わない。このようにして、すべての属性語候補の対を調べて、属性語を選定する。図７に示す属性語候補の例に対して、最終的に属性語テーブルに登録される属性語テーブルを図８に示す。属性語テーブルは、対象語８０１と属性語８０２で構成され、正規化処理部２０８で実行される正規化処理にて、対象語が含まれていた場合に属性語を挿入する処理が行われる。
【００５６】
属性語テーブル２１１の挿入位置８０３は、対象語に対して属性語を補完する場合の挿入位置が前か後かを示す。挿入位置８０３は、対象語８０１が、図７に示す属性語候補テーブルにおいて、属性語候補１と属性語候補２のどちらであったかによって決定される。「Ａ０１」と「Ａ社」の例では、属性語候補テーブルで「Ａ０１」が属性語候補２、「Ａ社」が属性語候補１であり、学習コーパスで「Ａ０１」の前に「Ａ社」が現れていたことを示す。この情報に従い、挿入位置８０３は「前」となる。
【００５７】
［正規化処理］
テキスト解析部２０７は、入力質問文と想定質問文に対し、正規化処理部２０８を介して、形態素解析結果の単語列の正規化処理を行う。正規化処理は、正規化処理部２０８が、正規化ＤＢ登録部２０９が作成した属性語テーブル２１１と同義語テーブル２１２を使用して、同義語・表記ゆれを一意な表記に正規化し、属性語テーブル２１１を用いて省略されている単語を単語列に挿入する処理を行う。
【００５８】
正規化処理によって正規化する対象は、普通名詞と未知語である。図９を参照するに、正規化処理部２０８は、テキスト解析部２０７から入力される形態素解析結果の単語列について、品詞情報から普通名詞、未知語があるかを判定する（Ｓ９０１）。判定の結果、普通名詞も未知語も含まれていない場合（Ｓ９０１：ＮＯ）、正規化対象の単語はないため処理を終了する。一方、普通名詞または未知語が一つ以上含まれていれば（Ｓ９０１：ＹＥＳ）、普通名詞と未知語を抽出し、同義語テーブル２１２を参照して、抽出した単語が同義語テーブル２１２の対象語にあるかを検索する（Ｓ９０２）。検索の結果、同義語テーブル２１２に対象語の登録があった場合（Ｓ９０３：ＹＥＳ）、同義語テーブル２１２で当該対象語と対になっている正規化語を取得し、対象の単語を正規化語に置き換える。この動作を、抽出したすべての単語について実行する（Ｓ９０４）。一方、同義語テーブルに対象語が登録されていなければ（Ｓ９０３：ＮＯ）、何の処理を行わない。
【００５９】
次に、属性語テーブル２１１を参照して、省略されている単語の補完を行う。すなわち、正規化処理部２０８は、属性語テーブル２１１を参照して、Ｓ９０２で抽出した普通名詞と未知語を検索する（Ｓ９０５）。検索の結果、属性語テーブル２１１に一致する対象語があった場合（Ｓ９０６）、属性語テーブル２１１から対象語の属性語を取得する（Ｓ９０７）。そして、取得した属性語が入力の単語列に存在しているかどうかを調べる。そして、属性語が入力の単語列に存在していない場合、取得した属性語を単語列に挿入する（Ｓ９０８）。
【００６０】
［想定質問登録処理］
図１０に、想定質問を登録する処理のフローチャートを示す。想定質問の登録では、事前に関連語ＤＢ２１３の登録を行う。すなわち、入力部２０２は、入力される校正済み業務文書を読み込み、テキスト解析部２０７に出力する（Ｓ１００１）。そして、テキスト解析部２０７から形態素解析結果の単語列を受けとる。なお、このとき、正規化処理部２０８による正規化処理は行わない。形態素解析結果の単語列は、登録部２０６を介して正規化ＤＢ登録部２０９に入力され、正規化ＤＢ登録部２０９は、それを関連語ＤＢ２１３に登録する（Ｓ１００２）。
【００６１】
次に入力部２０２は、想定質問文とその回答文のテキスト（想定質問集）を読み込み（Ｓ１００３）、テキスト解析部２０７に出力する。テキスト解析部２０７は、入力された全ての想定質問文と回答文に対して形態素解析を行い、形態素解析結果の単語列を入力部２０２に出力する（Ｓ１００４）。このときも、正規化処理部２０８による正規化処理は行わない。なお、想定質問文に限り、正規化ＤＢ登録処理の後に正規化処理を実行するため、想定質問文の形態素解析結果を一時的に保存しておく。
【００６２】
入力部２０２は、形態素解析結果の単語列を、登録部２０６を介して正規化ＤＢ登録部２０９に出力する（Ｓ１００４）。正規化ＤＢ登録部２０９は、想定質問文と回答文の形態素解析結果を学習コーパスとして正規化ＤＢ登録処理を実行し、正規化処理部２０８を介して、属性語テーブルと同義語テーブルを登録する（Ｓ１００５）。次にテキスト解析部２０７は、Ｓ１００４で保存しておいた想定質問文の形態素解析結果を正規化処理部２０８に出力し、正規化処理部２０８が入力された想定質問文の形態素解析結果に対して、Ｓ１００５で作成した属性語テーブルと同義語テーブルで正規化処理を行って、テキスト解析部２０７に出力する（Ｓ１００６）。テキスト解析部２０７は、入力された正規化処理済みの形態素解析結果を入力部２０２に出力する。
【００６３】
入力部２０２は、テキスト解析部２０７から入力された、形態素解析と正規化を行った想定質問文、形態素解析のみの想定質問文、テキストのままの回答文を登録部２０６に出力する。登録部２０６は、想定質問文の形態素解析結果（正規化ありなしの両方）とそれに紐付く回答文のテキストを想定質問記憶部２０５に登録する（Ｓ１００７）。正規化なしの想定質問文は、属性語テーブル２１１と同義語テーブル２１２に誤りがあった場合に、ユーザにテーブルを修正させ、これをもとに正規化処理をやり直すために使用する。
【００６４】
属性語テーブル・同義語テーブル編集処理のフローチャートを図１２に示す。属性語テーブル・同義語テーブル編集処理は、後述の操作画面にて、テーブル編集ボタンが押下された場合に実行される。テーブル編集ボタンが押下されると、登録部２０６が正規化ＤＢ登録部２０９と正規化処理部２０８を介して、属性語テーブル２１１と同義語テーブル２１２を読み出し、出力部２０４に出力する（Ｓ１２０１）。
【００６５】
次に入力部２０２が、テーブルの内容を修正する入力を受け付け（Ｓ１２０２）、テーブルの修正と保存が行われる（Ｓ１２０３）。修正入力では、置換や補完対象の単語の変更や、テーブルの行の削除や追加を受け付ける。
【００６６】
修正後、正規化処理部２０８が、想定質問記憶部２０５にある正規化なしの想定質問文の形態素解析結果に対して、修正されたテーブルを用いて再度、正規化処理を行い、登録部２０６が想定質問記憶部２０５に正規化結果を上書き登録する（Ｓ１２０４）。
【００６７】
［検索処理］
図１１に、検索処理のフローチャートを示す。検索処理は、ユーザが端末１９から入力した入力質問文に対して検索を行ない、回答文を出力するまでの動作を含む。
まず、入力部２０２が、端末１９から入力された質問文（入力質問文）を受け付けて（Ｓ１１０１）、その受け付けた入力質問文をテキスト解析部２０７に転送する。次に、テキスト解析部２０７は、入力質問文のテキストの形態素解析を行って、正規化処理部２０８に転送する。正規化処理部２０８は正規化処理を実行して、その結果を、テキスト解析部２０７を介して入力部２０２に返却する（Ｓ１１０２）。
【００６８】
入力部２０２は、形態素解析結果の単語列を検索部２０３に出力する。検索部２０３は、想定質問記憶部２０５を参照して、入力質問文に近い想定質問文を検索する。検索の結果、類似度が所定の閾値以上の想定質問文が見つかった場合（Ｓ１１０４：ＹＥＳ）、検索部２０３は、一致した想定質問文に対応付く回答文のテキストを出力部２０４に出力する（Ｓ１１０５）。出力部２０４は、その回答文をユーザインタフェース部２０１に出力する。
【００６９】
一方、類似度が所定の閾値以上の想定質問文が見つからなかった場合（Ｓ１１０４：ＮＯ）、検索部２０３は、対象がない（質問に回答できない）旨の通知を出力部２０４に出力する。出力部２０４は、質問に回答できない旨を表す文章をユーザインタフェース部２０１に出力する（Ｓ１１０６）。
【００７０】
Ｓ１１０２の正規化処理において、属性語テーブルによる単語の補完、または同義語テーブルによる単語の置換を行った場合、正規化なしで再検索するかを、ユーザインタフェース部２０１を介して端末１０へ問い合わせる（Ｓ１１０７）。端末１０から再検索が指定された場合（Ｓ１１０７：「再検索する」）、正規化なしの入力文を検索クエリとして再検索を行う（Ｓ１１０８）。検索に関する処理（Ｓ１１０９〜Ｓ１１１１）は、Ｓ１１０４〜Ｓ１１０６と同様である。
【００７１】
図１４に、端末１０に表示される表示画面の例を示す。
端末１０の表示画面は、検索欄１４０１と、ユーザが質問文を入力する入力欄１４０５と、検索ボタン１４０６と、同義語テーブル編集ボタン１４０７および属性語テーブル編集ボタン１４０８を有する。検索欄１４０１には、入力欄１４０５に入力された質問文の正規化結果１４０２と、検索の結果得られた回答文１４０３の表示が含まれる。検索欄１４０１の表示１４０２，１４０３は、入力欄１４０５の質問文について検索ボタン１４０６が押下された時に表示される。１４０４は、対話履歴（検索履歴）を表示するためのスクロールバーである。
【００７２】
正規化結果１４０２は、入力欄１４０５に入力された質問文の正規化結果が表示されるが、図示の例では、「Ａ社」が補完され、「不具合」が「故障」に置換されている。なお、形態素解析結果をそのまま表示せず、各形態素の表記をつなぎ合わせて再構成されたテキストを表示する。「Ａ社」は、属性語テーブル２１１（図８参照）の挿入位置８０３の情報に従い、「Ａ０１」の前に挿入されている。表示１４０２に示すように、正規化処理により修正された部分は、太字、アンダーライン、フォントや色の変更などに強調表示されるので、ユーザに分かり易い。表示１４０３に示すように、想定質問文の修正についても同様に強調表示される。このように表示することで、誤った補完や置換が行われて検索が行われても、それをユーザに気づかせることができる。
【００７３】
同義語テーブル編集ボタン１４０７と属性語テーブル編集ボタン１４０８は、当該テーブルをユーザが編集するためのボタンで、このボタンが押下されると、図１２で説明した属性語テーブル・同義語テーブル編集処理が実行される。
【００７４】
同様に、図１５は、図１１に示した検索処理のＳ１１０７以降の処理動作における表示画面の例である。１５０１は、正規化を行った上で検索した旨ともとの入力文で検索するかどうかを確認するメッセージである。ユーザが「はい」１５０２を選択すると、検索部２０６は正規化なしで再検索を実行する（Ｓ１１０８）。
【００７５】
上記したように、実施例１によれば、端末１９からのユーザ操作による入力質問文と検索対象の想定質問文について、同義語と表記ゆれを一意な表記に正規化し、省略されている単語を補完した上で検索を行うので、より適切な想定質問文を検索して回答文を得ることができる。
【実施例２】
【００７６】
実施例１では省略されている単語の補完を行っていたが、実施例２では省略可能な単語を削除して検索を行う例を示す。実施例１において単語の補完を行う場合、正規化ＤＢ登録処理で誤った単語が登録されることがあった場合に、不必要な単語を挿入してしまう可能性がある。これに対して、実施例２では単語の挿入を行わないで、このような事態を防ぐことができる。
【００７７】
図１３に、実施例２に係る正規化処理のフローチャートを示す。Ｓ９０１〜Ｓ９０７までの処理は、実施例１の図９で説明した正規化処理（Ｓ９０１〜Ｓ９０７）と同様であるので、説明を省略する。Ｓ１３０８では、Ｓ９０７で取得した属性語が、入力の単語列に存在しているかどうかを調べる。そして、属性語が入力の単語列に存在している場合、その属性語を削除する。
【００７８】
このように実施例２によれば、ユーザから入力される入力質問文と検索対象の想定質問文について、同義語と表記ゆれを一意な表記に正規化し、省略可能な単語を削除した上で検索を行うので、より適切な想定質問文を検索して回答文を得ることができる。
【００７９】
以上、好ましい実施例について説明したが、本発明は上記実施例に限定されず、様々な変形例が含まれる。例えば、上記実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。また、上記の各構成、機能、処理部、処理ステップ等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。
【符号の説明】
【００８０】
１００  対話型検索装置
１９    端末
２０１  ユーザインタフェース部
２０２  入力部
２０３  検索部
２０４  出力部
２０５  想定質問記憶部
２０６  登録部
２０７  テキスト解析部
２０８  正規化処理部
２０９  正規化ＤＢ登録部
２１０  形態素解析辞書
２１１  属性語テーブル
２１２  同義語テーブル
２１３  関連語ＤＢ
２１４  形態素Ｎグラム
２１５  単語埋め込みベクトル
２１６  属性語候補テーブル
【図１】
2020190970.tif 000003
【図２】
2020190970.tif 000004
【図３】
2020190970.tif 000005
【図４】
2020190970.tif 000006
【図５】
2020190970.tif 000007
【図６】
2020190970.tif 000008
【図７】
2020190970.tif 000009
【図８】
2020190970.tif 000010
【図９】
2020190970.tif 000011
【図１０】
2020190970.tif 000012
【図１１】
2020190970.tif 000013
【図１２】
2020190970.tif 000014
【図１３】
2020190970.tif 000015
【図１４】
2020190970.tif 000016
【図１５】
2020190970.tif 000017