JP3682915B2 - 自然文マッチング装置、自然文マッチング方法、及び自然文マッチングプログラム - Google Patents

自然文マッチング装置、自然文マッチング方法、及び自然文マッチングプログラム Download PDF

Info

Publication number
JP3682915B2
JP3682915B2 JP2001095891A JP2001095891A JP3682915B2 JP 3682915 B2 JP3682915 B2 JP 3682915B2 JP 2001095891 A JP2001095891 A JP 2001095891A JP 2001095891 A JP2001095891 A JP 2001095891A JP 3682915 B2 JP3682915 B2 JP 3682915B2
Authority
JP
Japan
Prior art keywords
sentence
case
matching
natural
phrase
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
Application number
JP2001095891A
Other languages
English (en)
Other versions
JP2002297592A (ja
Inventor
靖博 平山
Original Assignee
株式会社ジャストシステム
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社ジャストシステム filed Critical 株式会社ジャストシステム
Priority to JP2001095891A priority Critical patent/JP3682915B2/ja
Publication of JP2002297592A publication Critical patent/JP2002297592A/ja
Application granted granted Critical
Publication of JP3682915B2 publication Critical patent/JP3682915B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Machine Translation (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、自然文マッチング装置、自然文マッチング方法、及び自然マッチングプログラムに関し、例えば、音声入力などやキーボード入力などされた自然文の意味を解釈するものに関する。
【0002】
【従来の技術】
従来、コンピュータにコマンドを入力する際には、コマンドを決められた文法に従って入力する必要があった。
ところが、近年の急激なソフトウェア技術とハードウェア技術の発展により、人間の自然な言語(自然言語)を解釈してコマンドを特定することが可能となってきた。
【0003】
この技術によって、例えばユーザがテレビに「消してくれ」とか、「5チャンネルが見たい」などと発話要求すると、テレビに内蔵されたマイクがユーザの発話要求をピックアップする。
そして、ユーザの入力した自然文はテレビに内蔵された事例文と自然マッチング装置によりマッチングされ、マッチングされた事例文から「テレビを消す」とか「チャンネルを5に合わせる」などのコマンドを特定する。
【0004】
自然文マッチング装置は、事例文とユーザの入力文を比較し、最も近い事例文から回答を抽出し、調整を加えることで、入力文に対する解析結果を得ることができるものである。このようなものとして、例えば、特開平11−31149号広報のIIF(Inteligent Interface)方式によるものや、キーワードによりマッチングするものなどがある。
【0005】
【発明が解決しようとする課題】
しかし、IIF方式では、述語動詞が不明確な場合は正しく解析できないことがある。
例えば、「文書を検索したい」と入力した場合はマッチングできるが、「検索したいのは文書」というように言い回しをが異なると(この場合倒置)、意味的には同じであるが正しくマッチングできない場合がある。
また、「平山さんの文書を検索したい」という入力文はマッチングできるが、「平山文書検索」というように、入力文が必要な助詞や活用形を含んでいない場合も正しくマッチングできない場合がある。
【0006】
更に、ユーザの自然言語による音声入力で文を入力することを想定すると、助詞の欠落や語句の誤解析・誤認識の可能性がある。更に、話し言葉では、活用形が標準と異なる場合や不要語が含まれる場合などもある。
これらのことから、入力される文は正しい助詞や活用となっていないものがあり、これにより、入力文が誤解析、誤認識される場合がある。
このように、従来の自然文マッチング装置では、入力文が倒置表現になったもの、助詞の欠落したもの、標準でない活用形を含むものへの対応や、また、誤解析、誤認識された語句への対応が十分ではなかった。
【0007】
また、キーワードマッチングを利用した場合は、語句の順序や係り受けが考慮されないという問題があった。
例えば、事例文が「送った文書が見たい」であった場合、キーワードは「送る」、「文書」、「見る」である。一方、入力文が「文書を送る」であった場合、キーワードが「文書」、「送る」であり、「送った文書が見たい」という事例文もヒットしてしまう。このため、キーワードマッチングではマッチングの精度はあまり高くない。なお、事例文とはユーザが入力することを想定した自然文である。
【0008】
そこで、本発明の目的は、意味的な情報や係り受けの情報を用いて事例文と入力された自然文(入力文)とを柔軟にマッチングすることができ、更に、事例文の数が多くなった場合でも効率よくマッチングできる自然文マッチング装置、自然文マッチング方法、及び自然文マッチングプログラムを提供することである。
【0009】
【課題を解決するための手段】
本発明は、前記目的を達成するために、請求項1に記載の発明では、入力された自然文を取得する自然文取得手段と、前記自然文取得手段にて取得した自然文を文節に区分して文節リストを生成する自然文文節区分手段と、前記自然文文節区分手段で生成した文節リストと、当該文節の係り受け情報を予め記憶してある格フレームと、の一致度により前記文節をランク付けするランク付け手段と、前記自然文文節区分手段にて区分された文節の係り受け情報を表層格、及び深層格にて取得して前記自然文の文構造を取得する自然文文構造取得手段と、回答に対応付けられた事例文に関して、文節の係り受け情報を表層格、及び深層格にて取得することにより文構造を取得する事例文文構造取得手段と、前記係り受け情報が一致した文節の文節数を用いて、前記自然文文構造取得手段にて取得した文構造と前記事例文文構造取得手段にて取得した文構造の一致度を取得する一致度取得手段と、前記一致度取得手段にて取得した一致度を用いて前記回答を特定する回答特定手段と、を具備した自然文マッチング装置であって、前記一致度取得手段は、一致する文節の文節数を数える際に、前記ランク付け手段によって文節リストと格フレームの一致度の低いランクにランク付けされた文節ほど文節数の値を低く調節することを特徴とする自然文マッチング装置を提供する。
請求項2に記載の発明では、前記ランク付け手段が、前記自然文文節区分手段で取得した文節リストと、当該文節に関する格フレームが、表層格と表記の両方で一致するか比較し、一致しない場合は、更に、表層格、又は表記の何れかが一致するかを比較し、表層格、又は表記の何れか一方が一致する場合は、表層格と表記の両方が一致した場合よりも文節のランクを小さくすることを特徴とする請求項1に記載の自然文マッチング装置を提供する。
請求項3に記載の発明では、前記一致度取得手段が、前記文節数を数える際に、前記自然文の係り受けを構成する前後の文節と前記事例文の係り受けを構成する前後の文節との一致を比較し、係り受けの前後のどちらかしか一致していない場合は、係り受けの前後の何れもが一致している場合よりも文節数を低く、係り受けの前後の両方とも一致しない場合は、係り受けの前後のどちらかしか一致していない場合よりも文節数を更に低く調節することを特徴とする請求項1、又は請求項2に記載の自然文マッチング装置を提供する。
請求項4に記載の発明では、前記一致度取得手段が、前記自然文文構造取得手段にて取得した文構造と、前記事例文文構造取得手段にて取得した事例文の文構造とを、表層格又は深層格の少なくとも一方を用いてマッチングして前記一致度を取得することを特徴とする請求項1、請求項2又は請求項3に記載の自然文マッチング装置を提供する。
請求項5に記載の発明では、前記自然文文節区分手段にて区分された文節に含まれる語句に語彙情報を付与する語彙情報付与手段を更に備え、前記一致度取得手段は、前記語彙情報付与手段にて当該語句に付与された語彙情報を用いて前記自然文の文構造と前記事例文の文構造をマッチングして前記一致度を取得することを特徴とする請求項1から請求項4までのうちの何れか1の請求項に記載の自然文マッチング装置を提供する。
請求項6に記載の発明では、前記語彙情報付与手段が、前記文節に含まれる語句に、当該語句に対応する同義語、類義語、多義語、同音異義語、概念情報のうち、少なくとも1つを関連付けることを特徴とする請求項5に記載の自然文マッチング装置を提供する。
請求項7に記載の発明では、前記事例文文構造取得手段が、前記事例文を取得する事例文取得手段と、前記事例文取得手段にて取得した事例文を文節に区分する事例文文節区分手段と、を具備したことを特徴とする請求項1から請求項6までのうちの何れかの1の請求項に記載の自然文マッチング装置を提供する。
請求項8に記載の発明では、前記一致度取得手段が、前記事例文文構造取得手段にて取得した事例文構造を用いて、事例文に含まれる語句を、当該語句の表層格又は深層格の少なくとも一方を用いて、前記自然文の文構造と前記事例文の文構造をマッチングするためのテーブル作成するテーブル作成手段と、を更に具備したことを特徴とする請求項1から請求項7までのうちの何れかの1の請求項に記載の自然文マッチング装置を提供する。
請求項9に記載の発明では、自然文取得手段と、形態素解析手段と、自然文文節区分手段と、ランク付け手段と、自然文文構造取得手段と、事例文文構造取得手段と、一致度解析手段と、回答特定手段と、を備えたコンピュータにおいて、
前記自然文取得手段によって、入力装置より入力された自然文をメモリに格納する自然文格納ステップと、前記形態素解析手段によって、前記自然文格納ステップで格納した前記自然文を形態素解析して形態素列を生成し、前記生成した形態素列をメモリに格納する形態素解析ステップと、前記自然文文節区分手段によって、前記形態素解析ステップで格納した前記形態素列の自立語と付属語を合わせて文節リストを生成し、前記生成した文節リストをメモリに格納する文節解析ステップと、前記ランク付け手段によって、前記文節解析ステップで格納した前記文節リストと、記憶装置に記憶してある格フレームと、の一致度を解析して前記文節をランク付けし、前記ランクをメモリに格納するランク付けステップと、前記自然文文構造取得手段によって、前記文節解析ステップで格納した前記文節リストの文節の係り受け情報を、表層格、及び深層格にて特定することにより前記自然文の文構造を解析し、前記解析の結果得られた文構造をメモリに格納する自然文文構造解析ステップと、前記事例文文構造取得手段によって、回答に対応付けられた事例文を文節に区分し、前記区分した文節の係り受け情報を表層格、及び深層格にて解析し、解析の結果得られた文構造をメモリに格納する事例文文構造解析ステップと、前記一致度解析手段によって、前記自然文文構造解析ステップでメモリに格納した文構造と、前記事例文文構造解析ステップでメモリに格納した文構造の一致度を、係り受け情報が一致した文節の文節数を用いて解析し、解析した一致度をメモリに格納する一致度解析ステップと、前記回答特定手段によって、前記一致度解析ステップでメモリに格納した一致度を用いて前記回答を特定する回答特定ステップと、を行う自然文マッチング方法であって、前記一致度解析ステップで一致する文節の文節数を数える際に、前記ランク付けステップでメモリに格納したランクによって文節リストと格フレームの一致度の低いランクにランク付けされた文節ほど文節数の値を低く調節することを特徴とする自然文マッチング方法を提供する。
請求項10に記載の発明では、コンピュータのメモリにロードされてCPUで実行されることにより、入力装置より入力された自然文をメモリに格納する自然文格納機能と、前記自然文格納機能によって格納した、前記自然文を形態素解析して形態素列を生成し、前記生成した形態素列をメモリに格納する形態素解析機能と、前記形態素解析機能によって格納した前記形態素列の自立語と付属語を合わせて文節リストを生成し、前記生成した文節リストをメモリに格納する文節解析機能と、前記文節解析機能によって格納した前記文節リストと、記憶装置に記憶してある格フレームと、の一致度を解析して前記文節をランク付けし、前記ランクをメモリに格納するランク付け機能と、前記文節解析機能によって格納した前記文節リストの文節の係り受け情報を、表層格、及び深層格にて特定することにより前記自然文の文構造を解析し、前記解析の結果得られた文構造をメモリに格納する自然文文構造解析機能と、回答に対応付けられた事例文を文節に区分し、前記区分した文節の係り受け情報を表層格、及び深層格にて解析し、解析の結果得られた文構造をメモリに格納する事例文文構造解析機能と、前記自然文文構造解析機能でメモリに格納した文構造と、前記事例文文構造解析機能でメモリに格納した文構造の一致度を、係り受け情報が一致した文節の文節数を用いて解析し、解析した一致度をメモリに格納する一致度解析機能と、前記一致度解析機能でメモリに格納した一致度を用いて前記回答を特定する回答特定機能と、をコンピュータで実現する自然文マッチングプログラムであって、前記一致度解析機能で一致する文節の文節数を数える際に、前記メモリに格納したランクによって文節リストと格フレームの一致度の低いランクにランク付けされた文節ほど文節数の値を低く調節することを特徴とする自然文マッチングプログラムを提供する。
【0010】
以上の構成により、意味的な情報や係り受けの情報を用いることにより、意味的に同じである文は似ていると判断でき、音声入力の場合の誤認識、や誤解析(同音異義語などにより生じる)や、語句が省略されている場合でも、柔軟に事例文と自然文のマッチングを行うことができる。
【0011】
【発明の実施の形態】
本実施の形態は、表層と深層を考慮して自然文と事例文をマッチングすることによりマッチングの適正化を行うものである。また、マッチングの際に多数の事例と照合するためのソフトウェアの効率化を図っている。
【0012】
自然文の深層(自然文の意味構造)をも考慮することにより、より柔軟に自然文と事例文をマッチングすることができる。
例えば「田中さんにメールを送って」と、これを倒置した「メールを送って、田中さんに」は、共に「田中さんにメールを送る」という事例文に対応するものである。
従来は、倒置の形で入力された自然文に事例文を対応させるためには、例えば倒置の形の事例文を用意するなど、事例文に倒置の場合にも対応できるようにしておく必要があった。
しかし、深層をも考慮すると「メールを送って、田中さんに」を「田中さんにメールを送る」にマッチングすることができ、事例文の辞書を効率化することができる。
また、自然文が不完全である場合なども深層の構造を用いることに適正にマッチングすることが可能である。
【0013】
以下に、本発明の実施の形態を図1から図19までを参照しながら詳細に説明する。
図1は、本実施の形態に係る自然文マッチング装置1の構成の一例を示した図である。
自然文マッチング装置1は、中央処理装置2、入出力部3、RAM(Random Access Memory)4、ROM(Read Only Memory)5、記憶部7などが、バスライン6によって接続されて構成されている。
【0014】
入出力部3は、入出力装置に接続しており、自然文マッチング装置1の外部と情報の入出力を行う部分である。
自然文マッチング装置1が、例えばテレビに装備されている場合は、入出力部3は、ユーザの発話要求(自然文で構成されたユーザからテレビへの指示)を取得するマイクロホンや、マッチングの結果得られた得られた情報をテレビの制御部へ送信するインターフェースなどである。
また、自然文マッチング装置1がパーソナルコンピュータに装備された場合、例えば、ユーザの自然文による要求を取得するためのマイクロホンやキーボードなどや、ユーザに応答文を提示するディスプレイなどである。
【0015】
ROM5は、読み出し専用のメモリであり、自然文マッチング装置1を動作させるための基本的なプログラムなどが記憶されている。
RAM4は、読み書き可能なメモリであって、中央処理装置2のワーキングメモリを提供したり、記憶部7に記憶されたプログラムやデータをロードして記憶したりなどする。
【0016】
記憶部7は、例えばハードディスクやその他の不揮発性のメモリなどによって構成されている。記憶部7は、自然文マッチングプログラムやその他のプログラムを記憶したプログラム部8と、自然文をマッチングする際に使用する語彙辞書、格フレーム辞書、属性辞書やその他のデータを記憶したデータベース9などによって構成されている。
また、自然文マッチング装置1が、例えば音声ワープロに使用される場合は、プログラム部8にワープロソフトを記憶することもできる。
【0017】
中央処理装置2は、ROM5やRAM4に格納されたプログラムに従って、自然文マッチング処理を行ったり、入出力部3でのデータの入出力を制御したりなどする。
バスライン6は、中央処理装置2と入出力3などのその他の部分との間でデータの送受信をする際の伝送媒体である。
【0018】
図2は、自然文マッチングシステム15の構成を示した図である。
自然文マッチングシステム15は、図1のプログラム部8に格納された自然文マッチングプログラムがRAM4にロードされ、ソフトウェア的に実現されたものである。
また、自然文マッチングシステム15の各構成要素をハードウェアによって構成することもできる。
【0019】
以下に、自然文マッチングシステム15の各コンポーネントの処理内容について概要を説明する。各コンポーネントの具体的な処理例は後ほど説明する。
まず、ユーザによってマイクロホンやキーボードなどから入力された入力文は、形態素解析コンポーネント17に入力される。この入力文は、人間の自然な言語である自然文で構成されている。
【0020】
形態素解析コンポーネント17は、入力された自然文の形態素解析を行い、その結果を形態素リストとして文節解析コンポーネント18に出力する。形態素とは、文節より更に細かく、語句を自立語と付属語のレベルまで区分したものである。 文節解析コンポーネント18は、形態素リストから文節リストを作成する。文節の作成は、基本的に形態素リストにある自立語と付属語をあわせて文節とする。
後に、人名や地名などの概念を処理する際に必要であるため、形態素解析の結果から得られる具体的な数値、人名、地名などの情報も文節リストに付与する。
また、アルファベットやカタカナ、記号などの正規化処理も行う。なお、正規化処理とは、文字コードの全角、半角やアルファベットの大文字や小文字、漢字の異体字をある一定のものに揃える処理のことである。例えば、アルファベットを半角小文字に、半角文字のカタカナを全角文字に、異体字を常用漢字に揃える処理を考えると、全角文字の「Alphabet」は半角文字の「Alphabet」に、半角の「カタカナ」は全角文字の「カタカナ」に、「渡邊」は「渡辺」に変換することができ。
【0021】
語彙処理コンポーネント19は、文節解析コンポーネント18から文節リストを取得し、語彙辞書25を用いて該文節リストに意味的な情報を付与していく。意味的な情報としては、例えば、同義語、類義語、多義語、同音異義語、概念情報などがある。これらの情報は、語彙辞書25にテーブル化されて記憶されている
概念情報には、赤や青などの概念である色や西や東などの概念である方向などのほか、地名や人名などの特殊概念が存在する。後に説明するように、本実施の形態では、特殊概念を用いて、形態素解析時に数値、人名、地名なども概念処理できるようにした。また、後に述べるように、例えば、9時20分などの時間に関する表現も概念に含めることができる。
【0022】
格フレーム処理コンポーネント20は、意味を付与された文節リストを語彙処理コンポーネント19から取得し、動詞に対する目的語と思われる語句を表層格と概念から決定する。なお、そのときに、文節リストに深層格の情報を付与することができる。
例えば、入力文が「細川にメールを送る」である場合、動詞は「送る」であり、この動詞に対する目的語は表層格で「を格」であり、深層格で「対象格」である「メール」である。
通常動詞の目的語は、「〜を」の形で表記され、これを表層格では「を格」と呼ばれる。また、動詞の目的語は、意味的には、その動詞の動作の対象となるので、深層格では「対象格」と呼ばれる。
【0023】
また、格フレーム辞書26には、様々な語句に対応する格フレームが記憶してある。格フレームとは、例えば、「送る」という語句は、表層格では「〜に〜を送る」又、深層格では「(相手)に(対象格)を送る」というフレーム(構造)を持ち、「に格」、「相手格」には、人名という概念が対応し、「を格」、「対象格」には、メール、手紙などが対応するといったことがテーブルとなって記憶されたものである。詳細は、後ほど述べる。
格フレーム処理コンポーネント20は、文節リストの目的語と思われる語句を決定した後、格フレーム辞書26を参照して、どの程度、入力文が格フレームにマッチしているかを判断する。
【0024】
格フレーム情報辞書26の格フレームの情報から入力文がどの格フレームにマッチしているのかを決定する場合に情報が足りない場合や、語彙情報が足りない場合がある。このような場合は、例えば、深層格の情報のみでマッチングするなどマッチングの条件を緩めて処理を行う。
このように、マッチングの条件を緩めることにより、本来マッチングが困難な場合もそれなりにマッチングを行うことができる。
【0025】
入力文を格フレームとマッチングする際に、表層格及び概念(又は表記)が一致する場合は、ランク1とし、ランク1のものが無ければ概念(又は表記)のみが一致するもの、又は表層格のみが一致するものを探し、これをランク2とする。
ランク1及びランク2のものが無ければ、一般的な係り受けの情報を採用し、これをランク3とする。一般的な係り受けの情報とは、「を格」は動詞に係る、「に格」は、動詞、又はサ変名詞に係るといった情報である。
格フレーム処理を行った結果、格フレームの深層格の情報やどのランクで一致したかという情報を持った文構造が格フレーム処理コンポーネント20により生成される。
【0026】
属性付与コンポーネント21は、文構造(文節)の情報に自然文マッチングシステム15を使用しているアプリケーションソフトや装置などに依存した情報、例えば、コマンドのパラメータの情報などを付与する。これらの情報は属性辞書27に記憶されている。
特殊概念を属性とした場合の値は、特殊概念の値をそのまま属性値とすることができる。例えば、概念で処理した人名、地名、数値、時間などは、入力された値をそのまま属性にすることができる。
【0027】
マッチング処理コンポーネント22が取得する文構造は、語彙情報、格フレーム情報、格フレームとマッチングした際のランク、属性情報などを含んでいる。
マッチング処理コンポーネント22は、入力文と事例文の一致度を求め、一致度高い事例文の回答を回答として採用する処理を行う。入力文と事例文の一致度は、2つの文構造がどれくらい一致しているかを求めるもので、文節の情報と係り受けの情報から計算される。
【0028】
更に、具体的には、属性付与コンポーネント21から属性を付与された文構造を受け取り、訓練コーパス(ユーザが入力すると想定される自然言語とこれに対応する回答を組にしたもの)の事例文から作成された回答辞書28を用いて事例文と入力文をマッチングする。そして、一致度が高い事例文を特定し、これから得られる回答を出力情報23として出力する。
回答とは、事例文などから特定されるコマンドや、属性付与コンポーネント21によって付与されたパラメータなどが、セットになったものである。即ち、事例文がマッチングによって特定されると、コマンドやパラメータが特定されるのである。
【0029】
自然文マッチングシステム15の各種辞書のうち、語彙辞書25、格フレーム辞書26は、一般的な言語的な知識を辞書化したものであり、出力情報23の出力対象であるアプリケーションソフトや装置が異なっていても共通して使用することができる。
一方、属性辞書27と回答辞書28は、アプリケーションソフトや装置に依存したものとなるため、アプリケーションソフト又は装置ごとに1つずつ作成することとなる。
このように、自然文マッチングシステム15では、辞書類を一般的な言語的な部分とアプリケーションソフト又は装置に依存した部分に分割することにより、新たなアプリケーションソフトや装置に対応する場合ではも追加する辞書サイズを小さくすることできる。
【0030】
図3は、語彙辞書25の構成を示した図である。
語彙辞書25は、同義語を登録した同義語部31、類義語を登録した類義語部32、多義語を登録した多義語部33、同音異義語を登録した同音異義語部34及び例えば時間や人名といった概念を登録した概念部35などから構成されている。これら各部の内容については、以下の各処理とともに説明する。
【0031】
次に語彙処理コンポーネント19で行われる解析の具体例について説明する。
[同義語の解析例]
図4は、同義語部31に作成された同義語テーブル41を示している。
同義語部31は、同じ意味を表す語句(同義語)を集めたものであり、それぞれの同義語がそれらを代表する代表語に対応付けられてテーブル化されている。
例えば、「購入する」は「買う」と同義語であり、「使う」は、「使用する」と同義語である。
今、例えば入力文が「パソコンを使う」であったとする。まず、形態素解析コンポーネント17により、
形態素解析→パソコン/を/使/う
と解析され、次いで文節解析コンポーネント18により
文節解析→パソコンを/使う
と、文節に区切られる。次いで語彙処理コンポーネント19により、
パソコンを/使う(同義語=使用する)
というように文節リストに同義語の代表語(ここでは、使用する)が付与される。
【0032】
[類義語の解析例]
図5は、「探す」、「使用する」を代表語とした場合の類義語テーブル43を示したものである。
類義語部32には、意味的には類似しているが完全には同じでない表現を処理するための類義語情報がテーブル化して記憶されている。
例えば、「探す」、「検索する」、「捜索する」、「探る」は互いに類義語であり、「使用する」、「利用する」、「活用する」、「用いる」は互いに類義語である。
類義語部32では、類義語の中から代表語を1つ選び(例えば、最も一般的に使用される語句を選択するなどする)、それが類義語の情報としてテーブル化されて登録されている。
【0033】
例えば、入力文が「パソコンを用いる」であった場合、類義語は同義語の場合と同様にして以下のように解析される。
形態素解析→パソコン/を/用/いる
文節解析→パソコンを/用いる
語彙処理→パソコンを/用いる(類義語=使用する)
このように、語彙処理により文節リストに類義語の情報が付与される。
【0034】
[多義語の解析例]
図6の多義語テーブル43の一例を示した図である。
多義語は、複数の意味を持つ語句である。例えば、「引く」という動詞には、「引き算する」や「引き寄せる」といった複数の意味を含んでいる。
多義語部33では、これらの多義語がテーブル化されて登録されている。
例えば、入力文が「線を引く」であった場合、多義語は以下のように解析される。
形態素解析→線/を/引/く
文節解析→線を/引く/
語彙処理→線を/引く(多義語=引き算する、引き寄せる)
このように、文節リストに多義語の情報が付与される。
【0035】
[同音異義語の解析例]
図7は、同音異義語テーブル47の一例を示した図である。
同音異義語に対する処理は、音声認識で異なる意味と解釈されてしまう可能性のある語句に対して同音異義語の情報を付与することにより行われる。
同音異義語としては、例えば「対照」、「対象」、「対称」や「掛ける」、「欠ける」、「描ける」、「書ける」などがある。
同音異義語部34では、これらの同音異義語がテーブル化されて登録されている。
【0036】
例えば、入力文が「図形を対象にする」であった場合、同音異義語は以下のように解析される。
形態素解析→図形/を/対象/に/する
文節解析→図形を/対象に/する
語彙処理→図形を/対象に(同音異義語=対照、対称)/する
このように文節リストに同音異義語の情報が付与される。同音異義語の情報を付与することにより、例えば、音声入力などの場合に、誤解析の可能性を少なくすることができる。
【0037】
[概念情報の解析例]
図8は、概念テーブル49の一例を示した図である。
概念部35では、例えば色や方向といった意味内容が同じものをまとめて扱えるように、概念テーブル49に示したようにテーブル化されて登録されている。例えば、「上」、「下」、「右」、「左」の概念情報は「方向」であり、「赤」、「緑」、「青」の概念情報は「色」である。
特殊概念には、人名、地名、数値、時間などがある。これらの特殊概念のうち、人名、地名、数値は形態素解析時に付与された情報を元に概念情報を作成し、時間は、図示しない時間概念辞書に登録された時間テーブル51からの時間の値を作成する。図9は、時間テーブル51を示した図である。
図9に示したように、特殊概念は値を持つこともできる。また、複数文節にまたがるものはコンマで区切って表す。
【0038】
例えば、入力文が「上に移動する」であった場合、概念情報は以下のように解析される。
形態素解析→上/に/移動/する
文節解析→上に/移動する
語彙処理→上に(概念=方向)/移動する
【0039】
また、入力文が「8月3日に更新したファイルを検索する」というように時間を含む場合は、概念は以下のように解析される。
形態素解析→8/月/3/日/に/更新/し/た/ファイル/を/検索/する
文節解析→8/月/3/日に/更新した/ファイルを/検索する
語彙処理→8(概念=数値・8)/月/3(概念=数値;3)日に/更新した/ファイルを/検索する
このように数値概念は値を持つことができる。
また、以下のように複数文節(8/月/3/日に)を処理することもできる。
語彙処理→8/月/3/日に(概念=時間;2000/8/3)/更新した/ファイルを/検索する
【0040】
更に、入力文が「平山の文書を検索する」というよに特殊概念である人名を含む場合は、以下のように解析される。
形態素解析→平山/の/文書/を/検索/する
文節解析→平山の/文書を/検索する
語彙処理→平山の(概念=人名;平山)/文書を/検索する
このように、人名概念や地名概念は値を持つことができる。
【0041】
[複数文節・多段階処理の場合]
語彙処理コンポーネント19は、時間概念の解析のときと同様にして複数文節から成り立つものを処理するとともに、同義語部31、類義語部32などから同義語や類義語などの情報を付与することができる。
例えば、入力文が「A4用紙に3ページから出す」であった場合、以下のように解析される。
形態素解析→A4/用紙/に/3/ページ/から/出す
文節解析→A4/用紙に/3/ページから/出す
語彙処理→A4/用紙に(同義語=紙)/3(概念=数値;3)/ページから/出す(紙+出す→同義語=印刷する)
語彙処理コンポーネント19は、同義語処理結果である「紙」と「出す」を更に多段処理して「印刷する」を付与している。
これは、同義語部31に図10(a)に示した同義語テーブルにより「用紙」に「紙」という類義語情報が付与され、更に、図10(b)にしめした同義語テーブルにより「紙に」、「出す」に「印刷する」という同義語情報が付与されたものである。
【0042】
次に格フレーム処理コンポーネント20で行われる解析の具体例について説明する。
図11は、格フレーム辞書26に格納されている格フレーム情報テーブル54の一例を示した図である。
例えば、「送る」という語句(述語)は、通常「(相手)に(対象)を送る」と言う形で使用される。(相手)に該当する文節は、表層格では「に格」、深層格では「相手格」と呼ばれ、(対象格)に該当する文節は表層格では「を格」、深層格では「対象格」と呼ばれる。
格フレーム情報テーブル54では、「送る」の「を格」、「対象格」に該当する表記として「メール」、「手紙」を登録しており、「に格」、「相手格」に該当する概念情報として「人名」が登録されている。
格フレーム処理コンポーネント20は、語彙処理された文節リストと、格フレーム辞書26に格納した格フレーム情報をマッチングし、マッチングの程度をランク付けする。
【0043】
例えば、、入力文が「細川さんに送ったメールを転送する」であった場合、形態素解析から語彙処理までは、以下の手順で解析される。
形態素解析→細川/さん/に/送/った/メールを/転送する
文節解析→細川さんに/送った/メールを/転送する
語彙処理→細川さんに(概念=人名)/送った/メールを/転送する
【0044】
格フレーム処理コンポーネント20は、以上のように語彙処理された文節リストと格フレーム情報を以下のステップでマッチングする。
ステップ1:格フレーム情報テーブル54を用いて「転送する」の文節から得られる格フレームの情報を取得する。
対象格については、図11の格フレーム情報テーブル54の「送る」欄の「対象格」欄を参照すると、「メールを」→「送った」となり、表記(メールを)で一致しているので、この一致はランク1となる。・・・(1)
相手格については、「送る」欄の「相手格」欄を参照すると、「細川さんに(概念=人名)」→「送った」となり、概念(人名)で一致しているので、この一致はランク1となる。・・・(2)
【0045】
ステップ2:「メールを」の文節から得られる格フレーム情報を取得する。
格フレーム情報テーブル54の「語句」欄には、該当する語句がないのでこの文節から得られる格フレーム情報は無い。「語句」欄には、述語となることができる語句が登録されており、メールは名詞であるのでこの欄には無い。
【0046】
ステップ3:「送った」の文節から得られる格フレーム情報を取得する。
格フレーム情報テーブル54の「送る」欄の「相手格」欄を参照すると、「細川さんに(概念=人名)」→「送った」となり、概念で一致するので、この一致はランク1となる。・・・(3)
【0047】
ステップ4:係り受けの発生していない文節を調べる。
係り受けの発生していない文節は「送った」である。つまり、「送った」より前の位置にあって、「送った」の相手格、対象格となる語はない。
一方、「送った」は動詞の連体形、即ち体言(名詞・代名詞)が連なる形なので、名詞、サ変名詞、又は未登録語に係る。
ここでは、一般的な係り受けを採用し、「送った」→「メールを」とする。「送った」は「メールを」の修飾語であり、ランク3とする。・・・(4)
【0048】
(1)から(4)まででランクの高いもの、文節の距離が近いものを採用して係り受けの情報(この例では、(1)、(3)(4)を採用)とし、文構造を作成する。図12に格フレームコンポーネント20が作成した文構造を示す。
図12に示したように、ユーザから入力された自然文の意味は、「メール」を「転送する」ことであり、その「メール」は、「細川さんに」「送った」ものであるとなる。
【0049】
また、入力文が「東に送ったメールを転送する」であった場合は、以下のように解析される。
形態素解析→東/に/送/った/メール/を/転送/する
文節解析→東に/送った/メールを/転送する
語彙処理→東に(概念情報=方向)/送った/メールを/転送する
格フレーム処理は以下のように行われる。
ステップ1:「転送する」の文節から得られる格フレーム情報を取得する。
格フレーム情報テーブル54の「転送する」欄の「対象格」欄から「メールを」→「転送する」となり、表記で一致するのでこの一致はランク1である。・・・(1)
【0050】
ステップ2:「メールを」の文節から格フレームを取得する。格フレームテーブル54から「メールを」の文節から得られる格フレームは無い。
ステップ3:「送った」の文節から得られる格フレームを取得する。格フレーム情報テーブル54から「送った」の文節から得られる格フレームも無い。
即ち、「送った」よりも前にある文節で(「送った」に係る文節は、「送った」よりも前にあるはずであるから)、対象格(メール、手紙)と相手格(概念情報=人名)の何れに該当する文節はない。
【0051】
ステップ4:係り受けの発生していない語句を処理する。
係り受けの発生していない文節は「東に」である。この場合、マッチングの条件を緩めて、表層格、表記、概念の何れかが一致していなくても良いとする。
「送る」欄の「相手格」欄から「東に(概念情報=方向)」→「送った」となり、表記は「に格」で一致するが、概念が一致しないので、この一致はランク2である。・・・(2)
また、「転送する」欄の「相手格」欄から「東に(概念情報=方向)」→「転送する」となり、表記は「に格」で一致するが、概念情報が一致しないので、この一致もランク2である。・・・(3)
【0052】
更に、係り受けの発生していない文節は「送った」である。「送った」は動詞の連体形なので「名詞、サ変名詞、未登録語」に係る。ここでは、一般的な係り受けを採用し、「送った」→「メールを」とする。「送った」は修飾語であり、この場合、ランク3となる。・・・(4)
格フレームコンポーネント20は、(1)から(4)まででランクの高いもの、文節の距離が近いものを採用して文構造を作成する。図13に作成された文構造を示す。即ち、ユーザの入力文の意味は、「メール」を「転送する」ことであり、その「メール」は、「東」に「送ったもの」である。ただし、「東」が人名であるか否かは定かでない。
【0053】
次に、属性付与コンポーネント21で行われる処理の具体例について説明する。
格フレーム処理コンポーネント20によって作成された文構造に自然文マッチング装置1を使用しているアプリケーションソフトや装置のパラメータに依存した値に関する情報を付与する。
人名、地名、数値、時間などの概念情報は、そのまま属性として使用することもできる。また、これらの概念情報を属性とした場合は、語彙処理コンポーネント19で概念情報の処理をした時に取得した概念情報の値を属性値として利用することもできる。また、属性付与コンポーネント21での属性情報の処理を行う際に、独自に概念情報の値を取得する方法を採用しても良い。
【0054】
図14は、属性辞書27に格納されている属性テーブル57の一例を示した図である。属性テーブル57では、語句と、その語句の概念を表す概念情報、及びその語句に対応したパラメータが組となって格納されている。例えば、「細線」は概念情報としては「線種」であり、細線は「線種」のうちのパラメータ1で表される。即ち、「細線」は「線種(1)」で表される。
同様に、語句「赤」は「色(0x0000ff)」に対応する。
【0055】
例えば、入力文が「細線を引く」であったとする。この入力文は、以下の手順で処理される。
Figure 0003682915
このように、属性付与コンポーネント21は、属性辞書27を参照して格フレーム情報コンポーネント20から取得した文構造に属性情報(この場合、線種属性=1)を付与する。
【0056】
また、入力文が「細い線を引く」であった場合は、以下のように処理される。
形態素解析→細/い/線/を/引/く
文節解析→細い/線を/引く
語彙処理→細い/線を/引く
【数式1】
Figure 0003682915
このように、複数の文節から属性情報を取得することもできる。
【0057】
次に、マッチング処理コンポーネント22で行われる処理の具体例について説明する。
マッチング処理コンポーネント22は、訓練コーパスにある事例文の文構造と、属性付与コンポーネント21から取得した文構造を比較して一致度を計算する。
一致度は、2つの文構造がどれくらい一致しているかを求めるもので、一例として、以下の式のように、回答候補の文節数と回答候補と一致した文節数からマッチング指数として求めるものが考えられる。
(マッチング指数)=(一致した文節数)/(回答候補の分節数)
回答候補の順位を決める際に、下の式のようにして、マッチング指数だけでなく、「一致した文節」の高いものを優先して順位を決めるようにする。
(一致した文節数)>(マッチング指数)
即ち、一致した文節数が(マッチング指数の分子)一番大きくなる回答をマッチング結果として採用し、一致した文節数が同じ場合にはマッチング指数の大きさで判断する。
【0058】
なお、マッチング指数の一致した文節数の数え方は、文節がどのくらい一致したかという指標として深層格で一致した場合0.3、表記/概念で一致した場合0.7(類義語で処理したものは0.4)として計算した。
【0059】
更に、格フレームの一致度でランクが低くなったもの(例えばランク3の場合)に対しては、文節数の値を1/2にするなどの調整を行う。
また、文節の係り受けの情報を反映させるため、係り受けの前後の文節が回答候補のものと一致している場合は、文節数はそのままとし、係り受けの前後のどちらかしか一致していない場合は文節数を更に2/3にする。係り受けの前後の両方とも一致しない場合は文節数を1/3にする。
【0060】
以下にマッチングの具体例を示す。
図15に示したような回答1〜5からなる訓練コーパスを想定する。回答2は時間の概念を含み、回答3、5は人名の概念を含んでいる。
なお、検索コマンドにおけるパラメータ1は検索アイテム種類を表しており、「1=4」の場合はメールである。パラメータ2は送信者名、パラメータ3は時間、パラメータ5は検索方向を表しており、「5=1」の場合は降順(下方向)への検索である。送信コマンドにおけるパラメータ1は宛先を表している。
図15に示した訓練コーパス60内の各事例文のそれぞれ対して形態素解析、文節解析、語彙処理、格フレーム処理、属性付与までの処理を行い、これらの文構造を作成する。
【0061】
図16は、訓練コーパス60の格事例文を解析して取得した文構造を示している。上から、順に回答1〜回答5に対応している。
次に、マッチングを行うために必要な回答検索用の回答辞書28を作成する。
本実施の形態では、マッチングの際に回答辞書28を作成することとしたが、これは、あらかじめいろいろな事例文に対して作成し、記憶しておいても良い。
回答検索には、事例文の文構造と回答候補を結びつけた回答辞書28を用いる。
図17は、回答辞書28に作成された回答検索テーブル63の一例である。これは、図16に示した文構造から作成されたものである。
回答検索テーブル63は、事例文の語句を文構造に基づいて分解し、各語句ごと(表記又は属性)ごとにまとめたものである。
【0062】
「表記/属性」欄は、訓練コーパス60に現れる表記又は属性が記録されている。
「深層格」欄は、これらの表記又は属性の深層格が記録されている。「表層格」欄には、これらの表記又は属性の表層格が記されている。
「状態」欄の状態1、状態2、・・・は、深層格又は表層格によって分類された表記又は属性を区別するための表記である。「回答候補」欄は、各状態の元となった表記又は属性を含む回答である。「連続文節」は、各回答で、表記又は属性が接続する先の文節を状態で示したものである。
【0063】
図18は、各回答候補候補と、それらの回答に対応するコマンドやパラメータ、条件などを示した図である。
例えば、回答1は、対応するコマンドは「検索」であり、パラメータ1の値は4である。また、回答1が選択される条件は、入力文の文構造が表記「検索する」を述語としてふくむ状態、即ち状態1と状態2の場合である。
【0064】
以上のように、訓練コーパスから作成された回答辞書28を用いて行うマッチングの具体例を示す。
入力文が「メールを検索する」の場合、形態素解析コンポーネント17から属性付与コンポーネント21までの各コンポーネントにより、属性を付与した文構造を次のように作成する。
(述語)検索する
(対象格)メール(を格)
【0065】
次に、述語の「検索する」に該当する回答候補を回答検索テーブル63の「検索する」欄から探す。その結果、回答1から回答4までが候補となる。
次に、対象格の「メール」に該当する回答候補を回答検索テーブル63の「メール」欄から探す。その結果、回答1から回答5までが候補となる。
以上から回答候補として回答1から回答5までがありえることになる。
【0066】
次に各回答候補に対する一致度を計算する。
[回答1に対する一致度]
マッチング指数は次式のようになる。
(マッチング指数)=2/2=1.00
[回答2に対する一致度]
「メールを」の節にかかるものがないため「メールを」の文節は1×2/3となり、その結果、マッチング指数は次式のようになる。
(マッチング指数)=(1×2/3+1)/3=0.56
【0067】
[回答3に対する一致度]
「メールを」の節にかかるものがないため「メールを」の文節は1×2/3となり、その結果、マッチング指数は次式のようになる。
(マッチング指数)=(1×2/3+1)/4=0.42
[回答4に対する一致度]
「検索する」の節にかかるものがないため「検索する」の文節は1×2/3となり、その結果、マッチング指数は次式のようになる。
(マッチング指数)=(1×2/3+1)/3=0.56
【0068】
[回答5に対する一致度]
「メールを」の節は係り受けの前後が一致しないため1×1/3となり、その結果、マッチング指数は次式のようになる。
(マッチング指数)=(1×1/3)/3=0.11
以上の結果、回答1の一致度が高いの回答1のコマンドを回答とする。
【0069】
次に、入力文が「細川さんのメールを検索する」であった場合のマッチングについて説明する。
まず、形態素解析コンポーネント17から属性付与コンポーネント21までの各コンポーネントにより、属性情報を付与した文構造まで解析する。
「細川さんのメールを検索する」の場合、次に様に解析される。
(述語)検索する
(対象格)メール(を格)
(???)細川さん(の格)(人名=細川)
【0070】
「細川さんの」の文節に対する深層格を(???)としたのは、表層格が(の格)や概念(人名)では「検索する」に対する格フレームがないため、ランク1、2のものがないため一般的な係り受けを採用したためである。
まお、この場合、以下のような格フレームの情報はないものとしている。
(語句)検索する、(表層格)で格、(深層格)対象格、(概念/表記)*人名次に、述語の「検索する」を回答検索テーブル63の「検索する」欄から探す。その結果、回答1から回答4までが候補となる。
次に、対象格の「メールを」を回答検索テーブル63の「メール」欄から探す。その結果、回答1から回答5までが候補となる。
次に、限定格の「細川さん」又は「*人名」を回答検索テーブル63から探す。その結果、回答候補は無い。
次に、深層格や表層格の条件を無視して「細川さん」を探すがこれも無い。
次に、深層格や表層格の条件を無視して「*人名」を探す。その結果、回答3、5が候補となる。
以上の結果から、回答1から回答5までが回答候補となる。
【0071】
次に、マッチング処理コンポーネント22は、各回答候補に対して一致度を計算する。
[回答1に対する一致度]
マッチング指数は次式のようになる。
(マッチング指数)=(1×2/3+1)/2=0.83
また、マッチング指数の分子は1.67である。
[回答2に対する一致度]
(マッチング指数)=(1×2/3+1)/3=0.42
また、マッチング指数の分子は1.67である。
【0072】
[回答3に対する一致度]
「細川さんに」の節は、深層格が一致せず格フレームのランクが3であり、また、係り先も一致しないので0.7/2×2/3となり、又、「メールを」の文節は係る文節が一致しないので1×2/3となる。そのため、マッチング指数は次式のようになる。
(マッチング指数)=(0.7/2×2/3+1×2/3+1)/4=0.48
また、マッチング指数の分子は1.90である。
[回答4に対する一致度]
「検索する」の文節に係るものがたりないため「検索する」の文節は1×2/3となる。このため、マッチング指数は次式のようになる。
(マッチング指数)=(1+1×2/3)/3=0.56
また、マッチング指数の分子は1.67である。
【0073】
[回答4に対する一致度]
「細川さんの」の文節は深層格が一致せず格フレームのランクが3であり、また係り先も一致しないので0.7/2×2/3となる。また、「メールの」の文節は前後の係りが一致しないため1×1/3となる。そのため、マッチング指数は次式のようになる。
(マッチング指数)=(0.7/2×2/3+1×1/3)/3=0.19
また、マッチング指数の分子は0.57である。
以上の結果、マッチング指数の分子が一番大きいものは回答3であるので回答3を回答とする。即ち、回答3を回答候補の1番目とする。
【0074】
次に、入力文が「検索したいのはメール」というように倒置形であった場合のマッチングについて説明する。
まず、形態素解析コンポーネント17から属性付与コンポーネント21までの各コンポーネントにより、属性情報を付与した文構造まで解析する。
「検索したいのはメール」の場合、次に様に解析される。
(述語)なし
(???)メール(φ格)
(???)の(は格)
(連体)検索する(希望)
上記の(???)は表層格が「の格」なので確定していないことを示す。また、上記の解析結果が示すように、倒置形の場合は述語に相当するものは無い。
【0075】
次に、マッチング処理コンポーネント22は、「メール」には、深層格が設定されていないため深層格や表層格の条件を無視して(即ち、一致条件を緩和して)「メール」を回答辞書28に作成された回答検索テーブル63の「表記/属性」欄から探す。その結果、回答1から回答5までが候補となる。
次に、「の格」には、深層格が設定されていないため、マッチング処理コンポーネント22は、深層格や表層格の条件を無視して「の」を回答検索テーブル63の「表記/属性」欄から探す。その結果、「の」に該当するものは無い。
【0076】
次に、マッチング処理コンポーネント22は、回答検索テーブル63の「表記/属性」欄が「検索する」で、「深層格」欄が連体修飾であるものを探す。その結果、該当するものは無い。
次に、マッチング処理コンポーネント22は、「検索する」の深層格の条件を無視して回答検索テーブル63の「表記/属性」欄で該当するものを探す。その結果回答1から回答4までが回答候補となる。
以上の検索結果から回答1から回答5までが回答候補となる。
【0077】
次に、マッチング処理コンポーネント22は、格回答候補に対して一致度を計算する。
[回答1に対する一致度]
「検索する」は、表記のみ一致し係り受けの前後も全く一致していないため、0.7/2×1/3となる。
「メール」は、表記のみ一致し係り受けの前後も全く一致していないため、0.7/2×1/3となる。
このため、マッチング指数は、次式のようになる。
(マッチング指数)=(0.7/2×1/3+0.7/2×1/3)/2=0.11
また、マッチング指数の分子は0.23である。
【0078】
[回答2に対する一致度]
「検索する」は、表記のみ一致し係り受けの前後も全く一致していないため、0.7/2×1/3となる。
「メール」は、表記のみ一致し係り受けの前後も全く一致していないため、0.7/2×1/3となる。
このため、マッチング指数は、次式のようになる。
(マッチング指数)=(0.7/2×1/3+0.7/2×1/3)/3=0.08
また、マッチング指数の分子は0.23である。
【0079】
[回答3に対する一致度]
「検索する」は、表記のみ一致し係り受けの前後も全く一致していないため、0.7/2×1/3となる。
「メール」は、表記のみ一致し係り受けの前後も全く一致していないため、0.7/2×1/3となる。
このため、マッチング指数は、次式のようになる。
(マッチング指数)=(0.7/2×1/3+0.7/2×1/3)/4=0.06
また、マッチング指数の分子は0.23である。
【0080】
[回答4に対する一致度]
「検索する」は、表記のみ一致し係り受けの前後も全く一致していないため、0.7/2×1/3となる。
「メール」は、表記のみ一致し係り受けの前後も全く一致していないため、0.7/2×1/3となる。
このため、マッチング指数は、次式のようになる。
(マッチング指数)=(0.7/2×1/3+0.7/2×1/3)/3=0.23
また、マッチング指数の分子は0.23である。
【0081】
[回答5に対する一致度]
「メール」は、表記のみ一致し係り受けの前後も全く一致していないため、0.7/2×1/3となる。
このため、マッチング指数は、次式のようになる。
(マッチング指数)=(0.7/2×1/3)/3=0.04
また、マッチング指数の分子は0.12である。
【0082】
以上の計算結果より、マッチング指数の分子は回答1から回答4まで同じであるが、その中でマッチング指数の最も高いものは回答1であるので、回答1を回答とする。即ち、回答1を第1番目の回答候補とする。
【0083】
図19は、自然文マッチングシステム15の動作を示したフローチャートである。
まず、自然文マッチングシステム15は、ユーザから入力された自然文を取得し(ステップ1)、形態素コンポーネント17にて、入力文を形態素に分解する(ステップ2)。
形態素コンポーネント17は、形態素リストを文節解析コンポーネント18に出力する。文節解析コンポーネント18は、形態素リストを用いて入力文を文節に区分し、文節リストを生成する(ステップ30)。
【0084】
次に、語彙処理コンポーネント19が文節解析コンポーネント18から文節リストを取得する。そして語彙処理コンポーネント19は、語彙辞書25に登録されている同義語や類義語などの情報を文節リストに付与し、格フレーム処理コンポーネント20に出力する(ステップ40)
次に、格フレーム処理コンポーネント20は、格フレーム辞書26を用いて、同義語や類義語などの情報が文節に付与された文節リストの文節から、表層格(「を格」、「に格」など)や深層格(「対象格」、「相手格」など)等の格フレーム情報を取得し、文構造を決定する(ステップ50)。
【0085】
次に、属性付与コンポーネント21は、格フレーム処理コンポーネント20から文構造を取得し、例えば、文中の「細線」に対して「線種(1)」というように、自然文マッチングシステム15が組み込まれたアプリケーションソフトや装置に特有のパラメータを文構造に付与してマッチング処理コンポーネントに出力する(ステップ60)。
【0086】
次に、マッチング処理コンポーネント22は、訓練コーパス29を用いて回答辞書28を作成する。
訓練コーパス29の格事例文は形態素解析コンポーネント17などにより解析され、入力文と同様に文構造が作成される。マッチング処理コンポーネント22は、事例文の文構造を入力文の文構造と比較するための回答検索テーブル63を回答辞書28に作成する。
そして、マッチング処理コンポーネント22は、回答検索テーブル63を用いて入力文の文構造と、事例文の文構造の一致度を計算し、最も一致度の大きい事例文から求まるコマンドを回答として出力する(ステップ80)。
【0087】
以上に説明した本実施の形態に係るコマンド処理装置1により、以下のような効果を得ることができる。
同じ意味や意味的に近い文は1の事例文でカバーできるので、訓練コーパス29を作成するときに同じ意味の様々な表現の文を用意しなくても良い。このため、訓練コーパス作成のコストが削減できると共に、記憶装置の容量も節約することができる。
また、省略された語句や全く異なる語句が入力文中にあっても意味的に同じ部分が多ければ、マッチングすることにより省略された(又は不足している)語句を推定したり、また、同音異義語などによる音声入力の際の誤認識、誤解析された語句の推定が可能となる。
【0088】
文節の意味的な情報と係り受けの情報を用いることにより、キーワードマッチングよりも精度の高いマッチングを行うことができる。
また、マッチングに一致度を用いるため、回答の順位付けができる。このため、多数の候補がある場合にユーザに一致度の高いものから回答を提示することができる。
更に、マッチング効率の良い方法を採用することにより事例の数が多くても、一事例ずつマッチングを行っていく場合に比べて処理時間が短くできる。
加えて、アプリケーションソフトを追加した場合は、アプリケーションソフトに依存した辞書(属性辞書と回答辞書)だけを追記すればよいので、少ない辞書サイズでアプリケーションに対応することができる。
また、回答辞書を用いることにより、事例文が多い場合でも効率よくマッチングすることができる。
【0089】
【発明の効果】
本発明によれば、意味的な情報や係り受けの情報を用いて事例文と入力された自然文(入力文)とを柔軟にマッチングすることができ、更に、事例文の数が多くなった場合でも効率よくマッチングできる自然文マッチング装置、自然文マッチング方法、及び自然文マッチングプログラムを提供することができる。
【図面の簡単な説明】
【図1】図1は、本実施の形態に係る自然文マッチング装置1のハードの構成の一例を示した図である。
【図2】自然文マッチングシステムの構成を示した図である。
【図3】語彙辞書の構成の一例を示した図である。
【図4】同義語テーブルの一例を示した図である。
【図5】類義語テーブルの一例を示した図である。
【図6】多義語テーブルの一例を示した図である。
【図7】同音異義語テーブルの一例を示した図である。
【図8】概念テーブルの一例を示した図である。
【図9】時間テーブルの一例を示した図である。
【図10】語彙処理で行われる多段処理を説明するための図である。
【図11】格フレーム情報テーブルの一例を示した図である。
【図12】格フレーム処理コンポーネントが作成した文構造の例を示した図である。
【図13】格フレーム処理コンポーネントが作成した文構造の他の例を示した図である。
【図14】属性テーブルの一例を示した図である。
【図15】訓練コーパスの一例を示した図である。
【図16】訓練コーパスの回答の文構造を示した図である。
【図17】回答検索テーブルの一例を示した図である。
【図18】回答に対応するコマンドなどを示した図である。
【図19】自然文マッチングシステムの動作を示したフローチャートである。
【符号の説明】
1 自然文マッチング装置
2 中央処理装置
3 入出力部
4 RAM
5 ROM
6 バスライン
7 記憶部
8 プログラム部
9 データベース部
15 自然文マッチングプログラム
16 入力情報
17 形態素解析コンポーネント
18 文節解析コンポーネント
19 語彙処理コンポーネント
20 格フレームコンポーネント
21 属性付与コンポーネント
22 マッチング処理コンポーネント
23 出力情報
25 語彙辞書
26 格フレーム辞書
27 属性辞書
31 同義語部
32 類義語部
33 多義語部
34 同音異義語部
35 概念部
41 同義語テーブル
43 類義語テーブル
45 多義語テーブル
47 同音異義語テーブル
49 概念テーブル
51 時間テーブル
54 格フレーム情報テーブル
57 属性テーブル
60 訓練コーパス
63 回答検索テーブル

Claims (10)

  1. 入力された自然文を取得する自然文取得手段と、
    前記自然文取得手段にて取得した自然文を文節に区分して文節リストを生成する自然文文節区分手段と、
    前記自然文文節区分手段で生成した文節リストと、当該文節の係り受け情報を予め記憶してある格フレームと、の一致度により前記文節をランク付けするランク付け手段と、
    前記自然文文節区分手段にて区分された文節の係り受け情報を表層格、及び深層格にて取得して前記自然文の文構造を取得する自然文文構造取得手段と、
    回答に対応付けられた事例文に関して、文節の係り受け情報を表層格、及び深層格にて取得することにより文構造を取得する事例文文構造取得手段と、
    前記係り受け情報が一致した文節の文節数を用いて、前記自然文文構造取得手段にて取得した文構造と前記事例文文構造取得手段にて取得した文構造の一致度を取得する一致度取得手段と、
    前記一致度取得手段にて取得した一致度を用いて前記回答を特定する回答特定手段と、
    を具備した自然文マッチング装置であって、
    前記一致度取得手段は、一致する文節の文節数を数える際に、前記ランク付け手段によって文節リストと格フレームの一致度の低いランクにランク付けされた文節ほど文節数の値を低く調節することを特徴とする自然文マッチング装置。
  2. 前記ランク付け手段は、前記自然文文節区分手段で取得した文節リストと、当該文節に関する格フレームが、表層格と表記の両方で一致するか比較し、一致しない場合は、更に、表層格、又は表記の何れかが一致するかを比較し、表層格、又は表記の何れか一方が一致する場合は、表層格と表記の両方が一致した場合よりも文節のランクを小さくすることを特徴とする請求項1に記載の自然文マッチング装置。
  3. 前記一致度取得手段は、前記文節数を数える際に、前記自然文の係り受けを構成する前後の文節と前記事例文の係り受けを構成する前後の文節との一致を比較し、係り受けの前後のどちらかしか一致していない場合は、係り受けの前後の何れもが一致している場合よりも文節数を低く、係り受けの前後の両方とも一致しない場合は、係り受けの前後のどちらかしか一致していない場合よりも文節数を更に低く調節することを特徴とする請求項1、又は請求項2に記載の自然文マッチング装置。
  4. 前記一致度取得手段は、前記自然文文構造取得手段にて取得した文構造と、前記事例文文構造取得手段にて取得した事例文の文構造とを、表層格又は深層格の少なくとも一方を用いてマッチングして前記一致度を取得することを特徴とする請求項1、請求項2又は請求項3に記載の自然文マッチング装置。
  5. 前記自然文文節区分手段にて区分された文節に含まれる語句に語彙情報を付与する語彙情報付与手段を更に備え、
    前記一致度取得手段は、前記語彙情報付与手段にて当該語句に付与された語彙情報を用いて前記自然文の文構造と前記事例文の文構造をマッチングして前記一致度を取得することを特徴とする請求項1から請求項4までのうちの何れか1の請求項に記載の自然文マッチング装置。
  6. 前記語彙情報付与手段は、前記文節に含まれる語句に、当該語句に対応する同義語、類義語、多義語、同音異義語、概念情報のうち、少なくとも1つを関連付けることを特徴とする請求項5に記載の自然文マッチング装置。
  7. 前記事例文文構造取得手段は、
    前記事例文を取得する事例文取得手段と、
    前記事例文取得手段にて取得した事例文を文節に区分する事例文文節区分手段と、
    を具備したことを特徴とする請求項1から請求項6までのうちの何れかの1の請求項に記載の自然文マッチング装置。
  8. 前記一致度取得手段は、前記事例文文構造取得手段にて取得した事例文構造を用いて、事例文に含まれる語句を、当該語句の表層格又は深層格の少なくとも一方を用いて、前記自然文の文構造と前記事例文の文構造をマッチングするためのテーブル作成するテーブル作成手段と、を更に具備したことを特徴とする請求項1から請求項7までのうちの何れかの1の請求項に記載の自然文マッチング装置。
  9. 自然文取得手段と、形態素解析手段と、自然文文節区分手段と、ランク付け手段と、自然文文構造取得手段と、事例文文構造取得手段と、一致度解析手段と、回答特定手段と、を備えたコンピュータにおいて、
    前記自然文取得手段によって、入力装置より入力された自然文をメモリに格納する自然文格納ステップと、
    前記形態素解析手段によって、前記自然文格納ステップで格納した前記自然文を形態素解析して形態素列を生成し、前記生成した形態素列をメモリに格納する形態素解析ステップと、
    前記自然文文節区分手段によって、前記形態素解析ステップで格納した前記形態素列の自立語と付属語を合わせて文節リストを生成し、前記生成した文節リストをメモリに格納する文節解析ステップと、
    前記ランク付け手段によって、前記文節解析ステップで格納した前記文節リストと、記憶装置に記憶してある格フレームと、の一致度を解析して前記文節をランク付けし、前記ランクをメモリに格納するランク付けステップと、
    前記自然文文構造取得手段によって、前記文節解析ステップで格納した前記文節リストの文節の係り受け情報を、表層格、及び深層格にて特定することにより前記自然文の文構造を解析し、前記解析の結果得られた文構造をメモリに格納する自然文文構造解析ステップと、
    前記事例文文構造取得手段によって、回答に対応付けられた事例文を文節に区分し、前記区分した文節の係り受け情報を表層格、及び深層格にて解析し、解析の結果得られた文構造をメモリに格納する事例文文構造解析ステップと、
    前記一致度解析手段によって、前記自然文文構造解析ステップでメモリに格納した文構造と、前記事例文文構造解析ステップでメモリに格納した文構造の一致度を、係り受け情報が一致した文節の文節数を用いて解析し、解析した一致度をメモリに格納する一致度解析ステップと、
    前記回答特定手段によって、前記一致度解析ステップでメモリに格納した一致度を用いて前記回答を特定する回答特定ステップと、
    を行う自然文マッチング方法であって、
    前記一致度解析ステップで一致する文節の文節数を数える際に、前記ランク付けステップでメモリに格納したランクによって文節リストと格フレームの一致度の低いランクにランク付けされた文節ほど文節数の値を低く調節することを特徴とする自然文マッチング方法。
  10. コンピュータのメモリにロードされてCPUで実行されることにより、
    入力装置より入力された自然文をメモリに格納する自然文格納機能と、
    前記自然文格納機能によって格納した、前記自然文を形態素解析して形態素列を生成し、前記生成した形態素列をメモリに格納する形態素解析機能と、
    前記形態素解析機能によって格納した前記形態素列の自立語と付属語を合わせて文節リストを生成し、前記生成した文節リストをメモリに格納する文節解析機能と、
    前記文節解析機能によって格納した前記文節リストと、記憶装置に記憶してある格フレームと、の一致度を解析して前記文節をランク付けし、前記ランクをメモリに格納するランク付け機能と、
    前記文節解析機能によって格納した前記文節リストの文節の係り受け情報を、表層格、及び深層格にて特定することにより前記自然文の文構造を解析し、前記解析の結果得られた文構造をメモリに格納する自然文文構造解析機能と、
    回答に対応付けられた事例文を文節に区分し、前記区分した文節の係り受け情報を表層格、及び深層格にて解析し、解析の結果得られた文構造をメモリに格納する事例文文構造解析機能と、
    前記自然文文構造解析機能でメモリに格納した文構造と、前記事例文文構造解析機能でメモリに格納した文構造の一致度を、係り受け情報が一致した文節の文節数を用いて解析し、解析した一致度をメモリに格納する一致度解析機能と、
    前記一致度解析機能でメモリに格納した一致度を用いて前記回答を特定する回答特定機能と、
    をコンピュータで実現する自然文マッチングプログラムであって、
    前記一致度解析機能で一致する文節の文節数を数える際に、前記メモリに格納したランクによって文節リストと格フレームの一致度の低いランクにランク付けされた文節ほど文節数の値を低く調節することを特徴とする自然文マッチングプログラム。
JP2001095891A 2001-03-29 2001-03-29 自然文マッチング装置、自然文マッチング方法、及び自然文マッチングプログラム Expired - Fee Related JP3682915B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001095891A JP3682915B2 (ja) 2001-03-29 2001-03-29 自然文マッチング装置、自然文マッチング方法、及び自然文マッチングプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001095891A JP3682915B2 (ja) 2001-03-29 2001-03-29 自然文マッチング装置、自然文マッチング方法、及び自然文マッチングプログラム

Publications (2)

Publication Number Publication Date
JP2002297592A JP2002297592A (ja) 2002-10-11
JP3682915B2 true JP3682915B2 (ja) 2005-08-17

Family

ID=18949881

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001095891A Expired - Fee Related JP3682915B2 (ja) 2001-03-29 2001-03-29 自然文マッチング装置、自然文マッチング方法、及び自然文マッチングプログラム

Country Status (1)

Country Link
JP (1) JP3682915B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4635585B2 (ja) * 2004-12-02 2011-02-23 富士ゼロックス株式会社 質問応答システム、質問応答方法及び質問応答プログラム
JP5417858B2 (ja) * 2009-01-21 2014-02-19 富士ゼロックス株式会社 情報処理装置及びプログラム
JP5496947B2 (ja) * 2011-05-27 2014-05-21 株式会社Nttドコモ 機能提示システム、端末装置及びプログラム
JP6045818B2 (ja) 2011-07-15 2016-12-14 株式会社東芝 照明装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0320866A (ja) * 1989-03-07 1991-01-29 Nippon Telegr & Teleph Corp <Ntt> テキストベース検索方式
JPH113335A (ja) * 1997-06-13 1999-01-06 Fuji Xerox Co Ltd 質問回答管理装置
JP3472194B2 (ja) * 1999-05-25 2003-12-02 日本電信電話株式会社 自動応答方法及びその装置並びにそのプログラムを記録した媒体

Also Published As

Publication number Publication date
JP2002297592A (ja) 2002-10-11

Similar Documents

Publication Publication Date Title
US10255269B2 (en) Graph long short term memory for syntactic relationship discovery
KR101004515B1 (ko) 문장 데이터베이스로부터 문장들을 사용자에게 제공하는 컴퓨터 구현 방법 및 이 방법을 수행하기 위한 컴퓨터 실행가능 명령어가 저장되어 있는 유형의 컴퓨터 판독가능 기록 매체, 문장 데이터베이스로부터 확인 문장들을 검색하는 시스템이 저장되어 있는 컴퓨터 판독가능 기록 매체
US7171351B2 (en) Method and system for retrieving hint sentences using expanded queries
US7293015B2 (en) Method and system for detecting user intentions in retrieval of hint sentences
US11210468B2 (en) System and method for comparing plurality of documents
US8131539B2 (en) Search-based word segmentation method and device for language without word boundary tag
WO2018157789A1 (zh) 一种语音识别的方法、计算机、存储介质以及电子装置
US20070073745A1 (en) Similarity metric for semantic profiling
KR101136007B1 (ko) 문서 감성 분석 시스템 및 그 방법
JP2012248210A (ja) 日本語などの複雑言語のコンテンツを検索するシステム及び方法
JP5710581B2 (ja) 質問応答装置、方法、及びプログラム
JP2002215619A (ja) 翻訳文書からの翻訳文抽出方法
US7475005B2 (en) Translation system, dictionary updating server, translation method, and program and recording medium for use therein
Ahmed et al. Revised n-gram based automatic spelling correction tool to improve retrieval effectiveness
JP2011118689A (ja) 検索方法及びシステム
JPWO2010109594A1 (ja) 文書検索装置、文書検索システム、文書検索プログラム、および文書検索方法
JP4640593B2 (ja) 多言語文書検索装置および多言語文書検索方法、並びに、多言語文書を検索するプログラム
JP4162223B2 (ja) 自然文検索装置、その方法及びプログラム
JP3682915B2 (ja) 自然文マッチング装置、自然文マッチング方法、及び自然文マッチングプログラム
JP5298834B2 (ja) 例文マッチング翻訳装置、およびプログラム、並びに翻訳装置を含んで構成された句翻訳装置
KR100885527B1 (ko) 문맥 기반 색인데이터 생성장치와 문맥기반 검색장치 및 그방법
JP2004280316A (ja) 分野判定装置及び言語処理装置
Beumer Evaluation of Text Document Clustering using k-Means
CN113486155B (zh) 一种融合固定短语信息的中文命名方法
Lembersky et al. Morphological disambiguation of Hebrew: a case study in classifier combination

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050222

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050421

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050520

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20080603

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20090603

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110603

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees