説明

情報抽出装置、情報抽出方法および情報抽出プログラム

【課題】Webページから属性情報を抽出する際の抽出ルール作成に対する負荷、作成コストを軽減させた情報抽出装置を提供する。
【解決手段】オペレータが指定したWebページのテキスト文字列および属性情報に対して、当該属性情報の属性名およびレイアウト情報を含む抽出ブロックを、Webページから取得して表示する抽出ルール作成支援部110と、前記取得された抽出ブロックに対して、各抽出ブロックの属性名毎に抽出ブロックを一般化し、一つの抽出ブロックに単一化し、単一化された抽出ルールを作成して抽出ルールDB140に格納する抽出ルール作成部120と、前記Webページのテキストを予めブロック化しておき、前記抽出ルールDB140に格納された抽出ルールを、前記ブロック化されたテキストに適用して属性情報を抽出する抽出ルール適用部130と、を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、インターネット上のWebページ等から市場分析などに必要な商品などについての属性情報を抽出する情報抽出技術に関する。
【背景技術】
【0002】
ネットワーク上のテキスト情報源、例えばWebページ等から商品の名前や価格等の属性情報を抽出する技術が下記特許文献1で開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2000−348061号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
単一のWebページに複数の商品などが掲載されている場合、各商品の属性情報を個々の商品毎にグループ化する方法が必要となる。
【0005】
例えば、図6のような商品に関するWebページがあるとすると、この図6のページから、従来技術により以下のような属性情報が抽出される。
【0006】
商品名:帽子、サンダル、サングラス、…
価格:¥2,980、¥3,980、¥1,980、…
このときに、それぞれの商品名がどの価格に対応しているのかを対応付ける必要がある。
【0007】
このように属性情報どうしを対応付けて抽出することができる抽出ルールを作成することは、作成コストのかかるものであった。
【0008】
本発明は上記課題を解決するものであり、その目的は、テキスト情報源から属性情報を抽出する際の抽出ルール作成に対する負荷、作成コストを軽減させた情報抽出装置、方法、プログラムを提供することにある。
【課題を解決するための手段】
【0009】
上記課題を解決するために本発明では、オペレータによる抽出ルールの作成支援を行い、ページのレイアウト情報を手がかりにして属性情報抽出ルールを作成し、作成した抽出ルールを元に例えば商品の属性情報を抽出する。
【0010】
すなわち、本発明の情報抽出装置は、オペレータが指定したテキスト情報源のテキスト文字列および属性情報に対して、当該属性情報の属性名およびテキスト文字列周辺のレイアウト情報を含む抽出ブロックを、テキスト情報源から取得して表示する抽出ルール作成支援手段と、前記抽出ルール作成支援手段によって取得された抽出ブロックに対して、各抽出ブロックの属性名毎に抽出ブロックを一般化し、該一般化された抽出ブロックについて各属性名毎の抽出ブロックを一つの抽出ブロックに単一化し、属性情報を抽出するための単一化された抽出ルールを作成する抽出ルール作成手段と、前記テキスト情報源のテキストを予めブロック化しておき、前記抽出ルール作成手段によって作成された抽出ルールを、前記ブロック化されたテキストに適用して属性情報を抽出する抽出ルール適用手段と、を備えたことを特徴としている。
【発明の効果】
【0011】
本発明によれば、オペレータの指示(情報指定等)に対して、抽出ルール作成支援手段が抽出ブロックの取得と表示を行なうので、オペレータに対して対話的に抽出ルールの作成支援がなされ、オペレータの抽出ルール作成に対する負荷を軽減することができる。
【0012】
また、抽出ルール作成手段による前記抽出ブロックの一般化と単一化によって、単一化した抽出ルールが作成されるので、属性情報間の対応関係が推測可能となり、オペレータが複数の属性情報間の対応関係を指定する必要がなくなる。
【図面の簡単な説明】
【0013】
【図1】本発明の一実施形態例を示す全体構成図。
【図2】本発明の一実施形態例による情報抽出方法の処理を示すフローチャート。
【図3】本発明の一実施形態例による情報抽出装置の機能ブロック図。
【図4】本発明の一実施形態例による抽出ルール作成支援の処理を示すフローチャート。
【図5】本発明の一実施形態例による抽出ルール作成の処理を示すフローチャート。
【図6】本発明の一実施形態例において表示するテキストの一例を示す説明図。
【図7】図6のテキストを表示するための記述形式を示す説明図。
【発明を実施するための形態】
【0014】
以下、図面を参照しながら本発明の実施の形態を説明するが、本発明は下記の実施形態例に限定されるものではない。本発明におけるオペレータとは、抽出ルールを作成しようとする作業者である。また、レイアウト情報とは、例えば図6に示す商品に関するWebページのテキストについて、レイアウトされたテキストを表示するための記述形式(図7)である。
【0015】
図7において、“<top>”と“</top>”とで囲まれた範囲により表示対象を示している。また、“<item>”と“</item>”とで囲まれた範囲は、箇条書きの要素であることを示している。さらに、“<r>”は改行を、“<t>”はタブを各々表している。
【0016】
図1は本発明の一実施形態例における情報抽出装置100の全体構成を示し、図2は情報抽出装置100で行なわれる処理の流れを示し、図3は情報抽出装置100の各部の機能を示している。
【0017】
図1において、情報抽出装置100は、抽出ルール作成支援手段としての抽出ルール作成支援部110、抽出ルール作成手段としての抽出ルール作成部120、抽出ルール適用手段としての抽出ルール適用部130および抽出ルールDB(データベース)140を備えている。
【0018】
尚図1中の(1)〜(7)で示す矢印は、後述するオペレータの指示、情報の流れ、各部の処理結果等を表している。
【0019】
抽出ルール作成支援部110は、オペレータが指定(図示(1))したWebページのテキスト文字列および属性情報に対して、当該属性情報の属性名およびテキスト文字列周辺のレイアウト情報を含む抽出ブロックを、Webページから取得(図示(2))して表示する。尚、前記Webページは、例えばWebページデータベースに格納されている。
【0020】
抽出ルール作成部120は、前記抽出ルール作成支援部110によって取得された抽出ブロック(図示(3))に対して、各抽出ブロックの属性名毎に抽出ブロックを一般化し、該一般化された抽出ブロックについて各属性名毎の抽出ブロックを一つの抽出ブロックに単一化し、属性情報を抽出するための単一化された抽出ルールを作成し、抽出ルールDB140に格納する(図示(4))。
【0021】
抽出ルール適用部130は、前記Webページのテキストを予め取り込んで(図示(5))ブロック化しておき、前記抽出ルールDB140に格納された抽出ルールを取り込み(図示(6))、該抽出ルールを前記Webページのブロック化されたテキストに適用して属性情報を抽出する(図示(7))。
【0022】
前記情報抽出装置100は、例えばコンピュータにより構成され、通常のコンピュータのハードウェアリソース、例えばROM,RAM,CPU、入力装置、表示装置、出力装置、通信インターフェース、ハードディスク、記録媒体およびその駆動装置を備えている。
【0023】
このハードウェアリソースとソフトウェアリソース(OS、アプリケーションなど)との協働の結果、情報抽出装置100は、図1に示すように、抽出ルール作成支援部110、抽出ルール作成部120、抽出ルール適用部130および抽出ルールDB140を実装する。
【0024】
前記抽出ルールDB140は、ハードディスクあるいはRAMなどの保存手段・記憶手段に構築されているものとする。
【0025】
次に、上記のように構成された装置の動作を図2のフローチャートに沿って詳細に説明する。
【0026】
<抽出ルール作成支援処理(ステップS1)>
抽出ルール作成支援処理では、オペレータがWebページに対して必要な属性情報を部分的に指定し、抽出ルール作成支援部110がその指定された属性情報のレイアウト情報から抽出ブロックを取得し表示装置(図示省略)に表示させる。
【0027】
したがって、抽出ルール作成支援部110は図3のように、オペレータからの指示の受付機能と、情報の表示機能と、ブロックの抽出機能とを有している。
【0028】
前記図6のWebページを例にすると、オペレータがWebページに対して商品の属性情報である例えば“帽子”を選択し、オペレータはその属性情報に対して属性名“商品名”を付与する。抽出ルール作成支援処理では、このオペレータの一連の指示から、以下のような属性情報に対する抽出ブロックを取得する。
【0029】
<top><item[1]>[商品名:帽子]<r><t>[*]
上記抽出ブロックは、属性情報の属性名と属性値およびそのレイアウト情報からなる。“[商品名:帽子]”は、属性名“商品名”と属性値“帽子”からなる属性情報である。また、“[*]”は、着目する属性情報およびレイアウト情報以外の任意のテキスト文字列を表し、以下文字列変数と呼ぶことにする。
【0030】
さらに、抽出ブロックは、属性情報に関連するレイアウト情報を含む。レイアウト情報の同一階層に複数の同一要素がある場合には、各要素にその出現順位を示す項番を付与する。“<item[1]>”は、“<top>”直下の1番目の“<item>”要素であることを表す。
【0031】
次に抽出ルール作成支援処理(ステップS1)の具体例を図4のフローチャートとともに説明する。
【0032】
まずステップS11において、抽出ルール作成支援部110は表示装置にWebページのテキストを表示し、オペレータに対してテキスト文字列の選択を促す。
【0033】
次にステップS12において、オペレータが前記表示されたテキストに対してテキスト文字列を選択し、それを抽出ルール作成支援部110が受け付ける。
【0034】
すると抽出ルール作成支援部110は、ステップS13において、前記オペレータが選択した文字列に対応するブロックを抽出し、例えば次のようにオペレータが指定した箇所を含むテキスト文字列を強調表示する(ステップS14)ことによって、そのテキスト文字列に対する属性名の入力をオペレータに要求する。
【0035】
すなわち、下記の表1のように、表示テキスト画面にテキストを表示し、オペレータ要求画面に属性名入力欄を表示する。
【0036】
【表1】

