Coursera Machine Learning 学习笔记(十三)

VI. Logistic Regression (Week 3)

- Classification

在分类问题中,我们所尝试预测的是结果是否属于某一类(例如正确或错误)。分类问题的例子有:判断一封电子邮件是否是垃圾邮件;判断一封电子邮件是否是垃圾邮件;判断一次金融交易是否是欺诈等等。

我们从二元的分类问题开始讨论。

我们将因变量(dependent variable)可能属于的两个类分别称为负向类(negative class)和正向类(positive class),则因变量

- Hypothesis representation

下面,我们回顾一开始提到的乳腺癌分类问题,我们可以用线性回归的方法求出适合数据的一条直线。

根据线性回归模型我们只能预测连续的值,然而对于分类问题,我们需要输出0或1,我们可以预测:

对于上图所示的数据,这样的一个线性模型似乎能很好地完成分类任务。然而,假设我们又观测到一个非常大尺寸的恶性肿瘤,将其作为实例加入到我们的训练集中来,这将使得我们获得一条新的直线。

此时,再使用0.5作为阈值来预测肿瘤是良性还是恶性便不合适了。可以看出,线性回归模型,因为其预测的值可以超越[0,1]的范围,并不适合解决这样的问题。

于是,我们引入一个新的模型,逻辑回归,该模型的输出变量范围始终在0和1之间。

其中,的作用是,对于给定的输入变量,根据选择的参数计算输出变量=1的可能性(estimated
probability),即

例如,如果对于给定的x,通过已经确定的参数计算得出,则表示有百分之70的几率y为正向类,相应的y为负向类的几率为1
- 0.7 = 0.3。

- Decision boundary

在逻辑回归中,我们预测:

根据之前绘制出的S形函数图像,我们知道当:

,即:

举个例子,假设我们有一个模型:并且参数是向量[-3
1 1]。

则当大于等于0,即大于等于3时,模型将预测y = 1。

我们可以绘制直线,这直线便是我们模型的分界线,将预测为1的区域和预测为0的区域分隔开。

假使我们的数据呈现如下情况,究竟需要怎样的模型才合适呢?

因为需要用曲线才能分隔开y = 0的区域和y = 1的区域,我们需要二次方特征:

假设参数是[-1 0 0 1 1],则我们得到的判定边界恰好是圆点在原点且半径为1的圆形。

我们可以用非常复杂的模型来适应非常复杂形状的判定边界。

时间: 2024-10-29 19:11:59

Coursera Machine Learning 学习笔记(十三)的相关文章

Coursera Machine Learning 学习笔记(一)

之前就对Machine Learning很感兴趣,假期得闲看了Coursera Machine Learning 的全部课程,整理了笔记以便反复体会. I. Introduction (Week 1) - What is machine learning 对于机器学习的定义,并没有一个被一致认同的答案. Arthur Samuel (1959) 给出对机器学习的定义: 机器学习所研究的是赋予计算机在没有明确编程的情况下仍能学习的能力. Samuel设计了一个西洋棋游戏,他让程序自己跟自己下棋,并

Coursera Machine Learning 学习笔记(六)

- Gradient descent 梯度下降算法是一个用来求得函数最小值的算法,这里我们将使用梯度下降算法来求出代价函数的最小值. 梯度下降的思想是:开始的时候我们随机选择一个参数的组合并计算代价函数,之后我们寻找下一个能使得代价函数值下降最多的参数的组合. 我们持续如此过程直到一个局部最小值(local minimum),由于我们并没有完全尝试完所有参数的组合,所以我们不能够确定我们得到的局部最小值是否为全局最小值(global minimum),而且选择不同的参数组合,我们可能会找到不同的

Coursera Machine Learning 学习笔记(二)

