隐藏对齐条件随机场,区分字符串编辑距离

pyhacrf-datamade的Python项目详细描述


https://travis-ci.org/dedupeio/pyhacrf.svg?branch=masterhttps://ci.appveyor.com/api/projects/status/kibqrd7wnsk2ilpf/branch/master?svg=true

用于字符串对分类的隐藏对齐条件随机场- 可学习的编辑距离。

该软件包旨在实现hacrf机器学习模型 sklearn-类接口。它包括使模型适合培训的方法 举例和得分新的例子。

该模型将字符串对作为输入,并将其分类为任意数字 班上的。在McCallum的原始论文中,模型被应用于 数据库重复数据消除问题。每个数据库条目都与 然后,每一个条目和模型都会对这对是否是 “匹配”或“不匹配”,基于匹配和 不匹配。

我还尝试使用它作为规范化的可学习字符串编辑距离。 嘈杂的文字。请参阅a条件随机场,用于区分训练 McCallum、Bellare和Pereira编写的有限状态字符串编辑距离, 以及报告用于噪声文本规范化的条件随机字段 作者:Dirko Coetsee。

示例

frompyhacrfimportStringPairFeatureExtractor,Hacrftraining_X=[('helloooo','hello'),# Matching examples('h0me','home'),('krazii','crazy'),('non matching string example','no really'),# Non-matching examples('and another one','yep')]training_y=['match','match','match','non-match','non-match']# Extract featuresfeature_extractor=StringPairFeatureExtractor(match=True,numeric=True)training_X_extracted=feature_extractor.fit_transform(training_X)# Train modelmodel=Hacrf(l2_regularization=1.0)model.fit(training_X_extracted,training_y)# Evaluatefromsklearn.metricsimportconfusion_matrixpredictions=model.predict(training_X_extracted)print(confusion_matrix(training_y,predictions))>[[03]>[20]]print(model.predict_proba(training_X_extracted))>[[0.949148120.05085188]>[0.923977110.07602289]>[0.867560340.13243966]>[0.054388120.94561188]>[0.026412750.97358725]]

依赖关系

这个包依赖于numpypylbfgs中的lbfgs优化器是 已使用,但可以传递其他优化器。

安装

通过运行安装:

python setup.py install

或者来自pypi:

pip install pyhacrf

开发

从存储库克隆,然后

pip install -r requirements.txt
cython pyhacrf/*.pyx
python setup.py install

要部署到pypi,请确保已将*.pyx文件编译到*.c

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何编写一个程序,返回一个字符串在另一个字符串中出现的次数?   @ManyToOne中的java JPA@ManyToOne无法正常工作   方法在Java中显示Eclipse中的错误,使用Maven可以很好地构建   在java中如何逆时针旋转此数组?   Java中关于日历的一个场景,其中显式设置日期会导致不同的结果   spring boot Java在BeanPropertyRowMapper上对ArrayList的缓慢SQL检索<accountQueryResult>   给出nullpointer异常的java回调方法   java对独立的arraylist元素执行算术运算   使用DropWizard对动态模式进行java JSON解析   双Java双十进制差分   带索引参数的链表java迭代器   JavaLocalDate(反)序列化可以在JAXRS服务器中工作,但不能在JAXRX客户端中工作   java请求一个整数