分类问题
我们尝试预测的是结果是否属于某一个类(例如正确或错误)
分类举例
- 判断一封电子邮件是否是垃圾邮件
- 判断一次金融交易是否是欺诈
- 判断一个肿瘤是恶性的还是良性的
考查二元分类问题
我们将因变量(dependent variable)可能属于的两个类分别称为正向类(positive class)和负向类(negative class),我们分类器的输出值要么是1要么是0,1表示正向类,0表示负向类。
引入一个新的模型:逻辑回归模型
hθ(x)=g(θTX)
其中,X代表特征向量,g代表一个常用的逻辑函数(logistic function):Sigmoid function,是一个常见的S型函数
sigmoid函数的公式
g(z)=1+e−z1
sigmoid函数图形

图片来源:维基百科
对模型的理解
hθ(x)=g(θTX)的作用是,对于给定的输入变量,根据选择的参数,计算输出变量等于1的可能性(Estimated probality)用数学公式表达:
hθ(x)=P(y=1∣x;θ)
例如,对于给定的x,通过确定的参数计算得到hθ(x)=0.7,则表示y有70%的可能性
是1(正向类),相应地,有30%的可能性是0(负向类)。
代价函数
如何拟合逻辑回归模型的参数θ
逻辑回归的代价函数为
J(θ)=m1i=1∑mCost(hθ(x(i)),y(i))
其中
Cost(hθ(x),y)={−log(hθ(x))−log(1−hθ(x))if y=1if y=0
来源:吴恩达上课ppt
这样构建的Cost(hθ(x),y)函数的特点是:
- 当实际输出y=1,并且hθ(x)=1时,误差为0
- 当实际输出y=1,但是hθ(x)=1时,误差随着hθ(x)变小而增大
- 当实际输出y=0,并且hθ(x)=0时,误差为0
- 当实际输出y=0,但是hθ(x)=0时,误差随着hθ(x)变大而增大

来源:机器学习个人笔记完整版v5.4-A4打印版
代价函数Cost(hθ(x),y)的简化表达式,将分段函数写成一个表达式
Cost(hθ(x),y)=−y×log(hθ(x))−(1−y)×log(1−hθ(x))
由上面逻辑回归的代价函数
J(θ)=m1i=1∑mCost(hθ(x(i)),y(i))
代入得
逻辑回归的代价函数为
J(θ)=m1i=1∑m[−y(i)×log(hθ(x(i)))−(1−y(i))×log(1−hθ(x(i)))]
提出负号,即
J(θ)=−m1i=1∑m[y(i)×log(hθ(x(i)))+(1−y(i))×log(1−hθ(x(i)))]
使用梯度下降法计算使得该代价函数最小的参数值
来源:吴恩达上课ppt
参考资料
吴恩达,Deep Learning
黄海广,机器学习个人笔记完整版v5.4-A4打印版