#tensorflow實現模型評估
#訓練集
#測試集
#驗證集
import matplotlib.pyplot as plt
import numpy as np
import tensorflow as tf
sess=tf.session()
#資料集準備
x_vals=np.random
.normal(1,0.1,100)
y_vals=np.repeat(10.,100)
x_data=tf.placeholder(dtype=tf.float32,shape=[none,1])
y_target=tf.placeholder(dtype=tf.float32,shape=[none,1])
batch_size=25
train_indices=np.random
.choice(len(x_vals),round(len(x_vals)*0.8),replace=false)
test_indices=np.array(list(set(range(len(x_vals)))-set(train_indices))) #剩下的做測試標籤
x_vals_train=x_vals[train_indices]
x_vals_test=x_vals[test_indices]
y_vals_train=y_vals[train_indices]
y_vals_test=y_vals[test_indices]
a=tf.variable(tf.random_normal(shape=[1,1]))
#宣告演算法模型、損失函式和優化器演算法
my_output=tf.matmul(x_data,a)
loss=tf.reduce_mean(tf.square(my_output-y_target))
#初始化變數
init=tf.global_variables_initializer()
sess.run(init)
my_opt=tf.train
.gradientdescentoptimizer(0.02)
train_step=my_opt.minimize(loss)
#接下來進行模型的迭代訓練
for i in range(100):
rand_index=np.random
.choice(len(x_vals_train),size=batch_size)
rand_x=np.transpose([x_vals_train[rand_index]])
rand_y=np.transpose([y_vals_train[rand_index]])
sess.run(train_step,feed_dict=)
if (i+1)%25==0:
print(str(i+1)+"===loss:"+str(sess.run(loss,feed_dict=)))
tensorflow實現迴圈神經網路
迴圈神經網路出現於20世紀80年代,在其發展早期,應用部署特別豐富。最近幾年由於神經網路結構的進步和gpu上深度學習訓練效率的突破,rnn變得越來越流行。rnn對時間序列資料非常有效,其每個神經元可通過內部元件儲存之前輸入的資訊。人每次思考時不會重頭開始,而是保留之前思考的一些結果為現在的決策提供支...
tensorflow實現BP神經網路
tensorflow實現由乙個隱藏層的bp神經網路,tensorflow中的梯度函式只用在最後一層輸入損失函式就可以了,非常的方便。import tensorflow as tf import numpy as np def add layer inputs,in size,out size,act...
TensorFlow 實現簡單神經網路
該神經網路有x1,x2兩個輸入 隱藏層有3個神經元 所以w1為2 3矩陣 輸出只有乙個y 所以w2為3 1 矩陣 import tensorflow as tf import os os.environ tf cpp min log level 2 import numpy as np batch ...