:執行當前tensor的run()操作
a = tf.variable(tf.ones(10))
with tf.session() as sess:
tf.global_variables_initializer().run()
#b = sess.run(a) (1)
b = (a).eval() (2)
print(b)
**中的(1),(2)行的功能一樣
輸出為:
此函式的目的是為了將x資料,準換為dtype所表示的型別,例如tf.float32,tf.bool,tf.uint8等
兩個陣列/矩陣的對應元素,返回乙個布林值向量,對應位置相等返回true;不等返回false。
獲取行/列中最大值的
索引號。axis:0按列,1按行。
a = [[1,2,5,4],[4,8,6,3]]
print(a)
with tf.session() as sess:
b = sess.run(tf.argmax(a, 0))
c = sess.run(tf.argmax(a, 1))
print(b)
print(c)
feed_dict的資料是對之前的佔位符(placeholder)的輸入
str = tf.placeholder(tf.string)
with tf.session() as sess:
output = sess.run(str, feed_dict=)
print(output)
tf.reduce_mean(input_tensor,axis=none,keep_dim=false,name=none,reduction_indices=none)
import tensorflow as tf
import numpy as np
x = np.array([[1.0,7.0,3.0],[4.0,5.0,6.0]])
with tf.session() as sess:
a = sess.run(tf.reduce_mean(x))
mean_0 = sess.run(tf.reduce_mean(x, 0))
mean_1 = sess.run(tf.reduce_mean(x, 1))
print(a)
print(mean_0)
print(mean_1)
axis=none:代表對整個矩陣求平均(1+7+3+4+5+6)/6=4.333333
axis=0:代表對矩陣的所有行上下相加求平均(1+4)/2=2.5,(7+5)/2=6,(3+6)/2=4.5
axis=1:代表對矩陣的列前後相加求平均(1+7+3)/3=3.66666666,(4+5+6)/3=5
結果如下圖:
二者的主要區別在於:
tf.placeholder:用於得到傳遞進來的真實的訓練樣本:
images_placeholder = tf.placeholder(tf.float32, shape=[batch_size, image_pixels])
labels_placeholder = tf.placeholder(tf.int32, shape=[batch_size])
如下則是二者真實的使用場景:
for step in range(flags.max_steps):
feed_dict = _,loss_value = sess.run([train_op, loss], feed_dict=feed_dict)
當執行這些操作時,tf.variable 的值將會改變,也即被修改,這也是其名稱的**(variable,變數)。
生成的值在該 [minval, maxval) 範圍內遵循均勻分布。下限 minval 包含在範圍內,而上限 maxval 被排除在外
引數:palceholder,佔位符,在tensorflow中類似於函式引數,執行時必須傳入值。
引數:dtype:資料型別。常用的是tf.float32,tf.float64等數值型別
shape:資料形狀。預設是none,就是一維值,也可以是多維,比如[2,3], [none, 3]表示列是3,行不定
name:名稱。
import tensorflow as tf
import numpy as np
input1 = tf.placeholder(tf.float32)
input2 = tf.placeholder(tf.float32)
output = tf.add(input1, input2)
with tf.session() as sess:
print(sess.run([output], feed_dict=))
輸出:
使用乙個
tensor
值臨時替換乙個操作的輸出結果
. 你可以提供
feed
資料作為
run()
呼叫的引數
.feed
只在呼叫它的方法內有效
, 方法結束
, feed
就會消失
. 最常見的用例是將某些特殊的操作指定為
"feed"
操作,
標記的方法是使用
tf.placeholder()
為這些操作建立佔位符
tensorflow中的優化函式
gradientdescentoptimizer adagradoptimizer adagraddaoptimizer momentumoptimizer adamoptimizer ftrloptimizer rmspropoptimizer 主要有以上幾種 用法 tf.gradientdesc...
tensorflow 學習中的函式
第一部分來自官方minist資料集的例子 簡單的函式操作能抽象化我們的 和思維 在計算loss的時候,最常見的一句話就是tf.nn.softmax cross entropy with logits,那麼它到底是怎麼做的呢?首先明確一點,loss是代價值,也就是我們要最小化的值 除去name引數用以...
Tensorflow中的常用函式
tf.nn.embedding lookup函式的用法主要是選取乙個張量裡面索引對應的元素。tf.nn.embedding lookup tensor,id tensor就是輸入張量,id就是張量對應的索引,其他的引數不介紹。import tensorflow as tf import numpy ...