説明

文書分割装置、文書処理システム、プログラム

【課題】文書の作成者が意図する内容に即した形で文書を分割することができる文書分割装置、文書処理システム及びプログラムを提供する。
【解決手段】テキストデータが記述された文書ファイルを取得し、テキストデータの区切り情報を検出して該テキストデータから複数のセクションを抽出するセクション抽出手段と、テキストデータのフレーズの重要度を算出するフレーズ重要度算出手段と、フレーズのレイアウト情報を文書ファイルから抽出し、重み情報記憶手段からレイアウト情報に対応づけられた重み情報を読み出す重み決定手段と、重要度と重み情報から生成された値を係数とする特徴ベクトルをセクション毎に作成する特徴ベクトル作成手段と、セクション同士の前記特徴ベクトルの類似度に応じて、複数の前記セクションを1つのまとまりとして抽出するまとまり抽出手段と、を有することを特徴とする文書分割装置を提供する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、文書の内容の把握を支援する文書分割装置等に関し、特に、文書を適切に分割する文書分割装置、文書処理システム及びプログラムに関する。
【背景技術】
【0002】
ネットワークの普及などによりテキストデータからなる電子文書を閲覧者が閲覧する機会が増大する傾向にある。閲覧者は電子文書のどの部分にどのような内容が書かれているか容易に把握したいと考えるが、このためには電子文書の部分間の類似性をもとにテキストデータを細分化することが有効である。
【0003】
例えば、文書を細分化するため、文書内の段落等のまとまりのそれぞれに対してキーワード及びそのキーワードの重要度を算出し、それらの情報に基づいて、まとまりをクラスタリングする技術が知られている。
【0004】
また、文書同士の類似性を評価するため、文書のキーワードを解析することにより特徴ベクトルを求め特徴ベクトルの内積を利用する技術が考案されている(例えば、特許文献1参照。)。特許文献1には、過去に閲覧した文書の続きに当たる文書を検出する目的で、文書同士の類似度から、話題の共通性と話題の推移に基づき推薦文書を抽出する情報推薦装置について開示されている。
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献1に開示された方法では、TF・IDF値などを用いたキーワードの重要度に基づき文書を細分化するため、クラスタリングが不正確になるという問題があった。すなわち、従来の文書の重要度の算出においては、文書のテキスト情報のみに基づき重要度の算出を行うため、例えば注意書きのような内容とはあまり関係のないところであっても、そこで頻繁に現れる言葉がキーワードとなり、クラスタリングの判断材料とされてしまう。しかし、このような注意書きは文書本来の内容を補足するものなので、頻出する単語があっても重要度としては低い場合がある。
【0006】
本発明は、上記課題に鑑み、文書の作成者が意図する内容に即した形で文書を分割することができる文書分割装置、文書処理システム及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
上記課題に鑑み、本発明は、テキストデータが記述された文書ファイルを取得する文書ファイル取得手段と、前記テキストデータの区切り情報を検出して該テキストデータから複数のセクションを抽出するセクション抽出手段と、前記テキストデータからフレーズ及び前記フレーズのレイアウト情報を抽出し、各フレーズの前記テキストデータにおける重要度を算出するフレーズ重要度算出手段と、テキストデータを視覚的に調整するレイアウト情報に対応づけてレイアウト情報の重み情報が登録された重み情報記憶手段と、前記テキストデータから重複しないように抽出した一連の前記フレーズに基底を割り当て、前記セクション内の前記フレーズの重要度、及び、前記重み情報記憶手段から読み出したレイアウト情報に対応づけられた前記重み情報、から生成された値を基底の係数とする、特徴ベクトルを前記セクション毎に作成する特徴ベクトル作成手段と、前記セクション同士の前記特徴ベクトルの類似度に応じて、複数の前記セクションを1つのまとまりとして抽出するまとまり抽出手段とを有することを特徴とする文書分割装置を提供する。
【発明の効果】
【0008】
文書の作成者が意図する内容に即した形で文書を分割することができる文書分割装置、文書処理システム及びプログラムを提供することができる。
【図面の簡単な説明】
【0009】
【図1】文書処理システムの概略を説明する図の一例である。
【図2】文書処理システムの実施形態の一例を示す図である。
【図3】クライアントマシンのハードウェア構成図の一例である。
【図4】サーバのハードウェア構成図の一例である。
【図5】サーバの機能ブロック図の一例である。
【図6】サーバが文書のまとまりを作成する全体的な手順を示すフローチャート図の一例である。
【図7】クライアントマシンに表示される、文書の転送画面の一例を示す図である。
【図8】キーワードの抽出手順を示すフローチャート図の一例である。
【図9】各セクションの特徴ベクトルの作成手順を示すフローチャート図の一例である。
【図10】重み記憶テーブルを模式的に説明する図の一例である。
【図11】まとまり抽出部がまとまりを抽出する手順を示すフローチャート図の一例である。
【図12】セクション間の距離の例を模式的に示す図の一例である。
【図13】まとまりとまとまりの境界の表示例を示す図の一例である。
【図14】まとまりとまとまりの境界の明示の一例を示す図である
【図15】まとまりとまとまりの境界の表示例とキーワードの表示例の一例を示す図である。
【発明を実施するための形態】
【0010】
以下、本発明を実施するための形態について図面を参照しながら説明する。
【0011】
〔文書処理システムの概略〕
図1は、本実施形態の文書処理システム500の概略を説明する図の一例である。
(1)文書管理システムのサーバ100は、まず、テキストデータの段落分けやパラグラフ等を利用して文書からセクションを抽出する。
(2)サーバ100は、形態素解析などを利用して、各セクションにおいて単語あるいは複数の単語から成るフレーズを抽出する。
(3)次に、サーバ100は、各フレーズの重要度を取得する。この重要度はフレーズの出現頻度などから公知の手法で求められる。
(4)そして、サーバ100は、フレーズのレイアウト情報から、フレーズ毎に重みを取得する。レイアウト情報とはフレーズの書式情報(文字サイズ、色など)や属性情報(ページのタイトルになっている)であり、強調性の高いレイアウト情報のフレーズには大きな重みが与えられる。したがって、重要なフレーズは重みが大きくなる。このような重み付けが本実施形態の文書処理システム500の特徴の1つである。
(5)サーバ100は、文書から重複しないようにフレーズを抽出し、各フレーズをM個の基底に割り当てた特徴ベクトルを定義する。
(6)そして、サーバ100はセクション毎に、セクションに含まれるフレーズの「重要度×重み」を基底の係数とする特徴ベクトルを生成する。そのセクションにないフレーズの係数はゼロである。
【0012】
これでセクション毎に同じ要素を含む特徴ベクトルが定義されたので、セクション間の特徴ベクトルの類似性からセクション間の距離を求めることが可能になる。サーバ100は、距離に応じてどのセクション間の境界で文書を区切るか決定することができる。
【0013】
〔文書処理システムの構成〕
図2は、文書処理システム500の実施形態の一例を示す図である。文書処理システム500は、文書に含まれるセクションの特徴を抽出してセクション同士を比較できればよいので、文書の種類はどのようなものでもよい。図2では一例として、会議の議事データを文書としている。
【0014】
ネットワーク300を介してサーバ100とクライアントマシン200が接続されている。クライアントマシン200はユーザが指定する会議に特有のキーワードを抽出して表示することができる。また、会議に特有のキーワードを抽出することで、関連する他の会議との違いが明確になり、議事データの内容把握が容易になる。
【0015】
典型的な実施形態としては、図のようにユーザがクライアントマシン200を操作してブラウザを使用し、記憶している文書をイントラネットやインターネットなどのネットワーク300を通じて、サーバ100に送信する形態である。サーバ100はキーワードの抽出を行いクライアントマシン200に送信するので、ユーザはブラウザ上で会議に特有のキーワードなどを見ることができる。
【0016】
図2ではクライアントマシン200がネットワーク先のサーバ100を使用しているが、クライアントマシン200にサーバ100が使用するプログラムをインストールすることで、クライアントマシン200が単体で文書を分割することもできる(スタンドアロン型)。
【0017】
図3は、クライアントマシン200のハードウェア構成図の一例を示す。クライアントマシン200は、バス21で接続されたCPU11、メモリ12、記憶装置13、シリアルポート14、ネットワークインタフェース15、ディスプレイアダプタ16、キーボード18、ポインティングデバイス19、及び、音声インタフェース20を有する。
【0018】
CPU11は、主にブラウザアプリを実行して、サーバ100との通信などクライアントマシン200の全体を制御する。記憶装置13にはブラウザアプリが記憶されており、CPU11はDRAMなどの高速な不揮発メモリを作業用のメモリ12にして、ブラウザアプリを実行する。
【0019】
シリアルポート14は例えばUSBケーブルのI/Fであり、プリンタ、FAX、スキャナなどの外部入力装置とクライアントマシン200の接続を可能とする。ネットワークインタフェース15は、例えばイーサネットカード(登録商標)に代表されるNIC(work Interface Card)であり、物理層とデータリンク層の通信を確立する。なお、クライアントマシン200の例えばOSにTCP/IPのプロトコルスタックを提供するソフトウェアが実装されており、電子メールアプリ、FTPアプリ、ブラウザアプリはTCP/IPのプロトコルスタックを呼び出して、ネットワーク300越しの通信を実行する。
【0020】
ディスプレイアダプタ16にはディスプレイスクリーン(表示装置)17が接続されている。ディスプレイアダプタ16は、クライアントマシン200上で動くブラウザアプリが形成するGUI画面を、GDIを介してディスプレイスクリーン17に表示する。
【0021】
キーボード18とポインティングデバイス19は、ユーザの操作を受け付ける入力装置である。この他、ディスプレイスクリーン17と一体のタッチパネルが入力装置となることがある。また、音声インタフェース20は、音声メッセージ、警報音などを出力してユーザにメッセージを通知したり、ユーザからの音声入力を受け付ける出力装置や入力装置となる。
【0022】
図4は、サーバ100のハードウェア構成図の一例を示す。サーバ100は、それぞれバスで相互に接続されているCPU101、RAM102、ROM103、記憶媒体装着部104、通信装置105、入力装置106、表示制御部107及び記憶装置108を有する。CPU101は、OS、アプリケーションソフトウェアを記憶装置108から読み出して、RAM102を作業メモリにして実行する。
【0023】
RAM102は必要なデータを一時保管する作業メモリ(主記憶メモリ)になり、ROM103にはBIOSや初期設定されたデータ、起動用プログラム等が記憶されている。
【0024】
記憶媒体装着部104はUSBケーブル等のケーブルや、可搬型の記憶媒体111を装着するインタフェースである。
【0025】
通信装置105は、LANカードやイーサネット(登録商標)カードと呼ばれ、クライアントマシン200からパケット(主に文書)を受信し、クライアントマシン200にパケット(主に分割後の文書)を送信する。
【0026】
入力装置106は、キーボード、マウスなど、ユーザの様々な操作指示を受け付けるユーザインターフェイスである。タッチパネルや音声入力装置を入力装置とすることもできる。表示制御部107は、種々のアプリケーションプログラムが指示する画面情報に基づき所定の解像度や色数等でディスプレイ109の描画を制御する。ディスプレイ109は、液晶や有機ELなどのFPD(Flat Panel Display)である。
【0027】
記憶装置108は、HDDやフラッシュメモリなどの不揮発メモリを実体とし、OS、種々のアプリケーションプログラム等を記憶している。また、本実施形態では文書を分割するためのプログラム110が記憶されている。記憶媒体111は、例えば、SDカードやUSBメモリなど不揮発性のメモリである。プログラム110は、記憶媒体111に記録された状態又は不図示のサーバからダウンロードされる態様で配布される。
【0028】
図5は、サーバ100の機能ブロック図の一例を示す。サーバ100は処理部32とDB部31を有し、処理部32はCPU101がプログラム110を実行することで実現され、DB部31は記憶装置108に実装される。なおサーバ100がDB部31を有している必要はなく、DB部31はネットワーク300に接続されていればよい。
【0029】
文書受信部34は、クライアントマシン200からネットワーク300を介して、文書や文書の集合を受信する。この文書はユーザが分割を希望した文書である。
【0030】
セクション抽出部37は、文書受信部34が受信した文書から、セクション及びそのセクションに係るレイアウト情報を抽出する。なお、レイアウト情報は特徴ベクトル作成部36が抽出してもよい。
【0031】
キーワード抽出部37は、コーパスを利用して形態素解析を文書に施すことで、テキストからフレーズを抽出すると共に、そのフレーズに係る重要度を算出する。
【0032】
メタデータ抽出部35は、セクション抽出部37の抽出するレイアウト情報をメタデータの種類や内容に置き換えてメタデータを抽出する。
【0033】
特徴ベクトル作成部36は、キーワード抽出部37の抽出するフレーズ、キーワード抽出部37の抽出するそのフレーズに係る重要度、及び、メタデータ抽出部35の抽出するそのフレーズに係るメタデータに基づき重み記憶部33を参照して得られる重みから、セクションごとの特徴ベクトルを作成する。
【0034】
まとまり抽出部39は、特徴ベクトル作成部36の作成するセクション毎の特徴ベクトルに基づき、内容の類似するセクション同士をまとめる。
【0035】
結果表示部40は、まとまり抽出部39の決定したセクション同士のまとまりを表示する。
【0036】
まとまりキーワード抽出部41は、まとまり抽出部39が抽出したまとまりのキーワードを特定して結果表示部40に表示させる。
【0037】
重み記憶部33は、メタデータと重みの対応関係である重み記憶テーブルを記憶している。
【0038】
なお、文書は1つ以上のセクションを有し、セクションは1つ以上の文を有するものとし、文は文節から構成され、文節は単語(自立語と付属語がある)から構成されるものとする。したがって、文書集合>文書>セクションの関係があるが、そもそも文書集合と文書の区別は曖昧なので、この関係は厳密なものではない。このため、複数の文書からセクションを抽出することもできる。また、単語は、日本語の一般的な品詞に区分することができる。なお、日本語では句点「。」までを1つの文とみなすが、文書の性質を考慮して句点がなくても箇条書きの一行を文とみなすこと、読点「、」までを1つの文とみなすこと、などユーザはサーバ100に設定することができる。
【0039】
また、テキストデータとはファイルフォーマットがテキストであることをいうのでなく、文字、記号、数値、アルファベット等が記述されたデータをいう。アプリケーションソフトから開くことによって文字、記号、数値、アルファベット等が判別可能であれば、ファイルフォーマットの種類は問わない。
【0040】
また、本実施例のフレーズは、「単語」又は「複数の単語の組み合わせ」を指すものとする。ただし、フレーズは必ず名詞を含むものとし、フレーズの末尾は名詞であるものとする。例えば、名詞、形容詞及び格助詞の組み合わせのフレーズがあっても、最後の単語は必ず名詞となることとする。また、先頭の単語が格助詞となることはない。
【0041】
〔全体的な手順〕
図6は、サーバ100が文書のまとまりを作成する全体的な手順を示すフローチャート図の一例である。ここでは、文書を内容のまとまり毎に分割する処理フローについて説明する。
【0042】
〔S1-1〕まず、クライアントマシン200は分割対象の文書をサーバ100に送信する。
図7は、クライアントマシン200に表示される、文書の転送画面の一例を示す。ユーザは参照ボタン201を押下して、記憶装置13に記憶している文書のファイル名を指定する。クライアントマシン200は、指定された文書のファイル名(正確にはパス名)をファイル名欄202に表示する。ユーザが登録ボタン203を押下すると、クライアントマシン200のネットワークインタフェース15はサーバ100に文書を送信する。なお、ユーザはサーバ100にログインしているものとする。この文書には1以上の会議の議事データが含まれている(セクション毎に細分化するのであれば複数の会議の議事データが含まれている)。
【0043】
これにより、文書受信部34は、分割対象の文書を取得する。文書はサーバ100の例えば記憶装置108に記憶される。
【0044】
〔S1-2〕セクション抽出部37は記憶装置108から受信した文書を読み込み、テキストデータ、セクションの区切りを示す区切り情報、及び、レイアウト情報を抽出する。レイアウト情報とは、レイアウト情報とは主にそのフレーズの書式の種類、位置又は属性(そのフレーズがその文書において持つ意味)である。
・書式情報(文字色、文字の大きさ、修飾、下線、など)
・位置{文字の存在する絶対的な位置(例えば1〜50行目など)や相対的な位置(図の下、図の中、欄外、注釈欄、吹き出し内など)}
・属性情報(タイトル、サブタイトル、注釈、但し書き、補足、式など)、
書式情報は、例えば、文書がHTMLで記述されていればタグにより検出される。
文字色は<FONT color="カラー名">〜</FONT>
文字の大きさは<font size="サイズ">〜</font></
修飾のうち太字は<b>〜</b>、強調は<strong>〜</strong>、下線は<u>〜</u>
が一般的なタグである。
【0045】
また、文書がリッチテキストで記述されていれば、文書中に文字色等が制御記号を用いて盛り込まれている(文書に含まれている)。日本語のような2バイト文字は、文字コードを16進数で表記する。「\'xx\'yy」で1文字なので、「あ」=「\'82\'a0」となる。リッチテキストでは"\(実際は半角)"+"制御文字"+"テキスト"によりテキストの表示を制御する。また、テキストとは別にフォントテーブルとカラーテーブルが文書に含まれ、フォントや色はテーブルの番号により文字毎に指定することが可能である。
【0046】
フォントは「\fn」により指定される(nがフォントテーブルのフォントを指示する番号)。文字の大きさは「\fsn」により指定される(nがフォントサイズ=n×0.5ポイントを示す)。
修飾のうち「\b」は太字にすることを示し、「\i」は文字を斜体にすることを示し、「\cfn」は文字の色を指定すること示す(nがカラーテーブルのカラーを指示する番号)。
なお、「\par」は段落の区切りを示す。
【0047】
また、絶対的な位置は、文書がHTMLで記述されてもリッチテキストで記述されていても1行の文字数は端末側の設定によるところが大きいが、1行目であることはテキストの先頭から所定文字以内(例えば、30〜40文字以内)に抽出されたことから検出される。
【0048】
また、例えば、欄外や注釈欄のフレーズであることは、タイトルよりも上側のタイトルよりも小さい文字サイズで記述されていること、他のテキストよりも小さい文字サイズで最下行に表示されるように記述されていること、から検出される。
【0049】
また、ページのタイトルであることは、文書がHTMLで記述されていれば、タグ<TITLE>からページのタイトルであることが検出できる。また、リッチテキストでも文字サイズが最も大きいことや、一番最初の行のテキストであること、句読点がないことなどからも検出可能である。
【0050】
このように、レイアウト情報は、文書から抽出することが可能である。
【0051】
〔S1-2〕次に、セクション抽出部37はテキストデータの書式を利用して分割し、セクションを抽出する。セクション抽出部37は、
・改行
・文字の大きさが大きくなった位置
・改ページ
等を区切り情報として検出し、区切り情報を検出する毎に新しいセクションとしてセクションを抽出していく。
【0052】
特に、下記の本実施形態では、1つの会議の議事データの区切りを検出して、1つの会議の議事データをセクションとしている。
【0053】
〔S1-3〕各セクションについて、キーワード抽出部37がセクション毎にフレーズを抽出し、さらにそのフレーズのそのセクションにおける重要度を求める。この処理の詳細は次述する。
【0054】
〔S1-4〕次にメタデータ抽出部35が各セクションについて、各フレーズのメタデータを取得する。ここでメタデータとはセクション抽出部37が抽出するレイアウト情報を、予め定めた種類と内容に分類したものをいう。したがって、レイアウト情報とメタデータを厳密に区別しなくてもよい。
【0055】
〔S1-5〕特徴ベクトル作成部36が各セクションについて、フレーズ、フレーズの重要度及びフレーズのメタデータに基づく重み、を用いて各セクションの特徴ベクトルを作成する。この処理の詳細は後述する。
【0056】
〔S1-6〕まとまり抽出部39が、各セクションの特徴ベクトルに基づき、類似する複数のセクション同士を一つのまとまりとし、内容的なまとまりを作成する。
【0057】
〔S1-7〕結果表示部40が、まとまり抽出部39の作成したまとまりが明示されるように文書にまとまり情報を追加する。まとまり情報が追加された文書はクライアントマシン200に送信され、クライアントマシン200は図13のような文書をディスプレイスクリーン17に表示することができる。
【0058】
〔S1-3 キーワードの抽出〕
図8のフローチャート図を用いてキーワードの抽出について詳細に説明する。
本実施形態では、一例としてTF-IDF値の算出によりキーワード抽出を行うものとする。TF-IDFの「TF」は「Term Frequency」の略であり、その文書の中で特定の単語が出現した回数を表し、「IDF」は「Inverse Document Frequency」の略であり、複数の文書全体の中でその単語がどのくらい使用されているかを表す。「TF×IDF」が、その文書におけるその単語のTF-IDF値となる。
【0059】
〔S1-3-1〕まずキーワード抽出部37は、入力としてキーワード抽出対象テキストCiおよび文書集合{C}を記憶装置108から読み出す。キーワード抽出対象テキストCiは、クライアントマシン200が送信した文書の全テキストデータについてセクション抽出部が抽出したセクションの一つであり、文書集合{C}は、クライアントマシン200が送信した、近似した分野の文書の全テキストデータの全体である。
【0060】
例えば、文書集合が会議の議事データの場合、文書集合{C}は複数の議事データの集合である。例えば、クライアントマシン200が送信した文書の全テキストデータが複数の会議の議事データの集合であり、セクション抽出部により各会議の議事データがセクションとして抽出されるならば、キーワード抽出対象テキストCiは、一つの会議の議事データとなり、文書集合{C}は、複数の議事データの集合全体となる。
【0061】
〔S1-3-2〕次にキーワード抽出部37は、キーワード抽出対象テキストCi に対して形態素解析を行う。形態素解析を提供するプログラムは市販されている。また、不図示のサーバに文を送信することで、クライアントマシン200に形態素解析の結果が送信されるサービスもある。本実施形態では例えばMeCab(オープンソース形態素解析エンジン)等のソフトウェアを利用して行うものとする。
【0062】
そして、キーワード抽出部37は、キーワード抽出対象テキストCiに含まれる全てのフレーズjについてその出現頻度を数え、その値をtf(i,j) とする。"i"はキーワード抽出対象テキストCiと同じであり固定である。"j"は文書集合の中のフレーズに文書先頭から付与される連番であり、同じフレーズには同じ値が付与される。
【0063】
なお、上記のとおり、フレーズとして抽出する品詞は決まっており、形態素解析の結果により、"名詞単独"、"名詞、形容詞又は格助詞の組み合わせ"を抽出することができる。
【0064】
〔S1-3-3〕次に、キーワード抽出部37は、フレーズjのそれぞれについて、文書集合{C}に含まれる文のうち、そのフレーズを含む文の数をカウントしN(j)とする。
【0065】
〔S-1-3-4〕キーワード抽出部37は、さらにidf(j) = log(n/N(j))を計算する。"n"は文書集合{C}に含まれる文の総数である。したがって、この計算は、文書集合{C}の出現数が多いフレーズほど値が小さくなることを意味する。
【0066】
〔S1-3-5〕最後にすべてのフレーズjについて、tf(i,j)×idf(j)を算出してそのフレーズjのTF-IDF(i,j)とする。TF-IDF(i,j)は、出現頻度が多くても汎用的なフレーズは小さくなり、出現頻度が多く汎用的でないフレーズで大きくなる。
以下、TF-IDF(i,j)をフレーズの重要度と呼ぶ。
【0067】
〔S1-5 特徴ベクトルの作成〕
図9は、各セクションの特徴ベクトルの作成手順を示すフローチャート図の一例である。
【0068】
[S1-5-1]まず入力として、特徴ベクトル作成部36は、各セクションにおいてキーワード抽出部37が抽出したフレーズ、そのフレーズの重要度、及び、メタデータ抽出部35が抽出するそのフレーズに係るメタデータ、の組み合わせを取得する。
【0069】
{フレーズ、重要度、メタデータ}
[S1-5-2]特徴ベクトル作成部36は、メタデータについて重み記憶テーブルを参照し、そのメタデータに対応する重みの値を取得する。
【0070】
図10は重み記憶部33に記憶された重み記憶テーブルを模式的に説明する図の一例である。重み記憶テーブルには、メタデータに対応づけて重みが登録されている。メタデータは、フレーズのレイアウト情報の内容を書式などの意味のある単位毎に取り出したデータである。また、重みは、メタデータによる強調性の高さを設計者がメタデータの内容から推測した数値である。強調性の強いメタデータが抽出されたフレーズは重要性が高いと推定される。
【0071】
第1列にはメタデータが登録されている。これは図に示すように、
「レイアウト情報の種類」=「レイアウト情報の内容」
の形で格納される。
【0072】
第2列にはメタデータに対応する重みが登録されている。第1列の内容がその文書にとって重要性の高さを表すと一般に考えられるメタデータほど高い値が重みとなって与えられている。重みは予め与えられており、この第1列に存在しないメタデータに係る重みはデフォルトの「1」とされる。
【0073】
したがって、「1」より大きい重みのメタデータが抽出されるフレーズはその文書にとって重要なフレーズであり、「1」より小さい重みのメタデータが抽出されるフレーズはその文書にとって重要でないフレーズである。メタデータが「赤」のフレーズと「ページタイトル」のフレーズは文書にとって重要なフレーズと考えられるため、「1」より大きい重みが登録されており、図中の文字は文書にとって重要でないフレーズと考えられるため、「1」より小さい重みが登録されている。
【0074】
図9に戻り、特徴ベクトル作成部36は、前ステップで得た、フレーズ、そのフレーズの重要度、及び、メタデータ抽出部35が抽出するそのフレーズに係るメタデータの組み合わせを、フレーズ、そのフレーズの重要度、及び、そのフレーズのメタデータの重みの組み合わせに変換する。つまり、メタデータをメタデータの重みと置き換える。
【0075】
{フレーズ、重要度、メタデータ}→ {フレーズ、重要度、重み}
なお、メタデータ抽出部35の抽出したフレーズのメタデータが「文字色=赤」かつ「属性=ページタイトル」のように2つ以上ある場合は、それぞれに対応する重みを掛け合わせた値を重みとする。図10の例では、それぞれ2.0と3.0なので、重みは6.0になる。
【0076】
[S1-5-3]次に、特徴ベクトル作成部36は、各セクションについて抽出したフレーズを余すことなく含むフレーズの集合k(i)を作成する。k(i) の"i"はi=1…Mをとる。ただしMは文書全体におけるフレーズの種類数である。
【0077】
[S1-5-4] 次に、特徴ベクトル作成部36は、各セクションについてM個の要素を持つ特徴ベクトルを作成する。すなわち、適当なM個の基底(x1,x2、x3…xM)を用意し、各基底に例えば出現順にM個のフレーズを割り当てる。基底は直交基底が好ましい。
【0078】
そして、特徴ベクトルのi番目の基底の係数を、
特徴ベクトルの基底(i)の係数 = (フレーズk(i)に対応する重要度) × (フレーズk(i)に対応する重み)
と定義する。
【0079】
ただし、フレーズk(i)がそのセクションに存在せず、故にフレーズk(i)に対応する重要度もフレーズk(i)に対応する重みも存在しない場合はその要素は"0"とする。
【0080】
また、逆に、同じフレーズk(i)がそのセクションに複数個存在した場合、そのフレーズから計算される特徴ベクトルの要素(i)は、同じセクション内の同じフレーズk(i)の全ての重みを掛け合わせたものとする。
特徴ベクトルの要素(i) = (フレーズk(i)に対応する重要度) × (フレーズk(i)に対応する重み)×…× (フレーズk(i)に対応する重み)
したがって、セクション毎に特徴ベクトルは異なることがほとんどである。
【0081】
〔S1-6 まとまりの抽出〕
図11は、まとまり抽出部39がまとまりを抽出する手順を示すフローチャート図の一例である。まとまり抽出部39は、各セクションの特徴ベクトルに基づき、類似する複数セクションを一つのまとまりとする。
【0082】
[S1-6-1] まず、まとまり抽出部39は、入力として各セクションにおける特徴ベクトルを取得しfiとおく。
【0083】
[S1-6-2] 次に、まとまり抽出部39は、まとまりの数を決定しその数をpとする。この数pの決定方法は、例えば、セクションの数を一定値(3〜10)で除することにより得る。セクションの数に応じて一定値を大きくしてもよい。これにより、セクションの数が大きければ、まとまりの数も大きくでき、適切な分割が可能になる。また、ユーザが文書を送信する際にまとまりの数を指定するとしてもよい。これにより、ユーザがまとまりの大きさを指定できる。
【0084】
[S1-6-3] 次に、まとまり抽出部39は、隣り合うセクション同士で特徴ベクトルの距離を計算し、diとする。
【0085】
[S1-6-4] その距離diの大きい順にp-1個のセクションの境界を特定し、セクションの分割点とする。これにより、セクションのまとまりをp個得ることができる。ここでベクトル同士の距離とは2つのベクトルaとbがあったときに、ベクトルa-bの絶対値(ユークリッド距離)とする方法や、余弦距離(コサイン類似度)として、aとbの内積をaの絶対値にbの絶対値を乗じた値で除することにより得られる値とする方法がある。
【0086】
なお、余弦距離を利用する場合は分割点の抽出の際に距離の大きい順ではなく、小さい順にp-1個のセクションの境界を分割点とする。余弦距離は−1から1の間の値を取るが、値が小さいほど距離が離れていることを意味するためである。
【0087】
〔模式的例〕
図12(a)〜(c)はセクション間の距離の例を模式的に示す図の一例である。図12(a)は距離が近い例を示す。セクション1にはフレーズAとフレーズBが記述されている。フレーズの上の括弧内の数値は(重要度,重み)を表す。フレーズAの重要度は"a",重みは"2"、フレーズBの重要度は"b",重みは"3"、である。
【0088】
セクション2にはフレーズA、フレーズB、フレーズC、フレーズDが記述されている。同じフレーズの重要度はセクションが変わっても共通なので、フレーズAの重要度は"a",重みは"6"、フレーズBの重要度は"b",重みは"1"、フレーズCの重要度は"c",重みは"2"、フレーズDの重要度は"d",重みは"1"である。
【0089】
したがって、セクション1とセクション2の特徴ベクトルは次のようになる。ここではフレーズ名をベクトルの基底とする。また、文書中に全部で4つのフレーズA〜Dが得られているとする。
セクション1:(2aA, 3bB, 0, 0)
セクション2:(6aA, 1bB,2cC,1dD)
セクション分けされるかどうかは他のセクション境界の距離と比較され相対的に決まるが、セクション1とセクション2の距離は比較的近いと考えられる。
【0090】
図12(b)は距離が遠い例を示す。セクション1については図12(a)と同じである。これに対しセクション2にはフレーズCが記述されている。フレーズCの重要度は"c",重みは"2"である。したがって、セクション1とセクション2の特徴ベクトルは次のようになる。
セクション1:(2aA, 3bB, 0, 0)
セクション2:( 0, 0,2cC, 0)
ベクトルの4つの要素に共通する要素がないので、セクション1とセクション2の距離は比較的遠いと考えられる。
【0091】
図12(c)は距離が遠い例を示す。セクション1については図12(a)と同じである。セクション2もほぼ同じだが、重要度と重みが異なる。セクション2のフレーズCの重要度は"c",重みは"2"、フレーズDの重要度は"d",重みは"1"である。また、フレーズAとフレーズBが記述されているが、レイアウト情報からそれらは欄外に記述されていることが分かる。フレーズAとフレーズBの位置が欄外なので、フレーズAとフレーズBの重みは小さくなり、フレーズAの重みは"0.5"、フレーズBの重みは"0.5"となっている。したがって、セクション1とセクション2の特徴ベクトルは次のようになる。
セクション1:(2aA, 3bB, 0, 0)
セクション2:(0.5aA, 0.5bB,2cC,1dD)
セクション分けされるかどうかは他のセクション境界の距離と比較され相対的に決まるが、図12(c)と図12(a)の特徴ベクトルを比較すると、図12(c)の方が2つの特徴ベクトルの距離が遠い。したがって、文書のレイアウト情報からメタデータを抽出し、フレーズに重み付けすることで、セクション間の距離をより適切に算出することができることがわかる。
【0092】
〔表示例〕
以上により、サーバ100は文書を所定の数のまとまりに分割することができた。結果表示部40は、まとまりとまとまりの境界を明示してクライアントマシン200に送信する。
図13は、まとまりとまとまりの境界の表示例を示す。結果表示部40は、まとまり抽出部39の抽出結果に従い、セクションのまとまりが視覚的にわかるような形にレイアウトして表示する。図13の例では、波線でセクションのまとまりが示されている。例えばHTML文書では、
<div style="border:dotted ; black; border-width:10px"> セクション〜セクション</div>
のようにセクションとセクションをタグで囲むことで、まとまりを破線で囲む表示が可能なので、結果表示部40はこのような記述を文書に追加する。また、このような機能は、文書を作成するワードプロセッサアプリによっても提供される。したがって、破線の描画情報は文書のファイルに書式情報として含まれている。
【0093】
また、まとまりの明示のために複雑な処理を不要にした境界の明示方法もある。
図14は、まとまりとまとまりの境界の明示の一例を示す図である。図14(a)では、まとまり間に特殊記号(例えば、*)の行が挿入されている。この他、特殊記号(例えば、+、−、#、=等)を挿入することができ、破線で囲むことなく境界を明示することができる。また、特殊記号を含まなくても、まとまりとまとまりの境界を所定数空けることでも境界の明示は可能である。
【0094】
また、図14(b)は、まとまりとまとまりの境界で別の文書ファイルにした例を模式的に示す。この他、別の文書ファイルにするのでなく改ページしてもよい。ユーザは別の文書になっていることや改行されていることから容易にまとまりを把握できる。
【0095】
図15は、まとまり毎にキーワードが表示された表示例の一例を示す。キーワードが各まとまりの右側に表示されている。キーワードはまとまり内でより重要なフレーズと定義できるので、次のようにしてキーワードを特定する。なお、キーワードを特定する機能ブロックをまとまりキーワード抽出部41という。
(i)まとまりキーワード抽出部41は、まとまり抽出部39の抽出した各まとまりにおいて、そのまとまりに含まれる全てのセクションの特徴ベクトルを足しあわせる。これは、ベクトルの単純な加算でも、基底の係数をスカラーとして基底毎に加算してもよい。
(ii)まとまりキーワード抽出部41は、(i)で得られた特徴ベクトルを用いて、係数が大きい基底から順に所定数個の基底を特定する。この基底に対応するフレーズがキーワードである。
【0096】
キーワードの個数は、サーバ100に予め登録されているか、ユーザが指定することができる。図15の例では一つのまとまりに対し2つのフレーズがキーワードとなっている。
【0097】
以上説明したように、本実施形態の文書処理システム500は、フレーズの重みをレイアウト情報から抽出するので、強調して表示されるフレーズの重要性を適切に数値化することができる。また、欄外などのフレーズの重要性を小さくできるので、まとまりの抽出時に頻度が多くても重要でないフレーズを含むセクションを適切に取り扱うことができる。
【符号の説明】
【0098】
31 DB部
32 処理部
33 重み記憶部
34 文書受信部
35 メタデータ抽出部
36 特徴ベクトル作成部
37 セクション抽出部
38 キーワード抽出部
39 まとまり抽出部
40 結果表示部
41 まとまりキーワード抽出部
100 サーバ
200 クライアントマシン
300 ネットワーク
500 文書処理システム
【先行技術文献】
【特許文献】
【0099】
【特許文献1】特開2009−238115号公報

【特許請求の範囲】
【請求項1】
テキストデータが記述された文書ファイルを取得する文書ファイル取得手段と、
前記テキストデータの区切り情報を検出して該テキストデータから複数のセクションを抽出するセクション抽出手段と、
前記テキストデータからフレーズ及び前記フレーズのレイアウト情報を抽出し、各フレーズの前記テキストデータにおける重要度を算出するフレーズ重要度算出手段と、
テキストデータを視覚的に調整するレイアウト情報に対応づけてレイアウト情報の重み情報が登録された重み情報記憶手段と、
前記テキストデータから重複しないように抽出した一連の前記フレーズに基底を割り当て、前記セクション内の前記フレーズの重要度、及び、前記重み情報記憶手段から読み出したレイアウト情報に対応づけられた前記重み情報、から生成された値を基底の係数とする特徴ベクトルを、前記セクション毎に作成する特徴ベクトル作成手段と、
前記セクション同士の前記特徴ベクトルの類似度に応じて、複数の前記セクションを1つのまとまりとして抽出するまとまり抽出手段と、
を有することを特徴とする文書分割装置。
【請求項2】
前記まとまり抽出手段が抽出した前記まとまりの区切りを可視化する可視情報を前記文書ファイルに追加する結果可視化手段、を有することを特徴とする請求項1記載の文書分割装置。
【請求項3】
前記まとまり抽出手段が抽出した前記まとまりのキーワードを抽出するまとまりキーワード抽出手段を、
さらに有することを特徴とする請求項1又は2記載の文書分割装置。
【請求項4】
前記特徴ベクトル抽出手段は、着目している前記セクションに基底に割り当てられた前記フレーズが存在しない場合、存在しない前記フレーズの係数をゼロにする、
ことを特徴とする請求項1〜3いずれか1項記載の文書分割装置。
【請求項5】
前記重み情報記憶手段には、視覚的に強調して表示されるレイアウト情報ほど大きな前記重み情報が対応づけて記憶されている、
ことを特徴とする請求項1〜4いずれか1項記載の文書分割装置。
【請求項6】
前記フレーズの1ページにおける記述位置をレイアウト情報として、前記重み情報記憶手段には前記記述位置に前記重み情報が対応づけられており、
前記記述位置が欄外の場合、記述位置が欄内の場合よりも小さな前記重み付け情報が対応づけられている、
ことを特徴とする請求項5記載の文書分割装置。
【請求項7】
文字の大きさ、装飾内容又は色をレイアウト情報として、前記重み情報記憶手段には文字の大きさ、装飾内容又は色に対応づけて前記重み付け情報が対応づけられている、
ことを特徴とする請求項5又は6記載の文書分割装置。
【請求項8】
前記結果可視化手段は、前記まとまりを矩形枠で囲む前記可視情報を前記文書ファイルに追加する、ことを特徴とする請求項2記載の文書分割装置。
【請求項9】
前記まとまりキーワード抽出手段は、前記まとまりに含まれる前記セクションの前記特徴ベクトルの和を求め、係数の大きさが大きい順に基底に割り当てられた所定数の前記フレーズを前記まとまりのキーワードとして抽出する、
ことを特徴とする請求項3記載の文書分割装置。
【請求項10】
前記文書ファイルには複数の会議の各議事データが含まれており、
前記セクション抽出部は、複数の議事データをセクションとして抽出し、
前記まとまり抽出部は、議事データの前記特徴ベクトルの類似度に応じて、複数の議事データを1つのまとまりとして抽出する、
ことを特徴とする請求項1〜9いずれか1項記載の文書分割装置。
【請求項11】
情報処理装置とサーバがネットワークを介して接続された文書処理システムであって、
前記情報処理装置は、テキストデータが記述された文書ファイルを前記サーバに送信する送信手段、を有し
前記サーバは、
テキストデータが記述された文書ファイルを取得する文書ファイル取得手段と、
前記テキストデータの区切り情報を検出して該テキストデータから複数のセクションを抽出するセクション抽出手段と、
前記テキストデータからフレーズ及び前記フレーズのレイアウト情報を抽出し、各フレーズの前記テキストデータにおける重要度を算出するフレーズ重要度算出手段と、
テキストデータを視覚的に調整するレイアウト情報に対応づけてレイアウト情報の重み情報が登録された重み情報記憶手段と、
前記テキストデータから重複しないように抽出した一連の前記フレーズに基底を割り当て、前記セクション内の前記フレーズの重要度、及び、前記重み情報記憶手段から読み出したレイアウト情報に対応づけられた前記重み情報、から生成された値を基底の係数とする特徴ベクトルを、前記セクション毎に作成する特徴ベクトル作成手段と、
前記セクション同士の前記特徴ベクトルの類似度に応じて、複数の前記セクションを1つのまとまりとして抽出するまとまり抽出手段と、
を有することを特徴とする文書処理システム。
【請求項12】
コンピュータに、
テキストデータが記述された文書ファイルを取得する文書ファイル取得ステップと、
前記テキストデータの区切り情報を検出して該テキストデータから複数のセクションを抽出するセクション抽出ステップと、
前記テキストデータからフレーズ及び前記フレーズのレイアウト情報を抽出し、各フレーズの前記テキストデータにおける重要度を算出するフレーズ重要度算出ステップと、
前記フレーズのレイアウト情報を前記文書ファイルから抽出し、テキストデータを視覚的に調整するレイアウト情報に対応づけてレイアウト情報の重み情報が登録された重み情報記憶手段から、レイアウト情報に対応づけられた重み情報を読み出す重み決定ステップと、
前記テキストデータから重複しないように抽出した一連の前記フレーズに基底を割り当て、前記セクション内の前記フレーズの重要度、及び、前記重み情報記憶手段から読み出したレイアウト情報に対応づけられた前記重み情報、から生成された値を基底の係数とする特徴ベクトルを、前記セクション毎に作成する特徴ベクトル作成手段ステップと、
前記セクション同士の前記特徴ベクトルの類似度に応じて、複数の前記セクションを1つのまとまりとして抽出するまとまり抽出ステップと、
を実行させるプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate


【公開番号】特開2012−59227(P2012−59227A)
【公開日】平成24年3月22日(2012.3.22)
【国際特許分類】
【出願番号】特願2010−204859(P2010−204859)
【出願日】平成22年9月13日(2010.9.13)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】