Coder Social home page Coder Social logo

paper-study's People

Watchers

 avatar  avatar

paper-study's Issues

Architecture of Knowledge GraphConstruction Techniques

論文情報

[https://acadpubl.eu/jsi/2018-118-19/articles/19b/24.pdf]

概要

knowledge graph(KG)の構築に関するsurvey.

Architecture of Knowledge Graphs

KGの構築方法は大まかにtop-down方式とbottom-up方式に分けられる.

top-down方式はKGのontologyとschemaがあらかじめ定義されており,そこに新たな情報を追加していくというもの.ドメインをよく表現できるontologyの定義ついて議論されることが多い.

一方,bottom-up方式では,Linked Open Data(Wikiとか?)や他の知識ソース(テキストとか?)から情報の抽出及びKGの構築を行う.

この論文では主にbottom-up方式について解説をする.

Screen Shot 2020-10-19 at 20 39 47

Procedures of Bottom-up ApproachofKnowledge Graphs

bottom-upアプローチを構成する手法について解説する

Knowledge Extraction

data sources

主なデータソースとしてはhtml, xml, jsonのような構造データ,フリーテキストや画像のような非構造データがある.これらのデータを,機械が理解しやすいRDFやJSON-LDformatに落とす.

初期のKGでは,単一のソースのみから情報抽出を行っていた.例えば,医療の分野では,診療録や医学雑誌などを対象にしていた.

一方で大規模KGの構築では様々なデータソースから情報抽出を行う.例えば,Google Knowledge Vaultはテキスト,HTML tree,HTML tables,人間がアノテーションしたページなどをソースとしていた.最近では特に,Wikipediaなどの情報抽出が非常に行いやすいソースが重要視されている.YAGOやDBpediaはWikipediaをソースとしている代表例である.

その他,医療業界など特定ドメインのKGにおいてもWikipediaは利用されている.

Wikipediaの他にも,WordNetやGeoNames, Concept Net, IMDB, MusicBrainzなども良いソースであると言える.

Types of Knowledge Extraction

extractionの手法は大まかに3つに分けられる.

  • Entity extration
  • Relation extraction
  • Attribute extraction

attribute extractionはrealtion extractionの特別な場合とも言える

Entity Extractionとはknowledge resourceからエンティティを見つけ,事前に定義されているカテゴリに分類する作業である.Entity Extractionの質は後続の処理に大きく関わるため,Knowledge Extractionの中でも最も重要なパートと言える.

Entity Extractionの後,entity間のrelationの解析を行い,relation extractionを行う.

relation extractionがdenotational semanticsを定義するのに対し,attribute extrationはエンティティのintentional semanticsを定義する(よくわからない.エンティティの属性をより明確に表す情報を取り出すということか?).

Approaches of Knowledge Extraction

Knowledge Extractionの手法は以下の分野と関わりが強い.

  • NLP
  • text mining
  • machine learning

初期のKnowledge Extrationは,人手でアノテーションされたコーパスに対してルールベース,辞書ベースの手法を適用することで行っていた.

機械学習的アプローチでは人手で訓練データセットを作って教師あり学習をするケースが多いが,アノテーションに多くの専門家と時間がが必要であることから,結果として得られるコーパスは小さくなりがちなため,KEとはミスマッチ感がある.また,教師あり学習アプローチは対応できる範囲が既存のコーパスの範囲内のみであり,新たなエンティティへの対応が必要なKEには利用しづらい.

近年では,アノテーションのコストを避けられる反教師あり,もしくは教師なし学習が主に研究されている.
主に以下のような分類モデルが利用されている

  • Hidden Markov Model
  • CRF
  • kNN
  • Maximum Entropy Model
  • SVM

評価指標としてはF-measureが主に利用される.

Knowledge Fusion

Knowledge Fusionのゴールはエンティティの順序関係を捉え,オントロジーを構築することである.これはiterativeに行われる.オントロジーの構築プロセスは,結果の質が一定の評価基準を超えるまで繰り返される.

Entity Alighment

Entity AlighmentはEntity Resolution,Entity Matchingなどとも呼ばれたりする.
具体的には異なるEntityが現実世界における同一のオブジェクトを指すかなどの判断を行う作業である.
Entity Alighmentでは通常,複数のEntity Matchingの手法をKGの特性に合わせて組み合わせて用いることをする.

以下がEntity Alighmentのフロー.

Screen Shot 2020-10-19 at 16 52 58

Data Processingはデータのstandardizationなどとも呼ばれ,Entity Alighmentの中の重要なステップの一つであり,以下のような問題に対応する必要がある.

  • 複数のソース上で異なる名称として存在する,定義が異なる,データの表現方法が異なるなどの問題に対応し,データの完全性,一貫性を保つ

Entity Alighmentのためには主にEntityの持つテキスト情報などのattributeから求められる類似度を使うfeature matchingが利用される.

Attributeのmatchや比較のためにはテキスト類似度が用いられ,relationのmatchなどには構造的類似度が用いられる

Entity Alighmentは,通常はWikipediaやentity情報などの外部情報に依存している.

近年では他のKGを補助情報として知識推論を行う手法などの研究が行われている.

Ontology Construction and Evaluation

KG構築のためには, entity及びrelationのalignの他にも次のような作業が必要となる.

  • taxonomy(分類体系)や階層構造のの構築
  • metadataの追加
  • 他のデータソースの情報の追加

KGの質の担保のため,オントロジーにはFOAFのような一般的なものを使い,また,metadataはschema.orgに対応することが必須となる.

感想・わからなかった部分

  • KGの質の評価の具体的方法

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.