机器学习(吴恩达)_学习笔记(week one)

学习网址(视频):https://www.bilibili.com/video/BV1tJ411475P
学习网址(笔记):https://github.com/fengdu78/Coursera-ML-AndrewNg-Notes
https://www.jianshu.com/p/3231d44d5f6f

机器学习是让机器自己去学着解决问题,是计算机本身拥有的能力,而不是让设备按照人类写好的既定步骤去解决问题。

一、什么是机器学习Tom Mitchell(来自卡内基梅隆):
一个程序被认为能从经验E中学习,解决任务T,达到性能度量值P,当且仅当,有了经验E后,经过P评判,程序在处理T时的性能有所提升。

二、监督学习(Supervised Learning)与无监督学习(Unsupervised Learning)

<1>监督学习:
定义:根据已有的数据集,知道输入和输出结果之间的关系,机器根据这种已知的关系,训练得到一个最优的模型。也就是说,在监督学习中训练数据既有特征(feature)又有标签(label),通过训练,让机器可以自己找到特征和标签之间的联系,在面对只有特征没有标签的数据时,可以判断出标签。

一般有两类问题:一是回归问题(Regression),一是分类问题(Classfication )

回归问题:连续型,输入变量与输出变量均为连续的变量的预测问题,拟合一条最优的有关(x,y)的函数,通过代价函数cost function来评估。

分类问题:离散型,输出变量为有限个离散变量的预测问题。

举个栗子!

①回归问题:预测房价
一个学生从波特兰俄勒冈州的研究所收集了一些房价的数据。数据包括房子的面积(feature)和对应的房价(label),你把这些数据画出来:横轴表示房子的面积,单位是平方英尺,纵轴表示房价,单位是千美元。那基于这组数据,假如你有一个朋友,他有一套750平方英尺房子,现在他希望把房子卖掉,他想知道这房子能卖多少钱。
我们可以应用机器学习算法,拟合一条合理的函数曲线来推断房价的预估值。

在这里插入图片描述
监督学习的基本思想即:
我们数据集中的每个样本都有相应的“正确答案”。再根据这些样本作出预测,就像房子和肿瘤的例子中做的那样。我们还介绍了回归问题,即通过回归来推出一个连续的输出,之后我们介绍了分类问题,其目标是推出一组离散的结果。

②分类问题:预测肿瘤性质
通过观察已有样本,包括肿瘤大小(feature)以及对应的肿瘤性质(恶性或者良性)(label),预测一个新的数据:给定肿瘤大小,判断其肿瘤是恶性还是良性,结果输出值必定是一个离散的数值:是或者否。

在这里插入图片描述
<2>无监督学习:

定义:我们不知道数据集中数据、特征之间的具体关系,但无监督学习要根据聚类或一定的模型,判断出数据属于不同的聚集簇。这是一个,那是另一个,将他们区分开来。

举个栗子!

①谷歌新闻(聚类算法,属于无监督学习的一种)
谷歌新闻每天都在收集非常多的网络的新闻内容,再将这些新闻分组,组成有关联的新闻。所以谷歌新闻做的就是搜索非常多的新闻事件,自动地把它们聚类到一起,将这些全是同一主题的新闻事件,显示到一起。
在这里插入图片描述
②鸡尾酒宴问题
有个宴会房间里满是人,全部坐着,都在聊天,这么多人同时在聊天,声音彼此重叠,因为每个人都在说话,同一时间都在说话,你几乎听不到你面前那人的声音。所以,可能在一个这样的鸡尾酒宴中的两个人,他俩同时都在说话,假设现在是在个有些小的鸡尾酒宴中。我们放两个麦克风在房间中,因为这些麦克风在两个地方,离说话人的距离不同每个麦克风记录下不同的声音,虽然是同样的两个说话人。听起来像是两份录音被叠加到一起,或是被归结到一起。而分类算法的作用就是将音频中的声音区分开来。

