序列模型与循环神经网络
序列 介绍 现实生活中,有许多数据并不是像图片一样,看一眼就能了解全部信息. 举个简单的例子: 一句话中,词语的出现顺序可能也会影响这句话的信息量:**“狗咬人”所带来的信息远没有“人咬狗”**带来的信息量大…… 序列数据已经存在了人们的生活中当中: 音乐、语言和视频 地震:大地震后,往往伴随小的余震 如何对序列进行统计 上述提到了信息量,而信息量这个词往往就和概率相关了 在时间ttt观察到xtx_txt,那么得到TTT个不独立的随机变量(x1,...xT)−p(x)(x_1,...x_T) - p(\bold x)(x1,...xT)−p(x) 使用条件概率展开p(a,b)=p(a)p(b∣a)=p(b)p(a∣b)p(a,b)=p(a)p(b|a)=p(b)p(a|b)p(a,b)=p(a)p(b∣a)=p(b)p(a∣b) 所以p(x)p(\bold...
微调
介绍 神经网络除了最后一部分,其余部分都是在做特征提取,如果目标数据集属于原数据集,那么训练好的模型就可以直接拿来用了. 实际上Chatgpt就是属于这种(一句话总结:让你的模型站在巨人的肩膀上……) 假设使用数据集已经训练出了一个模型,那这个对目标数据集仍有很好的适用性(最后一层因为label的原因,往往发生改变) 微调的方式 训练 是一个目标数据集上的正常训练任务,但使用更强的正则化 使用更小的学习率 使用更少的数据迭代 源数据集远复杂于目标数据,通常微调效果更好 重用分类器权重 : Y = [aug(img) for _ in range(num_rows * num_cols)] d2l.show_images(Y, num_rows, num_cols, scale=scale)apply(img, torchvision.transforms.RandomVerticalFlip()) #上下翻转apply(img, torchvision.transforms.RandomHorizontalFlip()) ...