• TensorFlow会话常用的两种方式


    需要注意的是我们可以使用两种方法来创建并使用session

    方法一:

    sess = tf.Session()
    result = sess.run(...,feed_dict = {...})
    sess.close()

    方法二:

    with tf.Session as sess:
        result = sess.run(...,feed_dict = {...})

    1.1 - 线性函数
      让我们通过计算以下等式来开始编程:Y=WX+bY=WX+bY=WX+b ,W和X是随机矩阵,b是随机向量。
      我们计算WX+b,其中W,X和b是从随机正态分布中抽取的。 W的维度是(4,3),X是(3,1),b是(4,1)。 我们开始定义一个shape=(3,1)的常量X:

    X = tf.constant(np.random.randn(3,1), name = "X")

    def linear_function():
        """
        实现一个线性功能:
            初始化W,类型为tensor的随机变量,维度为(4,3)
            初始化X,类型为tensor的随机变量,维度为(3,1)
            初始化b,类型为tensor的随机变量,维度为(4,1)
        返回:
            result - 运行了session后的结果,运行的是Y = WX + b
    
        """
    
        np.random.seed(1)  # 指定随机种子
    
        X = np.random.randn(3, 1)
        W = np.random.randn(4, 3)
        b = np.random.randn(4, 1)
    
        Y = tf.add(tf.matmul(W, X), b)  # tf.matmul是矩阵乘法
        # Y = tf.matmul(W,X) + b #也可以以写成这样子
    
       
    
        """
        # 创建一个session并运行它(第一种方法创建会话)
        sess = tf.Session()
        result = sess.run(Y)
        # session使用完毕,关闭它
        sess.close()
    
        return result
    
    print("result = " + str(linear_function()))
        """
    
        #使用第二种方法创建会话
        with tf.Session() as sess:
            result = sess.run(Y)
            sess.close()
        return result
    print("result = " + str(linear_function()))

    以上的session都是在函数内部创建的

    参考链接:https://blog.csdn.net/u013733326/article/details/79971488#t10

  • 相关阅读:
    作业16
    递归函数
    三元表达式与生成式
    迭代器与生成器
    作业15
    装饰器
    作业14
    string的入门与进阶
    修理牧场(优先队列)
    旅游规划
  • 原文地址:https://www.cnblogs.com/spore/p/13339101.html
Copyright © 2020-2023  润新知