机器学习_吴恩达_week1(机器学习分类+单变量线性回归)

 

目录

一、绪论

1.1 欢迎

1.2 机器学习是什么?

1.3 监督学习

1.4 非监督学习

二、单变量线性回归

2.1 模型表示

2.2 代价函数

2.3 代价函数的直观理解I

2.4 代价函数的直观理解II

2.5 梯度下降

2.6 梯度下降的直观理解

2.7 梯度下降的线性回归

三、线性代数回顾


一、绪论

1.1 欢迎

Machine Learning  

  • Grew out of work in AI  
  • New capability for computers

Examples:  

  • Database mining
    Large datasets from growth of automation/web.
    E.g., Web click data, medical records, biology, engineering
  •  Applications can’t program by hand. 
    E.g., Autonomous helicopter, handwriting recognition, most of Natural Language Processing (NLP), Computer Vision.
  • Self-customizing programs
    E.g., Amazon, Netflix product recommendations
  • Understanding human learning (brain, real AI).

1.2 机器学习是什么?

机器学习定义有很多,广为人知有以下两条:

  • Arthur Samuel (1959). Machine Learning: Field of study that gives computers the ability to learn without being explicitly programmed.
    举例:西洋棋
  • Tom Mitchell (1998) Well-posed Learning Problem: 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.
    一句话总结:通过学习经验E后,任务T上的性能度量P有所提升
    举例:西洋棋
    E:下很多棋积累的经验
    T:下棋
    P:与新棋手下的胜率

    举例:垃圾邮件
    E:查看哪些邮件被识别为垃圾邮件,哪些是非垃圾邮件
    T:将邮件分类
    P:对新来的邮件,正确分类的比例

机器学习分类:

  • 监督学习
  • 非监督学习

其它:强化学习、迁移学习、推荐系统等

还会关注:机器学习算法的最佳实践

1.3 监督学习

举例:房价预测(回归问题---连续值)

举例:乳腺癌(分类问题---离散值)

举例:乳腺癌(多个特征)

其实,现实中,特征的个数非常大,怎么处理?支持向量机SVM中有个巧妙方法

一句话总结:监督学习是数据集中的每个样本,都有确定值的标签。
回归问题:函数模型拟合样本数据,预测值是连续值。
分类问题:函数模型分割样本数据,预测值是离散值。

1.4 非监督学习


聚类算法是一种典型的非监督学习算法。它会把数据分成不同的簇。

举例:google新闻会把相同主题的新闻聚集到一起

举例:一些应用

举例:经典的鸡尾酒会问题

一句话总结:非监督学习就是数据集中的样本没有标签。它是一种学习策略,给算法喂大量数据,让算法为我们从数据中找出某种结构。

最佳实践:先用octave/matlab快速实现算法模型,确定算法正常工作后,再用迁移到python/c++/java环境上。(硅谷大公司都这么做)

二、单变量线性回归

机器学习算法的三板斧:

  • 模型函数
  • 代价函数
  • 最小化代价函数(梯度下降法)

2.1 模型表示

还是以房价预测为例:

训练数据集的一些说明:

注:

  • m:表示训练集样本数量
  • X:表示输入特征集合
  • Y:表示输出特征
  • (x^{(i)}, y^{(i)}):表示训练集中第i个样本

一句话总结:
对于房价预测问题,从最简单的模型入手,单变量线性回归模型函数是:{\color{Red} h(x) = \theta _0 + \theta_1 x}

2.2 代价函数

\

这里的代价函数是:J\left(\theta_{0}, \theta_{1}\right)=\frac{1}{2 m} \sum_{i=1}^{m}\left(h_{\theta}\left(x^{(i)}\right)-y^{(i)}\right)^{2}
一句话总结:对于回归问题,最常用的代价函数是均方误差:{\color{Red} J\left(\theta\right)=\frac{1}{2 m} \sum_{i=1}^{m}\left(h_{\theta}\left(x^{(i)}\right)-y^{(i)}\right)^{2}}
我们的目标是最小化代价函数,从而得到模型函数,用于预测。

