李宏毅机器学习笔记day1

本来是直接记到印象笔记上的,想分享到这里来谁知道上传个图片居然不能直接复制粘贴。。。我只能把文字部分放这了,看图片点下面这个链接机器学习笔记day1
导论regression
*
/rɪˈɡreʃn/

n. 回归;退化;逆行;复原
机器学习就是让电脑自己去找函数
bianry classification二分类 卷积神经网络CNN
multi-class classification多类分类 递归神经网络 RNN
机器学习不光可以regression和classification,还可以generation生成,比如翻译生成文字,画出二次元人物
supervised learning 监督学习
labeled date标注数据
用loss函数/损失函数评估函数的好坏
loss=50%------错误率是百分之50
loss=0%最好
期望机器去自动寻找loss最低的function
reinforcement learning强化学习----就是不断试错,通过奖励机制强化正确学习,保留正确经验
unsupervised learning无监督学习,给机器一堆无标注的数据
network architecture网络体系结构去确定函数搜寻范围
gradient descent
*
/ˈɡreɪdiənt dɪˈsent/ 梯度下降法(一种确定最佳函数的方法)

deep learning framework 深度学习框架 有个工具叫pyorch后面会教
explainable AI可解释人工智能,可以给出生成这个结果的理由
adversarial attack恶意攻击 ,比如在图片中加入人眼看不出来的噪声干扰,但是会干扰计算机的正常执行
network compression网络压缩,将network缩小,可以放到手机上或者其他更小的设备上
这几个要用到CNN的结果,可以看成是一个题组
anomaly detection异常检测,如果放进来的是机器之前没有训练过的其他奇奇怪怪的东西,机器会知道‘’自己不知道‘’这件东西
domian adversarial learning训练资料跟测试资料不一致时,如何才能提高正确率
meta learning 赋予机器学习如何学习的能力
life-long learning 终身学习
reinforcement learning强化学习1.regression回归
典型应用举例
线性模型,靠训练集告诉机器什么样的function是对的,什么样的function是错的。
x是提取的特征。
最小二乘法建立loss函数,大意就是用真实值减去函数预测值取平方
梯度下降法求最佳function
这个符号是学习率,数值越大表明改变的越大
两参数的时候就两个参数分别对loss求偏导,一步一步分别更新两个参数就好了
倒三角:梯度微分算子
这边应该是最速下降法,回头再看一下最优化这部分,最速下降法,牛顿法,拟牛顿法啥的
gradient descent这样找出来的参数是全局参数不是局部参数
在线性回归问题中,是没有局部最优解这样一个说法的,求出来一个最优解一定是全局最优解
个人感觉这里应该跟线性回归问题的loss的构造有关。loss函数是关于输入x的一元二次函数,以x为横轴y为纵轴肯定只有一个谷底,极小值肯定是最小值,局部最优解肯定是全局最优解。
对b和w偏微分的求法。我似乎有点强迫症,这个图都要截
这里讲了如何算测试结果的平均误差
到这里可以看出model的次数选的越高,似乎误差就越小
但是从4次方开始,出现了过拟合现象。所训练出来的模型在训练集上的误差变小了,但是在测试集上的误差变大了。这是由于过于追求模型在训练集上的适用性(损失了在更大样本集上的普适性)导致模型在测试集上的适用性变差了。overfitting 过拟合
可在此基础上探究其他factor对loss函数的影响,可用分类(不同物种 )思想

这里实现了将函数分段表示。在分不同类种的集合上的表现会更好
loss函数中加上后面这项对wx的求和是为了降低w,使得y更为平滑,而更为平滑的目的是为了削弱数量不占优的噪声点(噪声输入数据)y的影响。此处弹幕提到了奥卡姆剃刀原理,个人感觉不是很贴切,w斜率的大小并不代表y函数的复杂或者简单,实际上就是为了削弱噪声而已:
奥卡姆剃刀原理
奥卡姆剃刀定律(Occam’s Razor, Ockham’s Razor)又称“奥康的剃刀”,它是由14世纪英格兰的逻辑学家、圣方济各会修士奥卡姆的威廉(William of Occam,约1285年至1349年)提出。
这个原理称为“如无必要,勿增实体”,即“简单有效原理”。正如他在《箴言书注》2卷15题说“切勿浪费较多东西去做,用较少的东西,同样可以做好的事情。”
我们期待比较平滑的function,但又不希望太过平滑的function。平滑的function说明后面的wx求和项占的比重大,那么考虑的前面误差项比重就会偏小,而误差项比重的偏小势必会引起函数在训练集上的表现下降,若是能适当增加函数的平滑性那么可以有效削弱噪声影响,在测试集上的表现会变好(误差下降),然而过于平滑会导致前面的误差项被过分忽视,最终导致函数在测试集上的表现变差(误差不降反升)
这里看表可以看到一个转折点,也就是lanmuda==100的这个点是最优(列出的而言)
总结:
就这个例子(神奇宝贝还是啥,,傻傻分不清)而言,最终所选model决定最后输出的是每个神奇宝贝的CP值还有它的所属种类(到底是乌龟还是兔子还是皮卡丘)当然还很可能与其他factor有关(比如身高体重)当然尝试引入这几个factor训练出的model是失败的(在训练集上的表现变得更好了,但是在训练集上的表现无一例外都变差了)
梯度下降法的应用(理论他后面会讲,但是最优化都学过了,回头看看书)
过拟合和regularization(我也不知道咋翻译,重新设计?正则化?在这里就是重新设计loss函数模型的意思)
最后这个问题的意思是,他这里用了自己手头的测试集来测试loss值得到11.1,如果拿到一个全新的(极有可能是更大的全新的测试集)来测试这个function,那么你觉得得到的loss值是偏大还是偏小?答案应该是偏大的,这里应该是大小测试集的影响之类的(毕竟训练集就那么一点,对于大数据集没有那么好的拟合,测试集越大,表现出来的欠拟合也就越明显—这里暂时这样理解,应是有点片面了)

你可能感兴趣的:(机器学习)