二分类问题

记录下,吴恩达老师课程 Classfication的一个笔记,主要是公式的推导。

笔记主要分为以下内容:
1、分类的用途
2、分类的假设函数选取 h(x)
3、分类的决策边界(使得拟合过程更加具体,直观)
4、代价函数 cost function 的表示 J(teta)
5、迭代取最优的参数

一、分类的用途

相比于回归问题,分类问题得到的 是 离散的值(discrete values),我们主要讨论二分类问题(binaray)。例如垃圾邮件判断,肿瘤的判断等。

二、假设函数(Model)

在分类问题中,假设函数其实是一个复合函数,内函数是一个 线性回归的函数,外面加一个激活函数(g(Z))
二分类问题_第1张图片

上面的函数称为 sigmoid function或者 loistic function。
上面的sigmoid function 的图像如下图:
二分类问题_第2张图片

从上图可以看出,g(Z)的值在[0,1]之间,其实输出就可以看成 probability ,可以假设一个阈值,如果

大于该阈值则判断为class 1,否则为class 2。
二分类问题_第3张图片

三、决策边界

决策边界的引入,会让分类问题更加的直观理解。
二分类问题_第4张图片
在上面的阐述中,判断分类可以转换为 g(z)输出的 值和某个阈值的关系,又由g(z)的曲线可以的出z的大致取值。比如说,取阈值为0.5,由曲线可知,
当z=0时,g(z)=0.5,
z<0时,g(z)<0.5;
z>0时,g(z)>0.5
而z又可转换为,theta 转置 * X。即一个线性的问题,如果仅为线性的话,就判断 在平面中,该点在直线的上方还是下方的问题,该条直线就为决策边界。(Decision boundry)。
上面的叙述转化为下图:
二分类问题_第5张图片
在MATLAB中实现如下图;
二分类问题_第6张图片

当theta ’ X取得很复杂的时候,决策边界可能也就变得非线性,此时的决策边界也就变得很复杂了:
具体的例子见下图:
二分类问题_第7张图片

四、代价函数 (cost function)

二分类问题_第8张图片
在分类问题中,cost function 的选择为:
二分类问题_第9张图片
二分类问题_第10张图片
下面具体表示下公式的由来:

假设概率的公式如下:
二分类问题_第11张图片
上式也可等价表示为:
在这里插入图片描述
二分类问题_第12张图片
为了方便计算,对上式进行求对数运算:
二分类问题_第13张图片

五、最优化的方法

二分类问题_第14张图片
二分类问题_第15张图片
在这里插入图片描述
得到最终的结果:
二分类问题_第16张图片
上述的更新公式和最小二乘的规则看起来有点像,,但是它们确是不同的算法:
在这里插入图片描述

吴老师还介绍了,在MATLAB库函数中,有一个 fminumc()的库函数,可自动求得无约束函数的最优点,需要输入loss和gradient等配置:

二分类问题_第17张图片

六:多分类的问题

二分类问题_第18张图片
二分类问题_第19张图片

你可能感兴趣的:(机器学习)