基于统计方法从文本中抽取分词词典
来源:用户上传
作者:
摘要:常见的机器翻译方法有两种,一种是已经发展得比较完善的统计机器翻译,另一种是出现不久的神经机器翻译。这两种翻译方式首先都需要将文本划分成词或短语,对于一些语种,如中文,词并不是明显分开的,必须要分词。分词的时候,需要使用词典,通常词典是人工生成人工添加。本文提出了一种方式,可以从复数文本中自动提取分词词典。
关键词:机器翻译;分词;词典
中图分类号:TP393
文献标识码:A
文章编号:1009-3044(2020)04-0213-02
收稿日期:2019-10-15
基金项目:本文工作得到国家重点研发计划(2017YFB0802300)资助作者简介:黄超,男,硕士研究生,主要研究方向为信息安全。
Extracting Word Segmentation Dictionary from Text Based on Statistical Method
HUANG Chao
(School of Electronics and Information Engineering,Tongji University,Shanghai 201804,China)
Abstract:There are two common methods of machine translation,one is the statistical machine translation that has been developed relatively well,and the other is the neural machine translation that appears soon.First of all,both of these translation methods need to segment the text into words or phrases.For some languages,such as Chinese,the words are not clearly segmented so the text must be segmented into words first.W hen segmenting text into words,it is necessary to use a dictionary that is usually generated and added manually.This paper proposes a way to automatically extract word segmentation dictionary from plural text.
Key words:machine translation;word segmentation;dictionary
随着互联网的发展,机器翻译在各行各业中都变得越来越重要。人们在生产生活中往往会查找一些外文的资料,这时就需要机器翻译来帮助人们翻译外文资料。为了提高翻译的准确度和流畅度,国内外各个研究机构都对机器翻译进行过非常深入的研究。现在,机器翻译方法主要有两种,一种是统计机器翻译,这种翻译方式是基于统计模型,将一个短语翻译成另一种语言中含义最为接近的短语[1]。另一种就是神经机器翻译,这是一种出现不久的翻译方法,基于神经网络[2-4]。相比于统计机器翻译,神经机器翻译可以更多地考虑语法和语义对翻译影响,从而获得更好的翻译准确度。
以上两种翻译方法,首先都要将文本划分成单词或短语,才能进行接下来的翻译步骤。对于一些语种,,如英文,其单词是自然划分的。而对于另一些语种,如中文,其单词不是自然划分的,所以在翻译之前需要进行分词。现在已经有比较成熟的中文分词工具,如结巴分词。这些分词工具都需要根据词库对文本进行划分,而现在的词库都是人为生成人为添加的。
本文将介绍一种基于统计方法的从复数文本中抽取分词词典的方法,并验证该方法的可行性。由于现阶段没有标准可以评价一个词典优异性,所以本文的实验结果更多地依据经验。
1 词典抽取
1.1 数据预处理
中文和英文不同,在很多字符集中,英文的ASCII码是-致的,而中文的ASCII码往往是不一致的,所以首先要统一字符集。在本文中,使用GBK作为统一的字符集。中文有简体和繁体,同一个字的简体和繁体的ASCII码是不一样的,所以,在预处理时,本文将所有的中文都转换成简体。
1.2 数据统计
本文提出的方法,是统计一个字之后接下来的字的个数。在统计时,需要将无效的字符除去。无效的字符有这几类。一是ASCI码大于0的字符,在GBK编码中,所有中文字符的ASCII码都小于0。二是中文标点符号,在GBK编码中,中文标点符号字符的ASCII码也小于0,但是这不是有效的字符,必须除去。三是以GBK编码表示的数字和希腊字母等,去除的原因和中文标点相同。在去除上述字符的同时,也将其作为一个句子的分割。
1.3 提取词典
在做完统计之后,就可以进行词典的提取。统计的结果中,一个字之后会有很多不同的字,而且这些字出现的次数也不相同。这里有一个经验思路,即如果一个字A和另一個字B组成一个有意义词,那么A后面跟着的字中B出现的次数就很高,反之次数就低。所以只需要找出次数多的字即可。
2 实验
2.1 实验设置
本文只针对中文,所以数据是中文数据,其来源是wiki百科。从wiki百科获得的原始数据都是utf-8编码,并且繁简混合,所以对其做预处理操作。做完预处理后,进行效果验证。
2.2 效果验证 本文使用MySQL数据库存储统计结果。MySQL数据库提供了非常丰富的数据处理函数,例如可以根据字进行分组,可以求一组数的最大值,可以对数据进行排序,这些有助于词典抽取。
下表是“台”字之后的字及其次数,由于数量较多,所以选择了其中部分数据。
从表格中可以看出,“湾”和“北”出现的次数远远超过其他的字,说明“台湾”和“台北”是两个有意义的词。
下表是“町”字之后的字及其出现次数。
从表中可以看出,“町”字后的字出现的次数都比较少,而且分布非常均匀,可以判断“町”无法和其他字组成一个有意义
的词。
3 总结和展望
本文提出一个基于统计方法的从复数文本中提取字典的方法。这个方法是一个全新的方法,也具有一定的可行性,不过其结果并不理想,还需要进行更深入的研究。
本文从wiki百科中获得的数据其实并不多,这也影响了实验的效果。同时由于没有一个标准来评价词典的效果,所以最后的评价更多地需要通过经验,这也是一个不足。
接下来需要修改模型,进行更多的实验。而且不能只考虑两个字的词,还需要考虑三个字、四个字的词。通过更加深入的研究,以期能获得更理想的结果。
参考文献:
[1]Koehn P,Och F J,Marcu D.Statistical phrase-based translation[C]/Proceedings of the 2003 Conference of the North American Chapter of the Association for Computational Linguisticson Human Language Technology一NAACL '03,May 27-June 1,2003.Edmonton,Canada.Morristown,NJ,USA:Association for Computational Linguistics,2003:48-54.
[2]Cho K,Van Merrienboer B,Gulcehre C,et al.Learning phrase representations using RNN encoder-decoder for statistical machine translation[J].arXiv preprint arXiv:1406.1078,2014.
[3]Gehring J,Auli M,Grangier D,et al.Convolutional sequence to sequence learning[J].arXiv preprint arXiv:1705.03122,2017.
[4]Sutskever I,Vinyals 0,le Q.Sequence to sequence learning
with neural networks[J].Advances in Neural Information Processing Systems,2014:3104-3112.
[通聯编辑:唐一东]
转载注明来源:https://www.xzbu.com/8/view-15162618.htm