JP5013081B2 - 情報解析装置、情報解析方法、及び情報解析プログラム - Google Patents

情報解析装置、情報解析方法、及び情報解析プログラム Download PDF

Info

Publication number
JP5013081B2
JP5013081B2 JP2007163485A JP2007163485A JP5013081B2 JP 5013081 B2 JP5013081 B2 JP 5013081B2 JP 2007163485 A JP2007163485 A JP 2007163485A JP 2007163485 A JP2007163485 A JP 2007163485A JP 5013081 B2 JP5013081 B2 JP 5013081B2
Authority
JP
Japan
Prior art keywords
information
label
classification
character
extracted
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.)
Active
Application number
JP2007163485A
Other languages
English (en)
Other versions
JP2008027431A (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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2007163485A priority Critical patent/JP5013081B2/ja
Publication of JP2008027431A publication Critical patent/JP2008027431A/ja
Application granted granted Critical
Publication of JP5013081B2 publication Critical patent/JP5013081B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、デジタル文書に含まれる、特に潜在的に表形式となりうるキーワード列から特定種類の情報を抽出して分類する情報解析装置、情報解析方法、及び情報解析プログラムに関する。
現在の一般的な企業に代表される殆どの組織には、連絡名簿や顧客情報、財務情報、設備情報、営業記録情報などをそれぞれ1件または複数件まとめて記載した文書が大量に存在する。これらの中には、本来データベースとして管理した方が情報の活用と保護の両面で優れているものの、とりあえず文書として記録したままになっているものも多い。今般、個人情報保護法の施行や日本版SOX法(Sarbanes‐Oxley act)制定の動きなどにより、それら組織内文書の多くは以前より厳密に洗い出して分類し、管理・保護する必要性が高まってきている。1個人のみに関する顧客情報や1部門のみに関する財務情報が記載された文書に比べ、複数の顧客情報や財務情報がまとめて記載された文書は、一般的に有用性が高いと共に漏洩や逸失による被害も大きく、より重要な文書と考えられる場合が多い。また、多くの場合顧客情報や財務情報などのような特定種類の情報が多数記載された文書では当該情報を表形式またはリスト形式で列挙しているため、文書中の表や表に順ずるリストから顧客情報や財務情報などを1件単位で自動的に抽出できれば、情報の活用と保護をより確実且つ容易にすることができる。
しかし、リスト形式を含む表形式を用いられた文書を構成する表データの記述方法は、文書ファイルのフォーマットや表の構成の仕方によって千差万別である。例えば、ある文書はマイクロソフト社のExcelというソフトウェアが用いられることによって、Excelブック形式という専用の形式で表データが記述される。一方、別のある文書はWebブラウザで閲覧するためにHTML(HyperText Markup Language)形式という表形式で記述されるため、HTML専用のタグを使って表データが記述される。このように、文書中の表データはそれぞれのファイル形式専用の構造情報を用いて記述され、さらに個々の表データによっても要素の構成が異なる。
このため、様々な形式で記述された表データやレコードを文書から検出する従来の手法の例としては、特許文献1のように、HTML文書を対象とした場合はTABLEタグやTRタグなどを手掛かりに表データの構造を解析し、同様に前述のExcelなどによる文書を対象とした場合はそのExcelなどのソフトウェア専用の構造解析方法を用いて表データを抽出する手法が開示されている。また、明確な表としての区切り線がなくテキストエディタで要素を列挙したような表データの記述方法もあるが、これに対しては特許文献2のように、表データを構成するレコードの先頭や末尾を識別するためのテキストデータのパタンを予め与えておくことで、個々のレコードを識別して表データの要素を抽出する手法が開示されている。
特開2003−150624号公報 特開平9−282208公報
しかし、上記従来の手法は以下に示すような問題点を有する。
第1の問題点は、様々なファイル形式に対応する表構造解析方法を予め個別に用意しておくことは、ファイル形式の詳細な仕様が公開されていない場合もあるため、一般に容易ではないという点である。
第2の問題点は、ファイルの拡張子が同じであっても文書を作成するソフトウェアやファイル形式自体のバージョンが異なると、表データなどの構造記述方法が異なってくる場合があるという点であり、さらに、将来の新たなファイル形式への対応をその都度行う必要があるという点である。
第3の問題点は、ファイル形式ではなくテキストデータの記述パタンを使ってレコードを検出する従来の方法は、ファイル形式には依存しないものの、予め個々の表データにおけるレコードの記述パタンを全て知っておく必要があるため、多くの人やシステムによって記述された多種多様な表データを含む文書に当該従来の方法を適用することは困難であるという点である。
本発明は、以上のような問題に鑑みなされたものであり、データのファイル形式や表データを構成するレコードの記述パタンが予め分からない場合でも、精度良く表データを構成する個々のレコードを推定し、推定したレコードから文書中の特定種類の情報を抽出して分類する情報解析システム、情報解析方法、情報解析装置及び情報解析プログラムを提供することを目的としている。
本発明の文字情報を含むデータの構成を解析する情報解析装置は、前記データの文字情報から所定の文字列を抽出する文字情報抽出部と、抽出した前記各文字列を、前記文字列の分類を表すラベルからなる一連のラベル列に変換するラベル化部と、前記ラベル列内における前記ラベルの出現パタンを推定するラベル出現パタン推定部と、前記推定した個々の出現パタン毎にラベルの組を抽出する推定パタン情報抽出部と、前記抽出した出現パタン毎のラベルの組を、その組合せに基づいて分類する抽出情報分類部とを備える。
本発明の文字情報を含むデータの構成を解析する情報解析方法は、データの文字情報から所定の文字列を抽出し、抽出した各文字列を、文字列の分類を表すラベルからなる一連のラベル列に変換し、ラベル列内におけるラベルの出現パタンを推定する。さらに、推定した個々の出現パタン毎にラベルの組を抽出し、抽出した出現パタン毎のラベルの組を、その組合せに基づいて分類する。
本発明の文字情報を含むデータの構成の解析を実行させるための情報解析プログラムは、コンピュータに、データの文字情報から所定の文字列を抽出する文字情報抽出処理と、抽出した各文字列を、文字列の分類を表すラベルからなる一連のラベル列に変換するラベル化処理と、ラベル列内におけるラベルの出現パタンを推定するラベル出現パタン推定処理と、推定した個々の出現パタン毎にラベルの組を抽出する推定パタン情報抽出処理と、抽出した出現パタン毎のラベルの組を、その組合せに基づいて分類する抽出情報分類処理とを実行させる。
以上のような本発明によれば、ラベルの出現パタンに基づいて、文字情報を含むデータの構成を推定し、所定の分類条件に適合する文字情報を取得できる。
本発明によれば、データのファイル形式や表を構成するレコードの記述パタンが予め分からない場合や、個々のレコードの要素が部分的に欠損している不完全な表を対象とする場合や、1レコードが複数行から構成されている場合においても、ラベルの出現パタンからデータの分類に基づいた構成を精度良く推定し、推定した構成に基づいて、データの文字情報から抽出した各文字列を分類し、所定の分類条件に適合する文字情報を取得できる。
(第1の実施の形態の構成)
図1は、本発明の第1の実施の形態による情報解析装置の機能構成を示すブロック図である。
図1を参照すると、本実施の形態による情報解析装置10は、表要素列抽出手段1と、表要素ラベル化手段2と、ラベル出現パタン推定手段3と、分類ルール4と、分割基準格納手段5と、情報抽出手段6と、情報分類手段7とを備える。
ここで、表要素列抽出手段1は、データを入力してテキストデータを抽出する機能と、抽出したテキストデータから表(表データ)の要素となる一連のキーワードを取得する機能を有する。なお、表要素列抽出手段1によってテキストデータを抽出されるデータは、例えば、表形式の文書や実行プログラムファイル等を対象として含んでいてもよく、データの種類に特に制限はない。
すなわち、表要素列抽出手段1は、入力されたデータから抽出したテキストデータを参照することによって、表(表データ)を構成しうる要素集合を当該テキストデータから抽出する機能を有する。
表要素列抽出手段1においてデータからテキストデータを抽出する方法としては、データからレイアウト情報や表データの罫線情報などの表示制御用情報(例えばHTML文書におけるタグ情報)を取り除くことによってテキストデータを抽出する方法や、ASCIIやJISなど特定種類の文字コードに合致するバイナリデータを抽出する方法などがある。後者の方法では、対象とするデータはワードプロセッサやテキストエディタなどで作成された文書ファイルに限らず、テキストデータを内部に含みうる実行プログラムファイルなども対象とすることができる。
また、表要素列抽出手段1は、分割基準5に格納された分割基準に基づいて、抽出したキーワードが同じ表データを構成するキーワードであるか否かを判断する。
表要素ラベル化手段2は、表要素列抽出手段1によって取得した個々のキーワードを分類ルール4に格納された対応情報に基づいてその種類別にラベル付けする機能を有する。
すなわち、表要素ラベル化手段2は、テキストデータから抽出された1つの要素集合について、分類ルール4に格納された対応情報に基づいて各要素を種類別のラベルに置き換えることにより、当該要素集合を一連のラベルの列(以下、ラベル列)に変換する機能を有する。
ラベル出現パタン推定手段3は、表要素ラベル化手段2によって種類別に付されたラベルの列から1単位レコードを構成するラベル順列を推定し、当該ラベル順列をレコード推定結果として出力する機能を有する。
すなわち、ラベル出現パタン推定手段3は、得られたラベル列から同一種類のラベルが出現する繰り返しパタンを検出し、1回の繰り返しパタン分の単位ラベル列を1単位の情報を表すレコードと判定する機能を有する。
分類ルール4は、各種のキーワードとラベルとの対応関係を示す対応情報及び予め用意された、各ラベルに対応するキーワードの列を文書中から抽出するための分類基準情報(分類ルール)を格納する機能を有する。
分割基準格納手段5は、抽出したキーワードが同じ表データに属するか否かの基準を示す分割基準を格納する機能を有する。
情報抽出手段6は、ラベル出現パタン推定手段3によって推定結果として得られた1単位レコード分の単位ラベル順列及び分類ルール4に基づいて、各ラベルに対応するキーワードの列を文書中から抽出する機能を有する。また、情報抽出手段6は、当該抽出した情報を記憶する機能を有してもよい。
情報分類手段7は、分類ルール4に格納された分類基準情報との比較により、情報抽出手段6によって抽出されたキーワードの列から各単位レコード分の情報を分類する機能と、分類結果を抽出する機能とを有する。
図2は、本実施の形態による情報解析装置のハードウェア構成を示すブロック図である。
図2を参照すると、本実施の形態による情報解析装置10は、一般的なコンピュータ装置と同様のハードウェア構成によって実現することができ、CPU(Central Processing Unit)11、RAM(Random Access Memory)等のメインメモリであり、データの作業領域やデータの一時退避領域に用いられる主記憶部12、液晶ディスプレイ、プリンタやスピーカ等の提示部13、キーボードやマウス、スキャナ等の入力部14、周辺機器と接続してデータの送受信を行うインタフェース部15、ROM(Read Only Memory)、磁気ディスク、半導体メモリ等の不揮発性メモリから構成されるハードディスク装置である補助記憶部16、本情報処理装置の上記各構成要素を相互に接続するシステムバス17等を備えている。
本発明による情報解析装置10は、その動作を、情報解析装置10内部にそのような機能を実現するプログラムを組み込んだ、LSI(Large Scale Integration)等のハードウェア部品からなる回路部品を実装してハードウェア的に実現することは勿論として、上記した各構成要素の各機能を提供するプログラムを、コンピュータ処理装置上のCPU11で実行することにより、ソフトウェア的に実現することができる。
すなわち、CPU11は、補助記憶部16に格納されているプログラムを、主記憶部12にロードして実行し、情報解析装置10の動作を制御することにより、上述した各機能をソフトウェア的に実現する。
なお、第2〜第4の実施の形態において後述する情報解析装置も、情報解析装置10と同様のハードウェア構成を備えることによって、所定の機能をハードウェア的に又はソフトウェア的に実現することができる。
(第1の実施の形態の動作)
図3は、本実施の形態による情報解析装置の動作を示すフローチャートである。
本実施の形態による情報解析装置10は、図3に示すような手順で表のレコードに含まれる情報を分類する。
まず、表要素列抽出手段1が、入力されたデータからテキストデータを抽出し(ステップS101)、抽出したテキストデータから1つの表データを構成する一連のキーワード列を取得する(ステップS102)。
ステップS102におけるキーワード列の取得方法としては、例えば表要素列抽出手段1内の記憶手段に予め用意した辞書に含まれるキーワードと合致する文字列がテキストデータ中に見つかれば、その文字列を抽出する方法や、または、テキストデータの形態素解析を行ない、固有名詞のうち氏名や地名など文字情報の種類が特定できるものを全て抽出する方法や、これらの方法の他にも、正規表現などで定義した一定のパタンに合致する文字列を抽出することで、電話番号やメールアドレス、会社名、学校名、特定の形式を持つ製品名などを取得する方法などがある。
また、1つの表データを構成する範囲の上記キーワード列の区切りは、例えば、隣り合うキーワード間の距離で判断することができる。
すなわち、分割基準として同じ表データに含まれるキーワード間の最大許容距離(容量)を100バイトとすると、テキストデータから抽出されたあるキーワードとその次の抽出された別のキーワードとの間の距離がデータ長で100バイト以内であれば、表要素列抽出手段1は、分割基準に基づいて、それら2つのキーワードが同じ表データを構成するキーワードであると判断する。
次に、表要素ラベル化手段2が、ステップS102で得られた1つの表データを構成するキーワード列を分類ルール4に格納された対応情報に基づいてそれぞれ種類別のラベルに置き換える(ステップS103)。
分類ルール4において、例えば、キーワードの内、氏名はA、住所はBというように予めキーワードの種類と対応するラベルを定義しておくと、表要素ラベル化手段2によって山田や鈴木といった名前はAというラベルに、京都府や名古屋市といった地名はBというラベルに置き換えられる。このような置換処理を全てのキーワードに適用すると、一連のキーワード列はステップS103においてラベル列となる。
次に、表要素ラベル化手段2が、ステップS103で得られたラベル列の中で、隣り合うラベルが同じ種類のラベルであった場合、それらを1つのラベルにまとめる(ステップS104)。
例えば、AABBBCというラベル列はまとめられてABCというラベル列になる。
ここで、ステップS103で各キーワードをラベルに置き換える際、あるキーワードを置き換えた場合のラベルが、当該キーワードの直前のキーワードの置き換え後のラベルと同じであれば、その当該キーワードの置き換えた場合のラベルを削除することによって、表要素ラベル化手段2がステップS103とステップS104を同時に処理できる。
以上のようにして、ステップS104によって2つ以上同じ種類のラベルが連続しないラベル列ができると、ラベル出現パタン推定手段3が、そのラベル列の先頭からラベルを読み込んで(検出して)いき、既に検出したラベルと同一の種類のラベルを2度目に検出したとき、その直前までの一連のラベルを候補レコードとして記憶する(ステップS105)。
例えば、「ABCABDCA・・・」というラベル列があった場合、先頭からA、B、C、と読み込み、次にまたAを検出した時点で、その直前までのラベル列「ABC」を最初の候補レコードとする。
その後、ラベル出現パタン推定手段3は、2度目のAから再びA、B、と読み込むが、ここからはステップS105で記憶した候補レコード「ABC」と比較しながら読み込み、例えば、ABの次に新たなラベルDを検出すると、候補レコード上でもABの次にラベルDを挿入し、新たな候補レコードを「ABDC」として記憶する(ステップS106)。
その後、ラベル出現パタン推定手段3は、例えば、Dの次にCを検出し、さらに3度目のAを検出すると、ステップS106で記憶した新たな候補レコード「ABDC」との差異は無いことを理由として、当該新たな候補レコード「ABDC」を上記のようにそのまま後段のステップで利用する。
以降、ラベル出現パタン推定手段3は、同様に最新の候補レコードとステップS104によって得られたラベル列中のラベルを順に比較しながら、候補レコードを更新していき、ステップS104によって得られたラベル列を最後まで読み込んだ結果得られた最新の候補レコードを、その表データのレコード構成を表すラベル列と推定(判定)する(ステップS107)。
次いで、情報抽出手段6は、ステップS107で推定された候補レコードを、元のキーワード列の先頭から適用し、元のキーワード列に対応するラベル列に含まれる各ラベルに対応するキーワードを、1つの表を構成する一連のキーワード列から当該ラベル列の順に抽出し、それぞれ1単位レコード分のキーワード列を1つの情報として記憶する(ステップS108)。
次いで、情報分類手段7は、ステップS108で抽出された各ラベルに対応するキーワードを、そこに含まれるキーワードと分類ルール4に格納された分類基準情報との比較により分類し、分類結果を出力(抽出)する(ステップS109)。
(第1の実施の形態の効果)
本実施の形態によれば、データのファイル形式や表データを構成するレコードの識別パタンが予め分からない場合でも、表データを構成する個々のレコードについての種類及び構成順序を精度良く推定し、各レコードに相当する情報を抽出することができるため、データ中から顧客情報や財務情報などの所定の情報を正しく検出することができる。
その理由は、情報解析装置10が、入力されたデータからテキストデータを抽出し、抽出したテキストデータから一連のキーワードを抽出することによって、様々なファイル形式に依存することなく、しかも、予め個々の表データにおけるレコードの記述パタンを全て知っておくことを必要とすることなく、多くの人やシステムによって記述された多種多様な表データを含むデータから抽出した一連のキーワードを、キーワードの種類に対応付けられたラベルに置き換え、隣接する同一種類のラベルをまとめることによって生成したラベル列についての同一種類のラベルが繰り返し出現する繰り返しパタンに基づいて、1回の繰り返しパタン分の単位ラベル列を1単位の情報を表すレコードと判定するからである。
本発明の実施例1を、図面を参照して説明する。実施例1は、本発明を上記実施の形態1に適用したものであり、上記実施の形態1をより具体的な例によって説明するものである。なお、実施例1の構成及び動作の概略は上記実施の形態1の構成及び動作の概略と同様であるため、重複する部分については適宜省略して説明する。
(実施例1の動作)
実施例1において、あるデータ中に図4に示すような表データ401が記述されていたとする。前述の表要素列抽出手段1を用いて、この表データ401を構成する文字列をテキストデータとして抽出し、さらに、図5に示した名前(氏名・連名を含む)や地名(住所を含む)などいずれかの種類に合致するキーワードを当該テキストデータから抽出する(図3ステップS101〜S102参照)。
さらに、図5に示した各種のキーワードとラベルとの対応関係を示す対応情報501に基づき、例えば名前(氏名・連名)であればラベルAを適用することで、抽出したキーワード列を前述の表要素ラベル化手段2によりラベル列に置き換える(図3ステップS103参照)。
すなわち、図4の表データ401からは、表要素列抽出手段1によって、2行目から、名前(山田太郎)、名前(山田花子)、地名(東京都)、地名(港区)、メールアドレス(taro@sample.com)、3行目から、氏名(田中次郎)、地名(大阪府)、地名(大阪市)、地名(北区)、電話番号(06−XXXX−XXXX)、メールアドレス(tanaka@abc.net)、4行目から、氏名(小林三郎)、氏名(小林良子)、電話番号(XX−XXXX−XXXX)というキーワード列が抽出され(図3ステップS102参照)、図5に示した対応情報501に基づいて、表要素ラベル化手段2によって、これがラベル列{AABBCABBBDCAAD}に置換される(図3ステップS103参照)。
図6は、図3に示したフローチャートに対応させ、表データを構成するキーワード列から置き換えたラベル列から表データのレコード構成を表すラベル列を推定し、各レコードに含まれる情報を分類する一連の流れを示した説明図である。
まず、図4の表データ401から表要素列抽出手段1によって抽出されたキーワード列(図3ステップS102参照)が図5に示した対応関係に基づいて表要素ラベル化手段2によって置き換えられた(図3ステップS103参照)初期ラベル列(ステップS601)について、隣り合うラベルで同じ種類のラベルを1つにまとめると(図3ステップS104参照)、ラベル列{ABCABDCAD}が得られる(ステップS602)。
ラベル出現パタン推定手段3がこのステップS602で得られたラベル列{ABCABDCAD}を上記第1の実施の形態の通り先頭から順に読み込んでゆくと(図3ステップS105参照)、最初の候補レコード「ABC」が得られる(ステップS603)。
さらに、上記第1の実施の形態と同様にして(図3ステップS106参照)2つめの候補レコード「ABDC」が得られるが(ステップS604)、図6のステップS604では、最初の候補レコード「ABC」に対して、2つめの候補レコード「ABDC」にはあって最初の候補レコード「ABC」には無いラベルDに対応する位置にNULL値を示すアスタリスク「*」を配置している。以降、アスタリスク「*」表記のラベルは実際には存在しないが候補レコードとの対応上要素が抜けているラベルを表すものとする。
次いで、図6において、上記第1の実施の形態と同様に、ステップS602で得られたラベル列の左端を先頭として3度目のラベルAから順にラベルを読み込むと、Aの次にはDが検出される。
この時の最新の候補レコードは「ABDC」であるため(ステップS604参照)、ラベル出現パタン推定手段3は、3つめのレコードにラベルB相当の要素が欠如しているものと判断し、そのまま次のラベルDをラベル列から検出されたDと対応付ける。なお、欠如していると判断されたラベルBは、図6において、前述の方針に従いアスタリスク「*」が仮のラベルとして記載されている。また、この例のラベル列は2度目に検出されたDで終了しているため、ラベル出現パタン推定手段3が、最新の候補レコード「ABDC」の最後のラベルCも3つめのレコードから欠如しているものと推定(判定)することから、前述の方針に従い図6においてアスタリスク「*」で表現されている(ステップS605)。
ここまでのステップにより、ラベル出現パタン推定手段3は、候補レコード「ABDC」を最終的なレコード推定結果とする(ステップS606(図3ステップS107参照))。
なお、推定結果のレコードは、ラベル出現パタン推定手段3によって、元のラベル列からその要素となるラベルを1つも漏らすことなく、当該ラベル列を1つ以上のレコードに分割する。
次いで、情報抽出手段6が、最終的なレコード推定結果「ABDC」を、元のキーワード列の先頭から適用し、各レコードの要素集合を取得する。すなわち、情報抽出手段6は、ステップS607において、最初のレコードから「ABC」、次のレコードから「ABDC」、最後のレコードから「AD」を取得する。または、情報抽出手段6は、ステップS605におけるラベル列「AB*C」、「ABDC」、「A*D*」を用いてもよい。
次いで、情報分類手段7が、図5の対応情報501に基づいて、最終的なレコード推定結果「ABDC」の各要素A、B、D、Cを元のキーワードの種類を表す“名前(名)”、“地名(地)”、“電話番号(電)”、“メールアドレス”に還元し、各レコードに対応させ、対応させた結果(分類結果)を抽出する(ステップS607(図3ステップS109参照))。
このようにすることで、各レコードにどのような情報が含まれているかが分かる。
すなわち、図6のステップS607で得られた各レコードを構成するキーワードの種類に基づいて元のキーワード列から順にキーワードを抽出することにより、各レコードを構成する実際のキーワード集合が得られる。
ただし、図6のステップS602で行った、連続する同一種類のラベルを1つのラベルにまとめる操作や、連続する同一種類のキーワードを1つのラベルにまとめる操作に対応するため、1つのキーワードの種類に対して連続する同種のキーワード全てを対応付けて抽出する。
その結果、図4に示した表構造のテキストデータ(表データ401)からは図7に示すような3レコード分の表データ701が得られる。
すなわち、図4における“氏名”及び“連名”のフィールドが図7では1つの“名前”というフィールドにまとめられており、同様に図4の表では2つのフィールドから構成される“住所”が、図6では1つの“地名”フィールドに変換されている。
なお、ステップS607において各レコードにおける各要素A、B、D、Cを元のキーワードの種類に還元せずに、それ以前のステップ、例えば、ステップS601において、ラベルとしてアルファベットを付与せずに、図4の表データ401に基づいて、表要素列抽出手段1によって抽出されたキーワード列をキーワードの種類を表す“名前”、“地名”、“電話番号”、“メールアドレス”に置き換えてもよい。
図8及び図9は、最終的なレコード推定結果及びレコード分類結果の出力情報を説明する図である。
図8及び図9は、ステップS606において最終的なレコード推定結果とされた「ABDC」及び各レコードのラベル列を、図5に示した対応情報501に基づきキーワードの種類に対応付けて示した出力情報801及び出力情報901を説明する図であり、図8を参照すると、出力情報801に基づいて表データのレコード構成を推定することができ、図9を参照すると、出力情報901に基づいて表データの各レコードにどのような情報が含まれているかが分かる。
(実施例1の効果)
以上説明した実施例1による情報解析装置10の動作にかかる一連の分類情報抽出方法によれば、テキストデータ上のキーワード列を、対応関係を示す対応情報に基づいてラベル列に1対1に置き換えることによって、1次元のラベル列のみからレコードを推定するため、見かけ上の表データがどのような構造になっているかには依存することなく、また、キーワード列内において各種類のキーワードが出現することもあれば出現しないこともあるような場合であっても、レコードを推定することができると共に、表データの各レコードにどのような情報が含まれているかを認識することができる。
実施例1によれば、例えば、図4に示した表データが1行目に{氏名、連名、住所}を、2行目に{電話番号、メールアドレス}をそれぞれ記載した2行1組のレコード構成であったとしても、1レコードが複数行から構成されている場合でも、そこから得られるラベル列は上記図6ステップS601で得られるラベル列と同じであるため、すなわち、表データの構造が相違してもレコード推定結果に影響しないという効果を有すると共に、表データの各レコードにどのような情報が含まれているかを認識することができる。
また、実施例1によれば、図7の表データ701が示すように、図4に示したような文書中のテキストデータ(表データ401)から特定種類の情報を表形式で抽出できるだけでなく、表の構造を図5に示したような抽出対象の情報の定義にあわせて変換できるという効果もある。
このように、例えば“名簿”という情報を図4のように“名前”、“地名”、“メールアドレス”、“電話番号”の4種類のキーワードで構成されるものと定義し、さらにこれと同じ構成のデータベーススキーマを定義することで、本実施例を用いて任意の文書から“名簿”情報を一定の表形式で抽出し、データベースに登録して一元管理することができる。
本発明の実施例2を、図面を参照して説明する。実施例2は、上記実施例1の変形例であり、構成及び動作の概略が上記第1の実施の形態の構成及び動作の概略と同様であるため、上記実施例1と相違する点を中心に説明する。
(実施例2の動作)
図10は、図6の変形例を示すものであり、図3に示したフローチャートに対応させ、表データを構成するキーワード列から置き換えたラベル列から表データのレコード構成を表すラベル列を推定し、各レコードに含まれる情報を分類した結果を抽出する一連の流れを示した説明図である。
まず、表要素列抽出手段1によって抽出されたキーワード列が図5に示した対応関係に基づいて表要素ラベル化手段2によって置き換えられた初期ラベル列(ステップS1001)について、隣り合うラベルで同じ種類のラベルを1つにまとめると、ラベル列{ABCBDCBD}が得られたとする(ステップS1002)。
ラベル出現パタン推定手段3は、このステップS1002で得られたラベル列{ABCBDCBD}を上記第1の実施の形態の通り先頭から順に読み込んでゆき、「ABCB」と検出した時点で、「B」のラベルが「C」のラベルの後、「A」のラベルが検出されることなく再度出現しているため、既に検出したラベルと同一の種類のラベルを2度目に検出したこととなり、その直前までの一連のラベルを候補レコードとして記憶する(ステップS105参照)。すなわち、ラベル出現パタン推定手段3は、「ABCB」は「ABC」と「B」で異なるレコードに属すると判断し、最初の候補レコードを「ABC」と推定する(ステップS1003)。
この場合、図6を参照し、上記ステップS1003と同様にすると、ラベル出現パタン推定手段3は、候補レコード「ABDC」を最終的なレコード推定結果とする(ステップS1004〜ステップS1006)。
次いで、最終的なレコード推定結果「ABDC」及び図5の対応情報に基づいて、各レコードのラベル列を還元し、還元させた結果(分類結果)を抽出する(ステップS1007)。
(実施例2の効果)
以上説明した実施例2による表レコード推定装置10の動作にかかる一連の分類情報抽出方法によれば、例えば、先頭の「A」のような、ラベル列を読み込む際に基準とするラベルがラベル列内の各レコードに常には出現しない場合であっても、実施例1のような効果を達成することができる。
本発明の実施例3を、図面を参照して説明する。実施例3は、上記実施例1や実施例2の変形例であり、入力する表データの構成をより上位の構成又はより下位の構成によって分類するものである。なお、本実施例3は、構成及び動作の概略が上記第1の実施の形態の構成及び動作の概略と同様であるため、上記実施例1や実施例2と相違する点を中心に説明する。
(実施例3の構成)
図11は、図4の変形例を示すものであり、図11に示す表データ1101は、「住所」について、「住所」のより下位の概念を示す分類として「都道府県」及び「市区町村」を対応付け、「メールアドレス」及び「電話番号」について、「メールアドレス」及び「電話番号」のより上位の概念としての分類である「連絡先」を対応付けたものである。また、図12は、図5の変形例を示すものであり、図12に示す対応情報1201は、「電話番号」(ラベルD)及び「メールアドレス」(ラベルC)について、「電話番号」(ラベルD)及び「メールアドレス」(ラベルC)のより上位の概念としての分類である「連絡先」を示すラベルXを対応付けたものである。このことは、「連絡先」(ラベルX)について、「連絡先」(ラベルX)のより下位の概念を示す分類として「電話番号」(ラベルD)及び「メールアドレス」(ラベルC)を対応付けているともいえる。
(実施例3の動作)
本実施例3において、上記図6のS606や図10のS1006で示される「ABDC」は、図11で示される表データ1101及び図12で示される対応情報1201に基づいて、「ABX」が最終的なレコード推定結果となるため、図8の出力情報801に対応する出力情報は、「名・地・連」(不図示)となる。
従って、例えば、図10のステップS1007の表示は、左端のレコードから順に「名・地・連」、「地・連」、「地・連」となる。
(実施例3の効果)
本実施例3によれば、抽出したキーワードの種類について、抽出した複数のキーワードの種類をまとめたより上位の概念を示す種類、又は抽出したキーワードの種類を詳細に分類したより下位の概念を示す種類に階層的に任意に対応付けることができるため、入力したデータの構成を任意の階層によって推定し、各レコードに含まれる情報を分類することができる。
(第2の実施の形態)
さらに、本発明の第2の実施の形態は、様々なファイル形式に対応する表構造解析方法を予め個別に用意しておく必要や、厳密に表データに対応するレコードの記述パタン等の体裁を持つ必要などがなく、図13に示したような自然言語文や語句のリストのみからなるテキストデータ1301からでも、上記実施例1と同様にレコードを推定できるため、以下に説明する。なお、本実施の形態のうち、上記実施の形態1や実施例1と重複する部分については適宜省略して説明する。
(第2の実施の形態の構成)
図14は、本実施の形態における情報解析装置の構成を示すブロック図である。
図14を参照すると、本実施の形態における情報解析装置20は、第1の実施の形態における表要素列抽出手段1と同様の機能を有する表要素列抽出手段1aと、第1の実施の形態における表要素ラベル化手段2及びラベル出現パタン推定手段3から構成される表レコード推定手段23と、第1の実施の形態における情報抽出手段6と同様の機能を有するレコード要素抽出手段24と、第1の実施の形態における情報分類手段7と同様の機能を有する情報分類手段7aと、情報分類手段7aによる分類結果を格納する機能を有する分類結果格納手段26と、分類ルールを格納する機能を有する分類ルール4aと、第1の実施の形態における分割基準格納手段5とを備える。
ここで、表要素列抽出手段1aは、データ格納手段25に格納される文書等のデータを参照し、参照したデータからテキストデータを抽出する機能を有するテキストデータ抽出手段21と、テキストデータ抽出手段21によって抽出されたテキストデータからキーワード辞書27に格納されるキーワード情報に基づいてキーワードを抽出してキーワード列を生成する機能を有するキーワード抽出手段22と、文書等のデータを格納する機能を有するデータ格納手段25と、抽出するキーワードを種類毎に定義付けたキーワード情報を格納する機能を有するキーワード辞書27とを備える。
ここで、キーワード辞書27は、例えば、図15に示したような構成で実現される。すなわち、キーワードの種類別に、氏名であれば“上田”や“加藤”といった名字及び“太郎”や“花子”といった名前(図示せず)がキーワード辞書27に記載され、これらのキーワードに該当したテキスト文字列がキーワード抽出手段22によってテキストデータから抽出される。
ここで、レコード要素抽出手段24は、表レコード推定手段23で推定されたレコード推定結果に基づき、キーワード列から各レコードに含まれるキーワードをそれぞれ抽出する機能を有する。
ここで、情報分類手段7aは、レコード要素抽出手段24で抽出された、各レコードに含まれるキーワードの集合を、分類ルール4aと照合してレコード毎に分類を行う機能を有する。
なお、分類結果格納手段26は、レコード要素抽出手段24によって抽出されたレコード要素を格納してもよい。
(第2の実施の形態の動作)
本実施の形態における情報解析装置20は、まず、データ格納手段25によって格納されているデータをテキストデータ抽出手段21を用いて参照し、各データからテキストデータを抽出する。
テキストデータ抽出手段21におけるテキストデータの抽出方法としては、上述したように、データからレイアウト情報や表データの罫線情報などの表示制御用情報(例えばHTML文書におけるタグ情報)を取り除くことによってテキストデータを抽出する方法や、ASCIIやJISなど特定種類の文字コードに合致するバイナリデータを抽出する方法などがある。後者の方法では、対象とするデータはワードプロセッサやテキストエディタなどで作成された文書ファイルに限らず、テキストデータを内部に含みうる実行プログラムファイルなども対象とすることができる。
次いで、キーワード抽出手段22が、テキストデータ抽出手段21によって抽出されたテキストデータから、キーワード辞書27に定義した特定種類のキーワードを抽出し、キーワード列を生成する。
次いで、表レコード推定手段23が、第1の実施の形態における図3などで説明した手順で各キーワードのラベル化とレコード推定を行う。
データ分類手段24は、表レコード推定手段23によって推定されたレコードから得たキーワードの種類の列を分類ルール4aと照合して前記キーワード列を分類し、その結果を分類結果格納手段26に格納する。
すなわち、本実施の形態によれば、図13に示したテキストデータ1301から、図5に示したキーワードの種類と対応するラベルの定義(対応関係を示す対応情報501)に基づいて表要素列抽出手段1aによってキーワードを抽出すると、図16に示すようなキーワードのリスト1601が得られる。
図16に示すキーワードのリスト1601では、各行に、テキストデータから抽出したキーワード、当該キーワードの検出位置、当該キーワードと直前のキーワード間の距離をそれぞれこの順で記載している。なお、キーワードの抽出位置は、テキストデータの先頭からのバイト数及びキーワードの末尾のバイト数によって表している。ただし、日本語文字1文字は2バイト、英数字記号1文字は1バイトとする。
ここで、分割基準を100バイトとすると、図13に示したテキストデータ1301及び図16に示すキーワードのリスト1601では、全てのキーワード間の距離が100バイト以下のため、山田さんに関する当該キーワードから高橋さんに関する当該キーワードの全てが表要素列抽出手段1aによって同じの表データを構成するものとして判断される。
抽出したキーワード列を図5に示した対応情報501に基づいて表レコード推定手段23内の表要素ラベル化手段2によってラベル列に置き換えた結果は、図17のステップS1701に示されるようになる。ここから、先の例と同様に連続した同じラベルを1つにまとめ(ステップS1702)、ラベル列の先頭から候補レコードの推定を開始し(ステップS1703)、ラベル列の最後まで到達すると(ステップS1704)、最終的なレコード推定結果としてラベル列{ABD}が得られる(ステップS1705)。
ここで、表レコード推定手段23内のラベル出現パタン推定手段3は、推定した1レコード分のラベル列がステップS1704に示したような全ラベル列の中に幾つ含まれているかを数えることによって、当該表データが何レコード分の情報を持っているかが計算できる。
次いで、レコード要素抽出手段24が、得られた1レコード分のラベル列から、図5のステップS206の説明と同様に元のキーワードの種類を表す“名前”などに還元すると、各レコードに含まれる要素が明らかになる(S1706)。
また、図17のステップS1706で得られた各レコードの要素を図16に示したキーワードのリスト1601と順に照合していくことで、前述と同様に各レコードの実際の構成要素となるテキストデータ中のキーワード集合が得られる。
得られたキーワード集合は、例えば図18に示した表データ1801ような表形式で出力できる。
図18では、図5に示したキーワードの種類の定義(対応情報501)に含まれる“名前”、“地名”、“電話番号”以外に、“地域”というフィールドを設けている。これは、図19の分類ルール(分類基準情報)1901に示したような“地域”の分類についての条件を定義することにより実現され、例えば地名に“兵庫県”や“京都府”を含むレコードは、より上位概念としての“関西”地域に分類される。
このように、図5に示したような情報の構成要素の定義(対応情報501)を用いた情報抽出に加え、図19に示したような分類用の定義(分類ルール1901)を別途与えることで、抽出した情報をさらに分類することも可能である。従って、例えば、図16のキーワードのリスト1601に対して図19の分類ルール1901を用いることによって、“地域”が“関東”である情報と“関西”である情報とをそれぞれ抽出することが可能となる。すなわち、本実施の形態では、1回の処理で複数種類の情報を抽出することが可能である。
なお、図18の5番目のレコードでは“地域”フィールドの値が無い。すなわち、“地域”の分類に必要な“地名”フィールドの値が得られなかったことで、図19に示したいずれの分類ルールも満たさないレコードを識別することも同時に可能である。
また、例えば、対応情報や分類ルールにおいて“電話番号”及び“メールアドレス”の上位の概念(種類)として“連絡先”を定義し、“問合せ情報”として、少なくとも“名前”と“連絡先(“電話番号”又は“メールアドレス”の少なくとも1つ以上)”とを含むレコードのみを抽出することも可能である。すなわち、図20の分類ルール2001に示すように、“問合せ情報”には少なくとも“名前”及び“連絡先”フィールドの値が必須であるという分類条件を指定した場合、“名前”及び“連絡先”フィールドの値が抽出できなかったレコードを“問合せ情報”として記録しないという判断ができる。具体的には、“連絡先”フィールドの値が無い図18の3番目のレコードを“問合せ情報”として記録しないという判断ができる。同様に、“連絡先”フィールドの値が無い図18の3番目のレコードのみを“問合せ情報”として記録するという判断もできる。
また、ここで、例えば、分割基準を40バイトとした場合や、テキストデータ内の構成が変化する箇所とした場合などは、図13に示したテキストデータ1301及び図16に示すキーワードのリスト1601は、表要素列抽出手段1aによって、山田さんに関する当該キーワードから中川さんに関する当該キーワードによって構成される表データと、藤井さんに関する当該キーワードから高橋さんに関する当該キーワードによって構成される表データとに分割される。
(第2の実施形態の別の動作)
図23を参照して、本発明の第2の実施形態における、さらに別の動作について説明する。
図23は、図14に示された第2の実施形態における表レコード推定部23、レコード要素抽出部24、および情報分類部7aの動作を示すフローチャートである。
図23のフローチャートによれば、図1、図3に示した第1の実施形態における情報解析装置10の動作と同様に、まず、入力されたデータからテキストデータを抽出する(ステップS101)。続いて、抽出したテキストデータから1つの表データを構成する一連のキーワード列を取得する(ステップ102)。
次に、表要素ラベル化部2が、ステップS102で得られた1つの表データを構成するキーワード列を分類ルール格納部4aに格納された対応情報に基づいてそれぞれ種類別のラベルに置き換える(ステップS103)。
ステップS103の後、ここでは図3のフローチャートとは異なり、レコード要素抽出手段24が分類ルール格納部4aの分類ルールを参照し、1種類のラベルのみで成立するルールがあれば、そのルールに適合するラベルを後述するレコードの1つとしてラベル列から抽出する(ステップS2301)。
例えば、分類ルール格納部4aの分類ルールが図24に示したような3種類のルール集合からなる分類ルール2401で構成されていたとする。分類ルールのうち、「その他連絡先」のルールは“連絡先!=NULL”と記載されている。これは「連絡先」に該当するラベルが1つでも存在すれば、当該ラベルは「その他連絡先」に分類されることを意味する。このような「その他連絡先」のルールは、「連絡先」が図12に示した対応情報1201のように定義されている場合、メールアドレスまたは電話番号のいずれか1種類のみに相当するラベルのみで当該ルールを評価でき、それらのうちいずれか1つでもあれば「その他連絡先」と判定される。ただし、メールアドレスまたは電話番号が他の分類ルールの判定条件にも含まれる場合は、判定条件により多くのラベルを必要とする分類ルールを優先することで、分類ルール2401における「他部門連絡先」や「自部門連絡先」に該当する情報も適切に抽出することができる。
ここで、ステップS101によって図25に示すようなテキストデータ2501が抽出された場合、図24の分類ルール2401により、末尾の4つの連続したメールアドレスが「その他連絡先」のルールに適合するため、ステップS2301によって当該4つのメールアドレスが抽出される。
ステップS2301の処理を終えると、図3のステップS104と同様に、表要素ラベル化部2が、ラベル列の中で隣り合うラベルが同じ種類のラベルであった場合、それらを1つのラベルにまとめる(ステップS2302)。ステップS2302の後で行なわれるステップS105、S106、S107は図3のフローチャートの説明と同じであるため省略する。
ステップS107までの処理によって1つの表を構成するキーワード列から一連のレコードの列が判定できると、レコード要素抽出部24が、図3のステップS108と同様に、推定されたレコードを元のキーワード列の先頭から適用し、元のキーワード列に対応するラベル列に含まれる各ラベルに対応するキーワードを、1つの表を構成する一連のキーワード列から当該ラベル列の順に抽出し、それぞれ1単位レコード分のキーワード列を1つの情報として記憶する。ここではまた、ステップS2301で先に抽出されたラベルについても、各ラベルをそれぞれ1つのレコードと見なし、対応するキーワードをそれぞれ1つの情報として記憶する(ステップS2303)。
ステップS2303の処理を終えると、情報分類部7aが、レコード要素抽出部24によって記憶された各情報を分類ルール格納部4aの各ルールと照合し、適合したルールのうち最も多くのラベルが対応付いたルールによって当該情報をそれぞれ分類する(ステップS2304)。
図12に示した対応情報1201及び図24に示した分類ルール2401を利用して、図25に示したテキストデータ2501をステップS2304までの処理により分類すると、図26に示した表のように、「他部門連絡先」に分類される情報が1件と、「自部門連絡先」に分類される情報が1件と、さらにメールアドレスのみで分類された「その他連絡先」に該当する情報が計4件抽出できる。
(第2の実施の形態の効果)
このように、本実施の形態による情報解析装置20を利用すれば、例えば、個人情報や商品情報の特徴をキーワードの種類として定義した辞書を用意することにより、組織内の様々な文書(データ)から個人情報や商品情報を抽出し、一定の形式のスキーマでデータベースに記録することで、情報管理を効率化することができる。また、分類結果を元の文書と結びつけてデータベース化することにより、文書管理が容易になる。従って、本実施の形態による表レコード推定方式と同方式を用いた情報解析装置は、企業などの組織内の資産管理や情報セキュリティ管理、様々な文書の統合管理や横断的な検索に有用である。
また、図5に示す対応情報501を用いた情報抽出に加え、図19や図20に示したような分類用の定義を別途与えることで、抽出した情報をさらに分類することも可能である。すなわち、1回の処理で複数種類の情報を抽出することが可能である。
また、様々な分割基準に基づいて、入力したテキストデータ1301から作成したキーワードのリスト1601から単一又は複数の表データを生成することができる。
(第3の実施の形態)
本発明による第3の実施の形態を以下に示す。なお、本実施の形態のうち、上記各実施の形態や実施例1と重複する部分については適宜省略して説明する。
図21は、本発明の第3の実施の形態における情報解析システムの構成例を示すブロック図である。ここでは情報解析装置100を備えるほか、データ蓄積装置300を備える。
図21を参照すると、本実施の形態における情報解析システムは、メインメモリ101と、CPU102と、データ記憶装置103と、通信装置104と、入力装置106と、出力装置107とを少なくとも備えて第2の実施の形態における情報解析装置20と同様の機能を有する情報解析装置100が、通信ネットワーク200を介してデータ蓄積装置300及び記憶装置400と接続されることによって実現される。
データ蓄積装置300は、情報解析の対象として個人情報や商品情報を含みうるデータを蓄積し、図14に示したデータ格納手段25を実現する。
記憶装置400は、情報解析装置100によって抽出された情報を通信ネットワーク200を介して記憶し、図14に示した分類結果格納手段26を実現する。なお、記憶装置400は、物理的構成としてはデータ蓄積装置300と同一であっても良い。
なお、図21ではデータ蓄積装置300及び記憶装置400を1台ずつのみ図示したが、情報解析装置100は2台以上のデータ蓄積装置300及び記憶装置400に接続されていてもよい。すなわち、データは2台以上のデータ蓄積装置に分散して蓄積されていてもよいし、2台以上の記憶装置に対して分散して格納してもよい。
さらには、情報解析の対象となるデータの一部または全てが情報解析装置100のデータ記憶装置103に蓄積されていてもよい。
加えて、情報解析の対象となるデータは必ずしもワードプロセッサやテキストエディタなどで作成されたファイルのみに限らず、テキストデータを内部に含みうるあらゆるファイルであってもよく、例えば、実行プログラムファイルであっても良い。
また、データ蓄積装置300は、必ずしも各データを長期間保持するものでなくともよく、例えば、Eメール送信サーバとして機能する装置であってもよい。
例えば、データ蓄積装置300がEメール送信サーバとして機能する場合、通信ネットワーク200を介して1つ以上の端末装置(図示せず)から送られてきたEメールデータを他の端末装置やEメール受信サーバ(図示せず)に送る前に、本実施の形態における情報解析装置100によって特定種類の情報が当該Eメールデータに含まれているか否かを確認してもよい。
ここで、本実施の形態における情報解析装置100が備える装置について説明する。
CPU102は、メインメモリ101が記憶するプログラム105に従って処理を実行する。プログラム105は、図14に示したテキストデータ抽出手段21、キーワード抽出手段22、表レコード推定手段23、レコード要素抽出手段24、情報分類手段7a、及び分類結果格納手段26の処理を実行させる情報解析プログラムである。従って、これらの各手段の動作は、CPU102によって実現される。
データ記憶装置103は、少なくとも図14に示したキーワード辞書27、分類ルール4aの対抗情報501及び分割基準を記憶する。また、前述したように情報解析の対象となるデータを記憶していても良く、その場合はCPU102がデータ記憶装置103に蓄積されたデータを参照する。
通信装置104は、通信ネットワーク200とのインタフェースである。通信ネットワーク200を介して通信装置104がデータ蓄積装置300にアクセスすることで、CPU102はデータ蓄積装置300に蓄積されているデータを参照する。
入力装置106は、例えばキーボードやマウスなどの情報入力装置であり、CPU102に対して処理の実行や停止、処理結果の表示を指示する。
CPU102は、処理結果を出力装置107に表示出力させる。なお、CPU102は、処理結果を、データ記憶装置103または通信ネットワーク200を介して接続された外部の記憶装置400に記憶させてもよい。また、情報解析装置100がプリンタ(図示せず)を備え、CPU102はプリンタによって処理結果をプリント用紙に出力してもよい。
(第3の実施の形態の効果)
本実施の形態によれば、情報解析装置100が、通信ネットワーク200を介してデータ蓄積装置300と接続されるため、情報解析装置100においてデータ蓄積装置300を有する必要がない。また、情報解析装置100が、通信ネットワーク200を介して複数のデータ蓄積装置300と接続できるため、災害や障害等に対し、可用性等が向上する。さらに、通信ネットワーク200を介して端末装置から送られてきたEメールデータを参照することにより、情報解析装置100によって当該Eメールデータに特定種類の情報が含まれていればこれを抽出することができる等、ネットワークを介して送信又は受信される情報から所定の情報を収集することができる。
(第4の実施の形態)
本発明による第4の実施の形態を以下に示す。なお、本実施の形態のうち、上記各実施の形態や各実施例と重複する部分については適宜省略して説明する。
図22は、本発明の第4の実施の形態における情報解析システムの構成例を示すブロック図である。
図22が示すように、本実施の形態における情報解析システムは、情報解析装置2200に第3の実施の形態における記憶装置400及びスキャニング装置500が接続されている構成である。
スキャニング装置500は、紙文書を読み取って電子化し、電子化した文書データを情報解析装置2200に送信する機能を有する。
情報解析装置2200は、第3の実施の形態における情報解析装置100の各機能に加え、電子化された文書データからテキストデータを抽出する文字認識手段(不図示)をさらに備える。文字認識手段には、既に数多く販売されているパッケージソフトウェアを利用してもよい。
情報解析装置2200は、文字認識手段で抽出したテキストデータから個人情報や商品情報など必要な情報を抽出し、それらの抽出結果を情報解析装置2200内のデータ記憶装置103や、外部の記憶装置400にファイルもしくはデータベースとして保存する。また、情報解析装置2200は、抽出した情報に基づいて、電子化した文書を個人情報文書や商品情報文書などに分類する機能を有する情報文書分類手段(不図示)を備え、それらの分類毎に電子化した文書をまとめて記憶装置400に保存してもよい。
(第4の実施の形態の効果)
このような構成により、本実施の形態によれば、予め紙文書の詳細なレイアウト構造の特徴を知る必要なく、その電子ファイリング時の文書の自動分類や、紙文書からの情報収集が可能になる。
本発明による情報解析装置は、データの文字情報から所定の文字列を抽出する文字情報抽出部と、抽出した各文字列を、文字列の分類を表すラベルに置き換えることによって、文字列を一連のラベル列に変換するラベル化部と、ラベル列内に繰り返し出現するラベルの出現パタンを推定するラベル出現パタン推定部と、推定した個々の出現パタン毎にラベルの組を抽出する推定パタン情報抽出部と、抽出した出現パタン毎のラベルの組を、その組合せに基づいて分類する抽出情報分類部とを有する。これにより、データのファイル形式や表を構成するレコードの識別パタンが予め分からない場合や、個々のレコードの要素が部分的に欠損している不完全な表を対象とする場合や、1レコードが複数行から構成されている場合においても、ラベルの出現パタンからデータの分類に基づいた構成を精度良く推定し、推定した構成に基づいて、データの文字情報から抽出した各文字列を分類し、所定の分類条件に適合する文字情報を取得できる。
以上好ましい実施の形態をあげて本発明を説明したが、本発明は必ずしも、上記実施の形態に限定されるものでなく、その技術的思想の範囲内において様々に変形して実施することができる。
本発明は、文書等のデータのファイル形式や表データを構成するレコードの識別パタンが予め分からない場合でも、精度良く表データを構成する個々のレコードを推定できるため、組織内のWebサーバやファイルサーバ、端末装置などに蓄積された様々な記述形式の大量のファイルから、個人情報や財務情報などを示すキーワードの組を含んだファイルとそこに含まれる個人情報や財務情報の種類や件数を明らかにする組織内情報管理システムに適用でき、情報セキュリティ監査や情報資産管理の支援に有効である。また、本発明は、製品名、日付、価格、置き場所などのキーワードの組が多数含まれているデータを検出することによって、設備品情報を含んだ棚卸し用の文書を精度良く発見できるなど、データの内容に基づくデータ検索システムへの適用も可能である。さらに、本発明は、個人情報や財務情報、設備品情報などを個々のファイルから抽出して一定の形式のスキーマでデータベース化することが可能となるため、様々な種類の情報の一元管理に有用である。
本発明の第1の実施の形態による情報解析装置の機能構成を示すブロック図である。 第1の実施の形態による情報解析装置のハードウェア構成を示すブロック図である。 第1の実施の形態による情報解析装置の動作を示すフローチャートである。 本発明の実施例1による入力されたテキストデータに含まれる表データの例を示す説明図である。 実施例1によるキーワードの種類別ラベルの例を示す説明図である。 実施例1による表データを構成するキーワード列から置き換えたラベル列から表データのレコード構成を表すラベル列を推定する一連の流れを示した説明図である。 実施例1による1つのキーワードの種類に対して連続する同種のキーワード全てを対応付けた図である。 実施例1による最終的なレコード推定結果の出力情報を説明する図である。 実施例1による最終的なレコード分類結果の出力情報を説明する図である。 実施例2による表データを構成するキーワード列から置き換えたラベル列から表データのレコード構成を表すラベル列を推定する一連の流れを示した説明図である。 本発明の実施例3による入力されたテキストデータに含まれる表データの例を示す説明図である。 実施例3によるキーワードの種類別ラベルの例を示す説明図である。 本発明の第2の実施の形態による入力されるテキストデータの例を示す説明図である。 第2の実施の形態による情報解析装置の構成を示すブロック図である。 第2の実施の形態によるキーワード辞書の例を示す説明図である。 第2の実施の形態による入力されたテキストデータから抽出されたキーワード列の例を示す説明図である。 第2の実施の形態による表データを構成するキーワード列から置き換えたラベル列から表データのレコード構成を表すラベル列を推定する一連の流れを示した説明図である。 第2の実施の形態による各レコードの実際の構成要素となるテキストデータ中のキーワード集合についての出力情報の例を示す図である。 第2の実施の形態による分類ルールの例を示す図である。 第2の実施の形態による分類ルールの例を示す図である。 本発明の第3の実施の形態による情報解析システムの構成例を示すブロック図である。 本発明の第4の実施の形態による情報解析システムの構成例を示すブロック図である。 第2の実施形態における表レコード推定部、レコード要素抽出部及び情報分類部の別の動作例を示すフローチャートである。 第2の実施形態における分類ルールの他の例を示す説明図である。 第2の実施形態において入力されるテキストデータの例を示す説明図である。 第2の実施形態における分類結果の例を示す説明図である。
符号の説明
10:情報解析装置
1、1a:表要素列抽出手段
2:表要素ラベル化手段
3:ラベル出現パタン推定手段
4、4a:分類ルール
5:分割基準格納手段
6:情報抽出手段
7、7a:情報分類手段
11:CPU
12:主記憶部
13:提示部
14:入力部
15:インタフェース部
16:補助記憶部
17:システムバス
20、100、2200:情報解析装置
21:テキストデータ抽出手段
22:キーワード抽出手段
23:表レコード推定手段
24:レコード要素抽出手段
26:分類結果格納手段
27:キーワード辞書
101:メインメモリ
102:CPU
103:データ記憶装置
104:通信装置
105:プログラム
106:入力装置
107:出力装置
200:通信ネットワーク
300:データ蓄積装置
400:記憶装置
500:スキャニング装置
401、701、1101、1801:表データ
801、901:出力情報
501、1201:対応情報
1301:テキストデータ
1601:キーワードのリスト
1701:分類結果
1901、2001:分類ルール

Claims (27)

  1. 文字情報を含むデータの構成を解析する情報解析装置において、
    前記データの文字情報から所定の文字列を抽出する文字情報抽出部と、
    抽出した前記各文字列を、前記文字列の分類を表すラベルからなる一連のラベル列に変換するラベル化部と、
    前記ラベル列内における前記ラベルの出現パタンを推定するラベル出現パタン推定部と、
    前記推定した個々の出現パタン毎にラベルの組を抽出する推定パタン情報抽出部と、
    前記抽出した出現パタン毎のラベルの組を、その組合せに基づいて分類する抽出情報分類部と、
    を含むことを特徴とする情報解析装置。
  2. 前記文字情報抽出部は、前記文字列の分類毎に、出現順序が定められた前記文字列を含む前記データから前記所定の文字列を抽出し、
    前記ラベル化部は、抽出した各前記文字列を所定の順序で種類別に前記ラベルに置き換えることによって、抽出した前記文字列を一連のラベル列に変換することを特徴とする請求項1に記載の情報解析装置。
  3. 前記ラベル化部は、同一種類の隣り合う2つ以上の前記文字列を1つの前記ラベルに置き換えることを特徴とする請求項1又は2に記載の情報解析装置。
  4. 更に、抽出した前記文字列の種類と前記文字列を置き換える前記ラベルとの対応関係を定義した対応情報を格納する対応情報格納部を備え、
    前記ラベル化部は、前記対応情報に基づいて、抽出した前記文字列を種類別に前記ラベルに置き換えることを特徴とする請求項1〜3のいずれか1項に記載の情報解析装置。
  5. 前記ラベル出現パタン推定部は、前後の出現パタン間で欠落したラベルを補足しながら逐次的に当該出現パタンの推定を行なうことを特徴とする請求項1〜4のいずれか1項に記載の情報解析装置。
  6. 前記文字情報抽出部は、前記データの文字情報から前記文字列を抽出するための抽出情報を格納する抽出情報格納部を含み、前記抽出情報に基づいて、前記データの文字情報から前記文字列を抽出することを特徴とする請求項1〜5のいずれか1項に記載の情報解析装置。
  7. 更に、予め定めた分割基準を格納する分割基準格納部を備え、
    前記文字情報抽出部は、前記抽出情報に基づいて抽出した前記文字列の集合を、予め定めた分割基準に基づいて複数の部分文字列集合に分割し、
    前記ラベル化部は、前記部分文字列集合に含まれる前記文字列を種類別に前記ラベルに置き換え、
    前記ラベル出現パタン推定部は、前記部分文字列集合から前記ラベル化部により置き換えられたラベル列を入力としてラベルの出現パタンを推定することを特徴とする請求項6に記載の情報解析装置。
  8. 前記予め定めた分割基準として、前記データ内での隣接する前記文字列間の距離が規定値以上であるか否かを設定し、
    前記分割基準を満たすか否かに基づいて、各文字列を異なる部分文字列集合に含ませるか、又は、各文字列を同一の部分文字列集合に含ませることを特徴とする請求項7に記載の情報解析装置。
  9. 前記対応情報は、抽出した前記文字列について、分類した文字列の種類より上位の分類又はより下位の分類に関しても対応関係を定義され、
    前記抽出情報分類部は、推定した前記出現パタンで表される各前記ラベルを、前記対応情報に基づいて前記置き換え前の前記各文字列の任意の分類又は該任意の分類より上位の分類又は該任意の分類より下位の分類に対応付け、所定の組合せに適合する適合文字情報を選択することによって、前記データから抽出した前記文字列を分類することを特徴とする請求項4〜8のいずれか1項に記載の情報解析装置。
  10. 前記推定パタン情報抽出部は、単一種類の前記文字列で成立する分類条件があれば、前記ラベル化部において同一種類の隣り合う2つ以上の前記文字列を1つの前記ラベルに置き換える処理の前に、当該分類条件に合致する前記ラベル列中のラベルを抽出することを特徴とする請求項3〜9のいずれか1項に記載の情報解析装置。
  11. 前記文字情報抽出部は、前記文字列として抽出するキーワードを種類毎に定義付けたキーワード情報を格納するキーワード辞書を、前記抽出情報格納部として含み、
    前記文字情報抽出部は更に、文書等のデータを格納するデータ格納部と、前記データ格納部に格納されているデータを参照し、参照したデータからテキストデータを抽出するテキストデータ抽出部と、抽出されたテキストデータから前記キーワード辞書に格納されているキーワード情報に基づいてキーワードを抽出してキーワード列を前記文字列として生成するキーワード抽出部と含むことを特徴とする請求項6に記載の情報解析装置。
  12. 前記抽出情報分類部による前記分類結果を記憶する分類結果格納部を備えることを特徴とする請求項1〜10のいずれか1項に記載の情報解析装置。
  13. 請求項1〜12のいずれか1項に記載の情報解析装置と、
    前記情報解析装置と通信ネットワークを介して接続され、該通信ネットワークを通じて取得したデータを格納する少なくとも1つのデータ蓄積部を含む情報解析システムであって、
    前記情報解析装置における前記文字情報抽出部は、前記データ蓄積部に格納された前記データの文字情報から所定の文字列を抽出することを特徴とする情報解析システム。
  14. 文字情報を含むデータの構成を解析する情報解析装置による情報解析方法であって、
    文字情報抽出部が、前記データの文字情報から所定の文字列を抽出する文字情報抽出処理と、
    ラベル化部が、抽出した前記各文字列を、前記文字列の分類を表すラベルからなる一連のラベル列に変換するラベル化処理と、
    ラベル出現パタン推定部が、前記ラベル列内における前記ラベルの出現パタンを推定するラベル出現パタン推定処理と、
    推定パタン情報抽出部が、前記推定した個々の出現パタン毎にラベルの組を抽出する推定パタン情報抽出処理と、
    抽出情報分類部が、前記抽出した出現パタン毎のラベルの組を、その組合せに基づいて分類する抽出情報分類処理と、
    を含むことを特徴とする情報解析方法。
  15. 前記ラベル化処理においては、前記抽出した文字列の集合に含まれる同一種類の隣り合う2つ以上の前記文字列を1つの前記ラベルに置き換えることによって前記文字列を一連のラベル列に変換することを特徴とする請求項14に記載の情報解析方法。
  16. 更に、対応情報格納部が、抽出した文字列の種類と前記文字列を置き換える前記ラベルとの対応関係を定義した対応情報を格納する対応情報格納処理を含み、
    前記ラベル化処理においては、前記対応情報に基づいて、抽出した文字列を種類別に前記ラベルに置き換えることを特徴とする請求項14又は15に記載の情報解析方法。
  17. 前記ラベル出現パタン推定処理においては、前後の出現パタン間で欠落したラベルを補足しながら逐次的に当該出現パタンの推定を行なうことを特徴とする請求項14〜16のいずれか1項に記載の情報解析方法。
  18. 前記対応情報は、抽出した前記文字列について、分類した文字列の種類より上位の分類又はより下位の分類に関しても対応関係を定義され、
    前記抽出情報分類処理においては、推定した前記出現パタンで表される前記各ラベルを、前記置き換え前の前記各文字列の任意の分類又は該任意の分類より上位の分類又は該任意の分類より下位の分類に対応付け、所定の組合せに適合する適合文字情報を選択することによって、前記データから抽出した前記文字列を分類することを特徴とする請求項16又は17に記載の情報解析方法。
  19. 前記推定パタン情報抽出処理においては、単一種類の前記文字列で成立する分類条件があれば、前記ラベル化処理において同一種類の隣り合う2つ以上の前記文字列を1つの前記ラベルに置き換える処理の前に、当該分類条件に合致する前記ラベル列中のラベルを抽出することを特徴とする請求項18に記載の情報解析方法。
  20. 更に、分類結果格納部が、前記分類の結果を記憶する分類結果格納処理を含むことを特徴とする請求項18または19に記載の情報解析方法。
  21. 文字情報を含むデータの構成を解析する情報解析装置を構成するコンピュー上で動作する情報解析プログラムであって、
    文字情報抽出部に、前記データの文字情報から所定の文字列を抽出する文字情報抽出処理を実行させ
    ラベル化部に、抽出した前記各文字列を、前記文字列の分類を表すラベルからなる一連のラベル列に変換するラベル化処理を実行させ
    ラベル出現パタン推定部に、前記ラベル列内における前記ラベルの出現パタンを推定するラベル出現パタン推定処理を実行させ
    推定パタン情報抽出部に、前記推定した個々の出現パタン毎にラベルの組を抽出する推定パタン情報抽出処理を実行させ
    抽出情報分類部に、前記抽出した出現パタン毎のラベルの組を、その組合せに基づいて分類する抽出情報分類処理を実行させる
    ことを特徴とする情報解析プログラム。
  22. 前記ラベル化処理においては、抽出した前記文字列の集合に含まれる同一種類の隣り合う2つ以上の前記文字列を1つの前記ラベルに置き換えることによって前記文字列を一連のラベル列に変換する処理を実行させることを特徴とする請求項21に記載の情報解析プログラム。
  23. 更に、対応情報格納部に、抽出した文字列の種類と前記文字列を置き換える前記ラベルとの対応関係を定義した対応情報を格納する対応情報格納処理を実行させ、
    前記ラベル化処理においては、前記対応情報に基づいて、抽出した文字列を種類別に前記ラベルに置き換える処理を実行させることを特徴とする請求項21又は22に記載の情報解析プログラム。
  24. 前記ラベル出現パタン推定処理においては、前後の出現パタン間で欠落したラベルを補足しながら逐次的に当該出現パタンの推定を実行させることを特徴とする請求項21〜23のいずれか1項に記載の情報解析プログラム。
  25. 前記対応情報は、抽出した前記文字列において、分類した文字列の種類より上位の分類又はより下位の分類に関しても対応関係を定義され、
    前記抽出情報分類処理においては、推定した前記出現パタンで表される各前記ラベルを、前記置き換え前の各前記文字列の任意の前記分類又は該任意の分類より上位の分類又は該任意の分類より下位の分類に対応付け、所定の組合せに適合する適合文字情報を選択することによって、前記データから抽出した前記文字列を分類する処理を実行させることを特徴とする請求項21〜24のいずれか1項に記載の情報解析プログラム。
  26. 前記推定パタン情報抽出処理においては、単一種類の前記文字列で成立する分類条件があれば、前記ラベル化処理において同一種類の隣り合う2つ以上の前記文字列を1つの前記ラベルに置き換える処理の前に、当該分類条件に合致する前記ラベル列中のラベルを抽出する処理を実行させることを特徴とする請求項25に記載の情報解析プログラム。
  27. 更に、分類結果格納部に、前記分類の結果を記憶する分類結果格納部処理を実行させることを特徴とする請求項25又は26に記載の情報解析プログラム。
JP2007163485A 2006-06-22 2007-06-21 情報解析装置、情報解析方法、及び情報解析プログラム Active JP5013081B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007163485A JP5013081B2 (ja) 2006-06-22 2007-06-21 情報解析装置、情報解析方法、及び情報解析プログラム

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2006172341 2006-06-22
JP2006172341 2006-06-22
JP2007163485A JP5013081B2 (ja) 2006-06-22 2007-06-21 情報解析装置、情報解析方法、及び情報解析プログラム

Publications (2)

Publication Number Publication Date
JP2008027431A JP2008027431A (ja) 2008-02-07
JP5013081B2 true JP5013081B2 (ja) 2012-08-29

Family

ID=39117955

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007163485A Active JP5013081B2 (ja) 2006-06-22 2007-06-21 情報解析装置、情報解析方法、及び情報解析プログラム

Country Status (1)

Country Link
JP (1) JP5013081B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5426501B2 (ja) * 2010-08-25 2014-02-26 富士フイルム株式会社 ドキュメント閲覧システム及びドキュメント画像配信装置並びにドキュメント閲覧方法
KR101621959B1 (ko) 2015-12-23 2016-05-17 주식회사 모비젠 로그패턴추출장치, 로그패턴분석장치 및 그 방법
CN107766371B (zh) * 2016-08-19 2023-11-17 中兴通讯股份有限公司 一种文本信息分类方法及其装置
CN111898378B (zh) * 2020-07-31 2023-09-19 中国联合网络通信集团有限公司 政企客户的行业分类方法和装置、电子设备、存储介质
CN113610427B (zh) * 2021-08-19 2023-08-18 深圳市德信软件有限公司 事件预警指标获得方法、装置、终端设备以及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3207947B2 (ja) * 1992-11-26 2001-09-10 日本電信電話株式会社 内容抽出装置
JP2004213158A (ja) * 2002-12-27 2004-07-29 Hiroshima Pref Gov 情報加工用自動検索サーバ、並びに自動情報加工システム及び自動情報加工プログラム

Also Published As

Publication number Publication date
JP2008027431A (ja) 2008-02-07

Similar Documents

Publication Publication Date Title
JP5126541B2 (ja) 情報分類装置、情報分類方法、及び情報分類プログラム
US8140468B2 (en) Systems and methods to extract data automatically from a composite electronic document
US7965891B2 (en) System and method for identifying and labeling fields of text associated with scanned business documents
US7734636B2 (en) Systems and methods for electronic document genre classification using document grammars
AU2007314123B2 (en) Email document parsing method and apparatus
US8954839B2 (en) Contract authoring system and method
US10789281B2 (en) Regularities and trends discovery in a flow of business documents
CN102257487B (zh) 分析事件
JP2006221560A (ja) データ置換装置、データ置換方法およびデータ置換プログラム
JP5013081B2 (ja) 情報解析装置、情報解析方法、及び情報解析プログラム
US7359896B2 (en) Information retrieving system, information retrieving method, and information retrieving program
CN112132710B (zh) 法律要素处理方法、装置、电子设备及存储介质
JP5676522B2 (ja) 文字列変換方法及びプログラム
CN112445911A (zh) 工作流程辅助装置、系统、方法及存储介质
CN115422125A (zh) 一种基于智能算法的电子文档自动归档方法与系统
CN110874398B (zh) 违禁词处理方法、装置、电子设备及存储介质
JP7272037B2 (ja) 情報処理装置及びプログラム
JP4904828B2 (ja) 情報分析知識管理装置、データ構造、情報分析装置、辞書生成方法およびプログラム
KR20210001164A (ko) 계약서 분석 장치 및 방법
JP2003058559A (ja) 文書分類方法、検索方法、分類システム及び検索システム
Kwok et al. An automatic method to extract data from an electronic contract composed of a number of documents in PDF format
CN115210708B (zh) 处理文本数据的方法和系统、非暂时性计算机可读介质
JP4700637B2 (ja) Web文書分割方法、システム及びプログラム
JP7377565B2 (ja) 図面検索装置、図面データベース構築装置、図面検索システム、図面検索方法、及びプログラム
KR100544375B1 (ko) 문서파일로부터 명함정보를 추출하기 위한 장치와 방법,및 상기 방법을 기록한 기록매체

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100511

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120217

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120417

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: 20120509

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120522

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150615

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5013081

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150