机械学习小白第二周自我总结

本文深入探讨了逻辑回归在分类问题中的应用,包括假设函数的构造、代价函数的定义、梯度下降法的应用,以及如何处理多类别分类问题。同时,文章还讨论了正则化在防止过拟合中的作用。

机器学习自我总结第二周

机器学习第二周:逻辑回归

逻辑回归是一种分类算法

1.什么是分类

  • 接收的消息是否是垃圾消息(是,不是)
  • 肿瘤是良性还是恶性(0-良性 1-恶性)
    -…
    对于以上的问题我们都可以用是和否来表示

分类需要建立一个模型
如果按照一般的线性回归模型,讲肿瘤的大小作为因变量,输出0-良性,1-恶性。
假设用线性回归的假设函数hθ(x)h_θ(x)hθ(x),会让我们认为,当我们的的值输出小于0.5的时候,所得的是良性,当我们输出的值大于0.5的时候,所得的是恶性。但是,线性回归会使得到的h(x)的值远大于1或者是远小于1,会发现此时的图像,若小于0.5,不一定就是良性,就会出现偏差,所以线性回归的假设函数,并不适用于分类问题。
在这里插入图片描述

所以此时我们就需要构造一个新的假设函数使得输出的值永远处于(0,1)之间,及0&lt;=hθ(x)&lt;=10&lt;=h_\theta(x)&lt;=10<=hθ(x)<=1

构造新的假设函数

要使得输出的值永远在(0,1)之间,逻辑回归的假设函数是hθ(x)=g(θTX)h_\theta(x) = g(\theta^TX)hθ(x)=g(θTX)
其中的g代表的是逻辑函数一个S型的函数公式为,g(x)=11+e−xg(x) = \frac{1}{1+e^{-x}}g(x)=1+ex1,将x=θTXx=θ^TXx=θTX带入,得g(x)=11+e−θTxg(x) = \frac{1}{1+e^{-θ^Tx}}g(x)=1+eθTx1
在这里插入图片描述
由图可得,函数的区间就是(0,1),因此可以用作分类,当大于0.5的时候,恶性,小于0.5的时候良性。且,当里面的θTx\theta^TxθTx大于零的时候,趋向1,当小于零的时候趋向零

所以到现在为止:

  • 我们建立的模型需要使0&lt;=hθ(x)&lt;=10&lt;=h_\theta(x)&lt;=10<=hθ(x)<=1
  • 建立为g(z)=11+e−zg(z) = \frac{1}{1+e^{-z}}g(z)=1+ez1
  • 带入得逻辑函数的假设函数hθ(x)=g(θTX)=11+e−θTxh_\theta(x) = g(\theta^TX) = \frac{1}{1+e^{-θ^Tx}}hθ(x)=g(θTX)=1+eθTx1

hθ(x)h_\theta(x)hθ(x) 的作用是给定x,通过已经确定的参数计算得出变量等于正向类的可能性

判断边界

所谓判断边界就是确定分类时各自的界限,让我们更直观的看出假设函数的目的。
可以从图像上更直观的体现出分类
假设参数θ已知,要判断取1还是0,就判断 θTX\theta^TXθTX 的值
若对于hθ(x)=g(θ0+θ1x1+θ2x2)h_\theta(x) =g(\theta_0+ \theta_1x_1 +\theta_2x_2 )hθ(x)=g(θ0+θ1x1+θ2x2),已知θ012θ_{012}θ012分别为-3 1 1,就得出 函数-3 + x1 + x2 >= 0,就可以分类的分界线。
在这里插入图片描述

代价函数

与线性回归方程类似,逻辑回归也需要一个最适合的θ值(或者多个),要找到这些就一样用代价函数。首先线形回归的代价函数为 j(θ)=12m∑i=1m(hθx(i)−y(i))2j(θ) = \frac{1}{2m}\sum^{m}_{i = 1}(h_θx^{(i)}-y^{(i)})^2 j(θ)=2m1i=1m(hθx(i)y(i))2

