用python制作英文字典的分析_分享一个自己做的英文科学写作检查器

基于Python制作的英文科学论文写作检查器,利用规则匹配和自然语言处理技术检查冗余、不准确的词汇,避免长主语等问题。程序包含词典替换建议,语法分析,并可针对Latex文件进行预处理。
摘要由CSDN通过智能技术生成

最近在读一本神书,牛津大学出版的《Scientific Writing and Communication》,边阅读边检查书里面说的那些英文科学论文写作中经常出现的很俗的桥段,很多余的短语有没有出现在我正在写的科学论文中。检查的过程中发现书本第一章的内容非常有指导意义,只需要逐条搜索规则中出现的短语,删除或者替换即可。这样搜索替换了一阵后,感觉比较繁琐,寻思可以将规则收集起来,放在字典里,然后使用程序来全面检查论文内容。这样也可以帮到更多科研人员。花了一个晚上,将书中第一二章关于短语的规则搜集起来,制作了一个检查器。后面的章节更关注句子,段落和文章的结构,规则不容易建立,需要自然语言处理和深度学习训练。不过万事开头难,先迈出第一步,以后有时间慢慢填坑。

更新:书本前两章涵盖了第一到第六条原则, 建议删除冗余词,替换复杂和不准确的词。这些规则的实现收集在rule1to6_words.py中。最新版额外实现了位于第三章的第十条规则。这条规则判断一个语句是否头重脚轻,主语过长。为了判断主语的长度,程序使用了自然语言处理中的语法/依存分析。

更新:最新版本中加入了语法,单词拼写检查。

更新:加入对Latex文件的预处理。跳过方程,图片和表格,仅分析摘要,正文,图表描述等文字部分。LongGang Pang / proofread​gitlab.comeb6055a72e12c9e9e02c8c9e99328cbb.png

第一部分:简介

使用方法:

git clone https://gitlab.com/snowhitiger/proofread.git

cd proofread

python proofread.py path/*.tex

结果示例:

在默认情况下,proofread.py 仅对规则字典中要求删除或替换的词进行检查。

如果想要开启其他功能,可以在命令行添加选项。使用如下命令查看可用的选项,

python proofread.py --help

输出结果如下usage: proofread.py [-h] [--report_long_subjects] [--report_interruptions]

[--report_noun_clusters] [--check_grammars] [--brief]

f [f ...]

Proofread scientific papers to make it brief and simple

positional arguments:

f one file or a list of files for analysis

optional arguments:

-h, --help 显示帮助信息并退出

--report_long_subjects Principle 10: 避免过长主语,默认未开启

--report_interruptions Principle 11: 避免主语谓语距离过长,默认未开启

--report_noun_clusters Principle 18: 避免长串名词,默认未开启

--check_grammars 语法,拼写检查,默认未开启

示例,如果想对文件 example.tex 开启语法检查, 并报告过长的主语,使用

python proofread.py example.tex --report_long_subjects --check_grammars

请注意,语法检查速度比较慢,请谨慎开启。最新版本会对Latex文件自动分析,跳过方程,图,表格等与文字无关的内容。

替换字典:

这本书的本意是让我们在大脑中记住这些规则,潜移默化的改变我们的写作过程,而不是让我们写完之后修改。这里把搜集的字典文件放出来,大家可以先记在脑中,写作的过程中尽量避免。如果不想费力,或者不想按字典一条条检查自己学生写的初稿,就直接使用上面的 proofread.py 脚本来自动化搜索/建议修改过程。字典是一个 json 文件,第一个版本只有一些手动放进去的规则,

{"to_remove": ["actually",

"appear",

"absolutely",

"at all times",

"commonly",

"clearly",

"certainly",

"completely",

"much",

"usually",<

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值