实体匹配的深度学习包
deepmatcher的Python项目详细描述
deepmatcher是一个python包,用于使用深度学习执行实体和文本匹配。 它提供内置的神经网络和实用程序,使您能够训练和应用 最先进的深度学习模型,实体匹配不到10行代码。 模型也很容易定制-模块化设计允许任何子组件 更改或交换为自定义实现。
例如,给定标记的元组对,如下所示:
DeepMatcher使用标记的元组对并训练一个神经网络来执行匹配,即 预测匹配/不匹配标签。然后可以使用经过训练的网络获取 未标记元组对。
纸张和数据
有关所用模型的体系结构的详细信息,请看我们的论文Deep Learning for Entity Matching(sigmod'18)。中使用的所有公共数据集 论文可以从datasets page下载。
快速启动:30秒后进入DeepMatcher
使用DeepMatcher有四个主要步骤:
- 数据处理:加载和处理标记的培训、验证和测试csv数据。
importdeepmatcherasdmtrain,validation,test=dm.data.process(path='data_directory',train='train.csv',validation='validation.csv',test='test.csv')
- 模型定义:指定神经网络架构。使用内置混合动力 默认情况下为模型(如our paper的第4.4节所述)。罐头 根据你内心的渴望定制。
model=dm.MatchingModel()
- 模型训练:训练神经网络。
model.run_train(train,validation,best_save_path='best_model.pth')
- 应用:在测试集上评估模型,并应用于未标记的数据。
model.run_eval(test)unlabeled=dm.data.process_unlabeled(path='data_directory/unlabeled.csv',trained_model=model)model.run_prediction(unlabeled)
安装
我们目前只支持python版本3.5和3.6。建议使用PIP安装:
pip install deepmatcher
请注意,在安装过程中,您可能会看到一条错误消息,显示“Failed Building Wheel for FastTextMirror”。您可以放心地忽略这一点-这并不意味着安装有任何问题。
教程
使用deepmatcher:
- Getting Started:更深入的指南,帮助您熟悉 使用DeepMatcher。
- Data Processing:关于数据处理涉及哪些内容以及如何 定制它。
- Matching Models:实体匹配神经网络体系结构高级指南 以及如何定制它。
实体匹配工作流:
End to End Entity Matching:开发完整实体的指南 匹配工作流。本教程讨论如何使用deepmatcher和Magellan来 执行阻塞、采样、标记和匹配以从两个 桌子。
deepmatcher用于其他匹配任务:
Question Answering with DeepMatcher:关于如何使用deepmatcher进行提问的教程 回答。具体来说,我们将查看WikiQA,这是一个基准数据集,用于 答案选择。
API参考
api文档are here。
支架
这个包正在积极开发中。如果你遇到任何问题, 请file GitHub issues。
团队
DeepMatcher是由威斯康星大学麦迪逊分校的研究生Sidharth Mudgal开发的 韩莉,在安海道恩教授和西奥多罗雷卡西纳斯教授的监督下。