(57)【特許請求の範囲】
【請求項１】
参照関係を実現するリンクが表現された構造化文書に基づきリンク先の構造化文書から本文を抽出する装置の情報抽出方法であって、
収集された構造化文書群に対して、それぞれの構造化文書内に存在するリンクと、該リンク周辺テキスト情報とを抽出するリンク元情報抽出ステップと、
前記リンク元情報抽出ステップで抽出されたリンクに基づきリンク先の構造化文書を特定し、該ステップで抽出されたリンク周辺テキスト情報を含むリンク先の構造化文書における代表的な部分を本文として抽出する本文抽出ステップと、を有し、
前記リンク元情報抽出ステップにおいて、リンク先の構造化文書のＵＲＬを含むリンクの要素から上位ｎ番目（ｎ＝正の整数）のブロック要素に存在するタグの始点から終点までに挟まれた全ての文字列を抽出し、
前記本文抽出ステップにおいて、リンク元情報抽出ステップで抽出された文字列をすべて含む上位Ｎ番目（Ｎ＝正の整数）の要素の配下に存在する文字列を代表的な部分として抽出する
ことを特徴とする情報抽出方法。
【請求項２】
参照関係を実現するリンクが表現された構造化文書に基づきリンク先の構造化文書から本文を抽出する情報抽出装置であって、
収集された構造化文書群に対して、それぞれの構造化文書内に存在するリンクと、該リンク周辺テキスト情報とを抽出するリンク元情報抽出部ステップと、
前記リンク元情報抽出ステップで抽出されたリンクに基づきリンク先の構造化文書を特定し、該ステップで抽出されたリンク周辺テキスト情報を含むリンク先の構造化文書における代表的な部分を本文として抽出する本文抽出部と、を有し、
前記リンク元情報抽出部が、リンク先の構造化文書のＵＲＬを含むリンクの要素から上位ｎ番目（ｎ＝正の整数）のブロック要素に存在するタグの始点から終点までに挟まれた全ての文字列を抽出し、
前記本文抽出部が、リンク元情報抽出ステップで抽出された文字列をすべて含む上位Ｎ番目（Ｎ＝正の整数）の要素の配下に存在する文字列を代表的な部分として抽出する
ことを特徴とする情報抽出装置。
【請求項３】
請求項２記載の情報抽出装置の各部としてコンピュータを機能させる情報抽出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、Ｗｅｂページなどの構造化文書から本文を抽出する技術に関する。
【背景技術】
【０００２】
近年、インターネットなどのコンピュータネットワークを通じて、大量の電子化された文書の利用や不特定多数人を対象とした情報発信などが可能になっている。コンピュータネットワーク上で表現された電子文書は、その特徴を生かした表現が利用され、ＷＷＷ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）上のＷｅｂページではマークアップ言語（ｍａｒｋｕｐ  ｌａｎｇｕａｇｅ）で記述された構造化文書が多く利用されている。
【０００３】
例えばＨＴＭＬ（ＨｙｐｅｒＴｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）と呼ばれる文書は、何らかの情報を記述するだけではなく、他のコンピュータ上に存在する他の人が記述した文書を参照するための「ハイパーリンク（Ｈｙｐｅｒｌｉｎｋ）」の機能を有している。これは他の文書を信頼して自身の記している情報を補完したり、同様の内容の文書を参照するときなどに利用されている。
【０００４】
その一方でＨＴＭＬファイルの情報は、「広告」部分や「メニュー」部分といった本来表現したい情報とは無関係の情報が記述されている場合もある。そこで、検索サービスやＨＴＭＬファイルへのアクセスログの解析などでは、ＨＴＭＬファイルが本来表現したかった情報を適切に抽出する必要が生じる。ここで抽出される部分を「本文」と呼び、「本文」を抽出することを「本文抽出」と呼ぶこととする。
【０００５】
ＨＴＭＬファイル内に記述されたＨＴＭＬタグ情報を利用して本文を抽出する既存技術としては、「Ｗｅｂスクレイピング（単にスクレイピングと表現される場合もある。）」が存在する。このスクレイピングを行うには、ＨＴＭＬ（ＸＭＬ）ファイルのどの部分を抽出すべきかを、ＸＳＬＴ（ＸＭＬ  Ｓｔｙｌｅｓｈｅｅｔ  Ｌａｎｇｕａｇｅ  Ｔｒａｎｓｆｏｒｍａｔｉｏｎｓ）、即ちＸＭＬにより記述された文書を他のＸＭＬ文書に変換するための簡易言語で指定する方法が知られている。この方法が非特許文献１に示されている。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】著者：Ｅｒｉｋ  Ｔ．Ｒａｙ、訳者：山本和彦  中原晃司  梶浦正規  豊田公児、”入門ＸＭＬ”、株式会社オーム社、２００１年９月２８日、ｐ．２０３−２４１
【非特許文献２】”要素の親子関係／ＨＴＭＬ基礎講座”、「ｏｎｌｉｎｅ」、初版公開日２００２年５月１８日  最新更新日２００４年３月７日、［２０１１年年７月１３日検索］、インターネット＜URL:http://www,scollabo.com/banban/lectur/ht6.html＞
【非特許文献３】”ブロックレベル要素とインライン要素”、「ｏｎｌｉｎｅ」、２００１年４月５日更新、［２０１１年７月１３日検索］、インターネット＜URL:http://www.kanzaki.com/docs/html/element-level.html＞
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、非特許文献１の方法は、本文抽出するＨＴＭＬファイルが小数であれば、それに応じたＸＳＬＴにて表記された「ルール」を用意することで可能であるものの、インターネット上のあらゆるＨＴＭＬを収集するなど大量のＨＴＭＬファイルが存在する場合には、各々のＨＴＭＬファイルに対して本文抽出を行うためのルールを予め用意しなければならず、非常に困難であった。
【０００８】
また、一度用意した本文抽出のルールは未来永劫に使い続けられる保証はなく、ＨＴＭＬファイルの記述内容が変更された場合には本文が抽出できなくなるおそれもある。
【０００９】
本発明は、上述のような従来技術の問題点を解決するためになされたものであり、本文抽出のルールに依存することなく、構造化文書から本文抽出を行うことを解決課題としている。
【課題を解決するための手段】
【００１０】
そこで、本発明は、構造化文書の参照関係を利用し、参照元の構造化文書に存在する情報部分を参照先の構造化文書内から抽出する。すなわち、参照元（リンク元）の構造化文書に存在する情報を有する部分を参照先（リンク先）の構造化文書から抽出することで、広告部分やメニュー部分などの不要な部分の情報を排除し、本文のみを抽出する。
【００１１】
本発明の情報抽出方法は、収集された構造化文書群に対して、それぞれの構造化文書内に存在するリンクと、該リンク周辺テキスト情報とを抽出するリンク元情報抽出ステップと、リンク元情報抽出ステップで抽出されたリンクに基づきリンク先の構造化文書を特定し、該ステップで抽出されたリンク周辺テキスト情報を含むリンク先の構造化文書における代表的な部分を本文として抽出する本文抽出ステップと、を有する。
【００１２】
また、本発明の情報抽出装置は、収集された構造化文書群に対して、それぞれの構造化文書内に存在するリンクと、該リンク周辺テキスト情報とを抽出するリンク元情報抽出部と、リンク元情報抽出部で抽出されたリンクに基づきリンク先の構造化文書を特定し、該情報抽出部で抽出されたリンク周辺テキスト情報を含むリンク先の構造化文書における代表的な部分を本文として抽出する本文抽出部と、を備える。
【００１３】
なお、本発明は、前記装置としてコンピュータを機能させるプログラムとすることもできる。このプログラムは、ネットワークや記録媒体などを通じて提供することができる。
【発明の効果】
【００１４】
本発明によれば、本文抽出のルールに依存することなく、構造化文書から本文抽出を行うことができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の実施形態に係る情報抽出装置のブロック図。
【図２】同  リンク元情報抽出部の処理を示すフローチャート。
【図３】ハイパーリンクによる参照情報を含む文書例。
【図４】（ａ）は図３の文書ＡのＨＴＭＬファイル（ソース）例、（ｂ）は図３の文書ＢのＨＴＭＬファイル（ソース）例。
【図５】本文抽出部の処理を示すフローチャート。
【発明を実施するための形態】
【００１６】
以下、本発明の実施形態に係る情報抽出装置を説明する。この情報抽出装置は、マークアップ言語で記述された構造化文書、主にＷＷＷ上のＷｅｂページなどを処理対象とし、参照表現を利用して本文抽出を行う。
【００１７】
ここではＨＴＭＬドキュメント（ＨＴＭＬ文書）のハイパーリンクによる参照表現に基づく処理例を説明する。すなわち、リンク元のＨＴＭＬファイルとリンク先のＨＴＭＬファイルとを用いて、リンク先のＨＴＭＬファイルから本文を抽出する。このときリンク元のＨＴＭＬファイル中に記述された情報を抽出し、抽出された情報がリンク先のＨＴＭＬファイル内に存在する場合、それに応じたタグ（例えばリンク元ファイルからの抽出情報をすべて含むようなタグ）をピックアップする。
【００１８】
≪構成例≫
図１に基づき前記情報抽出装置の構成例を説明する。この情報抽出装置１は、コンピュータにより構成され、通常のコンピュータのハードウェアリソース、例えばＣＰＵ．メモリ（ＲＡＭ）やハードディスクドライブ装置などの記憶装置など備える。
【００１９】
このハードウェアリソースとソフトウェアリソース（ＯＳ．アプリケーションなど）との協働の結果、情報抽出装置１は、文書集合記録部２．文書集合ＤＢ３．リンク元情報抽出部４．本文抽出部５．出力部６を実装する。この記録部２は、図示省略の入力部を通じて入力された処理対象の文書の情報、例えばＨＴＭＬファイルを前記ＤＢ３に記録する。このＨＴＭＬファイルは、検索エンジンのクローリングなどで収集されたものでもよい。なお、前記ＤＢ３は前記記憶装置に構築されているものとする。
【００２０】
前記情報抽出部４は、前記ＤＢ３に記録された文書のＨＴＭＬファイル内に存在する参照関係を実現するハイパーリンクと、該リンクの周辺テキスト（以下リンク周辺テキストという。）とを抽出する。ここではハイパーリンクに囲まれた文字列を抽出してもよく、あるいはＨＴＭＬにおける要素（タグ）の階層構造（親子関係）に基づきリンク先文書のＵＲＬ含む上位ｎ番目（ｎ＝正の整数）のブロック要素内に存在する文字列を抽出してもよい。
【００２１】
本文抽出部５は、前記ＤＢ３に記録された文書についてＨＴＭＬファイルを参照するハイパーリンクが前記情報抽出部４で抽出されていれば、該文書をリンク先文書として特定する。ここで特定されたリンク先文書のＨＴＭＬファイル内に存在するテキスト情報の文字列と前記情報抽出部４の抽出したリンク周辺テキストの文字列とを比較し、リンク先文書内の代表的な部分を本文として抽出する。ここでは前記情報抽出部４で抽出された文字列をすべて含む上位Ｎ番目（Ｎ＝正の整数）の要素（親タグ）の配下に存在する文字列を抽出する。
【００２２】
したがって、広告部分やメニュー部分などの不要部分の情報を排除し、本文に該当する部分のみが抽出される。抽出された本文は出力部６を通じて、例えば検索エンジンにおける検索用の索引（インデックス）を作成するためのＨＴＭＬを代表する部分として出力される。以下、情報抽出装置１の処理の詳細を、前記情報抽出部４と本文抽出部５とに大別して説明する。
【００２３】
≪前記情報抽出部４の処理例≫
まず、図２に基づき前記情報抽出部４の処理例を説明する。ここでは図３の文書Ａ〜Ｄを処理対象とする。この文書Ａ〜Ｄは、商品購入サービスを行っているインターネット上のサイトにて提供されるＨＴＭＬファイルであって、文書Ａは商品を羅列する文書を関し、文書Ｂ〜Ｄは商品１〜３の詳細を説明する文書に関する。
【００２４】
図３中、文書Ａの商品名１〜３の下線（アンダーライン）は文書Ｂ．Ｃの参照を実現するハイパーリンクを示し、商品名１のハイパーリンクは文書Ｂを参照し、商品名２のハイパーリンクは文書Ｃを参照し、商品名３のハイパーリンクは文書Ｄを参照している。なお、文書Ａ〜ＤのＨＴＭＬファイルは、前記ＤＢ２に記録されているものとする。
【００２５】
まず、前記情報抽出部４は、処理が開始さると処理対象のＨＴＭＬファイルを前記ＤＢ３から取得する（Ｓ０１）。ここでは一例として文書ＡのＨＴＭＬファイルを取得するものとする。その後にＳ０１で取得したＨＴＭＬファイル内にハイパーリンクが存在するか否かを確認する（Ｓ０２）。確認の結果、ハイパーリンクが存在しなければ前記情報抽出部４の処理を終了する。一方、ハイパーリンクが存在すれば該ハイパーリンクとリンク周辺テキストとを抽出し（Ｓ０３）、処理を終了する。この抽出情報は次の（１）（２）のいずれかで定義されるものとする。
（１）ハイパーリンク（ＨＴＭＬタグのＡＮＣＨＯＲタグ）に囲まれた文字列（ＵＲＬを含む文字列）
（２）ハイパーリンク先文書のＵＲＬを含み、かつ上位ｎ番目（ｎ＝正の整数）に出現するブロック要素内に存在する文字列
この定義（１）（２）の選択あるいは「ｎの値」に依存して抽出情報の範囲を変更することができる。例えば定義（１）を選択すれば最小範囲、即ち「ハイパーリンク（ＨＴＭＬタグのＡＮＣＨＯＲタグに囲まれた文字列」が抽出される。また、定義（２）を選択して「ｎ＝最大値（ＨＴＭＬ要素の階層数）」すれば最大範囲、即ち「本文全文（ＨＴＭＬタグのＢＯＤＹタグの中身すべて）」が抽出される。このとき抽出される文字列にＨＴＭＬタグ「<>」を含むか否かの条件を与えることもできる。
【００２６】
ここでＨＴＭＬの要素（タグ）は、非特許文献２に示すように、ある要素がある要素を含み、さらにその要素が別の要素を含む、というように階層構造で表される。この階層構造は、一般的に親要素、子要素、孫要素などと親子関係にたとえて表現され、要素ごとに親子関係を有しており、定義（２）の上位ｎ番目は要素の親子関係を示している。
【００２７】
また、要素の種類としては、非特許文献３に示すように、表示上のブロック（見出し・段落など）を構成するブロック要素と、表示上はブロック要素と連続しているように見えるインライン要素とが存在する。これを図４（ａ）に基づき説明すれば、文書ＡのＨＴＭＬファイル中、ＤＩＶはブロック要素に該当し、ＳＰＡＮとＡ（ＡＮＣＨＯＲ）はインライン要素に該当する。
【００２８】
このときＡ（ＡＮＣＨＯＲ）タグからみれば、「ｉｄ＝ＴＲ」のＤＩＶタグは上位１番目に出現するブロック要素に該当し、「ｉｄ＝ＴＡＢＬＥ」のＤＩＶタグは上位第２番目に出現するブロック要素に該当する。なお、Ａ（ＡＮＣＨＯＲ）タグのｈｒｅｆ属性はリンク先のＵＲＬを指定しているものとする。
【００２９】
ここで文書ＡのＨＴＭＬファイル中からの抽出例を説明する。図４（ａ）に示すように、文書ＡのＨＴＭＬファイルには３個のＡ（ＡＮＣＨＯＲ）タグが存在するため、３個のハイパーリンクが埋まっていることがＳ０２で確認される。この各Ａ（ＡＮＣＨＯＲ）タグはｈｒｅｆ属性に示すように、文書Ｂ〜Ｄを参照している。ここでは一例としてＳ０３のリンク元文書からの抽出範囲が定義（２）に設定され、「ｎ＝１」に設定されているものとする。また、「タグを含まず人が可読なテキストのみ」という条件も与えられているものとする。
【００３０】
このとき各Ａ（ＡＮＣＨＯＲタグ）からみれば、「ｉｄ＝ＴＲ」の各ＤＩＶタグは上位１番目に出現するブロック要素に該当するから、その配下の各ＳＰＡＮタグに囲まれた文字列がそれぞれ抽出される。したがって、文書Ｂについては上段の「ＤＩＶ  ｉｄ＝ＴＲ」配下、即ちｈｒｅｆ属性に示す文書ＢのＵＲＬと、「商品名１」「値段：１００円」「色：赤」のリンク周辺テキストとが抽出される。
【００３１】
また、文書Ｃについては中段の「ＤＩＶ  ｉｄ＝ＴＲ」配下、即ちｈｒｅｆ属性に示す文書ＣのＵＲＬと、「商品名２」「値段：３００円」「色：青」のリンク周辺テキストとが抽出される。
【００３２】
さらに、文書Ｄについては下段の「ＤＩＶ  ｉｄ＝ＴＲ」配下、即ちｈｒｅｆ属性に示す文書ＤのＵＲＬと、「商品名３」「値段：３００円」「色：黄」のリンク周辺テキストとが抽出される。抽出されたリンク先文書のＵＲＬとリンク周辺テキストとは前記記憶装置に記憶されるものとする。
【００３３】
≪本文抽出部５の処理内容≫
つぎに図５に基づき本文抽出部５の処理例を説明する。本文抽出部５は、処理が開始されると処理対象のＨＴＭＬファイルを前記ＤＢ２から取得する（Ｓ１１）。ここでは一例として文書Ｂ〜ＤのＨＴＭＬファイルを取得するものとする。
【００３４】
この取得したＨＴＭＬファイルを参照するハイパーリンクがＳ０３で抽出されているか否かを確認する（Ｓ１２）。この確認は前記記憶装置に記憶されたリンク先文書のＵＲＬを用いればよい。この結果、ハイパーリンクの存在が確認されていなければ処理を終了し、Ｓ１１に戻って次のＨＴＭＬファイルを取得する。
【００３５】
一方、ハイパーリンクの存在が確認されていれば、取得したＨＴＭＬファイルをリンク先文書と特定し、Ｓ０３で抽出されたリンク周辺テキストを前記記憶装置から取得し、リンク周辺テキストを含むリンク先文書の代表部分を本文として抽出する（Ｓ１３）。このときリンク先文書のどこまでを代表的部分、即ち本文とするのかの条件が必要である。基本的にはＳ０３で抽出されたリンク周辺テキストの文字列を含む部分であればよいが、リンク先のＨＴＭＬファイルの「すべての文字列」とするのでは無用な情報によるデータ容量の増加を招くおそれがある。
【００３６】
そこで、本文抽出される代表的部分の範囲指定としては、Ｓ０３で抽出されたリンク周辺テキストの文字列をすべて含み、かつ上位Ｎ番目（Ｎ＝正の整数）に出現する親要素（タグ）を探索し、その配下に存在する文字列を本文とする。この本文抽出の条件、即ちＮの値を変更することでＨＴＭＬファイル内から抽出される本文抽出の文字列を変更することもできる。このとき本文にＨＴＭＬタグを含むか否かの条件も与えることができるものとする。
【００３７】
以下、文書ＢのＨＴＭＬファイルに対する処理例を説明する。ここでは本文抽出条件は「Ｎ＝１」に設定され、上位１番目に出現する親要素を探索するものとする。また、文書Ｂは、Ｓ１２でＳ０３のハイパーリンク抽出が確認され、前記記憶装置にはＳ０３で抽出した「商品名１」「値段：１００円」「色：赤」のリンク周辺テキストが記憶されているものとする。
【００３８】
このとき文書ＢのＨＴＭＬ中では、図４（ｂ）に示すように、「商品名１」は「ｉｄ＝ｎａｍｅ」のＳＰＡＮタグに挟まれ、「値段：１００円」は「ｉｄ＝ｐｒｉｃｅ」のＳＰＡＮタグに挟まれ、「色：赤」は「ｉｄ＝ｃｏｌｏｒ」のＳＰＡＮタグに挟まれており、これらを「すべて含む上位１番目の親タグ」の探索結果として「ＤＩＶ」タグが取得される。
【００３９】
したがって、「その配下に存在する文字列」は「ＤＩＶタグの配下に存在する文字列」が該当する。ここでは「タグを含まず人が可読なテキストのみ」という条件が与えられているものとする。その結果、「商品名１，写真，型番：１２３４５６，値段：１００円，色：赤，概略：売れてます」の文字列が文書Ｂの代表的部分、即ち本文として抽出される。このときＨＴＭＬタグを含んで抽出する条件が与えられていれば、タグ付の文字列が抽出される。抽出された本文は出力部６に出力され（Ｓ１４）、処理を終了する。ここで出力部６に出力された本文は、検索エンジンなどに提供され、検索用の索引（インデックス）作成にあたってＨＴＭＬファイルの本来表現したかった情報の把握に役立てられる。
【００４０】
このように情報抽出装置１によれば、従来のような本文抽出のためのルールに依存することなく、広告部分やメニュー部分などの不要部分の情報を排除して本文を抽出でき、前記ルールの保守コストが軽減される。特に、インターネット上で他者によって生成されたＨＴＭＬファイルに対しても、その更新に合わせて本文抽出を臨機応変に実現できる点でも有用である。
【００４１】
なお、本発明は上記実施形態に限定されるものではなく、各請求項に記載された範囲内で変形して実施することができる。例えばＳ０３における定義（１）（２）や「ｎの値」、Ｓ１３の本文抽出条件「Ｎの値」はリンク元のＨＴＭＬファイル毎に異なってもよく、リンク先のＨＴＭＬファイル毎に異なっていてもよい。すなわち、処理対象の文書にすべてに同一としてもよく、あるいはインターネットサイト毎に個別的に選択・設定してもよい。
【００４２】
もっとも、本文として抽出する情報の統一化のためには、すべてのリンク元ＨＴＭＬファイルで定義（１）（２）の選択や「ｎの値」の設定は同一であることが好ましい。同様にすべてのリンク先ＨＴＭＬファイルで本文抽出条件「Ｎの値」の設定は同一であることが好ましい。
【００４３】
また、本発明は、ＨＴＭＬの文書に限定されることなく、ＸＭＬなどの他のマークアップ言語で記述された構造化文書も処理対象とすることができる。この場合には、ＸＭＬドキュメント（文書）同士のリンクを定義する「ＸＬｉｎｋ（ＸＭＬ  Ｌｉｎｋｉｎｇ  Ｌａｎｇｕａｇｅ）」を利用すればよい。
【００４４】
≪プログラムなど≫
本発明は、情報抽出装置１の各部２〜６の一部もしくは全部として、コンピュータを機能させる文書検索プログラムとして構成することもできる。このプログラムによれば、Ｓ０１〜Ｓ０３．Ｓ１１〜Ｓ１４の一部あるいは全部をコンピュータに実行させることが可能となる。
【００４５】
前記プログラムは、Ｗｅｂサイトや電子メールなどネットワークを通じて提供することができる。また、前記プログラムは、ＣＤ−ＲＯＭ，ＤＶＤ−ＲＯＭ，ＣＤ−Ｒ，ＣＤ−ＲＷ，ＤＶＤ−Ｒ，ＤＶＤ−ＲＷ，ＭＯ，ＨＤＤ，ＢＤ−ＲＯＭ，ＢＤ−Ｒ，ＢＤ−ＲＥなどの記録媒体に記録して、保存・配布することも可能である。この記録媒体は、記録媒体駆動装置を利用して読み出され、そのプログラムコード自体が前記実施形態の処理を実現するので、該記録媒体も本発明を構成する。
【符号の説明】
【００４６】
１…情報抽出装置
２…文書集合記録部
３…文書集合ＤＢ
４…リンク元情報抽出部
５…本文抽出部
６…出力部
【図１】
0005559104.tif 000002
【図２】
0005559104.tif 000003
【図３】
0005559104.tif 000004
【図４】
0005559104.tif 000005
【図５】
0005559104.tif 000006