机器学习-逻辑回归算法(Logistic Regression)

524 阅读2分钟

在分类问题中,我们尝试预测的是结果是否属于某一个类(例如正确或错误)。分类问题的例子有:判断一封电子邮件是否是垃圾邮件;判断一次金融交易是否是欺诈,通常使用逻辑回归算法解决分类问题,这个算法的性质是:它的输出值永远在 0 到 1 之间。

逻辑回归模型

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

逻辑回归模型的假设是: image.png

其中: 𝑋 代表特征向量 𝑔 代表逻辑函数,一个常用的逻辑函数为 S 形函数(Sigmoid function),公式为: image.png

image.png

对模型的理解:

image.png

判定边界 现在假设我们有一个模型:

image.png

并且参数𝜃 是向量[-3 1 1]。 则当−3 + 𝑥1 + 𝑥2 ≥ 0,即𝑥1 + 𝑥2 ≥ 3时,模型将预测 𝑦 = 1。 我们可以绘制直线𝑥1 + 𝑥2 = 3,这条线便是我们模型的分界线,将预测为 1 的区域和预 测为 0 的区域分隔开

image.png

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

代价函数: 提供了一种方法来衡量特定的合适训练数据的参数,从而尝试了一种尝试选择更好参数的方法。

不能线性回归模型的代价函数在逻辑回归上,因为这样得到的代价函数会是一个非凸函数,这意味着我们的代价函数有许多局部最小值,这将影响梯度下降算法寻找全局最小值。

image.png

这样构建的𝐶𝑜𝑠𝑡(ℎ𝜃 (𝑥), 𝑦)函数的特点是:当实际的 𝑦 = 1 且ℎ𝜃 (𝑥)也为 1 时误差为 0, 当 𝑦 = 1 但ℎ𝜃 (𝑥)不为 1 时误差随着ℎ𝜃 (𝑥)变小而变大;当实际的 𝑦 = 0 且ℎ𝜃 (𝑥)也为 0 时 代价为 0,当𝑦 = 0 但ℎ𝜃 (𝑥)不为 0 时误差随着 ℎ𝜃 (𝑥)的变大而变大。