第三章 tensorflow入門

2021-08-03 02:57:13 字數 2254 閱讀 6801

tensoflow即tensor  flow,張量

流動,張量即陣列。tensorboard視覺化工具。tensorflow三個基本概念:計算圖(tf.graph) 張量(tf.tensor) 會話(tf.session)計算圖是計算模型,每個節點是乙個運算,邊表示資料傳遞關係,資料是張量。

tensoflow即tensor  flow,張量 流動,張量即陣列。tensorboard視覺化工具。tensorflow三個基本概念:計算圖(tf.graph) 張量(tf.tensor) 會話(tf.session)計算圖是計算模型,每個節點是乙個運算,邊表示資料傳遞關係,資料是張量。

tf遊樂場,**是playground.tensorflow.org/,可以訓練簡單的網路。

解決分類問題的四個步驟:

1.提取特徵向量

2.定義網路結構

3.訓練調參

4.前向**

產生矩陣:

weights = tf.variable(tf.random_normal([2,3],stddev=2))

產生2*3的矩陣,服從均值為0,方差為2的分布

部落格[1]給出了乙個mnist的例子,還是不錯的,準確率能達到91%

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

import gzip

import os

import tempfile

import numpy

from six.moves import urllib

from six.moves import xrange # pylint: disable=redefined-builtin

import tensorflow as tf

from tensorflow.contrib.learn.python.learn.datasets.mnist import read_data_sets

import tensorflow as tf

#mnist資料輸入

mnist = read_data_sets("mnist_data/", one_hot=true)

x = tf.placeholder(tf.float32,[none, 784]) #影象輸入向量

w = tf.variable(tf.zeros([784,10])) #權重,初始化值為全零

b = tf.variable(tf.zeros([10])) #偏置,初始化值為全零

#進行模型計算,y是**,y_ 是實際

y = tf.nn.softmax(tf.matmul(x,w) + b)

y_ = tf.placeholder("float", [none,10])

#計算交叉熵

cross_entropy = -tf.reduce_sum(y_*tf.log(y))

#接下來使用bp演算法來進行微調,以0.01的學習速率

train_step = tf.train.gradientdescentoptimizer(0.01).minimize(cross_entropy)

#上面設定好了模型,新增初始化建立變數的操作

init = tf.initialize_all_variables()

#啟動建立的模型,並初始化變數

sess = tf.session()

sess.run(init)

#開始訓練模型,迴圈訓練1000次

for i in range(1000):

#隨機抓取訓練資料中的100個批處理資料點

batch_xs, batch_ys = mnist.train.next_batch(100)

sess.run(train_step, feed_dict=)

print 'run '+ str(i) +' epoch'

''''' 進行模型評估 '''

#判斷**標籤和實際標籤是否匹配

correct_prediction = tf.equal(tf.argmax(y,1),tf.argmax(y_,1))

accuracy = tf.reduce_mean(tf.cast(correct_prediction, "float"))

#計算所學習到的模型在測試資料集上面的正確率

print( sess.run(accuracy, feed_dict=) )

print 'done!'

第三章Git使用入門

通過對本章的閱讀,我主要學到的是如何安裝git以及源 的提取與獲取。在使用git之前首先應該安裝git。很多linux系統已經帶了git。如果linux系統沒有安裝git,可使用下面的方法來安裝git的最新版本。ubuntu linux10.10 m erick 或更新的版本,可以使用下面的命令來安...

第三章 堆疊

1.基礎知識 堆疊可以實現很多的應用,遞迴的問題轉化成非遞迴形式,在本質上也是堆疊的問題.它是一種 filo 操作的資料結構,一般也有兩種儲存方式 陣列跟鍊錶實現形式,這裡我給出了鍊錶形式的堆疊模板,裡面包括了基本的堆疊所有的操作,還有兩個比較著名的應用例子,時間倉促,精力比較有限,關於迷宮老鼠還沒...

第三章 曙光

第三章 曙光 第二場校園招聘開始了。其實,洋對這個公司的不是很了解。因為前幾天突然在bbs上面看到了這個公司的招聘資訊,洋覺得這個公司不錯,就上網投了簡歷。接下來的乙個多小時,讓洋很震撼!想不到這個公司這個厲害,而且無論從哪方面來說,絕對不比之前的那個公司差。想不到自己的乙個不經意的決定到了這個大的...