| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> DataWhale_李宏毅深度学习笔记_Task 03:误差从哪里来&梯度下降 -> 正文阅读 |
|
[人工智能]DataWhale_李宏毅深度学习笔记_Task 03:误差从哪里来&梯度下降 |
误差从哪里来? 误差主要来自两个方面一个是bias,另一个是variance: (1)Bias是通过多次训练得到的最优值的平均值与真正的最优值的距离,可以反应是否瞄准了靶心,如图1中第1、2幅图的bias比第3、4幅图小; (2)Variance是通过多次训练得到的最优值的方差,可以反应射击点的分散程度,如图1中第2、4幅图的variance大,第1、3幅图的variance小。 ?图 1 ?Bais和Variance都是越小越好,通常情况下,模型越简单,variance越小,bias越大,模型越复杂,variance越大,bias越小。这是因为复杂的模型其variance大,进而function space较大,因此可能包含了target值,导致bias教小;而简单的模型可能偏离target较远,即使它比较集中,但都偏了,所以bias较大。 ?图 2 如variance大,证明模型过拟合;bias大,证明模型欠拟合;要综合考虑模型的variance和bias选择模型。 图 3? ?如何根据训练结果判断模型的bias大还是variance大? 训练集的error大:bias大; 训练集的error小,测试集的error大:variance大。 当模型bias大的时候可以通过修改模型来降低bias;当模型variance大的时候可以通过增加训练数据量和增加正则项的方法来降低bias。 ?图 4 模型的选择不能根据测试集去选择,因为测试集的数据有限,也存在偏差,如果选择在测试集中误差最小的模型,在其他测试集中的结果往往不尽人意。为解决这个问题,可以将训练集分为training set和validation set,用training date去训练模型,用validation data去选择模型,如图5。 ?图 5 在不知道怎么划分training set和validation set时,可以采用K折交叉验证,即划分多组training set和validation set,然后分别计算不同分组下所得模型的误差,取平均值,选择平均误差最低的模型,如图6。 ?图 6 梯度下降 Learning Rate是影响梯度下降效果的关键参考,在实际工作中应多试几个learning rate,并画图(如图7),根据试验结果选择合适的learning rate。 图 7?? 为了解决Learning rate不好给的问题,可以采用adagrad方法,learning rate随着参数的更新,不断变化,每次都除以前面所有参数微分值平方和的平均值,如图8、图9。 ?图 8 ?图 9 ? ? ? ? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/27 18:46:45- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |