最近在做知识图谱方面的工作,刚刚接触,感觉还是比较有趣的,整理一下自己的所学吧。后面会持续更新这一个专栏。
什么是知识图谱?知识图谱,本质上,是一种揭示实体之间关系的语义网络。
从定义上来看,是比较抽象的一个概念,下面我们来举个例子。
如果你看过网络综艺《奇葩说》第五季第17期:你是否支持全人类一秒知识共享,你也许会被辩手陈铭的辩论印象深刻。他在节目中区分了信息和知识两个概念:
信息是指外部的客观事实。举例:这里有一瓶水,它现在是7°。
知识是对外部客观规律的归纳和总结。举例:水在零度的时候会结冰。
“客观规律的归纳和总结” 似乎有些难以实现。Quora 上有另一种经典的解读,区分 “信息” 和 “知识” 。
有了这样的参考,我们就很容易理解,在信息的基础上,建立实体之间的联系,就能形成 “知识”。当然,我认为叫事实(Fact)更为合适。换句话说,知识图谱是由一条条知识组成,每条知识表示为一个SPO三元组(Subject-Predicate-Object)。
知识图谱的作用?知识图谱的作用:
1、辅助搜索
2、辅助问答
3、辅助决策
4、辅助AI:常识推理
知识图谱的深度学习的区别:
人的大脑依赖所学的知识进行思考、逻辑推理、理解语言。
可以将深度学习和知识图谱比作是“聪明的AI”和“有学识的AI”。
1、深度学习:主要是【学习】能力,通过强大的计算能力,感知、识别、判断来进行学习。
2、知识图谱:主要是【推理】能力,通过已有的规则和知识,思考、语言、推理来进行学习。
在github上找了一个开源的构建知识图谱的项目,实现了一下。
链接:https://github.com/lemonhu/open-entity-relation-extraction
这个项目所需要的环境是Python3.5以上,我装了Python3.6,并安装了下面两个包,
jieba>=0.39
pyltp>=0.2.1
在装pyltp这个包的时候我发现了一些问题,这个包的安装不能直接pip install pyltp 或者 conda install pyltp
而是参考下面的方式安装这个包:
https://www.cnblogs.com/huiyichanmian/p/10844285.html
安装完毕就可以运行啦。
输入的数据是文本,里面包含了几个句子。
输出的数据将输入的句子编了号,并提取出了知识,存放在字典里。
我们来看一下输入和输出。
END新浪微博:@苏盏Esian哔哩哔哩: 丨日月星辰丨你的每个赞和在看,我都喜欢!