机器学习中线性模型和非线性的区别

时间:2024-02-25 08:26:02

机器学习中线性模型和非线性的区别

一、总结

一句话总结:

1)、线性和非线性的区别是是否可以用直线将样本划分开(这个观点是对的)
2)、线性模型可以是用曲线拟合样本,但是分类的决策边界一定是直线的,例如logistics模型
3)、区分是否为线性模型,主要是看一个乘法式子中自变量x前的系数w,如果w只影响一个x,那么此模型为线性模型。或者判断决策边界是否是线性的

 

1、线性模型和非线性模型实例?

线性模型:因为x1*w1中可以观察到x1只被一个w1影响:$$y=\frac{1}{1+e^{w_0+w_1*x_1+w_2*x_2}}$$
非线性模型:x1不仅仅被参数w1影响,还被w5影响,如果自变量x被两个以上的参数影响,那么此模型是非线性的:$$y=\frac{1}{1+w_5*e^{w_0+w_1*x_1+w_2*x_2}}$$

 

 

二、机器学习中线性模型和非线性的区别

转自或参考:机器学习中线性模型和非线性的区别
http://blog.csdn.net/wbcnb/article/details/78306970

误区

  • 线性和非线性的区别是是否可以用直线将样本划分开(这个观点是对的)
  • 和同学讨论到logistics模型是线性还是非线性的,很难理解!(logistics模型是广义线性模型)
  • 区分一下回归和分类问题,线性模型是可以用来曲线拟合(回归)的,但是线性模型模型的分类一定是一条直线的,例如logistics模型。

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

  1. 线性模型可以是用曲线拟合样本,但是分类的决策边界一定是直线的,例如logistics模型
  2. 区分是否为线性模型,主要是看一个乘法式子中自变量x前的系数w,如果w只影响一个x,那么此模型为线性模型。或者判断决策边界是否是线性的
  • 举例
    $$y=\frac{1}{1+e^{w_0+w_1*x_1+w_2*x_2}}$$
    画出yx是曲线关系,但是它是线性模型,因为x1*w1中可以观察到x1只被一个w1影响

 

$$y=\frac{1}{1+w_5*e^{w_0+w_1*x_1+w_2*x_2}}$$

此模型是非线性模型,观察到x1不仅仅被参数w1影响,还被w5影响,如果自变量x被两个以上的参数影响,那么此模型是非线性的!
4 其实最简单判别一个模型是否为线性的,只需要判别决策边界是否是直线,也就是是否能用一条直线来划分

 

神经网络是非线性

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

 

 

第一层的表达式

$$y1=\frac{1}{1+e^{w_0+w_1*x_1+w_2*x_2+w_3*x_3}}$$

$$y2=\frac{1}{1+e^{w_4+w_5*x_1+w_6*x_2+w_7*x_3}}$$

 

第二层的表达式

$$z=\frac{1}{1+e^{k_1+k_2*y_1+k_3*y_2}}$$

 

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