当前位置: 首页 > news >正文

重庆慕尚网站建设在线美工

重庆慕尚网站建设,在线美工,xampp wordpress,企业网站的意思最近面试有要求手撕SGD#xff0c;这里顺便就把梯度下降、随机梯度下降、批次梯度下降给写出来了 有几个注意点#xff1a; 1.求梯度时注意label[i]和pred[i]不要搞反#xff0c;否则会导致模型发散 2.如果跑了几千个epoch#xff0c;还是没有收敛#xff0c;可能是学习率…最近面试有要求手撕SGD这里顺便就把梯度下降、随机梯度下降、批次梯度下降给写出来了 有几个注意点 1.求梯度时注意label[i]和pred[i]不要搞反否则会导致模型发散 2.如果跑了几千个epoch还是没有收敛可能是学习率太小了 # Xn*k # Y: n*1import random import numpyclass GD:def __init__(self,w_dim,r):# 随机初始化self.w [random.random() for _ in range(w_dim)]self.bias random.random()self.learningRate rprint(foriginal w is {self.w}, original bias is {self.bias})def forward(self,x):# 前馈网络ans []for i in range(len(x)):y0for j in range(len(x[0])):yself.w[j]*x[i][j]ans.append(yself.bias)return ansdef bp(self,X,pred,label,opGD):# 计算均方差loss 0for i in range(len(pred)):loss(label[i]-pred[i])**2loss loss/len(X)# 计算梯度# 梯度下降if opGD:grad_w [0 for _ in range(len(self.w))]grad_bias0for i in range(len(X)):grad_bias-2*(label[i]-pred[i])for j in range(len(self.w)):grad_w[j]-2*(label[i]-pred[i])*X[i][j] # 反向传播更新梯度self.biasself.bias-self.learningRate*grad_bias/len(X)for i in range(len(self.w)):self.w[i]-self.learningRate*grad_w[i]/len(X)# 随机梯度下降if opSGD:grad_w [0 for _ in range(len(self.w))]grad_bias0randInd random.randint(0,len(X)-1)grad_bias-2*(label[randInd]-pred[randInd])for j in range(len(self.w)):grad_w[j]-2*(label[randInd]-pred[randInd])*X[randInd][j] # 反向传播更新梯度self.biasself.bias-self.learningRate*grad_biasfor i in range(len(self.w)):self.w[i]-self.learningRate*grad_w[i]# 批次梯度下降if opBGD: grad_w [0 for _ in range(len(self.w))]grad_bias0BS8randInd random.randint(0,len(X)/BS-1)X X[BS*randInd:BS*(randInd1)]label label[BS*randInd:BS*(randInd1)]pred pred[BS*randInd:BS*(randInd1)]for i in range(len(X)):grad_bias-2*(label[i]-pred[i])for j in range(len(self.w)):grad_w[j]-2*(label[i]-pred[i])*X[i][j] # 反向传播更新梯度self.biasself.bias-self.learningRate*grad_bias/len(X)for i in range(len(self.w)):self.w[i]-self.learningRate*grad_w[i]/len(X)return lossdef testY(X,w):Y []for x in X:y0for i in range(len(x)):yw[i]*x[i]Y.append(y)return Y# 构建数据 n 1000 X[[random.random() for _ in range(2)] for _ in range(n)] w[0.2,0.3] B0.4 Y testY(X,w)# 设置样本维度为2 k 2 lr GD(k,0.01) Loss0 epochs2000for e in range(epochs):Loss 0pred lr.forward(X)losslr.bp(X,pred,Y,BGD)Lossloss if (e%100)0: print(fstep:{e},Loss:{Loss}) X_test[[random.random() for _ in range(2)] for _ in range(2)] Y_testtestY(X_test,w)print(X_test,X_test) print(Y_test,Y_test) print(Y_pred,lr.forward(X_test)) 测试效果如下 也还行
http://www.pierceye.com/news/368970/

相关文章:

  • 珠海网站设计培训源码网站
  • 中山好的做网站的公司网站seo外包
  • 付费的网站是指展览馆网站建设方案书
  • 免费整套ppt模板下载网站网络营销推广目的
  • 公司 做网站企业手机app开发公司
  • 玉树电子商务网站建设多少钱做类似淘宝一样的网站
  • 住房城乡与建设厅网站燕郊网站开发
  • 欧美风格网站特点wordpress 电影主题
  • 烟台网站建设网站推广团队logo标志设计
  • 怎么注册建设银行网站如何创建属于个人网站
  • 双语网站系统wordpress page 父页面
  • 连云港做网站设计稿定设计官网入口
  • 建筑网站推荐wordpress hook api
  • 昆明做网站公司哪家好安卓优化
  • 魔站建站系统哪家好国内知名的包装设计公司
  • 福田区住房和建设局网站早晨设计 做网站设计吗
  • 郑州轨道网站开发手机怎么做动漫微电影网站
  • vscode网站开发昆明做网站找启搜网络
  • 如何评估网站虚拟商品交易网站建设
  • 太原网站优化教程pycharm做网站
  • 哪些网站做英语比较好免费下载模板ppt
  • 网站建设运营计划书wordpress 维护页面
  • 襄阳定制型网站开发前端网页设计招聘
  • 网站备案报价深圳市住房和建设局官网首页
  • 宁波江北区网站推广联系方式做一个论坛网站要多少钱
  • 网站制作无锡台州建设工程网站
  • 云网站 制作如何做一个网页
  • 微信免费建站新建网站站点的
  • 云网站制作的流程世界500强企业排名
  • 巨久科技网站建设做出个人网站什么水平