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

asp做网站优点seo排名工具给您好的建议

asp做网站优点,seo排名工具给您好的建议,网站图片代码怎么做,免费主页空间的网站这一周的主题是优化算法。 1. Mini-batch#xff1a; 上一门课讨论的向量化的目的是去掉for循环加速优化计算#xff0c;X [x(1) x(2) x(3) ... x(m)]#xff0c;X的每一个列向量x(i)是一个样本#xff0c;m是样本个数。但当样本很多时#xff08;比如m500万#xff09…这一周的主题是优化算法。   1.  Mini-batch   上一门课讨论的向量化的目的是去掉for循环加速优化计算X [x(1) x(2) x(3) ... x(m)]X的每一个列向量x(i)是一个样本m是样本个数。但当样本很多时比如m500万向量化依然不能解决问题。所以提出了mini-batch的概念Batch是指对整个样本都操作mini-batch指只对所有样本的子集进行操作。把若干样本合并成一个mini-batch比如这里选择1000X{1} [x(1) x(2) ... x(1000)]X{2}  [x(1001) x(1002) ... x(2000)]等等。则我们一共有5000个mini-batch此时 X [X{1} X{2} ... X{5000}]。同样的把输出Y也做这样的操作得到 Y [Y{1} Y{2} ... Y{5000}] 。   Notationx(i)表示第i个样本z[l]表示第l层的z值X{t}表示第t个mini-batch。   具体算法 repeat { #不断重复迭代优化for t 1, ..., 5000 { #对于普通的batch处理手段遍历一次样本更新一次参数。而在mini-batch的方法中遍历一次样本更新了5000次参数。Forward prop on X{t} #用向量化的手段依次处理每一个mini-batchZ[1] W[1]X{t} b[1]A[1] g[1](Z[1])...A[l] g[l](Z[l])Compute cost J 1/1000*(∑L(y_hat(i), y(i)) 正则化项Back prop to compute gradients with respect to J{t} (using X{t}, Y{t})W[l] W[l] - αdW[l], b[l] b[l] - αdb[l]} } 对于batch处理方式来说cost function J随着优化的进行是越来越小的单调递减。而对于mini-batch的处理方式来说则是震荡着下降或者说下降的曲线夹杂了噪音。   一个超参数是mini-batch的大小size。如果size m则意味着就是batch gradient descent用整个数据集训练。如果size 1则是stochastic gradient descent每个样本都是独立的mini-batch。前者的问题是每次迭代的计算太费时后者的问题是随机性太严重效率过于低下失去了向量化带来的加速计算效果。mini-batch的大小介于两者之间能获得平衡的效果一方面有向量化的加速效果另一方面又不需要计算全部样本。关于mini-batch的大小NG的建议1如果小数据集少于2000直接使用batch方法2一般的mini-batch大小是64~512考虑到CPU/GPU的内存存储方式2的幂的大小算得更快。不用担心mini-batch的大小不能整除样本数的问题最后一个样本就少一点没事。也有人用1024但不常见。这是一个超参数所以NG建议多尝试几个不同的2的幂找个最好的。mini-batch越大减少了噪音也减少了正则化效果。   def random_mini_batches(X, Y, mini_batch_size 64, seed 0):Creates a list of random minibatches from (X, Y)Arguments:X -- input data, of shape (input size, number of examples)Y -- true label vector (1 for blue dot / 0 for red dot), of shape (1, number of examples)mini_batch_size -- size of the mini-batches, integerReturns:mini_batches -- list of synchronous (mini_batch_X, mini_batch_Y)np.random.seed(seed) # To make your random minibatches the same as oursm X.shape[1] # number of training examplesmini_batches []# Step 1: Shuffle (X, Y)permutation list(np.random.permutation(m))shuffled_X X[:, permutation]shuffled_Y Y[:, permutation].reshape((1,m))# Step 2: Partition (shuffled_X, shuffled_Y). Minus the end case.num_complete_minibatches math.floor(m/mini_batch_size) # number of mini batches of size mini_batch_size in your partitionningfor k in range(0, num_complete_minibatches):mini_batch_X shuffled_X[:, k*mini_batch_size : (k1)*mini_batch_size]mini_batch_Y shuffled_Y[:, k*mini_batch_size : (k1)*mini_batch_size]mini_batch (mini_batch_X, mini_batch_Y)mini_batches.append(mini_batch)# Handling the end case (last mini-batch mini_batch_size)if m % mini_batch_size ! 0:mini_batch_X shuffled_X[:, (k1)*mini_batch_size : m-1]mini_batch_Y shuffled_Y[:, (k1)*mini_batch_size : m-1]mini_batch (mini_batch_X, mini_batch_Y)mini_batches.append(mini_batch)return mini_batches2. 指数加权平均指数加权移动平均   vt βvt-1 (1-β)θt 。这个公式可以看成 vt 近似等于 1/(1-β) 个数据的平均值比如β 0.9则近似可以看成是10个数据的平均值。展开来看vt (1-β)*θt  (1-β)*β*θt-1  (1-β)*β2*θt  ...(1-β)*βn*θt 权重指数衰减。为什么近似等于1/(1-β) 个数据的平均值NG解释说如果β接近1β1/(1-β)≈1/e0.370.37的权重已经很小了所以说近似等于 1/(1-β) 个数据的平均值。   指数加权平均的一大好处是可以迭代计算占内存很小。相比之下如果记录过去n个数值然后算平均数显然耗内存很多。   偏差矫正偏差产生的原因是头部缺数据造成求得的指数加权平均比较小。偏差矫正的公式是 vt / (1 - βt)注意这里是计算完vt后矫正而不是在迭代过程中实时矫正。直观地说如果β大比如0.98则需要平均更多的数据于是1 - βt更小从而把 vt 放大。   3. Momentum (Gradient descent with momentum)   这种方法几乎总是比标准的梯度下降快。基本想法是用梯度的指数加权平均数来更新权重。如果优化的问题有大的condition number则优化过程中会在一个方向剧烈震荡。这导致我们只能选用小的学习率降低了优化的速度。如果学习率大很容易就发散了。我们希望的是在震荡的方向上迭代步长小一点而在没有震荡的方向上迭代步长大一点。指数加权平均的做法在震荡方向上把数据正负抵消了所以得到很小的数而在没有震荡的方向上则持续增加。物理的直观解释是想象一个小球从碗的边沿滚下去梯度是它的加速度momentum是它的速度β是和摩擦力相关的量。相比于标准的梯度下降当前迭代只与当前梯度相关而momentum的方法把当前迭代和过往梯度也联系起来。   具体算法   vdW 0, vdb 0   对于每一步的迭代     计算当前mini-batch的梯度dW, db。     vdW  βvdW (1-β)dW  # NG解释说也有的教材写成 vdW  βvdW  dW他自己不喜欢这种因为更难调参数调β的时候会再需要调α。     vdb  βvdb (1-β)db     W W - αvdW, b b- αvdb   α和β是超参数不过经验上看β取0.9是非常不错的。一般人们不用偏差矫正因为通过初始阶段后就无偏了。   4. RMSprop(Root mean square prop): NG说这个方法最开始是Geoffrey Hinton在coursera的课上提出来的。   具体算法   SdW 0, Sdb  0   对于每一步的迭代     计算当前mini-batch的梯度dW, db。     SdW  βSdW  (1-β)dW2   # dW2是把向量的每个元素各自平方。     Sdb  βvdb  (1-β)db2     W W - αdW/(sqrt(SdW)ε), b b- αdb/(sqrt(Sdb)ε) # 分母加上ε为了防止除以0的情况ε可以随便设一个很小的数比如e-8   直观地解释对于震荡的优化方向S值会比较大从而更新参数时步长会比较小从而消除震荡。   5. Adam(Adaptive moment estimation)将Momentum和RMSprop结合起来。   具体算法    vdW 0SdW 0,  vdb  0Sdb  0   对于每一步的迭代     计算当前mini-batch的梯度dW, db。     vdW  β1vdW  (1-β1)dWvdb  β1vdb  (1-β1)db  # β1对应Momentum。     SdW  β2SdW  (1-β2)dW2  Sdb  β2vdb  (1-β2)db2  # β2对应RMSprop。     vdW_corrected vdW / (1 - β1t)vdb_corrected  vdb / (1 - β1t)     SdW_corrected  SdW / (1 - β2t)Sdb_corrected  Sdb / (1 - β2t)     W W - αvdW_corrected / (sqrt(SdW_corrected)ε), b b - αvdb_corrected / (sqrt(Sdb_corrected)ε)   超参数α需要调试β1可以设为0.9β2可以设为0.999ε可以设为e-8。一般大家都只调α另外几个就按照默认值。   Adam非常非常牛逼默认选项。   6. 学习率衰减(Learning rate decay)   1 epoch的意思是遍历一次数据集。   一种典型的decay方法α α0 / (1decay_rate*epoch_num)decay_rate是另一个需要调的超参数。   其他decay方法α 0.95epoch_numα0α k*α0 / sqrt(epoch_num)α k*α0 / sqrt(t)t是迭代次数还有分段离散衰减的。   NG说学习率衰减并不是他优先考虑的东西他优先还是选一个好一些的固定的α。   7. 深度学习中的局部最优   传统的理解中局部最优是要避免的。但是在深度学习优化的问题里比如有2万个参数或者说在2万维的空间梯度为0的点往往并不是局部最优而是鞍点。NG说我们对低纬度空间的大部分直觉不能应用到高纬度空间中。所以深度学习的优化中并不担心陷入局部最优而是担心在平稳段导数在很大的区域都接近0优化变慢。Momentum、RMSprop、Adam等算法可以加速对平稳段的优化。               转载于:https://www.cnblogs.com/zonghaochen/p/7791763.html
http://www.zqtcl.cn/news/310095/