三、单变量线性回归(Linear Regression with one variable)
<1>模型表示
在这里插入图片描述
在这里插入图片描述
<2>代价函数
代价函数,有时也称为平方误差函数、平方误差代价函数。
平方误差代价函数可能是解决回归问题最常用的手段。

在这里插入图片描述
m表示训练样本的数量;
1/m为了消除样本数量对样本方差的影响,表示m个样本方差的均值;
2是为了方便后面求导,其实这里无论除以2m还是m,代价函数最优化的结果θ 都是相同的。

模型所预测的值与训练集中实际值之间的差距(下图中蓝线所指)就是建模误差(modeling error)
在这里插入图片描述
代价函数是函数的函数,我们的目标是尽量的减少预测值和实际值的方差,即选择出可以使得建模误差的平方和能够最小的模型参数。

假设θ0=0,hθ(x)、J(θ1)只与θ1有关。
在这里插入图片描述
现在我们使用两个参数θ0和θ1,分别变化θ0和θ1可以得出代价函数图像如下:
在这里插入图片描述
下面我们将使用轮廓图(contour plots or contour figures)来表示:
在这里插入图片描述
每个圈代表在J(θ0, θ1)相同的情况下θ0和θ1不同的取值。

取θ0和θ1越接近最小点,直线拟合效果越好。如下面的拟合效果就好得多了。
在这里插入图片描述

四、梯度下降

梯度下降是一个用来求函数最小值的算法,我们将使用梯度下降算法来求出代价函数J(θ0, θ1) 的最小值。
在这里插入图片描述
为了说明问题,只使用θ0,θ1。
梯度下降背后的思想是:开始时我们随机选择一个参数的组合(θ0, θ1)计算代价函数,然后我们寻找下一个能让代价函数值下降最多的参数组合。我们持续这么做直到找到一个局部最小值(local minimum),因为我们并没有尝试完所有的参数组合,所以不能确定我们得到的局部最小值是否便是全局最小值(global minimum),选择不同的初始参数组合,可能会找到不同的局部最小值。
在这里插入图片描述
在这里插入图片描述
如图所示,梯度下降会因为初始化的不同而获得不同的局部最优解。

批量梯度下降(batch gradient descent)算法的公式为:
在这里插入图片描述
其中α是学习率(learning rate),它决定了我们沿着能让代价函数下降程度最大的方向向下迈出的步子有多大,在批量梯度下降中,我们每一次都同时让所有的参数减去学习速率乘以代价函数的导数(偏导)。

对于θ0和θ1,正确的做法是同步更新θ0和θ1。

梯度下降法之所以能找到local minimum的原因:(以只更新θ1举例说明)
在这里插入图片描述
微分项求导或偏导,其实相当于给θ1一个增加或者减少的方向(可以用切线的性质来理解);而α决定了增加和减少的值,即步长大小,α为正数。

如果初始化已经在局部最优点,那么θ不再变化,因为微分项已经为0。
在这里插入图片描述
α太小将导致迭代速率低下,α太大梯度下降法有可能越过最低点,甚至无法收敛。

应用举例:
我们要将梯度下降和代价函数结合。我们将用到此算法,并将其应用于具体的拟合直线的线性回归算法里。

梯度下降算法和线性回归算法比较如图:
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

梯度下降,有时也称为批量梯度下降。批量指的是在梯度下降的每一步中,我们都用到了所有的训练样本。在每一个单独的梯度下降中,计算微分求导项时,我们需要进行求和运算。因此,批量梯度下降法这个名字说明了我们需要考虑所有这一"批"训练样本,而事实上,有时也有其他类型的梯度下降法,不是这种"批量"型的,不考虑整个的训练集,而是每次只关注训练集中的一些小的子集。

线性回归函数是凸函数(convex function),只有全局最优解,没有局部最优解
在这里插入图片描述
在这里插入图片描述

五、矩阵知识(Linear algebra review)
就是线代课本学过的知识啦,包括矩阵、向量定义、基本运算以及逆矩阵、转置矩阵等基础知识。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值