逻辑回归2

0 阅读1分钟

今天接着逻辑回归。

5.简化的成本函数和梯度下降(整体讲解如何完整进行逻辑回归)

  1. 先确定逻辑回归的代价函数:

Pasted image 20260227142030.png 这个式子可以合并成: Cost(hθ(x),y)=ylog(hθ(x))(1y)log(1hθ(x))Cost(h_{\theta}(x),y) = -y*\log(h_{\theta}(x))-(1-y)*\log(1-h_{\theta}(x)) 即,逻辑回归的代价函数:

Cost(hθ(x),y)=ylog(hθ(x))(1y)log(1hθ(x))=1mi=1m[y(i)log(hθ(x(i)))+(1y(i))log(1hθ(x(i)))]\begin{aligned} Cost(h_{\theta}(x),y) &= -y*\log(h_{\theta}(x))-(1-y)*\log(1-h_{\theta}(x)) \\ &=-\frac{1}{m}\sum_{i=1}^{m}[y^{(i)}\log(h_{\theta}(x^{(i)}))+(1-y^{(i)})\log(1-h_{\theta}(x^{(i)}))] \end{aligned}
  1. 找出尽量让J(θ)J(\theta)取得最小值的参数θ\theta minJ(θ)minJ(\theta)
    • 给出一个新的样本,假如某个特征x,可以用拟合训练样本的参数θ\theta,来输出对假设的预测。

    • 假设的输出,则是概率值:p(y=1x;θ)p(y=1|x;\theta),接下来就是思考如何最大限度地最小化代价函数J(θ)J(\theta),作为一个关于θ\theta的函数,这样才能为训练集拟合出参数θ\theta

    • 使用梯度下降法来最小化代价函数: J(θ)=1mi=1m[y(i)log(hθ(x(i)))+(1y(i))log(1hθ(x(i)))]J(\theta)=-\frac{1}{m}\sum_{i=1}^{m}[y^{(i)}\log(h_{\theta}(x^{(i)}))+(1-y^{(i)})\log(1-h_{\theta}(x^{(i)}))]

      θj:=θjaJ(θ0,θ1)θj\theta_{j}:=\theta_{j}-a\frac{\partial J(\theta_{0},\theta_{1})}{\partial\theta_{j}}

求导后得到:

Pasted image 20260227150346.png 按照这个式子来同时更新所有θ\theta的值,虽然更新参数的规则看起来和线性回归基本相同,但由于假设的定义不同,所以本质并不相同。

  • 同样的,我们也可以使用线性回归中同样的方法来检测逻辑回归的梯度下降,以确保它正常收敛。我们可以使用for循环来更新参数值,但更提倡使用向量化方法来同时更新参数。

  • 特征缩放也同时适用于逻辑回归