快速python语音算法

Fuzz的Python项目详细描述


https://img.shields.io/pypi/v/Fuzzy.svghttps://img.shields.io/pypi/pyversions/Fuzzy.svghttps://img.shields.io/travis/yougov/fuzzy/master.svg

fuzzy是一个python库,可以快速实现常用的语音算法。 通常这是在弦乐相似性练习中,但它们非常多用。

它使用c扩展(通过cython)来提高速度。

算法如下:

用法

这些功能很容易使用!

>>> import fuzzy
>>> soundex = fuzzy.Soundex(4)
>>> soundex('fuzzy')
'F200'
>>> dmeta = fuzzy.DMetaphone()
>>> dmeta('fuzzy')
['FS', None]
>>> fuzzy.nysiis('fuzzy')
'FASY'

性能

fuzzy的双变音比纯python快10倍 由Andrew Collins实现 在最近的一些testing。 Soundex和NYSII也应该更快。使用ipython的时间:

In [3]: timeit soundex('fuzzy')
1000000 loops, best of 3: 326 ns per loop

In [4]: timeit dmeta('fuzzy')
100000 loops, best of 3: 2.18 us per loop

In [5]: timeit fuzzy.nysiis('fuzzy')
100000 loops, best of 3: 13.7 us per loop

距离度量

我们推荐Python-Levenshtein 用于快速、基于c的字符串距离/相似性度量的模块。在其他中 它包括的功能:

在测试中,它比同类的纯python快了好几倍 这些算法的实现。

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

推荐PyPI第三方库


热门话题
java如何删除TextInputLayout提示文本中的省略号(三个点)?   java通过蓝牙编程发送数据   java如何在Opengl ES中获得一个像素的透明颜色?   java如何在添加额外的maven依赖项后更新eclipse项目   Java机器人编程。在拾取和放置任务中移动零件时,如何跟踪零件的属性?   json如何使用Java访问JSONObject中的JSONArray?   Java将列表组的字段(BigDecimal)乘以2个字段求和   Java:从URL下载   java多ajax数据到Spring MVC控制器   java使用Android将文本文件上传到Google Drive   java使用org解析多个模式。三十。英国石油公司。总体安排日期时间格式化程序   安卓 java中的机器人选择测试。lang.NoSuchFieldError:在应用窗口侦听器上标记   BeanPostProcessor的java示例   java为什么这段代码在这里给我一个空异常错误?   java如何解析一个字符串并获得一个子字符串?   java:使用vfs S3插件在AmazonS3中使用服务器端加密