(57)【要約】【課題】文章データの検索に用いるトピックを効率的に生成する。【解決手段】文章データを格納するデータベースを管理する計算機を備える計算機システムであって、計算機は、検索キーとして用いられるトピック及びトピックに分類される単語の対応関係をドメイン毎に管理するトピック管理情報を管理し、ターゲットドメインへの新規トピックの登録契機を検出した場合、ターゲットドメイン以外のドメインの前記トピックの中から登録候補のトピックである仮登録トピックを選択し、トピック及び仮登録トピックを検索キーとして用いて関連文章データを検索するための検索処理を実行し、検索処理における仮登録トピックの使用実績に基づいて、ターゲットドメインのトピックとして登録する仮登録トピックを選択し、前記トピック管理情報に追加する。【選択図】図１
2019164504.tif 000002
【特許請求の範囲】
【請求項１】
文章データを格納するデータベース及び前記データベースを管理する計算機を備える計算機システムであって、
前記計算機は、演算装置、前記演算装置に接続される記憶装置、及び前記演算装置に接続されるインタフェースを有し、
前記記憶装置は、前記文章データを特徴づける単語であって、任意の文章データと関連する関連文章データを検索するための検索キーとして用いられるトピック及び前記トピックに分類される単語の対応関係を、前記文章データの管理単位であるドメイン毎に管理するトピック管理情報を格納し、
前記演算装置は、
ターゲットドメインへの新規トピックの登録契機を検出した場合、前記ターゲットドメイン以外のドメインの前記トピックの中から登録候補のトピックである仮登録トピックを選択し、
前記トピック及び前記仮登録トピックを前記検索キーとして用いて前記関連文章データを検索するための検索処理を実行し、
前記検索処理における前記仮登録トピックの使用実績に基づいて、前記ターゲットドメインのトピックとして登録する前記仮登録トピックを選択し、
前記仮登録トピックの情報を前記トピック管理情報に追加することを特徴とする計算機システム。
【請求項２】
請求項１に記載の計算機システムであって、
前記記憶装置は、前記ドメイン毎の前記仮登録トピックを管理するための仮登録トピック管理情報、及び前記ドメイン毎の辞書を格納し、
前記演算装置は、
前記トピック管理情報に基づいて、前記ターゲットドメイン、前記仮登録トピックとして選択されたトピック、及び当該トピックに分類される単語を対応づけたデータを前記仮登録トピック管理情報に格納し、
前記トピック管理情報に第１仮登録トピックを登録する場合、前記第１仮登録トピックに分類される単語であって、前記ターゲットドメインの辞書に登録されていない単語を特定し、
前記ターゲットドメインの辞書に前記特定された単語を追加することを特徴とする計算機システム。
【請求項３】
請求項２に記載の計算機システムであって、
前記演算装置は、前記ターゲットドメインの辞書及び前記ターゲットドメイン以外のドメインの辞書の比較結果、前記ターゲットドメインのトピックを構成する単語及び前記ターゲットドメイン以外のドメインのトピックを構成する単語の比較結果、並びに前記ターゲットドメイン以外のドメインのトピックの前記検索処理における使用実績の少なくともいずれかに基づいて、前記仮登録トピックを選択することを特徴とする計算機システム。
【請求項４】
請求項３に記載の計算機システムであって、
前記演算装置は、
前記ターゲットドメインの辞書及び前記ターゲットドメイン以外のドメインの辞書の比較結果、並びに前記ターゲットドメインのトピックを構成する単語及び前記ターゲットドメイン以外のドメインのトピックを構成する単語の比較結果に基づいて、前記ターゲットドメインに類似する類似ドメインを特定し、
前記類似ドメインのトピックの中から前記仮登録トピックを選択することを特徴とする計算機システム。
【請求項５】
請求項２に記載の計算機システムであって、
前記演算装置は、
前記関連文章データとして提示された文章データに対するユーザの評価を示す評価情報を前記記憶装置に格納し、
前記ターゲットドメインの辞書及び前記ターゲットドメイン以外のドメインの辞書の比較結果、前記ターゲットドメインのトピックを構成する単語及び前記ターゲットドメイン以外のドメインのトピックを構成する単語の比較結果、前記ターゲットドメイン以外のドメインのトピックの前記検索処理における使用実績、並びに前記評価情報の少なくともいずれかに基づいて、前記仮登録トピックを選択することを特徴とする計算機システム。
【請求項６】
文章データを格納するデータベースを管理する計算機が実行する文章データ管理方法であって、
前記計算機は、演算装置、前記演算装置に接続される記憶装置、及び前記演算装置に接続されるインタフェースを有し、
前記記憶装置は、前記文章データを特徴づける単語であって、任意の文章データと関連する関連文章データを検索するための検索キーとして用いられるトピック及び前記トピックに分類される単語の対応関係を、前記文章データの管理単位であるドメイン毎に管理するトピック管理情報を格納し、
前記文章データ管理方法は、
前記演算装置が、ターゲットドメインへの新規トピックの登録契機を検出した場合、前記ターゲットドメイン以外のドメインの前記トピックの中から登録候補のトピックである仮登録トピックを選択する第１のステップと、
前記演算装置が、前記トピック及び前記仮登録トピックを前記検索キーとして用いて前記関連文章データを検索するための検索処理を実行する第２のステップと、
前記演算装置が、前記検索処理における前記仮登録トピックの使用実績に基づいて、前記ターゲットドメインのトピックとして登録する前記仮登録トピックを選択し、前記仮登録トピックの情報を前記トピック管理情報に追加する第３のステップと、を含むことを特徴とする文章データ管理方法。
【請求項７】
請求項６に記載の文章データ管理方法であって、
前記記憶装置は、前記ドメイン毎の前記仮登録トピックを管理するための仮登録トピック管理情報、及び前記ドメイン毎の辞書を格納し、
前記第１のステップは、前記演算装置が、前記トピック管理情報に基づいて、前記ターゲットドメイン、前記仮登録トピックとして選択されたトピック、及び当該トピックに分類される単語を対応づけたデータを前記仮登録トピック管理情報に格納するステップを含み、
前記第３のステップは、
前記演算装置が、前記トピック管理情報に第１仮登録トピックを登録する場合、前記第１仮登録トピックに分類される単語であって、前記ターゲットドメインの辞書に登録されていない単語を特定するステップと、
前記演算装置が、前記ターゲットドメインの辞書に前記特定された単語を追加するステップと、を含むことを特徴とする文章データ管理方法。
【請求項８】
請求項７に記載の文章データ管理方法であって、
前記第１のステップでは、前記演算装置が、前記ターゲットドメインの辞書及び前記ターゲットドメイン以外のドメインの辞書の比較結果、前記ターゲットドメインのトピックを構成する単語及び前記ターゲットドメイン以外のドメインのトピックを構成する単語の比較結果、並びに前記ターゲットドメイン以外のドメインのトピックの前記検索処理における使用実績の少なくともいずれかに基づいて、前記仮登録トピックを選択することを特徴とする文章データ管理方法。
【請求項９】
請求項８に記載の文章データ管理方法であって、
前記第１のステップは、
前記演算装置が、前記ターゲットドメインの辞書及び前記ターゲットドメイン以外のドメインの辞書の比較結果、並びに前記ターゲットドメインのトピックを構成する単語及び前記ターゲットドメイン以外のドメインのトピックを構成する単語の比較結果に基づいて、前記ターゲットドメインに類似する類似ドメインを特定するステップと、
前記演算装置が、前記類似ドメインのトピックの中から前記仮登録トピックを選択するステップと、を含むことを特徴とする文章データ管理方法。
【請求項１０】
請求項７に記載の文章データ管理方法であって、
前記演算装置が、前記関連文章データとして提示された文章データに対するユーザの評価を示す評価情報を前記記憶装置に格納するステップを含み、
前記第１のステップでは、前記演算装置が、前記ターゲットドメインの辞書及び前記ターゲットドメイン以外のドメインの辞書の比較結果、前記ターゲットドメインのトピックを構成する単語及び前記ターゲットドメイン以外のドメインのトピックを構成する単語の比較結果、前記ターゲットドメイン以外のドメインのトピックの前記検索処理における使用実績、並びに前記評価情報の少なくともいずれかに基づいて、前記仮登録トピックを選択することを特徴とする文章データ管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文章データを管理し、任意の文章データに関連する文章データを検索するサービスを提供する計算機システムに関する。
【背景技術】
【０００２】
業務システムでは、様々な文章が文章データとしてデータベースに格納されている。業務内容又は保存する文章によっては、ユーザは、データベースに文章データを格納する時に関連する文章データを確認する必要がある。したがって、ユーザの目的等に沿って、必要な文章データを提示する技術が求められている。
【０００３】
従来技術として特許文献１に記載の技術が知られている。特許文献１には「システムの開発に必要な設計項目を抽出するためのガイド用語抽出装置であって、システムの開発に関連する検索語が入力されると、予め記憶された検索語と、前記システムに関連する複数のガイドラインのガイド用語とを意味の観点から分類する予め記憶された索引の情報に基づいて、前記ガイド用語を抽出するガイド用語抽出部を備えた」ことが記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−１１８６７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に記載されているように、文章データを扱うシステムでは、単語のグループであるトピックを検索キーとして用いてユーザに提示する文章データを検索する方法が知られている。
【０００６】
トピックはコーパスに基づいて生成される。データベースに格納される文章データ及びシステムの状態は時々刻々と変化する。そのため、コーパスに基づいて生成されたトピックをそのまま用いても適切な文章データを検索できない。したがって、システムの状態等を反映した学習処理によって自動的にトピックが更新され、又は手動でトピックが更新される。
【０００７】
一方、データベースに格納される文章データに基づいて生成されるトピックは、データベースに格納される文章データの内容に応じて異なる。特定の業種及び分野等に特化した文章データを格納するデータベースの場合、データベースに格納される文章データの内容、例えば、専門用語及び特徴的な用語を反映したトピックが生成される。したがって、当該トピックを用いることによって、前述したデータベースに対する特定の内容を含む文章データの検索精度が向上する。
【０００８】
本明細書では、文章データの管理単位となるグループをドメインと定義する。例えば、技術分野、部署、会社、及び国がドメインに対応する。
【０００９】
ドメイン単位で文章データ（データベース）が管理されていないシステムでは、複数のドメインで共通する用語及び一般的な用語がトピックとして生成され、特定のドメインを特徴づけるトピックはあまり生成されない。そのため、特定のドメインに属する文章データの検索精度が低い。
【００１０】
特定のドメインに属する文章データの検索精度を向上させるための検索システムでは、ドメイン単位で文章データが管理され、また、ドメイン毎に専門用語の辞書が管理される。当該検索システムでは、特定のドメインに関連するコーパスから生成されたトピックを用いた文章データの検索が行われる。
【００１１】
ドメインのトピックを生成する場合、ドメインの専門用語の辞書及びドメインに属する文章データ等のトピックを生成するためのデータ（コーパス）が必要となる。当該データの質及び数が十分でない場合、ドメインを特徴づける専門用語以外の用語から構成されるトピックが生成される。そのため、ドメインに属する文章データを検索するための検索キーとして当該トピックを用いても検索精度は向上しない。
【００１２】
また、ユーザが検索精度の向上させるためにトピックを手動で設定又は更新する場合、ユーザの負担が大きく、また、作業時間がかかる。
【００１３】
本発明は、ドメイン単位で文章データを管理するシステムにおいて、ドメインに属する文章データを高い精度で検索するためのトピックを登録するシステム及び方法を提供する。
【課題を解決するための手段】
【００１４】
本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、文章データを格納するデータベース及び前記データベースを管理する計算機を備える計算機システムであって、前記計算機は、演算装置、前記演算装置に接続される記憶装置、及び前記演算装置に接続されるインタフェースを有し、前記記憶装置は、前記文章データを特徴づける単語であって、任意の文章データと関連する関連文章データを検索するための検索キーとして用いられるトピック及び前記トピックに分類される単語の対応関係を、前記文章データの管理単位であるドメイン毎に管理するトピック管理情報を格納し、前記演算装置は、ターゲットドメインへの新規トピックの登録契機を検出した場合、前記ターゲットドメイン以外のドメインの前記トピックの中から登録候補のトピックである仮登録トピックを選択し、前記トピック及び前記仮登録トピックを前記検索キーとして用いて前記関連文章データを検索するための検索処理を実行し、前記検索処理における前記仮登録トピックの使用実績に基づいて、前記ターゲットドメインのトピックとして登録する前記仮登録トピックを選択し、前記仮登録トピックの情報を前記トピック管理情報に追加する。
【発明の効果】
【００１５】
本発明の一形態によれば、自動的かつ効率的に、関連文章データの検索精度を向上させるためのトピックを登録できる。上記した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
【図面の簡単な説明】
【００１６】
【図１】実施例１の計算機システムの構成の一例を示す図である。
【図２】実施例１のドメイン管理情報のデータ構造の一例を示す図である。
【図３】実施例１の文章データ管理情報のデータ構造の一例を示す図である。
【図４】実施例１の辞書管理情報のデータ構造の一例を示す図である。
【図５】実施例１のトピック管理情報のデータ構造の一例を示す図である。
【図６】実施例１の仮登録トピック管理情報のデータ構造の一例を示す図である。
【図７】実施例１の計算機が実行する仮登録トピック登録処理の一例を説明するフローチャートである。
【図８】実施例１の計算機が実行する運用処理の一例を説明するフローチャートである。
【図９】実施例１のユーザ端末に表示されるユーザ入力画面の一例を示す図である。
【図１０】実施例１のユーザ端末に表示されるトピック操作画面の一例を示す図である。
【図１１】実施例１の計算機によって表示される検索結果表示画面の一例を示す図である。
【図１２】実施例１の計算機が実行する解析処理の一例を説明するフローチャートである。
【図１３】実施例１の文章データ管理モジュールが実行する文章データ検索処理の一例を説明するフローチャートである。
【図１４】実施例１の計算機が実行する登録トピック決定処理の一例を説明するフローチャートである。
【図１５】実施例２の計算機が実行する仮登録トピック登録処理の一例を説明するフローチャートである。
【図１６】実施例３の文章データ管理情報のデータ構造の一例を示す図である。
【図１７】実施例３の計算機によって表示される検索結果表示画面の一例を示す図である。
【発明を実施するための形態】
【００１７】
以下、本発明に係る実施例を添付図面を用いて説明する。各図において共通の構成については同一の参照符号が付されている。
【実施例１】
【００１８】
図１は、実施例１の計算機システムの構成の一例を示す図である。
【００１９】
計算機システムは、計算機１００、複数のデータベース１０１、及びユーザ端末１０２から構成される。
【００２０】
計算機１００は、一つ以上の文章データ１０５が格納されるデータベース１０１を管理する。また、計算機１００は、ユーザから文章データ又は単語が入力された場合、文章データ又は単語に関連する文章データ１０５を提示する。
【００２１】
以下の説明では、ユーザが入力した文章データ又は単語を入力情報と記載し、また、ユーザが入力した文章データ又は単語に関連する文章データを関連文章データと記載する。
【００２２】
ここで本明細書の用語の扱いについて説明する。「文章」は、一つ以上の単語から構成される文がまとまったものを表す。「文章データ」は、データ化された文章を表す。「トピック」は、性質が共通する単語、又は、意味若しくは観点が類似する単語の集合であって、文章データの内容等を示す一種の単語として扱われる。関連文章データを検索するための検索キーとしてトピックが用いられる。「ドメイン」は、文章データ１０５の管理単位となるグループを表す。組織、管理目的、使用目的、並びに文章データの内容及び属性等に応じて様々なドメインを設定できる。例えば、国、会社、及び部署をドメインとして設定してもよいし、また、技術分野及び業種をドメインとして設定してもよい。なお、文章データは複数のドメインに属してもよい。
【００２３】
データベース１０１は、文章データ１０５を格納する。データベース１０１は、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）及びＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等のストレージ装置を用いて実現してもよいし、複数のストレージ装置を有するストレージシステムを用いて実現してもよい。
【００２４】
実施例１では、実施例１のデータベース１０１はドメイン毎に分けて管理される。すなわち、データベース１０１に格納された文章データ１０５は同一のドメインに属する。
【００２５】
なお、ドメインの区分はデータベースの区分と一致する必要はない。例えば、一つのデータベース１０１に異なるドメインに属する文章データ１０５が格納された管理方式でもよい。
【００２６】
計算機１００は、プロセッサ１１１、メモリ１１２、及びネットワークインタフェース１１３を有する。
【００２７】
プロセッサ１１１は、メモリ１１２に格納されるプログラムを実行する。プロセッサ１１１がプログラムにしたがって処理を実行することによって、特定の機能を実現するモジュールとして動作する。以下の説明では、モジュールを主語に処理を説明する場合、プロセッサ１１１が当該モジュールを実現するプログラムを実行していることを示す。
【００２８】
メモリ１１２は、プロセッサ１１１が実行するプログラム及び各種情報を格納する。また、メモリ１１２は、プログラムが一時的に使用するワークエリアを含む。
【００２９】
ネットワークインタフェース１１３は、ネットワークを介して外部装置と接続するインタフェースである。実施例１では、計算機１００は、ネットワークインタフェース１１３を用いてデータベース１０１及びユーザ端末１０２と接続する。なお、計算機１００は、ＨＢＡ（Ｈｏｓｔ  Ｂｕｓ  Ａｄａｐｔｅｒ）を有してもよい。また、計算機１００は、キーボード及びマウス等の入力装置、並びに、ディスプレイ等の出力装置と接続するＩ／Ｏインタフェースを有してもよい。
【００３０】
実施例１のメモリ１１２は、文章データ管理モジュール１２１を実現するプログラムを格納する。また、メモリ１１２は、ドメイン管理情報１２２、文章データ管理情報１２３、辞書管理情報１２４、トピック管理情報１２５、及び仮登録トピック管理情報１２６を格納する。
【００３１】
文章データ管理モジュール１２１は、データベース１０１に格納された文章データ１０５を管理し、また、データベース１０１に対する文章データ１０５の登録、読み出し、及び削除等の操作を制御する。また、文章データ管理モジュール１２１は、ユーザから入力情報を受け付けた場合、入力情報の解析結果及びユーザ操作に基づいて、関連文章データ１０５を提示する。このとき、文章データ管理モジュール１２１は、入力情報の解析結果に基づいて検索キーとなるトピックを選択し、ユーザにトピックを提示する。新規文章データ１０５の登録に伴って、新規文章データが入力情報として入力された場合、文章データ管理モジュール１２１は、データベース１０１に新規文章データを格納する。
【００３２】
実施例１では、ドメイン及びデータベース１０１が一対一に対応づけられているため、文章データ管理モジュール１２１は、ドメインを特定するための情報に基づいて処理するデータベース１０１（ドメイン）を選択できる。例えば、ユーザが対象のデータベース１０１を選択してもよいし、ユーザのアカウント情報等に基づいて自動的にデータベース１０１が選択されてもよい。このとき、複数のドメインが対象のドメインとして選択されてもよい。なお、前述した方法は一例であってこれに限定されない。
【００３３】
以下の説明では、ユーザから入力情報を受け付け、関連文章データを提示する一連の処理を関連文章検索サービスと記載する。
【００３４】
文章データ管理モジュール１２１は、入出力モジュール１３１、トピック管理モジュール１３２、ドメイン管理モジュール１３３、及び検索エンジン１３４を含む。
【００３５】
入出力モジュール１３１は、データの入出力を制御する。実施例１では、入出力モジュール１３１は、新規文章データの登録要求等を含む各種要求を受け付け、また、関連文章データ１０５等を表示するための表示データを出力する。
【００３６】
トピック管理モジュール１３２は、入力情報の解析結果に基づいて関連文章データ１０５の検索に用いるトピックを選択し、入出力モジュール１３１を介して選択されたトピックをユーザに提示する。ユーザは、入出力モジュール１３１を介して提示されたトピックを評価し、また、トピックの生成、変更、及び削除等の操作を行う。トピック管理モジュール１３２は、ユーザの操作に基づいてトピック管理情報１２５を更新する。また、トピック管理モジュール１３２は、ユーザの操作を反映したトピックを検索エンジン１３４に出力する。
【００３７】
ドメイン管理モジュール１３３は、ドメイン及びデータベース１０１の対応関係等を管理する。また、ドメイン管理モジュール１３３は、後述するドメインの専門用語辞書を管理する。ドメイン管理モジュール１３３は、任意のドメインのトピックを設定する場合、他のドメインのトピックから流用するトピックを選択する。
【００３８】
検索エンジン１３４は、トピック管理モジュール１３２から入力されたトピックを用いて関連文章データ１０５を検索する。検索エンジン１３４は、関連文章データ１０５の検索結果等を表示するための表示データを入出力モジュール１３１に出力する。
【００３９】
ドメイン管理情報１２２は、ドメイン及び当該ドメインに属する文章データ１０５を格納するデータベース１０１の対応関係を管理するための情報である。すなわち、ドメイン管理情報１２２は、ドメイン及び当該ドメインに属する文章データ１０５の対応関係を管理するための情報である。なお、ドメイン管理情報１２２及び文章データ管理情報１２３を一つの情報として管理してもよい。ドメイン管理情報１２２の詳細は図２を用いて説明する。
【００４０】
文章データ管理情報１２３は、文章データ１０５及びトピックの対応関係を管理するための情報である。文章データ管理情報１２３の詳細は図３を用いて説明する。
【００４１】
辞書管理情報１２４は、ドメインの専門用語辞書を管理するための情報である。専門用語辞書は、ドメインで利用される専門用語を登録した辞書である。なお、図示していないが複数のドメインで共通して利用される一般用語を登録した辞書は、一般用語辞書として管理される。辞書管理情報１２４の詳細は図４を用いて説明する。
【００４２】
トピック管理情報１２５は、トピックを管理するための情報である。トピック管理情報１２５の詳細は図５を用いて説明する。
【００４３】
仮登録トピック管理情報１２６は、ドメイン管理モジュール１３３によって選択されたトピックを一時的に格納するための情報である。他のドメインのトピックから選択されたトピックは、ターゲットドメインで有用なトピックとは限らない。そのため、文章データ管理モジュール１２１は、選択されたトピックを登録候補のトピックとして一時的に仮登録トピック管理情報１２６に登録し、使用実績等に基づいて追加先のドメインで有用なトピックであるか否かを判定する。仮登録トピック管理情報１２６の詳細は図６を用いて説明する。
【００４４】
ユーザ端末１０２は、ユーザが操作する端末である。ユーザ端末１０２は、計算機１００と同様にプロセッサ、メモリ、及びネットワークインタフェースを有する。ユーザ端末１０２は、計算機１００が出力した表示データに基づいて画面を表示する。また、ユーザ端末１０２は、画面を介して計算機１００にデータを入力し、また、ユーザに処理結果等を提示する。実施例１では、ユーザ入力画面９００（図９参照）、トピック操作画面１０００（図１０参照）、及び検索結果表示画面１１００（図１１参照）がユーザ端末１０２に表示される。
【００４５】
ユーザ入力画面９００は、データベース１０１に格納する文章データ１０５を指定するための画面である。ユーザ入力画面９００の詳細は図９を用いて説明する。トピック操作画面１０００は、検索用トピックの選択及びトピックの更新等に使用する画面である。トピック操作画面１０００の詳細は図１０を用いて説明する。検索結果表示画面１１００は、関連文章データ１０５を表示する画面である。検索結果表示画面１１００の詳細は図１１を用いて説明する。
【００４６】
図２は、実施例１のドメイン管理情報１２２のデータ構造の一例を示す図である。
【００４７】
ドメイン管理情報１２２は、ドメインＩＤ２０１、データベースＩＤ２０２、ユーザ数２０３、トピック数２０４、及び単語数２０５から構成されるエントリを含む。一つのエントリは一つのドメインを表す。なお、エントリの構造は一例であってこれに限定されない。前述したフィールドの一部のフィールドを含まなくてもよいし、また、他のフィールドを含んでもよい。
【００４８】
ドメインＩＤ２０１は、ドメイン管理情報１２２のエントリを一意に識別するための識別情報を格納するフィールドである。
【００４９】
データベースＩＤ２０２は、データベース１０１を一意に識別するための識別情報を格納するフィールドである。
【００５０】
ユーザ数２０３は、ドメインのユーザとして登録されているユーザの数を格納するフィールドである。
【００５１】
トピック数２０４は、ドメインのトピックの数を格納するフィールドである。単語数２０５は、ドメインの専門用語辞書に登録される単語の数を格納するフィールドである。
【００５２】
新規ドメインの登録時にドメイン管理情報１２２にエントリが登録される。また、ユーザ数２０３、トピック数２０４、及び単語数２０５は、システムの運用状態に合わせて更新される。
【００５３】
図３は、実施例１の文章データ管理情報１２３のデータ構造の一例を示す図である。
【００５４】
文章データ管理情報１２３は、データベースＩＤ３０１、文章データＩＤ３０２、及びトピックＩＤ３０３から構成されるエントリを含む。一つのエントリは、一つのデータベース１０１を表す。なお、エントリの構造は一例であってこれに限定されない。前述したフィールドの一部のフィールドを含まなくてもよいし、また、他のフィールドを含んでもよい。例えば、文章データ１０５の名称及びサイズ等の情報を格納するフィールドを含んでもよい。
【００５５】
データベースＩＤ３０１は、データベース１０１を一意に識別するための識別情報を格納するフィールドである。実施例１では、文章データ１０５及びトピックの対応関係はデータベース１０１単位で管理される。
【００５６】
文章データＩＤ３０２は、文章データ１０５を一意に識別するための識別情報を格納するフィールドである。
【００５７】
トピックＩＤ３０３は、文章データ１０５に含まれる単語等から生成されたトピックを格納するフィールドである。トピックＩＤ３０３には、トピックの識別情報が格納される。
【００５８】
実施例１では、文章データ１０５及びトピックには、システム全体で重複しないように識別情報が設定されるものとする。なお、異なるデータベース１０１に格納される文章データ１０５及びデータベース１０１のトピックの識別情報は重複してもよい。
【００５９】
文章データ管理情報１２３は、データベース１０１の構築時に設定されるものとする。なお、データベースの追加処理、データベースの更新処理、及びデータベースの削除処理に基づいて文章データ管理情報１２３は更新される。
【００６０】
なお、異なるドメインに属する文章データ１０５が同一のデータベース１０１に格納される場合、計算機１００は、文章データ管理情報１２３とは別に、文章データ１０５が属するドメインを管理するための情報を保持すればよい。例えば、ドメインの識別情報を格納するフィールド及び文章データ１０５の識別情報を格納するフィールドから構成されるエントリを含む情報が考えられる。
【００６１】
図４は、実施例１の辞書管理情報１２４のデータ構造の一例を示す図である。
【００６２】
辞書管理情報１２４は、ドメインＩＤ４０１、単語ＩＤ４０２、単語４０３、提供元４０４から構成されるエントリを含む。一つのエントリが一つのドメインの専門用語辞書を表す。なお、エントリの構造は一例であってこれに限定されない。前述したフィールドの一部のフィールドを含まなくてもよいし、また、他のフィールドを含んでもよい。例えば、単語の説明及び単語の品詞等を格納するフィールドを含んでもよい。
【００６３】
ドメインＩＤ４０１は、ドメインＩＤ２０１と同一のフィールドである。
【００６４】
単語ＩＤ４０２は、ドメインに属する文章データ１０５に含まれる単語であって、専門用語等、ドメインを特徴づける単語の識別情報を格納するフィールドである。
【００６５】
単語４０３は、単語を格納するフィールドである。
【００６６】
提供元４０４は、単語の提供元を示す情報を格納するフィールドである。予め入力された単語集に含まれる単語の場合、提供元４０４は空欄となる。他のドメインから流用した単語である場合、提供元４０４には他のドメインの識別情報及び単語の識別情報の組が格納され、ユーザによって設定された単語である場合、提供元４０４にはユーザの識別情報が格納される。
【００６７】
辞書管理情報１２４は、新規ドメインの登録時に設定されるものとする。なお、ドメインに属する文章データ１０５の追加処理、更新処理、及び削除処理に基づいて辞書管理情報１２４は更新される。また後述する仮登録トピック登録処理に基づいて辞書管理情報１２４が更新される。
【００６８】
図５は、実施例１のトピック管理情報１２５のデータ構造の一例を示す図である。
【００６９】
トピック管理情報１２５は、ドメインＩＤ５０１、トピックＩＤ５０２、単語５０３、評価値５０４、検索回数５０５、利用履歴５０６、及び生成元５０７から構成されるエントリを含む。一つのエントリが一つのドメインを表す。なお、エントリの構造は一例であってこれに限定されない。前述したフィールドの一部のフィールドを含まなくてもよいし、また、他のフィールドを含んでもよい。例えば、語の説明及び語の品詞等を格納するフィールドを含んでもよい。
【００７０】
ドメインＩＤ５０１は、ドメインＩＤ２０１と同一のフィールドである。
【００７１】
トピックＩＤ５０２は、ドメインのトピックを一意に識別するための識別情報を格納するフィールドである。
【００７２】
単語５０３は、トピックを構成する単語を格納するフィールドである。トピックは一つ以上の単語から構成される。
【００７３】
評価値５０４は、トピックに対するユーザの評価を示す値を格納するフィールドである。
【００７４】
検索回数５０５は、検索キーとしてトピックが利用された回数を格納するフィールドである。
【００７５】
利用履歴５０６は、トピックが他のドメインによって流用されたか否かを示す情報を格納するフィールドである。トピックが他のドメインによって流用されていない場合、利用履歴５０６は空欄となり、トピックが他のドメインによって流用された場合、利用履歴５０６には、他のドメインの識別情報及び流用された回数の組が格納される。生成元５０７は、他のドメインから流用したトピックであるか否かを示す情報を格納するフィールドである。他のドメインから流用したトピックでない場合、生成元５０７は空欄となり、他のドメインから流用したトピックである場合、生成元５０７には、他のドメインの識別情報及びトピックの識別情報の組が格納される。
【００７６】
文章データ管理モジュール１２１は、予め、各ドメインのコーパスに基づいてトピックを生成する。例えば、文章データ１０５そのものがコーパスとして用いられる。
【００７７】
なお、文章データ管理モジュール１２１は、トピックを生成する場合、辞書管理情報１２４に格納されるドメインの専門用語辞書を用いてもよい。また、文章データ管理モジュール１２１は、トピックを生成する場合、特定のドメインに属するデータベース１０１に格納される文章データ１０５のモデルを用いてもよい。
【００７８】
なお、コーパス等に基づいてトピックを生成及び更新する方法は公知の技術であるため、詳細な説明は省略する。コーパス等に基づいてトピックを生成及び更新するタイミングとしては、ドメインに関する構成が変化するタイミングが考えられる。例えば、ドメインを追加する場合、一定数の文章データ１０５が変更された場合、文章データの追加数及び削除数の少なくともいずれかが閾値より大きい場合、ドメインの専門用語辞書に対する語が一定数変更された場合、ドメインの専門用語辞書に対する単語の追加数及び削除数が閾値より大きい場合等が考えられる。また、周期的に実行されてもよい。
【００７９】
図６は、実施例１の仮登録トピック管理情報１２６のデータ構造の一例を示す図である。
【００８０】
仮登録トピック管理情報１２６は、ドメインＩＤ６０１、仮登録トピックＩＤ６０２、単語６０３、評価値６０４、検索回数６０５、生成元６０６、及び期間６０７から構成されるエントリを含む。一つのエントリが一つのドメインを表す。
【００８１】
ドメインＩＤ６０１は、ドメインＩＤ２０１と同一のフィールドである。
【００８２】
仮登録トピックＩＤ６０２は、後述する仮登録トピック登録処理に基づいて選択されたトピックを一意に識別するための識別情報を格納するフィールドである。仮登録トピックＩＤ６０２には、ドメインＩＤ６０１に対応するドメインにおいて一意な識別情報が格納される。以下の説明では、仮登録トピック登録処理に基づいて選択されたトピック、すなわち、登録候補となるトピックを仮登録トピックと記載する。
【００８３】
単語６０３は、仮登録トピックを構成する単語を格納するフィールドである。
【００８４】
評価値６０４は、仮登録トピックに対するユーザの評価を示す値を格納するフィールドである。評価値６０４には、評価値５０４と同一の値が設定される。
【００８５】
検索回数６０５は、検索キーとして仮登録トピックが利用された回数を格納するフィールドである。
【００８６】
生成元６０６は、仮登録トピックの生成元の情報を格納するフィールドである。生成元６０６には、仮登録トピックを選択した他のドメインの識別情報及びトピックの識別情報の組が格納される。
【００８７】
期間６０７は、仮登録トピック管理情報１２６に仮登録トピックが登録されてからの経過時間を格納するフィールドである。期間６０７の値は任意のタイミングで更新される。なお、期間６０７には、仮登録トピック管理情報１２６から仮登録トピックを削除するタイミングを制御できる情報が格納されればよい。したがって、経過時間の代わりに検索回数及び利用したユーザ数の最大値を設定してもよい。
【００８８】
図７は、実施例１の計算機１００が実行する仮登録トピック登録処理の一例を説明するフローチャートである。
【００８９】
計算機１００は、ユーザ端末１０２から新規ドメインの登録要求を受信した場合、仮登録トピック登録処理を開始する。
【００９０】
新規ドメインの登録要求には、新規ドメインに属する文章データ１０５を管理するデータベース１０１の識別情報及び新規ドメインの単語集が含まれる。なお、ユーザは新規ドメインの登録に伴って新たなデータベース１０１を追加する場合、新規ドメインの登録要求にデータベース１０１の設定情報を含めてもよい。例えば、データベース１０１の名称及びアクセスパス等がデータベース１０１の設定情報として含められる。
【００９１】
なお、新規ドメインの登録要求は、特定のユーザのみが行えるように設定してもよい。この場合、ログイン処理等を行って、操作権限を判別する方法が考えられる。
【００９２】
文章データ管理モジュール１２１のドメイン管理モジュール１３３は、新規ドメインに関する情報をドメイン管理情報１２２、文章データ管理情報１２３、及び辞書管理情報１２４に登録する（ステップＳ１０１）。具体的には、文章データ管理モジュール１２１は、以下のような処理を実行する。
【００９３】
新規ドメインの登録に合わせてデータベース１０１も追加される場合、ドメイン管理モジュール１３３は、文章データ管理情報１２３にエントリを追加する。ドメイン管理モジュール１３３は、追加されたエントリのデータベースＩＤ３０１に、新規ドメインの登録要求に含まれるデータベース１０１の識別情報を設定する。また、ドメイン管理モジュール１３３は、追加されたエントリに、データベース１０１に含まれる文章データ１０５の数だけ行を追加し、追加された行の文章データＩＤ３０２に文章データ１０５の識別情報を設定する。文章データ１０５の識別情報は、文章データ１０５のメタ情報等から取得することができる。
【００９４】
ドメイン管理モジュール１３３は、ドメイン管理情報１２２に新規ドメインのエントリを追加し、追加されたエントリのドメインＩＤ２０１に、新規ドメインの登録要求に含まれるドメインの識別情報を設定する。ドメイン管理モジュール１３３は、追加されたエントリのデータベースＩＤ２０２に、新規ドメインの登録要求に含まれるデータベース１０１の識別情報を設定する。
【００９５】
ドメイン管理モジュール１３３は、辞書管理情報１２４にエントリを追加し、追加されたエントリのドメインＩＤ４０１に、ドメインＩＤ２０１に設定された識別情報を設定する。ドメイン管理モジュール１３３は、ドメインの登録要求に含まれる単語集に含まれる単語の中から専門用語を抽出する。例えば、ドメイン管理モジュール１３３は、予め一般用語辞書を保持し、当該辞書に登録されていない単語を専門用語として抽出する。前述した以外の方法で専門用語が抽出されてもよい。ドメイン管理モジュール１３３は、追加されたエントリに抽出された単語の数だけ行を生成する。ドメイン管理モジュール１３３は、生成された各行の単語ＩＤ４０２に識別情報を設定し、単語４０３に抽出された単語を設定する。
【００９６】
ドメイン管理モジュール１３３は、追加されたエントリの単語数２０５に、辞書管理情報１２４に登録した単語の数を設定する。追加されたエントリのユーザ数２０３に設定する値は、ドメインの登録要求に含まれてもよいし、図示していないユーザアカウント管理情報に含めてもよい。例えば、ユーザアカウント管理情報にドメインのアクセス権を示す情報が含まれる場合、ドメイン管理モジュール１３３は、当該情報に基づいて、新規ドメインにアクセス可能なユーザの数をカウントできる。
【００９７】
以上がステップＳ１０１の処理の説明である。
【００９８】
次に、文章データ管理モジュール１２１のトピック管理モジュール１３２は、コーパス及び専門用語辞書に基づいてトピックを生成する（ステップＳ１０２）。コーパス及び専門用語辞書に基づくトピックの生成方法は公知の技術であるため詳細な説明は省略する。このとき、トピック管理モジュール１３２は、トピックの生成結果に基づいてトピック管理情報１２５、ドメイン管理情報１２２、及び文章データ管理情報１２３を更新する。具体的には、以下のような更新処理が実行される。
【００９９】
トピック管理モジュール１３２は、トピック管理情報１２５にエントリを追加し、追加されたエントリのドメインＩＤ５０１に新規ドメインの識別情報を設定する。トピック管理モジュール１３２は、追加されたエントリに、生成されたトピックの数だけ行を生成し、生成された各行のトピックＩＤ５０２に識別情報を設定する。また、トピック管理モジュール１３２は、各行の単語５０３にトピックに分類された単語の識別情報を設定する。
【０１００】
トピック管理モジュール１３２は、ドメイン管理情報１２２を参照して新規ドメインに対応するエントリを検索し、検索されたエントリのトピック数２０４に生成されたトピックの数を設定する。
【０１０１】
トピック管理モジュール１３２は、トピックの生成結果に基づいて、文章データ管理情報１２３のトピックＩＤ３０３にトピックの識別情報を設定する。
【０１０２】
以上がステップＳ１０２の処理の説明である。
【０１０３】
次に、文章データ管理モジュール１２１のドメイン管理モジュール１３３は、仮登録トピック選択処理を実行する（ステップＳ１０３）。具体的には、以下のような処理が実行される。
【０１０４】
ドメイン管理モジュール１３３は、仮登録トピックのリストを初期化する。ドメイン管理モジュール１３３は、新規ドメインと比較するドメインを選択する。以下の説明では、新規ドメインと比較するドメインを比較ドメインと記載する。ドメイン管理モジュール１３３は、比較ドメインのトピックの中から選択条件に合致するトピックを検索する。
【０１０５】
選択条件に合致するトピックが検索された場合、ドメイン管理モジュール１３３は、検索されたトピックを仮登録トピックとして選択し、仮登録トピックのリストに検索されたトピックの情報を登録する。当該リストには検索されたトピックが対応づけられるドメインの識別情報及び当該トピックの識別情報から構成されるエントリが登録される。ドメイン管理モジュール１３３は、全ての比較ドメインに対して同様の処理を実行する。
【０１０６】
実施例１では以下のような条件に基づいてトピックが検索される。
（条件１）新規ドメインの専門用語辞書に登録される単語を閾値より多く含む。
（条件２）新規ドメインのトピックに類似する。
（条件３）評価値５０４の値が閾値より大きい。
（条件４）検索回数５０５の値が閾値より大きい。
【０１０７】
（条件１）から（条件４）のいずれか一つの条件を選択条件として設定してもよいし、任意の条件の組合せを選択条件として設定してもよい。
【０１０８】
（条件１）は新規ドメイン及び比較ドメインの関連性に基づいて仮登録トピックを検索するための条件である。（条件２）は新規ドメインのトピック及び比較ドメインのトピックの関連性に基づいて仮登録トピックを検索するための条件である。（条件３）及び（条件４）は比較ドメインにおけるトピックの使用実績に基づいて仮登録トピックを検索するための条件である。任意のドメインにおいて頻繁に使用されるトピックは他のドメインでも有用なトピックである可能性が高いため、（条件３）及び（条件４）を条件として設定している。
【０１０９】
なお、上記の条件は一例であってこれに限定されない。例えば、新規ドメインのトピックに類似しないことを条件として設定してもよい。
【０１１０】
（条件１）を満たすトピックを検索する方法としては以下の通りである。ドメイン管理モジュール１３３は、トピック管理情報１２５の比較ドメインに対応するエントリを検索する。ドメイン管理モジュール１３３は、検索されたエントリの各行の単語５０３及び新規ドメインの専門用語辞書を比較し、当該専門用語辞書に登録された単語の数を計測する。ドメイン管理モジュール１３３は、計測値が閾値より大きいか否かを判定する。
【０１１１】
（条件２）を満たすトピックを検索する方法は以下の通りである。ドメイン管理モジュール１３３は、新規ドメインのトピックを一つ選択する。ドメイン管理モジュール１３３は、選択されたトピックに含まれる単語及び比較ドメインの各トピックに含まれる単語を比較し、選択されたトピックに含まれる単語と同一又は類似する単語の数を閾値より多く含むトピックを検索する。
【０１１２】
以上がステップＳ１０３の処理の説明である。
【０１１３】
次に、文章データ管理モジュール１２１のドメイン管理モジュール１３３は、仮登録トピック選択処理の結果に基づいて、仮登録トピック管理情報１２６を更新する（ステップＳ１０４）。その後、文章データ管理モジュール１２１は仮登録トピック登録処理を終了する。具体的には、以下のような処理が実行される。
【０１１４】
ドメイン管理モジュール１３３は、仮登録トピックのリストから所定の数の仮登録トピックを選択する。当該リストに登録された全ての仮登録トピックが新規ドメインのトピックとして設定された場合、既存のトピックが平均化される可能性がある。既存のトピックは、新規ドメインの特徴をよく表すトピックであるため、既存のトピックの平均化によって検索精度が低下する可能性がある。そのため、ドメイン管理モジュール１３３は、登録するトピックの数を制御するために、仮登録トピックのリストから所定の数の仮登録トピックを選択する。
【０１１５】
仮登録トピックの選択方法としては、評価値５０４又は検索回数５０５の値が大きい順に仮登録トピックを選択する方法が考えられる。前述の条件の合致率が高い順に仮登録トピックを選択する方法が考えられる。また、前述した方法を組み合わせてもよい。なお、選択方法は一例であってこれに限定されない。
【０１１６】
ドメイン管理モジュール１３３は、仮登録トピック管理情報１２６にエントリを追加し、追加されたエントリのドメインＩＤ６０１に新規ドメインの識別情報を設定する。ドメイン管理モジュール１３３は、追加されたエントリに選択された仮登録トピックの数と同数の行を生成し、各行の仮登録トピックＩＤ６０２に識別情報を設定する。
【０１１７】
ドメイン管理モジュール１３３は、一つの行の生成元６０６に仮登録トピックとして選択されたトピックの情報を設定する。ドメイン管理モジュール１３３は、生成元６０６の情報に基づいてトピック管理情報１２５を参照し、仮登録トピックとして選択されたトピックに対応する行の単語５０３に設定された値を、単語６０３に設定する。
【０１１８】
この時点では、評価値６０４は空欄であり、検索回数６０５及び期間６０７は「０」が設定される。
【０１１９】
ドメイン管理モジュール１３３は、トピック管理情報１２５を参照して、仮登録トピックとして選択されたトピックの行を検索する。ドメイン管理モジュール１３３は、検索された行の利用履歴５０６に新規ドメインの識別情報が設定されているか否かを判定する。利用履歴５０６に新規ドメインの識別情報が設定されていない場合、ドメイン管理モジュール１３３は利用履歴５０６に、新規ドメインの識別情報及び「１」を設定する。利用履歴５０６に新規ドメインの識別情報が設定されている場合、ドメイン管理モジュール１３３は、利用履歴５０６に設定された回数に「１」を加算する。
【０１２０】
以上がステップＳ１０４の処理の説明である。
【０１２１】
図７では、新規ドメインを登録する場合の処理について説明したが、既存のドメインに対しても同様の処理を適用できる。具体的には、文章データ管理モジュール１２１は、既存のドメインの識別情報を含むトピックの追加要求を受け付けた場合、ステップＳ１０３及びステップＳ１０４の処理を実行する。このとき、指定された既存のドメインに関する関連文章データ１０５の検索処理は一時的に停止される。
【０１２２】
実施例１の計算機１００は、新規ドメインの登録要求の受信及びトピックの追加要求の受信等、ドメインへの新規トピックの登録契機を検出した場合、ステップＳ１０３及びステップＳ１０４の処理を実行する。
【０１２３】
図８は、実施例１の計算機１００が実行する運用処理の一例を説明するフローチャートである。図９は、実施例１のユーザ端末１０２に表示されるユーザ入力画面９００の一例を示す図である。図１０は、実施例１のユーザ端末１０２に表示されるトピック操作画面１０００の一例を示す図である。図１１は、実施例１の計算機１００によって表示される検索結果表示画面１１００の一例を示す図である。
【０１２４】
文章データ管理モジュール１２１は、任意のタイミングで、ユーザ入力画面９００をユーザ端末１０２に表示する。
【０１２５】
ここで、図９を用いてユーザ入力画面９００を説明する。ユーザ入力画面９００は、データ入力欄９０１、ドメイン入力欄９０２、追加ボタン９０３、及び実行ボタン９０４を含む。
【０１２６】
データ入力欄９０１は、データベース１０１へ登録する文章データ１０５の識別情報又は関連文章データ１０５を検索するための単語を入力する欄である。ドメイン入力欄９０２は、文章データ１０５を格納先又は検索対象のドメインの識別情報を入力する欄である。追加ボタン９０３は、データ入力欄９０１及びドメイン入力欄９０２の組を追加するためのボタンである。実行ボタン９０４は、処理要求を送信するためのボタンである。
【０１２７】
ユーザが実行ボタン９０４を操作した場合、データ入力欄９０１を用いて指定された文章データ１０５又は単語、及びドメイン入力欄９０２に設定されたドメインの識別情報を含む処理要求が計算機１００に送信される。
【０１２８】
なお、ユーザ及びドメインを対応づけた情報を用いて、ユーザが扱うことができるドメインを制限できるようにしてもよい。この場合、ドメイン入力欄９０２への入力は、操作しているユーザが扱うことができるドメインの識別情報にのみ制限される。
【０１２９】
以上がユーザ入力画面９００の説明である。図８の説明に戻る。
【０１３０】
文章データ管理モジュール１２１は、ユーザ端末１０２から処理要求を受信する（ステップＳ２０１）。具体的には、入出力モジュール１３１が、処理要求を受信する。
【０１３１】
次に、文章データ管理モジュール１２１は、解析処理を実行し（ステップＳ２０２）、処理結果としてトピック操作画面１０００を表示するための表示データを出力する（ステップＳ２０３）。解析処理の詳細は図１２を用いて説明する。文章データ管理モジュール１２１は、表示データを出力した後、待ち状態に移行する。
【０１３２】
ここで、図１０を用いてトピック操作画面１０００について説明する。トピック操作画面１０００は、トピック表示欄１００１、トピック操作欄１００２、及び検索開始ボタン１００３を含む。
【０１３３】
トピック表示欄１００１は、解析処理に基づいて選択された検索キー（検索用トピック）の候補となるトピックを表示する欄である。実施例１では、ドメイン単位にトピックが異なるため、トピック表示欄１００１はタブ形式でトピックが表示される。ユーザは、任意のドメインのタブ１００５を選択することによって、当該ドメインに関するトピック表示欄１００１を閲覧できる。
【０１３４】
トピック表示欄１００１にはトピックリスト１０１０が含まれる。トピックリスト１０１０は、選択ボタン１０１１、トピックＩＤ１０１２、生成元１０１３、及び単語１０１４から構成されるエントリを含む。一つのエントリが一つのトピックを表す。
【０１３５】
トピックＩＤ１０１２は、トピックの識別情報を格納するフィールドである。実施例１では、トピック管理情報１２５及び仮登録トピック管理情報１２６に基づいて。トピック表示欄１００１に表示するトピックが検索される。したがって、トピックＩＤ１０１２には、トピックＩＤ５０２及び仮登録トピックＩＤ６０２のいずれかの値が設定される。
【０１３６】
単語１０１４は、トピックを構成する単語を格納するフィールドである。単語１０１４には、単語５０３及び単語６０３のいずれかの値が設定される。
【０１３７】
生成元１０１３は、トピックが他のドメインから流用したトピックであるか否かを示す情報を格納するフィールドである。生成元１０１３には、生成元５０７及び生成元６０６のいずれかの値が設定される。
【０１３８】
選択ボタン１０１１は、操作するエントリを選択するためのボタンである。実施例１では、ユーザが選択ボタン１０１１を操作した場合、トピック操作欄１００２への入力又は検索開始ボタン１００３の操作が有効化される。
【０１３９】
トピック操作欄１００２は、トピックに対する操作を指定する欄である。トピック操作欄１００２は、トピック追加ボタン１０２１、トピック削除ボタン１０２２、単語変更ボタン１０２３、トピック評価ボタン１０２４、及び理由入力欄１０２５を含む。トピック操作欄１００２を用いた操作は、更新要求として計算機１００に送信される。更新要求には、ドメインの識別情報、トピックの識別情報、操作内容、ユーザの識別情報、及び理由等が含まれる。更新要求には、更新要求の種別を示す値が含まれてもよい。
【０１４０】
トピック追加ボタン１０２１は、トピックを追加するためのボタンである。ユーザがトピック追加ボタン１０２１を操作した場合、文章データ管理モジュール１２１は、後述する候補トピックリストをユーザ端末１０２に表示し、又は、追加するトピックの識別情報等を入力する画面をユーザ端末１０２に表示する。
【０１４１】
トピック削除ボタン１０２２は、トピックを削除するためのボタンである。ユーザがトピック削除ボタン１０２２を操作した場合、文章データ管理モジュール１２１は、トピックリスト１０１０から選択ボタン１０１１が操作されたエントリを削除する。
【０１４２】
単語変更ボタン１０２３は、トピックを構成する単語を修正するためのボタンである。ユーザが単語変更ボタン１０２３を操作した場合、文章データ管理モジュール１２１は、選択ボタン１０１１が操作されたエントリの単語１０１４に対する操作を有効化する。ユーザは、当該エントリの単語１０１４に単語を追加し、又は、単語を削除する。
【０１４３】
トピック評価ボタン１０２４は、選択ボタン１０１１が操作されたエントリのトピックの評価値５０４又は評価値６０４を変更するためのボタンである。
【０１４４】
実施例１では、トピック評価ボタン１０２４が押下された場合、選択ボタン１０１１が操作されたエントリに対応するトピックの評価値５０４又は評価値６０４の値が更新される。例えば、評価値５０４又は評価値６０４に、規定の値が加点される。加点する値は全てのユーザが同一でなくてもよい。また、ユーザが具体的に値を入力してもよい。また、加点だけではなく、評価値を減点する操作が行われてもよい。
【０１４５】
理由入力欄１０２５は、トピック追加ボタン１０２１、トピック削除ボタン１０２２、単語変更ボタン１０２３、及びトピック評価ボタン１０３のいずれかを操作した理由を設定する欄である。
【０１４６】
検索開始ボタン１００３は、関連文章データ１０５を検索する検索処理の実行を指示するためのボタンである。
【０１４７】
検索開始ボタン１００３を用いた操作は、検索要求として計算機１００に送信される。検索要求には、現在閲覧しているドメインの識別情報、選択ボタン１０１１を用いて選択された一つ以上のトピック（検索用トピック）の識別情報、及びユーザの識別情報等が含まれる。検索要求には、検索要求の種別を示す値が含まれてもよい。
【０１４８】
文章データ管理モジュール１２１は、検索要求を受信した場合、検索用トピックのリストを生成し、当該リストを用いて文章データ検索処理を実行する。
【０１４９】
以下の説明では、検索用トピックのリストを検索リストと記載する。検索リストには、検索開始ボタン１００３の操作時にトピックリスト１０１０に選択ボタン１０１１で選択された一つ以上のトピックが含まれる。
【０１５０】
文章データ検索処理では、検索用トピックとして使用されたトピックの使用実績に基づいてトピック管理情報１２５及び仮登録トピック管理情報１２６が更新される。具体的には、検索回数５０５又は検索回数６０５の値に「１」が加算される。
【０１５１】
以上がトピック操作画面１０００の説明である。図８の説明に戻る。
【０１５２】
次に、文章データ管理モジュール１２１は、トピック操作画面１０００に対する操作によって出力された要求をユーザ端末１０２から受信した場合、処理を再開する。まず、文章データ管理モジュール１２１は、受信した要求が検索要求であるか否かを判定する（ステップＳ２０５）。なお、要求の種別の判別方法としては、要求に含まれる値に基づいて判別する方法、又は、要求の種別を表す値に基づいて判別する方法が考えられる。
【０１５３】
受信した要求が検索要求でないと判定された場合、文章データ管理モジュール１２１は、受信した要求が更新要求であるか否かを判定する（ステップＳ２０６）。
【０１５４】
受信した要求が更新要求でないと判定された場合、文章データ管理モジュール１２１は、ユーザ端末１０２にエラーを通知し（ステップＳ２０７）、処理を終了する。
【０１５５】
受信した要求が更新要求であると判定された場合、文章データ管理モジュール１２１は、更新処理を実行する（ステップＳ２０７）。その後、文章データ管理モジュール１２１は待ち状態に移行する。具体的には、以下のような処理が実行される。
【０１５６】
文章データ管理モジュール１２１は、更新要求に基づいてトピックリスト１０１０を更新する。
【０１５７】
文章データ管理モジュール１２１は、単語の変更を伴う更新処理である場合、更新要求に基づいてトピック管理情報１２５の単語５０３又は仮登録トピック管理情報１２６の単語６０３を更新する。さらに、追加された単語がドメインの専門用語辞書に存在しない場合、文章データ管理モジュール１２１は、辞書管理情報１２４のドメインに対応するエントリに行を追加し、単語ＩＤ４０２に識別情報を設定し、また、単語４０３に追加された単語を設定する。また、文章データ管理モジュール１２１は、提供元４０４にユーザの識別情報を設定する。
【０１５８】
また、文章データ管理モジュール１２１は、トピックの追加又は削除する更新の場合、トピック管理情報１２５の行の追加又は削除を行い、ドメイン管理情報１２２のトピック数２０４及び文章データ管理情報１２３のトピックＩＤ３０３を更新する。
【０１５９】
以上がステップＳ２０７の処理の説明である。
【０１６０】
ステップＳ２０３において、受信した要求が検索要求であると判定された場合、文章データ管理モジュール１２１は、文章データ検索処理を実行する（ステップＳ２０４）。文章データ検索処理の詳細は図１２を用いて説明する。
【０１６１】
次に、文章データ管理モジュール１２１は、処理結果として、ユーザ端末１０２に検索結果表示画面１１００を表示するための表示データを出力する（ステップＳ２０５）。その後、計算機１００は、処理を終了する。
【０１６２】
文章データ管理モジュール１２１は、データ入力欄９０１を用いて入力された文章データ１０５を、ドメイン入力欄９０２に入力したドメインに関連するデータベース１０１に格納してもよい。
【０１６３】
ここで、図１１を用いて検索結果表示画面１１００について説明する。検索結果表示画面１１００は、データ選択欄１１０１、ドメイン選択欄１１０２、及び関連文章データリスト１１０３を含む。
【０１６４】
データ選択欄１１０１及びドメイン選択欄１１０２は、文章データ検索処理において使用した文章データ１０５及びドメインの組合せを選択する欄である。データ選択欄１１０１及びドメイン選択欄１１０２に関連する検索結果が関連文章データリスト１１０３に表示される。
【０１６５】
関連文章データリスト１１０３は、文章データ検索処理によって検索された文章データ１０５を示す情報であり、文章データ１０５の識別情報のリストとして表示される。一つのエントリが一つの文章データ１０５に対応する。エントリには、文章データ１０５の要約及び文章データ１０５のトピックの情報等が含まれてもよい。
【０１６６】
ユーザは、関連文章データリスト１１０３を操作することによって、計算機１００に表示要求を送信してもよい。表示要求には、文章データ１０５の識別情報が含まれる。計算機１００は、表示要求を受信した場合、文章データ１０５をデータベース１０１から読み出し、読み出した文章データ１０５をユーザ端末１０２に送信する。
【０１６７】
以上が検索結果表示画面１１００の説明である。
【０１６８】
図１２は、実施例１の計算機１００が実行する解析処理の一例を説明するフローチャートである。なお、複数の新規文章データ又は単語が入力された場合、各新規文章データ又は単語に対して以下で説明する処理が繰り返し実行される。
【０１６９】
文章データ管理モジュール１２１は、空のトピックリスト１０１０を生成し、入力されたデータが文章データ１０５であるか否かを判定する（ステップＳ３０１）。
【０１７０】
入力されたデータが単語であると判定された場合、文章データ管理モジュール１２１は、ステップＳ３０３に進む。
【０１７１】
入力されたデータが文章データ１０５であると判定された場合、文章データ管理モジュール１２１は、文章データ１０５に対応する文章を単語に分解し（ステップＳ３０２）、その後、ステップＳ３０３に進む。例えば、文章データ管理モジュール１２１は、形態素解析に基づいて、文章を単語に分解する。
【０１７２】
ステップＳ３０３では、文章データ管理モジュール１２１は、トピック管理情報１２５及び仮登録トピック管理情報１２６を用いて、検索用トピックを特定する（ステップＳ３０３）。ここで、入力されたデータが単語及び文章データ１０５のそれぞれについてステップＳ３０３の処理の一例を説明する。
【０１７３】
入力されたデータが単語である場合、トピック管理モジュール１３２は、トピック管理情報１２５の単語５０３及び仮登録トピック管理情報１２６の単語６０３を参照して、ユーザによって入力された単語を含むエントリを検索する。トピック管理モジュール１３２は、検索されたエントリに対応するトピックを検索用トピックとして特定する。
【０１７４】
入力されたデータが文章データ１０５である場合、以下のような処理が実行される。
【０１７５】
まず、トピック管理モジュール１３２は、トピック管理情報１２５の単語５０３及び仮登録トピック管理情報１２６の単語６０３を参照して、ステップＳ３０２の処理によって得られた各単語を含むエントリを検索する。トピック管理モジュール１３２は、検索されたエントリに対応するトピックを候補トピックに設定する。トピック管理モジュール１３２は、候補トピックの識別情報から構成される候補トピックリストを生成し、メモリ１１２に一時的に格納する。
【０１７６】
トピック管理モジュール１３２は、候補トピックリストから候補トピックを一つ選択する。トピック管理モジュール１３２は、入力された文章データ１０５に含まれる、候補トピックを構成する単語の数を計測する。トピック管理モジュール１３２は、単語の数に基づいてトピックの選択基準となる第１判定値を算出する。第１判定値は、入力された文章データ１０５とトピックとの間の関連性を示す値である。
【０１７７】
例えば、単語の数を第１判定値として算出してもよいし、単語に設定された重要度及び単語の数を掛け合わせた値の合計値を第１判定値として算出してもよい。なお、単語に設定された重要度は、トピックにおいて重要な単語であるか否かを示す値である。
【０１７８】
トピック管理モジュール１３２は、全ての候補トピックの第１判定値を算出した後、第１判定値に基づいて所定の数の候補トピックを検索用トピックとして選択する。トピック管理モジュール１３２は、選択された検索用トピックをトピックリスト１０１０に設定する。
【０１７９】
例えば、トピック管理モジュール１３２は、第１判定値の大きい順に所定の数の検索用トピックを選択してもよいし、第１判定値が閾値より大きい候補トピックを検索用トピックとして選択してもよい。以上が入力されたデータが文章データ１０５である場合の処理の説明である。
【０１８０】
次に、文章データ管理モジュール１２１は、表示データを生成する（ステップＳ３０４）。その後、文章データ管理モジュール１２１は解析処理を終了する。
【０１８１】
具体的には、トピック管理モジュール１３２は、トピックリスト１０１０を表示するための表示データを生成する。
【０１８２】
図１３は、実施例１の文章データ管理モジュール１２１が実行する文章データ検索処理の一例を説明するフローチャートである。なお、入力された文章データ１０５に対して以下で説明する処理が繰り返し実行される。
【０１８３】
実施例１の検索エンジン１３４は、各文章データ１０５に対して検索リストに含まれるトピックの有無を判定し、当該判定結果に基づいて入力された文章データ１０５と文章データ１０５との間の関連性を示す値（第２判定値）を算出する。以下、詳細な処理について説明する。
【０１８４】
検索エンジン１３４は、トピックリスト１０１０から検索リストを生成し、検索リストに含まれる検索用トピックの数と同数の成分のベクトルｖ、ｄを生成する（ステップＳ４０１）。このとき、検索エンジン１３４は、空の関連文章データリストを生成する。
【０１８５】
なお、ベクトルｖは、新規文章データの特徴を表すベクトルであり、ベクトルｄは、比較する文章データ１０５の特徴と表すベクトルである。一つの成分には一つの検索用トピックが対応づけられる。この時点では、各ベクトルの成分は全て０に設定される。
【０１８６】
次に、検索エンジン１３４は、ベクトルｖの成分を決定する（ステップＳ４０２）。例えば、以下のような処理が実行される。
【０１８７】
検索エンジン１３４は、検索リストから検索用トピックを選択する。検索エンジン１３４は、新規文章データを参照して、選択された検索用トピックを構成する単語の数を計測する。検索エンジン１３４は、計測された単語の数を選択された検索用トピックに対応する成分の値に設定する。検索エンジン１３４は、検索リストに含まれる全ての検索用トピックに対して同様の処理を実行する。
【０１８８】
次に、検索エンジン１３４は、文章データ１０５のループ処理を開始する（ステップＳ４０３）。具体的には、検索エンジン１３４は、文章データ１０５を一つ選択する。
【０１８９】
次に、検索エンジン１３４は、ベクトルｄの成分を決定する（ステップＳ４０４）。例えば、以下のような処理が実行される。
【０１９０】
検索エンジン１３４は、検索リストから検索用トピックを選択する。検索エンジン１３４は、選択された文章データ１０５を参照して、選択された検索用トピックを構成する単語を検索する。選択された文章データ１０５に選択された検索用トピックを構成する単語が一つ以上含まれる場合、検索エンジン１３４は、選択された検索用トピックに対応する成分に「１」を設定する。
【０１９１】
次に、検索エンジン１３４は、ベクトルｖ、ｄに基づいて、第２判定値を算出する（ステップＳ４０５）。例えば、ベクトルｖ及びベクトルｄの内積を第２判定値として算出する方法が考えられる。
【０１９２】
次に、検索エンジン１３４は、第２判定値が閾値より大きいか否かを判定する（ステップＳ４０６）。閾値は予め設定されているものとする。なお、閾値は適宜更新できる。
【０１９３】
第２判定値が閾値以下であると判定された場合、検索エンジン１３４は、ステップＳ４０８に進む。
【０１９４】
第２判定値が閾値より大きいと判定された場合、検索エンジン１３４は、選択された文章データ１０５を関連文章データ１０５として関連文章データリストに登録する（ステップＳ４０７）。その後、文章データ管理モジュール１２１は、ステップＳ４０８に進む。
【０１９５】
ステップＳ４０８では、文章データ管理モジュール１２１は、全ての文章データ１０５について処理が完了したか否かを判定する（ステップＳ４０８）。
【０１９６】
全ての文章データ１０５について処理が完了していないと判定された場合、文章データ管理モジュール１２１は、ベクトルｄを初期化した後、ステップＳ４０３に戻り、同様の処理を実行する。
【０１９７】
全ての文章データ１０５について処理が完了したと判定された場合、文章データ管理モジュール１２１は、関連文章データリストに登録された文章データ１０５を第２判定値の大きい順にソートする（ステップＳ４０９）。
【０１９８】
次に、文章データ管理モジュール１２１は、関連文章データリストを表示するための表示データを生成する（ステップＳ４１０）。その後、文章データ管理モジュール１２１は、文章データ検索処理を終了する。
【０１９９】
なお、ループ処理では、データベース１０１に格納された全ての文章データ１０５を対象としていたが、これに限定されない。例えば、ユーザに対応づけられたドメインに属する文章データ１０５のみを対象としてもよい。
【０２００】
なお、図１３を用いて説明した関連文章データの特定方法は、一例であって、これに限定されない。
【０２０１】
なお、実施例１では、関連文章データの検索時に、ユーザによってトピックが更新されているがこれに限定されない。例えば、文章データ管理モジュール１２１は、周期的、イベントの発生時、又は、ユーザからの要求を受け付けた場合、トピックを提示するようにしてもよい。この場合、検索用トピックを表示する画面と、更新用のトピックを表示する画面とは別々に表示される。トピックの更新を行うタイミングを調整することによって、ユーザの負担を低減できる。
【０２０２】
図１４は、実施例１の計算機１００が実行する登録トピック決定処理の一例を説明するフローチャートである。文章データ管理モジュール１２１は運用処理の実行中の任意のタイミング又は運用処理の実行後に以下で説明する処理を実行する。なお、登録トピック決定処理は周期的に実行されてもよい。
【０２０３】
文章データ管理モジュール１２１は、ドメインのループ処理を開始する（ステップＳ５０１）。具体的には、文章データ管理モジュール１２１は、仮登録トピック管理情報１２６を参照し、エントリ（ターゲットドメイン）を一つ選択する。
【０２０４】
次に、文章データ管理モジュール１２１は、仮登録トピックのループ処理を開始する（ステップＳ５０２）。具体的には、文章データ管理モジュール１２１は、ターゲットドメインに対応するエントリに含まれる行の中から一つの行（ターゲット仮登録トピック）を選択する。
【０２０５】
次に、文章データ管理モジュール１２１は、ターゲット仮登録トピックの経過時間が閾値より大きいか否かを判定する（ステップＳ５０３）。具体的には、文章データ管理モジュール１２１は、ターゲット仮登録トピックに対応する行の期間６０７の値が閾値より大きいか否かを判定する。
【０２０６】
ターゲット仮登録トピックの経過時間が閾値以下であると判定された場合、文章データ管理モジュール１２１は、ステップＳ５０７に進む。
【０２０７】
ターゲット仮登録トピックの経過時間が閾値より大きいと判定された場合、文章データ管理モジュール１２１は、ターゲット仮登録トピックの使用実績に基づいて、トピック管理情報１２５にターゲット仮登録トピックを登録できるか否かを判定する（ステップＳ５０４）。
【０２０８】
例えば、文章データ管理モジュール１２１は、ターゲット仮登録トピックに対応する行の検索回数６０５が閾値より大きいか否かを判定する。検索回数６０５が閾値より大きい場合、文章データ管理モジュール１２１は、トピック管理情報１２５にターゲット仮登録トピックを登録できると判定する。なお、前述の判定方法は一例であってこれに限定されず、評価値６０４に基づいて判定してもよい。
【０２０９】
トピック管理情報１２５にターゲット仮登録トピックを登録できると判定された場合、文章データ管理モジュール１２１は、トピック管理情報１２５にターゲット仮登録トピックを登録する（ステップＳ５０５）。その後、文章データ管理モジュール１２１はステップＳ５０７に進む。具体的には、以下のような処理が実行される。
【０２１０】
文章データ管理モジュール１２１は、ドメインＩＤ５０１がターゲットドメインの識別情報に一致するエントリを検索し、検索されたエントリに行を追加する。文章データ管理モジュール１２１は、追加された行のトピックＩＤ５０２に新たな識別情報を設定する。文章データ管理モジュール１２１は、ターゲット仮登録トピックに対応する行の単語６０３、評価値６０４、検索回数６０５、及び生成元６０６の値を、追加された行の単語５０３、評価値５０４、検索回数５０５、及び生成元５０７に設定する。
【０２１１】
文章データ管理モジュール１２１は、ターゲット仮登録トピックを構成する単語のうち、ターゲットドメインの専門用語辞書に登録されていない単語を特定する。文章データ管理モジュール１２１は、ドメインＩＤ４０１がターゲットドメインの識別情報に一致するエントリを検索し、検索されたエントリに特定された単語の数だけ行を追加する。文章データ管理モジュール１２１は、追加された行の単語ＩＤ４０２に識別情報をし。追加された行の単語４０３に特定された単語を設定する。また、文章データ管理モジュール１２１は、追加された全ての行の提供元４０４に、ターゲット仮登録トピックに対応する行の生成元６０６の値を設定する。
【０２１２】
文章データ管理モジュール１２１は、仮登録トピック管理情報１２６から、ターゲット仮登録トピックに対応する行を削除する。
【０２１３】
以上がステップＳ５０５の処理の説明である。
【０２１４】
トピック管理情報１２５にターゲット仮登録トピックを登録できないと判定された場合、文章データ管理モジュール１２１は、仮登録トピック管理情報１２６から、ターゲット仮登録トピックに対応する行を削除する（ステップＳ５０６）。その後、文章データ管理モジュール１２１はステップＳ５０７に進む。
【０２１５】
ステップＳ５０７では、文章データ管理モジュール１２１は、ターゲットドメインの全ての仮登録トピックについて処理が完了したか否かを判定する（ステップＳ５０７）。
【０２１６】
ターゲットドメインの全ての仮登録トピックについて処理が完了していないと判定された場合、文章データ管理モジュール１２１は、ステップＳ５０２に戻り、新たなターゲット仮登録トピックを選択する。
【０２１７】
ターゲットドメインの全ての仮登録トピックについて処理が完了したと判定された場合、文章データ管理モジュール１２１は、仮登録トピック管理情報１２６に登録された全てのドメインについて処理が完了したか否かを判定する（ステップＳ５０８）。
【０２１８】
仮登録トピック管理情報１２６に登録された全てのドメインについて処理が完了していないと判定された場合、文章データ管理モジュール１２１は、ステップＳ５０１に戻り、新たなターゲットドメインを選択する。
【０２１９】
仮登録トピック管理情報１２６に登録された全てのドメインについて処理が完了したと判定された場合、文章データ管理モジュール１２１は、登録トピック決定処理を終了する。
【０２２０】
以上で説明したように、実施例１によれば、計算機１００は、特定のドメインにトピックを追加する場合に、自動的かつ効率的に他のドメインのトピックの中から特定のドメインに追加するトピックを選択できる。
【０２２１】
計算機１００は、選択条件を満たすトピックを仮登録トピックとして一時的に保持し、ターゲットドメインにおける関連文章データ１０５の検索処理等の使用実績に基づいて実際に登録するトピックを決定する。これによって、特定のドメインにおける関連文章検索サービスの使用状態を反映したトピック、すなわち、関連文章データ１０５の検索精度が向上するトピックを特定のドメインに追加できる。
【０２２２】
特に、コーパス及び専門用語辞書の質及び量が不足している場合でも、関連文章データ１０５の検索精度が高いトピックをドメインに追加できる。
【０２２３】
また、実施例１によれば、計算機１００は、トピックの追加に伴って、有用な単語を専門用語辞書に追加することができる。
【実施例２】
【０２２４】
実施例２では、仮登録トピック登録処理が一部異なる。以下、実施例１との差異を中心に実施例２について説明する。
【０２２５】
実施例２の計算機システムの構成は、実施例１の計算機システムの構成と同一である。実施例２の各装置のハードウェア構成及びソフトウェア構成は、実施例１の各装置のハードウェア構成及びソフトウェア構成と同一である。また、実施例２の計算機１００が保持する各種情報のデータ構造は、実施例１のデータ構造と同一である。
【０２２６】
図１５は、実施例２の計算機１００が実行する仮登録トピック登録処理の一例を説明するフローチャートである。
【０２２７】
実施例２では、文章データ管理モジュール１２１のドメイン管理モジュール１３３が、ステップＳ１０２の処理が実行された後、ドメインの中から新規ドメインの類似ドメインを特定する（ステップＳ１５１）。なお、複数の類似ドメインが特定されてもよい。
【０２２８】
類似ドメインを特定する方法としては、例えば、以下の二つの方法が考えられる。
【０２２９】
（方法１）ドメイン管理モジュール１３３は、新規ドメインの専門用語辞書及び既存のドメインの専門用語辞書を比較し、同一の単語及び類似する単語の数を計測する。ドメイン管理モジュール１３３は、計測された単語の数が閾値より大きいドメインを類似ドメインとして特定する。
【０２３０】
（方法２）ドメイン管理モジュール１３３は、トピック管理情報１２５を参照して、既存のドメインのトピック及び新規ドメインのトピックを比較し、同一のトピック及び類似するトピックの数を計測する。類似するトピックの検索方法は（条件２）と同一の方法を用いる。ドメイン管理モジュール１３３は、計測されたトピックの数が閾値より大きいドメインを類似ドメインとして特定する。
【０２３１】
（方法１）及び（方法２）の二つの方法は組み合わせてもよい。なお、前述した方法は一例であってこれに限定されない。例えば、ドメインに対応づけられたユーザの属性、及びデータベース１６０に格納される文章データ１０５の内容等の類似性に基づいて類似ドメインを特定してもよい。
【０２３２】
ステップＳ１０３以降の処理は、実施例１と同一の処理である。ただし、実施例２では、類似ドメインが比較ドメインとして扱われる点が実施例１と異なる。
【０２３３】
実施例２によれば、類似ドメインのトピックから仮登録トピックを選択することによって、処理負荷の低減及び処理速度の向上が可能となる。また、有用なトピックを効率的に選択することができる。
【実施例３】
【０２３４】
実施例３では、仮登録トピックの選択条件の一つとして、関連文章データリスト１１０３に表示された文章データ１０５に対するユーザの評価を用いる点が実施例１と異なる。以下、実施例１との差異を中心に実施例３について説明する。
【０２３５】
実施例３の計算機システムの構成は、実施例１の計算機システムの構成と同一である。実施例３の各装置のハードウェア構成及びソフトウェア構成は、実施例１の各装置のハードウェア構成及びソフトウェア構成と同一である。
【０２３６】
実施例３では、文章データ管理情報１２３のデータ構造が異なる。その他の情報のデータ構造は、実施例１のデータ構造と同一である。
【０２３７】
図１６は、実施例３の文章データ管理情報１２３のデータ構造の一例を示す図である。
【０２３８】
文章データ管理情報１２３に含まれるエントリは、新たに評価値３０４を含む。評価値３０４は、関連文章データリスト１１０３に表示された文章データ１０５に対するユーザの評価を示す値を格納するフィールドである。なお、評価値３０４の初期値は「０」に設定される。
【０２３９】
図１７は、実施例３の計算機１００によって表示される検索結果表示画面１１００の一例を示す図である。
【０２４０】
実施例３では、関連文章データリスト１１０３に含まれるエントリの構成が異なる。エントリは、文章ＩＤ１１１１及び評価ボタン１１１２から構成される。
【０２４１】
評価ボタン１１１２は、関連文章データリスト１１０３に表示される文章データ１０５の評価を行うためのボタンである。
【０２４２】
実施例３では、ユーザが評価ボタン１１１２を操作した場合、文章データ管理モジュール１２１は、文章データ管理情報１２３を参照し、文章データＩＤ３０２の値が文章ＩＤ１１１１の値と一致するエントリを検索し、当該エントリの評価値３０４に点数を加算する。加算される点数は固定値でもよいし、ユーザ毎に異なってもよい。また、ユーザが加算する点数を決定してもよい。
【０２４３】
なお、評価ボタン１１１２には、評価値３０４の値を減点するボタンが含まれてもよい。
【０２４４】
なお、関連文章データリスト１１０３に含まれるエントリは、現在の文章データ１０５の評価値（評価値３０４）を表示するフィールドを含んでもよい。
【０２４５】
実施例３では、仮登録トピックを選択するための条件として以下のような条件が追加される。
【０２４６】
（条件５）比較ドメインに属する文章データ１０５であって、評価値３０４が閾値より大きい。
【０２４７】
ただし、同一の比較ドメインのトピックを含む文章データ１０５が複数存在する場合、各文章データ１０５の評価値３０４の合計値が閾値より大きいか否かが判定される。
【０２４８】
（条件５）は比較ドメインのトピックに基づいて検索された文章データ１０５の評価実績に基づいてトピックを検索するための条件である。当該条件に基づいてトピックを選択することによって、検索精度の向上が期待できるトピックを選択することができる。
【０２４９】
また、実施例３では、仮登録トピックをトピック管理情報１２５に登録できるか否かを判定するための条件として評価値３０４に関連する条件を用いてもよい。例えば、文章データ管理モジュール１２１は、ターゲット仮登録トピックが定義された文章データ１０５の評価値３０４が閾値より大きいか否かを判定する。評価値３０４が閾値より大きい場合、文章データ管理モジュール１２１は、トピック管理情報１２５にターゲット仮登録トピックを登録できると判定する。
【０２５０】
実施例３によれば、関連文章データ１０５の検索結果に対するユーザの評価を活用することによって、関連文章データ１０５の検索精度が向上するトピックをドメインに追加できる。
【０２５１】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。また、例えば、上記した実施例は本発明を分かりやすく説明するために構成を詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、各実施例の構成の一部について、他の構成に追加、削除、置換することが可能である。
【０２５２】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、本発明は、実施例の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をコンピュータに提供し、そのコンピュータが備えるプロセッサが記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、光ディスク、光磁気ディスク、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどが用いられる。
【０２５３】
また、実施例に記載の機能を実現するプログラムコードは、例えば、アセンブラ、Ｃ／Ｃ＋＋、ｐｅｒｌ、Ｓｈｅｌｌ、ＰＨＰ、Ｊａｖａ（登録商標）等の広範囲のプログラム又はスクリプト言語で実装できる。
【０２５４】
さらに、実施例の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することによって、それをコンピュータのハードディスクやメモリ等の記憶手段又はＣＤ−ＲＷ、ＣＤ−Ｒ等の記憶媒体に格納し、コンピュータが備えるプロセッサが当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしてもよい。
【０２５５】
上述の実施例において、制御線や情報線は、説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていてもよい。
【符号の説明】
【０２５６】
１００  計算機
１０１  データベース
１０２  ユーザ端末
１０５  文章データ
１１１  プロセッサ
１１２  メモリ
１１３  ネットワークインタフェース
１２１  文章データ管理モジュール
１２２  ドメイン管理情報
１２３  文章データ管理情報
１２４  辞書管理情報
１２５  トピック管理情報
１２６  仮登録トピック管理情報
１３１  入出力モジュール
１３２  トピック管理モジュール
１３３  ドメイン管理モジュール
１３４  検索エンジン
９００  ユーザ入力画面
１０００  トピック操作画面
１１００  検索結果表示画面
【図１】
2019164504.tif 000003
【図２】
2019164504.tif 000004
【図３】
2019164504.tif 000005
【図４】
2019164504.tif 000006
【図５】
2019164504.tif 000007
【図６】
2019164504.tif 000008
【図７】
2019164504.tif 000009
【図８】
2019164504.tif 000010
【図９】
2019164504.tif 000011
【図１０】
2019164504.tif 000012
【図１１】
2019164504.tif 000013
【図１２】
2019164504.tif 000014
【図１３】
2019164504.tif 000015
【図１４】
2019164504.tif 000016
【図１５】
2019164504.tif 000017
【図１６】
2019164504.tif 000018
【図１７】
2019164504.tif 000019