机器学习开篇

之前看过andrew Ng在斯坦福大学的机器学习的视频,但是没有做笔记也没有进行编程练习,所以打算在coursera重新学习,并将学习过程记录下来。
1.机器学习的定义
coursera上有两种定义
(1)the field of study that gives computers the ability to learn without being explicitly programmed。
(2)A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience E。

2.监督学习
Supervised learning problems are categorized into “regression” and “classification” problems. In a regression problem, we are trying to predict results within a continuous output, meaning that we are trying to map input variables to some continuous function. In a classification problem, we are instead trying to predict results in a discrete output. In other words, we are trying to map input variables into discrete categories.
区别:分类和回归都是监督学习,最大的区别就是分类预测结果有固定的模式的,结果是一个离散型数据,而回归的预测结果是没有固定模式的 ,结果是一个连续型数据。

3.无监督学习
(1)应用
- Organize computing clusters
- Social network analysis
- market segmentation
- Astronomical data analysis
- Cocktail party problem(问题描述:酒会上,两个麦克风记录了两个人的语言,我们需要将他们的语言分离出来,分别输出)

上面最后一个问题只需要一行代码就能实现了哦
这里写图片描述

4.单变量的线性回归
(1)问题描述
这里写图片描述
如上图所示,这是一个根据房屋大小预测房屋价格的问题,由图像可以看到,问题中只有一个单变量Size,且数据分布满足线性条件;所以这里就建立线性回归模型。

(2)模型
这里写图片描述

(3)目标
这里写图片描述

(4)实现
这里采用梯度下降算法对J函数进行最小化,梯度下降算法分为增量梯度下降以及批量梯度下降,他们对应的公式分别为:

这里写图片描述

展开为:

这里写图片描述

扫描二维码关注公众号,回复: 3263887 查看本文章

注意:(1)初始值不同可能会得到不同的局部最优解。
(2)参数值需要同步更新
(3)a参数设置不能太大,如果太大可能出现无法收敛的情况。

5.多变量线性回归
(1)问题描述
这里写图片描述

(2)模型假设
这里写图片描述

(3)目标

求解参数这里介绍两种方法,第一种为梯度下降算法,第二种为正则方程法。
梯度下降法:
这里写图片描述
正则方程法:
这里写图片描述
注意:

  • 特征缩放:将变量范围转化为同一范围内,可以加快收敛速度;此过程叫做归一化(mean noramlization),公式如下:

    这里写图片描述

  • 要想判断代价函数在迭代多少次收敛,一般采用图像法,横轴为迭代次数,纵轴为代价函数值,如果图像如下图所示,即可判断是否为收敛。

  • 如果a太小,收敛速度会很慢;如果a太大,可能不会收敛。为了选择a的值,你可以尝试:……,0.001,0.01,0.1, 1, …….

  • 有时候是可以根据图像来选择多项式函数来进行拟合的。
  • 梯度下降和正则方程的优缺点
    这里写图片描述
  • -

猜你喜欢

转载自blog.csdn.net/xiayeqianfeng/article/details/53001951