理论知识
机器学习对理论知识要求很高
黎雨毫
这个作者很懒,什么都没留下…
展开
-
面向对象思想理解贝叶斯公式,及其在机器分类中的应用
如何理解贝叶斯公式?我可以借助面向对象的思想去理解它.假设我有很多JavaBean,class Bean1 {String porpertyX=value1//其他属性......}class Bean2{String porpertyX=value2//其他属性......}//其他JavaBean......不同的Bean(Bean1,Bean2,...)就可...原创 2020-01-28 19:34:40 · 343 阅读 · 0 评论 -
学习率及其指数衰减
根据上一篇给出的梯度下降的公式,很明显,参数的变化量有两个数决定,一个是偏导,另一个是学习率.首先来说一下学习率对于学习过程又怎样的影响.1.首先是学习率过小,这种情况其实只是将来损失函数收敛的会比较慢,比较费时间.2.然后是学习率过大,你可以这么理解,在你的脚下是一个坑,学习率可以暂且理解为你的 步伐大小,如果你迈的步子大,一下就到坑的那边,就避免踩到坑里了,但对于机器学习它...原创 2020-01-31 08:51:00 · 1470 阅读 · 0 评论 -
张量理解
import tensorflow as tfimport tensorflow.compat.v1 as tf#设置为v1版本tf.disable_v2_behavior()#禁用v2版本#首先,要了解一个叫张量的东西,到时候在节点之间流通的就是它了#理解方式:我认为用数组理解就够了,张量的结束就是数组的维数#不用扯什么立体,矩阵,列表,向量之类的东西,实例如下:#零维数组:# ...原创 2020-01-29 10:22:11 · 417 阅读 · 0 评论 -
梯度下降算法
什么是梯度下降?A:梯度下降是一种算法.这种算法是干啥的?A:是用来求使得损失函数最小时参数的值.先等等,损失函数又是个什么东西?A:一步一步理解,首先假设你已经构建好一个完整的向前传播网络,在此基础下,你像这个网络输入一组特征值(x),神经网络就会给你输出(y),这都很好理解.1.损失函数可以首先理解为是以输出结果为自变量的函数,因为比较典型的损失函数如均方误差,交叉熵,都...原创 2020-01-30 20:53:28 · 205 阅读 · 0 评论 -
多项式回归
在没有激励函数的情况下,输出和输入只是线性关系,甚至就算加上激励函数,那也是和整个输出的非线性关系.当我感觉输出应该和某个特征为非线性关系时,该怎么办?这里要用到一种叫多项式回归的办法:其实也很简单,就是把原来的输入加一项,某个特征的幂次,质数,随便你.假如原来的输入特征向量是:现在我先对数据集进行一些处理,将其变为:当然,我在吴恩达老师的课里还看到一种方法:...原创 2020-01-31 09:08:06 · 370 阅读 · 0 评论 -
标准方程
我们把所有的参数构成一个向量,用θ表示,所有特征组成一个矩阵,用X表示,所有标签组成一个向量,用Y来表示,所以有:既然有了等式,我们其实可以直接把θ接出来:可见,参数矩阵其实是可以直接求出来的,乍一看不知比机器学习高到哪里去,但其实它也有不少缺点:1.当特征量是十万,百万的数量级下,使用标准方程会很慢.2.它不方便解决逻辑回归(分类)问题....原创 2020-01-31 09:20:40 · 518 阅读 · 0 评论 -
归一化
这是吴恩达老师讲过的一个东西,其实我是我是不想总结的,不过因为心里太别扭,不得不说一下.和多项式回归有一点像,归一化也是对特征先进行一些预处理,就是缩放,使得特征的范围都在一个数量级上,当你用了多项式回归之后就要考虑一下它了.因为归一化可以使得梯度下降速度更快一些,下面上图:...原创 2020-01-31 10:13:46 · 177 阅读 · 0 评论 -
过拟合及其解决办法
过拟合就是模型的对于数据集和标签集的模拟效果很强,但是泛化能力不行.就好像私人定制的东西可能不适合批量生产,因为它们可能无法较好的满足大众市场的需求.又好比一个学生在学习的时候只会做那么几道题,也就是他背会了你给他的题的答案,但是到了考试的时候还是只会按照那几道题的固定模式去做,结果考崩了.一般来说,过拟合是因为你的从参数很多,而数据相对较少,不能充分的约束参数.那么如何解决过拟合...原创 2020-01-31 10:32:22 · 402 阅读 · 0 评论 -
正则化
首先:如果你的参数比原来更小,那么你的模型就会比原来的更''简单'',可以想象成曲线更平滑.其实你想想,参数越大,对应特征对于模型的影响就越大,减小参数,然后,你懂的,嗯.其实我是想削减那些和模型低相关特征的影响,但是我不知道是哪个,那就统统让它们变小,宁错过,不放过.至于怎么让参数变小,我之前不是有个损失函数吗,我的梯度下降可以让损失函数变小,'那我直接往原来的损失函数后面...原创 2020-01-31 14:11:18 · 187 阅读 · 0 评论