notes for datawhale 2th summer camp NLP task1

//I wrote this note in obsidian and copied it here. The strange format in this note is due to lack of obsidian plugins.


tags:

  • AI-study
  • ML
    status: done

目标 :跑通baseline,体验NLP模型解决问题的流程,基本了解赛题要求,理解赛题场景
难度 :非常低
推荐步骤:

  1. 根据文档跑通提交并拿下第一个分数
  2. 了解赛题提交的格式
  3. 模型训练相关的数据格式
  4. 打卡第一个分数,尽量写笔记

‌​​⁠​​​​‌‍​​​​⁠⁠​​‬​⁠‬​​​‬‌​​​​‌​​‬‬​​​​​‍​‌Task1知识点文档 - 飞书云文档 (feishu.cn)

brief history of ML

机器翻译(Machine Translation,简称MT)是自然语言处理领域的一个重要分支,其目标是将一种语言的文本自动转换为另一种语言的文本

机器翻译方法:基于规则->基于统计->深度学习

规则驱动->数据驱动->智能驱动

基于规则的机器翻译(1950s-1980s) :早期的机器翻译系统主要采用基于规则的方法,即利用语言学家编写的语法规则和词典进行翻译。这种方法需要对源语言和目标语言的语法和词汇有深入的理解,但其灵活性和适应性较差,难以处理复杂的语言结构和多义词问题

基于统计的机器翻译(1990s-2000s) :随着计算机性能的提升和大规模平行语料库的出现,统计机器翻译开始兴起。这种方法通过分析大量双语文本,自动学习源语言和目标语言之间的对应关系,从而实现翻译。统计机器翻译在处理多义词和语言变异方面表现出更好的效果,但由于其依赖于大量训练数据,对于资源匮乏的语言支持不足。

基于神经网络机器翻译(2010s-present) :神经网络方法在机器翻译任务上的应用可以追溯到上世纪八九十年代。但受限于当时的计算资源和数据规模的限制,神经网络方法的性能差强人意,故而其发展停滞了很多年。近年来,深度学习技术的快速发展推动了神经网络机器翻译(Neural Machine Translation,简称NMT)的兴起。NMT使用深度神经网络模型,如长短期记忆网络(LSTM)和 Transformer,能够自动学习源语言和目标语言之间的复杂映射关系,无需人工设计特征或规则。NMT在翻译质量、速度和适应性方面取得了显著进步,成为当前机器翻译领域的主流方法。

数据划分

在机器学习和深度学习项目中,数据集通常被划分为三个部分:训练集(Training Set)、开发集(Development Set,也常被称为验证集,Validation Set)和测试集(Test Set)

训练集,训练模型

开发集,防止模型过度拟合于训练集

测试集,模拟真实数据,检验效果

赛题解析

赛事背景

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

赛事任务

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

//RAG🤗

赛题数据

  • 训练集:双语数据 - 中英14万余双语句对
  • 开发集:英中1000双语句对
  • 测试集:英中1000双语句对
  • 术语词典:英中2226条

[!info] 🐵

  • **训练集(training set)**用于运行你的学习算法。
  • 开发集(development set)用于调整参数,选择特征,以及对学习算法作出其它决定。有时也称为留出交叉验证集(hold-out cross validation set)
  • **测试集(test set)**用于评估算法的性能,但不会据此改变学习算法或参数。

评估指标

对于参赛队伍提交的测试集翻译结果文件,采用自动评价指标 BLUE-4 进行评价,具体工具使用 sacrebleu开源版本

[!info] 📘

什么是 BLUE-4 ?

BLEU,全称为Bilingual Evaluation Understudy(双语评估替换),是一种对生成语句进行评估的指标。BLEU 评分是由Kishore Papineni等人2002年的论文《BLEU: a Method for Automatic Evaluation of Machine Translation》中提出的。

在机器翻译领域,BLEU(Bilingual Evaluation Understudy)是一种常用的自动评价指标,用于衡量计算机生成的翻译与一组参考译文之间的相似度 。这个指标特别关注 n-grams(连续的n个词)的精确匹配,可以被认为是对翻译准确性和流利度的一种统计估计。计算BLUE分数时,首先会统计生成文本中n-grams的频率,然后将这些频率与参考文本中的n-grams进行比较。如果生成的翻译中包含的n-grams与参考译文中出现的相同,则认为是匹配的。最终的BLUE分数是一个介于0到1之间的数值,其中1表示与参考译文完美匹配,而0则表示完全没有匹配。

BLUE-4 特别指的是在计算时考虑四元组(即连续四个词)的匹配情况。

BLUE 评估指标的特点:

  • 优点:计算速度快、计算成本低、容易理解、与具体语言无关、和人类给的评估高度相关。
  • 缺点:不考虑语言表达(语法)上的准确性;测评精度会受常用词的干扰;短译句的测评精度有时会较高;没有考虑同义词或相似表达的情况,可能会导致合理翻译被否定。

除了翻译之外,BLEU评分结合深度学习方法可应用于其他的语言生成问题,例如:语言生成、图片标题生成、文本摘要、语音识别。

课后思考

以后就用魔塔吧,8GB笔记本撑不住啦

简单看了代码和数据,不是很懂

猜测,翻译过程,是不是每个词从词典中检索出几个选项,组合概率最大的为翻译结果?

相关推荐
虾球xz28 分钟前
游戏引擎学习第55天
学习·游戏引擎
oneouto44 分钟前
selenium学习笔记(二)
笔记·学习·selenium
B站计算机毕业设计超人44 分钟前
计算机毕业设计PySpark+Hadoop中国城市交通分析与预测 Python交通预测 Python交通可视化 客流量预测 交通大数据 机器学习 深度学习
大数据·人工智能·爬虫·python·机器学习·课程设计·数据可视化
学术头条1 小时前
清华、智谱团队:探索 RLHF 的 scaling laws
人工智能·深度学习·算法·机器学习·语言模型·计算语言学
sealaugh321 小时前
aws(学习笔记第十九课) 使用ECS和Fargate进行容器开发
笔记·学习·aws
18号房客1 小时前
一个简单的机器学习实战例程,使用Scikit-Learn库来完成一个常见的分类任务——**鸢尾花数据集(Iris Dataset)**的分类
人工智能·深度学习·神经网络·机器学习·语言模型·自然语言处理·sklearn
feifeikon1 小时前
机器学习DAY3 : 线性回归与最小二乘法与sklearn实现 (线性回归完)
人工智能·机器学习·线性回归
游客5201 小时前
opencv中的常用的100个API
图像处理·人工智能·python·opencv·计算机视觉
古希腊掌管学习的神1 小时前
[机器学习]sklearn入门指南(2)
人工智能·机器学习·sklearn
炭烤玛卡巴卡1 小时前
学习postman工具使用
学习·测试工具·postman