【0037】
例えば、オペレータが帽子を指定したとするとその箇所はテキスト文字列“¥2,980”の近傍であるので、“¥2,980”を強調表示する。これに対して、属性名の入力要求欄をブロック抽出処理(ステップS13)で抽出したブロックとともにオペレータ要求画面へ表示する(表1の「?」で示される欄)。
【0038】
次にステップS15において、オペレータが前記入力要求欄に属性名を入力し、それを抽出ルール作成支援部110が受け付ける。
【0039】
次にステップS16において、抽出ルール作成支援部110は、前記オペレータが指定したテキスト文字列からそのテキスト文字列の周辺に関連するレイアウト情報を収集し、オペレータが入力した属性名を付加したテキスト文字列とレイアウト情報と属性情報から構成されるブロックを抽出する。
【0040】
例えば、オペレータがステップS12において“¥2,980”というテキスト文字列を指定し、さらにステップS15において“価格”という属性名を入力した場合、以下のようなブロックが抽出される。
【0041】
<top><item[1]>[*]<r><t>[価格:¥2,980]
このブロック抽出処理において、属性情報“[価格:¥2,980]”が含まれるブロックが“<top><item[1]>”であり、ブロック“<top><item[1]>”が含む記述形式の対応部分は、“帽子<r><t>¥2,980”となる。これに対して、オペレータが指定したテキスト文字列“¥2,980”へオペレータが入力した属性名“価格”を付加し、属性情報“[価格:¥2,980]”に置き換える。さらに、属性情報とレイアウト情報以外のテキスト文字列を文字列変数“[*]”に置き換え、抽出ブロック“<top><item[1]>[*]<r><t>[価格:¥2,980]”を作成する。
【0042】
<抽出ルール作成処理(ステップS2)>
抽出ルール作成処理では、抽出ルール作成支援処理(ステップS1)によって取得された抽出ブロックから、抽出ルール作成部120が抽出ルールを作成する。
【0043】
前記図6、表1のWebページを例にすると、オペレータが属性情報として、帽子とサングラスとに対する商品名と価格を指定した場合、前記抽出ルール作成支援処理(ステップS1)では下記の4つの抽出ブロックが取得される。
【0044】
<top><item[1]>[商品名:帽子] <r><t>[*]
<top><item[1]>[*]<r><t>[価格:¥2,980]
<top><item[2]>[商品名:サングラス] <r><t>[*]
<top><item[2]>[*]<r><t>[価格:¥3,980]
抽出ルール作成処理(ステップS2)では、これらの抽出ブロックに対して、属性名毎に抽出ブロックを一般化して抽出ルールの一般化を図り、それぞれ属性名毎の抽出ブロックを単一化して抽出ルールの単一化を図る。
【0045】
これらの処理により、形成される抽出ルールは以下の通りとなる。
【0046】
<top><item[*]>[商品名:*] <r><t>[価格:*]
したがって抽出ルール作成部120は、図3のように抽出ブロック一般化機能と、抽出ブロック単一化機能を有している。
【0047】
次に抽出ルール作成処理(ステップS2)の具体例を図5のフローチャートとともに説明する。図5において、ステップS21では、抽出ルール作成支援処理(ステップS1)によって取得された抽出ブロックから、属性名毎に抽出ブロックを一般化する。
【0048】
例えば、抽出ルール作成支援処理によって以下のような抽出ブロックが取得されているとする。
【0049】
<top><item[1]>[商品名:帽子] <r><t>[*]
<top><item[1]>[*]<r><t>[価格:¥2,980]
<top><item[2]>[商品名:サングラス] <r><t>[*]
<top><item[2]>[*]<r><t>[価格:¥3,980]
これらの抽出ブロックに対して、ステップS21の抽出ブロック一般化処理では、属性名により、次の表2のように抽出ブロックを分類する。
【0050】
【表2】

