机器学习之线性回归
主要是对吴恩达机器学习的视频来学习,学习了线性回归内容,总体进行复盘总结; 1、一元线性回归 回归模型是表示输入变量到输出变量之间映射的函数,回归问题等价于函数拟合,回归函数的求解最常用的代价函数是平方损失函数,平方损失函数可以用最小二乘法进行解决,本例中使用梯度下降法进行处理; 梯度下降法:优点:可以处理复杂的目标函数 缺点:如果代价函数不是凸函数,则容易得到局部最优解 学习率的选择,过小导致收敛速度慢,过大则会造成震荡 方法一:自己编写python代码实现 x = [ 1 , 2 , 3 , 4 , 5 , 6 ] y = [ 7 , 8 , 9 , 10 , 11 , 12 ] #x,y,数据,a 学习率,m迭代轮数 def linerRegre ( x , y , a , m ) : theta0 = 0 theta1 = 0 diff = [ 0 , 0 ] l = len ( x ) while m > 0 : for i in range ( l ) : diff [ 0 ] += theta0 + theta1 * x [ i ] - y [ i ] diff [ 1 ] += theta0 * x [ i ] + theta1 * x [ i ] * x [ i ] - x [ i ] * y [ i ] theta0 = theta0 - a / l *