Python编写线性回归算法
前言
线性回归(Linear Regression)是机器学习的基础,作为机器学习算法的基石,后人在此基础之上演化了各种更为精确、有效的算法。
1 线性回归的基本原理
线性回归是要用一组特征的线性组合,来拟合目标值。假设函数(hypothesis function)表达如下所示:
x为m×n的特征矩阵,θ为特征参数矩阵,线性回归学习的目标是得到一组拟合的θ向量值。
以下采用比较基础的最小二乘法、梯度下降法求取θ向量值。数据量较小的时候使用最小二乘法
a.最小二乘法
为了求上式的最优解,线性回归需要建立观测结果y与预测结果y’的差别为目标函数J(θ):