因为hθ(x)h_\theta(x)hθ(x)不同,对于逻辑回归,我们需要做一些改动
逻辑回归的代价函数为j(θ)=1m∑i=1mCost(hθ(x(i)),y(i))j(θ) = \frac{1}{m}\sum^{m}_{i = 1}Cost(h_θ(x^{(i)}),y^{(i)}) j(θ)=m1i=1mCost(hθ(x(i))y(i))
其中Cost(hθ(x(i)),y(i))Cost(h_θ(x^{(i)}),y^{(i)})Cost(hθ(x(i))y(i)):Cost(hθ(x),y)={−log(1−h(x)),if y=0−log(h(x)),if y=1Cost(h_θ(x),y)=\{^ {-log(h(x)),if \ y = 1} _{-log(1-h(x)),if \ y = 0}Cost(hθ(x)y)={log(1h(x)),if y=0log(h(x)),if y=1
将其合并,并带入代价函数J(θ)得:J(θ)=−1m∑i=1m[y(i)log(h(x(i))+(1−y(i))log(1−hθ(x(i)))]J(\theta)=-\frac{1}{m}\sum^{m}_{i = 1}[y^{(i)}log(h(x^{(i)})+(1-y^{(i)})log(1-h_\theta (x^{(i)}))]J(θ)=m1i=1m[y(i)log(h(x(i))+(1y(i))log(1hθ(x(i)))]
…式子真的很长,但是其目的也是为了找出参数的θ的最优值,因此在此基础之上,我们同样需要用梯度下降去解决代价函数。
梯度下降:θj:=θj−αϕϕθjj(θ)\theta_j:=\theta_j -\alpha\frac{\phi}{\phi\theta_j}j(\theta)θj:=θjαϕθjϕj(θ),带入可得:
θj:=θj−α1m∑i=1m(hθx(i)−y(i))xj(i)\theta_j:=\theta_j -\alpha \frac{1}{m}\sum^{m}_{i = 1}(h_θx^{(i)}-y^{(i)})x_j^{(i)}θj:=θjαm1i=1m(hθx(i)y(i))xj(i)
样子和线形回归类似,但是因为他们的假设函数不同 因此是不同的

以上属于二元分类,生活中更多是多类别分类

比如说同样是天气,但是要区分,晴天,雨天,阴天。此时需要想办法把它变成多个二元分类。
此时我们需要构造一个分类器
我们设晴天正向类,雨天和阴天两者一起为负向类,此时我们令一个hθ(1)(x)h_\theta^{(1)}(x)hθ(1)(x),这样紫就可以得出一个第一个决策边界,区分晴天和其他天气

接着我们设雨天正向类同样的,其他天气为负向类,这样可以得到一个hθ(2)(x)h_\theta^{(2)}(x)hθ(2)(x),这个可以得到第二个决策边界,区分雨天和其他天气

最后我们设阴天正向类同样的,其他天气为负向类,这样可以得到一个hθ(3)(x)h_\theta^{(3)}(x)hθ(3)(x),这个可以得到第三个决策边界,区分阴天和其他天气

这样可以得到三个决策边界,最后每一个分别带入参数θ和x,得到每一个的正向量的概率P,因此得以判断是哪一类。

正则化:

当我们估计一个东西的值,使用普通的线形回归如,h(x)=θ0+θ1x1h(x) = \theta_0+\theta_1x_1h(x)=θ0+θ1x1,此时构造出来的模型,误差会很大,称之为欠拟合

当我们估计一个东西的值,十分精确的对应每一个值建立出的模型,虽然很适合我们的的训练集,但是喃,当我们放入一个新的值的时候,效果并不是那么好,称为过度拟合,一般过度拟合的式子就是由于他是多项式,且x的次数会很高(这样拟合会很好),如:h(x)=θ0+θ1x+θ2x2+θ3x3+θ4x4h(x) = \theta_0+\theta_1x+\theta_2x^2+\theta_3x^3+\theta_4x^4h(x)=θ0+θ1x+θ2x2+θ3x3+θ4x4
因此,防止过度拟合的情况发生,根据过度拟合出现的条件我们可反推出
在这里插入图片描述

  1. 舍弃部分不是很重要的特征
  2. 保留特征,减小参数的大小(正则化)

正则化,就是减小参数θ的值,对θ值的“惩罚”。用正则化参λ进行一系列操作,如:
J(θ)=12m[∑i=1m(hθ(x(i))−y(i))2+λ∑j=1nθj2]J(\theta) = \frac1{2m}[\sum_{i=1}^{m}(h_\theta(x^{(i)})-y^{(i)})^2 + \lambda\sum_{j=1}^{n}\theta_j^2]J(θ)=2m1[i=1m(hθ(x(i))y(i))2+λj=1nθj2]
后面这一块就是对θ值的“惩罚”,使得θ的值变小。

但是对于正则化的λ也要选择合适,若太大,就会导致其他的θ值都趋近于0,使得我们需要的图像变成只有θ0 的直线。

正则化线形回归

正则化线形回归的代价函数为:J(θ)=12m[∑i=1m(hθ(x(i))−y(i))2+λ∑j=1nθj2]J(\theta) = \frac1{2m}[\sum_{i=1}^{m}(h_\theta(x^{(i)})-y^{(i)})^2 + \lambda\sum_{j=1}^{n}\theta_j^2]J(θ)=2m1[i=1m(hθ(x(i))y(i))2+λj=1nθj2]

梯度下降:θ0:=θ0−a1m∑i=1m(hθ(x(i))−y(i))x0(i)\theta_0 : = \theta_0 -a\frac1m\sum_{i=1}^{m}(h_\theta(x^{(i)})-y^{(i)})x_0^{(i)}θ0:=θ0am1i=1m(hθ(x(i))y(i))x0(i)
θj:=θj−a[1m∑i=1m(hθ(x(i))−y(i))xj(i)+λmθj]\theta_j : = \theta_j - a[\frac1m\sum_{i=1}^{m}(h_\theta(x^{(i)})-y^{(i)})x_j^{(i)} + \fracλm\theta_j]θj:=θja[m1i=1m(hθ(x(i))y(i))xj(i)+mλθj]

同样的正规方程求解正则化线性回归模型:
在这里插入图片描述

正则化逻辑回归

一样的在后面对θ进行“惩罚”:J(θ)=−1m∑i=1m[y(i)log(h(x(i))+(1−y(i))log(1−hθ(x(i)))]+λ2m∑j=1nθj2J(\theta)=-\frac{1}{m}\sum^{m}_{i = 1}[y^{(i)}log(h(x^{(i)})+(1-y^{(i)})log(1-h_\theta (x^{(i)}))]+ \fracλ{2m}\sum_{j=1}^{n}\theta_j^2J(θ)=m1i=1m[y(i)log(h(x(i))+(1y(i))log(1hθ(x(i)))]+2mλj=1nθj2

其梯度下降为:θ0:=θ0−a1m∑i=1m(hθ(x(i))−y(i))x0(i)\theta_0 : = \theta_0 -a\frac1m\sum_{i=1}^{m}(h_\theta(x^{(i)})-y^{(i)})x_0^{(i)}θ0:=θ0am1i=1m(hθ(x(i))y(i))x0(i)
θj:=θj−a[1m∑i=1m(hθ(x(i))−y(i))xj(i)+λmθj]\theta_j : = \theta_j - a[\frac1m\sum_{i=1}^{m}(h_\theta(x^{(i)})-y^{(i)})x_j^{(i)} + \fracλm\theta_j]θj:=θja[m1i=1m(hθ(x(i))y(i))xj(i)+mλθj]

虽然两者梯度下降的形式上一样,但是由于h(x)不同 ,实为两个不同的式子。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值