- Supervised Learning 对于监督学习我们先看一个例子,下图中表示的是一个房价预测的例子.图中横坐标表示房屋占地面积,纵坐标表示房屋交易价格.图中的每个叉则表示一个房屋实例. 现在,我们希望能够预测一个房屋占地面积为750平方英尺的房屋的交易价格是多少.简单的方法是根据这些数据点的分布,画出一条合适的直线,然后根据这条直线来预测.当然,在此房价预测例子中,一个二次函数更加适合已有数据的分布.因此,我们可能会更加希望使用这个二次函数的曲线来进行房价预测. 因此,我们称上述这样的学

Coursera Machine Learning 学习笔记(四)

 II. Linear Regression with One Variable (Week 1) - Model representation 以之前预测房价的问题为例,假设我们回归问题的训练集(Training Set)如下所示: 我们用如下符号来描述回归问题中的量: - m 代表训练集中实例的数量 - x 代表特征/输入变量 - y 代表目标变量/输出变量 - (x,y) 代表训练集中的实例 -  代表第i个观察实例 - h 代表学习算法的解决方案或函数,也称为假设(hypothesi

Coursera Machine Learning 学习笔记(三)

- Unsupervised Learning 在监督学习中,无论是回归问题还是分类问题,我们所用到数据都有明确的标签或相应的预测结果. 而在非监督学习中,我们现有的数据没有相应的结果或标签,有的只是特征.因此,非监督学习要解决的问题是发现这些数据是否可以分为不同的组. 非监督学习的一个典型问题是聚类问题,例如: - 分析大型数据中心网络传输数据情况,分析哪些机器在协同工作. - 社交网络分析 - 市场分割 - 天文数据分析 - 人类基因聚类分析 还有一个经典的例子是鸡尾酒会问题,在一个满是人的

Coursera Machine Learning 学习笔记(十)

- Learning rate 在梯度下降算法中,算法收敛所需要的迭代次数根据模型的不同而不同.由于我们不能提前预知,因此我们可以绘制出迭代次数和代价函数的对应关系图来观测算法在何时是趋于收敛. 当然,也有一些可以自动检测是否收敛的方法,例如我们将代价函数的变化值与某个预先设定的阈值(如0.001)进行比较,从而判断是否收敛.但是通常情况下,观测上面的图表更加直观. 梯度下降算法每次的迭代会受到学习率的影响,如果学习率过小,则达到收敛所需的迭代次数会非常高:如果学习率过大,每次迭代可能不会减小代

Coursera Machine Learning 学习笔记(十四)

- Cost function 对于线性回归模型,我们定义的代价函数是所有模型误差的平方和.理论上来说,我们也可以对逻辑回归模型沿用这个定义,但是问题在于,当我们将带入到这样定义了的代价函数中时,我们得到的代价函数将是一个非凸函数(non-convex function). 这意味着我们的代价函数有许多局部最小值,这将影响梯度下降算法寻找全局最小值. 因此,我们重新定义逻辑回归的代价函数为: 其中 与之间的关系如下图所示: 这样构建的函数的特点是:当实际的y=1且也为1时误差为0,当y=1但不为

Coursera Machine Learning 学习笔记(五)

- Cost function 针对训练集以及我们的假设,下面我们将考虑如何确定假设中的系数. 我们现在要做的就是选择合适的参数,参数的选取直接影响着所得到的直线对于训练集描述的准确程度.所预测的值与训练集中实际值之间的差距就是建模误差(Modeling Error). 通过计算建模误差的平方和,进而定义代价函数(Cost Function).我们的目标则是通过对参数的选择来使得代价函数最小. 通过绘制等高线,我们可以看出三维空间中确实存在一个可以使得代价函数最小的点. 下图则展示了,通过选择合

Coursera Machine Learning 学习笔记(七)

- Gradient descent for linear regression 这里我们将梯度下降算法应用到线性回归模型中,我们先回顾一下梯度下降算法以及线性回归模型: 然后我们将梯度下降算法中的斜率也就是偏导数展开: 多数情况下,线性回归模型代价函数的分布形如凸面体,因此局部最小值也就相当于全局最小值: 下面是整个收敛以及参数确定过程: