逻辑回归Logistic Regression

概念

  使用线性回归预测分类问题显然不合适,因此引入逻辑回归来处理0/1分类问题,其中逻辑就是1(是)和0(非)。在逻辑回归中,我们利用线性回归中的假设函数来处理分类问题。
h θ ( x ) > 0.5 = > y = 1 h θ ( x ) ≤ 0.5 = > y = 0 h_\theta (x) \gt 0.5 => y=1 \\ h_\theta (x) \leq 0.5 => y=0 hθ(x)>0.5=>y=1hθ(x)0.5=>y=0

Sigmoid预测函数

  也成为激活函数,在神经网络中也会运用,形式: g ( z ) = − 1 1 + e − z g(z)=-\frac{1}{1+e^{-z}} g(z)=1+ez1图像如下所示:
激活函数图像
  逻辑回归中,假设函数被定义为: h θ ( x ) = g ( z ) , z = θ T x h_\theta(x)=g(z),z=\theta^Tx hθ(x)=g(z),z=θTx z z z是分类边界。所以我们可以由图像得出: θ T x ≥ 0 = > y = 1 θ T x < 0 = > y = 0 \theta ^Tx\ge 0 => y=1 \\ \theta ^Tx \lt 0 => y=0 θTx0=>y=1θTx<0=>y=0
  后面的SVM支持向量机中会对这个图像稍微改造一下。

决策边界(decsion boundary)

  是用来划清界限的边界,可以是点、线或者是平面。课程中强调,决策边界是假设函数的属性,训练集只是用来训练和调参,所以决策边界并不是训练集的属性。
  线性的决策边界: h θ ( x ) = g ( θ 0 + θ 1 x 1 + θ 2 x 2 ) h_\theta(x)=g(\theta_0+\theta_1x_1+\theta_2x_2) hθ(x)=g(θ0+θ1x1+θ2x2)
线性决策边界
  非线性决策边界:
       h θ ( x ) = g ( θ 0 + θ 1 x 1 + θ 2 x 2 + θ 3 x 1 2 + θ 4 x 2 2 ) h_\theta(x)=g(\theta_0+\theta_1x_1+\theta_2x_2+\theta_3x_1^2+\theta_4x_2^2) hθ(x)=g(θ0+θ1x1+θ2x2+θ3x12+θ4x22)
非线性决策边界

预测代价函数(cost function)

  我们通过代价函数 J ( θ ) J(\theta) J(θ)评估模型的误差,通过减小代价函数的值来调整参数,一般来说,代价函数拥有越少的极小值点,就越容易找到最小值点,也就越容易达到最准确的预测。代价函数比较
  如图像所示,左边的图非凸函数,很容易达到极小值,也就是局部最优值,而右边的图像更平滑,是典型的凸函数,到达极小值点时也达到了全局最优值。
  逻辑回归中的代价函数被定义为: J ( θ ) = 1 m ∑ i = 1 m C o s t ( h θ ( x ( i ) ) , y ( i ) ) J(\theta)=\frac{1}{m}\sum\limits_{i=1}^mCost(h_\theta(x^{(i)}),y^{(i)}) J(θ)=m1i=1mCost(hθ(x(i)),y(i))新的代价函数

最小化代价函数

  与线性回归相似,有梯度下降和正规方程两种方法。
批量梯度下降与随机梯度下降:
批量梯度下降
随机梯度下降

多分类问题

  当想要分成k类时,那就一共做k次逻辑回归,每次将 k ( i ) k^{(i)} k(i)作为分类的正例,其余作为负例,这样一共会获得k个假设函数,也就是k个模型,对于新输入的x,代入这k个模型中,选出假设函数值最大的那个,那么x输出的就是k类。

©️2020 CSDN 皮肤主题: 1024 设计师:上身试试 返回首页