(57)【要約】【課題】符号のレベルで類義語の関連付けを行うことにより、類義語検索を行う場合であっても、基本形の検索と同様に、一走査で検索を行うこと。【解決手段】データ検索装置１００は、符号化文書に対する検索文字列を受け付ける。データ検索装置１００は、複数の単語について、符号化文書の符号化規則による単語の符号化データと単語の基本形と基本形に関連する関連単語とを対応付けた関連情報を参照する。データ検索装置１００は、検索文字列の基本形、および、基本形の関連単語に関する複数の符号を取得する。データ検索装置１００は、複数の符号を検索対象に設定したオートマトンを利用して、符号化文書に対する検索を行う。【選択図】図８
2018060443.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに
符号化文書に対する検索文字列を受け付け、
複数の単語について、前記符号化文書の符号化規則による前記単語の符号化データと前記単語の基本形と前記基本形に関連する関連単語とを対応付けた関連情報を参照し、
前記検索文字列の基本形、および、前記基本形の関連単語に関する複数の符号を取得し、
前記複数の符号を検索対象に設定したオートマトンを利用して、前記符号化文書に対する検索を行う
処理を実行させる符号化データ検索プログラム。
【請求項２】
前記基本形に関連する関連単語は、前記基本形の類義語または前記基本形と同音・同意味の語句であり前記基本形と異なる文字表記の表記揺れ単語であることを特徴とする請求項１に記載の符号化データ検索プログラム。
【請求項３】
前記類義語を検索対象とするのか、前記表記揺れ単語を検索対象とするのかを指示する指示情報を更に受け付け、前記符号を取得する処理は、前記指示情報を基にして、基本形の類義語または表記揺れ単語に対応する複数の符号を取得することを特徴とする請求項２に記載の符号化データ検索プログラム。
【請求項４】
前記検索する処理は、前記符号化文書の符号と、前記オートマトンとを比較し、オートマトンにヒットした符号を検索対象の符号として特定することを特徴とする請求項１、２または３に記載の符号化データ検索プログラム。
【請求項５】
コンピュータが実行する符号化データ検索方法であって、
符号化文書に対する検索文字列を受け付け、
複数の単語について、前記符号化文書の符号化規則による前記単語の符号化データと前記単語の基本形と前記基本形に関連する関連単語とを対応付けた関連情報を参照し、
前記検索文字列の基本形、および、前記基本形の関連単語に関する複数の符号を取得し、
前記複数の符号を検索対象に設定したオートマトンを利用して、前記符号化文書に対する検索を行う
処理を実行する符号化データ検索方法。
【請求項６】
符号化文書に対する検索文字列を受け付ける受付部と、
複数の単語について、前記符号化文書の符号化規則による前記単語の符号化データと前記単語の基本形と前記基本形に関連する関連単語とを対応付けた関連情報を参照し、前記検索文字列の基本形、および、前記基本形の関連単語に関する複数の符号を取得し、前記複数の符号を検索対象としてオートマトンに設定する設定部と、
前記オートマトンを利用して、前記符号化文書に対する検索を行う検索部と
を有する符号化データ検索装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、符号化データ検索プログラム等に関する。
【背景技術】
【０００２】
従来の符号化技術においては、文書をコード化する場合に、静的辞書および動的辞書を用いる符号化技術がある。例えば、静的辞書は、単語と、この単語の出現頻度に応じた符号長の静的符号とを対応付ける辞書である。動的辞書は、文書に複数回出現する文字列と動的符号とを対応付ける辞書である。従来の符号化技術では、静的辞書にヒットした単語については、静的辞書の静的符号（コード）に置換し、静的辞書にヒットせず、複数回登場する文字列については、動的辞書にかかる文字列を登録し、動的符号（コード）を文字列に割り当てる。
【０００３】
ここで、符号化技術によってコード化された文書から、復号化することなく、所定の単語が文書に含まれているか否かを検索することで、検索効率を向上させることが望まれている。従来技術では、例えば、コード化された文書から検索対象の単語を検索する場合には、検索対象の単語と静的辞書（または動的辞書）とを比較することで、検索対象の単語のコードを特定する。そして、従来技術では、特定したコードと、コード化された文書とを比較することで、検索対象の単語を検索する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】国際公開第２０１４／１４７６７２号
【特許文献２】特開平１１−１４３８９３号公報
【特許文献３】特開昭６０−２２２９６０号公報
【特許文献４】米国特許出願公開第２０１６／０００６４５６号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述した従来技術では、類義語検索を行う場合に、基本形の検索と同様に、一走査で検索することができないという問題がある。
【０００６】
例えば、文書中の単語を検索する場合には、表記ゆれを含めた検索を行う場合がしばしば発生する。ここで、文書をコード化する場合に、単語の表記ゆれを統制することができれば検索は容易となるが、単語の表記ゆれを完全に統制することは難しく、表記ゆれがコード化された文書中に残ってしまう場合がある。
【０００７】
このため、コード化された文書を単語単位で検索する場合には、表記ゆれに対応した、複数の符号の検索を行うことになる。例えば、単語「振込」を検索する場合には、「振込」に加え、「振り込み」、「振込み」、「ふり込み」、「振りこみ」、「ふりこみ」についても、それぞれ、検索することになり、一走査で検索することができない。
【０００８】
また、ある英単語を検索する場合にも、検索対象となる英単語だけでなく、英単語の語形変化を考慮した検索を行う場合もある。例えば、「go」を検索する場合には、基本形の「go」に加え、語形変化した「goes」、「went」、「gone」「going」についても、それぞれ検索することになる。
【０００９】
上記のように、検索対象となる単語の表記ゆれや、語形変化を考慮した検索処理を行う場合には、各表記ゆれや語形変化に関連する単語の数に応じて、検索時間を要してしまう。
【００１０】
１つの側面では、本発明は、類義語検索を行う際の走査数を抑制して検索を行うことができる符号化データ検索プログラム、符号化データ検索方法および符号化データ検索装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
第１の案では、コンピュータに下記の処理を実行させる。コンピュータは、符号化文書に対する検索文字列を受け付ける。コンピュータは、複数の単語について、符号化文書の符号化規則による単語の符号化データと単語の基本形と基本形に関連する関連単語とを対応付けた関連情報を参照する。コンピュータは、検索文字列の基本形、および、基本形の関連単語に関する複数の符号を取得する。コンピュータは、複数の符号を検索対象に設定したオートマトンを利用して、符号化文書に対する検索を行う。
【発明の効果】
【００１２】
符号のレベルで類義語の関連付けを行うことにより、類義語検索を行う場合であっても、基本形の検索と同様に、一走査で検索を行うことができる。
【図面の簡単な説明】
【００１３】
【図１】図１は、本実施例に係るデータ検索装置の処理を説明するための図である。
【図２】図２は、本実施例に係る符号化装置の構成を示す機能ブロック図である。
【図３】図３は、テキストファイルのデータ構造の一例を示す図である。
【図４】図４は、静的辞書情報のデータ構造の一例を示す図である。
【図５】図５は、動的辞書情報のデータ構造の一例を示す図である。
【図６】図６は、コード化テキストファイルのデータ構造の一例を示す図である。
【図７】図７は、動的符号化部の処理の一例を説明するための図である。
【図８】図８は、本実施例に係るデータ検索装置の構成を示す機能ブロック図である。
【図９】図９は、第１オートマトンのデータ構造の一例を示す図である。
【図１０】図１０は、第２オートマトンのデータ構造の一例を示す図である。
【図１１】図１１は、第３オートマトンのデータ構造の一例を示す図である。
【図１２】図１２は、本実施例に係るデータ検索装置の処理手順を示すフローチャートである。
【図１３】図１３は、コンピュータのハードウェア構成例を示す図である。
【図１４】図１４は、コンピュータで動作するプログラムの構成例を示す図である。
【図１５】図１５は、実施形態のシステムにおける装置の構成例を示す図である。
【発明を実施するための形態】
【００１４】
以下に、本願の開示する符号化データ検索プログラム、符号化データ検索方法および符号化データ検索装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例】
【００１５】
図１は、本実施例に係るデータ検索装置の処理を説明するための図である。データ検索装置は、符号化データ検索装置の一例である。図１に示すように、データ検索装置は、検索対象となる検索文字列５の入力を受け付けと、後述するように、検索文字列５に関連する単語を、コード化されたテキストファイル１０ａから検索する処理を実行する。
【００１６】
データ検索装置の設定部１５０ａは、静的辞書（または動的辞書）１１０ｂに含まれる関連情報５０を参照し、検索文字列５の基本形単語のコードおよび基本形単語に関連する関連単語のコードを取得する。
【００１７】
関連情報５０は、基本形単語と、関連単語とを対応付ける情報であり、基本形単語および関連単語のコードの情報も保持する。ここで、基本形単語は、単語の基本形に相当する単語であり、関連単語は、基本単語に関連する単語である。例えば、基本形単語を「go」とすると、関連単語は「goes、went、gone」となる。また、基本単語を「apple」とすると、関連単語は「apples」となる。
【００１８】
例えば、設定部１５０ａは、検索文字列５として「accessories」を受け付けると、関連情報５０との比較により、基本形単語「accessory」のコード「6034h」と、関連単語「accessories」のコード「6033h」を取得する。
【００１９】
設定部１５０ａは、取得した複数のコードを検索対象としてオートマトン１１０に設定する。例えば、取得した複数のコードが、基本形単語「accessory」のコード「6034h」と、関連単語「accessories」のコード「6033h」であるすると、コード「6034h」およびコード「6033h」に対応する照合フラグを「オン」に設定する。
【００２０】
データ検索装置の検索処理部１５０ｂは、コード化されたテキストファイル１０ａを受け付けると、コード化されたままの状態で、テキストファイル１０ａと、オートマトン１１０とを比較し、検索文字列５に関連する単語を検索する。例えば、検索処理部１５０ｂは、テキストファイル１０ａのコードをオートマトン１１０に入力し、入力したコードが、照合フラグがオンとなるコードにヒットした場合には、ヒットしたコードが、検索文字列５に関連する単語であると判定する。検索文字列５に関連する単語は、検索文字列５の基本形単語および関連単語である。
【００２１】
検索処理部１５０ｂは、上記の処理を繰り返し実行することで、テキストファイル１０ａに存在する検索文字列５の基本形単語および関連単語のコードを特定し、特定したコードを強調表示した検索結果を出力する。
【００２２】
上記のように、本実施例に係るデータ検索装置は、検索文字列５の基本形単語および関連単語のコードを特定し、特定した各コードが照合対象となるように、オートマトン１１０の照合フラグを設定し、利用する。このため、類義語検索を行う場合であっても、基本形の検索と同様に、一走査で検索を行うことができる。
【００２３】
続いて、本実施例に係るデータ検索装置の構成の説明を行う前に、静的辞書および動的辞書を用いて、テキストファイルをコード化する符号化装置について説明する。
【００２４】
図２は、本実施例に係る符号化装置の構成を示す機能ブロック図である。図２に示すように、この符号化装置２００は、記憶部２１０と、ファイルリード部２２０と、静的符号化部２３０と、動的符号化部２４０と、ファイルライト部２５０と、出力部２６０とを有する。
【００２５】
記憶部２１０は、テキストファイル２１０ａと、静的辞書情報２１０ｂと、動的辞書情報２１０ｃと、コード化テキストファイル２１０ｄとを有する。例えば、記憶部２１０は、ＲＡＭ（Random  Access  Memory）、ＲＯＭ（Read  Only  Memory）、フラッシュメモリ（Flash  Memory）などの半導体メモリ素子や、ＨＤＤ（Hard  Disk  Drive）などの記憶装置に対応する。
【００２６】
テキストファイル２１０ａは、コード化の対象となる文書の情報である。図３は、テキストファイルのデータ構造の一例を示す図である。例えば、図３に示すように、テキストファイル２１０ａには、テキストの開始位置を示すＳＴＸと、テキストの終了位置を示すＥＴＸが含まれる。テキストファイル２１０ａには、ＳＴＸに続いて、文書が格納されている。図３に示す例では、文書「She△has△many△accessories・・・」が格納される。文書に含まれる「△」は、スペースを示す記号である。
【００２７】
静的辞書情報２１０ｂは、単語と、この単語の出現頻度に応じた符号長の静的符号とを対応付ける辞書の情報である。図４は、静的辞書情報のデータ構造の一例を示す図である。図４に示すように、この静的辞書情報２１０ｂは、ビットフィルタＣ１と、静的辞書Ｃ２とを有する。
【００２８】
ビットフィルタＣ１は、２グラム、ビットマップ、ポインタ、英単語を含む。静的辞書Ｃ２は、英単語、静的コード、動的コード、基本コード、基本形コードを含む。
【００２９】
２グラムは、２文字の文字列（あるいは単語）を示す情報である。ビットマップは、２グラムの文字列に対応するビットマップを示す。例えば、「ａａ」に対応するビットマップは「０＿０＿０＿０＿０」となる。ポインタは、ビットマップに対応する英単語の位置を示すポインタである。
【００３０】
英単語は、例えば、静的辞書Ｃ２に登録された高頻度の単語である。静的コードは、英単語に割り当てられたコードである。静的辞書情報２１０ｂを用いた静的符号化は、英単語を、静的コードに変換する処理に対応する。例えば、出現頻度が高頻度となる単語には、静的コードが事前に割り当てられる。出現頻度が低頻度となる単語には、後述する動的符号化時において、動的コードが割り当てられる。
【００３１】
動的コードは、後述する動的辞書情報２１０ｃを用いた動的符号化時において、ある英単語に動的コードが割り当てられたタイミングで、設定されるコードである。基本コードは、各英単語に対応するコードであり、英単語を一意に識別する場合等に利用される。また、後述する動的辞書情報２１０ｃのバッファには、英単語が基本コードにより格納される。
【００３２】
基本形コードは、基本形単語および関連単語を識別する場合に利用されるコードである。該当する英単語が、基本形単語である場合には、基本形コードに、自英単語の基本コードが設定される。該当する英単語が、ある基本形単語の関連単語である場合には、ある基本形単語の基本コードが、関連単語の基本形コードに設定される。
【００３３】
例えば、基本形単語を「accessory」とし、基本形単語「accessory」の関連単語を「accessories」とする。また、基本形単語「accessory」の基本コードを「A00068h」とする。この場合には、英単語「accessory」のレコードに格納される基本形コードは「A00068h」となる。英単語「accessories」のレコードに格納される基本形コードは「A00068h」となる。
【００３４】
このため、各英単語の基本コードと、基本形コードとを比較することで、英単語が基本形単語であるか否かを区別することが可能となる。例えば、英単語の基本形コードと、基本コードとが同じである場合には、かかる英単語が基本形単語であることがわかる。また、英単語が基本形単語でない場合には、かかる英単語は、基本形コードと同じ基本コードが割り当てられた英単語の関連単語であることがわかる。
【００３５】
動的辞書情報２１０ｃは、文書に複数回出現する文字列と動的符号とを対応付ける辞書の情報である。図５は、動的辞書情報のデータ構造の一例を示す図である。図５に示すように、この動的辞書情報２１０ｃは、動的辞書Ｄ１と、バッファＤ２とを有する。
【００３６】
動的辞書Ｄ１の動的コードは、バッファＤ２に格納された基本コードに割り当てられた符号である。基本形コードは、動的コードが割り当てられた単語に対応する基本形コードである。ポインタは、動的コードが割り当てられた単語の基本コードが格納されたバッファＤ２の位置を示す情報である。
【００３７】
例えば、動的符号化時において、英単語「abode」に動的コード「A000h」が割り当てられたものとする。英単語「abode」の基本コードを「A00030h」とし、基本形コードを「A0002Ch」とする。この場合には、動的辞書Ｄ１の動的コード「A000h」に対応付けて、基本形コードに「A0002Ch」が設定される。また、動的コード「A000h」に対応するポインタに示されるバッファＤ２の位置に、基本コード「A00030h」が格納される。
【００３８】
コード化テキストファイル２１０ｄは、テキストファイル２１０ａがコード化されることにより生成されるファイルである。図６は、コード化テキストファイルのデータ構造の一例を示す図である。図６に示すように、コード化テキストファイル２１０ｄは、ヘッダと、コード化された文書と、トレーラとを含む。
【００３９】
例えば、ヘッダには、単語の出現頻度に関する情報や、コード化を行う場合に用いられたアルゴリズムを識別する情報が含まれる。トレーラには、静的辞書情報２１０ｂおよび動的辞書情報２１０ｃ等が含まれる。
【００４０】
図２の説明に戻る。ファイルリード部２２０は、テキストファイル２１０ａを読み出す処理部である。ファイルリード部２２０は、読み出したテキストファイル２１０ａを、静的符号化部２３０に出力する。
【００４１】
静的符号化部２３０は、テキストファイル２１０ａに含まれる文書の単語と、静的辞書情報２１０ｂのビットフィルタＣ１とを比較して、ビットフィルタＣ１にヒットした単語を静的コードに置換する処理を繰り返し実行する処理部である。以下の説明では適宜、静的符号化部２３０により、静的コードに変換されたテキストファイル２１０ａを、静的符号化データと表記する。例えば、静的コードが割り当てられた英単語は、静的コードに変換されるが、静的コードが割り当てられていない英単語は、そのままの状態で、静的符号化データに残る。静的コードが割り当てられていない英単語は、後述する動的符号化により、動的コードが割り当てられ、コード化される。
【００４２】
動的符号化部２４０は、静的符号化データに対して、複数回出現する単語をコード化することで、コード化された文書を生成する処理部である。動的符号化部２４０は、コード化された文書のデータをファイルライト部２５０に出力する。
【００４３】
図７は、動的符号化部の処理の一例を説明するための図である。動的符号化部２４０は、文字列を静的符号化データｆ１から読み出して、符号化領域Ａ１に格納し、符号化領域Ａ１と参照領域Ａ２とに同一の文字列が存在するか否かを照合する。動的符号化部２４０は、照合の結果、同一の文字列が存在する場合には、係る文字列を、複数回出現する文字列として特定する。動的符号化部２４０は、照合終了後、符号化領域Ａ１に格納された文字列を、参照領域Ａ２に追記する更新を行い、所定の長さの文字列を静的符号化データｆ１から読み出し、符号化領域Ａ１に格納する。
【００４４】
図７について説明する。図７に示す例では、静的符号化データｆ１を「（１）abode・・・（２）abode・・・」とする。静的符号化データｆ１の（１）、（２）は、各文字列「abode」を区別するために便宜的に付与するものであり、実際には、静的符号化データｆ１に含まれていなくても良い。また、静的符号化データｆ１の「・・・」は、不特定な文字列、静的符号に対応する。
【００４５】
動的符号化部２４０は、静的符号化データｆ１から所定の長さの文字列「（１）abode・・・」を読み出して符号化領域Ａ１に格納する。動的符号化部２４０は、符号化領域Ａ１に格納された文字列と、参照領域Ａ２に格納された文字列とを比較して、同一の文字列が存在するか否かを判定する。この場合には、同一の文字列が存在しないため、動的符号化部２４０は、符号化領域Ａ１に格納された「（１）abode・・・」を、参照領域Ａ２に格納することで、参照領域Ａ２を更新する。
【００４６】
動的符号化部２４０は、静的符号化データｆ１から所定の長さの文字列「（２）abode・・・」を読み出して符号化領域Ａ１に格納する。動的符号化部２４０は、符号化領域Ａ１に格納された文字列と、参照領域Ａ２に格納された文字列とを比較して、同一の文字列が存在するか否かを判定する。この場合には、同一の文字列「abode」が存在するため、動的符号化部２４０は、「abode」が複数回出現する文字列であると特定する。動的符号化部２４０は、符号化領域Ａ１に格納された「（２）abode・・・」を、参照領域Ａ２に格納することで、参照領域Ａ２を更新する。
【００４７】
動的符号化部２４０は、複数回出現する「abode」に対応する基本コード「A00030h」を、静的辞書Ｃ２を基にして特定し、特定した基本コード「A00030h」を動的辞書情報２１０ｃのバッファＤ２に格納する。動的符号化部２４０は、動的辞書Ｄ１に含まれる未割当の動的コードのうち、先頭の動的コードを、複数回出現する文字列に割り当てる。例えば、動的符号化部２４０は、「abode」に対応する基本形コード「A0002Ch」を、動的コード「A000h」に対応付けて割り当て、ポインタの示す位置を、バッファＤ２の「A00030h」の先頭位置に設定する。これにより、文字列「abode」に動的コード「A000h」が割り当てられたことを意味し、動的符号化部２４０は、静的符号化データｆ１の「abode」を、動的コード「A000h」に変換することで、動的符号化を行う。
【００４８】
動的符号化部２４０は、上記のように、静的符号化データｆ１に対して、複数回出現する文字列を動的符号に符号化することで、コード化された文書のデータを生成する。動的符号化部２４０は、コード化された文書のデータを、ファイルライト部２５０に出力する。
【００４９】
ファイルライト部２５０は、動的符号化部２４０からコード化された文書のデータを取得した場合に、取得したコード化された文書のデータを、コード化テキストファイル２１０ｄに格納する処理部である。また、ファイルライト部２５０は、コード化テキストファイル２１０ｄのヘッダに、単語の出現頻度に関する情報や、コード化を行う場合に用いられたアルゴリズムを識別する情報を格納する。ファイルライト部２５０は、コード化テキストファイル２１０ｄのトレーラに、静的辞書情報２１０ｂおよび動的辞書情報２１０ｃ等を格納する。
【００５０】
出力部２６０は、記憶部２１０に格納されたコード化テキストファイル２１０ｄを、後述するデータ検索装置に出力する処理部である。
【００５１】
続いて、図１で説明した処理を実行するデータ検索装置の構成について説明する。図８は、本実施例に係るデータ検索装置の構成を示す機能ブロック図である。図８に示すように、このデータ検索装置１００は、記憶部１０５と、辞書情報リード部１１５と、オートマトン生成部１１６と、受付部１２０と、ファイルリード部１３０と、設定部１５０ａと、検索処理部１５０ｂとを有する。
【００５２】
記憶部１０５は、コード化テキストファイル２１０ｄと、オートマトン１１０とを有する。記憶部１０５は、ＲＡＭ、ＲＯＭ、フラッシュメモリなどの半導体メモリ素子や、ＨＤＤなどの記憶装置に対応する。
【００５３】
コード化テキストファイル２１０ｄは、上述した符号化装置２００によりコード化されたテキストファイルである。コード化テキストファイル２１０ｄのデータ構造は、図６で説明したコード化テキストファイル２１０ｄのデータ構造と同様である。
【００５４】
オートマトン１１０は、後述する検索文字列に関連するコードを検索する場合に用いられるオートマトンである。検索文字列に関連するコードは、検索文字列に対応する基本形単語のコードおよびこの基本形単語に関連する関連単語のコードである。例えば、オートマトン１１０は、第１オートマトン１１０ａ、第２オートマトン１１０ｂ、第３オートマトン１１０ｃを含む。
【００５５】
第１オートマトン１１０ａは、１バイトのコード（静的コード）にコード化された文字列または単語を照合する場合に用いられるオートマトンである。
【００５６】
図９は、第１オートマトンのデータ構造の一例を示す図である。図９に示すように、第１オートマトン１１０ａは、１バイトの静的コードと、基本形コードと、文字列または単語と、照合フラグとが対応付けられる。
【００５７】
第１オートマトン１１０ａの静的コードは、高頻度の単語や文字列に割り当てられた１バイトのコードである。基本形コードは、図４等で説明した基本形コードに対応するものである。ある単語の基本形単語および関連単語に対応する静的コードの基本形コードには全て、基本形単語の基本コードが設定される。文字列は、１バイトの静的コードに対応する文字列または単語である。照合フラグは、該当する静的コードが照合対象であるか否かを判定するための情報であり、照合対象の静的コードには、照合フラグに「オン」が設定される。
【００５８】
第２オートマトン１１０ｂは、２バイトのコード（静的コード）にコード化された文字列または単語を照合する場合に用いられるオートマトンである。
【００５９】
図１０は、第２オートマトンのデータ構造の一例を示す図である。図１０に示すように、第２オートマトン１１０ｂは、２バイトの静的コードと、基本形コードと、文字列または単語と、照合フラグとが対応付けられる。第２オートマトン１１０ｂの静的コードは、高頻度の単語や文字列に割り当てられた２バイトのコードである。文字列は、２バイトの静的コードに対応する文字列または単語である。基本形コード、照合フラグに関する説明は、第１オートマトン１１０ａの基本形コード、照合フラグに関する説明に関する説明と同様である。
【００６０】
第３オートマトン１１０ｃは、動的辞書情報２１０ｃと関連づけられ、動的コードにコード化された文字列または単語を照合する場合に用いられるオートマトンである。
【００６１】
図１１は、第３オートマトンのデータ構造の一例を示す図である。図１１に示すように、第３オートマトン１１０ｃは、動的辞書情報２１０ｃと、オートマトンＤ３とを有する。動的辞書情報２１０ｃに関する説明は、図５で説明した動的辞書情報２１０ｃに関する説明と同様である。
【００６２】
オートマトンＤ３は、基本コードと、基本形コードと、文字列と、照合フラグとを対応付ける。基本コードは、３バイトの静的コードである。その他の基本コードに関する説明は、図４で説明した基本コードに関する説明と同様である。文字列は、動的コードが割り当てられた文字列に対応する。基本形コード、照合フラグに関する説明は、第１オートマトン１１０ａの基本形コード、照合フラグに関する説明に関する説明と同様である。
【００６３】
例えば、コード化テキストファイル２１０ｄに格納される静的辞書情報２１０ｂおよび動的辞書情報２１０ｃの基本形コード、または、第１オートマトン１１０ａ〜１１０ｃに登録される基本形コードによって、ある単語の基本形単語、関連単語が特定可能となる。このため、コード化テキストファイル２１０ｄに格納される静的辞書情報２１０ｂおよび動的辞書情報２１０ｃ、または、第１オートマトン１１０ａ〜１１０ｃには、図１で説明した関連情報５０が含まれていると言える。
【００６４】
図８の説明に戻る。辞書情報リード部１１５は、コード化テキストファイル２１０ｄに格納された静的辞書情報２１０ｂおよび動的辞書情報２１０ｃを読み出す処理部である。辞書情報リード部１１５は、静的辞書情報２１０ｂおよび動的辞書情報２１０ｃを、オートマトン生成部１１６に出力する。
【００６５】
オートマトン生成部１１６は、静的辞書情報２１０ｂおよび動的辞書情報２１０ｃを基にして、オートマトン１１０を生成する処理部である。
【００６６】
オートマトン生成部１１６が、第１オートマトン１１０ａを生成する処理の一例について説明する。オートマトン生成部１１６は、静的辞書情報２１０ｂの静的辞書Ｃ２を参照し、１バイトの静的コードと、この１バイトの静的コードが割り当てられた文字列または単語と、基本形コードとを特定する。オートマトン生成部１１６は、特定した１バイトの静的コードと、基本形コードと、文字列または単語とを対応付けて、第１オートマトン１１０ａに設定する。オートマトン生成部１１６は、上記処理を繰り返し実行することで、第１オートマトン１１０ａを生成する。
【００６７】
オートマトン生成部１１６が、第２オートマトン１１０ｂを生成する処理の一例について説明する。オートマトン生成部１１６は、静的辞書情報２１０ｂの静的辞書Ｃ２を参照し、２バイトの静的コードと、この２バイトの静的コードが割り当てられた文字列または単語と、基本形コードとを特定する。オートマトン生成部１１６は、特定した２バイトの静的コードと、基本形コードと、文字列または単語とを対応付けて、第２オートマトン１１０ｂに設定する。オートマトン生成部１１６は、上記処理を繰り返し実行することで、第２オートマトン１１０ｂを生成する。
【００６８】
オートマトン生成部１１６が、第３オートマトン１１０ｃを生成する処理の一例について説明する。オートマトン生成部１１６は、３バイトの基本コードを、第３オートマトン１１０ｃに設定する。オートマトン生成部１１６は、動的辞書情報２１０ｃのバッファＤ２を参照し、オートマトンＤ３の基本形コードと一致する基本形コードがバッファＤ２に存在するか否かを判定する。
【００６９】
オートマトン生成部１１６は、オートマトンＤ３の基本コードと同一の基本コードがバッファＤ２に存在する場合には、該当するバッファＤ２の基本コードと、オートマトンＤ３とを対応付ける。また、オートマトン生成部１１６は、動的辞書Ｄ１のポインタが示すバッファＤ２の基本コードを基にして、バッファＤ２の基本コードに対応する基本形コードを特定し、特定した基本形コードを、オートマトンＤ３の基本形コードに設定する。また、関連単語の基本コードに対応する基本形コードにも、同様の基本形コードを設定する。
【００７０】
例えば、図１１に示すように、バッファＤ２に基本コード「A00030h」が登録されており、かかる基本コードに対応する基本形コードを「A0002Ch」とする。この場合には、オートマトン生成部１１６は、基本コード「A0002Ch」、「A0002Dh」、「A00030h」に対応する基本形コードに、「A0002Ch」を設定する。すなわち、基本コード「A0002Ch」の単語「abide」は基本形単語であり、基本コード「A0002Dh」の単語「abided」および「A00030h」の単語「abode」は、基本形単語の関連単語であることがわかる。
【００７１】
受付部１２０は、検索文字列の入力を受け付ける処理部である。受付部１２０は、受け付けた検索文字列の情報を、設定部１５０ａに出力する。
【００７２】
設定部１５０ａは、検索文字列と、コード化テキストファイル２１０ｄに格納された静的辞書情報２１０ｂおよび動的辞書情報２１０ｃとを比較し、基本形コードをキーにして、検索文字列の基本形単語および基本形単語のコードと、関連単語および関連単語のコードとを取得する。
【００７３】
設定部１５０ａは、基本形単語のコードと、関連単語のコードとが照合対象となるように、基本形単語のコードおよび関連単語のコードと、オートマトン１１０の各静的コード各動的コードとを比較する。設定部１５０ａは、ヒットした各静的コード各動的コードに対応する照合フラグをオンに設定する。
【００７４】
図１０を用いて、設定部１５０ａの処理を説明する。例えば、検索文字列として指定された単語を「accessories」とすると、単語を「accessories」に対応する基本形コードは「A00068h」となり、基本形単語の静的コードは「6034h」となり、関連単語の静的コードは「6033h」となる。このため、設定部１５０ａは、第２オートマトン１１０ｂについて、静的コード「6033h」および「6034h」に対応する照合フラグをオンに設定する。
【００７５】
図１１を用いて、設定部１５０ａの処理を説明する。例えば、検索文字列として指定された単語を「abode」とし、この「abode」に割り当てられた動的コードを「A000h」とする。また、動的コード「A000h」の基本コードを「A00030h」とする。この場合には、基本形コードは「A0002Ch」となり、基本形コードに対応する基本コードは「A0002Ch」、「A0002Dh」、「A00030h」となる。このため、設定部１５０ａは、第３オートマトン１１０ｃについて、基本コード「A0002Ch」、「A0002Dh」、「A00030h」に対応する照合フラグをオンに設定する。
【００７６】
なお、設定部１５０ａは、検索文字列の基本形単語および関連単語を特定した場合に、基本形単語および関連単語の候補リストを、図示しない表示装置に表示し、検索対象とする基本形単語および関連単語を選択させても良い。この場合には、設定部１５０ａは選択された基本形単語および関連単語のコードに対応する照合フラグをオンに設定する。
【００７７】
ファイルリード部１３０は、コード化テキストファイル２１０ｄに格納されたコード化された文書のデータを取得する処理部である。ファイルリード部１３０は、コード化された文書のデータを、検索処理部１５０ｂに出力する。
【００７８】
検索処理部１５０ｂは、オートマトン１１０とコード化された文書とを比較することで、検索文字列に対応する基本形単語のコードおよび関連単語のコードを検索する処理部である。検索処理部１５０ｂは、検索結果を表示装置などに表示させる。
【００７９】
例えば、検索処理部１５０ｂは、コード化された文書からコードを取得し、取得したコードと、第１、第２オートマトン１１０ａ，１１０ｂの静的コード、および、第３オートマトン１１０ｃの動的コードとを比較する。検索処理部１５０ｂは、取得したコードが、静的コードまたは動的コードにヒットし、かつ、対応する照合フラグがオンとなっている場合に、取得したコードを検索対象として特定する。検索処理部１５０ｂは、コード化された文書の先頭のコードから、最後のコードまで、上記処理を繰り返し実行する。検索処理部１５０ｂは、コード化された文書中において、照合対象として特定したコードを強調表示させた検索結果を、表示装置などに表示させる。
【００８０】
次に、本実施例に係るデータ検索装置１００の処理手順について説明する。図１２は、本実施例に係るデータ検索装置の処理手順を示すフローチャートである。図１２に示すように、データ検索装置１００の受付部１２０は、検索文字列の入力を受け付ける（ステップＳ１０１）。データ検索装置の設定部１５０ａは、検索文字列の基本形コードを基にして、検索文字列に対応する、基本形単語のコード、関連単語のコードを取得する（ステップＳ１０２）。
【００８１】
設定部１５０ａは、基本形単語および関連単語の候補リストを生成し、検索対象とする単語の選択を受け付ける（ステップＳ１０３）。設定部１５０ａは、選択された単語のコードに対応したオートマトン１１０の照合フラグをオンにセットする（ステップＳ１０４）。
【００８２】
検索処理部１５０ｂは、選択された対象のファイル（コード化された文書）をコード化されたままの状態で、オートマトン１１０を用いて走査する（ステップＳ１０５）。検索処理部１５０ｂは、コードとオートマトン１１０とを比較し、コードに対応するオートマトン１１０の照合フラグがオンとなる場合には、該当するコードを検索対象として特定する（ステップＳ１０６）。
【００８３】
検索処理部１５０ｂは、ファイルのコードを全て走査したか否かを判定する（ステップＳ１０７）。検索処理部１５０ｂは、ファイルのコードを全て走査していない場合には（ステップＳ１０７，Ｎｏ）、ステップＳ１０６に移行する。
【００８４】
一方、検索処理部１５０ｂは、ファイルのコードを全て走査した場合には（ステップＳ１０７，Ｙｅｓ）、検索結果を出力する（ステップＳ１０８）。
【００８５】
次に、本実施例に係るデータ検索装置１００の効果について説明する。データ検索装置１００は、検索文字列の基本形単語および関連単語のコードを特定し、特定した各コードが照合対象となるように、オートマトン１１０の照合フラグを設定し、利用する。このため、データ検索装置１００によれば、類義語検索を行う場合であっても、基本形の検索と同様に、一走査で検索を行うことができる。
【００８６】
ところで、上述した実施例では、基本形単語と関連単語との関係について、英単語の動詞の変化や、名詞の単数形と複数形に着目した関係について説明したが、これに限定されるものではない。
【００８７】
例えば、類義語に着目して、基本形単語と、関連単語との関係を定義し、基本形単語および関連単語に、同一の基本形コードを割り当てても良い。この場合には、類義語の関係となる複数の単語のうち、いずれか一つの単語を基本形単語に設定し、残りの単語を関連単語に設定する。例えば、類義語の関係となる複数の単語を「view、see、consider、regard」とする場合、基本形単語を「view」に設定し、残りの単語「see、consider、regard」を関連単語に設定する。
【００８８】
この場合には、設定部１５０ａは、検索文字列に「view、see、consider、regard」のいずれか含まれる場合に、「view、see、consider、regard」のコードを特定し、特定したコードに対応するオートマトン１１０の照合フラグをオンに設定する。他の類義語についても同様である。このような処理を行うことによって、検索文字列の類義語となる単語も一走査で検索を行うことができる。
【００８９】
また、表記揺れに着目して、基本形単語と、関連単語との関係を定義し、基本形単語および関連単語に、同一の基本コードを割り当てても良い。この場合には、表記揺れに対応する複数の単語のうち、いずれか一つの単語を基本形単語に設定し、残りの単語を関連単語に設定する。例えば、表記揺れに対応する複数の単語を「振込、振り込み、振込み、ふりこみ」とする場合、基本形単語を「振込」に設定し、残りの単語「振り込み、振込み、ふりこみ」を関連単語に設定する。
【００９０】
この場合には、設定部１５０ａは、検索文字列に「振込、振り込み、振込み、ふりこみ」のいずれか含まれる場合に、「振込、振り込み、振込み、ふりこみ」のコードを特定し、特定したコードに対応するオートマトン１１０の照合フラグをオンに設定する。他の表記揺れについても同様である。このような処理を行うことによって、検索文字列に表記揺れがあっても、検索文字列に関連する単語も一走査で検索を行うことができる。
【００９１】
更に、設定部１５０ａは、類義語を検索対象とするのか、表記揺れ単語を検索対象とするのかを指示する指示情報を更に受け付け、受け付けた指示情報に基づいて、基本形単語、関連単語のコードを選択的に取得しても良い。この場合には、類義語に着目して、基本形単語と、関連単語との関係を定義した、第１静的辞書情報、第１動的辞書情報と、表記揺れに着目して、基本形単語と、関連単語との関係を定義した第２静的辞書情報、第２動的辞書情報を選択的に利用する。第１、２静的辞書情報、第１、２動的辞書情報は、記憶部１０５に格納されているものとする。
【００９２】
例えば、設定部１５０ａは、類義語を検索対象とする指示情報を受け付けた場合には、第１静的辞書情報、第１動的辞書情報を参照して、検索文字列と類義語の関係にある基本形単語および関連単語のコードを特定し、特定したコードに対応するオートマトン１１０の照合フラグをオンに設定する。
【００９３】
設定部１５０ａは、表記揺れ単語を検索対象とする指示情報を受け付けた場合には、第２静的辞書情報、第２動的辞書情報を参照して、検索文字列と表記揺れの関係にある基本形単語および関連単語のコードを特定し、特定したコードに対応するオートマトン１１０の照合フラグをオンに設定する。
【００９４】
また、設定部１５０ａは、類義語および表記揺れ単語双方を検索対象とする指示情報を受け付けても良い。この場合には、設定部１５０ａは、第１、２静的辞書情報、第１、２動的辞書情報を参照して、検索文字列と類義語の関係にある基本形単語および関連単語のコードと、検索文字列と表記揺れの関係にある基本形単語および関連単語のコードとを特定する。そして、設定部１５０ａは、特定したコードに対応するオートマトン１１０の照合フラグをオンに設定する。
【００９５】
このように、設定部１５０ａが、指示情報を基にして、類義語または表記揺れ単語に対応する基本形単語および関連単語のコードを選択的に取得してオートマトン１１０の照合フラグをセットすることで、類義語または表記揺れに対応した検索を効率的に実行できる。
【００９６】
下記に、本実施形態に用いられるハードウェア及びソフトウェアについて説明する。図１３は、コンピュータのハードウェア構成例を示す図である。コンピュータ１は、例えば、プロセッサ３０１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）３０２、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）３０３、ドライブ装置３０４、記憶媒体３０５、入力インターフェース（Ｉ／Ｆ）３０６、入力デバイス３０７、出力インターフェース（Ｉ／Ｆ）３０８、出力デバイス３０９、通信インターフェース（Ｉ／Ｆ）３１０、ＳＡＮ（Ｓｔｏｒａｇｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）インターフェース（Ｉ／Ｆ）３１１およびバス３１２などを含む。それぞれのハードウェアはバス３１２を介して接続されている。
【００９７】
ＲＡＭ３０２は読み書き可能なメモリ装置であって、例えば、ＳＲＡＭ（Ｓｔａｔｉｃ  ＲＡＭ）やＤＲＡＭ（Ｄｙｎａｍｉｃ  ＲＡＭ）などの半導体メモリ、またはＲＡＭでなくてもフラッシュメモリなどが用いられる。ＲＯＭ３０３は、ＰＲＯＭ（Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）なども含む。ドライブ装置３０４は、記憶媒体３０５に記録された情報の読み出しか書き込みかの少なくともいずれか一方を行なう装置である。記憶媒体３０５は、ドライブ装置３０４によって書き込まれた情報を記憶する。記憶媒体３０５は、例えば、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）などのフラッシュメモリ、ＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）、ブルーレイディスクなどの記憶媒体である。また、例えば、コンピュータ１は、複数種類の記憶媒体それぞれについて、ドライブ装置３０４及び記憶媒体３０５を設ける。
【００９８】
入力インターフェース３０６は、入力デバイス３０７と接続されており、入力デバイス３０７から受信した入力信号をプロセッサ３０１に伝達する回路である。出力インターフェース３０８は、出力デバイス３０９と接続されており、出力デバイス３０９に、プロセッサ３０１の指示に応じた出力を実行させる回路である。通信インターフェース３１０はネットワーク３を介した通信の制御を行なう回路である。通信インターフェース３１０は、例えばネットワークインターフェースカード（ＮＩＣ）などである。ＳＡＮインターフェース３１１は、ストレージエリアネットワークによりコンピュータ１と接続された記憶装置との通信の制御を行なう回路である。ＳＡＮインターフェース３１１は、例えばホストバスアダプタ（ＨＢＡ）などである。
【００９９】
入力デバイス３０７は、操作に応じて入力信号を送信する装置である。入力信号は、例えば、キーボードやコンピュータ１の本体に取り付けられたボタンなどのキー装置や、マウスやタッチパネルなどのポインティングデバイスである。出力デバイス３０９は、コンピュータ１の制御に応じて情報を出力する装置である。出力デバイス３０９は、例えば、ディスプレイなどの画像出力装置（表示デバイス）や、スピーカーなどの音声出力装置などである。また、例えば、タッチスクリーンなどの入出力装置が、入力デバイス３０７及び出力デバイス３０９として用いられる。また、入力デバイス３０７及び出力デバイス３０９は、コンピュータ１と一体になっていてもよいし、コンピュータ１に含まれず、例えば、コンピュータ１に外部から接続する装置であってもよい。
【０１００】
例えば、プロセッサ３０１は、ＲＯＭ３０３や記憶媒体３０５に記憶されたプログラムをＲＡＭ３０２に読み出し、読み出されたプログラムの手順に従って符号化装置２００に対応する処理またはデータ検索装置１００に対応する処理を行なう。その際にＲＡＭ３０２はプロセッサ３０１のワークエリアとして用いられる。記憶部１０５，２１０の機能は、ＲＯＭ３０３および記憶媒体３０５がプログラムファイル（後述のアプリケーションプログラム２４、ミドルウェア２３およびＯＳ２２など）やデータファイル（テキストファイル２１０ａ、コード化テキストファイル２１０ｄ等）を記憶し、ＲＡＭ３０２がプロセッサ３０１のワークエリアとして用いられることによって実現される。プロセッサ３０１が読み出すプログラムについては、図１４を用いて説明する。
【０１０１】
図１４は、コンピュータで動作するプログラムの構成例を示す図である。コンピュータ１において、図１４に示すハードウェア群２１（３０１〜３１２）の制御を行なうＯＳ（オペレーティング・システム）２２が動作する。ＯＳ２２に従った手順でプロセッサ３０１が動作して、ハードウェア群２１の制御・管理が行なわれることにより、アプリケーションプログラム２４やミドルウェア２３に従った処理がハードウェア群２１で実行される。さらに、コンピュータ１において、ミドルウェア２３またはアプリケーションプログラム２４が、ＲＡＭ３０２に読み出されてプロセッサ３０１により実行される。
【０１０２】
プロセッサ３０１が、コード化機能が呼び出された場合に、ミドルウェア２３またはアプリケーションプログラム２４の少なくとも一部に基づく処理を行なうことにより、（それらの処理をＯＳ２２に基づいてハードウェア群２１を制御して）符号化装置２００の機能が実現される。また、プロセッサ３０１が、データ検索機能が呼び出された場合に、ミドルウェア２３またはアプリケーションプログラム２４の少なくとも一部に基づく処理を行なうことにより、（それらの処理をＯＳ２２に基づいてハードウェア群２１を制御して）データ検索装置１００の機能が実現される。コード化機能およびデータ検索機能は、それぞれアプリケーションプログラム２４自体に含まれてもよいし、アプリケーションプログラム２４に従って呼び出されることで実行されるミドルウェア２３の一部であってもよい。
【０１０３】
図１５は、実施形態のシステムにおける装置の構成例を示す図である。図１５のシステムは、コンピュータ１ａ、コンピュータ１ｂ、基地局２およびネットワーク３を含む。コンピュータ１ａは、無線または有線の少なくとも一方により、コンピュータ１ｂと接続されたネットワーク３に接続している。
【０１０４】
図２に示す符号化装置２００と図８に示すデータ検索装置１００とは、図１５に示すコンピュータ１ａとコンピュータ１ｂとのいずれに含まれてもよい。コンピュータ１ｂが符号化装置２００を含み、コンピュータ１ａがデータ検索装置１００を含んでもよいし、コンピュータ１ｂがデータ検索装置１００を含み、コンピュータ１ａが符号化装置２００を含んでもよい。また、コンピュータ１ａとコンピュータ１ｂとの双方が、符号化装置２００およびデータ検索装置１００を備えてもよい。
【０１０５】
以下、上述の実施形態における変形例の一部を説明する。下記の変形例のみでなく、本発明の本旨を逸脱しない範囲の設計変更は適宜行われうる。コード化処理の対象は、ファイル内のデータ以外にも、システムから出力される監視メッセージなどでもよい。例えば、バッファに順次格納される監視メッセージを上述のコード化処理によりコード化し、ログファイルとして格納するなどの処理が行なわれる。また、例えば、データベース内のページ単位にコード化が行なわれてもよいし、複数のページをまとめた単位でコード化が行なわれてもよい。
【０１０６】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【０１０７】
（付記１）コンピュータに
符号化文書に対する検索文字列を受け付け、
複数の単語について、前記符号化文書の符号化規則による前記単語の符号化データと前記単語の基本形と前記基本形に関連する関連単語とを対応付けた関連情報を参照し、
前記検索文字列の基本形、および、前記基本形の関連単語に関する複数の符号を取得し、
前記複数の符号を検索対象に設定したオートマトンを利用して、前記符号化文書に対する検索を行う
処理を実行させる符号化データ検索プログラム。
【０１０８】
（付記２）前記基本形に関連する関連単語は、前記基本形の類義語または前記基本形と同音・同意味の語句であり前記基本形と異なる文字表記の表記揺れ単語であることを特徴とする付記１に記載の符号化データ検索プログラム。
【０１０９】
（付記３）前記類義語を検索対象とするのか、前記表記揺れ単語を検索対象とするのかを指示する指示情報を更に受け付け、前記符号を取得する処理は、前記指示情報を基にして、基本形の類義語または表記揺れ単語に対応する複数の符号を取得することを特徴とする付記２に記載の符号化データ検索プログラム。
【０１１０】
（付記４）前記検索する処理は、前記符号化文書の符号と、前記オートマトンとを比較し、オートマトンにヒットした符号を検索対象の符号として特定することを特徴とする付記１、２または３に記載の符号化データ検索プログラム。
【０１１１】
（付記５）コンピュータが実行する符号化データ検索方法であって、
符号化文書に対する検索文字列を受け付け、
複数の単語について、前記符号化文書の符号化規則による前記単語の符号化データと前記単語の基本形と前記基本形に関連する関連単語とを対応付けた関連情報を参照し、
前記検索文字列の基本形、および、前記基本形の関連単語に関する複数の符号を取得し、
前記複数の符号を検索対象に設定したオートマトンを利用して、前記符号化文書に対する検索を行う
処理を実行する符号化データ検索方法。
【０１１２】
（付記６）前記基本形に関連する関連単語は、前記基本形の類義語または前記基本形と同音・同意味の語句であり前記基本形と異なる文字表記の表記揺れ単語であることを特徴とする付記５に記載の符号化データ検索方法。
【０１１３】
（付記７）前記類義語を検索対象とするのか、前記表記揺れ単語を検索対象とするのかを指示する指示情報を更に受け付け、前記符号を取得する処理は、前記指示情報を基にして、基本形の類義語または表記揺れ単語に対応する複数の符号を取得することを特徴とする付記６に記載の符号化データ検索方法。
【０１１４】
（付記８）前記検索する処理は、前記符号化文書の符号と、前記オートマトンとを比較し、オートマトンにヒットした符号を検索対象の符号として特定することを特徴とする付記５、６または７に記載の符号化データ検索方法。
【０１１５】
（付記９）符号化文書に対する検索文字列を受け付ける受付部と、
複数の単語について、前記符号化文書の符号化規則による前記単語の符号化データと前記単語の基本形と前記基本形に関連する関連単語とを対応付けた関連情報を参照し、前記検索文字列の基本形、および、前記基本形の関連単語に関する複数の符号を取得し、前記複数の符号を検索対象としてオートマトンに設定する設定部と、
前記オートマトンを利用して、前記符号化文書に対する検索を行う検索部と
を有する符号化データ検索装置。
【０１１６】
（付記１０）前記基本形に関連する関連単語は、前記基本形の類義語または前記基本形と同音・同意味の語句であり前記基本形と異なる文字表記の表記揺れ単語であることを特徴とする付記９に記載の符号化データ検索装置。
【０１１７】
（付記１１）前記設定部は、前記類義語を検索対象とするのか、前記表記揺れ単語を検索対象とするのかを指示する指示情報を受け付け、前記指示情報を基にして、基本形の類義語または表記揺れ単語に対応する複数の符号を取得することを特徴とする付記１０に記載の符号化データ検索装置。
【０１１８】
（付記１２）前記検索処理部は、前記符号化文書の符号と、前記オートマトンとを比較し、オートマトンにヒットした符号を検索対象の符号として特定することを特徴とする付記９、１０または１１に記載の符号化データ検索装置。
【符号の説明】
【０１１９】
１００    データ検索装置
１０５    記憶部
１１５    辞書情報リード部
１１６    オートマトン生成部
１２０    受付部
１３０    ファイルリード部
１５０ａ  設定部
１５０ｂ  検索処理部
【図１】
2018060443.tif 000003
【図２】
2018060443.tif 000004
【図３】
2018060443.tif 000005
【図４】
2018060443.tif 000006
【図５】
2018060443.tif 000007
【図６】
2018060443.tif 000008
【図７】
2018060443.tif 000009
【図８】
2018060443.tif 000010
【図９】
2018060443.tif 000011
【図１０】
2018060443.tif 000012
【図１１】
2018060443.tif 000013
【図１２】
2018060443.tif 000014
【図１３】
2018060443.tif 000015
【図１４】
2018060443.tif 000016
【図１５】
2018060443.tif 000017