摘要:
门控制循环单元 GRU 首先这个GRU是最近几年才提出来的,它是在LSTM之后才提出来的,之所以先讲GRU是因为它相对比较简单一些。LSTM相对复杂,但是其实二者的表现效果差不多,所以实际使用哪个都是可以的。 GRU最主要是知道什么叫做“门控”。 我们之前说过,RNN是处理不了太长的序列的,是因为把 阅读全文
摘要:
这个树叶分类比赛,难度不大,第一的同学准确率可以得到0.992。 沐神认为0.98已经是不错的了。 阅读全文
摘要:
编码器-解码器架构 encoder-decoder是一个框架,这是近几年影响比较大的对一个模型的抽象。 代码 encoder-decoder是一种编程接口,后面基本NLP都是使用这种编程接口来实现的。 阅读全文
摘要:
微调 fine tune 沐神:微调绝对是深度学习中一个非常重要的技术!整个深度学习为什么能够work,就是因为有微调。迁移学习(transfer learning) 在ImageNet上训练的模型,其实是可以为我所用的。 微调的核心思想就是在源数据集上(通常是比较大的数据集)训练的模型,我们可把做 阅读全文
摘要:
数据增广 数据增广的话就不局限于图片,对文本、语音等都可以进行增广,这里主要是针对图片的技术。 代码 简简单单一个左右翻转的图像增广,就可以有效缓解让cifar10的过拟合情况。 其实不要奇怪,在ImageNet上,如果数据增广做的比较狠的话,经常是可以看到test acc高于train acc的, 阅读全文
摘要:
分布式训练 其实分布式和单机多卡在逻辑上没有什么区别,只不过读数据之前从磁盘读取,现在换成了从网络读取;交换梯度之前通过内存处理,现在通过网络交换梯度。 下面是一个具体样例,看看分布式如何减少跨机器的通讯。 现在本机将梯度加起来,在进行发送。 这个就是epoch和batch_size有一个权衡... 阅读全文
摘要:
就是一个小批量的数据,如果你有4张卡,那么这个批量的数据就可以分成4份。比如有100个样本,那么每张卡拿到25个样本,然后去计算梯度,最后再把梯度加起来做更新,这个就是多GPU的训练。 从零实现 理论而言,并行计算得到的结果应该是一样的。 两次结果不一样是因为存在随机性,如果固定住随机种子,理论两次 阅读全文
摘要:
单机多卡并行 这里图片是4张980,但是因为GPU靠的太近了,一个月后就烧了一块GPU。这是沐神第一次装多GPU犯的错误。 一般都是进行数据并行。 什么使用使用模型并行呢?就batch_size=1的时候,一个GPU都不能计算的话,那么就会考虑进行模型并行,将模型分割到多个GPU来做,比如trans 阅读全文
摘要:
更多的芯片 上面是一个高通的手机芯片结构图。 ASIC是Application-Specific Integrated Circuit( 应用型专用集成电路)。 AI ASIC AI的专用芯片。 这里最为代表的就是Google的TPU。 做ASIC芯片门槛会比通用芯片低很多,因为不用再去考虑那么多的 阅读全文
摘要:
CPU和GPU 我们讲讲GPU和CPU是什么,而且为什么深度学习使用GPU会快。 上图最直观的就是CPU的浮点运算能力比显卡差很多,但是显卡的显存不会很大,32G其实也就封顶了,但是CPU的内存可以一直叠加。 物理核只有一个,但是可以有2个超线程。就是市面上很多说的4核8线程。 超线程对于有IO等待 阅读全文