JP6901816B2 - エンティティ関係データ生成方法、装置、機器、及び記憶媒体 - Google Patents

エンティティ関係データ生成方法、装置、機器、及び記憶媒体 Download PDF

Info

Publication number
JP6901816B2
JP6901816B2 JP2019143724A JP2019143724A JP6901816B2 JP 6901816 B2 JP6901816 B2 JP 6901816B2 JP 2019143724 A JP2019143724 A JP 2019143724A JP 2019143724 A JP2019143724 A JP 2019143724A JP 6901816 B2 JP6901816 B2 JP 6901816B2
Authority
JP
Japan
Prior art keywords
key value
web page
target
key
block
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
JP2019143724A
Other languages
English (en)
Other versions
JP2020027649A (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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Publication of JP2020027649A publication Critical patent/JP2020027649A/ja
Application granted granted Critical
Publication of JP6901816B2 publication Critical patent/JP6901816B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • G06F16/972Access to data in other repository systems, e.g. legacy data or dynamic Web page generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/288Entity relationship models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明の実施例は、情報処理技術に関し、特に、エンティティ関係データ生成方法、装置、機器、及び記憶媒体に関する。
エンティティ関係データは、SPOトリプルデータとも呼ばれ、実体pair(サブジェクトS−オブジェクトO pair)とそれらとの間の関係(P)から構成されたトリプルデータを指す。エンティティ関係は、知識マップの重要な構成要素であり、知識マップ構築の観点から見ると、エンティティ関係マイニングは、マップ内の関係知識を充実させ、実体間の関連関係を構築することができる。製品応用の観点からは、エンティティ関係は、一方、ユーザの知識クラスに対する検索要件を直接満たすことができ、例えば、あるスターの妻「×××妻」を検索すると、エンティティ関係データを介して直接答案を提供することができる。もう一態様では、エンティティ関係に基づいてユーザに関連知識を推薦し、情報が拡張された閲覧体験をユーザに提供することができ、例えば、ある名人の名前「××」を検索すると、エンティティ関係を通じて当該名人に関する他の実体をユーザに推薦することができる。
従来技術では、エンティティ関係マイニングは、主に以下の二つの方法で実行される。
そのうち、一つの方法は、百科クラスのウェブサイトに対して、抽出を実行することである。百科クラスのウェブサイトは優秀な構造を有し、データが充分に標準化されているという特徴があるので、百科クラスのウェブサイトの情報ボックス又は属性テーブル(百科クラスのウェブサイトの実体で、実体属性を記述するためのウェブページ構造)から、直接エンティティ関係を抽出する。百科クラスのウェブサイトの構成が簡単で安定しているという特徴を利用して、抽出待ちの百科クラスサイト中から、いくつかの典型的なページをサンプリングしてラベルを付け、これらのページに対してパターン学習アルゴリズムによって一つ又は複数の類似xpathによって表されるパターンを自動的に構築した後、それを当該サイトの他の詳細ページ中に応用することによって、抽出する。
もう一つの方法は、ウェブサイトに対して、ラッパー(テンプレート)を生成する抽出方法である。抽出しようとするウェブサイトの構成及びHTMLタグなどの情報を分析することによって、対応するラッパーを構築し、このラッパーを使用して、当該ウェブページに対して、エンティティ関係抽出を行う。ラッパーは、通常、リズムを有する一般的なページに対して、人によって、正規の表現方法を使用してxpath及びCSSセレクター表現を書き、ウェブページ中の要素を抽出する。
従来技術の欠点は、一つめの方法では抽出できるデータ量が少く、データの適時性がよくないことであり、もう一つの方法では人件費が非常に高く、汎用性が良くないことである。
本発明の実施例は、ウェブページ汎用性の向上、人件費を削減、及び、エンティティ関係データの出力の向上を実現するための、エンティティ関係データ生成方法、装置、機器、及び記憶媒体を提供する。
第1の態様によると、本発明の実施例は、エンティティ関係データ生成方法を提供し、上記方法は、目標ウェブページに対応するウェブページソースコードデータを取得するステップと、前記ウェブページソースコードデータにおいて、少なくとも一つのキー値ペアを含む少なくとも一つキー値ブロックを識別するステップと、前記ウェブページソースコードデータにおいて、前記少なくとも一つのキー値ブロックに対応するサブジェクト値を識別するステップと、前記キー値ブロックと前記キー値ブロックに対応するサブジェクト値とに基づいて、前記目標ウェブページに対応するエンティティ関係データを生成するステップと、を含む。
第2の態様によると、本発明の実施例は、エンティティ関係データ生成装置をさらに提供し、当該装置は、目標ウェブページに対応するウェブページソースコードデータを取得するためのソースコード取得モジュールと、前記ウェブページソースコードデータにおいて、少なくとも一つのキー値ペアを含む少なくとも一つキー値ブロックを識別するためのキー値ブロックの識別モジュールと、前記ウェブページソースコードデータにおいて、前記少なくとも一つのキー値ブロックに対応するサブジェクト値を識別するためのサブジェクト値の識別モジュールと、前記キー値ブロックと前記キー値ブロックに対応するサブジェクト値とに基づいて、前記目標ウェブページに対応するエンティティ関係データを生成するためのデータ生成モジュールと、を含む。
第3の態様によると、本発明の実施例は、コンピュータ機器を提供し、当該機器は、一つ又は複数のプロセッサと、一つ又は複数のプログラムを記憶するための記憶装置と、を備え、前記一つ又は複数のプログラムが前記一つ又は複数のプロセッサによって実行されると、前記一つ又は複数のプロセッサが、本発明の実施例の中のいずれかに記載のエンティティ関係データ生成方法を実現するようにする。
第4の態様によると、本発明の実施例は、コンピュータ読み取り可能な記憶媒体を提供し、上記コンピュータ読み取り可能な記憶媒体にはコンピュータプログラムが格納されており、当該プログラムがプロセッサによって実行されると、本発明の実施例の中のいずれかに記載のエンティティ関係データ生成方法が実現される。
本発明の実施例によると、目標ウェブページに対応するウェブページソースコードデータを取得し、当該ウェブページソースコードデータに含まれた少なくとも一つのキー値ブロック及び各キー値ブロックに対応するサブジェクト値を識別し、各キー値ブロック及びそれに対応するサブジェクト値に基づいて、目標ウェブページに対応するエンティティ関係データを生成することによって、ウェブページソースコードデータにおいてエンティティ関係を識別するので、ウェブページのタイプ、ウェブページの構成、サイトなどによって制限されないようにすることができ、また、ウェブページに対して自動的にエンティティ関係データの抽出を実行することができ、過度の人間のメンテナンスが要らない同時に、大規模なインターネットウェブページ中から抽出して、大規模なエンティティ関係データを取得できて、ウェブページの汎用性を向上させ、人件費を削減し、エンティティ関係データの出力を向上させることができる。
本発明の実施例1によって提供されるエンティティ関係データ生成方法の流れを示す概略図である。 本発明の実施例1に適用されるウェブページデータ前処理方法の流れを示す概略図である。 本発明の実施例1に適用されるクエリ式に基づくサブジェクト値の識別方法の流れを示す概略図である。 本発明の実施例1に適用されるサブジェクト値の識別方法の流れを示す概略図である。 本発明の実施例2によって提供されるエンティティ関係データ生成方法の流れを示す概略図である。 本発明の実施例2に適用されるキー値ブロックの識別方法の流れを示す概略図である。 本発明の実施例2に適用される半構造化SPOデータ抽出システムの構成を示す概略図である。 本発明の実施例3によって提供されるエンティティ関係データ生成装置の構成を示す概略図である。 本発明の実施例4によって提供されるコンピュータ機器の構成を示す概略図である。
以下の図面では、実施例と結合して本発明をさらに詳細に説明する。ここで記載する具体的な実施例は、単に本発明を説明することのみに用いられ、本発明を限定しないことを理解できるはずである。また、説明を容易にするために、本発明に関する構造の全てではなく一部のみを図示していることを説明する必要がある。
また、説明を容易にするために、本発明に関する構造の全てではなく一部のみを図示していることを説明する必要がある。例示的な実施形態をより詳細に論じる前に、いくつかの例示的な実施形態がフローチャートとして描かれたプロセス又は方法として説明されていることに留意されたい。フローチャートではさまざまな動作(又はステップ)を順序立てて処理すると説明したが、動作の多くは、並行して、併発に又は同時に実施することができる。なお、それぞれの動作の順序は、再度並べ替えてもよい。その動作が完成される際に、前記処理を終了してもよいが、図面に含まれていない別途のステップを有してもよい。前記処理は、方法、関数、規程、サブルーチン、サブプログラムなどに対応してもよい。
実施例1
図1aは、本発明の実施例1により提供されるエンティティ関係データ生成方法の流れを示す概略図である。本実施例は、ウェブページ中からエンティティ関係データを取得する場合に適用される。当該方法は、本発明の実施例によって提供されるエンティティ関係データ生成装置によって実行され、当該装置は、ハードウェア及び/又はソフトウェアから構成され、一般的にコンピュータ機器中に統合ずることができる。図1に示すように、本実施例の方法は、具体的には、S110〜S140を含む。
S110において、目標ウェブページに対応するウェブページソースコードデータを取得する。
本実施例において、目標ウェブページは、インターネット上の任意のウェブページであってもよく、ウェブページソースコードデータは、当該目標ウェブページのソースコードデータであってもよい。インターネット上には様々なウェブページが混在されているため、まず、取得されたウェブページを前処理することにより、取得されたウェブページソースコードデータの有効性及び信頼性を向上させてもよい。
具体的には、目標ウェブページに対応するウェブページソースコードデータを取得するステップは、目標ウェブページのユニフォームリソースロケータ(URL:Uniform Resource Locator)に基づいて、ウェブページベース中から目標ウェブページに対応するソースコードデータを検証待ちソースコードデータとして取得するステップと、検証待ちソースコードデータがウェブページフィルタリング条件を満たさないと決定された場合に、検証待ちソースコードデータを目標ウェブページのウェブページソースコードデータとするステップと、を含むことができる。ウェブページベース中には、複数のウェブページにそれぞれ対応するソースコードデータが予め記憶されている。ウェブページフィルタリング条件は、ウェブページが位置しているサイトがブラックリストサイトであること、ウェブページの質量評価が所定の閾値未満であること、ウェブページの言語が外国語であること、ウェブページがポルノウェブページであること、ウェブページのタイプが画像タイプであることなどの、フィルタリング条件を含むが、これらに限定されない。ソースコードデータは、ulpackデータと呼ばれてもよく、当該データはwdbtoolsなどのツールを使用してウェブページベースから取得できる。また、検証待ちソースコードデータに対するフィルタリングは、Nlpc antipornなどツールを使用して実現してもよい。
ウェブページ中に含まれたエンティティ関係データをより包括的に取得するために、オプションとして、目標ウェブページに対応するウェブページソースコードデータを取得するステップの後に、検索エンジンのクリック表示ログで、目標ウェブページのユニフォームリソースロケータに対応する少なくとも一つのクエリ式を取得し、取得された少なくとも一つのクエリ式とウェブページソースコードデータとを関連付けるステップをさらに含む。
クリック表示ログは、ユーザがクエリ式を入力した後、表示されるそれぞれのウェブページ中でクリックして開いたウェブページに対して、記録した日誌であってもよい。クエリ式はqueryデータであってもよく、目標ウェブページのURLに対応する少なくとも一つのqueryデータを取得する目的は、後続のステップにおいてサブジェクト値の識別に対してもっと多い参考を提供することである。なお、取得されたクエリ式に基づいて規則違反クエリ式の識別を行うことにより、規則違反ウェブページをもう一層フィルタリングしてもよい。最後に、同一のURLに対応するクエリ式とそれに対応するウェブページソースコードデータとを併合することにより、クエリ式とウェブページソースコードデータとの間の関連関係を構築する。
実際の一例を挙げると、図1bに示した流れを示す概略図のように、取得された目標ウェブページのURLに対する前処理は、三つのステップによって完成されてもよく、当該三つのステップは、ウェブページベース中の目標ウェブページのURLに対応するulpackデータを取得する、ulpackデータ取得ステップと、
ウェブページベースのデータを取得した後、ウェブページが位置しているサイト、ウェブページの質量、ウェブページの言語、ポルノウェブページであるか否か、ウェブページのタイプなどの情報に基づいて、フィルタリングを実行する、ウェブページフィルタリングステップと、URLの検索queryを取得し、URLのqueryに基づいてポルノquery識別を行い、ポルノウェブページをさらにフィルタリングし、ポルノqueryをフィルタリングした後queryとウェブページデータとを併合する、ポルノqueryウェブページフィルタリング及びquery併合ステップと、を含む。
S120では、ウェブページソースコードデータにおいて、少なくとも一つのキー値ブロックを識別し、キー値ブロックは、少なくとも一つのキー値ペアを含む。
本実施例において、キー値ペアは、KVタイプのテキストデータであってもよく、少なくとも一つのKVタイプのテキストデータは、一つのキー値ブロックを構成することができる。例えば、ウェブページ情報中に「性別:女」が含まれていると、ウェブページソースコードデータを解析し、さらに、一つのキー値ペアとして識別してもよく、一つのキー値ペアは一つのキー名及び一つのキー値を含んでもよく、キー名(K)は、例えば「性別」であり、キー値(V)は例えば「女」であってもよい。
具体的には、ウェブページソースコードデータにおいて、キー値ペアを最小の識別単位として、少なくとも一つのキー値ペアを識別し、さらに、これらキー値を所定の分割規則に従って分割して、少なくとも一つのキー値ブロックを取得してもよい。このように設定する利点は、後続のステップにおいての処理対象を削減して、処理効率を向上させることができることである。
ウェブページソースコードデータにおいてKVタイプのテキストデータを識別する方法は、ツールに基づく識別、従来の識別結果に基づく識別、及び、特定タグによる識別などを含むが、これらに限定されない。
S130では、ウェブページソースコードデータにおいて、少なくとも一つのキー値ブロックに対応するサブジェクト値を識別する。
本実施例において、キー値ブロックに対応するサブジェクト値は、エンティティ関係データ中のサブジェクト(S)であってもよく、サブジェクト値に対する識別は、ウェブページのタイプ、キー値ブロックのタイプ、及び、目標ウェブページが位置しているサイトのxpathテンプレートに基づいて、キー値ブロックのために、一つの適切なウェブページノードをサブジェクト値として見つけることであってもよい。xpathは、標準汎用標記言語のサブセット(XML:Extensible Markup Language)の経路言語であり、これは、XMLドキュメント中のある部分の位置を決定するための言語である。
それぞれのキー値ブロックに対応するサブジェクト値に対してそれぞれ識別を行う方法は、実体ページに基づくサブジェクト値の識別、ストロングスタイルノードに基づくサブジェクト値の識別、ホワイトリストに基づくサブジェクト値の識別、クエリ式に基づくサブジェクト値の識別、及び、サイトテンプレートに基づくサブジェクト値の識別などを含むが、これらに限定されない。
例えば、ウェブページ情報中に、「性別:女、年齢:18才、卒業時期:2018年6月」が含まれており、それに対応される人物の名前が「張曉廷」であれば、上記の一組の詳細情報を一つのキー値ブロックとし、「張曉廷」を、当該キー値ブロックに対応するサブジェクト値として識別してもよい。
オプションとして、ウェブページソースコードデータにおいて、出少なくとも一つのキー値ブロックに対応するサブジェクト値を識別するステップは、現在処理中の目標キー値ブロックが主キー値ブロックであると決定され、ウェブページソースコードデータに第1のタグ条件を満たす実体ページノードが含まれていると、実体ページのスコアリング規則に従って、目標ウェブページが実体ページであるか否かを判断するステップと、「Yes」であれば、実体ページノードに対応するテキストデータを目標キー値ブロックのサブジェクト値とし、そのうち、主キー値ブロックは、ウェブページソースコードデータに対応する少なくとも一つのキー値ブロックのうち、含まれたキー値ペアの数が一番多い一つのキー値ブロックであるステップと、含む。
一例として、実体ページに基づくサブジェクト値の識別は、二つのステップを含む。まず、ウェブページが実体ページであるか否かを判断し、その後、実体ページに対してサブジェクト値の識別を行う。実体ページの判断方法は、ページ内のテキストの特徴に基づいて重み付きスコア付けを行い、得点が閾値を超えるものを、実体ページタイプのウェブページとして見なす方法であってもよい。
具体的な一例において、ページ内のテキスト特徴は、ページ内に特定のキーワード(例えば、紹介、概要など)があるか否か、得点を記載したテキスト(例えば、スコア付け、得点など)があるか否か、タイトルの長さ、タイトルがページ内テキストと重複されるか否か、又は、タイトルの単語頻度などを含む。重み付きのスコア付けの方法は、それぞれのテキスト特徴に対して異なる重みを付けて(典型的に、それぞれの特徴の区分度をサンプリング統計することで、手動で重みを設定する)、重み付きのスコア付けを行うことである。
目標ウェブページが実体ページであると決定した後、実体ページのサブジェクト値に対する識別は、具体的には、ウェブページソースコードデータ中の実体ページノードに対応するテキストデータを、直接現在識別している目標キー値ブロックのサブジェクト値とすることであってもよい。実体ページノードは、例えば、ウェブページソースコードデータ中の<h1>タグを有するノードであってもよい。また、現在識別している目標キー値ブロックは、当該ウェブページソースコードデータに対応する複数のキー値ブロック中の、キー値ペア数が一番多いキー値ブロックである必要があり、即ち主キー値ブロックである必要がある。このように設定する目的は、いくつかの小さいキー値ブロックに対応する内容情報が、目標ウェブページの大きいタイトルに対応すべき内容として誤認されることを回避して、サブジェクト値の識別精度を向上させることであると強調する必要がある。
オプションとして、ウェブページソースコードデータにおいて、少なくとも一つのキー値ブロックに対応するサブジェクト値を識別するステップは、現在処理中の目標キー値ブロックの目標ウェブページにおけるページ位置に基づいて、ウェブページソースコードデータにおいて第2のタグ条件を満たすストロングスタイルノードを、前を向いて検索するステップと、ストロングスタイルノードが検索され、ストロングスタイルノードのxpathと目標キー値ブロックに対応するxpathとが一致しない場合、ストロングスタイルノードに対応するテキストデータを目標キー値ブロックのサブジェクト値とするステップと、を含む。
一例として、ストロングスタイルノードに基づくサブジェクト値の識別において、主としてキー値ブロックの位置に基づいて、ウェブページ中で第2のタグの条件を満たすストロングスタイルノードを前に向いて検索し、そのうちの特定の規則を満たすストロングスタイルノードに対応するテキストデータを、当該キー値ブロックのサブジェクト値とする。ストロングスタイルノードは、例えば、ウェブページソースコードデータの<strong>タグ又は<h1>〜<h7>タグを有するノードであってもよい。ストロングスタイルノードのxpathと当該キー値ブロックに対応するxpathとが一致しないことは、ストロングスタイルノードのレベルが当該キー値ブロックよりも高いことを示す。また、当該ストロングスタイルノードは、当該キー値ブロックのウェブページにおける位置から前に向いて検索されたものであるため、当該キー値ブロックに対応される内容のタイトル情報である可能性が非常に高く、したがって当該ストロングスタイルノードに対応するテキストデータを当該キー値ブロックのサブジェクト値とすることで、サブジェクト値の誤認率を低下させた。
オプションとして、ウェブページソースコードデータにおいて、少なくとも一つのキー値ブロックに対応するサブジェクト値を識別するステップは、現在処理中の目標キー値ブロックに含まれたキー値ペアのキー名を、設定されたホワイトリストとマッチングするステップと、目標キー値ブロックに含まれた目標キー名がホワイトリストにマッチングされると決定された場合、目標キー名に対応する目標キー値を目標キー値ブロックのサブジェクト値として取得するステップと、を含むことができる。
一例として、キー値ブロック中の特定のキー値ペアのキー名、例えば、名称クラスのエンティティ関係中の対応されるオブジェクト値は、明らかな特徴を有するため、明らかな特徴を有するキー名に対応するキー値を直接サブジェクト値としてもよい。例えば、ホワイトリスト中に「名前」、「映画名称」などの明らかな特徴を有するキー名を予め設定し、キー値ブロックにキー値ペアである「名前:張曉廷」が含まれていると、キー名である「名前」に対応するキー値である「張曉廷」を、直接当該キー値ブロックのサブジェクト値としてもよい。
オプションとして、ウェブページソースコードデータにおいて、少なくとも一つのキー値ブロックに対応するサブジェクト値を識別するステップは、現在処理中の目標キー値ブロックが主キー値ブロックであると決定された場合、ウェブページソースコードデータと関連付けられた少なくとも一つのクエリ式における各分詞の単語頻度に基づいて、目標分詞を決定するステップと、ウェブページソースコードデータにおいてテキストデータと目標分詞と類似度条件を満たす少なくとも一つのクエリ式ノードを検索するステップと、検索されたクエリ式ノードのxpathと現在処理中の目標キー値ブロックに対応するxpathとが同一でなく、目標ウェブページにおいて、クエリ式ノードのページ位置と目標キー値ブロックのページ位置が設定距離条件を満たす場合、クエリ式ノードのテキストデータを目標キー値ブロックのサブジェクト値とするステップと、を含むことができる。
一例として、クエリ式に基づくサブジェクト値の識別は、主キー値ブロックに対して設計したサブジェクト値の識別の策略であり、一つのURLのクエリ式queryはこのページの内容との関連性がより高いと同時に、一つのウェブページの主キー値ブロックにもページの主な内容情報が含まれるため、queryと主キー値ブロックの情報とに記載された内容は、相対的に類似する確率が高い。このため、query中に含まれた情報に基づいて、即ち目標分詞に基づいて、主キー値ブロックのサブジェクト値を識別する。queryに基づくサブジェクト値の識別と入力は、queryの分詞結果及び対応する単語頻度であり、以上の識別の策略によって、条件を満たすノードがあると、識別されたクエリ式ノードを提供して、クエリ式ノードに対応するテキストデータを当該主キー値ブロックのサブジェクト値とし、そうでない場合には、識別失敗に該当する。
クエリ式ノードのページ位置と目標キー値ブロックのページ位置とが設定距離条件を満たすよう設定する目的は、当該クエリ式ノードと目標キー値ブロックとの間の距離が遠すぎないように保ち、誤認の確率を低下させることである。
オプションとして、ウェブページソースコードデータと関連付けられた少なくとも一つのクエリ式における各分詞の単語頻度に基づいて、目標分詞を決定するステップは、少なくとも一つのクエリ式を分詞処理して各分詞の単語頻度を算出するステップと、単語頻度算出結果に基づいて、少なくとも二つの分詞が単語結合条件を満たすと決定された場合、少なくとも二つの分詞を結合して新たな分詞を生成し、新たな分詞に対応する単語頻度を更新するステップと、単語頻度による各分詞の順序付け結果に基づいて決定された第1の順位の分詞と第2の順位の分詞との間の単語頻度差とが単語頻度閾値条件を満たす場合に、第1の順位の分詞を目標分詞とするステップと、を含むことができる。
一例として、分詞ツールを使用して各クエリ式を分詞処理し、その後、それぞれの分詞が出現された回数に従って、各分詞の単語頻度を算出し、そのうちの二つの分詞の単語頻度がいずれも所定の最小閾値よりも小さければ、当該二つの分詞を結合して新たな分詞を生成し、再度、各分詞に対応する単語頻度を算出し、最後に、単語頻度の結果に基づいて順序付けを行って、単語頻度が一番高い分詞と単語頻度が二番目に高い分詞との間の単語頻度の差が所定の閾値より大きいか否かを決定し、即ち、単語頻度の閾値の条件を満たすか否かを決定し、「Yes」であれば、単語頻度一番高い分詞がクエリ式の主な内容を代表できる分詞であることを示す。当該分詞を目標分詞とすることで、主キー値ブロック中の内容と比較し、最後に主キー値ブロックに対応するサブジェクト値として決定してもよい。
簡便な理解のために、クエリ式に基づくサブジェクト値の識別の過程を具体的なフローチャートによって示してもよい。例えば、図1cに示したように、具体的には、まず、クエリ式を分詞処理し、該当する単語頻度を算出し、さらに単語結合を実行し、再度該当する単語頻度を算出して、単語頻度一番大きい二つの分詞に対応する単語頻度が類似であるか否かを判断する。「Yes」であれば、当該クエリ式を利用してサブジェクト値を識別することができず、出力がない。「No」であれば、ウェブページ中の当該単語頻度一番高い分詞と類似なノードを候補ノードとしてもよい。このような候補ノードが存在するか否かを判断し、「No」であれば、出力がなく、当該方法は失効し、「Yes」であれば、各候補ノードに対して順序付けた後、各候補ノードと現在処理中の目標キー値ブロックとが同一のxpathを有するか否かを順番に判断し、候補ノードのウェブページインターフェースにおける位置と目標キー値ブロックとウェブページインターフェースにおける位置との間の距離が遠すぎるか否かを判断する。そのうちの一つが「Yes」であれば、当該候補ノードを削除し、二つのいずれもが「No」であれば、当該候補ノードを目標キー値ブロックのサブジェクト値が位置しているノードとして決定する。当該ノードに対応するテキストデータが、目標キー値ブロックのサブジェクト値である。
オプションとして、ウェブページソースコードデータにおいて、少なくとも一つのキー値ブロックに対応するサブジェクト値を識別するステップは、目標ウェブページのユニフォームリソースロケータに基づいて、目標ウェブページに対応する目標サイトを決定するステップと、予め記憶されている目標サイトに対応する少なくとも一つの候補テンプレートを取得し、候補テンプレートを利用して現在処理中のキー値ブロックに対応するサブジェクト値を識別するステップと、を含み、そのうち、目標サイト内の候補テンプレートは、目標サイトの複数のウェブページキー値ペアに対して識別を行いた後、識別結果によって生成したものであってもよい。
一例として、サイトテンプレートに基づくサブジェクト値の識別は、サイトテンプレートデータに基づいてキー値ブロックに対応するサブジェクト値を識別する処理である。主として、サイトテンプレート中から候補テンプレートを取得するステップと、候補テンプレートを利用してサブジェクト値を識別するステップのような、二つのステップがある。目標サイトは、目標ウェブページが属されたサイトであってもよく、それぞれのウェブページのURLにはウェブページが位置しているサイトの情報が付加されている。このため、当該URLに基づいて目標ウェブページに対応する目標サイトを識別することができる。具体的には、一部のサイトには該当する識別テンプレートが予め格納されている可能性があるため、直接当該テンプレートを呼び出して、キー値ブロックに対応するサブジェクト値を取得してもよい。
S140において、キー値ブロックとキー値ブロックに対応するサブジェクト値とに基づいて、目標ウェブページに対応するエンティティ関係データを生成する。
本実施例のキー値ブロック及びそのサブジェクト値中には複数のS−KVデータが含まれていてもよい。Sはキー値ブロックのサブジェクト値であり、Kはキー値ブロック中のキー値ペアのキー名であり、Vはキー値ブロック中のキー値ペアのキー値である。S−KVデータとエンティティ関係データとの間に対応関係が存在するため、目標ウェブページ中のキー値ブロックを分割して、対応するサブジェクト値と再度組み合わせた後、目標ウェブページに対応するエンティティ関係データを生成してもよい。
オプションとして、キー値ブロックとキー値ブロックに対応するサブジェクト値とに基づいて、目標ウェブページに対応するエンティティ関係データを生成するステップは、キー値ブロックに含まれたそれぞれのキー値ペアを、それぞれ、キー値ブロックに対応するサブジェクト値と組み合わせて、トリプルデータを構築するステップと、トリプルデータに含まれたキー名をサブジェクトオブジェクト関係値とし、キー名に対応するキー値をオブジェクト値として、エンティティ関係データを生成するステップと、を含むことができる。
一例として、一つのキー値ペア及びその属されたキー値ブロックに対応するサブジェクト値を組み合わせ後、一つのSPOトリプルデータとして構築してもよい。キー値ペアが属されたキー値ブロックに対応するサブジェクト値を当該SPOトリプルデータ中のSとし、即ち、エンティティ関係データ中のサブジェクト値とし、キー値ペアのキー名をSPOトリプルデータ中のPとし、即ち、エンティティ関係データ中のエンティティ関係値とし、キー値ペアのキー値をSPOトリプルデータ中のOとし、即ち、エンティティ関係データ中のオブジェクト体値とすることによって、最後にエンティティ関係データを生成する。
本実施例の技術案によると、目標ウェブページに対応するウェブページソースコードデータを取得し、当該ウェブページソースコードデータに含まれた少なくとも一つのキー値ブロック及び各キー値ブロックに対応するサブジェクト値を識別し、各キー値ブロック及びそれに対応するサブジェクト値に基づいて、目標ウェブページに対応するエンティティ関係データを生成することによって、ウェブページソースコードデータにおいてエンティティ関係を識別するので、ウェブページのタイプ、ウェブページの構成、サイトなどによって制限されないようにすることができる。また、ウェブページに対して自動的にエンティティ関係データの抽出を実行することができるので、過度の人によるメンテナンスを不要とすると同時に、大規模なインターネットウェブページから抽出して、大規模なエンティティ関係データを取得することができるので、ウェブページの汎用性を向上させ、人件費を削減し、エンティティ関係データの出力を向上させることができる。
上記実施例を基礎として、オプションとして、上記の目標キー値ブロックに対する五つのサブジェクト値の識別方法のうちいずれの一つ又は複数の方法を選択して、サブジェクト値の識別を行ってもよく、そのうち、複数の方法によって識別を行う場合には、当該複数の方法を特定の順序に従って組み合わせた後、総合的な識別を行うことによって、サブジェクト値の識別の精度及び成功率を向上することができる。例えば、五つの方法を組み合わせた後、図1dに示した流れに従って、キー値ブロックのサブジェクト値の識別を行ってもよい。具体的な識別順序は、実体ページに基づくサブジェクト値の識別、ストロングスタイルノードに基づくサブジェクト値の識別、ホワイトリストに基づくサブジェクト値の識別、クエリ式に基づくサブジェクト値の識別、及び、サイトテンプレートに基づくサブジェクト値の識別である。実体ページに対しては、一番目の識別方法のみによってサブジェクト値の識別を行いてもよい。サブジェクト値が識別されると、対応する結果を出力し、サブジェクト値が識別されないと、直接出力せず、即ち、当該キー値ブロックのサブジェクト値の識別に失敗したと決定してもよい。非実体ページ中のサブジェクト値の識別においては、一番目の識別方法以外に、そのうちの一つの識別方法によってサブジェクト値が識別されると、即ち、識別結果があると、当該結果を出力し、識別結果がないと、最後にサブジェクト値が確実に識別されないと決定されるまで、続けて、次の識別方法によって識別を行い、当該キー値ブロックのサブジェクト値の識別に失敗したと決定してもよい。
実施例2
図2aは、本発明の実施例2により提供されるエンティティ関係データ生成方法の流れを示す概略図であり、本実施例は上記実施例を基礎として具体化にしたものである。本実施例において、ウェブページソースコードデータにおいて、少なくとも一つのキー値ブロックを識別するステップをさらに最適化したステップは、基礎解析ツールを使用して、ウェブページソースコードデータをデータ解析し、少なくとも一つの基礎キー値ペアを取得して、キー値ペアセットに追加するステップと、基礎キー値ペアをキー値ペア拡張し、少なくとも一つの拡張キー値ペアを取得して、キー値ペアセットに追加するステップと、キー値ペアセットに含まれたキー値ペアを併合処理して、少なくとも一つのキー値ブロックを取得するステップと、を含む。
これに対応する本実施例の方法は、S210〜S260を含む。
S210において、目標ウェブページに対応するウェブページソースコードデータを取得する。
S220において、基礎解析ツールを使用して、ウェブページソースコードデータをデータ解析し、少なくとも一つの基礎キー値ペアを取得して、キー値ペアセットに追加する。
基礎解析ツールは、KV解析ツールであってもよく、目標ウェブページに対応するウェブページソースコードデータをデータ解析する目的は、そのうちに含まれた少なくとも一つのキー値ペアを、基礎キー値ペアとして取得し、所定のキー値ペアセットに追加することである。
一例として、いくつかの解析ツールは、ウェブページソースコードデータ中のいくつかのKVタイプに符合するデータに対して、自動的に識別を行うことができるため、まず、基礎解析ツールを使用して目標ウェブページ中に含まれたキー値ペアに対して大まかな識別を行ってもよい。
実際の一例を挙げると、mars解析ツールを使用してulpackデータを解析し、解析結果中のウェブページ内のKVの形で記述したテキストデータ、又は、解析結果中の簡単な<table>タグに対応するテキストデータを、基礎キー値ペアとして取出してもよい。
S230において、基礎キー値ペアをキー値ペア拡張し、少なくとも一つの拡張キー値ペアを取得して、キー値ペアセットに追加する。
本実施例においては、基礎解析ツールには一定の局限性があり、データ解析結果中から取得できるキー値ペアが限られているため、得られた基礎キー値ペアの基礎上で、さらに、目標ウェブページ中に含まれた他のキー値ペアに対して識別を行う必要がある。
キー値ペア拡張を行う目的は、基礎解析ツールで解析できない内容を捜し戻すことであり、キー値ペア拡張を行う方法は、解析結果中で同一のxpathを有するKVタイプのテキストに対して拡張を行う方法、及び、特定のHTMLタグ中のKVタイプのテキストに対して拡張を行う方法などを含むが、これらに限定されない。
オプションとして、基礎キー値ペアをキー値ペア拡張し、少なくとも一つの拡張キー値ペアを取得して、キー値ペアセットに追加するステップは、ウェブページソースコードデータにおいて、基礎キー値ペアとマッチングされる基礎ノードの基礎xpathを取得し、xpathと基礎xpathが同一である拡張ノードを検索するステップと、拡張ノードに対応するテキストデータを、拡張キー値ペアとして、取得するステップと、を含むか、及び/又は、ウェブページソースコードデータにおいて、基礎キー値ペアとマッチングされる基礎ノードの基礎htmlタグを取得するステップと、基礎htmlタグに基づいて、少なくとも一つの拡張htmlタグを決定し、ウェブページソースコードデータにおいて、拡張htmlタグとマッチングされる拡張ノードを検索するステップと、拡張ノードに対応するテキストデータを拡張キー値ペアとして取得するステップと、を含むことができる。
一番目の方法において、すでに識別された基礎キー値ペアが位置するノードと同一のxpathでは、他のキー値ペアが識別される確率がより高いため、基礎キー値ペアが位置するノードと同一のxpathでの他のノードに対応するテキストデータを取得し、キー値ペアに対して拡張を行って、より多いキー値ペアを取得することができる。
二番目の方法では、それぞれのウェブページソースコードデータ中に複数のhtmlタグが含まれており、例えば、<h1>タグ、<strong>タグ、<table>タグなどの、識別された基礎キー値ペアに対応するhtmlタグが含まれているため、当該種類のタグに他のキー値ペアが存在する確率がより高いため、基礎キー値ペアに対応するhtmlタグ、即ち基礎htmlタグを取得することによって、即ち、同一のタイプのタグのすべてのマッチングされるノードに対応するテキストデータを取得することによって、キー値ペアに対して拡張することができる。
上記二つの方法は、そのうちの一つを別途に選択して使用してもよいし、総合的に使用してもよく、ここでは限定しない。
本実施例のオプションとする一実施形態において、オプションとして、基礎キー値ペアをキー値ペア拡張し、少なくとも一つの拡張キー値ペアを取得して、キー値ペアセットを追加するステップの後に、キー値ペアセットに含まれたキー値ペアに対して重複排除処理を行うステップをさらに含むことができる。具体的には、拡張して得たキー値ペアは、ツールによって識別されたキー値ペアと重複するか、又は、ノード情報が競合する可能性があるため、拡張後の結果に対して統合重複排除処理を行う必要がある。
具体的な一例において、ノード情報の競合は、位置情報(ノードのウェブページにおける位置)の競合、又は、テキスト情報の競合などを含むことができる。例えば、ツールによってキー値ペアを識別する際に、位置ずれが発生し、識別された同一のキー値ペアに対応する位置情報に競合が発生してしまう可能性があり、また、例えば、識別された二つ又は複数のキー値ペア中に、同一のキー名が異なるキー値に対応されて、テキスト情報の競合をもたらす可能性がある。
S240において、キー値ペアセットに含まれたキー値ペアを併合処理して、少なくとも一つのキー値ブロックを取得し、そのうち、キー値ブロックは、少なくとも一つのキー値ペアを含む。
後続のステップにおいてそれぞれのキー値ペアに対してサブジェクト値をそれぞれ識別する面倒を低下させて、エンティティ関係データの生成効率を改善するために、本実施例においては、識別されたすべてのキー値ペアを所定の併合規則に従って併合処理を実行することによって、後続のサブジェクト値の識別においてキー値ブロックを単位とする識別のみを行う必要があり、それぞれのキー値ブロックに対してそれぞれ一つのサブジェクト値を識別することができる。具体的には、それぞれのキー値ブロックには同一の数のキー値ペアを割り当てていてもよいし、異なる量のキー値ペアを割り当てていてもよく、ここでは限定しない。
オプションとして、キー値ペアセットに含まれたキー値ペアを併合処理して、少なくとも一つのキー値ブロックを取得するステップは、キー値ペアセットにおけるキー値ペアの目標ウェブページにおけるページ位置を位置決めするステップと、ページ位置が連続される少なくとも二つのキー値ペアを一つのキー値ブロックに併合するステップと、を含むことができる。
一例として、目標ウェブページ中でキー値ペアが位置するページ位置が連続される複数のキー値ペア、即ち、キー値ペアが位置しているページ位置の間に他のテキストが含まれてない複数のキー値ペアを、一つのキー値ブロックに併合してもよい。それぞれのウェブページで、一つ又は複数のキー値ブロックを併合し出してもよい。そのうち、含まれたキー値ペアが一番多いキー値ブロックが、主キー値ブロックである。
オプションとして、キー値ペアセットに含まれたキー値ペアを併合処理して、少なくとも一つのキー値ブロックを取得するステップの後に、キー値ペアのフィルタリング規則に従って、少なくとも一つのキー値ブロックに含まれたキー値ペアに対してフィルタリング処理を実行するステップと、キー値ブロックのフィルタリング規則に従って、少なくとも一つのキー値ブロックに対してフィルタリング処理を実行するステップと、をさらに含むことができる。
一例として、キー値フィルタリングは二つの粒度を含み、それぞれ、キー値ペアの粒度、及び、キー値ブロックの粒度である。具体的には、まず、キー値ペアの粒度のフィルタリングを行い、その後、キー値ブロックの粒度のフィルタリングを行ってもよい。フィルタリングを実行する有益な効果は、いくつかの無効なキー値ペア又はキー値ブロックを削除することによって、エンティティ関係データの有効性及び信頼性を向上させることができる。
キー値ペアの粒度のフィルタリングにおいては、主として、キー値ペアの長さ、テキストのタイプ、及び、そのうちの符号に基づいてフィルタリングを行い、例えば、キー値ペア中のキー名が長すぎるキー値ペア、又は、キー値が長すぎるキー値ペアを無効なキー値ペアと見なしてフィルタリングする必要がある。また、例えば、キー値ペアに対応するテキスト中に識別できない符号が含まれていたり、又は、全てが符号である場合には、無効なキー値ペアとして見なす必要がある。
また、キー値ブロックの粒度のフィルタリングでは、主として、キー値ブロック中のエンティティ関係の意義がないキー値ブロックをフィルタリングされ、例えば、「ご提示:×××」などの実際意義がないキー値のブロック、また、例えば、「テクニックA:×××」などの名詞説明クラスのテキストが該当する。
実際の一例において、キー値ブロックに対する識別の完全な処理過程は、図2bに示したフローチャートに従って、まず、mars解析ツールを利用してウェブページ内容を解析し、解析されたKVデータ及びウェブページ情報に基づいて、KVの拡張、重複排除、分割と併合、及び、フィルタリングを実効して、最終的なウェブページ内の有効なKVデータを生成して、KVブロックを単位として出力する。そのうち、KVブロックの分割と併合がキー値ペアの併合である。
S250では、ウェブページソースコードデータにおいて、少なくとも一つのキー値ブロックに対応するサブジェクト値を識別する。
S260において、キー値ブロックとキー値ブロックに対応するサブジェクト値とに基づいて、目標ウェブページに対応するエンティティ関係データを生成する。
本実施例の技術案によると、取得された目標ウェブページに対応するウェブページソースコードデータをデータ解析し、少なくとも一つの基礎キー値ペアを取得して、基礎解析ツールを利用して得られた基礎キー値ペアをキー値ペア拡張し、さらに、基礎キー値ペアと拡張し得た拡張キー値ペアとをいずれもキー値ペア結合中に追加し、当該キー値ペアセットに含まれたキー値ペアを併合処理して、少なくとも一つのキー値ブロックを取得し、最後に、ウェブページソースコードデータにおいて識別された当該少なくとも一つのキー値ブロックに対応するサブジェクト値を結合して、目標ウェブページに対応するエンティティ関係データを生成する。これにより、ウェブページソースコードデータを解析して得た基礎キー値ペア、及び、当該基礎キー値ペアを拡張して得た拡張キー値ペアを利用することで、それぞれのウェブページに対していずれももっと多いキー値ペアを取得して、大量のインターネットウェブページからの規模が非常に大きいエンティティ関係データの取得を実現し、人気のある実体検索推薦要件を満たすだけでなく、ロングテール実体のカバレッジの問題も十分に解决することができた。
上記各実施例の基礎上で、最終的に生成されるエンティティ関係データの有効性を向上させるために、得られたキー値ブロック及びそれに対応するサブジェクト値に対して、フィルタリングを行ってもよい。オプションとして、ウェブページソースコードデータにおいて、少なくとも一つのキー値ブロックに対応するサブジェクト値を識別するステップの後に、少なくとも一つの統計チェックテンプレート、及び/又は、少なくとも一つの規則チェックテンプレートを使用して、少なくとも一つのキー値ブロックに対応するサブジェクト値に基づいて、少なくとも一つのキー値ブロックに対してフィルタリングを実行するステップをさらに含むことができる。
一例として、キー値ブロックに対するフィルタリングの実行は、上流で発生したキー値ブロック及びそれに対応するサブジェクト値の質量に対する制御であり、主として、統計に基づくチェックと規則に基づくチェックとの二つの方法がある。そのうちの条件を満たさないデータをフィルタリングして、質量が高いキー値ブロックを出力する。
具体的には、統計チェックテンプレートは、主として、単一のページ情報の下では解決が困難なエラーをフィルタリングするために使用され、キー値ペアとキー値ブロックとの二つの粒度によって、それぞれ統計フィルタリングを実行してもよい。また、規則チェックテンプレートは、主として、人工的に設定された規則に従って、S−KVデータ即ちキー値ペア(又はキー値ブロック)、及び、その対応されるサブジェクト値に対して、処理を行い、S及びKVに対して、それぞれフィルタリングを実行する。
オプションとして、目標ウェブページのユニフォームリソースロケータに対応する目標サイト内のそれぞれのウェブページのうち、識別されたキー値ブロックに対応するサブジェクト値を、処理サブジェクト値としてそれぞれ取得するステップと、xpathが同一である目標処理サブジェクト値の数が第1の数閾値を超える場合、目標サブジェクト値のxpath、及び目標サブジェクト値それぞれに対応するキー値ブロックに基づいて、少なくとも一つの予備統計チェックテンプレートを構築するステップと、予備統計チェックテンプレートにそれぞれ対応するキー値ブロックを取得するステップと、一つの目標予備統計チェックテンプレートに対応する複数のキー値ブロックのうち同一のキー値ブロックの数が第2の数閾値を超える場合、予備統計チェックテンプレートのうち当該目標予備統計チェックテンプレートを削除することによって、統計チェックテンプレートを取得するステップと、をさらに含むことができる。
一例として、統計チェックテンプレートは、二つのチェックステップによって構築することができ、そのうち、一番目のステップは、サイト−S xpathレベルの統計チェックである。即ち、URLが位置しているサイト及び当該URLで識別されるサブジェクト値のxpathをkeyとしてマージし、マージ結果に基づいて複数の初期テンプレートを構築し、実際のS−KV識別結果とそれぞれの初期テンプレートとをマッチングし、条件を満たさない初期テンプレートをフィルタリングし、即ち、予備統計チェックテンプレートを取得する。二番目のステップは、S xpath−KVブロックレベルの統計チェックテンプレートである。即ち、予備統計チェックテンプレートの基礎上で、S xpath即ちサブジェクト値のxpath、及び、対応するKVブロックのxpath即ちキー値ブロックのxpathを、keyとしてマージし、マージした後に複数のURLでKVが完全に同一のテンプレートを削除し、即ち、最後に統計チェックテンプレートを取得する。最終的に得られた統計チェックテンプレートは、主として、ウェブページの縁欄又は底部欄の公共情報中に含まれたKVデータに対してフィルタリングを実行する。
上記各実施例の基礎上で、図2cに示した半構造化SPOデータ抽出システムを構築することができ、当該システムは、前処理ユニット50と、KV識別ユニット60と、S識別ユニット70と、S−KV質量制御ユニット80と、を含む。前処理ユニット50は、入力されたウェブページURLに対して前処理を実行して、ウェブページソースコードデータを取得し、KV識別ユニット60は、ウェブページソースコードデータ中のキー値ブロックを識別し、S識別ユニット70は、ウェブページソースコードデータ中のサブジェクト値に対して識別を行い、S−KV質量制御ユニット80は、用件に合わないS−KVデータをフィルタリングして、用件に合うSPOトリプルデータを出力する。
当該半構造化SPOデータ抽出システムの目標は、ウェブページ中からKVの形で表現される情報をトリプルの形のデータへ抽出整理する一つのシステムを実現することにある。即ち、本システムは、一つの目標ウェブページのURLを入力して、当該目標ウェブページに対して、バイナリの形で標記されたエンティティ関係(P)及び実体属性値(O)で、対応する実体(S)を識別した後、SPOトリプルの形で出力することで、任意のタイプウェブページ中のSPOデータの自動的な抽出を実現し、即ち、エンティティ関係データの自動的な抽出を実現する。図2cに示したように、URLを入力した後、半構造化SPOデータ抽出システムを通じて、前処理過程で必要なクリック表示ログ、及びサイトテンプレートに基づくサブジェクト値の識別過程で必要なサイトテンプレートなどの、該当する外部データを利用して、最終的に、対応するSPOトリプルデータを取得する。
実施例3
図3は、本発明の実施例3によって提供されるエンティティ関係データ生成装置の構成を示す概略図である。図3を参考すると、エンティティ関係データ生成装置は、ソースコード取得モジュール310と、キー値ブロックの識別モジュール320と、サブジェクト値の識別モジュール330と、データ生成モジュール340と、を備え、以下、各モジュールを具体的に説明する。
ソースコード取得モジュール310は、目標ウェブページに対応するウェブページソースコードデータを取得する。
キー値ブロックの識別モジュール320は、前記ウェブページソースコードデータにおいて、少なくとも一つのキー値ブロックを識別し、前記キー値ブロックには少なくとも一つのキー値ペアが含まれる。
サブジェクト値の識別モジュール330は、前記ウェブページソースコードデータにおいて、前記少なくとも一つのキー値ブロックに対応するサブジェクト値を識別する。
データ生成モジュール340は、前記キー値ブロックと前記キー値ブロックに対応するサブジェクト値とに基づいて、前記目標ウェブページに対応するエンティティ関係データを生成する。
本実施例は、エンティティ関係データ生成装置を提供する。当該装置は、目標ウェブページに対応するウェブページソースコードデータを取得し、当該ウェブページソースコードデータに含まれた少なくとも一つのキー値ブロック及び各キー値ブロックに対応するサブジェクト値を識別し、各キー値ブロック及びそれに対応するサブジェクト値に基づいて、目標ウェブページに対応するエンティティ関係データを生成する。これにより、ウェブページソースコードデータにおいてエンティティ関係を識別するので、ウェブページのタイプ、ウェブページの構成、サイトなどによって制限されないようにすることができる。また、ウェブページに対して自動的にエンティティ関係データの抽出を実行することができ、過度の人によるメンテナンスを不要とすると同時に、大規模なインターネットウェブページ中から抽出して、大規模なエンティティ関係データを取得できるので、ウェブページの汎用性を向上させ、人件費を削減し、エンティティ関係データの出力を向上させることができる。
オプションとして、キー値ブロックの識別モジュール320は、基礎解析ツールを使用して、前記ウェブページソースコードデータをデータ解析し、少なくとも一つの基礎キー値ペアを取得して、キー値ペアセットに追加するための基礎キー値取得サブモジュールと、前記基礎キー値ペアをキー値ペア拡張し、少なくとも一つの拡張キー値ペアを取得して、前記キー値ペアセットに追加するための拡張キー値取得サブモジュールと、前記キー値ペアセットに含まれたキー値ペアを併合処理して、前記少なくとも一つのキー値ブロックを取得するためのキー値ブロック決定サブモジュールと、を含む。
オプションとして、拡張キー値取得サブモジュールは、具体的には、前記ウェブページソースコードデータにおいて、前記基礎キー値ペアとマッチングされる基礎ノードの基礎xpathを取得し、xpathが前記基礎xpathと同一である拡張ノードを検索し、前記拡張ノードに対応するテキストデータを前記拡張キー値ペアとして取得するか、及び/又は、前記ウェブページソースコードデータにおいて、前記基礎キー値ペアとマッチングされる基礎ノードの基礎htmlタグを取得し、前記基礎htmlタグに基づいて、少なくとも一つの拡張htmlタグを決定し、前記ウェブページソースコードデータにおいて、前記拡張htmlタグとマッチングされる拡張ノードを検索し、前記拡張ノードに対応するテキストデータを前記拡張キー値ペアとして取得してもよい。
オプションとして、キー値ブロック決定サブモジュールは、具体的には、前記キー値ペアセットにおけるキー値ペアの前記目標ウェブページにおけるページ位置を位置決めし、ページ位置が連続される少なくとも二つのキー値ペアを一つのキー値ブロックに併合し入れてもよい。
オプションとして、キー値ブロックの識別モジュール320は、前記キー値ペアセットに含まれたキー値ペアを併合処理して、前記少なくとも一つのキー値ブロックを取得するステップの後に、キー値ペアのフィルタリング規則に従って、前記少なくとも一つのキー値ブロックに含まれたキー値ペアをフィルタリング処理するためのキー値ペアフィルタリングサブモジュールと、キー値ブロックのフィルタリング規則に従って、前記少なくとも一つのキー値ブロックをフィルタリング処理するするためのキー値ブロックのフィルタリングサブモジュールと、をさらに備えてもよい。
オプションとして、サブジェクト値の識別モジュール330は、具体的には、現在処理中の目標キー値ブロックが主キー値ブロックであり、前記ウェブページソースコードデータに第1のタグ条件を満たす実体ページノードが含まれていることが決定された場合、実体ページのスコアリング規則に従って、前記目標ウェブページが実体ページであるか否かを判断し、「Yes」であれば、前記実体ページノードに対応するテキストデータを前記目標キー値ブロックのサブジェクト値としてもよい。前記主キー値ブロックは、前記ウェブページソースコードデータに対応する少なくとも一つのキー値ブロックのうち、含まれたキー値ペアの数が一番多い一つのキー値ブロックであってもよい。
オプションとして、サブジェクト値の識別モジュール330は、具体的には、現在処理中の目標キー値ブロックの前記目標ウェブページにおけるページ位置に基づいて、前記ウェブページソースコードデータにおいて第2のタグ条件を満たすストロングスタイルノードを、前を向いて検索し、前記ストロングスタイルノードが検索され、前記ストロングスタイルノードのxpathが前記目標キー値ブロックに対応するxpathと一致しない場合、前記ストロングスタイルノードに対応するテキストデータを前記目標キー値ブロックのサブジェクト値としてもよい。
オプションとして、サブジェクト値の識別モジュール330は、具体的には、現在処理中の目標キー値ブロックに含まれたキー値ペアのキー名を、設定されたホワイトリストとマッチングし、前記目標キー値ブロックに含まれた目標キー名が前記ホワイトリストにマッチングされると決定された場合、前記目標キー名に対応する目標キー値を、前記目標キー値ブロックのサブジェクト値として取得してもよい。
前記エンティティ関係データ生成装置は、目標ウェブページに対応するウェブページソースコードデータを取得するステップの後に、検索エンジンのクリック表示ログで、前記目標ウェブページのユニフォームリソースロケータに対応する少なくとも一つのクエリ式を取得し、取得された前記少なくとも一つのクエリ式を前記ウェブページソースコードデータと関連付けるためのクエリ式取得モジュールをさらに備えてもよい。
これに応じて、サブジェクト値の識別モジュール330は、現在処理中の目標キー値ブロックが主キー値ブロックであると決定された場合、前記ウェブページソースコードデータと関連付けられた前記少なくとも一つのクエリ式における各分詞の単語頻度に基づいて、目標分詞を決定するための分詞決定サブモジュールと、前記ウェブページソースコードデータにおいて、テキストデータと前記目標分詞とが類似度条件を満たす少なくとも一つのクエリ式ノードを検索するためのノード検索サブモジュールと、検索されたクエリ式ノードのxpathと現在処理中の目標キー値ブロックに対応するxpathとが同一でなく、前記目標ウェブページにおいて、前記クエリ式ノードのページ位置と前記目標キー値ブロックのページ位置とが設定距離条件を満たす場合、前記クエリ式ノードのテキストデータを前記目標キー値ブロックのサブジェクト値とするためのサブジェクト値決定サブモジュールと、を備えてもよい。
オプションとして、分詞決定サブモジュールは、具体的には、前記少なくとも一つのクエリ式を分詞処理し、各前記分詞の単語頻度を算出し、単語頻度算出結果に基づいて、少なくとも二つの分詞が単語結合条件を満たすと決定された場合、前記少なくとも二つの分詞を結合して新たな分詞を生成し、前記新たな分詞に対応する単語頻度を更新し、単語頻度による各分詞の順序付け結果に基づいて決定された第1の順位の分詞と第2の順位の分詞との間の単語の頻度差とが単語頻度閾値条件を満たす場合、前記第1の順位の分詞を前記目標分詞としてもよい。
オプションとして、サブジェクト値の識別モジュール330は、具体的には、前記目標ウェブページのユニフォームリソースロケータに基づいて、前記目標ウェブページに対応する目標サイトを決定し、予め記憶されている前記目標サイトに対応する少なくとも一つの候補テンプレートを取得し、前記候補テンプレートに基づいて現在処理中のキー値ブロックに対応するサブジェクト値を識別してもよい。前記目標サイト内の候補テンプレートは、前記目標サイトの複数のウェブページをキー値ペア識別した後、識別結果によって生成されたものであってもよい。
オプションとして、エンティティ関係データ生成装置は、前記ウェブページソースコードデータにおいて、前記少なくとも一つのキー値ブロックに対応するサブジェクト値を識別するステップの後に、少なくとも一つの統計チェックテンプレート、及び/又は、少なくとも一つの規則チェックテンプレートを使用して、前記少なくとも一つのキー値ブロックに対応するサブジェクト値に基づいて、前記少なくとも一つのキー値ブロックをフィルタリングするためのテンプレートフィルタリングモジュールをさらに備えてもよい。
オプションとして、エンティティ関係データ生成装置は、前記目標ウェブページのユニフォームリソースロケータに対応する目標サイト内の各ウェブページにおいて、識別されたキー値ブロックに対応するサブジェクト値を処理サブジェクト値として、それぞれ取得するためのサブジェクト値取得モジュールと、xpathが同一である目標処理サブジェクト値の数が第1の数閾値を超える場合、前記目標サブジェクト値のxpathと、前記目標サブジェクト値それぞれに対応するキー値ブロックとに基づいて、少なくとも一つの予備統計チェックテンプレートを構築するためのテンプレート構築モジュールと、予備統計チェックテンプレートにそれぞれ対応するキー値ブロックを取得するためのキー値ブロック取得モジュールと、一つの目標予備統計チェックテンプレートに対応する複数のキー値ブロックのうち同一のキー値ブロックの数が第2の数閾値を超える場合、前記予備統計チェックテンプレートにおいて当該目標予備統計チェックテンプレートを削除して、前記統計チェックテンプレートを取得するためのテンプレート決定モジュールと、をさらに備えてもよい。
オプションとして、データ生成モジュール340は、具体的には、前記キー値ブロックに含まれたそれぞれのキー値ペアと、前記キー値ブロックに対応するサブジェクト値と、をそれぞれ組み合わせてトリプルデータを構築し、前記トリプルデータに含まれたキー名をサブジェクトオブジェクト関係値とし、キー名に対応するキー値をオブジェクト値として、前記エンティティ関係データを生成する。
上記製品は、本発明の任意の実施例によって提供される方法を実行することができ、方法を実行するための該当する功能モジュール、及び、有益な効果を有する。
実施例4
図4は、本発明の実施例4によって提供されるコンピュータ機器の構成を示す概略図である。図4は、本発明の実施形態を実現するための例示的なコンピュータ機器のブロック図を示す。図4に示すコンピュータ機器12は、一例に過ぎず、本発明の実施例の機能及び使用範囲を限定するものではない。
図4に示すように、コンピュータ機器12は、汎用の計算装置の形で具体化されている。コンピュータ機器12の構成要素は、1つ又は複数のプロセッサ又は処理ユニット16、システムメモリ28、システム構成要素(システムメモリ28と処理ユニット16とを含む)を接続するバス18を含むが、これらに限定されない。
バス18は、メモリバス又はメモリコントローラ、周辺バス、アクセラレーテッドグラフィックスポート、プロセッサ、又は多様なバス構造のいずれかのバス構造を使用するローカルバスを含む、いくつかのタイプのバス構造のうちの1つ又は複数を表す。例えば、これらのアーキテクチャは、インダストリスタンダードアーキテクチャ(Industry Standard Architecture、以下ISAと略する)バス、マイクロチャネルアーキテクチャ(Micro Channel Architecture、以下MCAと略する)バス、拡張ISAバス、ビデオエレクトロニクススタンダーズアソシエーション(Video Electronics Standards Association、,以下VESAと略する)ローカルバス、及びペリフェラルコンポーネントインターコネクト(Peripheral Component Interconnection、以下PCIと略する)バスを含むが、これらに限定されない。
コンピュータ機器12は、通常、複数のコンピュータシステム読み取り可能な媒体を含む。これらの媒体は、揮発性媒体及び不揮発性媒体、リムーバブル媒体及びノンリムーバブル媒体を含む、コンピュータ機器12によってアクセスされ取得する任意の使用可能な媒体であってもよい。
システムメモリ28は、ランダムアクセスメモリ(Random Access Memory、以下RAMと略する)30及び/又はキャッシュメモリ32のような揮発性メモリの形態のコンピュータシステム読み取り可能な媒体を含むことができる。コンピュータ機器12は、他のリムーバブル/ノンリムーバブル、揮発性/不揮発性コンピュータシステム記憶媒体をさらに含むことができる。例だけであるが、ストレージシステム34は、ノンリムーバブル、不揮発性磁気媒体(図4に図示せず、通常「ハードディスクドライブ」と称される)に対して読み出し及び書き込みをするために用いることができる。図4に示されていないが、リムーバブル不揮発性磁気ディスク(例えば、「フロッピーディスク」)に対して読み出し及び書き込みをするための磁気ディスクドライブ、及びリムーバブル不揮発性光学ディスク(例えば、シーディーロム(Compact Disc Read Only Memory、以下CD−ROMと略する)、ディーブイディーロム(Digital Video Disc Read Only Memory、以下DVD−ROMと略する)又は他の光学媒体)に対して読み出し及び書き込みをするための光ディスクドライブを提供することができる。これらの場合、各ドライブは、1つ又は複数のデータメディアインターフェイスを介してバス18に接続することができる。メモリ28は、本発明の各実施例に記載の機能を実行するように構成される1セットの(例えば、少なくとも1つ)プログラムモジュールを有する少なくとも1つのプログラム製品を含むことができる。
1セットの(少なくとも1つ)プログラムモジュール42を有するプログラム/ユーティリティ40は、例えば、メモリ28に記憶されてもよく、このようなプログラムモジュール42は、オペレーティングシステム、1つ又は複数のアプリケーションプログラム、他のプログラムモジュール及びプログラムデータを含むが、これらに限定されない。これらの例のそれぞれ又はある組み合わせには、ネットワーキング環境の実装が含まれる可能性がある。プログラムモジュール42は、通常、本発明に記載の実施例における機能及び/又は方法を実行する。
コンピュータ機器12は、1つ又は複数の外部デバイス14(例えば、キーボード、ポインティングデバイス、ディスプレイ24など)と通信することができ、また、ユーザが当該コンピュータ機器12とインタラクションすることを可能にする1つ又は複数のデバイスと通信することができ、及び/又は、当該コンピュータ機器12が1つ又は複数の他のコンピューティングデバイスと通信することを可能にする任意のデバイス(例えば、ネットワークカード、モデムなど)と通信することもできる。そのような通信は、入力/出力(I/O)インターフェース22を介して行うことができる。また、コンピュータ機器12は、ネットワークアダプタ20を介して、1つ又は複数のネットワーク(例えば、ローカルエリアネットワーク(Local Area Network、以下LANと略する)、ワイドエリアネットワーク(Wide Area Network、以下WANと略する)、及び/又はパブリックネットワーク、例えば、インターネット)と通信することができる。図に示すように、ネットワークアダプタ20は、バス18を介してコンピュータ機器12の他のモジュールと通信する。なお、図示されていないが、マイクロコード、デバイスドライバ、冗長化処理ユニット、外部ディスクドライブアレイ、RAIDシステム、テープドライバ、及びデータバックアップストレージシステムなどを含むが、これらに限定されない他のハードウェア及び/又はソフトウェアモジュールをコンピュータ機器12と組み合わせて使用することができる。
処理ユニット16は、メモリ28に記憶されているプログラムを実行することにより、多様な機能アプリケーション及びデータ処理を実行し、例えば、本発明の実施例によって提供されるエンティティ関係データ生成方法を以下のように実現する。前記方法は、目標ウェブページに対応するウェブページソースコードデータを取得するステップと、前記ウェブページソースコードデータにおいて、少なくとも一つのキー値ペアが含まれたキー値ブロックを少なくとも一つ識別するステップと、前記ウェブページソースコードデータにおいて、前記少なくとも一つのキー値ブロックに対応するサブジェクト値を識別するステップと、前記キー値ブロックと前記キー値ブロックに対応するサブジェクト値とに基づいて、前記目標ウェブページに対応するエンティティ関係データを生成するステップと、を含む。
実施例5
本発明の実施例5は、コンピュータ読み取り可能な記憶媒体を提供する。当該コンピュータ読み取り可能な記憶媒体上には、コンピュータプログラムが格納されており、当該プログラムがプロセッサによって実行されると、本願のすべての発明の実施例によって提供されるエンティティ関係データ生成方法が実現される。当該方法は、目標ウェブページに対応するウェブページソースコードデータを取得するステップと、前記ウェブページソースコードデータにおいて、少なくとも一つのキー値ペアを含む少なくとも一つキー値ブロックを識別するステップと、前記ウェブページソースコードデータにおいて、前記少なくとも一つのキー値ブロックに対応するサブジェクト値を識別するステップと、前記キー値ブロックと前記キー値ブロックに対応するサブジェクト値とに基づいて、前記目標ウェブページに対応するエンティティ関係データを生成するステップと、を含む。
1つ又は複数のコンピュータ読み取り可能な媒体の任意の組み合わせを採用してもよい。コンピュータ読み取り可能な媒体は、コンピュータ読み取り可能な信号媒体又はコンピュータ読み取り可能な記憶媒体であってもよい。コンピュータ読み取り可能な記憶媒体は、例えば、電子、磁気、光、電磁気、赤外線、又は、半導体のシステム、装置又はデバイス、又は、任意の以上の組み合わせであってもよいが、これらに限定されない。コンピュータ読み取り可能な記憶媒体のより具体的な例(非網羅的リスト)は、1つ又は複数のワイヤを有する電気接続、ポータブルコンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能プログラマブル読み取り専用メモリ(EPROM又はフラッシュメモリ)、光ファイバ、携帯用コンパクトディスク読み取り専用メモリ(CD−ROM)、光記憶装置、磁気記憶装置、又は、上記の任意の適切な組み合わせを含む。本明細書では、コンピュータ読み取り可能な記憶媒体は、プログラムを含むか又は記憶されている任意の有形の媒体であってもよく、当該プログラムは、命令実行システム、装置、又は、デバイスによって使用されるか、又は、これらと結合して使用されてもよい。
コンピュータ読み取り可能なの信号媒体は、コンピュータ読み取り可能なプログラムコードを搬送する、ベースバンドで伝播されるか又は搬送波の一部として伝播されるデータ信号を含むことができる。このような伝播されるデータ信号は、電磁信号、光信号、又はこれらの任意の適切な組み合わせを含むがこれらに限定されない、さまざまな形態を採用してもよい。コンピュータ読み取り可能なの信号媒体は、また、命令実行システム、装置又はデバイスによって使用される又はそれらと結合して使用するためのプログラムを送信、伝播、又は、移送することができる、コンピュータ読み取り可能な記憶媒体以外の任意のコンピュータ読み取り可能な媒体であってもよい。
コンピュータ読み取り可能な媒体に含まれたプログラムコードは、無線、ワイヤ、光ファイバケーブル、RFなど、又はこれらの任意の適切な組合せを含むがこれらに限定されない、任意の適切な媒体によって送信することができる。
本発明の動作を実行するためのコンピュータプログラムコードは、1つ又は複数のプログラミング言語、又はそれらの組み合わせで書くことができ、前記プログラミング言語は、Java(登録商標)、Smalltalk、C ++などのオブジェクト指向プログラミング言語を含み、さらに、「C」言語又は類似のプログラミング言語などの従来の手続き型プログラミング言語も含む。プログラムコードは、完全にユーザのコンピュータ上、部分的にユーザのコンピュータ上、単独のソフトウェアパッケージとして、部分的にユーザのコンピュータ上、部分的にリモートコンピュータ上で、又は全体的にリモートコンピュータ又はサーバ上で実行されることができる。リモートコンピュータの場合、リモートコンピュータは、ローカルエリアネットワーク(LAN)又はワイドエリアネットワーク(WAN)を含む任意の種類のネットワークを介してユーザのコンピュータに接続することができ、又は、外部コンピュータに接続することができる(例えばインターネットサービスプロバイダを使用してインターネットに接続する)。
なお、本発明のより好ましい実施例及び運用された技術原理のみであることに気づかなければならない。当業者であれば、本発明はここに記載の特定の実施例に限定されず、当業者にとっては本発明の保護範囲を離脱せず、様々な明らかな変化、再度の調整及び切り替えを行うことができることが理解できるはずである。したがって、上記の実施例を通じて本発明をより詳細に説明したが、本発明は上記の実施例に限定されず、本発明の思想を離脱しない前提で、より多くの他の等価の実施例を含むことができるが、本発明の範囲は特許請求の範囲によって決定される。

Claims (15)

  1. 目標ウェブページに対応するウェブページソースコードデータを取得するステップと、
    前記ウェブページソースコードデータにおいて、少なくとも一つのキー値ペアを含む少なくとも一つのキー値ブロックを識別するステップと、
    前記ウェブページソースコードデータにおいて、前記少なくとも一つのキー値ブロックに対応するサブジェクト値を識別するステップと、
    前記キー値ブロックと前記キー値ブロックに対応するサブジェクト値とに基づいて、前記目標ウェブページに対応するエンティティ関係データを生成するステップと、を含み、
    前記ウェブページソースコードデータにおいて、前記少なくとも一つのキー値ブロックに対応するサブジェクト値を識別するステップが、
    現在処理中の目標キー値ブロックが主キー値ブロックであり、前記ウェブページソースコードデータに第1のタグ条件を満たすエンティティページノードが含まれていることが決定された場合、エンティティページのスコアリング規則に従って、前記目標ウェブページがエンティティページであるか否かを判断するステップと、
    前記目標ウェブページがエンティティページである場合、前記エンティティページノードに対応するテキストデータを前記目標キー値ブロックのサブジェクト値とするステップと、を含み、
    前記主キー値ブロックは、前記ウェブページソースコードデータに対応する少なくとも一つのキー値ブロックのうち、含まれたキー値ペアの数が一番多い一つのキー値ブロックであるエンティティ関係データ生成方法。
  2. 目標ウェブページに対応するウェブページソースコードデータを取得するステップと、
    前記ウェブページソースコードデータにおいて、少なくとも一つのキー値ペアを含む少なくとも一つのキー値ブロックを識別するステップと、
    前記ウェブページソースコードデータにおいて、前記少なくとも一つのキー値ブロックに対応するサブジェクト値を識別するステップと、
    前記キー値ブロックと前記キー値ブロックに対応するサブジェクト値とに基づいて、前記目標ウェブページに対応するエンティティ関係データを生成するステップと、を含み、
    前記ウェブページソースコードデータにおいて、前記少なくとも一つのキー値ブロックに対応するサブジェクト値を識別するステップが、
    現在処理中の目標キー値ブロックに含まれたキー値ペアのキー名を、設定されたホワイトリストとマッチングするステップと、
    前記目標キー値ブロックに含まれた目標キー名が前記ホワイトリストにマッチングされると決定された場合、前記目標キー名に対応する目標キー値を、前記目標キー値ブロックのサブジェクト値として取得するステップと、を含むエンティティ関係データ生成方法。
  3. 目標ウェブページに対応するウェブページソースコードデータを取得するステップと、
    前記ウェブページソースコードデータにおいて、少なくとも一つのキー値ペアを含む少なくとも一つのキー値ブロックを識別するステップと、
    前記ウェブページソースコードデータにおいて、前記少なくとも一つのキー値ブロックに対応するサブジェクト値を識別するステップと、
    前記キー値ブロックと前記キー値ブロックに対応するサブジェクト値とに基づいて、前記目標ウェブページに対応するエンティティ関係データを生成するステップと、を含み、
    前記ウェブページソースコードデータにおいて、前記少なくとも一つのキー値ブロックに対応するサブジェクト値を識別するステップが、
    前記目標ウェブページのユニフォームリソースロケータに基づいて、前記目標ウェブページに対応する目標サイトを決定するステップと、
    予め記憶されている前記目標サイトに対応する少なくとも一つの候補テンプレートを取得し、前記候補テンプレートに基づいて現在処理中のキー値ブロックに対応するサブジェクト値を識別するステップと、を含み、
    前記目標サイト内の候補テンプレートは、前記目標サイトの複数のウェブページをキー値ペア識別した後、識別結果によって生成されたものであるエンティティ関係データ生成方法。
  4. 前記ウェブページソースコードデータにおいて、少なくとも一つのキー値ブロックを識別するステップ
    基礎解析ツールを使用して、前記ウェブページソースコードデータをデータ解析し、少なくとも一つの基礎キー値ペアを取得して、キー値ペアセットに追加するステップと、
    前記基礎キー値ペアをキー値ペア拡張し、少なくとも一つの拡張キー値ペアを取得して、前記キー値ペアセットに追加するステップと、
    前記キー値ペアセットに含まれたキー値ペアを併合処理して、前記少なくとも一つのキー値ブロックを取得するステップと、を含む請求項1から3のいずれか一項に記載のエンティティ関係データ生成方法。
  5. 前記基礎キー値ペアをキー値ペア拡張し、少なくとも一つの拡張キー値ペアを取得して、前記キー値ペアセットに追加するステップ
    前記ウェブページソースコードデータにおいて、前記基礎キー値ペアとマッチングされる基礎ノードの基礎xpathを取得し、xpathが前記基礎xpathと同一である拡張ノードを検索し、前記拡張ノードに対応するテキストデータを前記拡張キー値ペアとして取得するステップ、及び/又は、
    前記ウェブページソースコードデータにおいて、前記基礎キー値ペアとマッチングされる基礎ノードの基礎htmlタグを取得し、前記基礎htmlタグに基づいて、少なくとも一つの拡張htmlタグを決定し、前記ウェブページソースコードデータにおいて、前記拡張htmlタグとマッチングされる拡張ノードを検索し、前記拡張ノードに対応するテキストデータを前記拡張キー値ペアとして取得するステップ
    む請求項に記載のエンティティ関係データ生成方法。
  6. 前記キー値ペアセットに含まれたキー値ペアを併合処理して、前記少なくとも一つのキー値ブロックを取得するステップ
    前記キー値ペアセットにおけるキー値ペアの前記目標ウェブページにおけるページ位置を位置決めするステップと、
    ページ位置が連続される少なくとも二つのキー値ペアを一つのキー値ブロックに併合し入れるステップと、を含む請求項に記載のエンティティ関係データ生成方法。
  7. 前記キー値ペアセットに含まれたキー値ペアを併合処理して、前記少なくとも一つのキー値ブロックを取得するステップの後に、
    キー値ペアのフィルタリング規則に従って、前記少なくとも一つのキー値ブロックに含まれたキー値ペアをフィルタリング処理するステップと、
    キー値ブロックのフィルタリング規則に従って、前記少なくとも一つのキー値ブロックをフィルタリング処理するするステップと、
    を含む請求項に記載のエンティティ関係データ生成方法。
  8. 前記ウェブページソースコードデータにおいて、前記少なくとも一つのキー値ブロックに対応するサブジェクト値を識別するステップの後に、
    少なくとも一つの統計チェックテンプレート及び少なくとも一つの規則チェックテンプレートを使用して、前記少なくとも一つのキー値ブロックに対応するサブジェクト値に基づいて、前記少なくとも一つのキー値ブロックをフィルタリングするステップを含む請求項1から7のいずれか一項に記載のエンティティ関係データ生成方法。
  9. 前記目標ウェブページのユニフォームリソースロケータに対応する目標サイト内の各ウェブページにおいて、識別されたキー値ブロックに対応するサブジェクト値を処理サブジェクト値としてそれぞれ取得するステップと、
    xpathが同一である目標処理サブジェクト値の数が第1の数閾値を超える場合、前記目標サブジェクト値のxpathと、前記目標サブジェクト値にそれぞれ対応するキー値ブロックとに基づいて、少なくとも一つの予備統計チェックテンプレートを構築するステップと、
    予備統計チェックテンプレートにそれぞれ対応するキー値ブロックを取得するステップと、
    一つの目標予備統計チェックテンプレートに対応する複数のキー値ブロックのうち同一のキー値ブロックの数が第2の数閾値を超える場合、前記予備統計チェックテンプレートにおいて当該目標予備統計チェックテンプレートを削除して、前記統計チェックテンプレートを取得するステップと、
    を含む請求項に記載のエンティティ関係データ生成方法。
  10. 前記キー値ブロックと前記キー値ブロックに対応するサブジェクト値とに基づいて、前記目標ウェブページに対応するエンティティ関係データを生成するステップ
    前記キー値ブロックに含まれた各キー値ペアと、前記キー値ブロックに対応するサブジェクト値と、をそれぞれ組み合わせて、トリプルデータを構築するステップと、
    前記トリプルデータに含まれたキー名をサブジェクトオブジェクト関係値とし、キー名に対応するキー値をオブジェクト値として、前記エンティティ関係データを生成するステップと、
    を含む請求項1から3のいずれか一項に記載のエンティティ関係データ生成方法。
  11. 目標ウェブページに対応するウェブページソースコードデータを取得するためのソースコード取得モジュールと、
    前記ウェブページソースコードデータにおいて、少なくとも一つのキー値ペアを含む少なくとも一つのキー値ブロックを識別するためのキー値ブロック識別モジュールと、
    前記ウェブページソースコードデータにおいて、前記少なくとも一つのキー値ブロックに対応するサブジェクト値を識別するためのサブジェクト値識別モジュールと、
    前記キー値ブロックと前記キー値ブロックに対応するサブジェクト値とに基づいて、前記目標ウェブページに対応するエンティティ関係データを生成するためのデータ生成モジュールと、
    備え、
    前記サブジェクト値識別モジュールが、
    現在処理中の目標キー値ブロックが主キー値ブロックであり、前記ウェブページソースコードデータに第1のタグ条件を満たすエンティティページノードが含まれていることが決定された場合、エンティティページのスコアリング規則に従って、前記目標ウェブページがエンティティページであるか否かを判断し、
    前記目標ウェブページがエンティティページである場合、前記エンティティページノードに対応するテキストデータを前記目標キー値ブロックのサブジェクト値とし、
    前記主キー値ブロックは、前記ウェブページソースコードデータに対応する少なくとも一つのキー値ブロックのうち、含まれたキー値ペアの数が一番多い一つのキー値ブロックであるエンティティ関係データ生成装置。
  12. 目標ウェブページに対応するウェブページソースコードデータを取得するためのソースコード取得モジュールと、
    前記ウェブページソースコードデータにおいて、少なくとも一つのキー値ペアを含む少なくとも一つのキー値ブロックを識別するためのキー値ブロック識別モジュールと、
    前記ウェブページソースコードデータにおいて、前記少なくとも一つのキー値ブロックに対応するサブジェクト値を識別するためのサブジェクト値識別モジュールと、
    前記キー値ブロックと前記キー値ブロックに対応するサブジェクト値とに基づいて、前記目標ウェブページに対応するエンティティ関係データを生成するためのデータ生成モジュールと、
    を備え、
    前記サブジェクト値識別モジュールが、
    現在処理中の目標キー値ブロックに含まれたキー値ペアのキー名を、設定されたホワイトリストとマッチングし、
    前記目標キー値ブロックに含まれた目標キー名が前記ホワイトリストにマッチングされると決定された場合、前記目標キー名に対応する目標キー値を、前記目標キー値ブロックのサブジェクト値として取得するエンティティ関係データ生成装置。
  13. 目標ウェブページに対応するウェブページソースコードデータを取得するためのソースコード取得モジュールと、
    前記ウェブページソースコードデータにおいて、少なくとも一つのキー値ペアを含む少なくとも一つのキー値ブロックを識別するためのキー値ブロック識別モジュールと、
    前記ウェブページソースコードデータにおいて、前記少なくとも一つのキー値ブロックに対応するサブジェクト値を識別するためのサブジェクト値識別モジュールと、
    前記キー値ブロックと前記キー値ブロックに対応するサブジェクト値とに基づいて、前記目標ウェブページに対応するエンティティ関係データを生成するためのデータ生成モジュールと、
    を備え、
    前記サブジェクト値識別モジュールが、
    前記目標ウェブページのユニフォームリソースロケータに基づいて、前記目標ウェブページに対応する目標サイトを決定し、
    予め記憶されている前記目標サイトに対応する少なくとも一つの候補テンプレートを取得し、前記候補テンプレートに基づいて現在処理中のキー値ブロックに対応するサブジェクト値を識別し、
    前記目標サイト内の候補テンプレートは、前記目標サイトの複数のウェブページをキー値ペア識別した後、識別結果によって生成されたものであるエンティティ関係データ生成装置。
  14. 一つ又は複数のプロセッサと、
    一つ又は複数のプログラムを記憶するための記憶装置と、
    備え
    前記一つ又は複数のプログラムが前記一つ又は複数のプロセッサによって実行されると、前記一つ又は複数のプロセッサが、請求項1から10のいずれか一項に記載のエンティティ関係データ生成方法を実現するコンピュータ機器。
  15. コンピュータプログラムが記憶されているコンピュータ読み取り可能な記憶媒体であって、
    当該プログラムがプロセッサによって実行される場合、請求項1から10のいずれか一項に記載のエンティティ関係データ生成方法が実現されることを特徴とする、コンピュータ読み取り可能な記憶媒体。
JP2019143724A 2018-08-15 2019-08-05 エンティティ関係データ生成方法、装置、機器、及び記憶媒体 Active JP6901816B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810928930.1A CN109325201A (zh) 2018-08-15 2018-08-15 实体关系数据的生成方法、装置、设备及存储介质
CN201810928930.1 2018-08-15

Publications (2)

Publication Number Publication Date
JP2020027649A JP2020027649A (ja) 2020-02-20
JP6901816B2 true JP6901816B2 (ja) 2021-07-14

Family

ID=65263682

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019143724A Active JP6901816B2 (ja) 2018-08-15 2019-08-05 エンティティ関係データ生成方法、装置、機器、及び記憶媒体

Country Status (5)

Country Link
US (1) US11321421B2 (ja)
EP (1) EP3611631A1 (ja)
JP (1) JP6901816B2 (ja)
KR (1) KR102237702B1 (ja)
CN (1) CN109325201A (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109325201A (zh) * 2018-08-15 2019-02-12 北京百度网讯科技有限公司 实体关系数据的生成方法、装置、设备及存储介质
CN110263342A (zh) * 2019-06-20 2019-09-20 北京百度网讯科技有限公司 实体的上下位关系的挖掘方法和装置、电子设备
CN112925856B (zh) * 2019-12-06 2023-09-19 中国移动通信集团重庆有限公司 实体关系分析方法、装置、分析设备及计算机存储介质
CN111241209B (zh) * 2020-01-03 2023-07-11 北京百度网讯科技有限公司 用于生成信息的方法和装置
CN111309200B (zh) 2020-01-17 2021-11-12 百度在线网络技术(北京)有限公司 一种扩展阅读内容的确定方法、装置、设备及存储介质
CN111339125B (zh) * 2020-02-24 2023-07-25 浪潮软件科技有限公司 数据查询方法及装置
CN111309972B (zh) * 2020-02-25 2023-06-30 深圳市元征科技股份有限公司 一种数据处理方法、装置、终端设备及存储介质
CN113538450B (zh) * 2020-04-21 2023-07-21 百度在线网络技术(北京)有限公司 用于生成图像的方法及装置
CN111967387B (zh) * 2020-08-17 2023-05-26 北京市商汤科技开发有限公司 表单识别方法、装置、设备及计算机可读存储介质
CN112732196B (zh) * 2021-01-13 2023-04-28 同盾科技有限公司 规则数据存储方法、装置及存储介质
CN113312489B (zh) * 2021-04-13 2023-05-05 武汉烽火众智数字技术有限责任公司 一种基于nlp和图数据库的全景检索系统及方法
US20230004579A1 (en) * 2021-07-02 2023-01-05 Viettel Group Method of controlling and handling a set of conditions in an event handling system with many complex internal conditions
CN114065765A (zh) * 2021-10-29 2022-02-18 北京来也网络科技有限公司 结合ai和rpa的武器装备文本处理方法、装置及电子设备
CN116975067B (zh) * 2023-09-21 2023-12-26 北京四维纵横数据技术有限公司 无模式数据存储方法、装置、计算机设备及介质

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030221162A1 (en) * 2000-03-20 2003-11-27 Sridhar Mandayam Andampillai Meta-templates in website development and methods therefor
US6993534B2 (en) * 2002-05-08 2006-01-31 International Business Machines Corporation Data store for knowledge-based data mining system
US8117203B2 (en) * 2005-07-15 2012-02-14 Fetch Technologies, Inc. Method and system for automatically extracting data from web sites
JP4427500B2 (ja) * 2005-09-29 2010-03-10 株式会社東芝 意味解析装置、意味解析方法および意味解析プログラム
WO2007137145A2 (en) * 2006-05-17 2007-11-29 Newsilike Media Group, Inc Certificate-based search
WO2008146807A1 (ja) * 2007-05-31 2008-12-04 Nec Corporation オントロジ処理装置、オントロジ処理方法、及びオントロジ処理プログラム
US20100057586A1 (en) * 2008-09-04 2010-03-04 China Software Venture Offer Reporting Apparatus and Method
US8826443B1 (en) * 2008-09-18 2014-09-02 Symantec Corporation Selective removal of protected content from web requests sent to an interactive website
US20100169311A1 (en) * 2008-12-30 2010-07-01 Ashwin Tengli Approaches for the unsupervised creation of structural templates for electronic documents
JP2010198058A (ja) * 2009-02-23 2010-09-09 Newswatch Inc 文書処理システム及び方法
JP5325635B2 (ja) * 2009-03-30 2013-10-23 株式会社野村総合研究所 メタデータ自動付与システム及び方法
US8700682B2 (en) * 2009-12-24 2014-04-15 Vertafore, Inc. Systems, methods and articles for template based generation of markup documents to access back office systems
US8555157B1 (en) * 2010-01-21 2013-10-08 Google Inc. Document update generation
US8560610B2 (en) * 2010-06-16 2013-10-15 Brighttag Inc. Unified collection and distribution of data
GB2486002A (en) * 2010-11-30 2012-06-06 Youview Tv Ltd Media Content Provision
GB201108709D0 (en) * 2011-05-24 2011-07-06 Corethree Ltd Core engine
US8793273B1 (en) * 2011-06-29 2014-07-29 Google Inc. Parsing framework method and device
US20130031457A1 (en) * 2011-07-28 2013-01-31 Peter Griffiths System for Creating and Editing Temporal Annotations of Documents
US10129211B2 (en) * 2011-09-15 2018-11-13 Stephan HEATH Methods and/or systems for an online and/or mobile privacy and/or security encryption technologies used in cloud computing with the combination of data mining and/or encryption of user's personal data and/or location data for marketing of internet posted promotions, social messaging or offers using multiple devices, browsers, operating systems, networks, fiber optic communications, multichannel platforms
JP5756386B2 (ja) * 2011-09-30 2015-07-29 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 動的なウェブ・アプリケーションの問題を修正するメタデータの生成・管理の支援方法、装置、およびプログラム
KR101510647B1 (ko) * 2011-10-07 2015-04-10 한국전자통신연구원 이슈 템플릿 추출 기반의 웹 동향 분석 방법 및 장치
US10289658B1 (en) * 2013-03-13 2019-05-14 Ca, Inc. Web page design scanner
US10061687B2 (en) * 2014-06-17 2018-08-28 Paypal, Inc. Self-learning and self-validating declarative testing
US11080295B2 (en) * 2014-11-11 2021-08-03 Adobe Inc. Collecting, organizing, and searching knowledge about a dataset
CN104516949B (zh) * 2014-12-10 2018-12-25 北京百度网讯科技有限公司 网页数据处理方法和装置、查询处理方法及问答系统
US9596265B2 (en) * 2015-05-13 2017-03-14 Google Inc. Identifying phishing communications using templates
CN104933168B (zh) * 2015-06-30 2018-08-14 南京烽火星空通信发展有限公司 一种网页内容自动采集方法
US10769426B2 (en) * 2015-09-30 2020-09-08 Microsoft Technology Licensing, Llc Inferring attributes of organizations using member graph
CN107169079B (zh) * 2017-05-10 2019-09-20 浙江大学 一种基于Deepdive的领域文本知识抽取方法
CN107590219A (zh) * 2017-09-04 2018-01-16 电子科技大学 网页人物主题相关信息提取方法
US10810110B1 (en) * 2018-01-25 2020-10-20 Intuit Inc. Methods, systems, and articles of manufacture for testing web services using a behavior-driven development domain specific language framework
CN108363816A (zh) * 2018-03-21 2018-08-03 北京理工大学 基于句义结构模型的开放式实体关系抽取方法
US10885018B2 (en) * 2018-05-07 2021-01-05 Microsoft Technology Licensing, Llc Containerization for elastic and scalable databases
CN109325201A (zh) * 2018-08-15 2019-02-12 北京百度网讯科技有限公司 实体关系数据的生成方法、装置、设备及存储介质

Also Published As

Publication number Publication date
JP2020027649A (ja) 2020-02-20
US20200057788A1 (en) 2020-02-20
KR20200019824A (ko) 2020-02-25
US11321421B2 (en) 2022-05-03
KR102237702B1 (ko) 2021-04-08
EP3611631A1 (en) 2020-02-19
CN109325201A (zh) 2019-02-12

Similar Documents

Publication Publication Date Title
JP6901816B2 (ja) エンティティ関係データ生成方法、装置、機器、及び記憶媒体
CN106919655B (zh) 一种答案提供方法和装置
US10755048B2 (en) Artificial intelligence based method and apparatus for segmenting sentence
CN107992585B (zh) 通用标签挖掘方法、装置、服务器及介质
JP2020520485A (ja) 視覚的分析との相互作用のため語用論の原理を適用するシステムおよび方法
US8577882B2 (en) Method and system for searching multilingual documents
US20220318275A1 (en) Search method, electronic device and storage medium
JP7301922B2 (ja) 意味検索方法、装置、電子機器、記憶媒体およびコンピュータプログラム
EP3343400A1 (en) System and method for dynamically creating a domain ontology
US10437894B2 (en) Method and system for app search engine leveraging user reviews
CN112287069B (zh) 基于语音语义的信息检索方法、装置及计算机设备
WO2021134524A1 (zh) 数据处理方法、装置、电子设备和存储介质
CN112131881B (zh) 信息抽取方法及装置、电子设备、存储介质
US9940355B2 (en) Providing answers to questions having both rankable and probabilistic components
CN107861948B (zh) 一种标签提取方法、装置、设备和介质
CN110825941A (zh) 一种内容管理系统识别方法、装置和存储介质
CN113986864A (zh) 日志数据处理方法、装置、电子设备及存储介质
US20230114673A1 (en) Method for recognizing token, electronic device and storage medium
CN112579729A (zh) 文档质量评价模型的训练方法、装置、电子设备和介质
JP2023544925A (ja) データ評価方法、トレーニング方法および装置、電子機器、記憶媒体、コンピュータプログラム
CN114141384A (zh) 用于检索医学数据的方法、设备和介质
CN116383412B (zh) 基于知识图谱的功能点扩增方法和系统
KR102483004B1 (ko) 유해 url 탐지 방법
CN115858776A (zh) 一种变体文本分类识别方法、系统、存储介质和电子设备
US20140164432A1 (en) Ontology enhancement method and system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190805

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200929

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201218

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210616

R150 Certificate of patent or registration of utility model

Ref document number: 6901816

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150