随着读取的论文量增加,发现研读论文,更重要的是作者的思维方式,以及自己对深度学习网络的理解,作者是怎么理解当前的网络的,他是从哪些角度发现当前的问题的,作者有事怎么逐步分析,进而引出自己的论点,同时,又是怎么设计实验去证明的,这些思路的理解非常重要,反而,论文中设置了什么参数,网络结构设计的几层,没有那么的重要。
如果第一层的特征是通用特征,最后一层的特征是具体特征,那么从通用特征到具体特征,在网络里面一定存在一个过渡,那么可以提出以下几个问题:
1、我们能否量化某一特定层在多大程度上具有普遍性或特殊性;
2、这种转变是突然发生在单个层上,还是分散在多个层上;
3、这种转变发生在网络的哪一层:第一层、中间层还是最后一层;
如果网络中的特征具有通用性,那么可以利用迁移学习;在迁移学习中,可以使用基础数据集训练一个基础网络,然后这个学习到的特征,可以进一步的在目标数据和目标任务上进行迁移。
当目标数据集比基础数据集晓很多的时候,迁移学习可以保证在目标数据集上训练大模型的时候避免过拟合。
常用的迁移学习方法是,训练一个基础网络,然后把它的前n层复制给大网络的前n层,大网络剩下的层,随机初始化,然后进行特定任务的训练。一种方法是,整个网络进行反向传播,包括前n层,这种叫fine-tune,一种是前n层冻结,即训练过程中权重不改变,只更新后面层的权重,这种叫迁移学习,迁移学习还是fine-tune,取决于目标数据集的大小,如果目标数据集很晓,网络参数量很大,fine-tuning 导致过拟合;如果目标数据据很大,或者网络参数量不大,不会出现过拟合的显现,可以使用fine-tune,提高性能。如果数据集非常大,那么没有比较重新开始训练,因为底层的滤波器也可以从目标数据集中学习。