



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第python人工智能tensorflow函数tf.layers.dense使用方法目录参数数量及其作用部分参数解释:示例
参数数量及其作用
tf.layers.dense用于添加一个全连接层。
函数如下:
tf.layers.dense(
inputs,#层的输入
units,#该层的输出维度
activation=None,#激活函数
use_bias=True,
kernel_initializer=None,#卷积核的初始化器
bias_initializer=tf.zeros_initializer(),#偏置项的初始化器
kernel_regularizer=None,#卷积核的正则化
bias_regularizer=None,#偏置项的正则化
activity_regularizer=None,
kernel_constraint=None,
bias_constraint=None,
trainable=True,
name=None,#层的名字
reuse=None#是否重复使用参数
部分参数解释:
inputs:输入该层的数据。
units:该层的输出维度。
activation:激活函数。
use_bias:是否使用偏置项。
trainable=True:表明该层的参数是否参与训练。
示例
手写体例子,利用两个dense可以构成一个单层网络,在下面例子中,网络的神经元个数为200。
importnumpyasnp
importtensorflowastf
fromtensorflow.examples.tutorials.mnistimportinput_data
defcompute_accuracy(x_data,y_data):
globaldense2
y_pre=sess.run(dense2,feed_dict={xs:x_data})
correct_prediction=tf.equal(tf.arg_max(y_data,1),tf.arg_max(y_pre,1))#判断是否相等
accuracy=tf.reduce_mean(tf.cast(correct_prediction,tf.float32))#赋予float32数据类型,求平均。
result=sess.run(accuracy,feed_dict={xs:batch_xs,ys:batch_ys})#执行
returnresult
mnist=input_data.read_data_sets("MNIST_data",one_hot="true")
xs=tf.placeholder(tf.float32,[None,784])
ys=tf.placeholder(tf.float32,[None,10])
dense1=tf.layers.dense(
200,
activation=tf.nn.tanh,
kernel_initializer=tf.random_normal_initializer(mean=0,stddev=0.3),
bias_initializer=tf.constant_initializer(0.1),
name='fc1'
dense2=tf.layers.dense(
dense1,
activation=tf.nn.softmax,
kernel_initializer=tf.random_normal_initializer(mean=0,stddev=0.3),
bias_initializer=tf.constant_initializer(0.1),
name='fc2'
loss=tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(logits=dense2,labels=ys),name='loss')
#label是标签,logits是预测值,交叉熵。
train=tf.train.GradientDescentOptimizer(0.5).minimize(loss)
init=tf.initialize_all_variables()
withtf.Session()assess:
sess.run(init)
foriinrange(5001):
batch_xs,batch_ys=mnist.train.next_batch(100)
sess.run(train,feed_dict={xs:batch_xs,ys:batch_ys})
ifi%1000==0:
print("训练%d次的识别率为:%f。"%((i+1),compute_accuracy(mnist.test.images,mnist.test.labels)))
实验结果为:
训练1次的识别率为:0.107400。
训练1001次的识别率为:0.805200。
训练2001次的识别率为:0.822800。
训练3001次的识别率为:0.829400。
训练4001次的识别率为:0.833100。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 智能房地产设备开发合同
- 智能建筑设计软件合同
- 废旧资产处置协议书
- 政府资金申报协议书
- 挂名股东退股协议书
- 房屋更换门窗协议书
- 担保公司合营协议书
- 快递转让经营协议书
- 广告入围合同协议书
- 房产转赠家庭协议书
- 输血病人的个案护理
- 出入境安全教育
- 肥胖患者的护理常规
- 汽车液压主动悬架系统的设计与仿真
- 心跳呼吸骤停护理查房课件
- 2025-2030年中国桥梁管理与养护产业运营状况与发展潜力分析报告
- 我的梦-中国梦主题班会
- GB/T 6075.6-2024机械振动在非旋转部件上测量评价机器的振动第6部分:功率大于100 kW的往复式机器
- 基于多尺度的时间序列预测模型-深度研究
- 全球玉米育种技术研究进展与展望
- 《马尔可夫预测》课件
评论
0/150
提交评论