【0051】
そして、抽出ブロック間で共通なレイアウト情報はそのままにし、差異があるテキスト文字列は任意のテキスト文字列を表す“*”(文字列変数)に置き換える操作を行なって、次の表3のように同じ属性名を持つ抽出ブロックを一般化する。
【0052】
【表3】

【0053】
すなわち、表2中の属性名が「商品名」である2つの抽出ブロックにおいて、[1]と[2]、帽子とサングラスのように差異のある文字列が、表3中の属性名が「商品名」である1つの抽出ブロックの文字列変数“*”に置き換えられる。
【0054】
また、表2中の属性名が「価格」である2つの抽出ブロックにおいて、[1]と[2]、¥2,980と¥3,980のように差異のある文字列が、表3中の属性名が「価格」である1つの抽出ブロックの文字列変数“*”に置き換えられる。
【0055】
上記置き換え操作の結果、表3のように“*”が含まれる属性情報[商品名:*]、[価格:*]を属性変数と呼ぶこととする.
次にステップS22の抽出ブロック単一化処理では、前記抽出ブロック一般化処理(ステップS21)によって一般化された抽出ブロックを単一化することで、抽出ルールの単一化を図った抽出ルールを作成する。
【0056】
例えば、抽出ブロック一般化処理(ステップS21)によって表3に示す次のような2つの抽出ブロックが得られているとする.
<top><item[*]>[商品名:*]<r><t>[*]
<top><item[*]>[*]<r><t>[価格:*]
これらに対して、抽出ブロック単一化処理(ステップS22)では、まず2つの抽出ブロック間の対応付けを次の表4のように行なう。
【0057】
【表4】

