TensorFlow基础:常量

2020-07-20 11:50:30 浏览数 (1)

本节介绍TensorFlow中与常量相关的几个函数:

  • tf.constant #常量张量
  • tf.convert_to_tensor #转换成张量
  • tf.range #整数等差
  • tf.linspace #线性等分
  • tf.random.uniform # 均匀分布
  • tf.random.normal #正态分布

示范1:

代码语言:javascript复制
import numpy as np
import tensorflow as tf

g = tf.Graph()
with g.as_default():

    #  tf.constant可以创建一个常量张量
    a = tf.constant([1,2,3],dtype = tf.int32)

    # tf.convert_to_tensor有类似作用
    # 可以将Python列表或者numpy数组转换成常量张量
    b = tf.convert_to_tensor([1,2,3], preferred_dtype =tf.float32)

with tf.Session(graph = g) as sess:
    print(sess.run({'a':a,'b':b}))

输出结果如下:

示范2:

代码语言:javascript复制
import tensorflow as tf

g = tf.Graph()
with g.as_default():

    # tf.range 创建整数等差数列
    # 使用语法为tf.range(start, limit=None, delta=1)
    c = tf.range(1,12,2)

    # tf.linspace 为线性等分函数,创建浮点数等差数列
    # 使用语法为tf.linspace(start, stop, num)
    d = tf.linspace(0.0,1.0,9)

with tf.Session(graph = g) as sess:
    print(sess.run({'c':c}))
    print(sess.run({'d':d}))

输出结果如下:

示范3:

代码语言:javascript复制
import tensorflow as tf

g = tf.Graph()
with g.as_default():

    # tf.random.uniform创建元素值均匀分布的张量
    u = tf.random.uniform(shape=[3,3],minval=0,maxval=5,dtype=tf.int32)

    # tf.random.normal创建元素值正态分布的张量
    v = tf.random.normal(shape=[6],mean= 0.0,stddev=1.0,dtype=tf.float32)

with tf.Session(graph = g) as sess:
    print('u=n',sess.run(u))
    print('v=n',sess.run(v))

输出结果如下:

此外,有许多与numpy中类似的函数也可以用来创建常量张量。

例如 tf.zeros,tf.ones,tf.zeros_like,tf.diag ...

0 人点赞