用于yandex mystem 3.1俄语形态定位分析器的python包装器。

pymystem3的Python项目详细描述


Build Status

简介

本模块包含一个包装器,用于2014年6月发布的优秀俄语Yandex Mystem 3.1形态分析器。 形态分析器可以对文本进行元素化,并为每个标记派生一组形态属性。 有关该算法的更多详细信息,请参见i.segalovich«A fast morphological algorithm with unknown word guessing induced by a dictionary for a web search engine»,mlmta-2003,拉斯维加斯,内华达州,美国。

python是许多计算语言学家的首选语言,包括那些使用俄语的语言学家。这种开发的主要动机是mytem没有任何python包装器,mytem是俄语中最流行的形态分析工具之一,同时还有PyMorphy2TreeTaggerAOT

mytem的第三个版本介绍了几个重要的改进,最重要的是词类消歧。我们的包装器以执行pos消歧的模式运行mytem。

这个包装器是麻省理工学院许可下的开源软件。但是,请考虑yandex mytem不是开源的,并且是在Yandex License的条件下授权的。

系统要求

包装器与cpython 2.6+/3.3+和pypy 1.9+一起工作。

该包装器在ubuntu linux 12.04+、mac osx 10.9+和windows 7+上进行了测试。

对于32位体系结构和freebsd平台支持,请使用ver。0.1.10条。

安装

  1. 稳定版本:https://pypi.python.org/pypi/pymystem3。您可以使用pip安装它:

    pip install pymystem3
    
  1. 最新版本(推荐):https://github.com/nlpub/pymystem3

    pip install git+https://github.com/nlpub/pymystem3
    

一个简单的例子

元素化

>>> from pymystem3 import Mystem
>>> text = "Красивая мама красиво мыла раму"
>>> m = Mystem()
>>> lemmas = m.lemmatize(text)
>>> print(''.join(lemmas))
красивый мама красиво мыть рама

获取语法信息和引理。

>>> import json
>>> from pymystem3 import Mystem

>>> text = "Красивая мама красиво мыла раму"
>>> m = Mystem()
>>> lemmas = m.lemmatize(text)

>>> print "lemmas:", ''.join(lemmas)
>>> print "full info:", json.dumps(m.analyze(text), ensure_ascii=False, encoding='utf8')

lemmas: красивый мама красиво мыть рама

full info: [{"text": "Красивая", "analysis": [{"lex": "красивый", "gr": "A=им,ед,полн,жен"}]}, {"text": " "}, {"text": "мама", "analysis": [{"lex": "мама", "gr": "S,жен,од=им,ед"}]}, {"text": " "}, {"text": "красиво", "analysis": [{"lex": "красиво", "gr": "ADV="}]}, {"text": " "}, {"text": "мыла", "analysis": [{"lex": "мыть", "gr": "V,несов,пе=прош,ед,изъяв,жен"}]}, {"text": " "}, {"text": "раму", "analysis": [{"lex": "рама", "gr": "S,жен,неод=вин,ед"}]}, {"text": "\n"}]

问题

请使用github问题跟踪程序(https://github.com/nlpub/pymystem3/issues)报告任何错误或请求! 我们只有非常有限的资源来维护这个项目:如果你看到一个明显的解决问题的方法,请直接提出一个请求。我们非常愿意接受错误修复,非常感谢您的帮助。

作者

贡献者的完整列表由github列出。您也可以通过电子邮件联系项目的原始贡献者:

  • 丹尼斯·苏霍宁(D.Sukhonin):发展
  • 亚历山大·潘琴科(panchenko.alexander):概念

@Gmail

如果您有兴趣进一步发展或成为本项目的维护者,请给我们发电子邮件:非常感谢您的帮助。

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

推荐PyPI第三方库


热门话题
java是否存在这样一种场景:Java7的Hashmap实现优于Java8的实现   java如何打印这些完整的数组?   java BuildException:未能执行aapt   java如何使用类。未知类型的集合返回的cast()   java准备语句返回错误的值   webview 安卓中的java显示身份验证对话框   java如何重命名列名JPA Hibernate   java查询从特定用户和特定时间段的Oracle表(通过比较原始表和备份表)中选择修改的行   java Youtube视频仅在三星S6设备上加载时自动暂停   未调用java RecyclerView getItemViewType   使用JSch setCommand执行带有源选项的java Shell ping命令时失败   java Hibernate:无法删除|删除分离的实例   Java Spring@MappedSuperclass字段作为子类中的@Id字段   java Android:确定单击了哪个按钮,因为该按钮未在xml中定义   如何计算java阵列内存使用率   使用Java查找按字母顺序排列的第一个字符串   javascript注销功能刷新页面,但页面仍已登录   当接口作为参数提供时,java依赖项注入不起作用   java中带原语的字符串扭曲