【0058】
次に表4の2つの抽出ブロックの共通部分を下記の表5のように単一化する。
【0059】
【表5】

【0060】
次に表5の抽出ブロックにおいて、文字列変数と属性変数とで差異がある部分を、下記の表6のように属性変数に単一化する。
【0061】
【表6】

【0062】
以上の処理により、以下のように単一化された抽出ルールが作成され、抽出ルールDB140に格納される。
【0063】
<top><item[*]>[商品名:*] <r><t>[価格:*]
<抽出ルール適用処理(ステップS3)>
抽出ルール適用処理(ステップS3)では、Webページを予め下記のようにブロック化しデータとして保持する。
【0064】
<top><item[1]>帽子<r><t>¥2,980
<top><item[2]>サングラス<r><t>¥3,980
<top><item[3]>サンダル<r><t>¥1,980
<top><item[4]> ...<r><t>...
...
そして、前記抽出ルールDB140に格納された抽出ルールを、前記ブロック化したWebページに適用して属性情報を抽出する。
【0065】
したがって、抽出ルール適用部130は、図3のようにWebページのブロック化機能とルール適用機能とを有している。
【0066】
例えば抽出ルールDB140に格納された抽出ルールが、“<top><item[*]>[商品名:*] <r><t>[価格:*]”であった場合、該抽出ルールの属性変数に前記ブロック化されたWebページのテキスト文字列を対応付け、下記表7に示すような属性情報を抽出し出力する。
【0067】
【表7】

