Datawhale AI夏令营-讯飞机器翻译挑战赛-Task1+2

写在前面

第一天根据教程跑了baseline并提交获取得分,但是具体的原理还不是完全掌握,故为了打卡先发布初版,后面再进行完善

Task 1

了解机器翻译

  • 机器翻译的发展
    • 基于规则的方法
    • 统计方法
      • 主流方法
        • 基于词的统计机器翻译(Word-based MT)

        • 基于短语的统计机器翻译(Phrase-based SMT)

    • 深度学习方法

数据划分

  • 训练集(Training Set)
    • 目标:让模型在训练数据上尽可能地拟合好,学习到数据的内在规律

  • 开发集(Development Set,也常被称为验证集,Validation Set)
    • 目标:通过在开发集上的性能评估,选择最佳的模型配置,避免模型在训练集上过度拟合,确保模型的泛化能力

  • 测试集(Test Set)
    • 目标:提供一个公正、无偏见的性能估计,反映模型在未知数据上的泛化能力

Task 2

环境配置

  • torchtext :是一个用于自然语言处理(NLP)任务的库,它提供了丰富的功能,包括数据预处理、词汇构建、序列化和批处理等,特别适合于文本分类、情感分析、机器翻译等任务

  • jieba是一个中文分词库,用于将中文文本切分成有意义的词语

  • sacrebleu:用于评估机器翻译质量的工具,主要通过计算BLEU(Bilingual Evaluation Understudy)得分来衡量生成文本与参考译文之间的相似度

  • spacy:是一个强大的自然语言处理库,支持70+语言的分词与训练

    • !pip install torchtext
    • !pip install jieba
    • !pip install sacrebleu

数据预处理

  • 清洗和规范化数据

    • 去除无关信息:删除HTML标签、特殊字符、非文本内容等,确保文本的纯净性(本赛题的训练集中出现了非常多的脏数据,如“Joey. (掌声) (掌声) 乔伊”、“Thank you. (马嘶声) 谢谢你们”等这种声音词)

    • 统一格式:转换所有文本为小写,确保一致性;标准化日期、数字等格式。

    • 分句和分段:将长文本分割成句子或段落,便于处理和训练。

  • 分词

    • 分词:将句子分解成单词或词素(构成单词的基本组成部分,一个词素可以是一个完整的单词,也可以是单词的一部分,但每一个词素都至少携带一部分语义或语法信息),这是NLP中最基本的步骤之一。我们这里使用了使用jieba 对中文进行分词,使用spaCy对英文进行分词。

  • 构建词汇表和词向量

    • 词汇表构建:从训练数据中收集所有出现过的词汇,构建词汇表,并为每个词分配一个唯一的索引

    • 词向量:使用预训练的词向量或自己训练词向量,将词汇表中的词映射到高维空间中的向量,以捕捉语义信息(当前大模型领域训练的 embedding 模型就是用来完成此任务的)。

  • 序列截断和填充

    • 序列截断:限制输入序列的长度,过长的序列可能增加计算成本,同时也可能包含冗余信息。

    • 序列填充:将所有序列填充至相同的长度,便于批量处理。通常使用<PAD>标记填充。

  • 添加特殊标记

    • 序列开始和结束标记:在序列两端添加<SOS>(Sequence Start)和<EOS>(Sequence End)标记,帮助模型识别序列的起始和结束

    • 未知词标记:为不在词汇表中的词添加<UNK>(Unknown)标记,使模型能够处理未见过的词汇

  • 数据增强

    • 随机替换或删除词:在训练数据中随机替换或删除一些词,增强模型的鲁棒性。

    • 同义词替换:使用同义词替换原文中的词,增加训练数据的多样性。

  • 数据分割

    • 划分数据集:将数据划分为训练集、验证集和测试集,分别用于模型训练、参数调整和最终性能评估(该赛题中已划分好,不需要自己进行划分)

模型训练

  • 编码器-解码器模型

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值