Datawhale X 李宏毅苹果书 AI夏令营 task3 笔记

                                                     第二章      实践方法论

一、模型偏差

        模型偏差可能会影响模型训练。

        如果模型的灵活性不够大,可以设一个更大的模型,可以增加更多特征,可以用深度学习来增加模型的灵活性,这是第一个可以的解法。但是并不是训练的时候,损失大就代表一定是模型偏差,可能会遇到另一个问题:优化做得不好。

二、优化问题

        梯度下降这种优化方法具有很多问题,比如可能会卡在局部最小值的地方,无法找到一个真的可以让损失很低的参数。

        训练数据的模型损失不够低时,到底是模型偏差,还是优化的问题呢?

        找不到一个损失低的函数,到底是因为模型的灵活性不够,海里面没有针;还是因为优化梯度下降不给力,它没法把针捞出来?到底是模型不够大,还是己经够大了,怎么判断这件事?

        方法:通过比较不同的模型来判断模型现在到底够不够大。

        如果看到一个从来没有做过的问题,可以先跑一些比较小的、比较浅的网络,或者用一些非深度学习的方法,比如线性模型、支持向量机(Support Vector Machine,SVM),SVM可能是比较容易做优化的,比较不会有优化失败的问题。因此可以先训练一些比较浅或比较简单的模型,先知道这些简单的模型到底可以得到什么样的损失。

         如果深的模型和浅的模型相比较,深的模型明明灵活性比较大,但损失却没有办法比浅的模型压得更低则说明优化有问题,梯度下降不给力,需要用一些其它的方法来更好地进行优化。

三、过拟合

         一般如果是训练损失小,测试损失大,这个有可能是过拟合。

         解决过拟合的问题有两个方向:

         第一个方向往往是最有效的方向,即增加数据集。因此如果训练集蓝色的点变多了,虽然模型的灵活性可能很大,但因为点非常多,它就可以限制住,看起来的形状这是会很像产生这些数据背后的二次曲线。可以做数据增强,这个方法并不算是使用了额外的数据,即根据问题的理解创造出新的数据。并且数据增强,要根据对数据的特性以及要处理的问题的理解,来选择合适的数据增强的方式。

          另一个解法是给模型一些限制,让模型不要有过大的灵活性。可以有如下方法:

                  1、给模型比较少的参数。如果是深度学习的话,就给它比较小的神经元的数量;或者让模型共用参数,可以让一些参数有一样的数值。全连接网络(fully-connected network)是一个比较有灵活性的架构;而卷积神经网络(Convolutional Neural Network,CNN)则是一个比较有限制的架构。

                   2、用比较少的特征。

                   3、别的方法,比如早停(early stopping)、正则化(regularization)和丢弃法(dropout method)。

                   但也不要给模型太多的限制,可能会产生模型偏差的问题。

四、交叉验证

         比较合理选择模型的方法是把训练的数据集分成两半,一半称为训练集(training set),一半称为验证集(validation set)。

         其实最好的方法就是用验证损失,最小的直接挑就好了,不需要管公开测试集的结果。在实现上,不太可能这么做,因为公开数据集的结果对模型的选择,可能还是会有些影响的。理想上就用验证集挑就好,有过比较好的基线(baseline)算法之后,就不要再去动它了,就可以避免在测试集上过拟合了。但如果随机分配验证集,可能会分到很奇怪的验证集,导致结果很差。可以用k折交叉验证(k-fold cross validation)应对。

        k折交叉验证就是先把训练集切成k等份。

五、不匹配

        不匹配和过拟合其实不同,后者一般可以用搜集更多的数据来克服,但前者是指训练集和测试集的分布不同,训练集再增加也没有用了。

        在这种情况下,匹不匹配就要看对数据本身的理解了,我们可能要对训练集跟测试集的产生方式有一些理解,才能判断它是不是遇到了不匹配的情况。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值