TensorFlow
文章平均质量分 51
CC‘s World
这个作者很懒,什么都没留下…
展开
-
【TensorFlow】TensorFlow报错及解决方法(持续更新中)
1. AttributeError: module ‘tensorflow’ has no attribute ‘placeholder’该问题出现的原因是:安装的tensorflow版本是2.0的,所以使用以前的代码tensorflow中的函数不兼容。因此为了解决这个问题,必须把import tensorflow as tf改成:import tensorflow.compat.v1 as tftf.disable_v2_behavior()问题类型:AttributeError: modu原创 2022-05-02 16:24:27 · 7127 阅读 · 1 评论 -
【TensorFlow】TensorBoard可视化
【TensorBoard简介】TensorBoard可以有效地展示TensorFlow在运行过程中的计算图、各种指标随着时间的变化趋势以及训练中使用到的图像等信息。TensorBoard是tensorflow的可视化工具,可以通过tensorflow程序运行过程中输出的日志文件可视化tensorflow程序的运行状态。TensorBoard和tensorflow程序跑在不同的进程中,TensorBoard会自动读取最新的tensorflow日志文件,并呈现当前的tensorflow程序运行的最新状态。以下原创 2021-02-23 23:44:58 · 382 阅读 · 0 评论 -
【TensorFlow】Seq2Seq模型的代码实现 & attention机制
import tensorflow as tfSRC_TRAIN_DATA = '/path/to/data/train.en' # 源语言输入文件TRG_TRAIN_DATA = '/path/to/data/train.zh' # 目标语言输入文件CHECKPOINT_PATH = '/path/to/seq2seq_ckpt' HIDDEN_SIZE = 1024NUM_LAYERS = 2SRC_VOCAB_SIZE = 10000TRG_VOCAB_SIZE = 4000BA原创 2021-02-23 19:53:08 · 744 阅读 · 0 评论 -
【TensorFlow】循环神经网络
【LSTM】# 定义一个LSTM结构,在TensorFlow中通过一个简单的命令就可以实现一个完整的LSTM结构,LSTM中使用的变量也会在该函数中自动被声明lstm = tf.nn.rnn_cell.BasicLSTMCell(lstm_hidden_size)# 将LSTM中的状态初始化为全0数组,BasicLSTMCell类提供了zero_state函数来生成全0的初始状态,state是一个包含两个张量的LSTMStateTuple类,state.c和state.hstate = lstm.原创 2021-02-23 13:26:58 · 376 阅读 · 0 评论 -
【TensorFlow】数据集
在数据集框架中,每一个数据集代表一个数据来源:数据可能来自一个张量,一个TFRecord文件,一个文本文件,或者经过sharding的一系列文件,等等。由于训练数据通常无法全部写入内存中,从数据集中读取数据时需要使用一个迭代器按顺序进行读取,这点与队列的duqueue()操作和Reader的read()操作相似。与队列相似,数据集也是计算图上的一个节点。import tensorflow as tfinput_data = [1,2,3,4,5]dataset = tf.data.Dataset.f原创 2021-02-23 01:07:36 · 623 阅读 · 0 评论 -
【TensorFlow】多线程输入数据处理框架
在tensorflow中,队列和变量类似,都是计算图上有状态的节点。其它的计算节点可以修改它们的状态。对于变量,可以通过赋值操作修改变量的取值。对于队列,修改队列状态的操作主要有Enqueue、EnqueueMany和Dequeue:import tensorflow as tf# 创建一个先进先出队列,指定队列中最多可以保存两个元素,并指定类型为整数q = tf.FIFOQueue(2, "int32")# 使用enqueue_many函数来初始化队列中的元素。和初始化变量类似,在使用队列之前原创 2021-02-23 00:10:37 · 167 阅读 · 0 评论 -
【TensorFlow】迁移学习
迁移学习就是讲一个问题上训练好的模型通过简单的调整使其适用于一个新的问题。本篇将利用ImageNet数据集上训练好的Inception-v3模型来解决一个新的图像分类问题。可以保留训练好的Inception-v3模型中所有卷积层的参数,只是替换最后一层全连接层。在最后这一层全连接层之前的网络层称之为瓶颈层。将新的图像通过训练好的卷积神经网络直到瓶颈层的过程可以看成是对图像进行特征提取的过程。在训练好的inception-v3中,因为将瓶颈层的输出再通过一个单层的全连接层神经网络可以很好地区分1000种类别原创 2021-02-22 17:21:58 · 681 阅读 · 0 评论 -
【TensorFlow】卷积神经网络
tensorflow对卷积神经网络提供了非常好的支持,以下程序实现了一个卷积层的前向传播过程:# 卷积层的参数前两维代表过滤器的尺寸,第三个维度表示当前层的深度,第四个维度表示过滤器的深度filter_weight = tf.get_variable('weight', [5,5,3,16], initializer=tf.truncated_normal_initializer(stddev=0.1))# 和卷积层的权重类似,当前层矩阵上不同位置的偏置项也是共享的,所以总共有下一层深度个不同的偏置原创 2021-02-22 13:08:49 · 144 阅读 · 0 评论 -
【TensorFlow】MNIST数字识别问题
共有三个程序:mnist.inference.py:定义了前向传播的过程以及神经网络中的参数mnist_train.py:定义了神经网络的训练过程mnist_eval.py:定义了测试过程【mnist_inference.py】在这段代码中定义了神经网络的前向传播算法。无论是训练时还是测试时,都可以直接调用inference这个函数,而不用关心具体的神经网络结构import tensorflow as tfINPUT_NODE = 784OUTPUT_NODE = 10LAYER1_原创 2021-02-21 19:37:33 · 212 阅读 · 0 评论 -
【TensorFlow】TensorFlow模型持久化
TensorFlow提供了tf.train.Saver类来保存和还原一个神经网络模型。以下代码给出了保存tensorflow计算图的方法:import tensorflow as tfv1 = tf.Variable(tf.constant(1.0, shape=[1]), name='v1')v2 = tf.Variable(tf.constant(2.0, shape=[1]), name='v2')result = v1+v2init_op= tf.global_variables_in原创 2021-02-21 18:23:06 · 161 阅读 · 0 评论 -
【TensorFlow】TensorFlow实现神经网络
import tensorflow as tf# 这里通过numpy工具包生成模拟数据集from numpy.random import RandomStatebatch_size = 8# 定义神经网络的参数# 在tensorflow中,变量(tf.Variable) 的作用就是保存和更新神经网络中的参数,tensorflow中的变量需要指定初始值。w1 = tf.Variable(tf.random_normal((2,3), stddev=1, seed=1))w2 = tf.Va原创 2021-02-19 17:19:50 · 899 阅读 · 0 评论 -
【TensorFlow】TensorFlow基础知识
TensorFlow计算模型——计算图TensorFlow是一个通过计算图的形式来表述计算的编程系统。TensorFlow中的每一个计算都是计算图上的一个节点,而节点之间的边描述了计算之间的依赖关系。TensorFlow程序一般可以分为两个阶段。在第一个阶段需要定义计算图中所有的计算,第二个阶段为执行计算。以下给出计算定义阶段的样例:import tensorflow as tfa = tf.constant([1.0, 2.0], name='a')b = tf.constant([2.0, 3原创 2021-02-19 12:17:52 · 591 阅读 · 0 评论