JP5366709B2 - 情報処理装置、共通文字列出力方法及びプログラム - Google Patents

情報処理装置、共通文字列出力方法及びプログラム Download PDF

Info

Publication number
JP5366709B2
JP5366709B2 JP2009193547A JP2009193547A JP5366709B2 JP 5366709 B2 JP5366709 B2 JP 5366709B2 JP 2009193547 A JP2009193547 A JP 2009193547A JP 2009193547 A JP2009193547 A JP 2009193547A JP 5366709 B2 JP5366709 B2 JP 5366709B2
Authority
JP
Japan
Prior art keywords
node
character string
tree structure
value
branch
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2009193547A
Other languages
English (en)
Other versions
JP2010086525A (ja
Inventor
利也 三橋
一仁 小島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NS Solutions Corp
Original Assignee
NS Solutions Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NS Solutions Corp filed Critical NS Solutions Corp
Priority to JP2009193547A priority Critical patent/JP5366709B2/ja
Publication of JP2010086525A publication Critical patent/JP2010086525A/ja
Application granted granted Critical
Publication of JP5366709B2 publication Critical patent/JP5366709B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、情報処理装置、共通文字列出力方法及びプログラムに関する。
昨今では数多くのポータルサイトが存在し、情報量(文書数)が増大している。検索エンジンを例にとると、検索対象となる文書数が増大することにより、インデックスサイズが大きくなり、検索処理に要するリソースが増加すると共に、検索処理の速度が低下する。
特許文献1には、サンプルデータの中の文字列を先頭3文字が等しい文字列同士のグループに分類し、各グループからサンプルデータ中において最も出現頻度が高い文字列(最頻出文字列)を1個ずつ抽出し、各グループから抽出した最頻出文字列を出現頻度順に初期値として辞書に登録する技術が開示されている。
特開2007−129683号公報
インデックスサイズを小さくするためには、膨大な情報量の中から、共通して出現し、かつ、出来るだけ長い文字列を抽出することが必要となる。上述した特許文献1の技術は、上述したように、サンプルデータの中の文字列を先頭3文字が等しい文字列同士のグループに分類し、各グループからサンプルデータ中において最も出現頻度が高い文字列(最頻出文字列)を1個ずつ抽出し、各グループから抽出した最頻出文字列を出現頻度順に初期値として辞書に登録だけであるため、文書に共通して出現する頻度が高く、かつ、長い文字列を出力(又は抽出)するには十分ではない。
本発明はこのような問題点に鑑みなされたもので、文書に共通して出現する頻度が高く、かつ、長い文字列を出力(又は抽出)することを目的とする。
本発明はこのような問題点に鑑みなされたもので、文書に共通して出現する頻度が高く、かつ、長い文字列を出力することを目的とする。
そこで、本発明は、対象となる文書に含まれる文字列に基づいて、前記文字列に含まれる設定された文字数の文字をノードとする木構造を生成する木構造生成手段を有し、前記木構造生成手段は、前記文字列に含まれる各字をノードに設定する際に、通過したノードに対応するカウンタの値をインクリメントし、更に、各ノードに対応するカウンタの値と、各ノードまでの文字列長と、に基づき、出力する文字列に関するノード期待値を算出する算出手段と、親ノードの前記ノード期待値と、子ノードの前記ノード期待値と、に基づき、前記親ノードと前記子ノードとの間を切断する切断手段と、前記切断手段で切断され、前記木構造から切り離された枝の最上位のノードが表す文字に基づいて、前記木構造から切り離された枝を前記木構造に接続する接続手段と、前記木構造の枝の末端のノードの前記ノード期待値が1以上の枝を文書に共通して出現する文字列として出力する出力手段と、を有することを特徴とする。
かかる構成とすることにより、文書に共通して出現する頻度が高く、かつ、長い文字列を出力することができる。
なお、ノード期待値とは、例えば、後述する圧縮期待値等に対応する。
また、本発明は、共通文字列出力方法及びプログラムとしてもよい。
本発明によれば、文書に共通して出現する頻度が高く、かつ、長い文字列を出力することができる。
索引情報作成装置の一例である情報処理装置1のハードウェア構成の一例を示す図である。 情報処理装置1の機能構成の一例を示す図(その1)である。 検索対象文書抽出部20が抽出した文書を識別する文書番号と、前記文書の内容と、を示す図である。 文書間で共通する文字列と、前記文字列を含む文書の文書番号のグループと、を対応付けた情報の一例を示す図である。 共通する文字列を含む文書の文書番号のグループと、新たな文書番号と、を対応付けた情報の一例を示す図である。 文字列抽出部21によって抽出された文字列と、置き換えた新たな文字番号と、を対応付けた情報の一例を示す図である。 本実施形態に係る索引情報の一例を示す図である。 従来の方法で作成された索引情報の一例を示す図である。 索引情報作成処理の一例を示すフローチャートである。 部分文字列及び部分文字列が含まれる文書の文書番号のグループの一例を示す図である。 従来の方法で作成された索引情報の一例を示す図である。 本実施形態の方法で作成された索引情報の一例を示す図である。 文字列抽出部21の一例を示す図である。 木構造の一例を示す図である。 切断の一例を示す図(その1)である。 接続(マージ)の一例を示す図である。 切断の一例を示す図(その2)である。 切断の一例を示す図(その3)である。 切断及び接続が実行された後の木構造の一例を示す図である。 文字列抽出処理の一例を示すフローチャートである。
以下、本発明の実施形態について図面に基づいて説明する。
<実施形態1>
図1は、索引情報作成装置の一例である情報処理装置(コンピュータ)1のハードウェア構成の一例を示す図である。図1に示されるように情報処理装置1は、ハードウェア構成として、CPU11を含む。CPU11が、記憶装置13に記憶されているプログラムに基づき処理を行うことによって、後述する索引情報作成等の機能、又はフローチャートに係る処理を実現する。
CPU11には、バス10を介して、入力装置12、記憶装置13及び表示装置14が接続されている。記憶装置13は、例えば、ROM、RAM、ハードディスク装置等からなり、上述した各プログラム以外に、プログラムに基づく処理で用いられるデータを記憶する。表示装置14は、情報を表示する例えばディスプレイ等である。入力装置12は、情報を入力する例えば操作キー等である。
なお、入力装置12及び表示装置14は、情報処理装置1の必須の構成要素ではない。
図2は、情報処理装置1の機能構成の一例を示す図(その1)である。図2に示されるように、情報処理装置1は、機能構成として、検索対象文書抽出部20と、文字列抽出部21と、置き換え部22と、索引情報作成部23と、を含む。
検索対象文書抽出部20は、検索対象となる複数の文書を抽出(又は選択)する。図3は、検索対象文書抽出部20が抽出した文書を識別する文書番号と、前記文書の内容と、を示す図である。
文字列抽出部21は、検索対象文書抽出部20が抽出した、検索対象となる複数の文書から、文書間で共通する出現頻度が高く、かつ、長い文字列を抽出する。例えば、文字列抽出部21は、検索対象となる複数の文書が図3に示すような場合、"ありがとう"の文字列を文書間で共通する文字列として抽出する。図3は、文書番号及び文書の内容の一例を示す図である。
なお、文字列抽出部21は、文書に記載されたデータを木構造で表し、木構造の各ノードを通る毎にインクリメントするカウンタを備えて、カウンタ値を基に頻出文字列を抽出する。文字列抽出部21の詳細は、後述する図13以降、説明を行う。
そして、文字列抽出部21は、抽出した文字列(例えば"ありがとう")と、前記文字列を含む文書の文書番号のグループと、を対応付けた、図4に示すような情報を作成し、記憶装置13の例えばRAM上に一時的に保持する。ここで、図4は、文書間で共通する文字列と、前記文字列を含む文書の文書番号のグループと、を対応付けた情報の一例を示す図である。
置き換え部22は、文字列抽出部21が作成した図4に示すような情報に含まれる文書番号のグループを、一つの文字で表される新たな文書番号に置き換え(図5参照)、文字列抽出部21によって抽出された文字列と、置き換えた新たな文字番号と、を対応付けた、図6に示すような情報を作成し、記憶装置13の、例えばRAM上に一時的に保持する。ここで、図5は、共通する文字列を含む文書の文書番号のグループと、新たな文書番号と、を対応付けた情報の一例を示す図である。また、図6は、文字列抽出部21によって抽出された文字列と、置き換えた新たな文字番号と、を対応付けた情報の一例を示す図である。
なお、置き換え部22は、新たな文書番号として置き換える際、"X"のような文字では無く、文書番号として使用されていない数字(図4の例であれば、1、2、3、5、6、9、10以外の数字である"−1")を、新たな文書番号として用い、置き換えを行うようにしてもよい。
なお、置き換え部22は、置き換えた文書番号のグループと、新たな文字番号と、を対応付けた、図5に示されるような情報(文書番号変換情報)を、記憶装置13のHDD上に保存されている、検索の際に用いられる索引辞書データに追加して保存する。
索引情報作成部23は、置き換え部22が作成した図6に示される情報に基づき、文書間で共通する文字列をN−gram(本実施形態の例ではN=2のバイグラム)で分割し、図7に示されるような索引情報を作成し、前記索引辞書データに索引として追加して保存する。図7は、本実施形態に係る索引情報の一例を示す図である。
一方、図8は、従来の方法で作成された索引情報の一例を示す図である。
図7と、図8と、を比較すると、本実施形態の方法で作成した索引情報の方が、記憶容量が少なくて済むことが解かる。例えば、図8の例では、文書番号の最大を10としているが、実際、本発明が対象としている検索対象の文書数(文書番号)は1億程度を想定している。このような場合、図8に示されるような索引情報だけで相当な記憶領域を必要とする。一方、本実施形態で作成された索引情報では、共通する文字列を含む文書の文書番号のグループを、一つの文字等で表される新たな文書番号に置き換えているので、従来に比べて、索引(索引情報)のサイズが小さくなり、必要とする記憶領域を削減することができる。
なお、索引情報作成部23は、勿論、検索対象文書抽出部20が抽出した文書に含まれる他の文字列(他の文書に共通して含まれていない文字等)に基づき、上述した索引情報以外の索引情報も作成する。図3を例に説明を行うと、索引情報作成部23は、索引語:三橋、文書番号:1の索引情報や、索引語:橋で、文書番号:1等の索引情報も作成する。
図9は、索引情報作成処理の一例を示すフローチャートである。
ステップS10において、検索対象文書抽出部20は、検索対象となる複数の文書を抽出(又は選択)する。
ステップS11において、文字列抽出部21は、検索対象文書抽出部20が抽出した、検索対象となる複数の文書から、文書間で共通する、出現する頻度が高く、かつ、長い文字列を抽出する。なお、この抽出する処理の詳細は、後述する図13以降の図を用いて説明を行う。また、文字列抽出部21は、抽出した文字列と、前記文字列を含む文書の文書番号のグループと、を対応付けた、図4に示すような情報を作成し、記憶装置13のRAM上に一時的に保持する。
ステップS12において、置き換え部22は、ステップS11で作成された図4に示すような情報に含まれる文書番号のグループを、一つの文字で表される新たな文書番号に置き換え(図5参照)、文字列抽出部21によって抽出された文字列と、置き換えた新たな文字番号と、を対応付けた、図6に示すような情報を作成し、記憶装置13のRAM上に一時的に保持する。なお、置き換え部22は、置き換えた文書番号のグループと、新たな文字番号と、を対応付けた、図5に示されるような情報(文書番号変換情報)を、記憶装置13のHDD上に保存されている、検索の際に用いられる索引辞書データに追加して保存する。
ステップS13において、索引情報作成部23は、ステップS12で作成された図6に示される情報に基づき、文書間で共通する文字列をN−gram(本実施形態の例ではN=2のバイグラム)で分割し、図7に示されるような索引情報を作成し、前記索引辞書データに索引(索引情報)として追加して保存する。
以下、図10〜図12を用いて、本実施形態の処理(又は方法)により、従来の索引情報のサイズと比べて何バイトのメモリを削減可能か示す。なお、以下、図1に示されるように文字長mの部分文字列がn個の文書に共通して存在した場合で、かつ、文書番号を1つ記録するのにbバイト必要とするものとして説明を行う。図10は、部分文字列及び部分文字列が含まれる文書の文書番号のグループの一例を示す図である。
図11は、従来の方法で作成された索引情報の一例を示す図である。図11に示されるように、従来の方法で作成された索引情報の記憶容量は、(m−1)×n×bバイトである。
図12は、本実施形態の方法で作成された索引情報の一例を示す図である。図12に示されるように、本実施形態の方法で作成された索引情報の記憶容量は、新たにn+1個の文書番号変換情報の記憶領域が増えるので、(n+1)×b+(m−1)×b=(m+n)×bバイトである。
よって、本実施形態の方法(又は処理)により、削減することができる記憶容量は、(m−1)×n×b−(m+n)×b={(n−1)×(m−2)−2}×bバイトとなる。
従って、文字列抽出部21によって長い文字列の頻出文字列を抽出することによって、m、nは大きくなり、より記憶容量を削減することが可能になる。
図13は、文字列抽出部21の一例を示す図である。図13に示されるように、文字列抽出部21は、前処理部31と、木構造生成部32と、算出部33と、切断部34と、接続部35と、出力部36と、を含む。
前処理部31は、検索対象文書抽出部20が抽出した検索対象文書から所定のデリミタ(例えば、"、"や"。"等)に基づき、文字列を読み込む。
木構造生成部32は、前処理部31が読み込んだ文字列に基づいて、前記文字列に含まれる各文字をノードとする、図14に示されるような木構造を生成する。図14は、木構造の一例を示す図である。木構造生成部32は、前記文字列に含まれる各文字をノードに設定する際に、通過したノードに対応するカウンタの値を一つインクリメントする。図14の例では、カウンタの値をnで表しており、上述したnの意味と同一のものである。
また、図14において、mは文字列の長さを表しており、上述したmの意味と同一のものである。また、図14において、各枝の最後に付されてある四角内の番号は文書番号を表しており、各枝(文字列)が含まれていた文書を示すものである。
なお、木構造生成部32は、予め設定された文字数(例えば、2文字以上の文字数)を各ノードに設定してもよい。例えば、図14において「ご(n=1,m=1)」「め(n=1,m=2)」「ん(n=1,m=3)」「ね(n=1,m=4)」と生成された木構造において、各ノードに2文字ずつ設定された場合、各ノードに「ごめ(n=1,m=1)」「めん(n=1,m=2)」「んね(n=1,m=3)」のようになる。また、各ノードに設定する文字数について、ユーザが任意に設定できる設定ツールを設けておいてもよい。つまり、木構造生成部32は、前記設定ツールを介して設定された文字数を各ノードに設定してもよい。
また、木構造生成部32は、文字の種類に応じて、各ノードに設定する文字数を自身で設定してもよい。例えば、木構造生成部32は、平仮名であれば各ノードに2文字ずつ設定すると設定し、漢字であれば3文字ずつノードに設定すると設定する。
また、木構造生成部32は、各ノードに設定する文字数をインデックスサイズとあわせて設定してもよい。例えば、木構造生成部32は、インデックスが2文字単位で作成されるのであれば各ノードに設定する文字数を2文字ずつと設定し、インデックスが3文字単位で作成されるのであれば各ノードに設定する文字数を3文字ずつと設定し、木構造を生成する。
算出部33は、圧縮期待値Sを算出する。本実施形態の例では、算出部33は、圧縮期待値Sを、
S={(n−1)×(m−2)−2}×b
を用いて算出する。なお、本実施形態の例では、圧縮期待値Sは、上述した式で表されるが、文字列抽出部21を適用(実装)する装置や木構造生成部32において生成される木構造の各ノードに設定される文字数等に応じて圧縮期待値Sを求める式は変わり得るものである。
切断部34は、算出部33が算出した圧縮期待値Sに基づき、親ノードの圧縮期待値が子ノードの圧縮期待値より大きい場合、前記親ノードと前記子ノードとの間を切断する。
図15は、切断の一例を示す図(その1)である。図15において、「ありがとうございました」の「う」は、n=3、m=5である。したがって、算出部33は、前記「う」の圧縮期待値Sを{(3−1)×(5−2)−2}×b=4bと算出する。また、図15において、「ありがとうございました」の「ご」は、n=2、m=6である。したがって、算出部33は、前記「ご」の圧縮期待値Sを{(2−1)×(6−2)−2}×b=2bと算出する。よって、親ノードの圧縮期待値が子ノードの圧縮期待値より大きいので、切断部34は、図15に示すように、「ありがとうございました」の「う」と「ご」との間を切断する。
接続部35は、切断部34で切断され、木構造から切り離された枝の最上位のノードが表す文字と、木構造のルート直下のノードが表す文字と、に基づいて、木構造から切り離された枝を木構造に接続する。より具体的に説明すると、接続部35は、切断部34で切断され、木構造から切り離された枝の最上位のノードが表す文字と、木構造のルート直下のノードが表す文字と、が同一の場合、ルート直下のノードに木構造から切り離された枝を接続する。
接続部35は、切断部34において、木構造から切り離された「ございました」の最上位のノードが表す文字「ご」に基づき、木構造のルート直下のノードが表す文字の中で「ご」が存在するか否か検索する。図15の例の場合、木構造に「ごめんね」の枝があり、ルート直下のノードが表す文字に「ご」が存在するため、接続部35は、木構造から切り離された「ございました」を図16に示すように、木構造に接続する。図16は、接続(マージ)の一例を示す図である。
また、切断部34は、上述したような圧縮期待値に基づいて、切断を行う他に、図17に示されるように、カウンタの値が1の枝を切断するようにしてもよい。図17は、切断の一例を示す図(その2)である。
また、切断部34は、上述したような圧縮期待値に基づいて、切断を行う他に、図18に示されるように、枝に関連付けられている文書が1つの枝を切断するようにしてもよい。図18は、切断の一例を示す図(その3)である。また、図19は、切断及び接続が実行された後の木構造の一例を示す図である。
再び、図13の説明に戻り、出力部36は、木構造の枝の末端のノードの圧縮期待値が1以上の枝を文書に共通して出現する頻度が高く、かつ、長い文字列として出力する。
図20は、文字列抽出処理の一例を示すフローチャートである。
ステップS20において、前処理部31は、検索対象文書抽出部20が抽出した検索対象文書から所定のデリミタ(例えば、"、"や"。"等)に基づき、文字列を読み込む。
ステップS21において、木構造生成部32は、前処理部31が読み込んだ文字列に基づいて、前記文字列に含まれる各文字をノードとする、図14に示されるような木構造を生成する。なお、このとき、ノードに設定する文字数は、上述の通り、1文字に限定する必要はなく、木構造生成部32は、適宜設定された(又は自身で設定した)文字数を各ノードに設定してもよい。
ステップS22において、例えば文字列抽出部21は、予め定められた回数、ステップS23〜ステップS25の処理を繰り返したか否かを判定する。文字列抽出部21は、予め定められた回数、ステップS23〜ステップS25の処理を繰り返したと判定すると、ステップS26に進み、予め定められた回数、ステップS23〜ステップS25の処理を繰り返していないと判定すると、ステップS23に進む。
なお、ステップS22において、例えば文字列抽出部21は、木構造のノードの数が最小になったか否か(つまり、ステップS23〜ステップS25の処理を繰り返してもノードの数が変化しなくなったか否か)に基づいて、ステップS23に進むか、ステップS26に進むかを判断するようにしてもよい。つまり、例えば文字列抽出部21は、木構造のノードの数が最小になったと判定すると、ステップS26に進み、木構造のノードの数が最小ではないと判定すると、ステップS23に進むようにしてもよい。
ステップS23において、算出部33は、圧縮期待値Sを算出する。
ステップS24において、切断部34は、ステップS23で算出された圧縮期待値Sに基づき、親ノードの圧縮期待値が子ノードの圧縮期待値より大きい場合、前記親ノードと前記子ノードとの間を切断する。また、切断部34は、更に、カウンタの値が1の枝を切断したり、枝に関連付けられている文書が1つの枝を切断したりする。なお、切断部34は、カウンタの値が1の枝を切断すると共に枝に関連付けられている文書が1つの枝を切断してもよいし、どちらか一方だけを実行するようにしてもよい。また、切断部34は、圧縮期待値Sに基づく切断のみを実行するようにしてもよい。
ステップS25において、接続部35は、ステップS24で切断され、木構造から切り離された枝の最上位のノードが表す文字と、木構造のルート直下のノードが表す文字と、が同一の場合、ルート直下のノードに木構造から切り離された枝を接続する。
一方、ステップS26において、出力部36は、木構造の枝の末端のノードの圧縮期待値が1以上の枝を文書に共通して出現する頻度が高く、かつ、長い文字列として出力する。
以上、上述したように本実施形態によれば、文書に共通して出現する頻度が高く、かつ、長い文字列を出力(又は抽出)することができる。また、文書に共通して出現する頻度が高く、かつ、長い文字列を出力(又は抽出)することができることにより、検索エンジンにおけるインデックスサイズの削減及びインデックスサイズの削減による検索処理の高速化が可能となる。また、木構造の各ノードに複数文字を設定した場合は、各ノードに持たせた情報を、そのまま検索エンジンにおけるインデックス作成に使用可能になるので、検索処理の高速化が可能となる。
また、上述した実施形態1では、「文書に共通して出現する頻度が高く、かつ、長い文字列を出力(又は抽出)することができる」を例に説明を行い、N−gramの検索エンジンにおけるインデックスサイズの削減及びインデックスサイズの削減による検索処理の高速化について説明したが、本発明の実施はN−gramの検索処理の高速化に限定されるものではない。
<実施形態2>
文書に共通して出現する頻度が高い文字列(頻出文字列)を抽出することを応用し、例えば、形態素解析の辞書作成支援に用いてもよい。この場合、上述した段落番号0020〜0025等で説明した文字列抽出部21による処理を行うことによって頻出文字列を抽出し、抽出した文字列を辞書に登録する。また、木構造生成部32は、実施形態1においてはn個の文書に共通して存在した場合をカウントしたが、実施形態2においては、同一文書中に複数回出現する文字列があった場合、同一文書中に出現した回数についても同様にカウンタの値をインクリメントしてもよい。このようにして作成された辞書を使用して、CPU11が、形態素解析を行うことによって、従来の形態素解析において困難であった特殊用語(新語、専門用語、略語等)に対しても対応が可能になり、精度が向上する。
また検索エンジンにおいては、そもそも辞書として持つのではなく、抽出した頻出文字列を用いてインデックスを作成し、辞書不要の検索エンジンを実現することも可能である。
また実施形態1においては、N−gram検索エンジンにおけるインデックスサイズの削減について説明したため、文字列抽出部21の算出部33は、圧縮期待値をS={(n−1)×(m−2)−2}×bを用いて算出した。しかしながら、実施形態2のように文字列長よりも出現頻度(n)をより重視する場合、Sの式を実施形態1のときより"n"の影響を受け易い式にすればよい。例えば、文字列抽出部21の算出部33は、S={(n2−1)×(m−2)−2}×b等を用いて期待値を算出するようにしてもよい。
また、文字列の長さ(m)を予め設定して、頻出文字列長を調整することによって、目的に適った辞書が作成し易くするようにしてもよい。
また、文字列の長さ(m)や式(S)について、ユーザが任意に設定できる設定ツールを設けておいてもよい。
以上、本実施形態によれば、文書に共通して出現する頻度が高く、かつ、長い文字列を出力(又は抽出)することができることにより、圧縮率の高いスライド型辞書登録用の初期値の生成が可能となる。
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
11 CPU
12 入力装置
13 記憶装置
14 表示装置

Claims (9)

  1. 対象となる文書に含まれる文字列に基づいて、前記文字列に含まれる設定された文字数の文字をノードとする木構造を生成する木構造生成手段を有し、
    前記木構造生成手段は、前記文字列に含まれる各字をノードに設定する際に、通過したノードに対応するカウンタの値をインクリメントし、
    更に、
    各ノードに対応するカウンタの値と、各ノードまでの文字列長と、に基づき、出力する文字列に関するノード期待値を算出する算出手段と、
    親ノードの前記ノード期待値と、子ノードの前記ノード期待値と、に基づき、前記親ノードと前記子ノードとの間を切断する切断手段と、
    前記切断手段で切断され、前記木構造から切り離された枝の最上位のノードが表す文字に基づいて、前記木構造から切り離された枝を前記木構造に接続する接続手段と、
    前記木構造の枝の末端のノードの前記ノード期待値が1以上の枝を文書に共通して出現する文字列として出力する出力手段と、
    を有することを特徴とする情報処理装置。
  2. 前記算出手段は、各ノードに対応するカウンタの値と、各ノードまでの文字列長と、前記文書を識別する文書番号を記憶するのに要するリソース情報と、に基づき、出力する文字列に関するノード期待値を算出することを特徴とする請求項1に記載の情報処理装置。
  3. 前記切断手段は、親ノードの前記ノード期待値が子ノードの前記ノード期待値より大きい場合、前記親ノードと前記子ノードとの間を切断することを特徴とする請求項1又は2に記載の情報処理装置。
  4. 前記木構造生成手段は、文字列を表す前記木構造の枝と、前記文字列が含まれる文書と、を関連付け、
    前記切断手段は、親ノードの前記ノード期待値が子ノードの前記ノード期待値より大きい場合、前記親ノードと前記子ノードとの間を切断すると共に、関連付けられている文書の数が一つの枝のノード間を切断することを特徴とする請求項3に記載の情報処理装置。
  5. 前記切断手段は、親ノードの前記ノード期待値が子ノードの前記ノード期待値より大きい場合、前記親ノードと前記子ノードとの間を切断すると共に、ノードに対応するカウンタ値が所定の値のノードの前、又は後を切断することを特徴とする請求項3に記載の情報処理装置。
  6. 前記接続手段は、前記切断手段で切断され、前記木構造から切り離された枝の最上位のノードが表す文字と、前記木構造のルート直下のノードが表す文字と、に基づいて、前記木構造から切り離された枝を前記木構造に接続することを特徴とする請求項1乃至5の何れか1項に記載の情報処理装置。
  7. 前記接続手段は、前記切断手段で切断され、前記木構造から切り離された枝の最上位のノードが表す文字と、前記木構造のルート直下のノードが表す文字と、が同一の場合、前記ルート直下のノードに前記木構造から切り離された枝を接続することを特徴とする請求項6に記載の情報処理装置。
  8. 情報処理装置が実行する共通文字列出力方法であって、
    対象となる文書に含まれる文字列に基づいて、前記文字列に含まれる設定された文字数の文字をノードとする木構造を生成する木構造生成ステップを有し、
    前記木構造生成ステップでは、前記文字列に含まれる各字をノードに設定する際に、
    通過したノードに対応するカウンタの値をインクリメントし、
    更に、
    各ノードに対応するカウンタの値と、各ノードまでの文字列長と、に基づき、出力する文字列に関するノード期待値を算出する算出ステップと、
    親ノードの前記ノード期待値と、子ノードの前記ノード期待値と、に基づき、前記親ノードと前記子ノードとの間を切断する切断ステップと、
    前記切断ステップで切断され、前記木構造から切り離された枝の最上位のノードが表す文字に基づいて、前記木構造から切り離された枝を前記木構造に接続する接続ステップと、
    前記木構造の枝の末端のノードの前記ノード期待値が1以上の枝を文書に共通して出現する文字列として出力する出力ステップと、
    を有することを特徴とする共通文字列出力方法。
  9. コンピュータを、
    対象となる文書に含まれる文字列に基づいて、前記文字列に含まれる設定された文字数の文字をノードとする木構造を生成する木構造生成手段として機能させ、
    前記木構造生成手段は、前記文字列に含まれる各字をノードに設定する際に、通過したノードに対応するカウンタの値をインクリメントし、
    前記コンピュータを、更に、
    各ノードに対応するカウンタの値と、各ノードまでの文字列長と、に基づき、出力する文字列に関するノード期待値を算出する算出手段と、
    親ノードの前記ノード期待値と、子ノードの前記ノード期待値と、に基づき、前記親ノードと前記子ノードとの間を切断する切断手段と、
    前記切断手段で切断され、前記木構造から切り離された枝の最上位のノードが表す文字に基づいて、前記木構造から切り離された枝を前記木構造に接続する接続手段と、
    前記木構造の枝の末端のノードの前記ノード期待値が1以上の枝を文書に共通して出現する文字列として出力する出力手段と、
    して機能させることを特徴とするプログラム。
JP2009193547A 2008-09-04 2009-08-24 情報処理装置、共通文字列出力方法及びプログラム Expired - Fee Related JP5366709B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009193547A JP5366709B2 (ja) 2008-09-04 2009-08-24 情報処理装置、共通文字列出力方法及びプログラム

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2008227570 2008-09-04
JP2008227570 2008-09-04
JP2009193547A JP5366709B2 (ja) 2008-09-04 2009-08-24 情報処理装置、共通文字列出力方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2010086525A JP2010086525A (ja) 2010-04-15
JP5366709B2 true JP5366709B2 (ja) 2013-12-11

Family

ID=42250354

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009193547A Expired - Fee Related JP5366709B2 (ja) 2008-09-04 2009-08-24 情報処理装置、共通文字列出力方法及びプログラム

Country Status (1)

Country Link
JP (1) JP5366709B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130222389A1 (en) * 2010-11-09 2013-08-29 Nec Corporation Information processing device

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4456574B2 (ja) * 2006-03-13 2010-04-28 富士通株式会社 圧縮データ送信方法
JP4740060B2 (ja) * 2006-07-31 2011-08-03 富士通株式会社 重複データ検出プログラム、重複データ検出方法および重複データ検出装置
JP4491480B2 (ja) * 2007-10-11 2010-06-30 株式会社日立製作所 インデクス構築方法、文書検索装置及びインデクス構築プログラム
JP5184987B2 (ja) * 2008-06-17 2013-04-17 新日鉄住金ソリューションズ株式会社 索引情報作成装置、索引情報作成方法及びプログラム

Also Published As

Publication number Publication date
JP2010086525A (ja) 2010-04-15

Similar Documents

Publication Publication Date Title
CN107797991B (zh) 一种基于依存句法树的知识图谱扩充方法及系统
JP5138046B2 (ja) 検索システム、検索方法およびプログラム
KR20130108537A (ko) 문자열 생성 방법, 프로그램 및 시스템
CN106547765B (zh) 基于sql的数据库管理方法及装置
CN112115313A (zh) 正则表达式的生成、数据提取方法、装置、设备及介质
WO2011086637A1 (ja) 要求抽出システム、要求抽出方法および要求抽出プログラム
JP2007219620A (ja) テキスト検索装置、テキスト検索プログラム、及びテキスト検索方法
JP5869948B2 (ja) パッセージ分割方法、装置、及びプログラム
JP5366709B2 (ja) 情報処理装置、共通文字列出力方法及びプログラム
CN108776705B (zh) 一种文本全文精确查询的方法、装置、设备及可读介质
Lin et al. Combining a segmentation-like approach and a density-based approach in content extraction
US10380195B1 (en) Grouping documents by content similarity
CN105608201A (zh) 一种支持多关键词表达式的文本匹配方法
JP2009271819A (ja) 文書検索システム、文書検索方法および文書検索プログラム
JP5184987B2 (ja) 索引情報作成装置、索引情報作成方法及びプログラム
JP2014225158A (ja) 文書要約装置、方法、及びプログラム
Kasthuri et al. An improved rule based iterative affix stripping stemmer for Tamil language using K-mean clustering
JP5505028B2 (ja) 翻訳支援装置、方法及びプログラム
JP4940251B2 (ja) 文書処理プログラム及び文書処理装置
JP5582358B2 (ja) 文書検索システム、文書検索方法、及びプログラム
JP5642229B2 (ja) 重要性判定システム、重要性判定方法及びコンピュータプログラム
JP2003099429A (ja) 用語集生成装置及び用語集生成プログラム並びに用語集検索装置
JP2018206189A (ja) 情報収集装置、および、情報収集方法
JP6777601B2 (ja) データ処理装置、データ処理方法及びデータ処理プログラム
JP5771971B2 (ja) 情報処理装置、情報処理方法、及びコンピュータプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120817

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130802

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130813

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130910

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees