本文為大家講解如何使用tf實現乙個簡單的神經網路:首先大家要知道神經網路的簡單組成,一般來說乙個神經網路會包含,輸入層
,隱藏層,輸出層....,例子很簡單,主要是為了學會使用tf的核心步驟:這個是核心建立層的方法
下面是完整實現**:
# author jiahpok,**寫完了,其實神經網路的效率是比較低的,尤其是在資料量大或者維度很複雜的情況下,對應的輸入神經元和隱藏神經元的計算量會呈指數複雜,所以一般使用它的情況下,需要考慮具體的業務需求和資料量,它並不是一無是處,只不過要合理的去使用它# 建立乙個簡單的神經網路 包括 輸入層 隱藏層 輸出層
importtensorflowastf
importnumpyasnp
#定義乙個層的方法
# inputs 輸入值
# in_size 輸入層的數量
# out_size 輸出層的數量
# activation_function 激勵函式
defadd_layer(inputs, in_size, out_size, activation_function=none):
# 建立初始化權重
weights = tf.variable(tf.random_normal([in_size
, out_size]))
# 建立乙個常量的biases
biases = tf.variable(tf.zeros([1,
out_size]) +
0.1)
# 結果加權求和
wx_plus_b = tf.matmul(inputs
, weights) + biases
ifactivation_function
isnone:
outputs = wx_plus_b
else:
outputs = activation_function(wx_plus_b)
returnoutputs
# 建立真實的訓練資料
x_data = np.linspace(-1 ,
1 ,300)[:
, np.newaxis]
b = np.random.normal(0,
0.05
, x_data.shape)
y_data = np.square(x_data) -
0.5
+ b# 定義神經網路的輸入引數
xs = tf.placeholder(tf.float32
, [none, 1
])ys = tf.placeholder(tf.float32
, [none, 1
])# 通過輸入層獲取到隱藏層 這裡需要乙個激勵函式
hidden_layer = add_layer(xs, 1
, 10
, activation_function
=tf.nn.relu)
# 通過隱藏層獲取到輸出層 這裡不再需要使用激勵函式
prediction = add_layer(hidden_layer
, 10, 1
, activation_function
=none)
# 計算真實資料和**資料之間的誤差
均方根誤差
loss = tf.reduce_mean(tf.reduce_sum(tf.square(ys - prediction)
,reduction_indices=[1
]))# 獲取的loss
train_step = tf.train.gradientdescentoptimizer(
0.1).minimize(loss)
# 初始化
init = tf.initialize_all_variables()
sess = tf.session()
sess.run(init)
fori
inrange(
1000
):# 訓練
sess.run(train_step
, feed_dict
=)
ifi %
50 == 0:
# 列印訓練數值
print(sess.run(loss
, feed_dict
=))
tensorflow 綜合學習系列例項之線性回歸
tf是現在比較流行的深度學習框架之一,從今天開始我會把tf由簡入深到進行講解,不對的地方還請大家諒解,因為tf的版本現在更新的速度很快,不同的版本對應的api也是有所區別的,所以需要找到對應的版本,後面我所講解的例項都是基於1.2版本 在使用tf的一般正常幾個核心步驟如下 1 首先定義引數,一般使用...
tensorflow的reduce函式系列維度解析
tf.reduce mean tf.reduce sum tf.reduce max tf.reduce min等等函式的引數中都有乙個axis的問題,當axis none時,看成是對所有元素進行mean sum max等等操作,最終結果為乙個數。但當axis有值時,表示要操作的維度,但什麼是要操作...
tensorflow 學習 學習中
基於 virtualenv 的安裝 在 linux 上 sudo apt get install python pip python dev python virtualenv 在 mac 上 sudo easy install pip 如果還沒有安裝 pip sudo pip install up...