【李宏毅 DLHLP 深度学习人类语言处理 HW1】

李宏毅 DLHLP 深度学习人类语言处理 HW1

  • 相关资料
  • HW1

语音小白在网上没有找到这门课的作业分享,那就记录一下自己的作业吧。

相关资料

课程官网:https://speech.ee.ntu.edu.tw/~hylee/dlhlp/2020-spring.php
作业github代码1:https://github.com/Alexander-H-Liu/End-to-end-ASR-Pytorch
作业github代码2:https://github.com/DLHLP2020/hw1-speech-recognition/tree/master
其中代码1是你用来跑模型写作业的代码,代码2只是辅助,帮你eval结果和把答案转换成提交要求格式。
提交作业kaggle网站:https://www.kaggle.com/competitions/dlhlp2020spring-asr/leaderboard
目前还是可以提交的,选late submmission,不会参与打榜。

首先大家好好听课,然后按照课件说明去下载作业slide、数据、github代码,最后按照作业slide一步一步往下走就可以。作业总体思路就是尝试不同元素的LAS模型:
Listen = encoder
Attention = Attention
Spell = Decoder

在作业里,会让你尝试
1,用最基础的seq2seq
2,在训练模型时,encoder部分叠加使用CTC,别的部分保持不变,所以loss会变成CTC+seq2seq混合loss
3,CTC joint的模型,decoder只用CTC
4,decoder部分,借助LM
5,不同beam size的效果

HW1

1,Train a seq2seq attention-based ASR model. Paste the learning curve and alignment plot from tensorboard. Report the CER/WER of dev set and kaggle score of testing set. (2 points)

一开始的时候,成绩很烂啦,虽然alignment plot看起来还挺合理的,不过打不过baseline
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
提交到kaggle上,成绩是这样的,比baseline烂不少
在这里插入图片描述

2,Repeat 1. by training a joint CTC-attention ASR model (decoding with seq2seq decoder). Which model converges faster? Explain why. (2 points)

这里我用的CTC weight是0.3,可以看到joint CTC-attention ASR收敛更快,而且模型效果更好。网上搜了一下,大概原因是ASR中attention是非常非常灵活的,joint CTC-attention相当于在前期encoder部分就做了对齐,所以会更快收敛,效果也更好。
在这里插入图片描述
在这里插入图片描述

这个时候结果已经可以比baseline好了在这里插入图片描述3,Use the model in 2. to decode only in CTC (ctc_weight=1.0). Report the CER/WER of dev set and kaggle score of testing set. Which model performs better in 1. 2. 3.? Explain why. (2 points)

1,2,3里面应该是2结果最好,因为2的decode有了CTC的帮助,但3中纯粹用CTC decode的话,就像老师在课上讲的,CTC不考虑前面的输出,效果不会特别好,往往需要后处理。

作业slide里面说CTC decode后的结果要再处理一下,但是我看结果没有什么重复和空的地方,应该是助教后期写好了吧,以下是eval的结果:
在这里插入图片描述

kaggle提交结果如下,还挺惊讶3的效果比1好。
在这里插入图片描述

4,Train an external language model. Use it to help the model in 1. to decode. Report the CER/WER of dev set and kaggle score of testing set. (2 points)

这里我的lm训练了超级久都没有结束,但我看ckpt里面模型早就不再更新,所以就手动停止了程序。
decode的时候,我的lm weight取的0.5。最后的结果,只能说比1提升了一点吧,比不过CTC,离baseline还很远,可能是我的LM不太好的原因。
在这里插入图片描述
在这里插入图片描述

5,Try decoding the model in 4. with different beam size (e.g. 2, 5, 10, 20). Which beam size is the best? (2 points)

这里我只有beam size从2加到5的时候,private score有了一个相对明显的提升,beam size再提升的时候,效果就不在提升了。

beam size 5
在这里插入图片描述在这里插入图片描述

beam size 10
在这里插入图片描述
在这里插入图片描述
beam size 20
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/47720.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

给jupter设置新环境

文章目录 给jupternotebook设置新环境遇到的报错添加路径的方法 给jupternotebook设置新环境 # 先在anaconda界面新建环境 conda env list # 查看conda prompt下的有的环境变量 带星号的是当前活跃的 activate XXXX pip install ipykernel ipython ipython kernel install --u…

【机器学习】西瓜书学习心得及课后习题参考答案—第3章线性模型

过了一遍第三章,大致理解了内容,认识了线性回归模型,对数几率回归模型,线性判别分析方法,以及多分类学习,其中有很多数学推理过程以参考他人现有思想为主,没有亲手去推。 术语学习 线性模型 l…

Ubuntu /dev/loop<0..n>挂载的目录的分析

执行命令df -h lkmaoubuntu:~$ df -h Filesystem Size Used Avail Use% Mounted on udev 1.6G 0 1.6G 0% /dev tmpfs 391M 2.1M 389M 1% /run /dev/sda1 59G 30G 26G 54% / tmpfs 2.0G 0 2.0G 0% /dev/s…

Docker 安全 Docker HTTPS请求过程与配置

Docker 容器安全注意点 尽量别做的事 尽量不用 --privileged 运行容器(授权容器root用户拥有宿主机的root权限) 尽量不用 --network host 运行容器(使用 host 网络模式共享宿主机的网络命名空间) 尽量不在容器中运行 ssh 服务 尽…

十三章:使用图像级监督学习像素级语义关联性的弱监督语义分割

