Datawhale 2024 年 AI 夏令营第二期——基于术语词典干预的机器翻译挑战赛

时间:2024-07-13 16:37:52

#AI夏令营 #Datawhale #夏令营

1.赛事简介

目前神经机器翻译技术已经取得了很大的突破,但在特定领域或行业中,由于机器翻译难以保证术语的一致性,导致翻译效果还不够理想。对于术语名词、人名地名等机器翻译不准确的结果,可以通过术语词典进行纠正,避免了混淆或歧义,最大限度提高翻译质量。

2.赛事任务

基于术语词典干预的机器翻译挑战赛选择以英文为源语言,中文为目标语言的机器翻译。本次大赛除英文到中文的双语数据,还提供英中对照的术语词典。参赛队伍需要基于提供的训练数据样本从多语言机器翻译模型的构建与训练,并基于测试集以及术语词典,提供最终的翻译结果,数据包括:

·训练集:双语数据:中英14万余双语句对

·开发集:英中1000双语句对

·测试集:英中1000双语句对

·术语词典:英中2226条

3.baseline

(1)对中英双语句对进行分词:

import nltk
import jieba
def read_file(filepath):
    with open(filepath, 'r', encoding='utf-8') as file:
        lines = file.readlines()
    return lines

# 分词英语文本
def tokenize_en(lines):
    return [' '.join(nltk.word_tokenize(line)) for line in lines]

# 分词中文文本
def tokenize_zh(lines):
    return [' '.join(jieba.cut(line)) for line in lines]

(2)统计句长分布

train_en.tok

train_zh.tok

句长普遍较短,且中英句长分布有区别。

(3)filter

利用分词后的语料训练源语言和目标语言的语言模型,打分后删除低分语句。

(4)训练