(57)【要約】【課題】多様な入力キーワードに対処すること。【解決手段】情報処理装置１００は、対象データ１０２をレコード単位で単語ごとに圧縮したときに、レコード単位の単語ごとの出現回数を表すカウントマップ１０５を作成し、対象データ１０２を圧縮した圧縮データ１０４に付与する。ここで、情報処理装置１００は、第１のキーワード１０１の入力を受け付けると、圧縮データ１０４を伸長することなく、カウントマップ１０５に基づいて、第１のキーワード１０１に対応する第２のキーワード１０３を特定して、出力する。【選択図】図１
2015026350.tif 000002
【特許請求の範囲】
【請求項１】
対象データをレコード単位で単語ごとに圧縮する際に、前記対象データのレコード単位で前記単語ごとの出現回数を表す回数データを作成して、前記対象データを圧縮した圧縮データに付与する作成部と、
前記圧縮データに付与された前記回数データに基づいて、前記対象データに対する検索条件となる第１の文字列に対応する第２の文字列を特定する特定部と、
を有することを特徴とする情報処理システム。
【請求項２】
前記作成部は、
前記単語ごとの種類を表す分類データを作成して、前記圧縮データに付与し、
前記特定部は、
前記圧縮データに付与された前記回数データおよび前記分類データに基づいて、前記対象データに対する検索条件となる分類と前記第１の文字列とに対応する第２の文字列を特定することを特徴とする請求項１に記載の情報処理システム。
【請求項３】
前記特定部によって特定された前記第２の文字列を含む前記対象データのうちのレコードの数を計数する計数部を有することを特徴とする請求項１または２に記載の情報処理システム。
【請求項４】
前記対象データから所定の単語集合に含まれる単語と一致するものを抽出する抽出部を有し、
前記作成部は、
前記対象データをレコード単位で単語ごとに圧縮する際に、前記対象データのレコードごとに前記抽出部によって抽出された前記単語単位の出現回数を表す回数データを作成して、前記対象データを圧縮した圧縮データに付与することを特徴とする請求項１〜３のいずれか一つに記載の情報処理システム。
【請求項５】
前記圧縮データに付与された前記回数データに基づいて、前記第２の文字列の重要度を算出する算出部を有することを特徴とする請求項１〜４のいずれか一つに記載の情報処理システム。
【請求項６】
コンピュータが、
対象データをレコード単位で単語ごとに圧縮する際に、前記対象データのレコード単位で前記単語ごとの出現回数を表す回数データを作成して、前記対象データを圧縮した圧縮データに付与し、
前記圧縮データに付与された前記回数データに基づいて、前記対象データに対する検索条件となる第１の文字列に対応する第２の文字列を特定する、
処理を実行することを特徴とする情報処理方法。
【請求項７】
コンピュータに、
対象データをレコード単位で単語ごとに圧縮する際に、前記対象データのレコード単位で前記単語ごとの出現回数を表す回数データを作成して、前記対象データを圧縮した圧縮データに付与し、
前記圧縮データに付与された前記回数データに基づいて、前記対象データに対する検索条件となる第１の文字列に対応する第２の文字列を特定する、
処理を実行させることを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、情報処理方法、および情報処理プログラムに関する。
【背景技術】
【０００２】
従来、キーワードの入力を受け付けて、対象データの中からキーワードに対応する他のキーワードを特定して出力することが行われている。関連する技術としては、例えば、最初の検索式により文書データベースを検索したときに該当文書数が多ければ、最初の検索式中の１つのキーワードをピックアップし、共起データベースを検索して１または複数の絞り込み候補のキーワードを特定するものがある。ここで、共起データベースは、文書データベースに登録されているすべての文書ファイルから抽出したキーワードに対し、１つのキーワードと当該キーワードと共起したキーワードおよび共起回数を記憶する。また、例えば、単語分割手段によって本文データの単語分割（形態素解析）を行ったのち、頻度検出手段によって単語の繰り返しを除き単語が頻度順に並んだ圧縮テキストを作成する技術がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−２３００３７号公報
【特許文献２】特開平６−３４８７５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述した従来技術では、共起回数やキーワード出現回数を利用し入力キーワードに対して関連キーワードを探索（分析）する場合、十分な分析のためにまたは多様な入力キーワードへの対処のために十分なサイズのデータベースを準備することになる。例えば、ビッグデータ等で対象データのデータ量が増大するほど、データベースのサイズも増大することになる。一方で、データベースのサイズが十分でない場合、不完全な範囲での共起回数やキーワード出現回数の情報を用いることになり、不十分な分析になったり、限定的な入力キーワードにのみ対処することになる。
【０００５】
１つの側面では、本発明は、多様な入力キーワードに対処することができる情報処理システム、情報処理方法、および情報処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一側面によれば、対象データをレコード単位で単語ごとに圧縮する際に、前記対象データのレコード単位で前記単語ごとの出現回数を表す回数データを作成して、前記対象データを圧縮した圧縮データに付与し、前記圧縮データに付与された前記回数データに基づいて、前記対象データに対する検索条件となる第１の文字列に対応する第２の文字列を特定する情報処理システム、情報処理方法、および情報処理プログラムが提案される。
【発明の効果】
【０００７】
本発明の一態様によれば、多様な入力キーワードに対処することができるという効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】図１は、情報処理システムにおけるキーワードの特定処理の一例を示す説明図である。
【図２】図２は、実施の形態にかかる情報処理装置１００のハードウェア構成例を示すブロック図である。
【図３】図３は、圧縮ファイル３００のデータ構造の一例を示す説明図である。
【図４】図４は、静的辞書データ４００のデータ構造の一例を示す説明図である。
【図５】図５は、カウントマップ１０５のデータ構造の一例を示す説明図である。
【図６】図６は、情報処理システムの機能的構成例を示すブロック図である。
【図７】図７は、情報処理装置１００の圧縮処理の一例を示す説明図（その１）である。
【図８】図８は、情報処理装置１００の圧縮処理の一例を示す説明図（その２）である。
【図９】図９は、情報処理装置１００の特定処理の一例を示す説明図（その１）である。
【図１０】図１０は、情報処理装置１００の特定処理の一例を示す説明図（その２）である。
【図１１】図１１は、情報処理装置１００の出力結果の一例を示す説明図である。
【図１２】図１２は、情報処理装置１００の圧縮処理手順の一例を示すフローチャートである。
【図１３】図１３は、情報処理装置１００の特定処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下に添付図面を参照して、本発明にかかる情報処理システム、情報処理方法、および情報処理プログラムの実施の形態を詳細に説明する。
【００１０】
（情報処理システムにおけるキーワードの特定処理の一例）
図１は、情報処理システムにおけるキーワードの特定処理の一例を示す説明図である。図１において、情報処理システムは、情報処理装置１００によって実現される。
【００１１】
情報処理装置１００は、第１のキーワード１０１の入力を受け付けて、対象データ１０２に含まれるキーワードの中から、第１のキーワード１０１に対応する第２のキーワード１０３を特定して出力するコンピュータである。ここで、第１のキーワード１０１とは、単語である。また、第１のキーワード１０１とは、連結基礎単語であってもよい。また、第１のキーワード１０１とは、文字列であってもよい。
【００１２】
対象データ１０２とは、文書や文書の集合である。対象データ１０２は、複数のレコードに分割されている。レコードとは、対象データ１０２が文書である場合は、文書に含まれるセクションである。また、レコードとは、対象データ１０２が文書の集合である場合は、文書の集合に含まれる文書である。また、レコードとは、対象データ１０２が文書の集合を複数含む場合は、文書の集合であってもよい。
【００１３】
第２のキーワード１０３とは、第１のキーワード１０１に対応する単語である。また、第２のキーワード１０３とは、第１のキーワード１０１が連結基礎単語である場合は、連結基礎単語に対応する単語であってもよいし、連結基礎単語のうちのいずれかの単語に対応する単語であってもよい。また、第２のキーワード１０３とは、第１のキーワード１０１が文字列である場合、文字列に含まれる単語に対応する単語であってもよい。以下の説明では、説明の簡略化のため、第１のキーワード１０１および第２のキーワード１０３は、単語であるとする。
【００１４】
図１の例では、情報処理装置１００は、対象データ１０２をレコード単位で単語ごとに圧縮して、圧縮データ１０４として記憶する。情報処理装置１００は、対象データ１０２をレコード単位で単語ごとに圧縮したときに、レコード単位の単語ごとの出現回数を表すカウントマップ１０５を作成し、圧縮データ１０４に付与して、まとめて圧縮ファイルとして記憶する。
【００１５】
ここで、情報処理装置１００は、第１のキーワード１０１の入力を受け付けると、カウントマップ１０５に基づいて、第１のキーワード１０１に対応する第２のキーワード１０３を特定して、出力する。情報処理装置１００は、具体的には、第１のキーワード１０１が出現するレコードにおいて、第１のキーワード１０１とともに所定回数以上出現するキーワードを、第２のキーワード１０３として特定して、出力する。
【００１６】
これにより、情報処理装置１００は、圧縮データ１０４を伸長することなく、第１のキーワード１０１に対応する第２のキーワード１０３を特定することができ、多様なキーワードに対処することができる。そして、情報処理装置１００は、圧縮データ１０４を伸長しなくても第２のキーワード１０３を特定することができ、第２のキーワード１０３の特定処理を効率化することができる。
【００１７】
また、情報処理装置１００は、圧縮データ１０４を伸長しなくても第２のキーワード１０３を特定することができ、記憶装置のサイズに制限がある場合であっても第２のキーワード１０３の特定処理を行うことができる。また、情報処理装置１００は、対象データ１０２を圧縮する際に、対象データ１０２の分析に用いるカウントマップ１０５などの情報を作成することにより、第１のキーワード１０１が入力されてから第２のキーワード１０３が特定されるまでの時間を短縮することができる。
【００１８】
また、情報処理装置１００は、圧縮データ１０４にカウントマップ１０５を付与することにより、圧縮データ１０４とカウントマップ１０５とを対応付けて容易に管理することができる。また、情報処理装置１００は、圧縮データ１０４にカウントマップ１０５を付与することにより、圧縮データ１０４とカウントマップ１０５とを別々に管理する場合に比べて、圧縮データ１０４とカウントマップ１０５とに用いる記憶領域のサイズを低減することができる。
【００１９】
また、情報処理装置１００は、対象データ１０２をレコード単位で単語ごとに圧縮したときに、単語ごとの種類を表す分類情報を作成し、圧縮データ１０４に付与してもよい。そして、情報処理装置１００は、第１のキーワード１０１の入力を受け付けると、カウントマップ１０５と分類情報とに基づいて、所定の種類のキーワードの中から、第１のキーワード１０１に対応する第２のキーワード１０３を特定して、出力してもよい。これにより、情報処理装置１００は、第１のキーワード１０１の入力者に対して、単語の種類ごとに特定した第２のキーワード１０３を、分析支援データとして通知することができる。結果として、入力者は、出力結果に基づいて、第２のキーワード１０３を分析することができる。
【００２０】
また、情報処理装置１００は、第２のキーワード１０３とともに、第２のキーワード１０３が出現するレコードの数を出力してもよい。これにより、情報処理装置１００は、第１のキーワード１０１の入力者に対して、第２のキーワード１０３が出現するレコードの数を、分析支援データとして通知することができる。結果として、入力者は、出力結果に基づいて、第２のキーワード１０３を分析することができる。
【００２１】
また、情報処理装置１００は、第２のキーワード１０３とともに、第１のキーワード１０１から所定個数の単語以内に第２のキーワード１０３が出現するレコードの数を出力してもよい。これにより、情報処理装置１００は、第１のキーワード１０１の入力者に対して、第１のキーワード１０１から所定個数の単語以内に第２のキーワード１０３が出現するレコードの数を、分析支援データとして通知することができる。結果として、入力者は、出力結果に基づいて、第２のキーワード１０３を分析することができる。
【００２２】
また、情報処理装置１００は、第２のキーワード１０３とともに、第２のキーワード１０３が所定回数以上出現するレコードの数を出力してもよい。これにより、情報処理装置１００は、第１のキーワード１０１の入力者に対して、第２のキーワード１０３が所定回数以上出現するレコードの数を、分析支援データとして通知することができる。結果として、入力者は、出力結果に基づいて、第２のキーワード１０３を分析することができる。
【００２３】
また、情報処理装置１００は、対象データ１０２を静的辞書データを用いて圧縮して、圧縮データ１０４に、静的辞書データと、カウントマップ１０５と、を付与してもよい。また、情報処理装置１００は、圧縮に用いた静的辞書データを圧縮データ１０４を伸長するコンピュータも有している場合は、圧縮データ１０４に、静的辞書データのＩＤと、カウントマップ１０５と、を付与してもよい。
【００２４】
また、情報処理装置１００は、対象データ１０２にも静的辞書データにも含まれる単語について静的辞書データから情報を抽出して動的辞書データを作成して、対象データ１０２を動的辞書データを用いて圧縮してもよい。この場合、情報処理装置１００は、圧縮データ１０４に、動的辞書データと、カウントマップ１０５と、を付与することになる。これにより、情報処理装置１００は、静的辞書データを付与する場合に比べて、データ使用量を低減することができる。
【００２５】
以上により、情報処理装置１００は、具体的には、電子書籍の集合のうちの或る電子書籍を表示している場合に、利用者によって当該電子書籍に含まれるキーワードが選択されたときに、電子書籍の集合の中から関連するキーワードを高速に検索することができる。そして、情報処理装置１００は、検索したキーワードを含む書籍の数を、キーワードの数ごとにランキング形式で出力して、利用者のキーワードの分析作業を支援することができる。
【００２６】
また、図１の例では、情報処理システムは、一つの装置によって実現されたが、これに限らない。例えば、情報処理システムは、複数の装置によって実現されてもよい。具体的には、情報処理システムは、対象データ１０２を圧縮して、カウントマップ１０５を作成して付与する装置と、第１のキーワード１０１を受け付けて第２のキーワード１０３を特定して出力する装置と、によって実現されてもよい。
【００２７】
また、図１の例では、対象データ１０２は一つであったが、これに限らない。例えば、情報処理装置１００は、複数の対象データ１０２の各々の対象データ１０２における第１のキーワード１０１に対応する第２のキーワード１０３を特定して、特定した第２のキーワード１０３を統合して出力してもよい。また、情報処理装置１００は、各々の対象データ１０２における第２のキーワード１０３を含むレコードの数を計数して、計数した数を統合して出力してもよい。
【００２８】
（情報処理装置１００のハードウェア構成例）
図２は、実施の形態にかかる情報処理装置１００のハードウェア構成例を示すブロック図である。図２において、情報処理装置１００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２０１と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０３と、磁気ディスクドライブ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）２０４と、磁気ディスク２０５と、光ディスクドライブ２０６と、光ディスク２０７と、ディスプレイ２０８と、インターフェース（Ｉ／Ｆ：Ｉｎｔｅｒｆａｃｅ）２０９と、キーボード２１０と、マウス２１１と、スキャナ２１２と、プリンタ２１３と、を備えている。また、各構成部はバス２００によってそれぞれ接続されている。
【００２９】
ここで、ＣＰＵ２０１は、情報処理システムの全体の制御を司る。ＲＯＭ２０２は、ブートプログラムなどのプログラムを記憶している。ＲＡＭ２０３は、ＣＰＵ２０１のワークエリアとして使用される。磁気ディスクドライブ２０４は、ＣＰＵ２０１の制御にしたがって磁気ディスク２０５に対するデータのリード／ライトを制御する。磁気ディスク２０５は、磁気ディスクドライブ２０４の制御で書き込まれたデータを記憶する。
【００３０】
光ディスクドライブ２０６は、ＣＰＵ２０１の制御にしたがって光ディスク２０７に対するデータのリード／ライトを制御する。光ディスク２０７は、光ディスクドライブ２０６の制御で書き込まれたデータを記憶したり、光ディスク２０７に記憶されたデータをコンピュータに読み取らせたりする。
【００３１】
ディスプレイ２０８は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ２０８は、例えば、液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【００３２】
Ｉ／Ｆ２０９は、通信回線を通じてＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットなどのネットワーク２１４に接続され、このネットワーク２１４を介して他の装置に接続される。そして、Ｉ／Ｆ２０９は、ネットワーク２１４と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。Ｉ／Ｆ２０９には、例えば、モデムやＬＡＮアダプタなどを採用することができる。
【００３３】
キーボード２１０は、文字、数字、各種指示などの入力のためのキーを備え、データの入力を行う。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス２１１は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などを行う。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
【００３４】
スキャナ２１２は、画像を光学的に読み取り、情報処理装置１００内に画像データを取り込む。なお、スキャナ２１２は、ＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅａｄｅｒ）機能を持たせてもよい。また、プリンタ２１３は、画像データや文書データを印刷する。プリンタ２１３には、例えば、レーザプリンタやインクジェットプリンタを採用することができる。また、光ディスクドライブ２０６、光ディスク２０７、ディスプレイ２０８、キーボード２１０、マウス２１１、スキャナ２１２、およびプリンタ２１３の少なくともいずれか１つは、なくてもよい。
【００３５】
（圧縮ファイル３００のデータ構造）
次に、図３を用いて、圧縮データ１０４と、カウントマップ１０５と、を含む圧縮ファイル３００のデータ構造の一例について説明する。圧縮ファイル３００は、例えば、図２に示したＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶領域に記憶される。
【００３６】
図３は、圧縮ファイル３００のデータ構造の一例を示す説明図である。図３に示すように、圧縮ファイル３００は、ヘッダ部３０１と、圧縮データ１０４と、トレーラ部３０２と、を含む。
【００３７】
ヘッダ部３０１には、対象データ１０２の圧縮に用いた静的辞書データの識別子が記憶される。ヘッダ部３０１には、対象データ１０２の圧縮に用いた静的辞書データが記憶されてもよい。トレーラ部３０２には、対象データ１０２の圧縮に動的辞書データを用いた場合、対象データ１０２の圧縮に用いた動的辞書データが記憶される。また、トレーラ部３０２には、カウントマップ１０５が記憶される。
【００３８】
圧縮データ１０４は、可変長符号化方式を用いて、対象データ１０２を単語単位で圧縮したデータである。換言すれば、圧縮データ１０４は、単語を圧縮して得られた可変長符号の集合を含むデータである。圧縮データ１０４は、単語以外の単位で圧縮された部分を含んでもよいし、圧縮されていない部分を含んでもよい。
【００３９】
単語を圧縮して得られた可変長符号は、圧縮元の単語が動的辞書データに含まれる場合は、圧縮元の単語の動的辞書データに対する登録番号を符号化した符号である。例えば、動的辞書データに対する登録番号は、有効桁と有効整数とに符号化される。また、単語を圧縮して得られた可変長符号は、圧縮元の単語が静的辞書データに含まれる場合は、圧縮元の単語に対応付けて静的辞書データに記憶された符号である。例えば、静的辞書データに記憶された符号は、単語の出現頻度が多い順に、短い符号を割り当てて符号化される。
【００４０】
（静的辞書データ４００のデータ構造）
次に、図４を用いて、静的辞書データ４００のデータ構造の一例について説明する。静的辞書データ４００は、対象データ１０２の圧縮、および圧縮データ１０４の伸長に用いられるデータである。静的辞書データ４００は、例えば、図２に示したＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶領域に記憶される。
【００４１】
図４は、静的辞書データ４００のデータ構造の一例を示す説明図である。図４において、静的辞書データ４００は、辞書情報として、基礎単語項目に対応付けて、文字列長項目と、出現頻度項目と、符号長項目と、圧縮符号項目と、分類情報項目と、を有する。基礎単語項目には、符号化対象の基礎単語が記憶される。文字列長項目には、基礎単語の文字列長が記憶される。出現頻度項目には、基礎単語の対象データ１０２における出現回数が記憶される。符号長項目には、基礎単語に対応する符号の符号長が記憶される。圧縮符号項目には、基礎単語に対応する符号が記憶される。分類情報項目には、基礎単語の種類を表す分類情報が記憶される。
【００４２】
図４の例では、静的辞書データ４００には、基礎単語「ａｂｌｅ」に対応付けて、文字列長「４」と、出現頻度「７８５」と、符号長「９」と、符号「０１０１１・・・」と、分類情報「形容詞」と、が記憶される。
【００４３】
また、静的辞書データ４００は、フィルタ情報として、２グラム項目に対応付けて、ビットマップ項目と、ポインタ項目と、を有する。２グラム項目には、２文字を結合した文字列であって、基礎単語項目に記憶された単語の一部となる文字列が記憶される。ビットマップ項目には、２文字を結合した文字列が、基礎単語項目に記憶された単語の何文字目の部分となるかを表すデータが記憶される。ポインタ項目には、２グラム項目に記憶された２文字を結合した文字列を先頭部分に含む単語が記憶された基礎単語項目の場所を表すポインタが、単語の文字数ごとに記憶される。
【００４４】
図４の例では、静的辞書データ４００には、基礎単語「ａｂｌｅ」が記憶されている。このため、静的辞書データ４００には、２文字を連結した文字列「ａｂ」に対応付けて、基礎単語「ａｂｌｅ」の１文字目と２文字目とに含まれることを表すビットマップ「１＿０＿０＿０＿０」が記憶される。また、静的辞書データ４００には、２文字を連結した文字列「ａｂ」に対応付けて、文字列「ａｂ」を先頭部分に含む４文字の単語「ａｂｌｅ」が記憶された基礎単語項目の場所を表すポインタが記憶される。
【００４５】
また、静的辞書データ４００には、情報処理装置１００によって対象データ１０２を圧縮する際にカウントマップ１０５が結合される。カウントマップ１０５には、レコードごとの基礎単語単位の出現回数を表すマッピングデータが記憶される。
【００４６】
図４の例では、静的辞書データ４００には、アルファベットが記憶されているが、これに限らない。例えば、静的辞書データ４００には、アルファベット以外のひらがなや漢字が記憶されてもよい。また、図４の例では、静的辞書データ４００には、基礎単語に対応する符号が記憶されているが、これに限らない。例えば、静的辞書データ４００には、対象データ１０２の中で基礎単語が初めて出現した場所を表す情報が記憶されてもよい。
【００４７】
静的辞書データ４００としては、例えば、一般的な文書において出現頻度が高くなる基礎単語を記憶したものがある。また、静的辞書データ４００としては、例えば、特定の分野でのみ出現頻度が高くなる専門単語を記憶したものがあってもよい。また、静的辞書データ４００としては、基礎単語を結合した連結基礎単語を記憶したものがあってもよい。
【００４８】
対象データ１０２の圧縮においては、例えば、いずれかの静的辞書データ４００から対象データ１０２に出現する単語についての情報のみを抽出した動的辞書データを用いてもよい。また、対象データ１０２の圧縮においては、例えば、基礎単語を記憶した静的辞書データ４００と、連結基礎単語を記憶した静的辞書データ４００から対象データ１０２に出現する単語についての情報のみを抽出した動的辞書データと、を用いてもよい。
【００４９】
（カウントマップ１０５のデータ構造）
次に、図５を用いて、カウントマップ１０５のデータ構造の一例について説明する。カウントマップ１０５は、例えば、図２に示したＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶領域に記憶される。
【００５０】
図５は、カウントマップ１０５のデータ構造の一例を示す説明図である。図５に示すように、カウントマップ１０５は、各々の単語と、各々の単語に対応付けたレコードごとの出現回数を表すマッピングデータと、を含む。
【００５１】
マッピングデータは、例えば、レコードごとに４ビットのデータを割り振って、レコードごとの出現回数を２進数を用いて表現したデータである。図５の例では、単語「ａ」に対応付けたマッピングデータのうちの先頭４ビットのデータ「１０１１」は、単語「ａ」のレコード１における出現回数「１１」を表す。
【００５２】
情報処理装置１００は、カウントマップ１０５を参照することによって、第１のキーワード１０１とともに同一のレコードに所定回数以上出現する第２のキーワード１０３を特定することができる。また、情報処理装置１００は、カウントマップ１０５を参照することによって、第１のキーワード１０１と第２のキーワード１０３とがともに出現するレコードを特定することができる。情報処理装置１００は、例えば、第１のキーワード１０１の出現回数が１回以上であるレコードの各々のキーワードの出現回数に基づいて、第１のキーワード１０１とともに同一のレコードに所定回数以上出現する第２のキーワード１０３を特定することができる。
【００５３】
（動的辞書データのデータ構造）
次に、動的辞書データのデータ構造の一例について説明する。動的辞書データは、静的辞書データ４００から対象データ１０２に出現する単語についての情報のみを抽出したものであって、対象データ１０２の圧縮、および圧縮データ１０４の伸長に用いられるデータである。動的辞書データは、例えば、図２に示したＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶領域に記憶される。
【００５４】
動的辞書データは、静的辞書データ４００と同様に、辞書情報として、基礎単語項目に対応付けて、文字列長項目と、出現頻度項目と、符号長項目と、圧縮符号項目と、分類情報項目と、を有する。基礎単語項目には、符号化対象の連結基礎単語、または専門単語などが記憶される。文字列長項目には、連結基礎単語などの文字列長が記憶される。出現頻度項目には、連結基礎単語などの対象データ１０２における出現回数が記憶される。符号長項目には、連結基礎単語などに対応する符号の符号長が記憶される。圧縮符号項目には、連結基礎単語などに対応する符号が記憶される。分類情報項目には、連結基礎単語などの種類を表す分類情報が記憶される。
【００５５】
また、動的辞書データは、静的辞書データ４００と同様に、フィルタ情報として、２グラム項目に対応付けて、ビットマップ項目と、ポインタ項目と、を有する。２グラム項目には、２文字を結合した文字列であって、基礎単語項目に記憶された単語の一部となる文字列が記憶される。ビットマップ項目には、２文字を結合した文字列が、基礎単語項目に記憶された単語の何文字目の部分となるかを表すデータが記憶される。ポインタ項目には、２グラム項目に記憶された２文字を結合した文字列を先頭部分に含む単語が記憶された基礎単語項目の場所を表すポインタが、単語の文字数ごとに記憶される。
【００５６】
また、動的辞書データには、静的辞書データ４００と同様に、情報処理装置１００によって対象データ１０２を圧縮する際にカウントマップ１０５が結合される。カウントマップ１０５には、レコードごとの連結基礎単語などの単位での出現回数を表すマッピングデータが記憶される。
【００５７】
（情報処理システムの機能的構成例）
次に、図６を用いて、情報処理システムの機能的構成例について説明する。図６は、情報処理システムの機能的構成例を示すブロック図である。情報処理システムは、抽出部６０１と、作成部６０２と、特定部６０３と、計数部６０４と、算出部６０５と、出力部６０６と、を含む。
【００５８】
抽出部６０１と、作成部６０２と、特定部６０３と、計数部６０４と、算出部６０５と、出力部６０６は、例えば、図２に示したＲＯＭ２０２、ＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶装置に記憶されたプログラムをＣＰＵ２０１に実行させることにより、または、Ｉ／Ｆ２０９により、その機能を実現する。
【００５９】
情報処理装置１００は、対象データ１０２に基づいて、カウントマップ１０５を作成して、圧縮データ１０４に付与する動作を行うことができる。以下の説明では、カウントマップ１０５を作成して、圧縮データ１０４に付与する動作を、「第１の動作」と表記する場合がある。また、情報処理装置１００は、第２のキーワード１０３を特定する動作を行うことができる。以下の説明では、第２のキーワード１０３を特定する動作を、「第２の動作」と表記する場合がある。
【００６０】
＜第１の動作＞
まず、第１の動作について説明する。第１の動作は、カウントマップ１０５を作成して、圧縮データ１０４に付与する動作である。第１の動作は、抽出部６０１と、作成部６０２と、によって実現される。
【００６１】
抽出部６０１は、対象データ１０２から所定の単語集合に含まれる単語と一致するものを抽出する。ここで、対象データ１０２とは、文書や文書の集合である。対象データ１０２は、複数のレコードに分割されている。レコードとは、対象データ１０２が文書である場合は、文書に含まれるセクションである。また、レコードとは、対象データ１０２が文書の集合である場合は、文書の集合に含まれる文書である。所定の単語集合とは、符号化対象として、静的辞書データ４００に記憶された単語集合である。
【００６２】
抽出部６０１は、例えば、対象データ１０２に含まれる単語のうち、静的辞書データ４００に記憶された単語集合に含まれる単語と一致するものを抽出する。ここで、静的辞書データ４００とは、単語と、当該単語を符号化した符号と、を対応付けて記憶したデータである。これにより、抽出部６０１は、符号化対象の単語を抽出することができる。抽出されたデータは、例えば、ＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶領域に記憶される。
【００６３】
作成部６０２は、対象データ１０２をレコード単位で単語ごとに圧縮する際に、対象データ１０２のレコード単位で単語ごとの出現回数を表す回数データを作成して、対象データ１０２を圧縮した圧縮データ１０４に付与する。ここで、回数データとは、上述したカウントマップ１０５である。作成部６０２は、例えば、対象データ１０２に含まれる単語を、静的辞書データ４００に基づいて符号に置換して、圧縮データ１０４を作成する。この際、作成部６０２は、符号に置換した単語の出現回数を計数して、カウントマップ１０５を作成して、圧縮データ１０４に付与する。これにより、作成部６０２は、対象データ１０２を圧縮する際に、キーワードの特定に用いられる静的辞書データ４００に含まれる単語ごとの出現回数を記憶したカウントマップ１０５を作成して、圧縮データ１０４とともに記憶することができる。
【００６４】
また、作成部６０２は、対象データ１０２をレコード単位で単語ごとに圧縮する際に、対象データ１０２のレコードごとに抽出部６０１によって抽出された単語単位の出現回数を表す回数データを作成してもよい。そして、作成部６０２は、作成した回数データを、対象データ１０２を圧縮した圧縮データ１０４に付与してもよい。作成部６０２は、例えば、対象データ１０２に含まれる単語を、動的辞書データに基づいて符号に置換して、圧縮データ１０４を作成する。この際、作成部６０２は、符号に置換した単語の出現回数を計数して、カウントマップ１０５を作成して、圧縮データ１０４に付与する。これにより、作成部６０２は、対象データ１０２を圧縮する際に、キーワードの特定に用いられる動的辞書データに含まれる単語ごとの出現回数を記憶したカウントマップ１０５を作成して、圧縮データ１０４とともに記憶することができる。
【００６５】
また、作成部６０２は、単語ごとの種類を表す分類データを作成して、圧縮データ１０４に付与してもよい。作成部６０２は、例えば、静的辞書データ４００に単語ごとに対応付けて当該単語の種類が記憶されている場合、静的辞書データ４００に基づいて、符号に置換した単語ごとの種類を記憶する分類データを作成して、圧縮データ１０４に付与する。これにより、作成部６０２は、対象データ１０２を圧縮する際に、キーワードの特定に用いられる分類データを作成して、圧縮データ１０４とともに記憶することができる。
【００６６】
また、作成部６０２は、単語ごとの圧縮結果を表す符号データを作成して、圧縮データ１０４に付与してもよい。作成部６０２は、例えば、圧縮データ１０４に、静的辞書データ４００を付与してもよい。また、作成部６０２は、圧縮データ１０４に、静的辞書データ４００の基礎単語項目と、圧縮符号項目と、分類情報項目と、の部分のみを付与してもよい。
【００６７】
また、作成部６０２は、圧縮データ１０４に、抽出部６０１によって抽出された静的辞書データ４００の単語と一致するものを記憶する動的辞書データを作成して、圧縮データ１０４に動的辞書データを付与してもよい。また、作成部６０２は、圧縮データ１０４に、動的辞書データの基礎単語項目と、圧縮符号項目と、分類情報項目と、の部分のみを付与してもよい。
【００６８】
これにより、作成部６０２は、圧縮データ１０４の伸長に用いられる静的辞書データ４００および動的辞書データを、圧縮データ１０４とともに記憶することができる。作成されたデータは、例えば、ＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶領域に記憶される。
【００６９】
＜第２の動作＞
次に、第２の動作について説明する。第２の動作は、第２のキーワード１０３を特定する動作である。第２の動作は、特定部６０３と、計数部６０４と、算出部６０５と、出力部６０６と、によって実現される。
【００７０】
特定部６０３は、圧縮データ１０４に付与された回数データに基づいて、対象データ１０２に対する検索条件となる第１の文字列に対応する第２の文字列を特定する。第１の文字列とは、情報処理装置１００の利用者によって入力されたキーワードである。特定部６０３は、例えば、第１のキーワード１０１の入力を受け付ける。次に、特定部６０３は、圧縮ファイル３００からカウントマップ１０５を取得する。
【００７１】
そして、特定部６０３は、取得したカウントマップ１０５に基づいて、第１のキーワード１０１とともに、同一のレコードに所定回数以上出現する第２のキーワード１０３を特定する。また、特定部６０３は、取得したカウントマップ１０５に基づいて、第１のキーワード１０１に共起される第２のキーワード１０３を特定してもよい。
【００７２】
これにより、特定部６０３は、圧縮データ１０４を伸長することなく、第１のキーワード１０１に対応する第２のキーワード１０３を特定することができ、多様なキーワードに対処することができる。
【００７３】
また、特定部６０３は、圧縮データ１０４に付与された回数データおよび分類データに基づいて、対象データ１０２に対する検索条件となる分類と第１の文字列とに対応する第２の文字列を特定してもよい。特定部６０３は、例えば、情報処理装置１００の利用者から検索条件となる特定の種類の入力を受け付ける。次に、特定部６０３は、カウントマップ１０５と分類データとに基づいて、特定の種類のキーワードのうち、第１のキーワード１０１とともに、同一のレコードに所定回数以上出現する第２のキーワード１０３を特定する。
【００７４】
また、特定部６０３は、カウントマップ１０５と分類データとに基づいて、特定の種類のキーワードのうち、第１のキーワード１０１に共起される第２のキーワード１０３を特定してもよい。これにより、特定部６０３は、第１のキーワード１０１の入力者に対して、単語の種類ごとに特定した第２のキーワード１０３を、分析支援データとして通知することができる。
【００７５】
計数部６０４は、特定部６０３によって特定された第２の文字列を含む対象データ１０２のうちのレコードの数を計数する。計数部６０４は、例えば、カウントマップ１０５に基づいて、第２のキーワード１０３を含む対象データ１０２のうちのレコードの数を計数する。これにより、計数部６０４は、第１のキーワード１０１の入力者に対して、第２のキーワード１０３が出現するレコードの数を、分析支援データとして通知することができる。
【００７６】
計数部６０４は、圧縮データ１０４と、圧縮データ１０４に付与された辞書データに基づいて、第１の文字列から所定個数の単語以内に特定部６０３によって特定された第２の文字列が出現する対象データ１０２のうちのレコードの数を計数する。計数部６０４は、例えば、静的辞書データ４００と動的辞書データとに基づいて、第１のキーワード１０１に対応する第１の符号と、第２のキーワード１０３に対応する第２の符号と、を特定する。次に、計数部６０４は、第１の符号から所定個数の単語以内に第２の符号が出現するレコードの数を計数する。これにより、計数部６０４は、第１のキーワード１０１の入力者に対して、第１のキーワード１０１によって共起されて第２のキーワード１０３が出現するレコードの数を、分析支援データとして通知することができる。
【００７７】
計数部６０４は、圧縮データ１０４に付与された回数データに基づいて、特定部６０３によって特定された第２の文字列が所定回数以上出現する対象データ１０２のうちのレコードの数を計数する。計数部６０４は、例えば、カウントマップ１０５に基づいて、第２のキーワード１０３が所定回数以上出現する対象データ１０２のうちのレコードの数を計数する。これにより、計数部６０４は、第１のキーワード１０１の入力者に対して、第２のキーワード１０３が所定回数以上出現するレコードの数を、分析支援データとして通知することができる。
【００７８】
算出部６０５は、圧縮データ１０４に付与された回数データに基づいて、第２の文字列の重要度を算出する。算出部６０５は、例えば、カウントマップ１０５に基づいて、第２のキーワード１０３について、ＴＦ−ＩＤＦを算出する。算出結果は、例えば、ＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶領域に記憶される。これにより、算出部６０５は、第１のキーワード１０１の入力者に対して、第２のキーワード１０３の特徴指数を、分析支援データとして通知することができる。
【００７９】
出力部６０６は、特定部６０３によって特定された第２のキーワード１０３を出力する。また、出力部６０６は、特定部６０３によって特定された第２のキーワード１０３と、計数部６０４によって計数されたレコードの数と、を対応付けて出力してもよい。また、出力部６０６は、特定部６０３によって特定された第２のキーワード１０３と、算出部６０５によって算出された第２のキーワード１０３の重要度と、を対応付けて出力してもよい。出力形式としては、例えば、ディスプレイ２０８への表示、プリンタ２１３への印刷出力、Ｉ／Ｆ２０９による外部装置への送信がある。また、ＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶領域に記憶することとしてもよい。
【００８０】
（情報処理装置１００の圧縮処理の一例）
次に、図７および図８を用いて、情報処理装置１００の圧縮処理の一例について説明する。
【００８１】
図７および図８は、情報処理装置１００の圧縮処理の一例を示す説明図である。図７に示すように、情報処理装置１００は、木構造を有する基礎単語についての静的辞書データ４００のうちのフィルタ情報をビットフィルタとして、対象データ１０２から記号を除外して、対象データ１０２のうちの基礎単語をレコードごとに圧縮する。ビットフィルタについては従来技術のため説明を省略する。
【００８２】
次に、情報処理装置１００は、木構造を有する連結基礎単語についての静的辞書データ４００のうちのフィルタ情報をビットフィルタとして、対象データから記号・基礎単語を除外して、対象データ１０２のうちの連結基礎単語についての動的辞書データを作成する。そして、情報処理装置１００は、動的辞書データに基づいて、３面化スライド窓を用いて、対象データ１０２をレコード単位で単語ごとに圧縮する。３面化スライド窓については従来技術のため説明を省略する。これにより、情報処理装置１００は、圧縮ファイル３００を作成することができる。
【００８３】
図８に示すように、情報処理装置１００は、動的辞書データ８００を作成した場合、静的辞書データ４００に動的辞書データ８００を追加して記憶する。動的辞書データ８００は、図４に示した静的辞書データ４００と同様のデータ構造となる別の静的辞書データ４００のうちの対象データ１０２に含まれる連結基礎単語についての情報を抽出したデータである。そして、情報処理装置１００は、静的辞書データ４００に動的辞書データ８００を追加して、圧縮データ１０４に付与して、圧縮ファイル３００を作成する。
【００８４】
また、情報処理装置１００は、圧縮に用いた静的辞書データ４００を圧縮データ１０４を伸長するコンピュータも有している場合は、圧縮データ１０４に、静的辞書データ４００のＩＤのみを付与してもよい。この場合は、情報処理装置１００は、静的辞書データ４００とは別に動的辞書データ８００を作成して、圧縮データ１０４に付与して、圧縮ファイル３００を作成する。これにより、情報処理装置１００は、圧縮ファイル３００のサイズを低減することができる。
【００８５】
（情報処理装置１００の特定処理の一例）
次に、図９および図１０を用いて、情報処理装置１００の特定処理の一例について説明する。
【００８６】
図９および図１０は、情報処理装置１００の特定処理の一例を示す説明図である。図９において、情報処理装置１００は、所定の単語の種類であって対象データ１０２に対する検索条件となる第１のキーワード１０１に対応する第２のキーワード１０３を特定する。
【００８７】
情報処理装置１００は、例えば、第１のキーワード１０１「インフルエンザ治療薬」の入力を受け付ける。次に、情報処理装置１００は、単語の種類が「副作用」である単語のうち、第１のキーワード１０１「インフルエンザ治療薬」と同一のレコードに出現する第２のキーワード１０３「痙攣」、「異常行動」、および「幻覚」などを特定する。
【００８８】
そして、情報処理装置１００は、各々のキーワードが含まれるレコードの数を計数して、各々のキーワードの特徴指数を算出して、各々のキーワードとともに出力する。特徴指数Ｗｉｊは、例えば、ＴＦ−ＩＤＦであって、Ｗｉｊ＝ｔｆｉｊ・ｉｄｆｉによって算出される。ここで、ｔｆｉｊ＝文書Ｄｊの単語ｉの出現回数／文書Ｄｊの総単語数である。ｉｄｆｉ＝ｌｏｇ（文書の総数／単語ｉを含む文書の数）である。これにより、情報処理装置１００は、圧縮データ１０４を伸長することなく、第２のキーワード１０３の特徴指数を算出することができる。
【００８９】
図１０において、情報処理装置１００は、第１のキーワード１０１「インフルエンザ治療薬」に対応する第１の符号「０００１」を取得する。次に、情報処理装置１００は、第２のキーワード１０３「異常行動」に対応する第２の符号「０１００」を取得する。そして、情報処理装置１００は、カウントマップから第１のキーワード１０１と第２のキーワード１０３とが出現するレコード３を特定する。
【００９０】
次に、情報処理装置１００は、レコード３における第１の符号から第２の符号までの単語の数「３」を計数して、第１の符号から所定個数の単語以内に第２の符号が出現するかを判定する。単語の数は、例えば、第１の符号から第２の符号までの圧縮符号の数を計数することにより計数される。また、単語の数は、例えば、第１の符号から第２の符号までの圧縮符号と圧縮されていない単語の数とを計数することにより計数されてもよい。そして、情報処理装置１００は、同様にして、第１の符号から所定個数の単語以内に第２の符号が出現するレコードを計数する。これにより、情報処理装置１００は、圧縮データ１０４を伸長することなく、第１のキーワード１０１に第２のキーワード１０３が共起されているレコードを特定することができる。
【００９１】
（情報処理装置１００の出力結果の一例）
次に、図１１を用いて、情報処理装置１００の出力結果の一例について説明する。
【００９２】
図１１は、情報処理装置１００の出力結果の一例を示す説明図である。図１１において、情報処理装置１００は、第１のキーワード１０１の入力を受け付けると、第２のキーワード１０３を特定して、第２のキーワード１０３を含むレコードの数を計数し、および第２のキーワード１０３の特徴指数を算出して、出力する。
【００９３】
図１１の例では、情報処理装置１００は、第１のキーワード１０１「インフルエンザ治療薬」の入力を受け付ける。次に、情報処理装置１００は、単語の種類が「副作用」であって、第１のキーワード１０１「インフルエンザ治療薬」に対応する第２のキーワード１０３「痙攣」、「異常行動」、および「幻覚」などを特定する。そして、情報処理装置１００は、各々のキーワードが含まれるレコードの数を計数して、各々のキーワードの特徴指数を算出して、各々のキーワードとともに出力する。
【００９４】
また、情報処理装置１００は、単語の種類が「症状」であって、第１のキーワード１０１に対応する第２のキーワード１０３を特定する。そして、情報処理装置１００は、各々のキーワードが含まれるレコードの数を計数して、各々のキーワードの特徴指数を算出して、各々のキーワードとともに出力する。
【００９５】
また、情報処理装置１００は、単語の種類が「薬名」であって、第１のキーワード１０１に対応する第２のキーワード１０３を特定する。そして、情報処理装置１００は、各々のキーワードが含まれるレコードの数を計数して、各々のキーワードの特徴指数を算出して、各々のキーワードとともに出力する。
【００９６】
また、情報処理装置１００は、各々のキーワードから、いずれかのキーワードが選択されると、選択されたキーワードについて、出現回数ごとのレコードの数を計数して、出現回数ごとのキーワードの特徴指数を算出して、出力する。
【００９７】
また、情報処理装置１００は、各々のキーワードから、いずれかのキーワードが選択されると、選択されたキーワードについて、第１のキーワード１０１から第２のキーワード１０３までの単語の個数ごとのレコードの数を計数して、出力する。また、情報処理装置１００は、選択されたキーワードについて、第１のキーワード１０１から第２のキーワード１０３までの単語の個数ごとのキーワードの特徴指数を算出して、出力する。
【００９８】
これにより、情報処理装置１００は、第１のキーワード１０１の入力者に対して、第２のキーワード１０３に関するレコードの数や特徴指数を、分析支援データとして通知することができる。結果として、入力者は、出力結果に基づいて、第２のキーワード１０３を分析することができる。
【００９９】
（情報処理装置１００の圧縮処理手順の一例）
次に、図１２を用いて、情報処理装置１００の圧縮処理手順の一例について説明する。
【０１００】
図１２は、情報処理装置１００の圧縮処理手順の一例を示すフローチャートである。図１２において、情報処理装置１００は、対象データ１０２に出現する単語と、当該単語の分類情報と、を静的辞書データ４００から抽出する（ステップＳ１２０１）。
【０１０１】
次に、情報処理装置１００は、抽出した単語ごとに符号を割り当てる（ステップＳ１２０２）。そして、情報処理装置１００は、抽出した単語と、単語に割り当てた符号と、抽出した単語の分類情報と、を対応付けた動的辞書データ８００を作成する（ステップＳ１２０３）。
【０１０２】
次に、情報処理装置１００は、静的辞書データ４００と、動的辞書データ８００と、に基づいて、対象データ１０２をレコード単位で単語ごとに符号化して、対象データ１０２を圧縮する（ステップＳ１２０４）。そして、情報処理装置１００は、静的辞書データ４００のＩＤを含むヘッダ部３０１を作成する（ステップＳ１２０５）。
【０１０３】
次に、情報処理装置１００は、動的辞書データ８００を含むトレーラ部３０２を作成する（ステップＳ１２０６）。そして、情報処理装置１００は、ヘッダ部３０１と、圧縮データ１０４と、トレーラ部３０２と、を結合して、圧縮ファイル３００を作成し（ステップＳ１２０７）、圧縮処理を終了する。
【０１０４】
これにより、情報処理装置１００は、対象データ１０２の圧縮の際に、対象データ１０２から第２のキーワード１０３を特定するために用いられるカウントマップ１０５を作成しておくことができる。
【０１０５】
（情報処理装置１００の特定処理手順の一例）
次に、図１３を用いて、情報処理装置１００の特定処理手順の一例について説明する。
【０１０６】
図１３は、情報処理装置１００の特定処理手順の一例を示すフローチャートである。図１３において、情報処理装置１００は、対象データ１０２に対する検索ワードとなる第１のキーワード１０１の入力を受け付ける（ステップＳ１３０１）。次に、情報処理装置１００は、検索条件を取得する（ステップＳ１３０２）。
【０１０７】
そして、情報処理装置１００は、圧縮データ１０４に付与されたカウントマップ１０５を取得する（ステップＳ１３０３）。次に、情報処理装置１００は、検索条件と、カウントマップ１０５と、に基づいて、第１のキーワード１０１に対応する第２のキーワード１０３を特定する（ステップＳ１３０４）。
【０１０８】
そして、情報処理装置１００は、第２のキーワード１０３が所定回数以上出現するレコードの数を計数する（ステップＳ１３０５）。次に、情報処理装置１００は、第１のキーワード１０１から所定個数の単語以内に第２のキーワード１０３が出現するレコードの数を計数する（ステップＳ１３０６）。
【０１０９】
そして、情報処理装置１００は、第２のキーワード１０３の特徴指数を算出する（ステップＳ１３０７）。次に、情報処理装置１００は、第２のキーワード１０３と、計数したレコードの数と、算出した特徴指数と、を出力する（ステップＳ１３０８）。
【０１１０】
そして、情報処理装置１００は、特定処理を終了する。これにより、情報処理装置１００は、圧縮データ１０４を伸長することなく、第１のキーワード１０１に対応する第２のキーワード１０３を特定することができ、キーワードの特定処理を効率化することができる。
【０１１１】
以上説明したように、情報処理システムによれば、対象データ１０２をレコード単位で単語ごとに圧縮する際にカウントマップ１０５を作成して圧縮データ１０４に付与することができる。これにより、情報処理システムは、圧縮データ１０４を伸長することなく、第１のキーワード１０１に対応する第２のキーワード１０３を特定することができ、多様なキーワードに対処することができる。そして、情報処理システムは、圧縮データ１０４を伸長しなくても第２のキーワード１０３を特定することができ、第２のキーワード１０３の特定処理を効率化することができる。
【０１１２】
また、情報処理システムは、圧縮データ１０４を伸長しなくても第２のキーワード１０３を特定することができ、記憶装置のサイズに制限がある場合であっても第２のキーワード１０３の特定処理を行うことができる。また、情報処理システムは、対象データ１０２を圧縮する際に、対象データ１０２の分析に用いるカウントマップ１０５などの情報を作成することにより、第１のキーワード１０１が入力されてから第２のキーワード１０３が特定されるまでの時間を短縮することができる。
【０１１３】
また、情報処理システムは、圧縮データ１０４にカウントマップ１０５を付与することにより、圧縮データ１０４とカウントマップ１０５とを対応付けて容易に管理することができる。また、情報処理システムは、圧縮データ１０４にカウントマップ１０５を付与することにより、圧縮データ１０４とカウントマップ１０５とを別々に管理する場合に比べて、圧縮データ１０４とカウントマップ１０５とに用いる記憶領域のサイズを低減することができる。
【０１１４】
また、情報処理システムによれば、単語ごとの種類を表す分類データを作成して、圧縮データ１０４に付与することができる。これにより、情報処理システムは、第１のキーワード１０１の入力者に対して、単語の種類ごとに特定した第２のキーワード１０３を、分析支援データとして通知することができる。結果として、入力者は、出力結果に基づいて、第２のキーワード１０３を分析することができる。
【０１１５】
また、情報処理システムによれば、第２のキーワード１０３とともに、第２のキーワード１０３が出現するレコードの数を出力することができる。これにより、情報処理システムは、第１のキーワード１０１の入力者に対して、第２のキーワード１０３が出現するレコードの数を、分析支援データとして通知することができる。結果として、入力者は、出力結果に基づいて、第２のキーワード１０３を分析することができる。
【０１１６】
また、情報処理システムによれば、第２のキーワード１０３とともに、第１のキーワード１０１から所定個数の単語以内に第２のキーワード１０３が出現するレコードの数を出力することができる。これにより、情報処理システムは、第１のキーワード１０１の入力者に対して、第１のキーワード１０１から所定個数の単語以内に第２のキーワード１０３が出現するレコードの数を、分析支援データとして通知することができる。結果として、入力者は、出力結果に基づいて、第２のキーワード１０３を分析することができる。
【０１１７】
また、情報処理システムによれば、第２のキーワード１０３とともに、第２のキーワード１０３が所定回数以上出現するレコードの数を出力することができる。これにより、情報処理システムは、第１のキーワード１０１の入力者に対して、第２のキーワード１０３が所定回数以上出現するレコードの数を、分析支援データとして通知することができる。結果として、入力者は、出力結果に基づいて、第２のキーワード１０３を分析することができる。
【０１１８】
また、情報処理システムによれば、対象データ１０２を静的辞書データ４００を用いて圧縮して、圧縮データ１０４に、静的辞書データ４００と、カウントマップ１０５と、を付与することができる。また、情報処理システムによれば、対象データ１０２を静的辞書データ４００と動的辞書データ８００とを用いて圧縮して、圧縮データ１０４に、静的辞書データ４００と、動的辞書データ８００と、カウントマップ１０５と、を付与してもよい。これにより、情報処理システムは、データ使用量を低減することができる。
【０１１９】
また、情報処理システムによれば、第２のキーワード１０３についての特徴指数を算出することができる。これにより、情報処理システムは、第１のキーワード１０１の入力者に対して、第２のキーワード１０３についての特徴指数を、分析支援データとして通知することができる。結果として、入力者は、出力結果に基づいて、第２のキーワード１０３を分析することができる。
【０１２０】
ここで、同時に入力されたキーワードの組み合わせを蓄積するデータベースを参照して、第１のキーワード１０１と同時に入力された他のキーワードを第２のキーワード１０３として特定する場合が考えられる。しかしながら、この場合、対象データ１０２の内容とは関係のないキーワードが特定されてしてしまうことがある。一方で、情報処理システムによれば、対象データ１０２の内容に応じたカウントマップ１０５を作成して圧縮データ１０４に付与することにより、対象データ１０２の内容に則した第２のキーワード１０３を特定することができる。
【０１２１】
なお、本実施の形態で説明した情報処理方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本情報処理プログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また本情報処理プログラムは、インターネット等のネットワークを介して配布してもよい。
【０１２２】
上述した実施の形態に関し、さらに以下の付記を開示する。
【０１２３】
（付記１）対象データをレコード単位で単語ごとに圧縮する際に、前記対象データのレコード単位で前記単語ごとの出現回数を表す回数データを作成して、前記対象データを圧縮した圧縮データに付与する作成部と、
前記圧縮データに付与された前記回数データに基づいて、前記対象データに対する検索条件となる第１の文字列に対応する第２の文字列を特定する特定部と、
を有することを特徴とする情報処理システム。
【０１２４】
（付記２）前記作成部は、
前記単語ごとの種類を表す分類データを作成して、前記圧縮データに付与し、
前記特定部は、
前記圧縮データに付与された前記回数データおよび前記分類データに基づいて、前記対象データに対する検索条件となる分類と前記第１の文字列とに対応する第２の文字列を特定することを特徴とする付記１に記載の情報処理システム。
【０１２５】
（付記３）前記特定部によって特定された前記第２の文字列を含む前記対象データのうちのレコードの数を計数する計数部を有することを特徴とする付記１または２に記載の情報処理システム。
【０１２６】
（付記４）前記作成部は、
前記単語ごとの圧縮結果を表す符号データを作成して、前記圧縮データに付与し、
前記計数部は、
前記圧縮データと、前記圧縮データに付与された前記符号データに基づいて、前記第１の文字列から所定個数の単語以内に前記特定部によって特定された前記第２の文字列が出現する前記対象データのうちのレコードの数を計数することを特徴とする付記３に記載の情報処理システム。
【０１２７】
（付記５）前記計数部は、
前記圧縮データに付与された前記回数データに基づいて、前記特定部によって特定された前記第２の文字列が所定回数以上出現する前記対象データのうちのレコードの数を計数することを特徴とする付記３または４に記載の情報処理システム。
【０１２８】
（付記６）前記対象データから所定の単語集合に含まれる単語と一致するものを抽出する抽出部を有し、
前記作成部は、
前記対象データをレコード単位で単語ごとに圧縮する際に、前記対象データのレコードごとに前記抽出部によって抽出された前記単語単位の出現回数を表す回数データを作成して、前記対象データを圧縮した圧縮データに付与することを特徴とする付記１〜５のいずれか一つに記載の情報処理システム。
【０１２９】
（付記７）前記圧縮データに付与された前記回数データに基づいて、前記第２の文字列の重要度を算出する算出部を有することを特徴とする付記１〜６のいずれか一つに記載の情報処理システム。
【０１３０】
（付記８）コンピュータが、
対象データをレコード単位で単語ごとに圧縮する際に、前記対象データのレコード単位で前記単語ごとの出現回数を表す回数データを作成して、前記対象データを圧縮した圧縮データに付与し、
前記圧縮データに付与された前記回数データに基づいて、前記対象データに対する検索条件となる第１の文字列に対応する第２の文字列を特定する、
処理を実行することを特徴とする情報処理方法。
【０１３１】
（付記９）コンピュータに、
対象データをレコード単位で単語ごとに圧縮する際に、前記対象データのレコード単位で前記単語ごとの出現回数を表す回数データを作成して、前記対象データを圧縮した圧縮データに付与し、
前記圧縮データに付与された前記回数データに基づいて、前記対象データに対する検索条件となる第１の文字列に対応する第２の文字列を特定する、
処理を実行させることを特徴とする情報処理プログラム。
【符号の説明】
【０１３２】
１００  情報処理装置
６０１  抽出部
６０２  作成部
６０３  特定部
６０４  計数部
６０５  算出部
６０６  出力部
【図１】
2015026350.tif 000003
【図２】
2015026350.tif 000004
【図３】
2015026350.tif 000005
【図４】
2015026350.tif 000006
【図５】
2015026350.tif 000007
【図６】
2015026350.tif 000008
【図７】
2015026350.tif 000009
【図８】
2015026350.tif 000010
【図９】
2015026350.tif 000011
【図１０】
2015026350.tif 000012
【図１１】
2015026350.tif 000013
【図１２】
2015026350.tif 000014
【図１３】
2015026350.tif 000015