0.摘要 分割标签的不足是野外语义分割的主要障碍之一。为了缓解这个问题,我们提出了一个新颖的框架,根据图像级别的类别标签生成图像的分割标签。在这种弱监督的设置下,已知训练模型更倾向于分割局部有区别的部分,而不是整个物体区…

本地部署 Stable Diffusion XL 1.0 Gradio Demo WebUI

StableDiffusion XL 1.0 Gradio Demo WebUI 0. 先展示几张 StableDiffusion XL 生成的图片1. 什么是 Stable Diffusion XL Gradio Demo WebUI2. Github 地址3. 安装 Miniconda34. 创建虚拟环境5. 安装 Stable Diffusion XL Gradio Demo WebUI6. 启动 Stable Diffusion XL Gradi…

创建自己的docker python容器环境;支持新增python包并更新容器;离线打包、加载image

1、创建自己的docker python容器环境 参考:https://blog.csdn.net/weixin_42357472/article/details/118991485 首先写Dockfile,注意不要有txt等后缀 Dockfile # 使用 Python 3.9 镜像作为基础 FROM python:3.9# 设置工作目录 WORKDIR /app# 复制当前…

[语义分割] DeepLab v1网络(语义分割、信号下采样、空间上的不敏感性、LargeFOV、膨胀卷积、空洞卷积、MSc、Multi-Scale)

Semantic Image Segmentation with Deep Convolutional Nets and Fully Connected CRFs 论文地址:Semantic Image Segmentation with Deep Convolutional Nets and Fully Connected CRFs参考源码:https://github.com/TheLegendAli/DeepLab-Context DeepL…

ElementUI tabs标签页样式改造美化

今天针对ElementUI的Tabs标签页进行了样式修改,更改为如下图所属的样子。 在线运行地址:JSRUN项目-ElementUI tabs标签页样式改造 大家如果有需要可以拿来修改使用,下面我也简单的贴上代码,代码没有注释,很抱歉&#x…

React Native 0.72 版本,带来诸多更新

经过漫长的等待,React Native 终于迎来了0.72 版本,此处版本带来了Metro重要的功能更新、性能优化、开发人员体验的改进以及其他一些重要的变化。我们可以从下面的链接中获取此次版本更新的内容:0.72更新内容 一、Metro 新功能 众所周知,Metro 是 React Native 默认的 Jav…

TEE GP(Global Platform)功能认证实验室

TEE之GP(Global Platform)认证汇总 GP认证实验室主要面向功能认证、SE安全认证、TEE安全认证,对于TEE来说,则分为TEE功能认证和TEE安全认证。本文对功能认证相关实验室机构进行总结和介绍。 一、国内3家 二、国外3家 参考: GlobalPlatform …

从零开始学Docker(一):Docker的安装部署

前述:本次学习与整理来至B站【Python开发_老6哥】老师分享的课程,有兴趣的小伙伴可以去加油啦,附链接 Linux 环境:RockyLinux 9 版本管理 Docker引擎主要有两个版本:企业版(EE)和社区版&#…

go学习 4、复合数据类型

4、复合数据类型 数组、slice、map和结构体 如何使用结构体来解码和编码到对应JSON格式的数据,并且通过结合使用模板来生成HTML页面 数组和结构体是聚合类型;它们的值由许多元素或成员字段的值组成。数组是由同构的元素组成(每个数组元素都是完全相同的…

Nautilus Chain 即将治理通证 NAUT ,生态发展进程加速

独特且优势明显的 Nautilus Chain 目前,行业内首个模块化底层 Nautilus Chain 已经上线主网,并且即将有超过 70 个应用原生部署在 Nautilus Chain 上。Nautilus Chain 本身是一个以 Layer3 为定位的区块链系统,其通过 Celestia 模块化底层来…

监控和可观察性在 DevOps 中的作用!

在不断发展的DevOps世界中,深入了解系统行为、诊断问题和提高整体性能的能力是首要任务之一。监控和可观察性是促进这一过程的两个关键概念,为系统的健康状况和性能提供有价值的可见性。虽然这些术语经常互换使用,但它们代表了理解和管理复杂…

解决IDEA的git非常缓慢方法

解决IDEA的git非常缓慢方法 xxxx\IDEA2021.1.3\IntelliJ IDEA 2021.1.3\bin

如何使用 Flatpak 在 Linux 上安装 ONLYOFFICE 桌面编辑器?

Flatpak 是一款与 Linux 发行版无关的软件实用工具,可用于在 Linux 上构建和分发桌面端应用。其可帮助您安装第三方 Linux 应用程序,无需安装库或处理依赖。 ONLYOFFICE 桌面版是什么 ONLYOFFICE 编辑器桌面版是一款全面的办公工具,提供了文…

firefox笔记-Centos7离线安装firefox

目前(2023-03-22 16:41:35)Centos7自带的firefox已经很新了是2020年的。主要原因是有个web项目,用2020年的firefox打不开。 发到互联网上是2023-07-24。 报错是js有问题,估计是搞前端的只做了chrome适应,没做firefox…

618技术揭秘 - 大促弹窗搭投实践 | 京东云技术团队

背景 618 大促来了,对于业务团队来说,最重要的事情莫过于各种大促营销。如会场、直播带货、频道内营销等等。而弹窗作为一个极其重要的强触达营销工具,通常用来渲染大促氛围、引流主会场、以及通过频道活动来提升频道复访等。因此&#xff0…

【框架篇】Spring Boot 日志

Spring Boot 日志 一,日志用途 尽管一个项目在没有日志记录的情况下可能能够正常运行,但是日志记录对于我们来说却是至关重要的,它存在以下功能: 1,故障排查和调试:当项目出现异常或者故障时,…