Python深度学习特征提取怎么做?Python如何使用TensorFlow获取训练参数
罗西汉
优草派
TensorFlow是用来完成深度学习训练的一个python第三方库,而深度学习过程之中会在不同的卷积层产生数据、特征以及训练参数。而有时需要将这些数据取出来进行查看和分析,那么下文所主要介绍的内容就是,python使用第三方库TensorFlow提取训练参数和特征,往下看看吧。
一、创建卷积层
那么在提取训练参数之前还需要去创建卷积层来完成模型训练才可以,卷积层创建使用的是layers模块之中的conv2d()方法。此方法需要传入占位符、层上限、使用的算法、间隔方式等等参数才可以生成,详细代码示例如下所示:
import tensorflow as tf from skimage import io,transform import numpy as np conv1=tf.layers.conv2d(inputs=x,filters=32,kernel_size=[5, 5],padding="same",activation=tf.nn.relu, kernel_initializer=tf.truncated_normal_initializer(stddev=0.01)) pool1=tf.layers.max_pooling2d(inputs=conv1, pool_size=[2, 2], strides=2)
而创建其他的卷积层也是使用这个方法,只不过参数所接受的值需要去进行更改,而有多个卷积层存在时得建立全连接层才可以让他们一起来完成深度学习模型训练。
二、特征提取
特征提取以及训练参数获取使用的都是同一个方法,那就是trainable_variables()。此方法会将当前程序内参与模型训练的数据和特征全部都提取出来,使用for循环可以将其迭代并且输出,代码示例如下所示:
params=tf.trainable_variables() for idx, v in enumerate(params): print("param {:3}:{:15}{}".format(idx, str(v.get_shape()), v.name))
输出的内容就是参数id、参数的大小以及特征名称,而要查看具体数据还需要使用Session()方法来构建对象,然后调用run()方法才可以把具体实际的值给获取到,代码如下所示:
sess=tf.Session() sess.run(tf.global_variables_initializer())
以上就是关于“Python深度学习特征提取怎么做?Python如何使用TensorFlow获取训练参数”的全部内容了,希望对你有所帮助。
【原创声明】凡注明“来源:优草派”的文章,系本站原创,任何单位或个人未经本站书面授权不得转载、链接、转贴或以其他方式复制发表。否则,本站将依法追究其法律责任。