分布式形态计算器
dmengine的Python项目详细描述
DM engine是分布式形态学的Python实现
分布形态学是理论语言学的一个框架 描述自然语言的词法(单词结构)。这个包裹 提供计算由给定的 糖尿病分析
分析以人类友好的YAML格式作为纯文本文件输入。 至少,它们由title和feature values的清单、 可插入的词汇表项列表(vis),以及输入列表 已处理(参见下面的示例)。dmengine命令行工具计算 结果并生成所有计算的详细记录供以后使用 检查。生成的yaml文件可以转换为基于乳胶的报告 可以直接编译成PDF文件
链接
安装
这个包在python 2.7和3.5+下运行,使用pip安装:
$ pip install dmengine
这还将根据需要安装来自pypi的PyYAML和oset包。 依赖关系。
将结果转换为PDF报告还需要LaTeX 分布(TeX Live和MikTeX应该有效)。确保其可执行文件 在你的系统路径上
用法
创建定义分析的纯文本文件:
# example.yaml - simple demonstration of the analysis definition syntaxtitle:English verbal agreementfeatures:-value:Vcategory:pos-value:Nomcategory:case-value:+1category:person-value:+2category:person-value:+3category:person-value:-plcategory:number-value:+plcategory:numbervis:-exponent:sleepfeatures:[V]-exponent:-sfeatures:[Nom,+3,-pl]-exponent:-Øfeatures:[Nom]paradigms:-name:Intransitive paradigmheaders:[[1,2,3],[sg,pl]]inputs:-[[V],[Nom,+1,-pl]]-[[V],[Nom,+1,+pl]]-[[V],[Nom,+2,-pl]]-[[V],[Nom,+2,+pl]]-[[V],[Nom,+3,-pl]]-[[V],[Nom,+3,+pl]]
将分析定义保存到以.yaml结尾的文件中(例如。 example.yaml)
打开shell(命令行窗口)并导航到 定义文件。
使用dmengine命令计算分析结果,创建 PDF报告:
$ dmengine example.yaml --pdf
这将创建三个文件:
- example-results.yaml–结果为yaml格式的纯文本文件
- example-results.tex–结果报告的乳胶源
- example-results.pdf–用pdflatex编译的报告的PDF输出
结果
转到报告的outputs部分它提供了一个paradigm表 计算结果的:
报告的log节包含有关每个 单个输入和输出的派生
调用选项
检查dmengine命令的用法:
$ dmengine --help usage: dmengine [-h][--version][--report][--pdf][--view] filename [directory] Calculates a given Distributed Morphology (DM) analysis positional arguments: filename dm analysis .yaml definition file directory analysis results output directory optional arguments: -h, --help show this help message and exit --version show program's version number and exit --report create a LaTeX report from the results --pdf render the report to PDF (implies --report) --view open the report in viewer app (implies --pdf)
规则
分析可以使用以下类型的规则来操作输入 插入前:
- impoverishment–功能删除
- obliteration–头部移除
- fission–头部特征提取
- fusion–头部合并
- copy–头部复制
- add–功能添加
- metathesis–头部位置交换
支持以下类型的重新调整规则(操作 插入后输出:
- delete–指数移除
- copy–指数复制
- metathesis–指数位置交换
- transform–正则表达式搜索和替换
上下文
词汇项的插入和预插入规则的应用可以 仅限于以下上下文类型:
- this_head–处理的头必须具有
- left_head–左侧相邻头部必须具有这些功能
- right_head–右相邻磁头必须具有
- any_head–任何输入头都必须具有这些功能
- anywhere–必须在输入中的某个地方匹配功能
另请参见
raphael finkel提供web-based engines用于计算范例函数 形态学和网络形态学分析。
许可证
dmengine分布在MIT license下。