吳裕雄 python深度學習與實踐(10)
阿新 • • 發佈:2019-02-08
nbsp inpu mage all 網絡 mat mean info top
import tensorflow as tf input1 = tf.constant(1) print(input1) input2 = tf.Variable(2,tf.int32) print(input2) input2 = input1 sess = tf.Session() print(sess.run(input2))
import tensorflow as tf input1 = tf.placeholder(tf.int32) input2 = tf.placeholder(tf.int32) output = tf.add(input1, input2) sess= tf.Session() print(sess.run(output, feed_dict={input1:[1], input2:[2]}))
import numpy as np import tensorflow as tf """ 這裏是一個非常好的大數據驗證結果,隨著數據量的上升,集合的結果也越來越接近真實值, 這也是反饋神經網絡的一個比較好的應用 這裏不是很需要各種激勵函數 而對於dropout,這裏可以看到加上dropout,loss的值更快。 隨著數據量的上升,結果就更加接近於真實值。 """ inputX = np.random.rand(3000,1) noise= np.random.normal(0, 0.05, inputX.shape) outputY = inputX * 4 + 1 + noise #這裏是第一層 weight1 = tf.Variable(np.random.rand(inputX.shape[1],4)) bias1 = tf.Variable(np.random.rand(inputX.shape[1],4)) x1 = tf.placeholder(tf.float64, [None, 1]) y1_ = tf.matmul(x1, weight1) + bias1 y = tf.placeholder(tf.float64, [None, 1]) loss= tf.reduce_mean(tf.reduce_sum(tf.square((y1_ - y)), reduction_indices=[1])) train = tf.train.GradientDescentOptimizer(0.25).minimize(loss) # 選擇梯度下降法 init = tf.initialize_all_variables() sess = tf.Session() sess.run(init) for i in range(1000): sess.run(train, feed_dict={x1: inputX, y: outputY}) print(weight1.eval(sess)) print("---------------------") print(bias1.eval(sess)) print("------------------結果是------------------") x_data = np.matrix([[1.],[2.],[3.]]) print(sess.run(y1_,feed_dict={x1: x_data}))
import numpy as np aa = np.random.rand(5,4) print(aa) print(np.shape(aa))
import tensorflow as tf import numpy as np """ 這裏是一個非常好的大數據驗證結果,隨著數據量的上升,集合的結果也越來越接近真實值, 這也是反饋神經網絡的一個比較好的應用 這裏不是很需要各種激勵函數 而對於dropout,這裏可以看到加上dropout,loss的值更快。 隨著數據量的上升,結果就更加接近於真實值。 """ inputX = np.random.rand(3000,1) noise = np.random.normal(0, 0.05, inputX.shape) outputY = inputX * 4 + 1 + noise #這裏是第一層 weight1 = tf.Variable(np.random.rand(inputX.shape[1],4)) bias1 = tf.Variable(np.random.rand(inputX.shape[1],4)) x1 = tf.placeholder(tf.float64, [None, 1]) y1_ = tf.matmul(x1, weight1) + bias1 #這裏是第二層 weight2 = tf.Variable(np.random.rand(4,1)) bias2 = tf.Variable(np.random.rand(inputX.shape[1],1)) y2_ = tf.matmul(y1_, weight2) + bias2 y = tf.placeholder(tf.float64, [None, 1]) loss = tf.reduce_mean(tf.reduce_sum(tf.square((y2_ - y)), reduction_indices=[1])) train = tf.train.GradientDescentOptimizer(0.25).minimize(loss) # 選擇梯度下降法 init = tf.initialize_all_variables() sess = tf.Session() sess.run(init) for i in range(1000): sess.run(train, feed_dict={x1: inputX, y: outputY}) print(weight1.eval(sess)) print("---------------------") print(weight2.eval(sess)) print("---------------------") print(bias1.eval(sess)) print("---------------------") print(bias2.eval(sess)) print("------------------結果是------------------") x_data = np.matrix([[1.],[2.],[3.]]) print(sess.run(y2_,feed_dict={x1: x_data}))
吳裕雄 python深度學習與實踐(10)