多国语言的测试点如何定义?
这个问题是关于多语言检测的。多语言检测,从技术上来说,就是检测文本中是否存在非英语单词。这些非英语单词可以是字母数字字符串的集合(基于字符的策略),也可以是由多个单词组成的短语(基于词块的策略)。 非英语单词的存在性检测是一个常用的自然语言处理任务。它存在于很多实用的场景中,如计算机词典的编制、文本分类和摘要等。开发高效的多语言检测算法具有重要的现实意义。近年来,随着互联网的迅猛发展和移动设备的普遍应用,大规模双语数据集的出现为研究者们提供了很好的平台。许多研究者提出了不少高效的算法来解决这个问题。
基于统计的方法。这种方法需要建立目标语言和源语言两个词汇表,然后计算输入文本中各个单词在两种语言中的概率,最后根据概率的大小来判断输入文本是否含有外文词语。由于中文和英文属于不同的语系,因此直接用英文词汇表来计算中文字符出现的可能性很小。目前大多数采用的办法是建立中英对应的词汇表,通过英文来查找对应的中文。这种方法的缺点是由于词汇表的建立需要大量真实数据作为支撑,因此很难涵盖各种特例情况,容易导致错误。而且算法的时间复杂度与词汇表的大小成正比,当词汇表中单词数较多时,算法的计算量很大。
基于机器学习方法的方法。这些方法不需要预先建立目标语言和源语言的词汇表,而是直接学习给定训练集合中词语之间的关系,以此来自动定义目标语言和源语言的词典。相比基于统计的方法,学习的方法不需要考虑单词翻译的问题,因此能解决中英文之间一词多意以及同音异形词等问题,更能适应词汇变化的速度。不过,由于缺少足够好的训练数据,以前这方面的研究并没有取得很大的进展。近年来的研究成果主要来自于百度NLP团队发布的多语言数据集。 其他方法。除了以上两大类之外还有一些别的算法也被用到多语言检测当中。比如字典树这种字符级别的算法被用来处理短文本而且只包含字母数字的情况;规则的方法用来处理特殊场景等等。