引言:个人当前研究倾向是智慧医疗,旨在通过信息科技的数据处理手段,解决当前医学界的问题。
学习初步思路:在师兄的指导下,初步的学习计划为理论与竞赛并行,即一方面补充基础知识,另一方面竞赛实践自己的知识。
笔记:
定义:
A computer program is said to learn from experience E with respect to some task T and some performance measure P,if its performance on T, as measured by P,improves with experience E.
Machine learning algorithms:
栗子:房价预测
原本是零星的点,最后需要给出一条拟合的曲线。
Supervised Learning:“right answers” given
Regression(回归):Predict continuous valued output(price)
栗子2:肿瘤的预测
根据肿瘤的size判断是恶性还是良性。还可以加上年龄、肿瘤厚度等多个特征!分类问题!
无监督学习会分成两个簇(clusters),分簇的算法就叫做聚类算法。
应用很多:
1.谷歌新闻
2.基因检测分类
3.大计算机集群 Organize computing clusters
4.社会网络关系分析 Social network analysis
5.市场分配 Market segmentation
6.天文数据分析 Astronomical data analysis
Cocktail party problem 鸡尾酒算法:
相互啰嗦,但最后通过算法分离出来两个人的独立的声音,举了栗子。
只通过一行代码,调用就能解决问题。所以学习调包!!!
举例的是一个房价预测的线性回归模型。介绍了背景和表达式的含义。比较简单。
一图以蔽之,就是右侧上面的红框,是代价函数,也叫平方误函数 !
为了直观的看效果,这里对Cost Function进行简化 ,只保留一个参数,然后绘制两者的对应图像,我们可以看到两边的对比结果。 其中代价函数是一个二次函数的图像,我们主要要他的最小值的点!
如果我们保留所有的参数,并绘制对应的代价函数的图像如下
一般这种比较复杂,会用等高线去替代,如下图
越往中间,拟合的越好!
为了找到这个最小的值,我们需要一个算法。
算法场景:有一个代价函数,找到对应的最小值。
大纲:从某些参数开始,不停的改变参数减小Cost Function,直到满足某个我们想要的minimum
算法的具体公式如下
注意左侧是正确的公式,右侧是错误的!必须同步更新!
本节主要介绍 上节里的那个导数部分
首先介绍的是 学习率
由于在下降的过程中,斜率也在降低,所以每次减小的幅度也在减小,因此无需自己再去手动降低学习率。这也是为什么用导数,而不是用一个固定值的原因。
结合之前的二维代价函数,以及梯度下降算法,老师演示了每一个的优化过程。
基本知识,easy
还是以房价预测为基础,给出了增加其他几个变量的情况。
多出的特征用新的表现形式,对应预测公式如下:
为了更简单的说明,引入矩阵的表述形式。假设X0=1;
why:因为如果 两个参数范围偏差太大,就会导致他的图像是下图左侧的那样,一个椭圆,然后在梯度下降的时候就拐来拐去,很慢才能到最小值。因为需要将两个参数归一化处理。
Two techniuqes to help with this are feature scaling and mean normalization
减去平均值,并除以范围(max-min)
这里老师给的经验值是 -3~3 和 -1/3–1/3
“Debugging”:How to make sure gradient descent is working correctly
How to choose learning rate?
下图是一个随着迭代次数增加,cost function 在减小。
但是如果出现下面这个图的情况,证明算法有问题
因此在选择学习率时,需要按这个倍数的关系去选择。3倍3倍的改变!(吴恩达:我最喜欢3)
这一节 没有什么新的知识点,就是告诉我们要选择合适的 自变量,以及合适的次数。
Normal equation:Method to solve for theta analytically
就是用线代的解法!
梯度下降法,和正规方程的对比比较有意思哈
注意不同的特征量,对应不同的范围。同时注意正规方程只有在线性回归的情况下比较好用!
后续越来越复杂的算法,都是梯度下降的地盘!
不可逆的原因
略 讲怎么交作业的
之前学的是回归,这节课往后学的是分类,分类用于结果为离散值{0,1};
为什么离散值问题不能用线性回归呢?见下图,如果出现极端大值,就会导致直线偏离
但是后续的优化也是在线性回归的基础上,注意分析这个表达式!
因此将学习logistic回归。 其确保输出值在0到1之间。
为了确保输出值在0到1之间,我们引入函数
sigmoid function=logistic function
不同的函数用于不同的模型场景!
最后的h(x)的输出值可以理解为概率值! 也就是条件概率
由y的结果,可以看出自变量z的取值大于0或小于0,对应不同的情况
由此可以绘制出 x 的图像,就是下图,中间那条线就是决策边界。用于区分两个结果
当然,决策边界也可以很复杂,如下;
再三强调 并不是由训练集决定决策边界,训练集可以得出对应的theta,theta对应的表达式决定决策边界。
这节用来介绍如何通过数据拟合Logistic回归,首先我们先一起看一下它的判断标准,也就是代价函数:
如果直接套用线性回归的代价函数,会导致得到的图像不是凸函数,例如下图左侧,是一个非凸函数,那么就不能用其作为梯度下降算法的基础。
由此,Logistic回归的代价函数 如下图
通过一个类似交叉损失熵的定义,把代价函数写成一个式子。
对梯度下降算法继续求导,得到下式,与线性回归的表达式是一致的,但是内部内容不一样。
本节是在梯度下降算法的基础上,介绍了其他的寻找代价函数最小的 算法,但具体实现没有讲。以后也是只要会调包就行。
正则化,我们想要保留每一个特征。那么只能降低每个特征的影响,从而确保不会过拟合。
由此我们引入了后面的参数
同时为了确保不出意外,我们需要合理的选择lamda!
过大会欠拟合。过小相当于没弄,还是过拟合。
线性回归有两种解法,一个是梯度下降,一个是正规方程。
对其梯度下降的正则化,如下。
对正规方程的正则化如下
如果不可逆什么的,还是有一套对应的标准。
逻辑回归也分了两种,一个是梯度下降,一个是更高级的算法。
这里的正则化大致了解就行了。
why need this hypotheses ?已经有了 线性回归和逻辑回归
但是在一些复杂的场景,比如视觉图像分类的场景下,上述两种模型过于简单无法适用。
给出一些人工智能的例子,确实神奇,同时也告诉了我们人类并没有什么特殊的,都只是物质的组成罢了。
其实这两节听得稀里糊涂的,不像之前每个模型讲的那么详细。但是可以大致理解。
一个简单的神经网络的例子,通过设置权值来实现 AND 与运算。
这个栗子真的举得好,将之前的三个 逻辑结构 进行结合,非常直观的展示了神经网络的算法!!
简单的介绍,就是中间的隐藏层会变成一对多的,同时输出结果也变成了多个。
这章将主要说这个分类问题,可以将分类问题分成以下两种情况,K=1和K>2
神经网络的代价函数是对多个y求解,所以其代价函数还是比较清晰明了的。
这节没太看懂,但先继续下去吧,后面到用的时候再用别人的课补一下。
略,讲的是octave的tips;
在计算的过程中可能出现偏差,因此希望能够做一个梯度的检测 来解决这个问题。
又是没太看懂的一节,神经网络这一节还是要想办法 自己看书啊
介绍 了一个用例,92年做的实验,是真滴牛!
如果你的算法效果存在问题,你应该通过哪些方法来解决:给了六个建议,但现在需要明确走哪条路
做一个诊断!
一开始要构建一个简单的函数,而不是一开始就上猛的,然后慢慢分析是什么问题