DeepDive:从非结构化数据建立结构化信息并集成到已有数据库的工具


简介

DeepDive是一个混乱数据中抽取有效数据的系统。混乱的数据包括混合在文本、表格和图片等中的非结构化数据而难以被软件处理。DeepDive帮助从非结构化数据中抽取数据并整合到已有的结构化数据库中。DeepDive被用来抽取数据实体中的复杂关系并且推断出他们之间的联系。数据被抽取到数据库中后,大家就可以使用一系列常用工具,例如Tablaeu和Excel等可视化分析工具进行数据处理。

主要功能

DeepDive是一类新型的数据管理系统让人们能够解决数据抽取、整合和预测问题,最终建立一个复杂的端到端的数据通道,比如非结构化数据BI系统。通过帮助用户建立他们的端到端系统,DeepDive可以让用户专注于提升他们应用质量的那部分工作。之前的一些系统要求开发者完成抽取、整合和其他模块而忽视了如何提升他们数据产品的质量。DeepDive的关键点是如何在更短的时间内提供更高质量的数据。

基于DeepDive的系统可以被没有机器学习经验的用户使用包括古生物学、基因学甚至人口贩卖研究等。DeepDive是一个使用机器学习算法的训练系统来减少各种形式的噪音和不确定性。通过Mindtagger接口、基于规则的丰富的结构化领域的知识让用户能够在较低的反馈下完成系统训练的工作。DeepDive是要让没有机器学习实践的专家们也能使用它。它的一个关键的技术创新包括解决大范围的概率统计推断问题。它和传统的系统几个不一样的地方在于:

  • DeepDive要求开发者思考特征而不是算法,而其他机器学习系统要求开发者思考聚类算法、分类算法的使用等。而DeepDive基于联合推理的算法让用户只需要关心信号或者特征本身。
  • DeepDive系统能够获得更高的质量:PaleoDeepDive在科学领域知识抽取能力和实体关系抽取能力上比人类更胜一筹。
  • DeepDive很明确的知道数据经常有噪声和误差:名字被误拼、自然语言有多意或者人类自己犯错。通过考虑这些误差,DeepDive为每一个决断进行复杂的可能性计算。比如如果DeepDive告知可能性为0.9,那么证明事实为真的概率为90%。
  • DeepDive可以把多种数据源作为数据的来源,如文档、网页、PDF、图表和表格。
  • DeepDive允许特定领域的开发者使用简单的规则来影响极其学习的过程以提升结果的质量。DeepDive也考虑到用户的反馈来更正预测的准确度来更加精准的预测。
  • DeepDive能够使用数据来立即学习。大部分的机器学习系统需要为每一次预测构建大量的训练,而许多DeepDive应用,尤其是早期,可以完全不需要训练数据。
  • DeepDive的关键在于其可扩展性、优质的推理和学习引擎。过去的几年中,我们努力提升现有算法的运行速度。在这个项目中应用到的技术包括部分商业和开源工具:MADlib、Impala(Oracle的一款产品产品)和底层工具如Hogwild,它们同时也被微软的Adam和其他主要的网络公司集成。

使用者

用户需要熟悉DDlog或者SQL来使用关系型数据库,熟悉Python来构建DeepDive应用或者将DeepDive和其他工具进行整合。一个想要参与修改和提升DeepDive项目本身的开发者需要具备开发者手册中的技能。

资源

协议

DeepDive遵循Apache 2,0开源协议发布。

官方网站:http://deepdive.stanford.edu/
开源地址:https://github.com/HazyResearch/deepdive

1 收藏

资源整理者简介:beyondwu

简介还没来得及写 :) 个人主页 · 贡献了14个资源 · 1


直接登录

推荐关注

按分类快速查找

关于资源导航
  • 伯乐在线资源导航收录优秀的工具资源。内容覆盖开发、设计、产品和管理等IT互联网行业相关的领域。目前已经收录 1439 项工具资源。
    推送伯乐头条热点内容微信号:jobbole 分享干货的技术类微信号:iProgrammer