2021
04-07
04-07
Python实现批量梯度下降法(BGD)拟合曲线
1.导入库importnumpyasnp#矩阵运算importmatplotlib.pyplotasplt#可视化importrandom#产生数据扰动2.产生数据拟合曲线y=2×x2+x+1 X_m=np.mat([[i**2,i,1]foriinrange(-10,10)])#矩阵类型,用于运算y_m=np.mat([[2*x[0,0]+x[0,1]+1+random.normalvariate(0,1)]forxinX_m])#矩阵类型,用于运算X_a=np.asarray(X_m[:,1].T)[0]#array类型,用于可视化y_a=np.asarray(y_m.T)[0]#array...
继续阅读 >
本文实例为大家分享了python实现梯度下降法的具体代码,供大家参考,具体内容如下使用工具:Python(x,y)2.6.6运行环境:Windows10问题:求解y=2*x1+x2+3,即使用梯度下降法求解y=a*x1+b*x2+c中参数a,b,c的最优值(监督学习)训练数据:x_train=[1,2],[2,1],[2,3],[3,5],[1,3],[4,2],[7,3],[4,5],[11,3],[8,7]y_train=[7,8,10,14,8,13,20,16,28,26]测试数据:x_test=[1,4],[2,2],[2,5],[5,3],[...