一、算法原理:
1.线性回归算法
给定由n个属性(维度)描述的示例x=(x1;x2;…;xn),其中xi是x在第i个属性上的取值,线性模型试图学的一个通过属性的线性组合来进行预测的函数,即
也可以写成:
w为回归系数,b为常量。
线性回归通常用来处理连续性变量,当因变量f(x)为离散变量,比如分类变量时,线性回归就显得不那么实用,这时候就需要采用其他方法来处理分类问题。
2.逻辑回归算法
逻辑回归是用于处理因变量为分类变量的回归问题,常见的二分类或二项分布问题。是一种分类方法。又称为sigmoid函数。
假设一个二分类问题:判断一个人是否患病,并且有这些属性:年龄、性别、体质指数、平均血压和疾病指数等。
患病的概率为p,不患病的概率为1-p
那么患病与不患病的比例为:
反过来推导p:
公式两边分别乘以得到:
其中z值表示一元多项式,一般默认值域范围为[-6,6],也可以确定为更高的值。对应的p值也会增加。
基本图像如下:
一般情况在z值是较难确定的,所以引入梯度下降算法,进行线性回归系数的拟合计算。
3.梯度下降算法
梯度下降原理在机器学习和模型优化中有着十分重要的作用。类似于:将一个球从山顶往山脚滚动,先加速,到一定时候减速。与sigmoid函数图像相类似,有的时候也会用sigmoid函数作为梯度下降函数。
线性回归函数公式:
其中θ为线性回归系数,梯度下降用