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

b2b网站大全至勤新东方托福班价目表

b2b网站大全至勤,新东方托福班价目表,旅游app界面设计,西安高端网站建设首选几乎所有模型都可以根据数据和样本进行调整,它们都有各自的优势和相应的利弊权衡方式。寻找最优超参数集通常是一个棘手的问题,但是人类的直觉和经验可以为我们提供解决问题的方法。比如之前的例子: #设置任意输入序列的最大长度 maxlen100 …

几乎所有模型都可以根据数据和样本进行调整,它们都有各自的优势和相应的利弊权衡方式。寻找最优超参数集通常是一个棘手的问题,但是人类的直觉和经验可以为我们提供解决问题的方法。比如之前的例子:

#设置任意输入序列的最大长度
maxlen=100
#预训练的Word2vec模型维度
embedding_dims=300
#在进行反向传播算法之前要通过并聚合误差的样本序列的算法
batch_size=32
#训练周期个数
epochs=2
#隐藏层的复杂度
num_neurons=50

maxlen参数设置可能是这串参数中最大的问题。训练集在样本长度上变化很大。当我们强制将长度不超过100个词条的样本加上到400个词条,那么将1000个词条的样本截断到400个词条时,就会引入大量的噪声。改变这个数字对训练时间的影响比改变模型中的其他任何参数的影响都要打,单个样本的长度决定了误差需要再多长时刻内反向传播。对于循环神经网络,设置样本长度不是严格必要的。我们可以简单地将网络展开为样本所需的大小,在刚刚的例子中这种做法是必要的,因为我们把本身就是一个序列的输出传递到一个前馈层,而前馈层需要同样输出的大小。

embedding_dims值是由选择的Word2vec模型决定的,但是它应该是可以充分表示数据集的值。即使是像语料库中最常见的50个词条的独热编码这样简单的向量,可能也足以获得精确地预测。

与所有网络一样,增加batch_size可以加速训练,因为它减少了需要反向传播的次数(也就是计算上开销较大的部分)。折中的结果是,更大的批量增加了在局部极小值处停顿下来的可能。

epochs参数易于测试盒调优,只需再次运行训练过程即可。但是如果我们必须从头开始尝试每个新的epochs参数,那么就需要很多的耐心。Keras模型可以重新启动训练,并从停止的地方继续,只要我们在“停止”处保存了模型即可。要在以前训练过的模型上重新启动训练,要重新加载该模型盒数据集,并对数据调用model.fit()。Keras不会重新初始化权重,而是像从未停止过一般继续训练。

另一种对epochs参数进行调优的方法是添加一个名为EarlyStopping的Keras回调方法。通过向模型提供此方法,除非传递给EarlyStopping的度量指标超过了在回调方法中用于触发的某个阈值,否则模型将继续训练,直到达到我们锁清秋的周期数为止。一个常见的早停度量指标是连续几个周期验证精确率提高值。如果模型没有变得更好,通常就意味着是时候“断线”(断开链接)了。这个度量指标允许我们设置它并忘记它的存在。当模型达到我们的度量指标时,模型将停止训练。

num_neurous是一个重要的参数,上面建议随意地使用50个神经元。现在用100个神经元来进行训练和测试:

num_neurons=100
model=Sequential()
model.add(SimpleRNN(num_neurons,return_sequences=True,input_shape=(maxlen,embedding_dims)
))
model.add(Dropout(0.2))
model.add(Flatten())
model.add(Dense(1,activation='sigmoid'))
model.compile('rmsprop','binary_crossentropy',metrics=['accuracy'])
model.summary()

model.fit(X_train,y_train,batch_size=batch_size,epochs=epochs,validation_data=(X_test,y_test))

model_strucure=model.to_json()
with open('simplernn_model2.json','w') as json_file:json_file.write(model_strucure)
model.save_weights('simplernn_weights2.h5')

上述更大的网络相当于在num_neurous=50的网络的其中一层将模型的复杂度提高了一杯,其验证准确率为64.06%,仅提高一点点。这个微不足道的提高会让人觉得模型(对于这个网络层)对数据来说太复杂了。这个网络层可能有些太宽了。

下面是num_neurous=25的情况:

这类测试可能需要相当长的时间来培养一种直觉。我们可能会发现,随着训练时间的增加,有时一次改变一个参数会掩盖一次调整两个参数所带来的好处,任务的复杂度会越来越高。

如果我们觉得模型对训练数据过拟合,但又无法占到使模型更简单的方法,那么我们总是可以尝试增加模型中的Dropout()函数中的百分比参数。这是一种可以降低过拟合的方法,同时允许模型具备匹配数据所需的尽可能高的复杂度。如果我们把dropout百分比设置在50%以上,那么就会开始有学习上的困难,学习速度将会变慢,验证误差将会增多。

对许多NLP问题来说,循环网络的dropout百分比设置为20-50%是一个相当安全的范围。

http://www.yidumall.com/news/15488.html

相关文章:

  • 火蝠网店代运营可靠吗seo优化技术
  • 有什么展厅设计做的好的网站宁德seo优化
  • 网站主机免费电商培训机构推荐
  • 国家网站建设谷歌搜索引擎大全
  • 有名做网站公司营销技巧
  • 网站建设公司兴田德润实惠帮收款的接单平台
  • 枣强县住房和城乡建设局网站收录入口在线提交
  • 成都百度推广公司电话seo站外优化平台
  • 成都广告公司简介网站怎样优化关键词好
  • 做网站导出用什么色彩模式合肥优化营商环境
  • 福田网站建设seo信科百度点击软件找名风
  • 建设网站地图免费设计模板网站
  • 做响应式的网站有哪些潍坊新闻头条最新消息
  • 海东营销网站建设公司西安排名seo公司
  • 知道一个网站怎么知道是谁做的百度优化产品全网营销推广
  • 劳务公司网站建设外贸seo是什么意思
  • 画画在线青岛seo关键词排名
  • 在韶关做网站怎么做一个免费的网站
  • 怎么样自己做网站seo代运营
  • 网站建设公司 待遇百度如何推广网站
  • 深圳网站建设网站排名优化营销型网站模板
  • 开州区住房与城乡建设委员网站seo排名优化推广报价
  • 陕西锦宇建设有限公司网站网络营销的四大要素
  • 大型网站化方案网络营销的四大基础理论
  • 长沙网站制作公司推荐世界排名前十位
  • 郑州市 网站建设石家庄新闻头条新闻最新今天
  • 天津大良网站建设长沙做网站推广
  • 做基因结构可以用哪个网站百度站长平台
  • 上海网站开发开发好的公司海口做网站的公司
  • 杨浦企业网站建设百度官方优化指南