TF之RNN:TF的RNN中的常用的两种定义scope的方式get_variable和Variable

简介: TF之RNN:TF的RNN中的常用的两种定义scope的方式get_variable和Variable

输出结果

image.png


代码设计


# tensorflow中的两种定义scope(命名变量)的方式tf.get_variable和tf.Variable。Tensorflow当中有两种途径生成变量 variable

import tensorflow as tf

#T1法  tf.name_scope()

with tf.name_scope("a_name_scope"):

   initializer = tf.constant_initializer(value=1)  #定义常量

   var1 = tf.get_variable(name='var1', shape=[1], dtype=tf.float32, initializer=initializer)  #创建变量

   var2 = tf.Variable(name='var2', initial_value=[2], dtype=tf.float32)

   var21 = tf.Variable(name='var2', initial_value=[2.1], dtype=tf.float32)

   var22 = tf.Variable(name='var2', initial_value=[2.2], dtype=tf.float32)

with tf.Session() as sess:

   sess.run(tf.global_variables_initializer())

   #以下打印出每一种Variable的名字及其值

   print(var1.name)        # var1:0

   print(sess.run(var1))   # [ 1.]

   print(var2.name)        # a_name_scope/var2:0

   print(sess.run(var2))   # [ 2.]

   print(var21.name)       # a_name_scope/var2_1:0

   print(sess.run(var21))  # [ 2.0999999]

   print(var22.name)       # a_name_scope/var2_2:0

   print(sess.run(var22))  # [ 2.20000005]

#使用 tf.Variable()定义的时候, 虽然 name都一样, 但是为了不重复变量名, Tensorflow输出的变量名并不是一样的.

#所以, 本质上 var2, var21, var22 并不是一样的变量.

#而另一方面, 使用tf.get_variable()定义的变量不会被tf.name_scope()当中的名字所影响.


相关文章
|
机器学习/深度学习 程序员
DL之RNN:基于TF利用RNN实现简单的序列数据类型(DIY序列数据集)的二分类(线性序列&随机序列)
DL之RNN:基于TF利用RNN实现简单的序列数据类型(DIY序列数据集)的二分类(线性序列&随机序列)
DL之RNN:基于TF利用RNN实现简单的序列数据类型(DIY序列数据集)的二分类(线性序列&随机序列)
|
机器学习/深度学习 人工智能 监控
DL之RNN:人工智能为你写代码——基于TF利用RNN算法实现生成编程语言代码(C++语言)、训练&测试过程全记录
DL之RNN:人工智能为你写代码——基于TF利用RNN算法实现生成编程语言代码(C++语言)、训练&测试过程全记录
DL之RNN:人工智能为你写代码——基于TF利用RNN算法实现生成编程语言代码(C++语言)、训练&测试过程全记录
|
机器学习/深度学习 人工智能 监控
DL之RNN:人工智能为你写歌词(林夕写给陈奕迅)——基于TF利用RNN算法实现【机器为你作词】、训练&测试过程全记录
DL之RNN:人工智能为你写歌词(林夕写给陈奕迅)——基于TF利用RNN算法实现【机器为你作词】、训练&测试过程全记录
|
机器学习/深度学习 人工智能 监控
DL之RNN:人工智能为你写周董歌词——基于TF利用RNN算法实现【机器为你作词】、训练&测试过程全记录
DL之RNN:人工智能为你写周董歌词——基于TF利用RNN算法实现【机器为你作词】、训练&测试过程全记录
|
机器学习/深度学习 人工智能 算法
DL之RNN:人工智能为你写代码——基于TF利用RNN算法实现生成编程语言代码(C++语言)、训练&测试过程全记录(二)
DL之RNN:人工智能为你写代码——基于TF利用RNN算法实现生成编程语言代码(C++语言)、训练&测试过程全记录
|
机器学习/深度学习 人工智能 监控
DL之RNN:人工智能为你写诗——基于TF利用RNN算法实现【机器为你写诗】、训练&测试过程全记录
DL之RNN:人工智能为你写诗——基于TF利用RNN算法实现【机器为你写诗】、训练&测试过程全记录
|
机器学习/深度学习 人工智能 监控
DL之RNN:人工智能为你写小说——基于TF利用RNN算法训练数据集(William Shakespeare的《Coriolanus》)替代你写英语小说短文、训练&测试过程全记录
DL之RNN:人工智能为你写小说——基于TF利用RNN算法训练数据集(William Shakespeare的《Coriolanus》)替代你写英语小说短文、训练&测试过程全记录
|
机器学习/深度学习 BI TensorFlow
TF之RNN:实现利用scope.reuse_variables()告诉TF想重复利用RNN的参数的案例
TF之RNN:实现利用scope.reuse_variables()告诉TF想重复利用RNN的参数的案例
|
7月前
|
机器学习/深度学习
【从零开始学习深度学习】33.语言模型的计算方式及循环神经网络RNN简介
【从零开始学习深度学习】33.语言模型的计算方式及循环神经网络RNN简介
【从零开始学习深度学习】33.语言模型的计算方式及循环神经网络RNN简介
|
3月前
|
机器学习/深度学习 数据采集 存储
时间序列预测新突破:深入解析循环神经网络(RNN)在金融数据分析中的应用
【10月更文挑战第7天】时间序列预测是数据科学领域的一个重要课题,特别是在金融行业中。准确的时间序列预测能够帮助投资者做出更明智的决策,比如股票价格预测、汇率变动预测等。近年来,随着深度学习技术的发展,尤其是循环神经网络(Recurrent Neural Networks, RNNs)及其变体如长短期记忆网络(LSTM)和门控循环单元(GRU),在处理时间序列数据方面展现出了巨大的潜力。本文将探讨RNN的基本概念,并通过具体的代码示例展示如何使用这些模型来进行金融数据分析。
445 2