How transferable are features in deep neural networks

随着读取的论文量增加,发现研读论文,更重要的是作者的思维方式,以及自己对深度学习网络的理解,作者是怎么理解当前的网络的,他是从哪些角度发现当前的问题的,作者有事怎么逐步分析,进而引出自己的论点,同时,又是怎么设计实验去证明的,这些思路的理解非常重要,反而,论文中设置了什么参数,网络结构设计的几层,没有那么的重要。

如果第一层的特征是通用特征,最后一层的特征是具体特征,那么从通用特征到具体特征,在网络里面一定存在一个过渡,那么可以提出以下几个问题:

1、我们能否量化某一特定层在多大程度上具有普遍性或特殊性;

2、这种转变是突然发生在单个层上,还是分散在多个层上;

3、这种转变发生在网络的哪一层:第一层、中间层还是最后一层;

如果网络中的特征具有通用性,那么可以利用迁移学习;在迁移学习中,可以使用基础数据集训练一个基础网络,然后这个学习到的特征,可以进一步的在目标数据和目标任务上进行迁移。

当目标数据集比基础数据集晓很多的时候,迁移学习可以保证在目标数据集上训练大模型的时候避免过拟合。

常用的迁移学习方法是,训练一个基础网络,然后把它的前n层复制给大网络的前n层,大网络剩下的层,随机初始化,然后进行特定任务的训练。一种方法是,整个网络进行反向传播,包括前n层,这种叫fine-tune,一种是前n层冻结,即训练过程中权重不改变,只更新后面层的权重,这种叫迁移学习,迁移学习还是fine-tune,取决于目标数据集的大小,如果目标数据集很晓,网络参数量很大,fine-tuning 导致过拟合;如果目标数据据很大,或者网络参数量不大,不会出现过拟合的显现,可以使用fine-tune,提高性能。如果数据集非常大,那么没有比较重新开始训练,因为底层的滤波器也可以从目标数据集中学习。

相关推荐
吴佳浩6 分钟前
GPU 编号错乱踩坑指南:PyTorch cuda 编号与 nvidia-smi 不一致
人工智能·pytorch·nvidia
小饕13 分钟前
苏格拉底式提问对抗315 AI投毒:实操指南
网络·人工智能
卧蚕土豆24 分钟前
【有啥问啥】OpenClaw 安装与使用教程
人工智能·深度学习
GoCodingInMyWay29 分钟前
开源好物 26/03
人工智能·开源
AI科技星30 分钟前
全尺度角速度统一:基于 v ≡ c 的纯推导与验证
c语言·开发语言·人工智能·opencv·算法·机器学习·数据挖掘
zhangfeng113339 分钟前
Windows 的 Git Bash 中使用 md5sum 命令非常简单 md5做文件完整性检测 WinRAR 可以计算文件的 MD5 值
人工智能·windows·git·bash
monsion1 小时前
OpenCode 学习指南
人工智能·vscode·架构
sinat_255487811 小时前
读者、作家 Java集合学习笔记
java·笔记·学习
藦卡机器人1 小时前
中国工业机器人发展现状
大数据·人工智能·机器人
破阵子443281 小时前
小米AI新模型全面解析:从MiMo-V2系列到使用指南
人工智能