| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> ViT (Vision Transformer) ---- Seq2Seq -> 正文阅读 |
|
[人工智能]ViT (Vision Transformer) ---- Seq2Seq |
对于seq2seq模型,网上很多文章直接就把抽象模型拿出来,这样对初学者很不友好,这里采用例子进行阐述,最后在通过抽象模型理解 英语翻译成德语这个网站有很多的数据集
Tokenization 因为是翻译任务,因此需要构建两个input_texts和两个target_texts,即如下: 对于两种语言使用两种不同的tokenizers,构建两个不同的字典,为什么构建两个字典呢? Tokenization 可以是字符级的也可以是单词级 字符级: 这里采用字符级进行学习,理论上,翻译任务最好采用单词级 例如: 这里解释为什么翻译需要构建两个基于字符级的字典 因为在字符级,每种语言有不同的字母组成或者字符组成,单个字典很难做到,因此两种语言采用两种不同的字典: 创建字典 训练模型 预测第一个字符后,继续预测下一个字符 同理 这个过程,一直下去,一直等到输出停止字符为止 推理很简单,在上面的基础上,去掉便签和交叉熵,prediction就是输出即可 Seq2Seq Model这里简单的说一下,为什么在编码器中只需要使用最后一个状态的输出,为什么不使用中间的状态,因为最后一个状态包含了输入的所有信息,中间的状态,包含的信息不全 接着: 总结: 1.LSTM虽然比RNN效果好,但是还是无法解决长序列的依赖问题,如何解决呢?
双向的LSTM好处在于,长序列的中,正向学习的到的偏向后部分,忘记前部分,而反向学到的是前项部分,忘记的是后续部分,把他们合并可以同时获取到前后重要信息
使用word-level替换字符级的token ,一方面英语单词平均是4.5个字符组成,那么需要长度比字符级段4.5倍,但是训练需要更大的数据集进行词向量的预训练
多任务的学习更有利于编码器的训练,变相的增加了数据集,这样也可以提升性能
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 23:44:06- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |