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

如何自建网站?2022最好的百度seo

如何自建网站?,2022最好的百度seo,唯品会一家专门做特卖的网站,修改公司网站网页4. 分析上图#xff0c;说明原理#xff08;选做#xff09; 1、为什么SGD会走“之字形”#xff1f;其它算法为什么会比较平滑#xff1f; 之所以会走之字形#xff0c;是因为它在每次更新参数时只考虑当前的样本梯度。这导致参数更新非常不稳定#xff0c… 4. 分析上图说明原理选做 1、为什么SGD会走“之字形”其它算法为什么会比较平滑       之所以会走之字形是因为它在每次更新参数时只考虑当前的样本梯度。这导致参数更新非常不稳定每个样本的梯度方向不一致从而产生了之字形的更新路径。      其他算法相对比较平滑的原因是它们引入了不同的策略来平衡参数更新的稳定性和速度。 例如Momentum算法引入了动量概念它在更新参数时考虑了之前更新的方向和速度。通过积累之前梯度的指数衰减平均值动量算法可以在梯度方向一致时加速收敛并减少参数更新的震荡从而使得更新路径更加平滑。Adagrad和RMSprop算法引入了自适应学习率的概念。它们通过梯度的历史信息对学习率进行调整可以根据梯度值的大小对参数的不同方向分配不同的学习率。这样可以使得梯度大的方向学习率减小梯度小的方向学习率增大从而更加平滑地更新参数。Adam算法在Momentum和RMSprop的基础上进一步改进结合了二者的优点。Adam算法不仅考虑了动量对更新路径的影响还引入了关于梯度平方的一阶矩量和二阶矩量的估计通过对梯度的偏移和峰值信息进行动态调整进一步提高更新路径的平滑性。 2、Momentum、AdaGrad对SGD的改进体现在哪里速度方向在图上有哪些体现     Momentum算法在更新时引入了动量的概念考虑了之前梯度更新的方向和速度。通过积累之前梯度的指数衰减平均值动量算法可以在梯度方向一致时加速收敛并减少参数更新的震荡。它在速度方面对SGD的改进的体现在:相当于增加了更新方向的平滑性。在图上这个改进体现为更新路径会比SGD更加平滑能够加速收敛。         Adagrad它通过历史梯度信息对每个参数自适应地调整学习率。Adagrad的学习率随着时间步的增加而不断衰减在每个参数那里都单独调整。这对于处理非平稳、强烈相关的数据具有很好的效果。在速度方面对SGD的改进的体现在可以自适应地调整每个参数的学习率以更贴合各自的梯度能够让更新更快速及早达到收敛。在图上这个改进体现为更新路径更加平缓而且每个维度更新幅度差异不大。 3.仅从轨迹来看Adam似乎不如AdaGrad效果好是这样么    轨迹上来看是这样因为此时Adam和AdaGrad的学习率并不相同并且Adam和AdaGrad选择的均是一个恰当的学习率。 但是图中的学习率都是调整过的我们随机换一个相同的学习率(0.1) 由上可见Adam优于Adagrad 所以上述观点错误没有一个模型会永远由于另一个知识参数不对而已。 5、调整学习率、动量等超参数轨迹有哪些变化 lr0.01时  lr太小30次根本不够搜索的改为1000次 这次Momentum找到了最小点Adam马上找到而其他两种算法还差得多 lr0.1搜索1000次 只有AdaGrad没有找到最小点   lr1搜索1000次 r100搜索100次  可以发现SGD和Momentum很容易错过全局最小值Adam需要较长的时间和较多的搜索次数来找到全局最小值AdaGrad效果最好。 5. 总结SGD、Momentum、AdaGrad、Adam的优缺点 上个博客有 但是我发现学长总结更直观 6. Adam这么好SGD是不是就用不到了  SGD最大的缺点是下降速度慢而且可能会在沟壑的两边持续震荡停留在一个局部最优点。SGD没有用到二阶动量因此学习率是恒定的实际使用过程中会采用学习率衰减策略因此学习率递减。AdaGrad的二阶动量不断累积单调递增因此学习率是单调递减的。因此这两类算法会使得学习率不断递减最终收敛到0模型也得以收敛。 但AdaDelta和Adam则不然。二阶动量是固定时间窗口内的累积随着时间窗口的变化遇到的数据可能发生巨变使得可能会时大时小不是单调变化。这就可能在训练后期引起学习率的震荡导致模型无法收敛。    并且Adam有两大罪状   谈到现在到底Adam好还是SGD好这可能是很难一句话说清楚的事情。去看学术会议中的各种paper用SGD的很多Adam的也不少还有很多偏爱AdaGrad或者AdaDelta。可能研究员把每个算法都试了一遍哪个出来的效果好就用哪个了。       而从这几篇怒怼Adam的paper来看多数都构造了一些比较极端的例子来演示了Adam失效的可能性。这些例子一般过于极端实际情况中可能未必会这样但这提醒了我们理解数据对于设计算法的必要性。优化算法的演变历史都是基于对数据的某种假设而进行的优化那么某种算法是否有效就要看你的数据是否符合该算法的胃口了。 7. 增加RMSprop、Nesterov算法 上个博客有 对比Momentum与Nesterov 两个算法都是动量优化法Nesterov项是momentum的改进在梯度更新时做一个校正让之前的动量直接影响当前的动量避免前进太快同时提高灵敏度。 对比AdaGrad与RMSprop 两个都是自适应学习率优化法RMSprop解决了对历史梯度一直累加而导致学习率一直下降的问题适合处理非平稳目标对于RNN效果很好但RMSprop依然依赖于手动选择全局学习率。 8. 基于MNIST数据集的更新方法的比较 # coding: utf-8 import os import sysimport numpy as npfrom jiwang.Server import SGD, Momentum, AdaGrad, Adamsys.path.append(os.pardir) # 为了导入父目录的文件而进行的设定 import matplotlib.pyplot as plt from nndl4.dataset import load_mnist from common.util import smooth_curve from common.multi_layer_net import MultiLayerNet from common.optimizer import *# 0:读入MNIST数据 (x_train, t_train), (x_test, t_test) load_mnist(normalizeTrue)train_size x_train.shape[0] batch_size 128 max_iterations 2000# 1:进行实验的设置 optimizers {} optimizers[SGD] SGD() optimizers[Momentum] Momentum() optimizers[AdaGrad] AdaGrad() optimizers[Adam] Adam() # optimizers[RMSprop] RMSprop()networks {} train_loss {} for key in optimizers.keys():networks[key] MultiLayerNet(input_size784, hidden_size_list[100, 100, 100, 100],output_size10)train_loss[key] []# 2:开始训练 for i in range(max_iterations):batch_mask np.random.choice(train_size, batch_size)x_batch x_train[batch_mask]t_batch t_train[batch_mask]for key in optimizers.keys():grads networks[key].gradient(x_batch, t_batch)optimizers[key].update(networks[key].params, grads)loss networks[key].loss(x_batch, t_batch)train_loss[key].append(loss)if i % 100 0:print( iteration: str(i) )for key in optimizers.keys():loss networks[key].loss(x_batch, t_batch)print(key : str(loss))# 3.绘制图形 markers {SGD: o, Momentum: x, AdaGrad: s, Adam: D} x np.arange(max_iterations) for key in optimizers.keys():plt.plot(x, smooth_curve(train_loss[key]), markermarkers[key], markevery100, labelkey) plt.xlabel(iterations) plt.ylabel(loss) plt.ylim(0, 1) plt.legend() plt.show() 从结果中可知与SGD相比其他3种方法学习得更快而且速度基本相同仔细看的话AdaGrad的学习进行得稍微快一点。这个实验需要注意的地方是实验结果会随学习率等超参数、神经网络的结构几层深等的不同而发生变化。不过一般而言与SGD相比其他3种方法可以学习得更快有时最终的识别精度也更高。 总结 1、本来觉得自己上个博客总结的还不错看了上届学长的总结觉得更直观更好直接盗了 2、每个优化算法在不同的模型上的表现是不一样的而且会因为学习率等参数的不同引起效果的不同。 3、今天24考研结束作为25考研的我感觉天都黑了没人在前面挡着了。 参考链接 NNDL 作业11优化算法比较_基于mnist数据集的更新方法-CSDN博客  NNDL 作业11优化算法比较_ptimizers[\sgd\] sgd(lr0.95) optimizers[\mo-CSDN博客 HBU-NNDL 作业11优化算法比较_adam不收敛-CSDN博客
http://www.sadfv.cn/news/343167/

