首页 > 编程知识 正文

梯度下降法有哪些,用随机梯度下降来优化人生

时间:2023-05-03 19:05:26 阅读:12015 作者:1660

文章目录写在前面小批量随机梯度官方代码的参考文献中

写在前面

小批量随机梯度下降法(mini-batchstochasticgradientdecent )是速度和稳定性的妥协

小批量随机梯度公式

可知b=1时,小批量随机下降法与SGD等价; 当b=N时,小批量成为等效优雅的皮卡丘批量。 因此,小批量梯度下降法的效果也与b的选择有关,该数值称为批量大小(batch size )。 关于如何选择b,感兴趣的朋友可以在下面讨论。

码“”小批量随机梯度下降法(mini-batchstochasticgradientdecent )是对速度和稳定性的妥协。 首先,让我们回顾一下用全批量法如何计算各迭代中的梯度。' ' importpandasaspdimportnumpyasnpimportosos.getcwd (# f : ((python project3() data () ) ) #这个问题是回归问题。 #美国某大型问答平台; a显示社区2010年10月1日至2016年11月30日#1日添加的问题数和答案数。 #任务为: 2016年12月1日至2017年5月1日,本问答集; a是预测网站每天追加的问题数和回答数。 train=PD.read _ CSV (.train.CSV ) )导入数据#train=PD.read_CSV(train.CSV ) ) test=PD.read_CSV 1 ) #用初始点alpha=0.2 #学习率,即步长tol_L=0.1 #阈值,即精度batch_size=16#将x归一化,train是训练数据的二维表max_x max_x )所有id除以max_xy=train () ) )。train维表中的questions列是ytype(train ) (id ) print (train ) ) train列n )、train ) ) id ) ) ) ) print ) ) ) ) max_x ) #用于计算方向(mini - batch随机梯度的函数def compute _ grad _ batch 定义x,y65:'':parambeta:是初始点:param x:是参数:param y:是真值:return:梯度阵列' ' ' grad=[ 0,0 ]。 从batch_size,replace=False ) # range (laen (x ) )中随机选择batch_seze

将16个数据一起训练,求出梯度grad [0]=2. * NP.mean (beta [0] beta [1] * x [ r ]-y [ r ] ) beta [ 1,1 ],中第1个个数的梯度求中第二个数梯度returnNP.array ) grad )的grad(: )、ParamBeta:第一点、初始点:param alpha:学习率,即, 关于时间步:param grad:梯度: return : ' ' new _ beta=NP.array (beta )- alpha * grad return new_beta# ) 贝塔[1]*x-y ) *2#贝塔[0]贝塔[1]*x是预测值,y是真值,RES=NP.sqrt(NP.mean ) squared_err ) ) return res#是第一次计算x y ) #调用损失函数,计算损失beta=update _ beta (beta、alpha、grad ),在以下方面更新loss_new=RMSE ) beta (x、y )调用损失函数迭代I=1whileNP.ABS(loss_new-loss ) tol _ l : beta=update _ beta (beta,alpha,grad ) grad=compute y ) loss=nintercept % s ' % (beta [1],beta [0] ) RES=RMSE ) beta,x, y ) print(ourRMSE:%s ) %RES ) froms klearn.linear _ modelimportlinearregressionlr=linear regresssion ) ) lr.fit trearr (print (sklearncoef : % s ' % lr.coef _ [0] ) print ) sklearncoef3360%s'% 2.19487084],train['id'],y () y [2] # submit=PD.read _ CSV (sample _ submit.CSV ) ) print ) submit[questions]@@@@@@ ',submit [ ' id '

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。