TensorFlow學習筆記(二) 神經網路視覺化

2021-08-26 05:31:30 字數 2401 閱讀 3582

承接上次文章,這次是在**python教程後,使用matplotlib視覺化工具,對神經網路訓練過程進行視覺化,更直觀了解機器學習學到了什麼東西。

**如下:

# -*- coding: utf-8 -*-

import tensorflow as tf

import numpy as np

import matplotlib.pyplot as plt

def add_layer(inputs, in_size, out_size, activation_function=none):

weights = tf.variable(tf.random_normal([in_size, out_size]))

biases = tf.variable(tf.zeros([1, out_size]) + 0.1)

wx_plus_b = tf.matmul(inputs, weights) + biases

if activation_function is none:

outputs = wx_plus_b

else:

outputs = activation_function(wx_plus_b)

return outputs

# make up some real data

x_data = np.linspace(-1, 1, 300)[:, np.newaxis]

noise = np.random.normal(0, 0.05, x_data.shape)

y_data = np.square(x_data) - 0.5 + noise

##plt.scatter(x_data, y_data)

##plt.show()

# define placeholder for inputs to network

xs = tf.placeholder(tf.float32, [none, 1])

ys = tf.placeholder(tf.float32, [none, 1])

# add hidden layer

l1 = add_layer(xs, 1, 10, activation_function=tf.nn.relu)

# add output layer

prediction = add_layer(l1, 10, 1, activation_function=none)

# the error between prediciton and real data

loss = tf.reduce_mean(tf.reduce_sum(tf.square(ys-prediction), reduction_indices=[1]))

train_step = tf.train.gradientdescentoptimizer(0.1).minimize(loss)

# important step

init = tf.global_variables_initializer()

sess= tf.session()

sess.run(init)

# plot the real data 視覺化資料集

fig = plt.figure()

ax = fig.add_subplot(1,1,1) ###ax表示連續作圖 曲線

ax.scatter(x_data, y_data)

plt.ion()

plt.show()

for i in range(1000):

# training

sess.run(train_step, feed_dict=)

if i % 50 == 0:

# to visualize the result and improvement

try:

ax.lines.remove(lines[0]) ###抹除前一條曲線

except exception:

pass

prediction_value = sess.run(prediction, feed_dict=) ###value儲存prediction數值

第乙個圖是訓練剛開始的時候,第二張圖是最後的擬合效果圖,還不錯。

Tensorflow學習筆記 二 MNIST入門

寫在前面 使用softmax模型之前,對softmax進行簡單的介紹 我們希望能夠針對每個測試都能得到這張屬於某個數字的概率,而softmax 回歸就是 計算這張屬於0 9這十個數字的概率,然後將其中最大概率設為1,其他設為0的處理。所以,softmax回歸處理第一步 對中的每乙個畫素加權求和,計算...

Tensorflow速成學習筆記 二

根據tensorflow實戰google深度學習框架的樣例,詳細註解簡單神經網路 的各部分作用如下 import tensorflow as tf from numpy.random import randomstate 定義訓練資料batch的大小 batch size 8 定義神經網路的引數,每...

tensorflow學習筆記

tensorflow安裝可以直接通過命令列或者原始碼安裝,在此介紹tensorflow8命令列安裝如下 安裝tensorflow sudo pip install upgrade 另外,解除安裝tensorflow命令為 sudo pip uninstall tensorflow tensorflo...