Tensorflow(一) 基础命令
Tensorflow是怎樣運作的
1. 導入或生成數據集
2. 對數據進行標準化
3. 將數據集劃分成三部分:訓練集、測試集合驗證(validation)集:驗證集用于調整假設參數,以獲取一組最好的假設參數
4. 設定算法參數
5. 初始化變量(Variable)和占位符(Placeholder)
6. 定義模型結構
7. 聲明損失函數
8. 初始化并訓練模型
9. 評估模型
10. 調整假設參數
11. 部署/預測新的輸出
聲明變量(Variable)和張量(Tensor)
固定張量:
創建一個由0填充的張量:
zero_tsr = tf.zeros([row_dim, col_dim])
創建一個由1填充的張量:
ones_tsr = tf.ones([row_dim, col_dim])
創建一個由常數填充的張量:
filled_tsr = tf.fill([row_dim, col_dim], 42)
創建一個張量類型的常數
constant_tsr = tf.constant([1,2,3])
序列張量:
linear_tsr = tf.linspace(start=0, stop=1, start=3)
integer_seq_tsr = tf.range(start=6, limit=15, delta=3)
隨機張量:
randunif_tsr = tf.random_uniform([row_dim, col_dim],minval=0, maxval=1)
randnorm_tsr = tf.random_normal([row_dim, col_dim],mean=0.0,stddev=1.0)
truncnorm_tsr = tf.truncated_normal([row_dim, col_dim],mean=0.0, stddev=1.0)
# mean表示均值,stddev表示偏差
randnorm=tf.random_normal(shape=[1000],mean=0 ,stddev=1.)
randtrun=tf.truncated_normal(shape=[1000],mean=0,stddev=1.)
對比
shuffled_output = tf.random_shuffle(input_tensor)
cropped_image = tf.random_crop(my_image, [height/2, width/2,3])
使用占位符(Placeholder)和變量(Variable)
變量:就是算法中的那些參數,tenserflow框架會時刻追蹤著那些變量,調整變量的值,使算法最優化。
placeholder:占位符,你可以往里面喂進制定類型和形狀的張量。
代碼
使用矩陣
//創建對角矩陣
identity_matrix = tf.diag([1.0, 1.0, 1.0])
//將數組轉化為張量
D = tf.convert_to_tensor(np.array([[1., 2., 3.],[-3., -7.,-1.],[0., 5., -2.]]))
//兩個矩陣相乘
tf.matmul(m1,m2)
//對矩陣進行轉置操作
tf.transpose(m)
//計算矩陣所對應的行列式的值
tf.matrix_determinant(m)
//獲取該矩陣的逆矩陣
tf.matrix_inverse(m)
//使用cholesky分解:一個對稱正定矩陣可以表示成一個下三角矩陣L和其轉置的乘積的分解
tf.cholesky(m)
//獲取矩陣的特征值和特征向量
tf.self_adjoint_eig(m)
聲明操作(Operation)
abs()
求輸入tensor的絕對值
ceil()
對tensor進行向上取整
cos()
求tensor的cos值
exp()
求tensor以e為底的指數
floor()
對tensor進行向下取整
inv()
求tensor的倒數
log()
求tensor的自然對數
maximum()
選取兩個tensor中較大的那個元素
minimum()
選取兩個tensor中較小的那個元素
neg()
求tensor的負數
pow()
第一個tensor作為底數,第二個tensor作為指數
round()
獲取tensor的約數,四舍五入
rsqrt()
求tensor的平方根到倒數
sign()
根據tensor的sign值返回-1,0,1
sin()
求tensor的sin值
sqrt()
求tensor的平方根
square()
求tensor的平方
squared_difference()
求兩個tensor的差的平方
輸出結果
實現激活函數
sigmod 類:
sigmod: 1/(1+exp(-x))
tanh: ((exp(x)- exp(-x))/(exp(x)+exp(-x))
softsign: x/(abs(x) + 1)
輸出圖像
ReLu 類:
softplus: log(exp(x) + 1)
ReLu: max(0,x)
ReLu6: min(max(0,x),6)
ExpLu(elu): (exp(x)-1) if x < 0 else x
總結
以上是生活随笔為你收集整理的Tensorflow(一) 基础命令的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 情人节专属!vivo X90全新告白配色
- 下一篇: TensorFlow(二)函数基础
