これは私が記事は、いくつかのノートを作っhttps://zhuanlan.zhihu.com/knowledgegraphほとんどの列を知るために読んだものです。詳細な内容は、元の理解に行くことができます。
セマンティックネットワーク(意味ネットワーク)
知識を表すために相互接続されたノードとエッジを有します。ノードは、オブジェクト、概念、エッジは、ノード間の関係を表す表します。
利点:
1、理解しやすいと表示; 2、簡単なクラスタリングの概念
短所:
図1に示すように、ノードとエッジの値は標準的には、完全にユーザによって定義されます。
基準が定められていないので2、マルチソースのデータ統合は困難です。
図3は、概念ノードとオブジェクトノードを区別できません。
図4に示すように、ラベル(ラベル)のノードおよびエッジ上で定義することができません。
RDFは、2つの欠点1及び2を解き、ノードおよびエッジの値に統一規格を開発するために、制約をした、マルチソース・データの統合を容易にしました。
RDFSおよびOWL 3及び4は、2つの欠点を克服し、
セマンティックWeb(セマンティックウェブ)とリンクデータ(リンクデータ)
セマンティックWebは、機械可読のデータが提案されている一般的なフレームワークになるようにするためにネットワークです。「セマンティックは、」マシンがデータを理解できるように、データの背後にある意味を表現するために、より豊かな方法を使用することです。「ウェブ」は、これらのデータは膨大な情報ネットワークを形成するために相互にリンクされていることを期待、相互にリンクされているWebページなどのインターネットが、データの基本単位小さいサイズにあります。
マッピング知識(ナレッジグラフ)
スキーマ、RDFデータモデルと構造化データの互換性のあるセットとしてレイヤ(オントロジーに)身体によるマッピングの知識。
知識マップの礎:RDF
RDFの1、フォーム
本質的に、データモデルであるRDF(リソース記述フレームワーク)、すなわち、リソース記述フレームワーク(データ・モデル)。これは、/物理リソースを記述するための統一規格を提供します。単純に、この方法を入れて物事を表現することを意味します。RDFは、時にはステートメント(ステートメント)と呼ばれる、知識マップを3倍としてSPOが正式に表明以下に示すように、我々はまた、知識、それを呼び出します。
ノードとエッジのRDFは、ノードがエンティティ/リソース属性は、エンティティと、エンティティおよびエンティティと属性の関係こと側を示していることを示しています。
2、RDFシリアル化メソッド
RDF表現と種類は、次に我々は、RDFデータセットを作成する方法、(データRDFを保存し、送信するためにどのようSerialization-)、それをシリアル化していますか?現時点では、RDFシリアライゼーション主な方法:RDF / XML、N-トリプル、カメ、RDFaの、いくつかのJSON-LD。
- RDF / XML、名前が示唆するように、RDFデータを表現するためのXMLフォーマットを使用することです。この方法を行うための理由は、XML技術は比較的成熟しているということです保存し、XMLを解析するために多くの既製のツールがあります。しかし、それはRDF、XML形式のために読みやすいではない、長すぎる、我々は通常、RDFデータを扱うために、このメソッドを使用しないでください。
- N-トリプル、すなわち、RDF複数のデータセットを表すためにトリプル最も直観的な方法です。ファイルでは、各行は、三重容易解析および処理機械を表します。オープンフィールドマッピング知識DBpediaのは、この形式でデータを公開することは通常です。
- タートルは、RDFシリアライゼーション道のほとんどを使用する必要があります。これは、RDF / XMLは、N-トリプルよりも優れ、コンパクトで読みやすいです以上です。
- RDFaの、すなわち「属性におけるリソース記述フレームワークは、」 、 サイトビルダーはように、人、場所、時間、コメントと同様に、ページ上のエンティティをマークすることができますことができ、任意の表示を変更せずに、HTML5の拡張です。つまり、Webページに埋め込まれたRDFデータは、検索エンジンは、より良い、いくつかの有用な構造については、構造化されていないページを解決することができます。読者はこれに行くことができるページ RDFaを、一般ユーザの視覚的表示はページを見て、ブラウザや検索エンジンがページが構造化された情報を解析された参照感じ。
- JSON-LD、すなわち、RDFデータを格納されたキーと値のペアを介して、「データをリンクするためのJSON」。関心のある読者はこれを参照することができますウェブサイト。
N-トリプルを与えられている例とロナウド、タートルは、特異的に発現しました。
例1: N-Triples:
1 <http://www.kg.com/person/1> <http://www.kg.com/ontology/chineseName> "罗纳尔多·路易斯·纳萨里奥·德·利马"^^string. 2 <http://www.kg.com/person/1> <http://www.kg.com/ontology/career> "足球运动员"^^string. 3 <http://www.kg.com/person/1> <http://www.kg.com/ontology/fullName> "Ronaldo Luís Nazário de Lima"^^string. 4 <http://www.kg.com/person/1> <http://www.kg.com/ontology/birthDate> "1976-09-18"^^date. 5 <http://www.kg.com/person/1> <http://www.kg.com/ontology/height> "180"^^int. 6 <http://www.kg.com/person/1> <http://www.kg.com/ontology/weight> "98"^^int. 7 <http://www.kg.com/person/1> <http://www.kg.com/ontology/nationality> "巴西"^^string. 8 <http://www.kg.com/person/1> <http://www.kg.com/ontology/hasBirthPlace> <http://www.kg.com/place/10086>. 9 <http://www.kg.com/place/10086> <http://www.kg.com/ontology/address> "里约热内卢"^^string. 10 <http://www.kg.com/place/10086> <http://www.kg.com/ontology/coordinate> "-22.908333, -43.196389"^^string.
用Turtle表示的时候我们会加上前缀(Prefix)对RDF的IRI进行缩写。
example 2: Turtle:
@prefix person: <http://www.kg.com/person/> . @prefix place: <http://www.kg.com/place/> . @prefix : <http://www.kg.com/ontology/> . person:1 :chineseName "罗纳尔多·路易斯·纳萨里奥·德·利马"^^string. person:1 :career "足球运动员"^^string. person:1 :fullName "Ronaldo Luís Nazário de Lima"^^string. person:1 :birthDate "1976-09-18"^^date. person:1 :height "180"^^int. person:1 :weight "98"^^int. person:1 :nationality "巴西"^^string. person:1 :hasBirthPlace place:10086. place:10086 :address "里约热内卢"^^string. place:10086 :coordinate "-22.908333, -43.196389"^^string.
同一个实体拥有多个属性(数据属性)或关系(对象属性),我们可以只用一个subject来表示,使其更紧凑。我们可以将上面的Turtle改为:
example 3: Turtle:
@prefix person: <http://www.kg.com/person/> . @prefix place: <http://www.kg.com/place/> . @prefix : <http://www.kg.com/ontology/> . person:1 :chineseName "罗纳尔多·路易斯·纳萨里奥·德·利马"^^string; :career "足球运动员"^^string; :fullName "Ronaldo Luís Nazário de Lima"^^string; :birthDate "1976-09-18"^^date; :height "180"^^int; :weight "98"^^int; :nationality "巴西"^^string; :hasBirthPlace place:10086. place:10086 :address "里约热内卢"^^string; :coordinate "-22.908333, -43.196389"^^string.
即,将一个实体用一个句子表示(这里的句子指的是一个英文句号“.”)而不是多个句子,属性间用分号隔开。
3、RDF的表达能力
RDF的表达能力有限,无法区分类和对象,也无法定义和描述类的关系/属性。我的理解是,RDF是对具体事物的描述,缺乏抽象能力,无法对同一个类别的事物进行定义和描述。就以罗纳尔多这个知识图为例,RDF能够表达罗纳尔多和里约热内卢这两个实体具有哪些属性,以及它们之间的关系。但如果我们想定义罗纳尔多是人,里约热内卢是地点,并且人具有哪些属性,地点具有哪些属性,人和地点之间存在哪些关系,这个时候RDF就表示无能为力了。不论是在智能的概念上,还是在现实的应用当中,这种泛化抽象能力都是相当重要的;同时,这也是知识图谱本身十分强调的。RDFS和OWL这两种技术或者说模式语言/本体语言(schema/ontology language)解决了RDF表达能力有限的困境。
RDF的衣服——RDFS和OWL