(57)【要約】【課題】複数のカテゴリの確信度の高さの情報を用いて、複数のカテゴリから適切に対象を検索可能な仕組みを提供すること【解決するための手段】検索条件となる入力文字列を受け付け、前記入力文字列が対応する複数のカテゴリと、それぞれのカテゴリと前記入力文字列の対応の確信度を特定し、特定された複数のカテゴリの確信度の情報に基づいて、検索対象を検索する複数のカテゴリを選択し、選択された複数のカテゴリを制約条件として検索処理を行うべく制御する【選択図】図１０
2018085020.tif 000002
【特許請求の範囲】
【請求項１】
検索条件となる入力文字列を受け付ける入力文字列受付手段と、前記入力文字列が対応する複数のカテゴリと、それぞれのカテゴリと前記入力文字列の対応の確信度を特定する特定手段と、を備える情報処理装置であって、
前記特定手段により特定された複数のカテゴリの確信度の情報に基づいて、検索対象を検索する複数のカテゴリを選択する選択手段と、
前記選択手段により選択されたカテゴリを制約条件として検索処理を行うべく制御する検索制御手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記選択手段は、前記選択手段により選択されたカテゴリが検索処理の制約条件となる基準を満たしていない場合に、前記基準を満たすまで、前記特定手段により特定された他のカテゴリを、追加の前記制約条件として選択し、
前記検索制御手段は、前記選択手段により選択された、前記基準を満たすカテゴリを制約条件として検索処理を行うべく制御することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記基準は、前記選択手段により選択された複数のカテゴリの確信度の合計が指定の値に達することであることを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記選択手段は、前記基準を満たすまで、前記特定手段により特定された複数のカテゴリの中から確信度の高い順にカテゴリを選択することを特徴とする請求項２又は３に記載の情報処理装置。
【請求項５】
前記選択手段は、前記選択手段により、指定されている回数だけ実行されたカテゴリの選択処理により選択されたカテゴリが、前記基準を満たさないと判定した場合に、既に選択されているカテゴリをリセットして制約条件を解除すべく制御することを特徴とする請求項２乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記情報処理装置はさらに、カテゴリ同士の類似の関係を記憶し、
前記選択手段は、前記特定手段により特定された複数のカテゴリうち、確信度が１位であるカテゴリの前記類似の関係に基づいて、当該カテゴリに類似する別のカテゴリを前記制約条件として選択することを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
前記選択手段は、確信度が１位であるカテゴリが制約条件として選択すべきでない旨の情報と対応付けて記憶されている場合には、制約条件とするカテゴリの選択を行わないことを特徴とする請求項６に記載の情報処理装置。
【請求項８】
検索条件となる入力文字列を受け付ける入力文字列受付手段と、前記入力文字列が対応する複数のカテゴリと、それぞれのカテゴリと前記入力文字列の対応の確信度を特定する特定手段と、を備える情報処理装置の制御方法であって、
前記特定手段により特定された複数のカテゴリの確信度の情報に基づいて、検索対象を検索する複数のカテゴリを選択する選択工程と、
前記選択工程により選択されたカテゴリを制約条件として検索処理を行うべく制御する検索制御工程と、
を含むことを特徴とする情報処理装置の制御方法。
【請求項９】
検索条件となる入力文字列を受け付ける入力文字列受付手段と、前記入力文字列が対応する複数のカテゴリと、それぞれのカテゴリと前記入力文字列の対応の確信度を特定する特定手段と、を備える情報処理装置で実行が可能なプログラムであって、
前記情報処理装置を、
前記特定手段により特定された複数のカテゴリの確信度の情報に基づいて、検索対象を検索する複数のカテゴリを選択する選択手段と、
前記選択手段により選択されたカテゴリを制約条件として検索処理を行うべく制御する検索制御手段として機能させる情報処理装置のプログラム。
【請求項１０】
検索条件となる入力文字列を受け付ける入力文字列受付手段を備えるクライアント装置と、前記入力文字列が対応する複数のカテゴリと、それぞれのカテゴリと前記入力文字列の対応の確信度を特定する特定手段を備える情報処理装置と、を含む情報処理装置システムであって、
前記特定手段により特定された複数のカテゴリの確信度の情報に基づいて、検索対象を検索する複数のカテゴリを選択する選択手段と、
前記選択手段により選択されたカテゴリを制約条件として検索処理を行うべく制御する検索制御手段と、
を備えることを特徴とする情報処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理システム、その制御方法及びプログラムに関する。
【背景技術】
【０００２】
従来、インターネットや組織内において保存されるテキスト文書などのデジタル化に伴い、非定型文書が膨大な数となっている。そのためコンピュータの記憶装置に格納されたテキスト文書などの情報を高速に、また高精度で検索する必要性が高まっている。
【０００３】
大量のテキスト文書から、ユーザが意図したデータを検索する技術は様々存在する。検索条件として入力されたテキストのカテゴリを決定することで、検索対象となるテキスト文書を絞り込むことで、検索の適合性を向上させる技術も提供されている。
【０００４】
特許文献１においては、クエリのカテゴリを分類することで、単語の多義性に対する問題を解決している。例えば「ＤＶ」という単語は、「デジタルビデオ」の他に「ドメスティックバイオレンス」という意味の略語でもある。
【０００５】
従って、検索対象となるテキスト文書のカテゴリを絞り込むことなく、形態素解析によりクエリを単語に分割して検索を実行すれば、両方の意味に関連した文書が検索結果として得られることになる。特許文献１は、検索対象となる文書群にカテゴリを付与し、またクエリのカテゴリを決定して検索対象を絞り込むことで単語の多義性を解消して、検索精度を向上させる技術が記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００６−２２７８２３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
特許文献１に記載の技術においては、クエリのカテゴリを判定して検索対象を絞り込むため、カテゴリを判定する精度が高い場合には、クエリに対する検索結果の適合率を向上させることができる。
【０００８】
しかしながら、クエリのカテゴリの判定の精度は必ずしも高いとは限らない。クエリが誤ったカテゴリに分類されてしまった場合には、クエリに対して適切な、正しいカテゴリが検索に用いられなくなってしまい、クエリに対する検索結果の適合率が低下してしまうという問題が発生する。
【０００９】
なお、ここでいう適合率の高さは、入力された検索キーとなる文字列に対応する複数のカテゴリの中における相対的な値の高さであって、例えば、それらの中で確信度が最も高いカテゴリについてのみ検索を行っても所望の検索結果が得られないことがある。
【００１０】
また、特許文献１の特に実施の形態３には、複数のサーバに同一のクエリを送信し、それぞれのサーバから受け取った結果を合わせて表示する技術が説明されている。
【００１１】
しかしながら、例えば異なるサーバで別々に管理されている文書群に対する検索においては、それぞれのサーバにおける単語の出現頻度等により、それぞれのサーバにおいて統計的に異なるスコアリングがなされる。よって、同じ単語であっても、サーバが管理している文書群によって異なるスコアリングがされることがあり、各サーバでスコアリングした結果をマージしても、必ずしも適切にスコアリングされているとは言えない。
【００１２】
本発明は、複数のカテゴリの確信度の高さの情報を用いて、検索対象のカテゴリとして複数のカテゴリを容易に特定可能な仕組みを提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明の情報処理装置は、検索条件となる入力文字列を受け付ける入力文字列受付手段と、前記入力文字列が対応する複数のカテゴリと、それぞれのカテゴリと前記入力文字列の対応の確信度を特定する特定手段と、を備える情報処理装置であって、前記特定手段により特定された複数のカテゴリの確信度の情報に基づいて、検索対象を検索する複数のカテゴリを選択する選択手段と、前記選択手段により選択されたカテゴリを制約条件として検索処理を行うべく制御する検索制御手段と、を備えることを特徴とする。
また、前記選択手段は、前記選択手段により選択されたカテゴリが検索処理の制約条件となる基準を満たしていない場合に、前記基準を満たすまで、前記特定手段により特定された他のカテゴリを、追加の前記制約条件として選択し、前記検索制御手段は、前記選択手段により選択された、前記基準を満たすカテゴリを制約条件として検索処理を行うべく制御することを特徴とする。
【発明の効果】
【００１４】
本発明によれば、複数のカテゴリの確信度の高さの情報を用いて、検索対象のカテゴリとして複数のカテゴリを容易に特定可能な仕組みを提供することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の実施形態に係る機能構成の一例を示す図である。
【図２】本発明の実施形態に係る情報処理装置のハードウェア構成の一例を示すブロック図である。
【図３】本発明の実施形態に係る検索対象となるテキスト文書の一例を示す図である。
【図４】本発明の実施形態に係る各種データの構成の一例を示す図である。
【図５】本発明の実施形態に係る入力文字列の属するカテゴリ特定の手法の一例を示す図である。
【図６】本発明の実施形態に係るカテゴリ間の類似性の一例を説明するための図である。
【図７】本発明の実施形態に係る制約カテゴリ選択基準の一例を示すための図である。
【図８】本発明の実施形態に係る類似カテゴリリストの一例を説明するための図である。
【図９】本発明の実施形態に係る検索処理の概要のフローチャートの一例を示す図である。
【図１０】本発明の実施形態に係るカテゴリ取得部の処理のフローチャートの一例を示す図である。
【図１１】本発明の実施形態に係る確信度合計に基づくカテゴリ取得処理のフローチャートの一例を示す図である。
【図１２】本発明の実施形態に係る類似カテゴリに基づくカテゴリ取得処理のフローチャートの一例を示す図である。
【図１３】本発明の実施形態に係る確信度上位のカテゴリを優先するカテゴリ取得処理のフローチャートの一例を示す図である。
【図１４】本発明の実施形態に係るカテゴリの確信度に基づいて、検索結果のテキスト文書のスコアを再計算した結果のイメージを示すための図である。
【図１５】本発明の実施形態に係るカテゴリの確信度に基づいて、検索結果のテキスト文書のスコアを再計算する処理のフローチャートの一例を示す図である。
【図１６】本発明の実施形態に係る類似カテゴリネットワークに基づいて、検索結果のテキスト文書のスコアを再計算した結果のイメージを示すための図である。
【図１７】本発明の実施形態に係る類似カテゴリネットワークに基づいて、検索結果のテキスト文書のスコアを再計算する処理のフローチャートの一例を示す図である。
【図１８】本発明の実施形態に係る確信度の値が指定条件を満たすカテゴリの取得処理のフローチャートの一例を示す図である。
【発明を実施するための形態】
【００１６】
＜第１の実施形態＞
以下、本発明の実施の形態を、図面を参照して詳細に説明する。まず図１を参照して、本発明の実施形態に係る機能構成の一例について説明する。
【００１７】
入力文字列受付部１０１は、テキスト文書を検索するための検索条件となる入力文字列を受け付ける。
【００１８】
当該入力文字列は、本発明における情報処理装置がクライアント装置として機能するコンピュータである場合には、当該コンピュータを使用するユーザから直接入力を受け付ける機能部である。
【００１９】
カテゴリ特定部１０２は、カテゴリ特定基準記憶部１２１に記憶された情報に基づき、入力文字列に基づく検索の対象とするカテゴリを絞り込むべく、当該入力文字列のカテゴリと、その確信度を特定する。
【００２０】
確信度とは、入力された文字列が、対象のカテゴリに分類されるのがどの程度適切かを示す値であり、文字列とカテゴリの適合度を示すスコアである。確信度が高いほど、対象の文字列がそのカテゴリに属する可能性が高い。
【００２１】
カテゴリの種類は後述するように複数ある。本発明において、カテゴリ特定部１０２は、１つのカテゴリを選択するのではなく、特定される全てのカテゴリの可能性を、確信度として表現する。
【００２２】
但し、例えば文字列に対応するカテゴリの中で確信度が１位のカテゴリＡが、確信度＝３０％であり、２番目に高いカテゴリＢが２９％であった場合、１位のカテゴリＡのみで検索を行うと、ほぼ同じだけの確信度を持ったカテゴリＢの中にあるかもしれない、ユーザにとって所望の検索結果を抽出できなくなってしまう可能性がある。
【００２３】
カテゴリ特定基準とは、入力文字列がどのカテゴリに属するか（どのカテゴリにおいて入力文字列に基づく検索を行うべきか）の判定基準となる、入力文字列の属するカテゴリの特定基準情報である。当該カテゴリ特定基準の情報は例えば情報処理装置１００の外部メモリに記憶されている。例えば、入力文字列における最も出現頻度が多い文言と同じ意味の文言が、当該入力文字列が属する（対応する）カテゴリであると判断するルールである。例えば、特開２００３−１４１１２９号公報におけるプロファイルセットに相当する。当該カテゴリの特定技術は他の公知技術を用いてもよい。
【００２４】
入力文字列に対するカテゴリの特定とカテゴリごとの確信度の算出についての詳細は図５で説明するが、例えば、入力文字列（例えば質問分）とその入力文字列に対応するカテゴリを学習用のデータとして、機械学習を行っておき、その学習結果に基づいて新たに入力を受け付けた入力文字列に対応するカテゴリの特定と確信度の算出を行う。
【００２５】
なお、他にルールなどで判定する方法、意味解析などを行って決定する方法など、入力文字列のカテゴリの判定をするためのあらゆる方法、技術を含むことは言うまでもない。その場合、ルールや意味解析などで使用する情報、あるいはプログラムとしてコーディングされている条件もカテゴリ特定基準記憶部１２１に記憶された情報としている。
【００２６】
カテゴリ取得部１０３は、制約カテゴリ選択基準記憶部１２２に記憶された制約カテゴリ選択基準に記載された条件に基づき、類似のカテゴリ群を取得する。つまり、検索対象候補のカテゴリと類似のカテゴリを特定する。
【００２７】
また、後述するいくつかの実施例のうちには、カテゴリ同士の類似性に基づいたカテゴリ群の取得をするものも記載する。その場合においては、類似カテゴリ記憶部１２３に記憶された類似カテゴリ（類似元、類似先のカテゴリをも含む）も参照する。
【００２８】
最後に、文書検索部１０４は、前述の手順で取得された入力文字列とカテゴリ群に基づき、テキスト文書記憶部１２４に格納されたテキスト文書を検索する。
【００２９】
検索は、テキスト文書自体ではなく、テキスト文書から予め生成された索引に対して実行するものであってもよい。テキスト文書の検索および索引を生成することに関する技術は、周知の技術であるため詳細は割愛する。
【００３０】
図２は、本発明の実施形態に係わる情報処理装置のハードウェア構成の一例を示すブロック図である。
【００３１】
図２に示すように、情報処理装置１００、アプリケーションサーバ１４０は、システムバス２０４を介してＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２０１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０２、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０３、入力コントローラ２０５、ビデオコントローラ２０６、メモリコントローラ２０７、通信Ｉ／Ｆコントローラ２０８等が接続された構成を採る。  ＣＰＵ２０１は、システムバス２０４に接続される各デバイスやコントローラを統括的に制御する。
【００３２】
また、ＲＯＭ２０３あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）やＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）や、各サーバあるいは各ＰＣが実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。また、本発明を実施するために必要な情報が記憶されている。なお外部メモリはデータベースであってもよい。
【００３３】
ＲＡＭ２０２は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＯＭ２０３あるいは外部メモリ２１１からＲＡＭ２０２にロードし、ロードしたプログラムを実行することで各種動作を実現する。
【００３４】
また、入力コントローラ２０５は、キーボード（ＫＢ）２０９や不図示のマウス等のポインティングデバイス等からの入力を制御する。
【００３５】
ビデオコントローラ２０６は、ディスプレイ２１０等の表示器への表示を制御する。尚、表示器は液晶ディスプレイ等の表示器でもよい。これらは、必要に応じて管理者が使用する。
【００３６】
メモリコントローラ２０７は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶する外部記憶装置（ハードディスク（ＨＤ））や、フレキシブルディスク（ＦＤ）、あるいは、ＰＣＭＣＩＡ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ  Ｍｅｍｏｒｙ  Ｃａｒｄ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ａｓｓｏｃｉａｔｉｏｎ）カードスロットにアダプタを介して接続されるコンパクトフラッシュ（登録商標）メモリ等の外部メモリ２１１へのアクセスを制御する。
【００３７】
通信Ｉ／Ｆコントローラ２０８は、ネットワークを介して外部機器と接続・通信し、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）を用いた通信等が可能である。
【００３８】
尚、ＣＰＵ２０１は、例えばＲＡＭ２０２内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ディスプレイ２１０上に表示することが可能である。また、ＣＰＵ２０１は、ディスプレイ２１０上のマウスカーソル（図示しない）等によるユーザ指示を可能とする。
【００３９】
本発明を実現するための後述する各種プログラムは、外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０２にロードされることによりＣＰＵ２０１によって実行されるものである。
【００４０】
図３は、本発明の実施形態に係る検索対象となるテキスト文書の一例を示す図である。３０１ａ〜３０１ｅが１つ１つのテキスト文書の例を表している。
【００４１】
各テキスト文書は、フィールドと呼ばれるいくつかの部分に分かれている。例えば、図３の文書は、「質問」（Ｑの部分）、「解答」（Ａの部分）カテゴリの部分の３つのフィールドを含む。
【００４２】
フィールドは必ずしも上記の３つの部分だけではない。例えば、形態素解析され形態素（あるいはＮ−グラムのトークン）等として検索対象となる部分、１つの文字列、数値、日付等がある。これらいずれかを、制約条件として指定することができる。
【００４３】
本例では「質問」（Ｑの部分）、「解答」（Ａの部分）を形態素（トークン）などの検索対象として使用する。また、「カテゴリ」を制約条件として使用する。
【００４４】
つまり、カテゴリを使って図３に示す各文書を検索結果として抽出するかどうかを決定する。この「カテゴリ」が、本願発明の請求項において意味するカテゴリである。以上が図３の説明である。
【００４５】
次に図４を参照して、本発明の実施形態に係るカテゴリの一覧の一例について説明する。本実施の形態においては、例としてソフトウェア製品の「質問・回答」の情報を用いる。そこで本発明の説明においては、４００に示すような、ソフトウェア製品でよく用いられる「質問・回答」に一般的に表れる（であろう）「仕様」、「機能」、「エラー表示」〜「ユーザ情報」などをカテゴリの例として説明する。以上が図４の説明である。
【００４６】
次に図５を参照して、本発明の実施形態に係る入力文字列のカテゴリ判定の手法の一例について説明する。この図では、カテゴリ特定基準を、機械学習を用いて生成する方法を例に説明する。
【００４７】
機械学習を用いてテキストのカテゴリを分類する技術は、例えば、ＩＢＭ（登録商標）の人工知能であるＷＡＴＳＯＮ（登録商標）において公知である（https://www.ibm.com/watson/developercloud/doc/nl-classifier/）。カテゴリの分類は、例えば図５のイメージ図に示すように行われるものとする。
【００４８】
図５の例では、最初にテキスト文書から、各文書に付与された「質問」（Ｑ：４３１）と「カテゴリ」（４３２）の値を抽出している（４３０）。４３０は、図４の学習データ４３０であり、情報処理装置１００の外部メモリに記憶されている。
【００４９】
質問は、必ずしも当該テキスト文書から抽出したものではなくともよい。例えば、当該テキスト文書中に記載された回答として、質問者が入力する可能性がある文章を別途作成しておき、別の文書として外部メモリに記憶しておいてもよい。
【００５０】
また、本発明の説明例では、質問と回答が一体となったテキスト文書を使用しているが、一体となっていない場合もある。
【００５１】
例えば人手により学習用の質問文章を作成し文書として外部メモリ２１１に保持しておいてもよい。いずれにしても図５の説明においては、「質問」はすでに用意されているものとする。
【００５２】
情報処理装置１００は、「質問」の文章と「カテゴリ」をペアとしてカテゴリ特定基準学習プログラム５０１に入力し、その結果として本発明の処理が使用するためのカテゴリ特定基準を出力する。
【００５３】
このカテゴリの特定（判定）・分類には、例えば特開２００３−１４１１２９等に記載されている技術を用いる。これは周知の技術であるため詳細な説明は割愛する。カテゴリ特定基準をカテゴリ特定基準記憶部１２１に記憶させる。
【００５４】
本発明の情報処理装置１００の入力文字列受付部１０１が、検索条件となる入力文字列を受け付けると（５０２）、当該入力文字列をカテゴリ特定部１０２に受け渡して、前述のカテゴリ特定部１０２がカテゴリ特定基準記憶部１２１に記憶された情報に基づき、入力文字列の属する（例：「質問」の文字列に対応する）カテゴリの特定を行う。
【００５５】
カテゴリ確信度リスト４４０は、入力文字列がいずれのカテゴリに属するものかをリストとして表現するものであって、リストの各要素は、特定されたカテゴリを表す文字列と、その確信度を表す数値（例では％を単位としている）から構成される。
【００５６】
図の例では、５０２の入力文字列（「質問」のフィールドの文字列）が、「インストール」に関する質問である確信度が４０％、「トラブル」に関する質問である確信度が３０％等を結果として表している。以上が図５の説明である。
【００５７】
次に図７を参照して、本発明の実施形態に係る制約カテゴリ選択基準の一例について説明する。
【００５８】
制約カテゴリ選択基準７００は、カテゴリ特定部１０２のカテゴリ確信度リスト４４０をカテゴリ取得部１０３がどのように利用するかという基準を定義する規則（ルール）である。
【００５９】
すなわち、制約カテゴリ選択基準７００に従って、入力文字列に対して特定されたカテゴリとその確信度のペアのリスト（カテゴリ確信度リスト４４０）を使用する。制約カテゴリ選択基準７００は、制約カテゴリ選択基準記憶部１２２に記憶されている。
【００６０】
制約カテゴリ選択基準７００は、７０１〜７０４で構成される。名称７０１は、制約カテゴリ選択基準の名称であり、識別情報である。カテゴリ選択条件７０２は、どのカテゴリを、文書検索を行う対象のカテゴリとして絞り込む（選択する）かを示す。
【００６１】
本発明の説明においては、制約カテゴリ選択基準７００を使って選択（絞込み）した、検索の制約条件とするカテゴリを制約カテゴリと呼ぶ。
【００６２】
最低基準７０３は、カテゴリ選択条件７０２で絞り込んだカテゴリが満たすべき最低基準である。追加のカテゴリ選択条件７０４は、最低基準７０３が満たされない場合に、更に追加で実行する処理であり、どのカテゴリを絞り込み後のカテゴリに追加するかを示す。
【００６３】
つまり、７０２のカテゴリを絞り込み７０３の条件が満たされなかった場合に、７０３の条件を満たすまで、７０４の処理を繰り返して制約カテゴリを絞り込む。
【００６４】
図７では、６つの制約カテゴリ選択基準の例を記載している（７００ａ〜７００ｇ）。本発明の第１の実施形態においては、７００ａの制約カテゴリ選択基準が最初に実行する選択基準として指定されているものとする。
【００６５】
なお、いずれの制約カテゴリ選択基準を用いて入力文字列に対応するカテゴリを選択するかは任意に指定可能としてもよい。例えば７００ａ〜７００ｆに示すすべての制約カテゴリ選択基準が制約カテゴリ選択基準記憶部１２２に記憶されていて、設定ファイル（不図示）やユーザの選択（不図示のユーザインタフェース）などにより、いずれの制約カテゴリ選択基準７００を最初に使用するか特定されているものとする。
【００６６】
また、追加のカテゴリ選択条件７０４に、他の制約カテゴリ選択基準の名称７０１を記載して使用することも可能である。その場合には、その制約カテゴリ選択基準７００も記憶されている必要がある。詳しくは後述する。
【００６７】
次に図９を参照して、本発明の実施形態に係る検索処理について説明する。図９のフローチャートの各ステップは、情報処理装置１００上のＣＰＵ２０１で実行される。
【００６８】
ステップＳ９０１においては、入力文字列受付部１０１が、後述する文書検索部１０４でテキスト文書を検索するための条件として、入力文字列を受け付ける。例えば、不図示の表示画面において、ユーザ操作による「インストールの途中でメッセージが出て、インストールが正常に動作しない」の文字列の入力を受け付ける。
【００６９】
ステップＳ９０２においては、ステップＳ９０１で受け付けた入力文字列が、いずれのカテゴリに分類されるかを判定・特定する。
【００７０】
具体的には、カテゴリ特定部１０２が、カテゴリ特定基準記憶部１２１に記憶されたカテゴリ特定基準を用いて、入力文字列を分類するカテゴリとそのカテゴリに対する分類の確信度のペアを、複数個、特定結果として取得し、ＲＡＭ２０２上のカテゴリ確信度リスト４４０に格納する。
【００７１】
また、例えばステップＳ９０２のタイミングで、カテゴリ確信度リスト４４０の中の１つとして特定された各カテゴリの類似度を特定し、類似カテゴリリストとしてＲＡＭ２０２上に記憶する。図８の８００ａ〜８００ｃ（総称を類似カテゴリリスト８００という）は、類似カテゴリリストの一例である。
【００７２】
本発明の実施形態の説明においては、８００ｃを例として説明するが、類似カテゴリリストは８００ａや８００ｂのような構成で生成・記憶するようにしてもよい。
【００７３】
類似カテゴリリスト８００ａは、どのカテゴリ（類似元カテゴリ８０１）が、どのカテゴリ（類似先カテゴリ８０２）に類似しているかを示す。類似先カテゴリ８０２の欄の括弧内の数値は、括弧の直前に記載されたカテゴリと類似元カテゴリ８０１との類似度である。
【００７４】
類似カテゴリリスト８００ｂは、類似カテゴリリスト８００の別の記憶形態の例を示す。類似カテゴリリスト８００ｂにおいては、類似元カテゴリと類似先カテゴリの区別がない。
【００７５】
類似カテゴリリスト８００ｃは、どのカテゴリ（類似元カテゴリ８０１）が、どのカテゴリ（類似先カテゴリまたは制約解除８０４）に類似しているかを示す。なお、類似先カテゴリまたは制約解除８０４の欄に制約解除の値が記憶されている場合、制約カテゴリリスト４１０（図４）に記憶されたカテゴリによる制約を解除して検索を行う。詳しくは後述する。
【００７６】
制約カテゴリリストとは、制約条件として使用するカテゴリの一覧であり、情報処理装置１００のＲＡＭ上に記憶される。情報処理装置１００は、後のステップＳ９０４において、制約カテゴリリスト４１０に記憶されているカテゴリの文書を対象に、入力文字列を用いた検索を行う。
【００７７】
８００ａ又は８００ｃを用いて類似カテゴリを特定・取得する場合には、対象のカテゴリ（例えば、カテゴリ特定部１０２のカテゴリ確信度リスト４４０で確信度が１位となったカテゴリ）を類似元カテゴリ８０１の欄で検索し、８０１に対応する８０２又は８０４に記載されたカテゴリ群を、対象のカテゴリに類似するカテゴリとして特定する。例えば確信度１位のカテゴリが「トラブル」であれば、１行目より「インストール」、「アンインストール」などのカテゴリが類似カテゴリ群に含まれることになる。
【００７８】
また、８００ｂを用いて類似カテゴリを特定・取得する場合には、対象のカテゴリと同じ８０３のデータ行に記憶されている他のカテゴリ群を類似カテゴリとして特定する。例えば「トラブル」が類似カテゴリ８０３のいずれに含まれるかを検索し、「トラベル」を含む行に含まれるカテゴリ同士を類似のカテゴリとみなす。
【００７９】
類似のカテゴリの特定方法について、図６を参照して説明する。図６は、本発明の実施形態に係るカテゴリ間の類似性の一例を説明するための図である。
【００８０】
図６においては、円の中にある文字列がカテゴリの名称、線（実線および点線）が、カテゴリ間の類似性を示している。便宜上、カテゴリ間の「類似カテゴリネットワーク」と呼ぶことにする。
【００８１】
例えば、カテゴリとして「トラブル」に着目すると、実線で結合された「動作環境」、「機能」、「アンインストール」、「インストール」、「エラー表示」というカテゴリと「質問として入力される文字列」の傾向が似ている、ことになる。
【００８２】
すなわち「類似ネットワーク」における類似性は、カテゴリの名称そのものや、回答の内容、回答が表す技術的な実体が似ているか否かはここでは関係ない。
【００８３】
あくまで、「質問として入力される文字列」が、図５のカテゴリ特定基準学習プラム５０１で学習され、カテゴリ特定部１０２で判定された結果、相互に誤って判定される傾向がある、という意味で似ているということである。
【００８４】
類似ネットワークは、類似するカテゴリ間において「類似度」を指定するものであってもよい。また、類似ネットワーク上で隣り合った（直接、線で結合された）カテゴリ間のみに類似度を記載しているが、例えば隣り合っていないカテゴリ間の類似度を定義してもよい。
【００８５】
あるいは、例えば「トラブル」と「仕様」のように、「機能」という別のカテゴリを介して接続している場合に、２つの類似度に基づき、類似度が計算されるものであってもよい。
【００８６】
例えば「トラブル」と「機能」は「０．８」、「機能」と「仕様」は「０．９」であるので、「０．８×０．９＝０．７２」が「トラブル」と「仕様」の類似度である、というものである。もちろん、この計算方法に限定するものではなくあくまで一例である。
【００８７】
更に、全てのカテゴリが類似ネットワーク上で接続していなくともよい。図６の例では「ユーザ情報」と「ライセンス情報」の２つのカテゴリは、他のカテゴリとは接続していない。すなわち、２つのカテゴリのテキスト文書を検索するための質問文と、他のカテゴリのための質問文が類似する確率はほとんどないことになる。
【００８８】
もちろん、実際にはゼロではなく、ごく非常に低い確率である場合もある。ネットワークを分割するかどうかは、あくまで便宜上のものであり、一例に過ぎないことは言うまでもない。
【００８９】
当該カテゴリ同士の類似度の算出については、従来技術で代替可能である。以上が図６の説明である。
【００９０】
図９の説明に戻る。ステップＳ９０３においては、カテゴリ取得部１０３が、制約カテゴリ選択基準記憶部１２２から、制約カテゴリ選択基準を１つ読み込み、文書の検索を行うカテゴリである制約カテゴリの選択処理を行う。Ｓ９０３の処理の詳細は図１０の説明で後述する。
【００９１】
なお、この時点で図７のいずれの制約カテゴリ選択基準を読み込むかはあらかじめ、設定やユーザの選択により決定しているものとする。
【００９２】
第１の実施形態においては、図７の７００ａを使って制約カテゴリの選択（絞込み）を行う。詳細は図１１の説明で後述する。
【００９３】
ここで図１０を参照して、本発明の実施形態に係るカテゴリ取得部の処理について説明する。図１０のフローチャートの各ステップは、情報処理装置１００上のＣＰＵ２０１で実行される。
【００９４】
ステップＳ１００１において、カテゴリ特定部１０２により得られたカテゴリ確信度リスト４４０から、確信度が１位であるカテゴリを取得する。さらに、当該カテゴリを用いた制約条件の解除をするか判定する。
【００９５】
具体的には、類似カテゴリリスト９１２（具体的には、図８における８００ｃ）を参照して、制約条件の解除を行うか否かを判定する。類似先カテゴリまたは制約解除８０４の欄に「制約解除」が記載されている場合、制約条件の解除を行う。類似元カテゴリ８０１に類似する、類似先のカテゴリの名称が記載されている場合は、制約条件の解除は行わない。
【００９６】
制約条件の解除は、例えばカテゴリによる制約をした方が検索の精度を向上できる場合に有用である。
【００９７】
例えば、確信度１位のカテゴリが「トラブル」であるとする。また例えば「トラブル」は、あらゆる項目（インストール、機能、バージョンアップ）と関連（類似）しており、カテゴリ「トラブル」に基づいて、検索対象に対する制約条件を付与すると、却って誤った制約が発生し検索の精度を悪化させることが分かっているとする。
【００９８】
その場合には、「制約解除」として、後続する処理である検索に対して、制約を行わない方が、検索精度が高まる可能性が高い。
【００９９】
本実施形態においては、類似先のカテゴリが所定数を超える場合に、情報処理装置１００のＣＰＵ２０１が、自動で、８０４に「制約解除」を設定するものとする。当該所定数の値は、不図示の設定画面において、ユーザ操作により任意に設定変更可能であり、情報処理装置１００の外部メモリに予め記憶されているものとする。
【０１００】
例えば確信度が１位のカテゴリが「トラブル」である場合、カテゴリ「トラブル」について、類似カテゴリリストで「制約解除」と指定されているか否かを判定する。ステップＳ１００１において、「制約解除の指示がない」（８０４に「制約解除」の記載がない）と判定された場合には、処理をステップＳ１００２に進める。「制約解除の指示がある」と判定された場合には、処理をステップＳ１００８に進める。
【０１０１】
ステップＳ１００８においては、制約カテゴリリスト４１０に記憶されたカテゴリ群の情報をすべて削除する（リセット）。その後、図１０のフローチャートの処理を終了し、図９のステップＳ９０４に処理を進める。つまり、既に制約カテゴリリスト４１０に登録されているカテゴリ群をリセットすることで、カテゴリによる制約なく、ステップＳ９０４における文書の検索を行う。
【０１０２】
一方、ステップＳ１００２においては、以降でカテゴリの確信度を合計するために使用する記憶変数を、ゼロにリセットする。
【０１０３】
ステップ１００３においては、制約カテゴリ選択基準記憶部１２２から、指定された制約カテゴリ選択基準７００を読み込み（第１の実施形態においては７００ａを読み込み）、カテゴリ選択条件７０２を取得する。
【０１０４】
ステップＳ１００４においては、カテゴリ選択条件７０２に従い、制約条件とするカテゴリ群を取得する処理を行う。取得したカテゴリは、制約カテゴリリスト４１０に追加し後述の文書検索の処理で利用する。
【０１０５】
制約カテゴリリストとは、制約条件として使用するカテゴリの一覧であり、情報処理装置１００のＲＡＭ上に記憶される。つまり、情報処理装置１００は、後のステップＳ９０４において、制約カテゴリリストに記憶されているカテゴリの文書を対象に、入力文字列を用いた検索を行うものである。
【０１０６】
７００ａを用いたステップＳ１００４の処理の詳細は、図１１の説明で後述する。
【０１０７】
ここで図１１を参照して、本発明の第１の実施形態における、制約カテゴリの選択処理について説明する。図１１のフローチャートの各ステップは、情報処理装置１００上のＣＰＵ２０１で実行される。
【０１０８】
７００ａの７０２に従って、ステップＳ１１０１からステップＳ１１０３は、制約条件とするカテゴリの確信度の合計値が９０％以上になるまで繰り返し実行する。
【０１０９】
具体的には、カテゴリ特定部１０２により特定されたカテゴリを、確信度が高いものから順に取得して処理を適用し、確信度合計条件（図７の７０２ｂの例では９０％）になるまで処理を繰り返すものである。
【０１１０】
ステップＳ１１０１においては、カテゴリ確信度リスト４４０の中の未処理のカテゴリのうち、１つのデータに着目する（例えば、ＲＡＭ上に該当のデータ列を読み出す）。そして、着目したカテゴリの確信度をカテゴリ確信度リスト４４０（特定結果）から取得する。
【０１１１】
ステップＳ１１０２においては、ステップＳ１１０１で取得した確信度を、確信度を合計して記憶する合計値記憶部（合計値記憶テーブル４２０）に、既に記憶されている値に加算して記憶させる。
【０１１２】
ステップＳ１１０３においては、着目中のカテゴリを後のテキスト文書検索の際に、カテゴリに対する制約情報として使用するために、制約カテゴリリスト４１０に記憶させる。
【０１１３】
情報処理装置１００のＣＰＵ２０１は、合計値記憶テーブル４２０の確信度の合計が９０％以上となった場合に、ステップＳ１００１〜Ｓ１００３の処理を終了し、制約カテゴリリストに記憶されているカテゴリの一覧情報を一端確定してＲＡＭ２０２上に出力して記憶し、図１１の処理を終了する。
【０１１４】
図１０の説明に戻る。ステップＳ１００５においては、現在処理しているカテゴリ選択条件が、カテゴリ選択条件７０２で指定された（最初の）条件か、追加のカテゴリ選択条件７０４で指定された追加の条件かを判定する。
【０１１５】
カテゴリ選択条件７０２で指定された条件であれば、処理をステップＳ１００６に進める。追加の処理であれば、これ以上処理する情報がないので、図１０のワークフローの処理を終了する。
【０１１６】
ステップＳ１００６においては、カテゴリ選択の手続きを繰り返すための最低条件（最低基準７０３）が満たされているか否かを判定する。
【０１１７】
例えば、現在選択されている制約カテゴリ選択基準７００に記載された最低基準７０３が満たされているかを判定する。
【０１１８】
最低基準７０３が満たされている場合（ＹＥＳの場合）には、本フローチャートの処理を終了する。すなわち、文書検索時のカテゴリによる制約条件を決定し、決定した制約条件としての制約カテゴリリストをＲＡＭ２０２上に出力して記憶する。最低基準７０３が満たされていなければ（ＮＯの場合）、ステップＳ１００７に進む。
【０１１９】
ステップＳ１００７においては、最低基準７０３が満たされていない場合の、次の指示（処理）を追加のカテゴリ選択条件７０４から読み出して特定し、特定された条件が「制約をリセット」か、別の制約カテゴリ選択基準７００の名称か、その他の条件か判定する。
【０１２０】
追加のカテゴリ選択条件７０４に「制約をリセット」する旨の指示がある場合には、制約リスト９１３にそれまでに格納したカテゴリ群をリセットして、図１０のフローチャートの処理を終了する。
【０１２１】
追加のカテゴリ選択条件７０４に別の制約カテゴリ選択基準７００の名称が記載されている場合、既に制約カテゴリリストに記憶されているカテゴリに追加して、当該追加のカテゴリ選択条件７０４に記載されている名称の制約カテゴリ選択基準７００によって選択されるカテゴリを制約カテゴリリストに記憶すべく、処理をステップＳ１００３に戻し、７０４で指定された制約カテゴリ選択基準７００を取得して、ステップＳ１００４以下の処理を適用する。
【０１２２】
追加のカテゴリ選択条件７０４に条件そのものが記載されていた場合、既に制約カテゴリリストに記憶されているカテゴリに追加して、当該条件を用いて選択したカテゴリを制約カテゴリリストに記憶すべく、当該条件を用いたカテゴリ選択をステップＳ１００４でえ実行し、処理をステップＳ１００５に移行する。
【０１２３】
なお、図７の７００ａにおいては、最低基準７０３が記載されていないため、条件なしと判断し、条件が満たされているものとして図１０の処理を終了する。以上が図１０の説明である。
【０１２４】
図９の説明に戻る。ステップＳ９０４においては、文書検索部１０４が、前述の入力文字列を検索条件として、テキスト文書記憶部１２４から条件に合致するテキスト文書の一覧を取得する。
【０１２５】
その際、制約カテゴリリスト４１０にデータが存在すれば（空のリストでなければ）、そのカテゴリを制約条件として利用する。つまり、制約カテゴリリストに記憶されているカテゴリの文書を対象に、入力文字列を用いた検索を行い、検索にヒットした文書一覧を、検索結果としてＲＡＭ２０２上に出力して記憶する。
【０１２６】
また、不図示の表示画面に当該検索結果の文書一覧を表示する。以上で、図９のフローチャートによる処理の流れの説明を完了する。
【０１２７】
以上、本発明の第１の実施形態について説明した。本発明の第１の実施形態によれば、複数のカテゴリの確信度の高さの情報を用いて、検索対象のカテゴリとして複数のカテゴリを容易に特定可能な仕組みを提供することができる。
【０１２８】
そのため、所定の数のカテゴリを検索対象とするカテゴリとして絞り込む、又は、単にあるカテゴリに類似しているカテゴリを検索対象として追加していくのに比べて、より確信度を重視した検索対象の絞込みが可能となる。
【０１２９】
例えば、文書検索部１０４での絞り込みが、質問文が高い確率で分類されたカテゴリのものとなるので、精度の高い検索を実行するという効果を得ることができる。
【０１３０】
なお、第１の実施形態においては、７００ａの制約カテゴリ選択基準において、カテゴリ選択条件７０２は「確信度上位から確信度合計９０％になるまで」とし、最低基準７０３と追加のカテゴリ選択条件７０４は設定されていないものとしたが、例えば、カテゴリ選択条件７０２は「確信度がトップのカテゴリ」とし、最低基準７０３を「選択条件で選択されたカテゴリの確信度合計が９０％以上」とし、追加のカテゴリ選択条件７０４を「確信度高いものから合計９０％になるまで追加」として、図１０の処理を実行することで、同じ発明及びその効果を享受可能である。
【０１３１】
また、７００ｇに示すように、上述した最低基準７０３及び追加のカテゴリ選択条件７０４を設定しておき、図１０の処理を実行することで、検索対象として更なるカテゴリの特定処理を行うことが可能である。
【０１３２】
例えば、先に選択したカテゴリの中で類似のカテゴリで含まれていないものがあれば、図８の類似カテゴリ記憶部１２３に基づき、不足している類似カテゴリを追加する。
【０１３３】
これにより、質問文の類似性が高いカテゴリのテキスト文書に対して検索漏れを防ぐことにより精度を向上させるという効果を得ることができる。
【０１３４】
なお、上述の実施形態においては、「制約解除」に関する指示を類似カテゴリリスト９１２（図８の８００ｃに例示）に記載した例として説明しているが、類似カテゴリリスト９１２とは別に、制約解除指示に関する記憶部を備え、その情報を確認するよう実装してもよいことはいうまでもない。
【０１３５】
＜第２の実施形態＞
第２の実施形態においては、図１０の処理において、図７の７００ｂを使って制約カテゴリの選択（絞込み）を行う。詳細は図１２の説明で後述する。
【０１３６】
ここで図１２を参照して、本発明の第２の実施形態における、制約カテゴリの選択処理について説明する。図１２のフローチャートの各ステップは、情報処理装置１００上のＣＰＵ２０１で実行される。なお、上述の実施形態で説明した処理と共通の処理については説明を省略する。
【０１３７】
情報処理装置１００は、ステップＳ１００４において、図１１の処理の代わりに図１２の処理を実行する。ステップＳ１２０１において、情報処理装置１００は、カテゴリ特定部１０２によって特定されたカテゴリであるカテゴリ確信度リスト４４０（図４）に含まれているカテゴリのうち、確信度がトップのカテゴリを選択（カテゴリ確信度リスト９１１の確信度が１位であるカテゴリに着目）する。そして、当該確信度が１位のカテゴリを制約カテゴリリスト４１０に記憶する。
【０１３８】
制約カテゴリリスト４１０は、後述する図９のステップＳ９０４において、入力文字列に従って文書の検索を行うカテゴリである。
【０１３９】
ステップＳ１２０２においては、確信度が１位であるカテゴリと、類似のカテゴリ群を取得する。具体的には、図８の８００から、１位のカテゴリが所属するグループを取得してＲＡＭ上に読み出す。図８の情報は既に情報処理装置１００の外部メモリに記憶されている。
【０１４０】
以下、ステップＳ１２０２で取得した類似のカテゴリリストの中の全カテゴリに対して、ステップＳ１２０３以下の処理を繰り返すことで、確信度が１位のカテゴリと、そのカテゴリに類似するカテゴリの確信度の合計値を算出する。
【０１４１】
ステップＳ１２０３においては、ステップＳ１２０２で取得した類似カテゴリリストの中の未処理のカテゴリを１つ取得する。
【０１４２】
ステップＳ１２０４においては、確信度が１位のカテゴリの確信度と、ステップＳ１２０３で一度取得したカテゴリの確信度を合計して記憶する合計値記憶部（合計値記憶テーブル４２０）に、ステップＳ１２０４で取得したカテゴリの確信度の値を加算して記憶させる。
【０１４３】
ステップＳ１２０５においては、ステップＳ１２０３で取得したカテゴリを、後のテキスト文書検索の際にカテゴリに対する制約条件として使用するために、制約カテゴリリスト４１０に記憶させる。以上で図１２におけるフローチャートの説明を終了する。
【０１４４】
なお、類似のカテゴリの特定にあたっては、図６のように類似カテゴリがネットワーク状になっているデータ構造でもよく、その場合、リンクが張られているすべてのカテゴリを選んでも良いし、隣り合ったものだけを選んでも良いし、線（実線、点線）に記載された類似度の数値に従って、何度も辿るにつれてその値を乗じながら、一定の数値を下回るまで、カテゴリ群に追加する、等としても良い。これは、設計事項であり、カテゴリ群の決定方法は、いずれの方法でも良い。
【０１４５】
情報処理装置１００のＣＰＵ２０１は、図１０のステップＳ１００５において、７００ｂの最低基準７０３ｂが満たされているか判定し、満たされていない場合は処理をステップＳ１００７に移行する。
【０１４６】
すなわち、取得した制約カテゴリの確信度の合計が９０％以上でなければ処理をステップＳ１００７に移行し、７０４ｂを参照して処理をステップＳ１００４に戻し、確信度が１位のカテゴリとそのカテゴリに類似しているカテゴリ以外のカテゴリを対象として、既に制約カテゴリリストに記憶されているカテゴリの確信度と合わせて、確信度の合計が９０％以上になるまで、図１１に記載の処理を繰り返し実行する。以上が図１２の説明である。
【０１４７】
以上、第２の実施形態について説明した。第２の実施形態によれば、類似カテゴリと確信度を加味して、検索対象のカテゴリとして複数のカテゴリを容易に特定可能な仕組みを提供することができる。
【０１４８】
第２の実施形態によれば、質問文が類似している、と想定される全てのカテゴリに絞り込んで文書検索部１０４で検索することにより、適合性の高い検索を実現するという効果を得ることができる。
【０１４９】
また、最低基準が満たされていない場合には、質問が類似のカテゴリ全てを集めても確信度が低ければ、そもそも類似性の判定の精度が低いのではないか、という考えの下、追加のカテゴリ選択条件に応じて更にカテゴリを制約条件に追加することができる。
【０１５０】
第２の実施形態においては、確信度の高いカテゴリから、（まだ、カテゴリ群に含まれていないものを）制約カテゴリリストに追加していく。従って、類似性判定の精度が悪い場合であっても、もれなく検索することができ、再現性の高い検索を実現するという効果を得ることができる。
【０１５１】
＜第３の実施形態＞
第３の実施形態では、図１０の処理において、図７の７００ｃを使って制約カテゴリの選択（絞込み）を行う。詳細は図１３の説明で後述する。なお、上述の実施形態で説明した処理と共通の処理については説明を省略する。
【０１５２】
図１３は、本発明の実施形態に係る確信度上位のカテゴリを優先するカテゴリ取得処理のフローチャートの一例を示す図である。図１３のフローチャートの各ステップは、情報処理装置１００上のＣＰＵ２０１で実行される。
【０１５３】
情報処理装置１００は、ステップＳ１００４において、図１１又は図１２の処理の代わりに図１３の処理を実行する。
【０１５４】
ステップＳ１３０１からステップＳ１３０３は、確信度が１位であるカテゴリから降順に、指定の数の、指定の順位のカテゴリまで取得する繰り返し処理である。
【０１５５】
ステップＳ１３０２においては、名称７０１ｂに「上位カテゴリ」とある制約カテゴリ選択基準７００ｃのカテゴリ選択条件７０２ｃに従って、カテゴリ確信度リスト４４０における、指定の順位までのカテゴリの中から、未処理の、最上位のカテゴリの１つに着目する。
【０１５６】
ステップＳ１３０３においては、着目したカテゴリの確信度を合計して記憶する記憶部（合計値記憶テーブル４２０）に、既に記憶されている値に加算して記憶させる。
【０１５７】
ステップＳ１３０４においては、着目中のカテゴリを後のテキスト文書検索の際に、カテゴリに対する制約情報として使用するために、制約カテゴリリスト４１０に記憶させる。以上で図１３におけるフローチャートの説明を終了する。
【０１５８】
カテゴリ特定部１０２の精度が非常に高く、またカテゴリの数が多い場合には、絞り込みのカテゴリ数を少ない数に固定することで、文書検索部１０４での絞り込みの負荷を軽くすることができる。
【０１５９】
ステップＳ１００５以降の処理については、第２の実施形態の発明と同じように、先に選択したカテゴリの確信度合計が一定基準を満たしていない場合には、確信度合計が９０％になるまでさらにカテゴリを追加する。
【０１６０】
当初想定したカテゴリ特定部１０２のカテゴリの特定精度が高い、という場合に、想定に反し低いときでも対応できることで、安心して当該定義を使用することが可能となる。
【０１６１】
以上、本発明の第３の実施形態について説明した。本発明の第３の実施形態によれば、カテゴリの数の指定及び指定されたカテゴリの確信度を加味し、検索対象のカテゴリとして複数のカテゴリを容易に特定可能な仕組みを提供することができる。
【０１６２】
＜第４の実施形態＞
第４の実施形態では、図１０の処理において、図７の７００ｄを使って制約カテゴリの選択（絞込み）を行う。詳細は図１８の説明で後述する。なお、上述の実施形態で説明した処理と共通の処理については説明を省略する。
【０１６３】
図１８は、本発明の実施形態に係る確信度の値が指定条件を満たすカテゴリの取得処理のフローチャートの一例を示す図である。
【０１６４】
情報処理装置１００は、ステップＳ１００４において、図１１や図１２、図１３の処理の代わりに図１８の処理を実行する。図１８のフローチャートの各ステップは、情報処理装置１００上のＣＰＵ２０１で実行される。
【０１６５】
なお、「確信度の値が指定条件を満たす」というのは、例えば図７の制約カテゴリ選択基準７００ｄに記載されているような、「確信度が０ではないもの」、「確信度が５％以上あるもの」など、任意の条件を満たすものをいう。７００ｄによれば、カテゴリ確信度リスト９１１において、確信度が０でない限り、そのカテゴリは制約条件として取得されることになる。
【０１６６】
ステップＳ１８０１からステップＳ１８０４は、カテゴリ特定部１０２の特定結果であるカテゴリ確信度リスト４４０に含まれているカテゴリのうち、確信度が指定条件を満たしているもの（図７の７０２ｄの例では、確信度が０％ではないもの）を制約カテゴリリストに追加する処理を繰り返すものである。
【０１６７】
ステップＳ１８０１においては、着目したカテゴリの確信度をカテゴリ確信度リスト９１１から取得する。
【０１６８】
ステップＳ１８０２においては、着目したカテゴリの確信度が、指定条件を満たすか否かを判定する。
【０１６９】
本例では、０％か、０％を超える確信度を有するかを判定する。指定条件を満たさない（本例では０％の場合：ＮＯの場合）には、着目中のカテゴリに対する処理を完了し、次のカテゴリに着目する。指定条件を満たす場合（本例では０％を超える確信度を有する場合：ＹＥＳの場合）には、ステップＳ１８０３に進む。
【０１７０】
ステップＳ１８０３においては、ステップＳ１８０２で取得した確信度を、確信度を合計して記憶する記憶部（合計値記憶テーブル４２０）に、既に記憶されている値に加算して記憶させる。
【０１７１】
ステップＳ１８０４においては、着目中のカテゴリを後のテキスト文書検索の際に、カテゴリに対する制約情報として使用するために、制約カテゴリリスト４１０に記憶させる。以上で図１８におけるフローチャートの説明を終了する。
【０１７２】
詳細の説明をしないが、さらにカテゴリ選択条件７０２には、様々な条件を記載することができる。例えば、前述の説明では取得する条件を記載していたが、取得しない条件「確信度が２％未満のカテゴリは取得しない」と記載することも考えられる。
【０１７３】
もちろん、これは「確信度が２％以上のカテゴリをすべて取得する」と同じ条件になる。また、図６の類似カテゴリのネットワークを２回辿る、あるいは、カテゴリを接続する線上の類似度を最初のカテゴリから順に乗じたものを、離れたカテゴリの類似度と見なし、類似度が０．６以下になるまでネットワークを辿り、その範囲ですべてのカテゴリを取得する、ということも可能である。これらすべてを本発明の実施例として含む。
【０１７４】
その他、最低基準７０３、追加のカテゴリ選択条件７０４に記載できる定義も同様に、プログラムとして実装、あるいはプログラムが解釈可能な形式での実装であれば、すべて本発明の実施例の範囲に含む。以上第４の実施形態について説明した。
【０１７５】
＜第５の実施形態＞
第５の実施形態では、図１０の処理において、図７の７００ｅを使って制約カテゴリの選択（絞込み）を行う。なお、上述の実施形態で説明した処理と共通の処理については説明を省略する。
【０１７６】
図７の制約カテゴリ選択基準７００ｅは、カテゴリ選択条件７０２、最低基準７０３は、制約カテゴリ選択基準７００ｃと同じである。ただし、追加のカテゴリ選択条件７０４ｃが、条件を明記していたのに対し、追加のカテゴリ選択条件７０４ｄの場合は、他の制約カテゴリ選択基準７００の名称が記載されている。
【０１７７】
つまり、最低基準７０３ｅが満たされない場合、既に定義された他の制約カテゴリ選択基準７００ｂ（確信度指定）を呼び出して、制約カテゴリの選択を実行するものである。
【０１７８】
なお、例えば呼び出した確信度指定でも最低基準７０３ｂを満たさず、その追加のカテゴリ選択条件にも他の制約カテゴリ選択基準７００の名称が記載されていれば、いつまでも制約カテゴリの追加選択処理が繰り返してしまうという可能性があるが、例えば、追加のカテゴリ選択条件７０４による繰り返し処理の制限回数を予め記憶しておくことで、処理回数を制限することができる。
【０１７９】
あるいは、所定回数以上繰り返した場合には、カテゴリを絞り込んで文書検索部１０４を実行するのは不適切であると判断して、カテゴリによる絞り込みをしない、と判断することも可能である。
【０１８０】
＜第６の実施形態＞
第６の実施形態では、図１０の処理において、図７の７００ｆを使って制約カテゴリの選択（絞込み）を行う。なお、上述の実施形態で説明した処理と共通の処理については説明を省略する。
【０１８１】
制約カテゴリ選択基準７００ｆは、カテゴリ選択条件７０２、最低基準７０３は、制約カテゴリ選択基準７００ｂと同じである。ただし、追加のカテゴリ選択条件７０４ｂと７０４ｆが異なる。
【０１８２】
７０４ｆに記載の「制約をリセット」は、最低基準７０３ｆを満たさない場合、文書検索時にカテゴリに対する制約条件をリセットする。すなわち、カテゴリを選択するための他の処理を実行するのではなく、文書検索時に全てのカテゴリのテキスト文書を対象として検索を実行する、という指定である。
【０１８３】
よって、最低基準７０３ｆが満たされない場合に、例えば、それ以上制約カテゴリリストに含まれる制約カテゴリを増やし、それらのカテゴリ群に基づいて検索時の制約条件とするよりも、制約をなくしてテキスト文書記憶部１２４に記憶された全てのテキスト文書を検索対象とした方が良いと判断の下、制約条件を解除するルールである。以上、本発明の第６の実施形態について説明した。
【０１８４】
以上説明した通り、本発明によれば、複数のカテゴリの確信度の高さの情報を用いて、検索対象のカテゴリとして複数のカテゴリを容易に特定可能な仕組みを提供することができる。
【０１８５】
＜第７の実施形態＞
なお、検索結果の抽出や出力の優先順位は、入力文字列である質問文と文書自体とから特定されるスコア（文書がどの程度検索結果として妥当かを示す各文書のスコア）によって決定することができる。
【０１８６】
しかし、質問文の属するカテゴリの確信度の高さや順位と、質問文自体と文書の直接的な関わりで特定されるスコアの高さ、順位とは必ずしも一致しない。
【０１８７】
より的確に検索結果を出力するために、確信度の情報を用いて、より柔軟なスコアリング（ランキング）をして、検索結果をユーザに提示することが必要となる。
【０１８８】
クエリから判定されるカテゴリの選択を柔軟に行うことで、検索精度における再現性（正しい答えが検索結果に含まれる割合）を向上させ、誤った回答を含んでも、さらに質問文が何に関する質問文であるか、という分析の結果も加味してスコアリング調整をすることで、もっともらしい回答を上位にするための検索およびスコアリング技術を提供することが望まれている。
【０１８９】
第７の実施形態においては、質問文のカテゴリに対する確信度による検索スコアの重み付を行うことにより、単なる検索のスコアだけではなく、質問文がいかなるカテゴリに属するかという特定結果の確からしさも加味した再スコアリングを行う。
【０１９０】
以下、図１４〜図１５を参照して、本発明の第７の実施形態について説明する。なお、上述した実施形態に記載の処理と同一の処理については記載を省略する。
【０１９１】
図１４は、本発明の実施形態に係るカテゴリの確信度に基づいて、検索結果のテキスト文書のスコアを再計算した結果のイメージを示すための図である。入力文字列５０２（質問文）と、そのカテゴリ確信度リスト４４０とは、図４と同じものを再度記載している。
【０１９２】
検索結果１４０１及び検索結果１４０２は、文書検索の結果のデータであり、検索結果の各文書と、その文書の属するカテゴリ、その文書の質問文に対するスコアを対応付けた情報である。
【０１９３】
検索結果１４０１は、文書検索部１０４により検索した結果であり、図１５の説明で後述するカテゴリの確信度による重み付の調整をしていない状態である。検索結果の１位は、カテゴリ「トラブル」で、スコア「８０」である。２位は、カテ１ゴリ「インストール」で、スコア「７５」である。
【０１９４】
第７の実施形態においては、カテゴリ確信度リスト４４０に提示されたカテゴリとその重み付に応じて、例えば「計算例」１４０３で示された式で１４０１のスコアを調整する。
【０１９５】
検索結果１４０２は、当該カテゴリによる重み付の調整をした検索結果である。
【０１９６】
ここでは、１４０１の検索のスコアに対して、そのテキスト文書が属するカテゴリの確信度をカテゴリ確信度リスト４４０から取得し、乗じている。
【０１９７】
例では、１４０１で１位である「トラブル」（スコア８０）が確信度（３０％）により２４となる。同じく１４０１で２位である「インストール」の２件（スコア７５と７０）が、確信度（４０％）により、３０、２８となり、カテゴリの確信度で調整した後のスコアは、順位が入れ替わることになる。順位が入れ替わった様子が、１４０２に表されている。
【０１９８】
すなわち質問のカテゴリに対する確信度による検索スコアの重み付を行うことにより、単なる検索のスコアだけではなく、質問文がいかなるカテゴリに属するかという特定結果の確からしさもスコアに影響を及ぼすことにより、検索結果に対してより的確なスコアリング（ランキング）をして、ユーザに提示するという効果を得ることができる。
【０１９９】
図１５を参照して、本発明の実施形態に係るカテゴリの確信度に基づいて、検索結果のテキスト文書のスコアを再計算する処理について説明する。つまり図１４で説明した内容の詳細を説明する。図１５のフローチャートの各ステップは、情報処理装置１００上のＣＰＵ２０１で、ステップＳ９０４の代わりに実行される。
【０２００】
ステップＳ１５０１においては、テキスト文書記憶部１２４を検索して検索条件を満たしたテキスト文書群を取得する。
【０２０１】
この検索に際して、前述の制約カテゴリリスト４１０にカテゴリ（１または複数）の記載があれば、それらのカテゴリを含むテキスト文書に制限して検索を行う。
【０２０２】
また、例えば特開２００８−２２５９５７号公報に開示されている従来技術を用いて、各文書に対するスコアリングを行う。
【０２０３】
以下、ステップＳ１５０２〜Ｓ１５０６の処理を、ステップＳ１５０１で取得した検索結果（例えば図１４の１４０１）のテキスト文書群に対して繰り返し実行する。
【０２０４】
ステップＳ１５０２においては、取得したテキスト文書群の中から処理するテキスト文書の１つに着目する。
【０２０５】
ステップＳ１５０３においては、着目中のテキスト文書から、カテゴリフィールドで指定されたカテゴリ情報と、ステップＳ１５０１で付与された検索結果のスコアを取得する。例えば、図１４の１４０１の「カテゴリ」と「スコア」を取得する。
【０２０６】
例えば、１４０１の１行目の文書に着目し、そのカテゴリであるトラブルと、その文書のスコアである８０の値を取得する。
【０２０７】
ステップＳ１５０４においては、着目中のテキスト文書から取得したカテゴリ情報の確信度をカテゴリ確信度リスト９１１から取得する。例えば、取得したカテゴリ＝トラブルの確信度の値である３０％を、カテゴリ確信度リスト４４０から取得する。
【０２０８】
ステップＳ１５０５においては、着目中のテキスト文書のスコア（Ｓ１５０４で取得）と、カテゴリの確信度（Ｓ１５０５で取得）に基づき、着目中のテキスト文書のスコアを計算し直す。
【０２０９】
第７の実施形態においては、取得した文書のスコアに対して、その文書が属するカテゴリの確信度を乗じて、スコアを再計算する。
【０２１０】
つまり、単なる検索のスコアだけではなく、質問文がいかなるカテゴリに属するかという特定結果の確からしさも加味した再スコアリングを行う。
【０２１１】
Ｓ１５０６においては、Ｓ１５０６で計算したスコアを、着目中のテキスト文書のスコアとして再設定する。
【０２１２】
情報処理装置１００のＣＰＵ２０１は、全ての検索結果の文書に対してステップＳ１５０２〜Ｓ１５０６の処理を適用した後、当該処理を適用後の、再スコアリングがされた検索結果の文書一覧（例えば図１４の検索結果１４０２）を、スコアの高い順にソートして、検索結果の情報として確定（決定）し、ＲＡＭ２０２上に記憶・更新する。つまり、検索結果の出力処理を行う。以上で、図１５におけるワークフローの処理の説明を終了する。
【０２１３】
第７の実施形態によれば、確信度の情報を用いて、より的確な検索結果を特定することができる。
【０２１４】
以上説明したように、本発明によれば、複数のカテゴリの確信度の高さの情報を用いて、検索対象のカテゴリとして複数のカテゴリを容易に特定可能な仕組みを提供することができる。
【０２１５】
＜第８の実施形態＞
また、カテゴリの確信度だけでなく、カテゴリ同士の関係を加味して、より的確な検索結果を特定したいことがある。
【０２１６】
第８の実施形態においては、カテゴリの確信度とカテゴリ同士の関係を加味して、より的確な検索結果を特定する。
【０２１７】
具体的には、第８の実施形態においては、確信度が高いカテゴリと、当該カテゴリと文書のカテゴリとの類似度を使って、文書のスコアを再計算する。
【０２１８】
以下、図１６〜図１７を参照して、本発明の第８の実施形態について説明する。なお、上述した実施形態に記載の処理と同一の処理については記載を省略する。
【０２１９】
図１６は、本発明の実施形態に係る類似カテゴリネットワークに基づいて、検索結果のテキスト文書のスコアを再計算した結果のイメージを示すための図である。
【０２２０】
上述した図１４の説明においては、各テキスト文書の属するカテゴリに対応する確信度に基づき、当該テキスト文書のスコアを再計算していた。一方図１６ではさらに、１６０１に示すような類似カテゴリネットワークの情報を用いて、文書に対する再スコアリングを行っている。
【０２２１】
なお、図１６の１６０１は、図６に記載した類似カテゴリネットワークを抜粋して再掲しているものである。１６０１に記載されている、「０．８」、「０．９」の値は、各カテゴリ間の類似度を示す。
【０２２２】
まず、図１４と同じく、カテゴリ確信度リスト４４０で、カテゴリ「インストール」が確信度１位であるという結果を得たとする。
【０２２３】
第８の実施形態においては、検索結果１４０１から取得した文書のカテゴリと、カテゴリ確信度リスト４４０の中の確信度が１位のカテゴリの類似度を用いて再スコアリングを行う。
【０２２４】
例えば、カテゴリ「インストール」からの類似度は、「トラブル」の場合は「０．８」である。
【０２２５】
「エラー表示」に関しては、確信度１位のカテゴリとの間に直接のリンク（類似の関係）はないが「トラブル」を介して接続されている（類似の関係が特定されている）ため、その２つの接続の類似度を乗じる。よって、図１６の１６０１に示すように、「インストール」と「エラー表示」の類似度は、「０．８×０．９＝０．７２」となる。
【０２２６】
第８の実施形態においては、検索結果１４０１の中の「エラー表示」のカテゴリの文書のスコアにこれを乗じると、検索結果（カテゴリ重み付け後のスコア）１６０２のようになる。
【０２２７】
すなわち、テキスト文書のカテゴリに応じて、スコアが再調整される。
【０２２８】
なお、確信度が１位である「インストール」の文書には、類似度＝１００％（つまり「１」の値）を乗ずるものとする。以上で、図１６の説明を完了する。
【０２２９】
図１７を参照して、本発明の実施形態に係る類似カテゴリネットワークに基づいて、検索結果のテキスト文書のスコアを再計算する処理について説明する。つまり図１６で説明した内容の詳細を説明する。図１７のフローチャートの各ステップは、ステップＳ９０４の代わりに、情報処理装置１００上のＣＰＵ２０１で実行される。
【０２３０】
図１５で説明した第７の実施形態の処理との違いは、各テキスト文書のスコアを計算し直すのに使うのが、カテゴリ確信度そのものではなく、カテゴリ間の類似度である点である。
【０２３１】
図１５の処理と同一の処理については図１５と同一のステップ番号付与し、説明は省略する。以下、図１５と異なる処理について説明する。
【０２３２】
ステップＳ１７０４においては、情報処理装置１００のＣＰＵ２０１は、カテゴリ確信度リスト４４０から確信度が一番高いカテゴリを取得する。また、ステップＳ１５０４で取得した着目中のテキスト文書のカテゴリを取得し、図６の類似カテゴリネットワークにおける類似度を取得する。
【０２３３】
例えば、図１６の１６０２に示すように、着目した文書のカテゴリが「トラブル」である場合、「インストール」との類似度０．８（類似度＝８０％）の値を類似カテゴリネットワークのデータから取得する。着目した文書のカテゴリが「エラー表示」である場合、「インストール」との類似度０．７２（類似度＝７０％）を取得する。
【０２３４】
ステップＳ１７０５においては、Ｓ１７０４において前記類似カテゴリネットワークから取得した類似度と、Ｓ１５０４において取得した着目中のテキスト文書のスコアに基づき、着目中のテキスト文書のスコアを計算し直す。
【０２３５】
第８の実施形態においては、取得した文書のスコアに対して、ステップＳ１７０４で取得した、その文書が属するカテゴリと確信度１位のカテゴリとの類似度の値を乗じて、スコアを再計算する。
【０２３６】
Ｓ１５０６においては、Ｓ１７０５で計算したスコアを、着目中のテキスト文書のスコアとして再設定する。
【０２３７】
情報処理装置１００のＣＰＵ２０１は、全ての検索結果の文書に対して図１７のステップＳ１５０２〜Ｓ１５０６の処理を適用した後、当該処理を適用後の、再スコアリングがされた検索結果の文書一覧（例えば図１６の検索結果１６０２）を、検索結果の情報として確定し、ＲＡＭ２０２上に記憶・更新する。つまり、検索結果の出力処理を行う。以上で、図１７におけるワークフローの処理の説明を終了する。
【０２３８】
以上、本発明の第８の実施形態について説明した。本発明の第８の実施形態によれば、カテゴリの確信度とカテゴリ同士の関係を加味して、より的確な検索結果を特定することができる。
【０２３９】
以上説明したように、本発明によれば、検索結果から、検索結果の属するカテゴリの確信度を用いてより適切な検索結果を特定可能な仕組みを提供することができる。
【０２４０】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
【０２４１】
また、入力文字列受付部１０１は、当該コンピュータで動作する他のアプリケーションプログラムなどから受け付ける機能部であってもよい。
【０２４２】
また、入力文字列受付部１０１は、本発明における情報処理装置がネットワーク上におけるサーバである場合には、他の情報処理装置から当該ネットワークを介して通信情報を受け付ける機能部であってもよい。
【０２４３】
このテキスト文書の構成はあくまで一例である。なお、本発明で検索対象を絞り込む制約条件としている「カテゴリ」は、必ずしも前述のカテゴリという名称ではなくともよい。この名称はあくまでも例である。例えば「分類」という名称でもよい。
【０２４４】
実質的に、個々のテキスト文書の内容（ある一定基準での内容的な分類）を示しているものであれば何でもよい。
【０２４５】
また、検索対象をテキスト文書としているが、必ずしもテキスト文書でなくともよい。例えばＰＤＦ文書であってもよいし、テキストが記載された画像データを対象としてもよい。
【０２４６】
また、機械学習を用いたカテゴリ特定基準の生成方法はあくまで生成方法の一例である。例えば他に、人間が検索対象となる予めカテゴリを付与されたテキスト文書を精査し、その特徴を抽出することで各カテゴリの特徴となる単語を取り出すなど、人手によるプロファイルを作成するものであってもよい。また、機械学習以外の自然言語処理、統計解析などの手法を用いてカテゴリ特定基準の生成をしてもよいことは言うまでもない。
【０２４７】
以上、いくつかの実施形態について示したが、本発明は、例えば、システム、装置、方法、コンピュータプログラムもしくは記録媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０２４８】
例えば、入力文字列受付部１０１をクライアントＰＣが備え、カテゴリ特定部１０２、カテゴリ取得部１０３、文書検索部１０４がそれぞれ別々のサーバ装置で動作する情報処理システムを構築し、必要に応じて情報を各サーバ同士で送受信して各部による処理を実行し、その結果を各サーバと通信可能なクライアントＰＣ（クライアント装置）に送信して表示出力させるようにしてもよい。
【０２４９】
また例えば、図１０の処理を行うサーバが、ステップＳ９０３の処理が完了した情報を他機のサーバから受信した場合に図１０の処理を実行し、図１０の処理が完了した場合に、文書の検索機能（例えば図１５、図１７の処理を実行する機能）を備えるサーバ装置に対して、ネットワークを介して、図１０の処理で選択した制約カテゴリを制約条件として、入力文字列に基づく検索を行うよう指示する検索制御を行い、当該指示を受け付けたサーバ装置が文書検索を行うようにしてもよい。この場合、当該指示には、制約カテゴリリストと入力文字列が含まれているものとする。
【０２５０】
また、ステップＳ９０１〜Ｓ９０３の代わりに、例えばＷＡＮ等のネットワークを介して提供されている、入力文字列の属するカテゴリの特定及びスコアの提供サービスに対して、公開されているＡＰＩを用いて入力文字列を送信して、入力文字列の属する可能性のある複数のカテゴリの特定及びカテゴリごとのスコアを取得するようにしてもよい。つまり、ステップＳ９０１〜Ｓ９０３の処理と、ステップＳ９０４の処理を別々の装置でそれぞれ実行するようにしてもよい。
【０２５１】
また、本発明におけるコンピュータプログラムは、図９〜図１３、図１５、図１７、図１８に示すフローチャートの処理方法をコンピュータが実行可能なコンピュータプログラムであり、本発明の記憶媒体は図９〜図１３、図１５、図１７、図１８の処理方法をコンピュータが実行可能なコンピュータプログラムが記憶されている。
【０２５２】
なお、本発明におけるコンピュータプログラムは図９〜図１３、図１５、図１７、図１８の各装置の処理方法ごとのコンピュータプログラムであってもよい。
【０２５３】
以上のように、前述した実施形態の機能を実現するコンピュータプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたコンピュータプログラムを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【０２５４】
この場合、記録媒体から読み出されたコンピュータプログラム自体が本発明の新規な機能を実現することになり、そのコンピュータプログラムを記憶した記録媒体は本発明を構成することになる。
【０２５５】
コンピュータプログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＥＥＰＲＯＭ、シリコンディスク、ソリッドステートドライブ等を用いることができる。
【０２５６】
また、コンピュータが読み出したコンピュータプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのコンピュータプログラムの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０２５７】
さらに、記録媒体から読み出されたコンピュータプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのコンピュータプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０２５８】
また、本発明は、システムあるいは装置にコンピュータプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのコンピュータプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０２５９】
さらに、本発明を達成するためのコンピュータプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０２６０】
なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【０２６１】
１００  情報処理装置
１０１  入力文字列受付部
１０２  カテゴリ特定部
１０３  カテゴリ取得部
１０４  文書検索部
１２１  カテゴリ特定基準記憶部
１２２  制約カテゴリ選択基準記憶部
１２３  類似カテゴリ記憶部
１２４  テキスト文書記憶部
４４０  カテゴリ確信度リスト
７００  制約カテゴリ選択基準
７０２  カテゴリ選択条件
７０３  最低基準
７０４  追加のカテゴリ選択条件
【図１】
2018085020.tif 000003
【図２】
2018085020.tif 000004
【図３】
2018085020.tif 000005
【図４】
2018085020.tif 000006
【図５】
2018085020.tif 000007
【図６】
2018085020.tif 000008
【図７】
2018085020.tif 000009
【図８】
2018085020.tif 000010
【図９】
2018085020.tif 000011
【図１０】
2018085020.tif 000012
【図１１】
2018085020.tif 000013
【図１２】
2018085020.tif 000014
【図１３】
2018085020.tif 000015
【図１４】
2018085020.tif 000016
【図１５】
2018085020.tif 000017
【図１６】
2018085020.tif 000018
【図１７】
2018085020.tif 000019
【図１８】
2018085020.tif 000020