机器学习中线性函数与非线性函数的区别

直线是线性函数,但一些曲线也是线性函数

线性模型和非线性模型的区别?

a. 线性模型可以用曲线拟合样本,线性模型可以是用曲线拟合样本,但是分类的决策边界一定是直线的,例如logistics模型(广义线性模型,将线性函数进行了一次映射)。

b. 区分是否为线性模型,主要是看一个乘法式子中自变量x前的系数w,如果w只影响一个x,那么此模型为线性模型。或者判断决策边界是否是线性的
举例:

y=11+ew0+w1x1+w2x2y=11+ew0+w1∗x1+w2∗x2

画出y和x是曲线关系,但是它是线性模型,因为x1*w1中可以观察到x1只被一个w1影响

y=11+w5ew0+w1x1+w2x2y=11+w5∗ew0+w1∗x1+w2∗x2

此模型是非线性模型,观察到x1不仅仅被参数w1影响,还被w5影响,如果自变量x被两个以上的参数影响,那么此模型是非线性的!

c. 其实最简单判别一个模型是否为线性的,只需要判别决策边界是否是直线,也就是是否能用一条直线来划分

举例:

线性模型:LR

Logistic Regression模型是广义线性模型,因为 logistic 回归的决策边界(decision boundary)是线性的:

LR是线性模型,可以理解为将普通的线性模型的结果映射到一个(0,1)的区间而已,然后划分一个界限(0.5)

非线性模型:神经网络

虽然神经网络的每个节点是一个logistics模型,但是组合起来就是一个非线性模型。
此处我们仅仅考虑三层神经网络

第一层的表达式:

y1=11+ew0+w1x1+w2x2+w3x3
y2=11+ew4+w5x1+w6x2+w7x3
第二层的表达式:
z=11+ek1+k2y1+k3y2

将第一层的表达式带入第二层表达式中,可以观察到x1变量不仅仅被w1影响还被k2影响,所以此模型不是一个线性模型,是个非线性模型。

引申问题: 神经网络激励函数的作用是什么?

神经网络激励函数的作用是什么?有没有形象的解释? - lee philip的回答 - 知乎
https://www.zhihu.com/question/22334626/answer/21036590

总结:sigmoid激活函数可以引入非线性因素,让模型学习到一个分类平面,得到一个非线性的决策边界,如下图


  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值