相关文章:

  • 电子政务网站开发餐饮品牌设计包括哪些
  • 深圳手机商城网站设计公司网站做会员用什么源码
  • 安康网站建设公司价格pathon做网站
  • jq网站模板宣城有做网站的公司吗
  • 江苏个人备案网站内容大连seo加盟
  • 服装网站建设公司地址公司网站建设需要注意什么
  • 免费行情软件网站下载安装电子商务网站建设实训报告
  • wordpress怎么添加企业网站美化网站公司
  • 工作室网站源码全球军事网站
  • 网站设计模板免费建站珠海正规网站制作排名费用多少
  • 北京沙河教做网站的wordpress增加自适应功能
  • 中国著名的个人网站网站设计怎么做ppt答辩
  • 郑州做招商的网站网站后台主流网站开发语言
  • 专业足球网站开发铜陵网站优化
  • 南昌高端网站开发山西太原网站建设公司
  • 青岛专业制作网站的公司吗百度咨询
  • 自定义网站模块深圳宝安区有什么好玩的地方
  • 如何增加网站的外链微平台网站支持html5实现游戏
  • 平台网站建设网站邯郸seo优化
  • 做网站着用什么软件盐城网站建设电话
  • 自己的网站wordpress自动变化文字
  • 北京制作网站公司哪家好wordpress小工具不显示不出来
  • 如何建设一个新的网站h5网站建设价格
  • 无锡专业做网站的怎么攻击php做的网站
  • 盐城网站建设代理商wordpress定义字体颜色
  • 成都旅游网站建设地址自己做的网站怎么被搜索出来
  • 网站建设免费免代码商城微网站如何做
  • 网站建设域名是什么东莞网络科技营销
  • 法语网站建设高端网站建设 骆
  • vue网站开发注意事项做设计想接外单去哪个网站好