2.3 代价函数的直观理解I

为了简化,更直观的理解,本节我们只考虑\theta_0=0, \theta_1=其它值其它值的情况。


上图中,当\theta _0=0, \theta_1=1时,对于图中的3个训练数据集,此时J(\theta)=0

接下来,看看\theta_0=0, \theta_1=0.5时,J(\theta)=0.68

那么,不同的\theta_1的取值对应不同的J(\theta_1)值,J(\theta_1)值组成的函数就是代价函数

上图中,从右则的代价函数图形可以看出,当\theta_1=1时,代价函数J取最小值,再看下左侧模型图,\theta_1=1的模型,完美的拟合了3个训练集点

2.4 代价函数的直观理解II

2.3节中,只考虑了一个参数\theta_1的情况,本节讨论两个参数的情况。

当改变\theta_0, \theta_1时,会得到J(\theta_0, \theta_1)的值,这些J值,得到函数图像是一个曲面,如下图:

下面不用三维空间中的曲面来描述,而是用等高图来表示。等高图可以简单理解为,从上图中“碗口”方向向下看,投影到平面上的圆或椭圆,圆线上的值,即J是相等的。

等高图的两点说明:

  • 同椭圆线上的代价函数值是相等的
  • 最内层的圆心是J的最小值点

如上图中红叉这个点,对应\theta_0=800, \theta_1=-0.15,其模型函数如左图所示,显然不是很好的拟合。
等高图中最内层的圆心是J的最小值,图中红叉点离最内层圆心比较远,也说明了此点对应的模型效果不好


这个图中红星点已经非常接近J的最小值了,但是还不是最小值,此点的模型效果明显要好很多。

像这种画图像并不是一个找出J最小值的好办法,原因有两点:一是非常多特征参数时,没办法可视化代价函数;二是这种办法很笨。下一节介绍最小化代价函数的有效方法。

2.5 梯度下降

梯度下降是最小化代价函数比较常用的一种方法。


梯度下降存在多个局部最小值点。可以选择不同起始点,得到多个局部最小值,然后选择最小的那个。

本着重要事情说三遍的原则:
一图看懂梯度下降算法!
一图看懂梯度下降算法!!
一图看懂梯度下降算法!!!
好了,说完了,直接上图:

2.6 梯度下降的直观理解

为了简化说明,下面讨论只有一个参数的情况J(\theta_1)

来看偏导部分:

对于一个参数的代价参数,偏导即导数,导数即斜率。上图的上半部分,在最小值点的右边,\alpha都是正数,那么是减小的,即\theta_1是向最小值点方向(左移)移动的。同理,上图的下半部分,\theta_1也是向最小值点方向(右移)移动的。

来看学习率\alpha

一句话总结:

  • \alpha太小收敛慢,\alpha太大不收敛
  • 即使\alpha固定不变,由于偏导部分越来越小(斜率越来越平),\theta更新幅度自动越来越小
  • 取不同起始点,得到多个局部最小值,取最小的那个
     

2.7 梯度下降的线性回归




在机器学习中,通常不太会给算法起名字,这里的“批量梯度下降”是指在梯度下降的每一步中,都用到了所有的训练样本。也就是说每一步求和项中的m,都是全部训练样本。因此,批量梯度下降法这个名字说明了我们需要考虑所有这一"批"训练样本,而事 实上,有时也有其他类型的梯度下降法,不是这种"批量"型的,不考虑整个的训练集,而是每次只关注训练集中的一些小的子集 。

代价函数最小值问题,也可以用正规方程求解,但是在大数据量时,梯度下降更适合。

泛化的梯度下降算法,使梯度下降更强大

三、线性代数回顾

参考:点击打开链接

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值