逻辑回归 机器学习基础(2)

来源:互联网 发布:python android 逆向 编辑:程序博客网 时间:2024/04/30 10:16

1 分类与表达式

1.1 分类

例子:

Email:垃圾(span)邮件/非垃圾(not span)邮件
在线交易:是/否欺诈(Fraudulent)
肿瘤:恶性/良性

y{0,1}:{Negative,Position}
y{0,1,2,3,}:

逻辑回归

0hθ(x)1
离散变量:{0,1}

逻辑回归01

1.2 假设函数的表达式

hθ(x)=g(θTx)g(z)=11+ezhθ(x)=11+eθTx

hθ(x)y=1 的概率值,当取输入为 x 时,

hθ(x)=p{y=1|x;θ}
s.t.  p{y=0|x;θ}+p{y=1|x;θ}=1

1.3 决策边界

hθ(x)=g(θ0+θ1x1+θ2x2)

假定 y=1,当 hθ(x)0.5(阈值)

g(θTx)0.5(阈值),即 θTx0θ0+θ1x1+θ2x20

线性决策边界

1.4 非线性决策边界

hθ(x)=g(θ0+θ1x1+θ2x2+θ3x21+θ4x22)θ0=θ1=θ3=1θ2=0θ4=11+x21+x22=0

训练集 (拟合) 边界

非线性决策边界

2 逻辑回归模型

2.1 代价函数

J(θ)=1mi=1mCost(hθ(x(i)),y(i))
其中,

Cost(hθ(x),y)={log(hθ(x)),log(1hθ(x)),y=1y=0

其中 J(θ)凸函数

逻辑回归代价函数

2.2 简单的代价函数与梯度下降法

Cost(hθ(x),y)=ylog(hθ(x))(1y)log(1hθ(x))
J(θ)=1m[i=1my(i)log(hθ(x(i)))+(1y(i))log(1hθ(x(i)))]

Objection.minθJ(θ)

梯度下降法

Repeat{θj=θjα1mi=1m(hθ(x(i))y(i))x(i)j}

这一迭代形式与“线性回归”中的梯度下降法相同,但是“h(x(i))”是不同的。其中,特征缩放(归一化)一样适用。

2.3 高级优化方法

用于求解 min  J(θ),收敛速度更快。

优化算法

  1. 梯度下降法(Gradient descent)
  2. 共轭梯度法(Conjugate gradient)
  3. 变尺度法(BFGS)
  4. 线性变尺度法(L-BFGS)

其中 2,3,4 优化算法无需学习参数 α,且效率比梯度下降法更好。

3 多类别分类

方法: 一对多算法(One-vs-all)
例子
Email foldering/tagging: work (y=1), friends (y=2), family (y=3), hobby (y=4)

一对多

maxih(i)θ(x)

y=1,2,3,,n,令 y=i1,其他为 0,采用逻辑回归方法,做 n 次分类。

4 解决过拟合问题

4.1 过拟合

J(θ)0 0

过拟合

解决方法

诊断调试

  1. 减少特征数量(舍弃特征)
  2. 正则化(保留所有特征)

4.2 代价函数

hθ(x)=θ0+θ1x1+θ2x2+θ3x3+θ4x4

希望 θ3, θ4 尽量小,则

minθ12mi=1m(hθ(x(i))y(i))2+1000θ3+1000θ4()

正则化

对某些参数增加惩罚项,其中针对所有参数的为

J(θ)=12m[i=1m(hθ(x(i))y(i))2+λj=1nθ2j]

其中,λ 为正则化参数,λ 过大,会使得 θj0,以至于欠拟合

4.3 正则化的线性回归

J(θ)=12m[i=1m(hθ(x(i))y(i))2+λj=1nθ2j]

minθJ(θ)

梯度下降法

θ0=θ0α1mi=1m(hθ(x(i))y(i))x(i)0θj=θjα[1mi=1m(hθ(x(i))y(i))x(i)j+λmθj]j=1,2,3,,n

正规方程

θ=(XTX)1XTyθ=XTXλ011(n+1)1XTy

(XTX)1 不可逆时,可将其转化为可逆矩阵。

4.4 正则化逻辑回归

J(θ)=[1mi=1my(i)log(hθ(x(i)))+(1y(i))log(1hθ(x(i)))]+λ2mj=1nθ2j

minθJ(θ)

采用梯度下降法等优化算法求解。

1 0
原创粉丝点击