Table of Contents

Author weiwu (victor.wuv@gmail.com)
Date 2018-04-12 13:41:16
Title  

1 知识提取

知识提取是要解决结构化数据生成的问题。但是广义上讲,知识提取是数据质量提升中的一环,各种提升数据质量的方法,都可以视为某种知识提取。学术上一般是用自然语言处理的方法,但在实践中通常是利用规则。

我们要熟悉的概念和工具有

1.3 命名实体识别

综合分词工具和正则表达式提取邮件签名档

2 知识表示

知识表示是如何组织数据的结构,以方便推导出新的结构的方法。传统上属于逻辑的分支,但在实践中我们会用很简单、可读、可维持的数据结构。

实体抽取,实体链接,对齐,消歧,关系抽取

2.1 JSON和YAML

在Python中使用JSON超级简单,JSON和Python的字典很像,可以转换。看官方文档即可

掌握下面这些库会让你处理json和字典的时候更开心

YAML在我看来比JSON的可读性更好,更加Pythonic(因为其语法接近Python)。当然有人可能会不喜欢缩进,不过Python社区的智力一般比较高,不会有这种偏见。YAML里可以有节点之间的链接,因此可以表示图。此外yaml里可以写!注!释!我认为YAML是天然的最好的知识图谱表示语法。

2.2 RDF和OWL

Resource Description Framework: A framework designed for metadata data model, typically triples.

Web Ontology Language: An ontology is like a parent class.

2.3 JSON-LD

jason linked. 自己设计电子邮件的结构化表示

3 知识存储

知识存储解决如何管理大量的结构化数据。我们可以用不同的数据库工具。现代的关系数据库可能可以解决大多数需要知识图谱的场合。某些特殊场合,我们需要图数据库。

3.1 知识链接的方式:字符串、外键、URI

3.2 PostgreSQL及其JSON扩展

3.3 图数据库 Neo4j和OrientDB

3.4 RDF数据库Stardog

选择一种数据库存储自己的电子邮件

4 知识检索

知识检索提供对用户友好的交互。知识检索从简单到复杂可分为六级:关键词、词联想、词本体、短程关系、长程关系、自由问答。我们会实践前两个层次的技术,并了解后面四个层次。

4.1 Gensim实现主题模型

4.2 ElasticSearch

4.3 SearchKit构造分面浏览器

4.4 IBM Watson的架构

浏览和检索自己的电子邮件