【0068】
以上のように本実施形態例によれば、抽出ルール作成支援部110が実行する、テキストの表示(図4のステップS11)、オペレータからの指示の受付け(図4のステップS12,S15)、選択文字列の強調表示および入力要求欄付き抽出ブロックの表示(図4のステップS14)およびブロック抽出(図4のステップS13,S16)を通じて、オペレータに対し対話的に抽出ルールの作成支援を行うことができる。
【0069】
また、抽出ルール作成部120が実行する抽出ブロック一般化(図5のステップS21)と抽出ブロック単一化(図5のステップS22)により、複数の属性情報の事例から、属性情報間の対応関係が推測可能となったため、オペレータは複数の属性情報間の対応関係を指定する必要がない。これにより、オペレータの抽出ルール作成に対する負荷を軽減することができる。
【0070】
また、本実施形態の情報抽出装置における各手段の一部もしくは全部の機能をコンピュータのプログラムで構成し、そのプログラムをコンピュータを用いて実行して本発明を実現することができること、本実施形態の情報抽出方法における手順をコンピュータのプログラムで構成し、そのプログラムをコンピュータに実行させることができることは言うまでもなく、コンピュータでその機能を実現するためのプログラムを、そのコンピュータが読み取り可能な記録媒体、例えばFD(Floppy(登録商標) Disk)や、MO(Magneto−Optical disk)、ROM(Read Only Memory)、メモリカード、CD(Compact Disk)−ROM、DVD(Digital Versatile Disk)−ROM、CD−R、CD−RW、HDD、リムーバブルディスクなどに記録して、保存したり、配布したりすることが可能である。また、上記のプログラムをインターネットや電子メールなど、ネットワークを通して提供することも可能である。
【符号の説明】
【0071】
100…情報抽出装置
110…抽出ルール作成支援部
120…抽出ルール作成部
130…抽出ルール適用部
140…抽出ルールDB

【特許請求の範囲】
【請求項1】
オペレータが指定したテキスト情報源のテキスト文字列および属性情報に対して、当該属性情報の属性名およびテキスト文字列周辺のレイアウト情報を含む抽出ブロックを、テキスト情報源から取得して表示する抽出ルール作成支援手段と、
前記抽出ルール作成支援手段によって取得された抽出ブロックに対して、各抽出ブロックの属性名毎に抽出ブロックを一般化し、該一般化された抽出ブロックについて各属性名毎の抽出ブロックを一つの抽出ブロックに単一化し、属性情報を抽出するための単一化された抽出ルールを作成する抽出ルール作成手段と、
前記テキスト情報源のテキストを予めブロック化しておき、前記抽出ルール作成手段によって作成された抽出ルールを、前記ブロック化されたテキストに適用して属性情報を抽出する抽出ルール適用手段と、
を備えたことを特徴とする情報抽出装置。
【請求項2】
前記抽出ルール作成手段が行う抽出ブロックの一般化は、同じ属性名を持つ抽出ブロックの間で、共通なレイアウト情報はそのままにし、差異があるテキスト文字列を任意のテキスト文字列を表す文字列変数に置き換え、該文字列変数が含まれる属性情報を属性変数とすることによって実施され、
前記抽出ルール作成手段が行う抽出ブロックの単一化は、各抽出ブロック間の共通部分を単一化し、前記文字列変数と属性変数とで差異のある部分を属性変数に単一化することによって実施されることを特徴とする請求項1に記載の情報抽出装置。
【請求項3】
抽出ルール作成支援手段が、オペレータが指定したテキスト情報源のテキスト文字列および属性情報に対して、当該属性情報の属性名およびテキスト文字列周辺のレイアウト情報を含む抽出ブロックを、テキスト情報源から取得して表示する抽出ルール作成支援ステップと、
抽出ルール作成手段が、前記抽出ルール作成支援手段によって取得された抽出ブロックに対して、各抽出ブロックの属性名毎に抽出ブロックを一般化する抽出ブロック一般化ステップと、前記一般化された抽出ブロックについて各属性名毎の抽出ブロックを一つの抽出ブロックに単一化する抽出ブロック単一化ステップとを有し、属性情報を抽出するための単一化された抽出ルールを作成する抽出ルール作成ステップと、
抽出ルール適用手段が、前記テキスト情報源のテキストを予めブロック化しておき、前記抽出ルール作成手段によって作成された抽出ルールを、前記ブロック化されたテキストに適用して属性情報を抽出する抽出ルール適用ステップと、
を備えたことを特徴とする情報抽出方法。
【請求項4】
前記抽出ブロック一般化ステップは、同じ属性名を持つ抽出ブロックの間で、共通なレイアウト情報はそのままにし、差異があるテキスト文字列を任意のテキスト文字列を表す文字列変数に置き換え、該文字列変数が含まれる属性情報を属性変数とすることによって実施され、
前記抽出ブロック単一化ステップは、各抽出ブロック間の共通部分を単一化し、前記文字列変数と属性変数とで差異のある部分を属性変数に単一化することによって実施されることを特徴とする請求項3に記載の情報抽出方法。
【請求項5】
コンピュータを請求項1又は2に記載の各手段として機能させる情報抽出プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2012−103929(P2012−103929A)
【公開日】平成24年5月31日(2012.5.31)
【国際特許分類】
【出願番号】特願2010−252423(P2010−252423)
【出願日】平成22年11月11日(2010.11.11)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】