(57)【要約】【課題】インターネット上にある、たえず動的に変化する莫大な情報からユーザが必要とする情報を簡易な入力で入手できるようにする。【解決手段】解答生成部３ａはインターフェースエージェント１から質問文をもらって、質問応答データベース２を使って解答を生成する。ＳＩＯＮｅｔ・Ｗｅｂ検索エージェントコントロール部３ｂは、この解答と、質問文を分析し、十分な解答であれば解答生成部３ａからインターフェースエージェント１に解答を返す。もし、十分な解答でなければ、最初Ｗｅｂ検索エージェント４に必要な文書をＷｅｂから収集するように依頼する。この時、質問文から、その質問に関連するキーワード列を生成し、Ｗｅｂ検索エージェント４に入力する。Ｗｅｂ検索エージェント４からいくつかの文章が返される。これを質問応答データベース２に入力し、解答生成部３ａでもう一度解答を生成する。【選択図】　　図１
2004102494.tif 000002
【特許請求の範囲】
【請求項１】
自然言語で記述された質問を入力し、該質問に対する解答を単語の形で出力する質問応答方法であって、
インターフェースエージェントから質問文を入力し、Ｗｅｂから集めた情報と、個人情報がパラグラフ単位で格納されている質問応答データベースを使って解答を生成するステップと、
前記質問文と前記解答をチェックして、該解答が十分な解答であるかどうか判断するステップと、
十分な解答の場合、該解答を前記インターフェースエージェントに返すステップと、
十分な解答でない場合、前記質問文から該質問文に特徴的なキーワード列を生成し、解答に必要な文書の収集をＷｅｂ検索エージェントに依頼するステップと、
前記Ｗｅｂ検索エージェントから返ってきた、前記キーワード列をもとに選択されたＷｅｂパラグラフを前記質問応答データベースに入力して再度、解答を生成するステップと、
前記解答が適切かどうか判断するステップと、
前記解答が適切だと判断されると、該解答を前記インターフェースエージェントに渡すステップと、
前記解答が不適切だと判断されると、前記キーワード列からカテゴリー情報を生成し、前記キーワード列、カテゴリー情報、アクセス情報をＳＩＯＮｅｔエージェントに渡すステップを有するインターネット質問解答方法。
【請求項２】
自然言語で記述された質問を入力し、該質問に対する解答を単語の形で出力する装置であって、
インターフェースエージェントから質問文を入力し、Ｗｅｂから集めた情報と、個人情報が各々パラグラフ単位で格納されている質問応答データベースを使って解答を生成する解答生成手段と、
前記解答と前記質問文を解析し、前記解答が十分な解答であれば、前記解答生成手段を介して前記インターフェースエージェントに前記解答を返し、十分な解答でなければ、前記質問文から関連するキーワード列を生成しＷｅｂ検索エージェントに入力し、該Ｗｅｂ検索エージェントから返された文章を前記解答生成手段に渡して再度、解答を生成させ、該解答を解析し、十分な解答であれば前記解答生成手段を介して前記インターフェースエージェントに前記解答を返し、十分な解答でなければＳＩＯＮｅｔエージェントに、質問のキーワード列から生成したカテゴリー情報を与えて必要な文章を依頼するＳＩＯＮｅｔ・Ｗｅｂ検索エージェントコントロール手段と、
前記ＳＩＯＮｅｔおよび他の装置と前記質問応答データベースの間で情報の交換を行う情報交換処理手段を有する質問応答装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はインターネット情報検索システムに関し、特に自然言語で記述された質問に対して、文書データをもとに、その解答を返す質問応答方法および装置に関する。
【０００２】
【従来の技術】
自然言語で入力された質問に対し、文書データをもとに、その答えを返す質問・応答システムがこれまでに開発されている（例えば非特許文献１、非特許文献２）。これらのシステムの情報源は過去の新聞記事やｗｅｂである。
【０００３】
【非特許文献１】
佐々木裕、磯崎秀樹、平博順、平尾努、賀沢秀人、鈴木潤、国領弘治、前田英作、日本電信電話株式会社ＮＴＴコミュニケーション科学基礎研究所「ＳＡＩＱＡ：大量文書に基づく質問応答システム」情報処理学会　研究報告書　「情報学基礎」　Ｎｏ．０６４
【非特許文献２】
ｈｔｔｐ：／／ｗｗｗ．ａｉ．ｍｉｔ．ｅｄｕ／ｐｒｏｊｅｃｔａ／ｉｎｆｏｌａｂ／　　Ｂ．Ｋａｔｚ（ＭＩＴ）“Ｆｒｏｍ　ＳｅｎｔｅｎｃｅＰｒｏｃｅｓｓｉｎｇ　ｔｏ　Ｉｎｆｏｒｍａｔｉｏｎ　Ａｃｃｅｓｓ　ｏｎ　ｔｈｅ　Ｗｏｒｌｄ　Ｗｉｄｅ　Ｗｅｂ”ＡＡＡＩ　Ｓｐｒｉｎｇ　Ｓｙｍｐｏｓｉｕｍ　ｏｎ　Ｎａｔｕｒａｌ　Ｌａｎｇｕａｇｅ　Ｐｒｏｃｅｓｓｉｎｇ　ｆｏｒ　ｔｈｅ　Ｗｏｒｌｄ　Ｗｉｄｅ　Ｗｅｂ，　Ｓｔａｎｆｏｒｄ　Ｕｎｉｖｅｒｓｉｔｙ，　Ｓｔａｎｆｏｒｄ　ＣＡ（１９９７）．
【０００４】
【発明が解決しようとする課題】
上述した従来の質問応答システムでは、その情報源が、過去の新聞記事や、ある時点のｗｅｂ記事などのように固定されたものであったので、たえず変化する莫大な情報からユーザが必要とする情報を入手できない場合があった。
【０００５】
本発明の目的は、情報源がより柔軟で、ユーザが、たえず変化する莫大な情報から必要とする情報を入力することができる質問解答方法および装置を提供することにある。
【０００６】
【課題を解決するための手段】
本発明の質問応答方法は、
インターフェースエージェントから質問文を入力し、Ｗｅｂから集めた情報と、個人情報がパラグラフ単位で格納されている質問応答データベースを使って解答を生成するステップと、
前記質問文と前記解答をチェックして、該解答が十分な解答であるかどうか判断するステップと、
十分な解答の場合、該解答をインターフェースエージェントに返すステップと、
十分な解答でない場合、前記質問文から該質問文に特徴的なキーワード列を生成し、解答に必要な文書の収集をＷｅｂ検索エージェントに依頼するステップと、
Ｗｅｂ検索エージェントから返ってきた、前記キーワード列をもとに選択されたＷｅｂパラグラフを質問応答データベースに入力して再度、解答を生成するステップと、
前記解答が適切かどうか判断するステップと、
前記解答が適切だと判断されると、該解答をインターフェースエージェントに渡すステップと、
前記解答が不適切だと判断されると、前記キーワード列からカテゴリー情報を生成し、前記キーワード列、カテゴリー情報、アクセス情報をＳＩＯＮｅｔエージェントに渡すステップを有する。
【０００７】
本発明は、エージェントを利用して、各ユーザが過去に集めたｗｅｂ記事や、個人情報を互いに交換することで、情報源をより柔軟でダイナミックなものにし、ユーザがたえず動的に変化する莫大な情報から必要とする情報を入手できるようにしたものである。
【０００８】
【発明の実施の形態】
次に、本発明の実施の形態について図面を参照して説明する。
【０００９】
図１を参照すると、本発明の一実施形態の質問応答装置を含むインターネット質問応答システムはインターフェースエージェント１と質問応答データベース２とＱＡエージェント３とＷｅｂ検索エージェント４とＳＩＯＮｅｔエージェント５で構成されている。本実施形態は意味情報ネットワーク（ＳＩＯＮｅｔ）をベースにした例である。意味情報ネットワークを説明した公知文献として、星合隆成、他、“意味情報ネットワークアーキテクチャ”、電子情報通信学会論文誌Ｂ、Ｖｏｌ．Ｊ８４−Ｂ、Ｎｏ．３，ｐｐ４１１−４２４（２００１−３）がある。
【００１０】
インターフェースエージェント１は、ユーザが入力した質問文をＱＡエージェント３に送り、また、質問文からユーザの傾向を表すプロファイルを生成し（既存手法（例えば　ＨＹＰＥＲＬＩＮＫ　”ｈｔｔｐ：／／ｗｗｗ．ｎｔｔｄａｔａ．ｃｏ．ｊｐ／ｒｄ／ｔｅｃｈ／ｃｏｎｔｅｎｔｓ／を参照”　ｈｔｔｐ：／／ｗｗｗ．ｎｔｔｄａｔａ．ｃｏ．ｊｐ／ｒｄ／ｔｅｃｈ／ｃｏｎｔｅｎｔｓ／を参照）を利用）、またユーザが入力した個人に関する情報をアクセスコントロール情報としＱＡエージェント３に送る。ここで、アクセスコントロール情報とは、情報にアクセスできるか、個人の資格を判断する情報である。たとえば、ある情報にはグループＡ、グループＢのメンバしかアクセスできないという制限がアクセスコントロール情報である。使い方は、情報要求者は自分がＡのメンバであることを証明するデジタル署名を提示し、システムはこれをチェックし、パスすればその情報を提供する。
【００１１】
質問応答データベース２には、Ｗｅｂから集めた情報２ａと、個人情報２ｂが各々パラグラフ単位で格納されている。各パラグラフには、ＩＤＦ（Ｉｎｖｅｒｓｅ　Ｄｏｃｕｍｅｎｔ　Ｆｒｅｑｕｅｎｃｙ）に基づいて抽出したキーワード列をさらにカテゴリーに変換した情報が付与されている。ここで「カテゴリー」とは、カテゴリーキーワードと呼ばれる、様々な分野を代表する決められたキーワードの集合である。そして、「カテゴリーに変換」とは、カテゴリーの中から、与えられたキーワード列に最も近いカテゴリーキーワードを選択することである（後述のカテゴリ情報抽出アルゴリズムを利用）。さらに、個人情報のパラグラフには、ユーザが指定したアクセスコントロール情報も付加されている。
【００１２】
ＱＡエージェント３は解答生成部３ａとＳＩＯＮｅｔ・Ｗｅｂ検索エージェントコントロール部３ｂと情報交換処理部３ｃを含む。解答生成部３ａはインターフェースエージェント１から質問文をもらって、質問応答データベース２を使って解答を生成する（既存の質問・応答システム（例えば非特許文献１、非特許文献２）を利用）。ＳＩＯＮｅｔ・Ｗｅｂ検索エージェントコントロール部３ｂは、この解答と、質問文を分析し、十分な解答であれば解答生成部３ａからインターフェースエージェント１に解答を返す。もし、十分な解答でなければ、最初Ｗｅｂ検索エージェント４に必要な文書をＷｅｂから収集するように依頼する。この時、質問文から、その質問に関連するキーワード列を生成し（既存手法（例えば　ＨＹＰＥＲＬＩＮＫ　”ｈｔｔｐ：／／ｗｗｗ．ｎｔｔｄａｔｅ．ｃｏ．ｊｐ／ｒｄ／ｔｅｃｈ／ｃｏｎｔｅｎｔｓ／を参照”　ｈｔｔｐ：／／ｗｗｗ．ｎｔｔｄａｔｅ．ｃｏ．ｊｐ／ｒｄ／ｔｅｃｈ／ｃｏｎｔｅｎｔｓ／を参照）を利用）、Ｗｅｂ検索エージェント４に入力する。Ｗｅｂ検索エージェント４からいくつかの文章が返される。これを質問応答データベース２に入力し、解答生成部３ａでもう一度解答を生成する。これを解析して、十分な解答であればインターフェースエージェント１にそれを返す。ＳＩＯＮｅｔ・Ｗｅｂ検索エージェントコントロール部３ｂは、十分な解答でなければＳＩＯＮｅｔエージェント５に、質問のキーワード列から生成したカテゴリー情報を与えて必要な文章を依頼する。情報交換処理部３ｃは、ディスカバリシステム（例えばＳＩＯＮｅｔ）を通じて必要な情報を持つ他のＱＡエージェントから情報を収集し、質問応答データベース２に送ったり、逆に他のエージェントから必要情報を求められてそれを質問応答データベース２から検索して転送する。
【００１３】
Ｗｅｂ検索エージェント４は、ＱＡエージェント３から入力されたキーワード列をもとに、サーチエージェント（Ｗｅｂサーチエンジン）に検索要求をかける。サーチエージェントから返されたＨＴＭＬ（Ｈｙｐｅｒ　Ｔｅｘｔ　Ｍａｒｋｕｐ　Ｌａｎｇｕａｇｅ）をパラグラフ単位に分解し、上記キーワード列をもとにパラグラフの選択処理を行う（後述の文章選択アルゴリズムを利用）。選択されたパラグラフをＱＡエージェント３に返す。
【００１４】
ＳＩＯＮｅｔエージェント５はＱＡエージェント３から入力されたカテゴリー情報をもとに、そのカテゴリーにマッチする情報を持つＱＡエージェントをインターネット上で探すためＳＩＯＮｅｔにそのカテゴリー情報とキーワード列を渡す。また、他のＳＩＯＮｅｔエージェントが情報を求めてカテゴリー情報とキーワード列を発信したとき、その情報をＳＩＯＮｅｔで受信するか否かを決定するためのフィルタ情報をＳＩＯＮｅｔに設定する。他のＳＩＯＮｅｔエージェントからカテゴリー情報とキーワード列を受信したら、その情報を情報交換処理部３ｃに送る。
【００１５】
次に、本エージェント検索システムの処理の流れを説明する。
（１）質問文から解答を生成（図２）
ユーザから質問文がインターフェースエージェント１に入力される（ステップ１１）。インターフェースエージェント１はその質問文をユーザプロファイルに反映させる。インターフェースエージェント１はその質問文と、もしユーザプロファイルが大きく変わった場合は、ユーザプロファイルをＱＡエージェント３に入力する（ステップ１２）。
【００１６】
ＱＡエージェント３は、解答生成部３ａで、質問応答データベース２を利用して解答を生成し、質問文とその解答をＳＩＯＮｅｔ・Ｗｅｂ検索エージェントコントロール部３ｂに送る（ステップ２１）。ＳＩＯＮｅｔ・Ｗｅｂ検索エージェントコントロール部３ｂでは、入力された質問文と解答をチェックして、十分な解答であるかを判断する（ステップ２２）。十分な解答であれば、解答を解答生成部３ｃを介してインターフェースエージェント１に返す（ステップ２３）。十分な解答でない場合、質問文からＩＤＦを利用してその質問文に特徴的なキーワード列を生成し、Ｗｅｂ検索エージェント４に解答に必要な文書の収集を依頼する（ステップ２４）。
【００１７】
キーワード列を入力されたＷｅｂ検索エージェント４は、既存の検索エンジンを使ってキーワード列と関係するＨＴＭＬ文書を集め、パラグラフの形に変換する（ステップ３１）。その後、キーワード列をもとに、関係するパラグラフを選択し（後述の文章選択アルゴリズムを利用）、ＱＡエージェント３に返す（ステップ３２）。
【００１８】
ＱＡエージェント３のＳＩＯＮｅｔ・Ｗｅｂ検索部エージェントコントロール部３ｂは、Ｗｅｂ検索エージェント４から返ってきたパラグラフを質問応答データベース２に入力し、もう一度解答生成部３ａで解答を生成し、入力する（ステップ２５）。
【００１９】
ＳＩＯＮｅｔ・Ｗｅｂ検索エージェントコントロール部３ｂでその解答が適切だと判断されれば（ステップ２６）、結果をインターフェースエージェント１に渡す（ステップ２７）。そうでない場合、キーワード列からカテゴリー情報を生成し（後述のカテゴリ情報抽出アルゴリズムを利用）、キーワード列、カテゴリー情報、アクセス情報をＳＩＯＮｅｔエージェント５に渡す（ステップ２８）。
【００２０】
ＳＩＯＮｅｔエージェント５は、カテゴリーをＳＩＯＮｅｔのイベントタイプに設定し、キーワード列とアクセス情報とＱＡエージェント３のＩＤをイベントのデータに格納し、ＳＩＯＮｅｔに渡す（ステップ４１）。
【００２１】
他のＱＡエージェントから、上記情報の要求に対して文書の提供がＱＡエージェント３にあったとき、ＱＡエージェント３はその文書を質問応答データベース２に入力し、もう一度解答生成部３ａで解答を生成し、その結果をインターフェースエージェント１に返す。
（２）初期設定
ＳＩＯＮｅｔ・Ｗｅｂ検索エージェントコントロール部３ｂは質問応答データベース２の各パラグラフに対して、ＩＤＦを利用してキーワード列を抽出し、それをもとに各々のパラグラフの関連するカテゴリー情報を作成し、そのパラグラフにラベル付けするとともに、それらのカテゴリーキーワードを集めた集合（フィルタ情報）をＳＩＯＮｅｔエージェント５を通して、ＳＩＯＮｅｔのフィルタに設定する。
（３）文書要求処理
他のＳＩＯＮｅｔエージェントが発信した文書要求情報がＳＩＯＮｅｔを通じてＳＩＯＮｅｔエージェント５に届いた場合、そのイベントに含まれるタイプ（カテゴリー情報）と、データ（キーワード列、アクセス情報、ＱＡエージェントのＩＤ）をＱＡエージェント３に渡す。
【００２２】
上記の情報を得たＱＡエージェント３は、質問応答データベース２のパラグラフで、同じカテゴリーのラベル付けを持ち、「キーワード列」と照合度が高く、「アクセス情報」がアクセス制限をパスするパラグラフがあるかを探す。あった場合は、「ＱＡエージェントのＩＤ」で示されたＱＡエージェントにそのパラグラフを送信する。
【００２３】
文章（パラグラフ）選択アルゴリズム
キーワード列と複数のパラグラフが与えられた時、そのキーワードに関係の近いパラグラフの選択を以下のように行う。キーワード列の言葉がかたまって多く出ているパラグラフほど、そのキーワード列に近くなる。
（１）キーワード列［Ｗ１，Ｗ２，．．，Ｗｎ］が与えられた時（Ｗｉがキーワード）、類義語生成装置を使って、各キーワードＷｉに対して、そのＷｉの類義語Ｗｉ（１），Ｗｉ（２），．．を決められた数だけ生成する。
（２）各パラグラフをストリング（ｓｔｒｉｎｇ）とみる。パラグラフの位置を指し示すポインタをｐｔｒとし、その初期値を０（パラグラフの先頭）とする。ポインタｐｔｒは下記の計算で一語ずつパラグラフの中を進んでいく。選別ベクトルは長さｎのベクトルで初期値を［０，．．，０］とする。
（３）各パラグラフに対して、その選別ベクトルの計算は次のように行う。今、ベクトルが［ｖ１，．．，ｖｎ］のとき、ポインタｐｔｒが一つ大きくなって、その部分があるＷｉ（ｊ）に一致するならば
【００２４】
【外１】
2004102494.tif 000003
とし（ｃはパラメータ、ｅはｅｘｐ）、どのＷｉ（ｊ）にも一致しないならば
【００２５】
【外２】
2004102494.tif 000004
とする。一つのパラグラフにおいて、ポインタｐｔｒをパラグラフの先頭から末尾まで動かした時、選別ベクトル［ｖ１，．．，ｖｎ］は変化するが、その時のｖ１＋．．＋ｖｎの最大値をパラグラフの選別値とする。
（４）選別値の高いパラグラフを選択する。
【００２６】
カテゴリ情報抽出アルゴリズム
（１）キーワード列からキーワード木の生成を以下のように行う。
キーワード列［Ｗ１，．．，Ｗｎ］が与えられた時、類似度判別装置を利用して概念木のリーフに各キーワードを対応づける。ここで、類似度判別装置は観点を利用できるものとする。すなわち、キーワードＷｉとリーフの類似度を、Ｗｉ以外のキーワードを観点として計算できるものとする。この計算により、キーワードが対応付けられたリーフのみをリーフとする概念木の部分木をキーワードの生成木とする。
（２）カテゴリとしてあらかじめ与えられているカテゴリーキーワードＣ１，．．，Ｃｍに対して、類似度判別装置を利用して概念木のリーフに対応づける。概念木の根からその対応付けられたリーフまでの枝をそのカテゴリーキーワードの枝と呼ぶ。
（３）キーワードの対応付けられたリーフをもつ概念木の枝［ｎ１，．．，ｎｐ，ｗ］と［ｍ１，．．，ｍｑ，ｖ］の類似度を以下のように計算する。ここで、Ｗ（ｎ１），．．，Ｗ（ｍ１），．．を概念木のノードに対応するキーワード、ｗ，ｖは各々対応付けられたキーワードとする。概念木には深さｄがあり、また各ノードには０からｄ−１のどれかのレベルが対応する。このとき［ｎ１，．．，ｎｐ，ｗ］と［ｍ１，．．，ｍｑ，ｖ］の近さＳｉｍ（［ｎ１，．．，ｎｐ，ｗ］，［ｍ１，．．，ｍｑ，ｖ］）を下記の式で計算する。
【００２７】
【外３】
2004102494.tif 000005
ｓｉｍ（ｗ，ｖ）は、類似度判別装置で計算したキーワードｗ、ｖの類似度、ｌｅｖｅｌ＿ｎｏｄｅ（ｋ，［ｎ１，．．，ｎｐ］）は、ノードｎ１，．．，ｎｐの中で，ｌｅｖｅｌがｋ以上、ｋ＋１未満のノードをあらわす。θｋはパラメータである。
（４）キーワード列［Ｗ１，．．，Ｗｎ］が与えられると、（１）のようにして概念木の枝ｐｔ１，．．，ｐｔｎが生成される。カテゴリーキーワードＣが与えられると（２）により概念木の枝ｐｔが生成される。このとき、キーワード列［Ｗ１，．．，Ｗｎ］とカテゴリーキーワードＣの近さを（Ｓｉｍ（ｐｔ１，ｐｔ）＋．．＋Ｓｉｍ（ｐｔｎ，ｐｔ））／ｎとする。
（５）キーワード列が与えられた時、そのキーワード列と最も近いカテゴリーキーワードをこのキーワード列に対応するカテゴリ情報とする。
【００２８】
図３は、文書（パラグラフ）選択アルゴリズムの例で、キーワード列［Ｗ１，Ｗ２，Ｗ３，Ｗ４］（図３（１））に対して、類義語がＷ１（１）、Ｗ１（２）、Ｗ２（１）、Ｗ３（１）、Ｗ３（２）、Ｗ３（３）、Ｗ４（１）のとき（図３（２））、図３（３）のように類義語が出現すると、近さは左から右のケースで大きくなる。
【００２９】
図４は、カテゴリ情報抽出アルゴリズムの例で、同音異義語を文脈から区別して、正しくカテゴリを決定している。すなわち、同じ、「株」であっても、そのキーワード列の他のキーワードによって、植物の「株」か、株式の「株」かがキーワード木生成の部分で判定される。
【００３０】
図５、図６は、質問・応答の例である。例１では、インターネットに流れた最新のデータを出力している。例２では、新聞などにはないマイナーな情報を出力している。例３では、特定の人間にしかアクセス権のないデータを出力している。
【００３１】
【発明の効果】
以上説明したように、本発明によれば、インターネット上にある、たえず動的に変化する莫大な情報から、自然言語での質問文という非常に簡単な入力で、ユーザが必要とする情報を入手することが可能となる。
【図面の簡単な説明】
【図１】本発明の一実施形態の質問応答装置を含むインターネット質問応答システムの構成図である。
【図２】図１のシステムの動作を示すシーケンス図である。
【図３】文章（パラグラフ）選択アルゴリズムの例を示す図である。
【図４】カテゴリ情報抽出アルゴリズムの例を示す図である。
【図５】質問・応答の例を示す図である。
【図６】質問・応答の例を示す図である。
【符号の説明】
１　　インターフェースエージェント
２　　質問応答データベース
２ａ　　インターネットから取得した情報
２ｂ　　個人情報
３　　ＱＡエージェント
３ａ　　解答生成部
３ｂ　　ＳＩＯＮｅｔ・Ｗｅｂ検索エージェントコントロール部
３ｃ　　情報交換処理部
４　　Ｗｅｂ検索エージェント
５　　ＳＩＯＮｅｔエージェント
１１、１２、２１〜２８、３１、３２、４１　ステップ
【図１】
2004102494.tif 000006
【図２】
2004102494.tif 000007
【図３】
2004102494.tif 000008
【図４】
2004102494.tif 000009
【図５】
2004102494.tif 000010
【図６】
2004102494.tif 000011