机器学习中线性模型和非线性的区别
一、总结
一句话总结:
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模型。
线性模型和非线性模型区别
- 线性模型可以是用曲线拟合样本,但是分类的决策边界一定是直线的,例如logistics模型
- 区分是否为线性模型,主要是看一个乘法式子中自变量x前的系数w,如果w只影响一个x,那么此模型为线性模型。或者判断决策边界是否是线性的
- 举例
$$y=\frac{1}{1+e^{w_0+w_1*x_1+w_2*x_2}}$$
画出y和x是曲线关系,但是它是线性模型,因为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影响,所以此模型不是一个线性模型,是个非线性模型。