(57)【要約】【課題】  適切な類似データの提示を行う。【解決手段】  検索条件としてのメッセージ・データを受信した場合、メッセージ・データ格納部に格納するステップと、所定のアルゴリズムを用いて、メッセージ・データ格納部に格納されたメッセージ・データに対応する記事データを記事データ格納部から抽出し、抽出記事データ格納部に格納するステップと、所定の条件が満たされた場合、メッセージ・データ格納部に格納されているメッセージ・データに含まれるキーワード候補のうち、抽出記事データ格納部に格納された記事データに予め対応付けられている検索用キーワードと異なるキーワード候補を抽出し、非解決キーワード格納部に格納するステップと、非解決キーワード格納部に格納されたキーワード候補又はユーザから指定された語句を、除外キーワードとして抽出記事データ格納部に格納された記事データに対応付けて記事データ格納部に更新登録するステップとを含む。【選択図】図１
2005157547.tif 000002
【特許請求の範囲】
【請求項１】
検索条件としてのメッセージ・データを受信した場合、メッセージ・データ格納部に格納するステップと、
所定のアルゴリズムを用いて、前記メッセージ・データ格納部に格納された前記メッセージ・データに対応する記事データを記事データ格納部から抽出し、抽出記事データ格納部に格納するステップと、
所定の条件が満たされた場合、前記メッセージ・データ格納部に格納されているメッセージ・データに含まれるキーワード候補のうち、前記抽出記事データ格納部に格納された前記記事データに予め対応付けられている検索用キーワードと異なるキーワード候補を抽出し、非解決キーワード格納部に格納するステップと、
前記非解決キーワード格納部に格納された前記キーワード候補又はユーザから指定された語句を、除外キーワードとして前記抽出記事データ格納部に格納された前記記事データに対応付けて前記記事データ格納部に更新登録するステップと、
を含み、コンピュータにより実行される類似記事抽出方法。
【請求項２】
前記所定のアルゴリズムが、前記メッセージ・データに含まれる、少なくとも一部の語句に一致する検索用キーワードが対応付けられている第１記事データの抽出、及び抽出された当該第１記事データのうち、前記メッセージ・データに含まれる、少なくとも一部の語句に一致する除外キーワードが対応付けられている記事データを除いた第２記事データを抽出するためのアルゴリズムであることを特徴とする請求項１記載の類似記事抽出方法。
【請求項３】
前記第２記事データの内容をユーザが確認するためのデータを生成し、出力するステップと、
前記第２記事データの内容を確認した前記ユーザからの要求に従って、前記第１記事データの内容を前記ユーザが確認するためのデータを生成し、出力するステップと、
をさらに含む請求項２記載の類似記事抽出方法。
【請求項４】
前記所定の条件が、前記抽出記事データ格納部に格納された前記記事データの内容が不十分であるというユーザからの指示を検知することであることを特徴とする請求項１乃至３のいずれか１つに記載の類似記事抽出方法。
【請求項５】
検索条件としてのメッセージ・データを受信した場合、メッセージ・データ格納部に格納するステップと、
所定のアルゴリズムを用いて、前記メッセージ・データ格納部に格納された前記メッセージ・データに対応する記事データを記事データ格納部から抽出し、抽出記事データ格納部に格納するステップと、
所定の条件が満たされた場合、前記メッセージ・データ格納部に格納されているメッセージ・データに含まれるキーワード候補のうち、前記抽出記事データ格納部に格納された前記記事データに予め対応付けられている検索用キーワードと異なるキーワード候補を抽出し、非解決キーワード格納部に格納するステップと、
前記非解決キーワード格納部に格納された前記キーワード候補又はユーザから指定された語句を、除外キーワードとして前記抽出記事データ格納部に格納された前記記事データに対応付けて前記記事データ格納部に更新登録するステップと、
をコンピュータに実行させる類似記事抽出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、類似記事検索のための技術に関するものである。
【背景技術】
【０００２】
ユーザからの質問を受け付けて回答を提示するシステムにおいて、全ての質問に対して個別に回答する手間を省くために、類似の質問が含まれる過去のデータをユーザに提示する技術が一般的に用いられている。
【０００３】
例えば、電子メールにおける段落を分析することにより、質問の段落及び回答の段落を特定し、過去の質問に類似する質問に対しては自動的に回答するような技術が存在する（例えば特許文献１参照）。すなわち、段落機能解析手段は、段落機能決定規則蓄積手段の段落機能決定規則に基づき、電子メールの本文から質問の段落を解析する。また、前の段落が質問であり且つ引用文であった場合、その段落は回答であるという段落機能決定規則により、回答の段落を判定する。回答検索手段は、電子メールで質問の段落が含まれていた場合、質問の段落から任意のキーワードを抽出し、このキーワードに基づき、同様のキーワードを有する質問を有し、且つその回答を有する電子メールを検索し、検索の結果得られた電子メールの回答を、質問の電子メールに対する回答と決定する。
【０００４】
また例えば、質問データからキーワードを抽出し、当該キーワードに基づき過去の類似質問を検索してユーザに示す技術も存在する（例えば特許文献２参照）。すなわち、質問送信端末と、質問受信サーバとがネットワークで接続されている質問管理システムを用い、端末で入力された新規質問をサーバへ送信し、サーバの記憶装置に保持された辞書と過去質問とを参照しながら、新規質問からキーワードを抽出し、キーワードと過去質問中のキーワードとが１以上一致する過去質問を質問送信端末へ送信し、送信した過去質問の全てが新規質問と内容が異なるという指示を質問送信端末から受信した場合には、新規質問をサーバの記憶装置に保持する。
【０００５】
また例えば、教育用システムにおいて、ユーザによる類似質問の検索を可能とする技術も存在する（例えば特許文献３参照）。すなわち、質問者である生徒が回答要求を行うと、回答者情報に設定されている複数の回答者に対し優先順位に基づいて間い合わせを行い、空いている回答者に質問を送信する。また、全ての回答者が回答中の場合は、回答者情報に設定されている回答者全員にリクエストイベントを送り、質問は質問待ちバッファに格納し、現在の回答処理が終了するまで待機し、リクエストイベントに基づいて回答者から質問開始の合図が送られてきたら質問を行う。また、生徒は、リクエストイベントの制限待ち時間を過ぎたなら、質問待ちバッファの内容をそのまま電子メールとして回答者に送信することによって後で回答を得るか、過去の質問とその回答が蓄積されているデータベースを参照して類似する質問の検索を行うことによって、もし類似する質問が存在すればその時に回答を得る。
【特許文献１】特開平１０−２５４７９５号公報
【特許文献２】特開２００２−３２４１６３号公報
【特許文献３】特開平８−２３５０８９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、このような従来技術によると、例えばユーザが質問を投稿した場合に、類似の過去の質問及び回答データが大量にユーザに提示される場合があり得る。そして、ユーザは、提示された大量のデータの中から自分が必要としているデータを見つけ出さなければならない。但し、あくまでも類似のデータであるため、必ずしもその中にユーザが求めているものがあるとは限らない。そのため、データの蓄積量の増加に伴い、ユーザが回答を得にくくなってしまうというようなことが考えられる。また、例えばあるユーザが特定の質問に対する類似のデータを参照して、必要とするデータがなかったことが分かったとしても、例えば他のユーザが同様の質問を投稿すると、同様の類似データが提示されてしまう。すなわち、ユーザにとって適切な類似データの参照を可能としているとは言えない。
【０００７】
なお、このような質問回答システム等では、類似と判定する範囲を狭くするなど、あまり厳密な検索を行うようにすると、類似のデータが検索されないケースが増え、適切ではない。
【０００８】
そのため、本発明の目的は、適切な類似データを提示するための新規な技術を提供することである。
【課題を解決するための手段】
【０００９】
本発明に係る方法は、検索条件としてのメッセージ・データを受信した場合、メッセージ・データ格納部に格納するステップと、所定のアルゴリズムを用いて、メッセージ・データ格納部に格納されたメッセージ・データに対応する記事データを記事データ格納部から抽出し、抽出記事データ格納部に格納するステップと、所定の条件が満たされた場合、メッセージ・データ格納部に格納されているメッセージ・データに含まれるキーワード候補のうち、抽出記事データ格納部に格納された記事データに予め対応付けられている検索用キーワードと異なるキーワード候補を抽出し、非解決キーワード格納部に格納するステップと、非解決キーワード格納部に格納されたキーワード候補又はユーザから指定された語句を、除外キーワードとして抽出記事データ格納部に格納された記事データに対応付けて記事データ格納部に更新登録するステップとを含む。
【００１０】
このように、検索対象となる記事データに除外キーワードを対応付けることにより、通常の検索用キーワードによる検索に加えて、除外キーワードを用いた検索も可能となる。例えば特定の除外キーワードを含む検索条件（メッセージ・データ）に対して、同一の除外キーワードが対応付けられた記事データを抽出しないというような検索処理も可能となる。これによれば、ユーザに示す記事データを絞り込むことができる。
【００１１】
また、上記所定のアルゴリズムが、メッセージ・データに含まれる、少なくとも一部の語句に一致する検索用キーワードが対応付けられている第１記事データの抽出、及び抽出された当該第１記事データのうち、メッセージ・データに含まれる、少なくとも一部の語句に一致する除外キーワードが対応付けられている記事データを除いた第２記事データを抽出するためのアルゴリズムであってもよい。
【００１２】
これにより、検索キーワードにより抽出された第１記事データと、第１記事データを除外キーワードにより絞り込んだ第２記事データとを特定しておくことができる。そして、例えばユーザの要求によって、第１記事データを示したり第２記事データを示したりすることができる。
【００１３】
また、第２記事データの内容をユーザが確認するためのデータを生成し、出力するステップと、第２記事データの内容を確認したユーザからの要求に従って、第１記事データの内容をユーザが確認するためのデータを生成し、出力するステップとをさらに含むようにしてもよい。
【００１４】
このように、絞り込まれた（件数が少ない可能性が高い）データである第２記事データをまず始めにユーザに示し、ユーザからの要求があれば、絞り込まれていない第１記事データを示すことにより、除外キーワードによる絞込みが有効に作用しない場合にも対処可能となる。
【００１５】
また、上記所定の条件が、抽出記事データ格納部に格納された記事データの内容が不十分であるというユーザからの指示を検知することであってもよい。このように、ユーザが求めている記事ではないのに検索にヒットした記事データについて除外キーワードが設定されるようにすると、例えばその後、他のユーザにより同様の検索条件で検索が行われたとしても、除外キーワードが設定されている記事データ（当該検索においてユーザが求めている記事ではない可能性が高い記事データ）は提示されないようになる。すなわち、他のユーザの利便性が高まる。
【００１６】
なお、本発明に係る方法をコンピュータに実行させるためのプログラムを作成することも可能であって、当該プログラムは、例えばフレキシブル・ディスク、ＣＤ−ＲＯＭ、光磁気ディスク、半導体メモリ、ハードディスク等の記憶媒体又は記憶装置に格納される。また、ネットワークを介してデジタル信号として配信される場合もある。なお、処理途中のデータについては、コンピュータのメモリ等の記憶装置に一時保管される。
【発明の効果】
【００１７】
本発明によれば、ユーザにとって不要である可能性の高いものを除外した類似データをユーザに示すことができ、適切な類似データの提示を行うことができる。
【発明を実施するための最良の形態】
【００１８】
本発明の一実施の形態に係るシステム構成図を図１に示す。例えば企業内ネットワークであるネットワーク１には、例えばパーソナル・コンピュータである１又は複数のユーザ端末３、担当者端末７及び管理者端末９と、質問及び回答を投稿又は検索するための電子掲示板サービスを行うＱＡ（Question and Answer）サーバ５とが無線又は有線により接続されている。なお、ネットワーク１がインターネット等、他のネットワークの場合もある。
【００１９】
また、ユーザ端末３、担当者端末７、管理者端末９及びＱＡサーバ５は、図２に示すようなコンピュータ装置であって、メモリ２０１とＣＰＵ２０３とハードディスク・ドライブ（ＨＤＤ）２０５と表示装置２０９に接続される表示制御部２０７とリムーバブル・ディスク２１１用のドライブ装置２１３と入力装置２１５とネットワークに接続するための通信制御部２１７とがバス２１９で接続されている。オペレーティング・システム（ＯＳ：Operating System）及び本実施の形態における処理を実現するためのプログラムを含むアプリケーション・プログラムは、ＨＤＤ２０５に格納されており、ＣＰＵ２０３により実行される際にはＨＤＤ２０５からメモリ２０１に読み出される。必要に応じてＣＰＵ２０３は、表示制御部２０７、通信制御部２１７、ドライブ装置２１３を制御して、必要な動作を行わせる。また、処理途中のデータについては、メモリ２０１に格納され、必要があればＨＤＤ２０５に格納される。本発明の実施の形態における処理を実現するためのプログラムは例えばリムーバブル・ディスク２１１に格納されて頒布されドライブ装置２１３から、又はネットワーク及び通信制御部２１７を介して受信し、ＨＤＤ２０５にインストールされる。このようなコンピュータ装置は、上で述べたＣＰＵ２０３、メモリ２０１などのハードウエアとＯＳ及び必要なアプリケーション・プログラムとが有機的に協働することにより、以下で説明する各種機能を実現する。
【００２０】
図１の説明に戻り、ユーザ端末３及び担当者端末７は、各々ウェブ（Ｗｅｂ）ブラウザ機能を有し、例えばＱＡサーバ５からネットワーク１を介して送信されたＷｅｂページ・データを受信して表示することが可能となっている。管理者端末９は以下に述べる各データベース（ＤＢ）に対してアクセスする機能を有し、システム管理者等によるデータの登録や修正等を可能としている。
【００２１】
ＱＡサーバ５には、ＤＢアクセス部５１と品詞分解部５３と非解決キーワード抽出部５５とＷｅｂサーバ部５７とワーク・メモリ領域５００とが含まれており、ＱＡＤＢ５６０とキーワードＤＢ５７０と担当者ＤＢ５８０とが接続されている。なお、ＱＡＤＢ５６０とキーワードＤＢ５７０と担当者ＤＢ５８０とは、必ずしも別のＤＢで構成されている必要はなく、例えば一つのＤＢ内に、上の各ＤＢに対応するテーブルが含まれるようにしてもよい。また、ＱＡサーバ５のワーク・メモリ領域５００には、投稿データ格納部５１０と類似記事データ格納部５２０と絞込記事データ格納部５３０と分解キーワード格納部５４０と非解決キーワード格納部５５０とが含まれている。
【００２２】
各処理部及び各格納部についての具体的な説明は後述するが、ＤＢアクセス部５１は、ＱＡＤＢ５６０とキーワードＤＢ５７０と担当者ＤＢ５８０とに対してデータを登録したり、登録されたデータの検索処理を行う。品詞分解部５３は、例えば質問メッセージであるメッセージ・データを品詞分解し、例えば単語単位のデータにする。なお、品詞分解の方法については従来技術を用いればよく、詳しい説明は省略する。また、本実施の形態では日本語の品詞分解を行うような構成となっているが、他の言語を品詞分解するような場合もある。
【００２３】
非解決キーワード抽出部５５は、検索条件である質問メッセージに含まれ、且つ検索にヒットした記事データに対応付けられている検索用キーワードに含まれていないキーワードを抽出する。例えば、ユーザが質問を投稿して類似の記事を参照した際、ユーザが求める回答が類似の記事に含まれていない場合がある。後でも述べるが、各記事には検索用のキーワードが対応付けられており、この検索用キーワードが質問メッセージに含まれている記事が、類似の記事として提示される。ユーザが求める回答が類似の記事に含まれていないという場合には、通常、質問メッセージに含まれ且つ類似の記事の検索用キーワードに含まれないキーワードが存在するため、そのようなキーワードを非解決キーワードとして抽出する。
【００２４】
Ｗｅｂサーバ部５７は、一般的なＷｅｂサーバ機能を有し、例えばＷｅｂページ・データを生成してネットワーク１を介してユーザ端末３等に送信する。投稿データ格納部５１０は、質問や回答等、ユーザからの投稿データを一時記憶しておくための記憶部である。類似記事データ格納部５２０は、類似記事検索にヒットした記事データを一時記憶しておくための記憶部である。絞込記事データ格納部５３０は、類似記事検索にヒットし且つ除外キーワードによる絞込みを行った記事データを一時記憶しておくための記憶部である。
【００２５】
分解キーワード格納部５４０は、品詞分解部５３により例えば単語単位に分解されたメッセージ・データ、すなわち品詞分解部５３の処理結果を一時記憶しておくための記憶部である。非解決キーワード格納部５５０は、分解キーワード格納部５４０に格納されたデータのうち、検索用キーワードにヒットしなかったキーワード、すなわち非解決キーワード抽出部５５の処理結果を一時記憶しておくための記憶部である。
【００２６】
図３に、ＱＡＤＢ５６０のテーブル構成及び格納されるデータの一例を示す。図３の例には、記事番号（ＮＯ）の列３００と種別の列３０２と質問者メールアドレスの列３０４と質問者氏名の列３０６と質問者部署の列３０８と質問日時の列３１０と質問の列３１２とタイトルの列３１４と回答者氏名の列３１６と回答者部署の列３１８と回答日時の列３２０と回答の列３２２とが含まれている。レコードは質問者であるユーザから新規の質問の投稿を受け付けた際に生成され、記事番号（ＮＯ）の列３００と種別の列３０２と質問者メールアドレスの列３０４と質問者氏名の列３０６と質問者部署の列３０８と質問日時の列３１０と質問の列３１２とタイトルの列３１４とに値が登録される。ここで、新規の質問とは、類似の記事を参照しても回答が得られないような内容の質問を指す。そして、回答者からの回答の投稿を受け付けた際に、回答者氏名の列３１６と回答者部署の列３１８と回答日時の列３２０と回答の列３２２とに値が登録される。
【００２７】
レコードは記事番号（ＮＯ）の列３００の値によって一意に特定される。また、記事番号（ＮＯ）の列３００と質問日時の列３１０と回答日時の列３１８とには、システムによって自動的に値が登録される。種別の列３０２には、質問の内容がどのようなカテゴリに分類されるか質問者が判断し、選択したものが登録される。なお、種別の列３０２と質問者氏名の列３０６と質問者部署の列３０８と回答者氏名の列３１４と回答者部署の列３１６とには、所定のコードが登録されるような場合もある。
【００２８】
図４に、キーワードＤＢ５７０のテーブル構成及び格納されるデータの一例を示す。図４の例には、対応記事番号（ＮＯ）の列４００と類似記事検索用キーワードの列４０２と解決しなかったキーワードの列４０４とが含まれている。レコードはＱＡＤＢ５６０のレコードに対応して生成され、まず対応記事番号（ＮＯ）の列４００と類似記事検索用キーワードの列４０２とに値が登録される。対応記事番号（ＮＯ）の列４００には、対応するＱＡＤＢ５６０のレコードの記事番号（ＮＯ）の列３００の値が登録され、レコードは対応記事番号（ＮＯ）の列４００の値によって一意に特定される。そして、解決しなかったキーワードの列４０４には、上で述べた除外キーワードが格納される。例えば図４に示した例の１行目から３行目のレコードには「ホームページアドレス」と登録されているが、これは当該レコードに対応する記事データは「ホームページアドレス」というキーワードを含む検索（質問）には回答を示さないことを表している。なお、ＱＡＤＢ５６０のテーブルとキーワードＤＢ５７０のテーブルとは、主キーとなる項目内容が同一であるため、結合して１つのテーブルにしてもよい。
【００２９】
図５に、担当者ＤＢ５８０のテーブル構成及び格納されるデータの一例を示す。図５の例には、種別の列５００と担当者・担当部署名の列５０２とメールアドレスの列５０４とが含まれている。レコードは例えばシステム管理者が管理者端末９を操作することにより設定登録される。また、レコードは種別の列５００の値によって一意に特定される。担当者・担当部署名の列５０２には、質問の種別（種別の列５００の値）に対応する回答担当者又は部署の名称が登録される。すなわち、例えばシステム管理者が「この分類の質問に回答するのはこの人」というように設定する。なお、担当者ではなく担当部署を設定する場合には、メールアドレスの列５０４には個人のメールアドレスではなく例えば部署のメーリングリストのアドレスを登録する。
【００３０】
次に、図６乃至図１１を用いて、図１に示したシステムの処理内容について説明する。なお、図６に示した処理フローの前提として、ユーザ端末３の表示画面には、ユーザ端末３のＷｅｂブラウザとＱＡサーバ５のＷｅｂサーバ部５７との処理によって質問入力用のページが表示されているものとする。システムを利用する際にログインが必要な場合にはログイン処理もなされているものとする。まず、ユーザ端末３のＷｅｂブラウザ（以下、ユーザ端末３と省略する）は、質問者であるユーザからの質問入力及び投稿要求を受け付ける（図６：ステップＳ１）。図示しないが、例えば表示されているページに含まれるテキストボックスや投稿ボタン等によって質問データの入力及び投稿要求を受け付ける。そして、ユーザ端末３は、入力された質問データをＱＡサーバ５に送信する（ステップＳ３）。
【００３１】
ＱＡサーバ５のＷｅｂサーバ部５７は、質問データをユーザ端末３から受信し、ワーク・メモリ領域５００の投稿データ格納部５１０に格納する（ステップＳ５）。なお、受信する質問データには、質問の種別、質問者のメールアドレス、質問者氏名、質問者部署、タイトル及び質問文（必ずしも文章でなくともよい）が含まれており、受信した日時である質問日時を含めて質問データとして格納しておく。なお、質問者のメールアドレス、質問者氏名及び質問者部署については、必ずしもこの時点で質問データに含まれている必要はなく、ＱＡＤＢ５６０に新規レコードを登録する際に、ログイン情報から特定したり、ユーザに入力を促すようにしてもよい。
【００３２】
そして、ＱＡサーバ５のＤＢアクセス部５１は、キーワードＤＢ５７０及びＱＡＤＢ５６０を参照し、質問メッセージ（タイトル及び質問文）に含まれる少なくとも一部の語句に一致する検索用キーワードが対応付けられている記事データ（ＱＡＤＢ５６０のレコード）を抽出してワーク・メモリ領域５００の類似記事データ格納部５２０に格納する（ステップＳ７）。
【００３３】
例えば、質問メッセージがタイトルのみで「ログイン方法を教えて下さい。」というものであり、キーワードＤＢ５７０に図４に示したようなデータが格納されていた場合、キーワードＤＢ５７０からは「ログイン」という検索用キーワード（類似記事検索用キーワードの列４０２の値）が対応付けられている、１行目及び４行目のレコードが特定される。そして、キーワードＤＢ５７０の１行目及び４行目のレコードの対応記事番号（ＮＯ）の列４００の値である「１３５」及び「１３８」を用いてＱＡＤＢ５６０を検索する。ＱＡＤＢ５６０に図３に示したようなデータが格納されていた場合、記事番号（ＮＯ）の列３００（図３）の値が「１３５」のレコード及び「１３８」のレコードである１行目及び４行目のレコードが抽出される。
【００３４】
そして、ＤＢアクセス部５１は、ステップＳ７においてレコードが抽出されたか判定する（ステップＳ９）。レコードが抽出されなかったと判定された場合（ステップＳ９：Ｎｏルート）、ＱＡサーバ５の品詞分解部５３は、質問メッセージを品詞分解して１又は複数のキーワードを抽出し、ワーク・メモリ領域５００の分解キーワード格納部５４０に格納する（ステップＳ１１）。なお、質問メッセージが単語の羅列等である場合には、品詞分解しない場合もある。そして、ＤＢアクセス部５１は、質問データ及びステップＳ１１において抽出されたキーワードに基づき、ＱＡＤＢ５６０及びキーワードＤＢ５７０に新規レコードを登録する（ステップＳ１３）。そして、後に述べるステップＳ２７の処理に移行する。
【００３５】
一方、ステップＳ７においてレコードが抽出されたと判定された場合（ステップＳ９：Ｙｅｓルート）、ＱＡサーバ５のＤＢアクセス部５１は、キーワードＤＢ５７０及びＱＡＤＢ５６０を参照し、ステップＳ７において抽出され且つワーク・メモリ領域５００の類似記事データ格納部５２０に格納された記事データ（類似記事データ）のうち、質問メッセージに含まれる少なくとも一部の語句に一致する除外キーワードが対応付けられているものを除いた記事データ（絞込み記事データ）を抽出し、ワーク・メモリ領域５００の絞込記事データ格納部５３０に格納する（ステップＳ１５）。
【００３６】
具体的には、まず、類似記事データ格納部５２０に格納されている記事データの記事番号を抽出する。そして、キーワードＤＢ５７０を参照し、抽出した記事番号に該当する（対応記事番号（ＮＯ）の列４００の値が一致する）レコードの解決しなかったキーワードの列４０４の値（除外キーワード）が、質問メッセージに含まれる少なくとも一部の語句に一致しないレコードを特定する。そして、特定されたレコードの対応記事番号（ＮＯ）の列４００の値に基づき、ＱＡＤＢ５６０（又は類似記事データ格納部５２０）を検索し、該当する（記事番号（ＮＯ）の列３００の値が一致する）レコード（記事データ）を抽出する。
【００３７】
そして、Ｗｅｂサーバ部５７は、絞込み記事データに基づきＱＡ一覧ページ・データを生成し、ユーザ端末３に送信する（ステップＳ１７）。ユーザ端末３は、ＱＡ一覧ページ・データをＱＡサーバ５から受信し、表示装置に表示する（ステップＳ１９）。
【００３８】
図７に、ＱＡ一覧ページの一例（その１）を示す。図７の例には、質問内容表示部７００と「はい」ボタン７０２と「いいえ」ボタン７０４と類似記事表示部７０６乃至７１０と「全類似記事表示」ボタン７１２とが含まれている。図７の例は、例えば図４に示したキーワードＤＢ５７０の例において１乃至３行目のレコードが登録されており且つ解決しなかったキーワードの列４０４に何も登録されていないような場合、及び図３に示したＱＡＤＢ５６０の例において１乃至３行目のレコードが登録されているような場合について示されている。このような場合、質問内容表示部７００に示されているような質問メッセージを受け付けると、類似記事検索用キーワードの列４０２（図４）に登録されている検索用キーワードが質問メッセージに含まれている記事データ、すなわち、記事番号（ＮＯ）１３５乃至１３７の記事データが抽出される。そして、各々の記事データが類似記事表示部７０６乃至７１０に示される。
【００３９】
なお、図７の例では、様々なユーザからの質問に対する回答が示されているが、管理者等が、予め想定される質問及び回答を登録しておくこともできる。そして、ユーザは、類似記事表示部７０６乃至７１０に示されたデータを見て、質問が解決した場合には「はい」ボタン７０２をクリックし、解決しなかった場合には「いいえ」ボタン７０４をクリックする。本実施の形態においては、回答が示されていない場合であっても、同様の質問の記事があり、回答が得られれば自分の質問も解決するような場合には、「はい」ボタン７０２をクリックするようにする。また、絞り込まれていない全ての類似記事を閲覧したい場合には「全類似記事表示」ボタン７１２をクリックする。なお、図７の例は、除外キーワードが登録されていない場合であったため、ページ移行しても提示される記事は変わらない。このような場合には、「全類似記事表示」ボタン７１２をページに含めないようにしてもよい。
【００４０】
図８に、ＱＡ一覧ページの一例（その２）を示す。ページの構成は図７に示したものと同様であり、質問内容表示部８００と「はい」ボタン７０２と「いいえ」ボタン７０４と類似記事表示部８１０と「全類似記事表示」ボタン７１２とが含まれている。図８の例は、キーワードＤＢ５７０に図４に示したようなレコードが登録されている場合、及びＱＡＤＢ５６０に図３に示したようなレコードが登録されている場合について示されている。このような場合、質問内容表示部８００に示されているような質問メッセージを受け付けると、類似記事検索用キーワードの列４０２（図４）に登録されている検索用キーワードが質問メッセージに含まれている記事データ、すなわち、記事番号（ＮＯ）１３５乃至１３８の記事データが抽出される。さらに、これらの記事データのうち、非解決キーワードの列４０４（図４）に登録されている除外キーワードが質問メッセージに含まれていない記事データ、すなわち、記事番号（ＮＯ）１３８の記事データが絞込み抽出される。そして、絞込み抽出された記事データが類似記事表示部８１０に示される。このように、除外キーワードが登録されている場合には、受け付けた質問を解決しないと想定される記事データは提示されないようになる。
【００４１】
図６の説明に戻り、ユーザ端末３は、ＱＡ一覧ページに対するユーザからの選択入力を受け付け、選択入力データをＱＡサーバ５に送信する（図６：ステップＳ２１）。ＱＡサーバ５のＷｅｂサーバ部５７は、選択入力データをユーザ端末３から受信し、一旦記憶装置に格納する（ステップＳ２３）。そして、Ｗｅｂサーバ部５７は、ユーザからの選択入力が「解決した」旨の選択入力であったか判定する（ステップＳ２５）。上でも述べたが、「はい」ボタン７０２がクリックされていれば「解決した」と判定する。
【００４２】
「解決した」と判定されなかった場合（ステップＳ２５：Ｎｏルート）、処理は端子Ａを介して図９の処理に移行する。一方、「解決した」と判定された場合（ステップＳ２５：Ｙｅｓルート）、Ｗｅｂサーバ部５７は、当該ＱＡシステムのトップ・ページのデータを生成し、ユーザ端末３に送信する（ステップＳ２７）。ユーザ端末３は、トップ・ページのデータをＱＡサーバから受信し、表示装置に表示する（ステップＳ２９）。なお、トップ・ページには、図示しないが、質問入力ページへのリンクボタン等を含むＱＡシステムのメニューが示される。そして、質問受付処理を終了する。以上のようにして、検索用キーワードを用いて抽出された類似記事を除外キーワードを用いて絞込み、適切なＱＡ一覧ページをユーザに提示する。
【００４３】
次に、図９及び図１０を用いて、端子Ａを介して移行した後の処理について説明する。まず、ＱＡサーバ５のＷｅｂサーバ部５７は、ＱＡ一覧ページに対するユーザからの選択入力が「全類似記事表示」であったか判定する（図９：ステップＳ４１）。上でも述べたが、「全類似記事表示」ボタン７１２がクリックされていれば「全類似記事表示」であったと判定する。「全類似記事表示」であったと判定された場合（ステップＳ４１：Ｙｅｓルート）、処理は端子Ｂを介して図１１の処理に移行する。一方、「全類似記事表示」ではなかった（「いいえ」ボタン７０４がクリックされた）と判定された場合（ステップＳ４１：Ｎｏルート）、ＱＡサーバ５の品詞分解部５３は、ステップＳ５においてワーク・メモリ領域５００の投稿データ格納部５１０に格納された質問データに含まれる質問メッセージを品詞分解してキーワードを抽出し、ワーク・メモリ領域５００の分解キーワード格納部５４０に格納する（ステップＳ４３）。
【００４４】
例えば質問メッセージのタイトルが「＊＊＊ｔｙＢＡＮＫログインパスワードについて」であり、質問文が「ログイン時のＩＤとパスワードがわかりません。ホームページアドレスも忘れました。教えてください。」であった場合、例えば「＊＊＊ｔｙＢＡＮＫ」、「ログイン」、「パスワード」、「ＩＤ」及び「ホームページアドレス」というキーワードが抽出される。なお、品詞分解方法及びキーワード抽出方法（例えば「わかりません」や「教えてください」はキーワードとして抽出しないようにする）については、従来技術を用いればよく、詳細な説明は省略する。
【００４５】
そして、ＱＡサーバ５の非解決キーワード抽出部５５は、分解キーワード格納部５４０に格納されたキーワードのうち、いずれの絞込み記事データにも対応付けられていないキーワードを抽出し、ワーク・メモリ領域５００の非解決キーワード格納部５５０に格納する（ステップＳ４５）。例えば上のように「＊＊＊ｔｙＢＡＮＫ」、「ログイン」、「パスワード」、「ＩＤ」及び「ホームページアドレス」というキーワードが分解キーワード格納部５４０に格納されており且つ絞込み記事データに対応付けられている検索用キーワードが「＊＊＊ｔｙＢＡＮＫ」、「ログイン」及び「パスワード」であった場合（例えば図４の１乃至３行目のレコードを参照）、「ＩＤ」及び「ホームページアドレス」というキーワードが抽出される。
【００４６】
そして、Ｗｅｂサーバ部５７は、非解決キーワード格納部５５０に格納されたキーワードを用いて「解決しなかったキーワード」確認用ページ・データを生成し、ユーザ端末３に送信する（ステップＳ４７）。ユーザ端末３は、「解決しなかったキーワード」確認用ページ・データをＱＡサーバ５から受信し、表示装置に表示する（ステップＳ４９）。
【００４７】
図１０に「解決しなかったキーワード」確認用ページの一例を示す。図１０の例には、非解決キーワード表示入力欄１０００と「はい」ボタン１００２と「いいえ」ボタン１００４と質問内容表示部１００６とが含まれている。非解決キーワード表示入力欄１０００には、ステップＳ４５（図９）においてワーク・メモリ領域５００の非解決キーワード格納部５５０に格納されたキーワードが示されている。また、この非解決キーワード表示入力欄１０００は、ユーザによるキーワードの追加、更新及び削除を可能としている。例えば図７に示したＱＡ一覧ページからこの非解決キーワード確認ページに移行した場合、非解決キーワード表示入力欄１０００に示されている「ＩＤ」及び「ホームページアドレス」というキーワードのうち、「ＩＤ」については、類似記事表示部７０６（図７）の回答部分に示されていたので削除するということができる。そして、ユーザは、非解決キーワード表示入力欄１０００に示されているキーワード（自分がキーワードを設定し直した場合を含む）を、次回以降の検索処理で用いる除外キーワードとして設定してよい場合には「はい」ボタン１００２をクリックし、設定したくない場合には「いいえ」ボタン１００４をクリックする。
【００４８】
図９の説明に戻り、ユーザ端末３は、「解決しなかったキーワード」確認用ページに対するユーザからの入力を受け付け、入力データ（非解決キーワード表示入力欄１０００（図１０）に示されていた除外キーワードを含む）をＱＡサーバ５に送信する（図９：ステップ５１）。ＱＡサーバ５のＷｅｂサーバ部５７は、入力データをユーザ端末３から受信し、一旦記憶装置に格納する（ステップＳ５３）。そして、Ｗｅｂサーバ部５７は、ユーザからの指示が、除外キーワードを「登録する」旨の指示であったか判定する（ステップＳ５５）。上でも述べたが、「はい」ボタン１００２がクリックされていれば「登録する」であったと判定する。
【００４９】
「登録する」ではなかった（「いいえ」ボタン１００４がクリックされた）と判定された場合（ステップＳ５５：Ｎｏルート）、後に述べるステップＳ５９の処理に移行する。一方、「登録する」であったと判定された場合（ステップＳ５５：Ｙｅｓルート）、ＱＡサーバ５のＤＢアクセス部５１は、除外キーワードをキーワードＤＢ５７０に設定登録する（ステップＳ５７）。例えば、非解決キーワード表示入力欄１０００（図１０）に示されていた除外キーワードが「ホームページアドレス」であり且つＱＡ一覧ページに示されていた記事データの記事番号（ＮＯ）が１３５乃至１３７であった場合（図７参照）、図４の例の１乃至３行目のレコードに示したように、キーワードＤＢ５７０の該当するレコード（対応記事番号（ＮＯ）が１３５乃至１３７）の、解決しなかったキーワードの列４０４に「ホームページアドレス」という値（除外キーワード）が設定登録される。
【００５０】
さらに、ＤＢアクセス部５１は、投稿データ格納部５１０に格納されている質問データ及び分解キーワード格納部５４０に格納されているキーワードを用いて、ＱＡＤＢ５６０及びキーワードＤＢ５７０に新規レコードを登録する（ステップＳ５９）。そして、処理は端子Ｃを介してステップＳ２７（図６）の処理に移行する。
【００５１】
次に、図１１を用いて、端子Ｂを介して移行した後の処理について説明する。まず、ＱＡサーバ５のＷｅｂサーバ部５７は、ワーク・メモリ領域５００の類似記事データ格納部５２０に格納されている類似記事データに基づき、ＱＡ一覧ページ・データを生成し、ユーザ端末３に送信する（図１１：ステップＳ７１）。ユーザ端末３は、ＱＡ一覧ページ・データをＱＡサーバ５から受信し、表示装置に表示する（ステップＳ７３）。ここで表示されるＱＡ一覧ページは、図７や図８に示した例と同様の構成である。但し、絞り込まれていない記事データが示されるため、当該ページには「全類似記事表示」ボタン７１２は含まれないようになっている。
【００５２】
そして、ユーザ端末３は、ＱＡ一覧ページに対するユーザからの選択入力を受け付け、選択入力データをＱＡサーバ５に送信する（ステップＳ７５）。ＱＡサーバ５のＷｅｂサーバ部５７は、選択入力データをユーザ端末３から受信し、一旦記憶装置に格納する（ステップＳ７７）。そして、Ｗｅｂサーバ部５７は、ユーザからの選択入力が「解決した」旨の選択入力であったか判定する（ステップＳ７９）。「はい」ボタン７０２がクリックされていれば「解決した」と判定する。「解決した」と判定された場合（ステップＳ７９：Ｙｅｓルート）、処理は端子Ｃを介してステップＳ２７（図６）の処理に移行する。一方、「解決した」と判定されなかった場合（ステップＳ７９：Ｎｏルート）、ＱＡサーバ５の品詞分解部５３は、ワーク・メモリ領域５００の投稿データ格納部５１０に格納された質問データに含まれている質問メッセージを品詞分解して１又は複数のキーワードを抽出し、ワーク・メモリ領域５００の分解キーワード格納部５４０に格納する（ステップＳ８１）。なお、質問メッセージが単語の羅列等である場合には、品詞分解しない場合もある。
【００５３】
そして、ＱＡサーバ５の非解決キーワード抽出部５５は、分解キーワード格納部５４０に格納されたキーワードのうち、いずれの類似記事データにも対応付けられていないキーワードを抽出し、ワーク・メモリ領域５００の非解決キーワード格納部５５０に格納する（ステップＳ８３）。この処理は、上で述べたステップＳ４５（図９）の処理と同様であるが、ここでは絞込み記事データではなく類似記事データを参照する。そして、処理は端子Ｄを介してステップＳ４７の処理に移行する。
【００５４】
以上、図９乃至図１１を用いて説明したようにして、ＱＡ一覧ページに示された記事データに除外キーワードが対応付けられる。
【００５５】
このようにして、除外キーワードを用いることによる適切な類似記事データの提示、及び除外キーワードの設定登録が行われる。
【００５６】
なお、メール・データ生成及び送信機能を有するＷｅｂサーバ部５７は、ステップＳ１３（図６）又はステップＳ５９（図９）の処理によってＱＡＤＢ５６０（及びキーワードＤＢ５７０）に新規レコード（質問データ）が登録されたことを検知すると、担当者ＤＢ５８０を参照して、当該質問の種別に対応付けられた担当者又は担当部署のメールアドレスを特定し、特定したメールアドレス宛に、回答用ページのＵＲＬ（Uniform Resource Locator）を含む回答依頼メール・データを送信する。回答依頼メールを見た担当者又は担当部署のメンバーは、例えば担当者端末７を操作して、回答用ページのＵＲＬに基づきＱＡサーバ５にアクセスし、回答用ページに対して回答を入力する。そして、入力された回答は、ＱＡサーバ５のＤＢアクセス部５１によってＱＡＤＢ５６０に設定登録される。
【００５７】
以上本発明の一実施の形態について説明したが、本発明はこれに限定されるものではない。例えば、図３乃至図５に示したテーブル構成は一例であって、同様のデータを格納するためであれば別の構成を採用するようにしてもよいし、必要に応じて項目を追加又は削除してもよい。また、図１に示したＱＡサーバ５の機能ブロック構成は一例であって、実際のプログラム・モジュール構成とは異なる場合がある。また、各装置が複数のサーバやコンピュータによって構成されていてもよい。また、図２に示したコンピュータの機能ブロック図も一例であって、実際のハードウェア構成とは異なる場合もある。また、図７、図８、図１０に示した画面例は一例であって、同様のデータを別の態様で表現する場合もある。さらに、図６、図９及び図１１に示した処理フローも一例であって、同様の処理結果が得られる範囲において処理の順序を入れ替えてもよいし、必要に応じてステップを追加又は削除してもよい。
【００５８】
なお、ＱＡシステムに適用した例を用いて実施の形態を説明したが、必ずしも質問と回答から構成される記事データを取り扱う必要はなく、例えば電子掲示板の類似記事の検索や、キーワードの羅列（ＡＮＤ条件）によるホームページの検索等、本発明に係る技術を他の様々な検索システムに応用することも可能である。
【００５９】
（付記１）
検索条件としてのメッセージ・データを受信した場合、メッセージ・データ格納部に格納するステップと、
所定のアルゴリズムを用いて、前記メッセージ・データ格納部に格納された前記メッセージ・データに対応する記事データを記事データ格納部から抽出し、抽出記事データ格納部に格納する記事データ抽出ステップと、
所定の条件が満たされた場合、前記メッセージ・データ格納部に格納されているメッセージ・データに含まれるキーワード候補のうち、前記抽出記事データ格納部に格納された前記記事データに予め対応付けられている検索用キーワードと異なるキーワード候補を抽出し、非解決キーワード格納部に格納するステップと、
前記非解決キーワード格納部に格納された前記キーワード候補又はユーザから指定された語句を、除外キーワードとして前記抽出記事データ格納部に格納された前記記事データに対応付けて前記記事データ格納部に更新登録するステップと、
を含み、コンピュータにより実行される類似記事抽出方法。
【００６０】
（付記２）
前記所定のアルゴリズムが、前記メッセージ・データに含まれる、少なくとも一部の語句に一致する検索用キーワードが対応付けられている第１記事データの抽出、及び抽出された当該第１記事データのうち、前記メッセージ・データに含まれる、少なくとも一部の語句に一致する除外キーワードが対応付けられている記事データを除いた第２記事データを抽出するためのアルゴリズムであることを特徴とする付記１記載の類似記事抽出方法。
【００６１】
（付記３）
前記第２記事データの内容をユーザが確認するためのデータを生成し、出力するステップと、
前記第２記事データの内容を確認した前記ユーザからの要求に従って、前記第１記事データの内容を前記ユーザが確認するためのデータを生成し、出力するステップと、
をさらに含む付記２記載の類似記事抽出方法。
【００６２】
（付記４）
前記所定の条件が、前記抽出記事データ格納部に格納された前記記事データの内容が不十分であるというユーザからの指示を検知することであることを特徴とする付記１乃至３のいずれか１つに記載の類似記事抽出方法。
【００６３】
（付記５）
前記抽出記事データ格納部に格納された前記記事データの内容が十分であるというユーザからの指示を検知した場合、前記メッセージ・データ格納部に格納された前記メッセージ・データを破棄するステップをさらに含む付記１乃至４のいずれか１つに記載の類似記事抽出方法。
【００６４】
（付記６）
前記記事データ抽出ステップが、前記メッセージ・データに対応する記事データが存在しない場合、前記メッセージ・データと前記メッセージ・データに含まれるキーワードとを、新規の記事データと当該新規の記事データに対応付けられた検索用キーワードとして前記記事データ格納部に格納するステップを含む付記１乃至５のいずれか１つに記載の類似記事抽出方法。
【００６５】
（付記７）
前記非解決キーワード格納部に格納された前記キーワード候補の確認及び語句の指定をユーザに促すためのデータを生成し、出力するステップと、
をさらに含む付記１乃至６のいずれか１つに記載の類似記事抽出方法。
【００６６】
（付記８）
検索条件としてのメッセージ・データを受信した場合、メッセージ・データ格納部に格納するステップと、
所定のアルゴリズムを用いて、前記メッセージ・データ格納部に格納された前記メッセージ・データに対応する記事データを記事データ格納部から抽出し、抽出記事データ格納部に格納するステップと、
所定の条件が満たされた場合、前記メッセージ・データ格納部に格納されているメッセージ・データに含まれるキーワード候補のうち、前記抽出記事データ格納部に格納された前記記事データに予め対応付けられている検索用キーワードと異なるキーワード候補を抽出し、非解決キーワード格納部に格納するステップと、
前記非解決キーワード格納部に格納された前記キーワード候補又はユーザから指定された語句を、除外キーワードとして前記抽出記事データ格納部に格納された前記記事データに対応付けて前記記事データ格納部に更新登録するステップと、
をコンピュータに実行させる類似記事抽出プログラム。
【００６７】
（付記９）
検索条件としてのメッセージ・データを受信した場合、メッセージ・データ格納部に格納する手段と、
所定のアルゴリズムを用いて、前記メッセージ・データ格納部に格納された前記メッセージ・データに対応する記事データを記事データ格納部から抽出し、抽出記事データ格納部に格納する手段と、
所定の条件が満たされた場合、前記メッセージ・データ格納部に格納されているメッセージ・データに含まれるキーワード候補のうち、前記抽出記事データ格納部に格納された前記記事データに予め対応付けられている検索用キーワードと異なるキーワード候補を抽出し、非解決キーワード格納部に格納する手段と、
前記非解決キーワード格納部に格納された前記キーワード候補又はユーザから指定された語句を、除外キーワードとして前記抽出記事データ格納部に格納された前記記事データに対応付けて前記記事データ格納部に更新登録する手段と、
を有する類似記事抽出装置。
【図面の簡単な説明】
【００６８】
【図１】本発明の一実施の形態におけるシステム構成図である。
【図２】本発明の実施の形態におけるコンピュータの機能ブロックの概要を示す図である。
【図３】ＱＡＤＢテーブルの一例を示す図である。
【図４】キーワードＤＢテーブルの一例を示す図である。
【図５】担当者ＤＢテーブルの一例を示す図である。
【図６】本発明の一実施の形態における処理フロー（その１）を示す図である。
【図７】ＱＡ一覧ページの一例（その１）を示す図である。
【図８】ＱＡ一覧ページの一例（その２）を示す図である。
【図９】本発明の一実施の形態における処理フロー（その２）を示す図である。
【図１０】非解決キーワード確認ページの一例を示す図である。
【図１１】本発明の一実施の形態における処理フロー（その３）を示す図である。
【符号の説明】
【００６９】
１  ネットワーク      ３  ユーザ端末    ５  ＱＡサーバ
７  担当者端末        ９  管理者端末
５１  ＤＢアクセス部  ５３  品詞分解部
５５  非解決キーワード抽出部    ５７  Ｗｅｂサーバ部
５００  ワーク・メモリ領域      ５１０  投稿データ格納部
５２０  類似記事データ格納部
５３０  絞込記事データ格納部
５４０  分解キーワード格納部
５５０  非解決キーワード格納部
５６０  ＱＡＤＢ    ５７０  キーワードＤＢ
５８０  担当者ＤＢ
【図１】
2005157547.tif 000003
【図２】
2005157547.tif 000004
【図３】
2005157547.tif 000005
【図４】
2005157547.tif 000006
【図５】
2005157547.tif 000007
【図６】
2005157547.tif 000008
【図７】
2005157547.tif 000009
【図８】
2005157547.tif 000010
【図９】
2005157547.tif 000011
【図１０】
2005157547.tif 000012
【図１１】
2005157547.tif 000013