相关文章:

  • 网站建设的基本因素是什么毕设代做网站招聘
  • 网站建设企业网银e路通赤峰市网站建设培训
  • 如何增加网站收录网站源码怎么上传
  • sqlite做网站数据库做网站时候图片和视频放在哪里
  • 网站扫码怎么做wordpress tax
  • 网站图片动态换名设计网名的花样符号
  • 做异性的视频网站有哪些农村电商扶贫网站建设
  • 国家住房和城乡建设部官方网站友情链接工具
  • 阿里云网站核验单如何做网站优化的内容
  • diywap手机网站系统wordpress瘦身
  • 自己怎么优化我网站关键词网站项目需要什么
  • 合肥营销网站建设网页优化方法
  • 义乌商城集团网站建设外贸招聘网站
  • 杭州网站推广营销服务ui设计师面试
  • 网站上传空间软件开发外包公司是干嘛的
  • 丰浩网站建设中心济南装修公司口碑最好的是哪家
  • 无锡网站制作联系电话网站价格网页制作
  • 昆明网站建设培训班代刷网站推广链接快手
  • 网页搭建流程上优化seo
  • 网站工程师证书下载一个网站的源码下载
  • 网络推广 公司 200个网站贵阳网站定制电话
  • 网站除了做流量还需要什么菏泽市建设局网站电话号码
  • 开发网站代码量搜索引擎优化的名词解释
  • 外国网站后台企业网站 建设策划书
  • 梅江区住房和城乡建设局官方网站wordpress页面添加主页
  • 成都市建设网扬尘监控网站目前主流搜索引擎是哪种
  • 邢台网站建设哪家公司好Wordpress 新建标签
  • 门户网站建设的背景和意义上海专业做网站推广的公司
  • 网站防止采集wordpress 路径函数
  • 网页设计如何建立网站做百度网上搜索引擎推广最好网站