美文网首页TensorFlow使用说明及接口函数
【转载】TensorFlow学习笔记(5)----TF生成数据的

【转载】TensorFlow学习笔记(5)----TF生成数据的

作者: dopami | 来源:发表于2017-12-20 20:20 被阅读32次

    原文链接:blog.csdn.net/phdat101/article/details/52442738

    正常情况下,使用tf.initialize_all_variables()初始化变量,在完全构建好模型并加载之后才运行这个操作。生成数据的主要方法如下

    1)如果需要利用已经初始化的参数给其他变量赋值

    TF的变量有个initialized_value()属性,就是初始化的值,使用方法如下:

    [python]view plaincopy

    # 原始的变量

    weights = tf.Variable(tf.random_normal([784,200], stddev=0.35),name="weights")

    # 创造相同内容的变量

    w2 = tf.Variable(weights.initialized_value(), name="w2")

    # 也可以直接乘以比例

    w_twice = tf.Variable(weights.initialized_value() *0.2, name="w_twice")

    2)生成tensor的一些方法

    生成tensor:

    tf.zeros(shape, dtype=tf.float32, name=None)

    tf.zeros_like(tensor, dtype=None, name=None)

    tf.constant(value, dtype=None, shape=None, name='Const')

    tf.fill(dims, value, name=None)

    tf.ones_like(tensor, dtype=None, name=None)

    tf.ones(shape, dtype=tf.float32, name=None)

    生成序列

    tf.range(start, limit, delta=1, name='range')

    tf.linspace(start, stop, num, name=None)

    生成随机数

    tf.random_normal(shape, mean=0.0, stddev=1.0, dtype=tf.float32, seed=None, name=None)

    tf.truncated_normal(shape, mean=0.0, stddev=1.0, dtype=tf.float32, seed=None, name=None)

    tf.random_uniform(shape, minval=0.0, maxval=1.0, dtype=tf.float32, seed=None, name=None)

    tf.random_shuffle(value, seed=None, name=None)

    效果程序:

    [python]view plaincopy

    importtensorflow as tf

    importnumpy as np

    # 生成0和1矩阵

    v1 = tf.Variable(tf.zeros([3,3,3]), name="v1")

    v2 = tf.Variable(tf.ones([10,5]), name="v2")

    #填充单值矩阵

    v3 = tf.Variable(tf.fill([2,3],9))

    #常量矩阵

    v4_1 = tf.constant([1,2,3,4,5,6,7])

    v4_2 = tf.constant(-1.0, shape=[2,3])

    #生成等差数列

    v6_1 = tf.linspace(10.0,12.0,30, name="linspace")#float32 or float64

    v7_1 = tf.range(10,20,3)#just int32

    #生成各种随机数据矩阵

    v8_1 = tf.Variable(tf.random_uniform([2,4], minval=0.0, maxval=2.0, dtype=tf.float32, seed=1234, name="v8_1"))

    v8_2 = tf.Variable(tf.random_normal([2,3], mean=0.0, stddev=1.0, dtype=tf.float32, seed=1234, name="v8_2"))

    v8_3 = tf.Variable(tf.truncated_normal([2,3], mean=0.0, stddev=1.0, dtype=tf.float32, seed=1234, name="v8_3"))

    v8_4 = tf.Variable(tf.random_uniform([2,3], minval=0.0, maxval=1.0, dtype=tf.float32, seed=1234, name="v8_4"))

    v8_5 = tf.random_shuffle([[1,2,3],[4,5,6],[6,6,6]], seed=134, name="v8_5")

    # 初始化

    init_op = tf.initialize_all_variables()

    # 保存变量,也可以指定保存的内容

    saver = tf.train.Saver()

    #saver = tf.train.Saver({"my_v2": v2})

    #运行

    with tf.Session() as sess:

    sess.run(init_op)

    # 输出形状和值

    printtf.Variable.get_shape(v1)#shape

    printsess.run(v1)#vaule

    # numpy保存文件

    np.save("v1.npy",sess.run(v1))#numpy save v1 as file

    test_a = np.load("v1.npy")

    printtest_a[1,2]

    #一些输出

    printsess.run(v3)

    v5 = tf.zeros_like(sess.run(v1))

    printsess.run(v6_1)

    printsess.run(v7_1)

    printsess.run(v8_5)

    #保存图的变量

    save_path = saver.save(sess,"/tmp/model.ckpt")

    #加载图的变量

    #saver.restore(sess, "/tmp/model.ckpt")

    print"Model saved in file: ", save_path

    相关文章

      网友评论

        本文标题:【转载】TensorFlow学习笔记(5)----TF生成数据的

        本文链接:https://www.haomeiwen.com/subject/lysnwxtx.html