tensorflow生成隨機數據

基礎接口:用來生成隨機數,可以指定均值和方差。

 

相比簡單拿來用,調一下參數,生成數據並生成圖形觀察對比一下, 對於直觀理解數據和神經網絡訓練還是有幫助的。

 

對比tf.random_normal,數據限制了範圍,離羣點更少,常用於神經網絡參數初始化或者生成一些訓練數據。

 

weights一般要接近0但是不是0,比較方便train,所以用truncated可能優於普通random。

如果是生成數字樣本,數據更集中,訓練收斂會比較快,但是過於規律的數據,可能不利於泛化(可以用其他手段預防過擬合)。

 

https://github.com/huqinwei/tensorflow_demo/api_demo/truncated_normal.ipynb

做了兩者生成數據的對比並打印圖形觀察,mean=10,std=0.1,自適應的座標系,後者被牢牢的限制在了9.8-10.2

 

rotate_control

可以用來生成平均分佈,配合tf.cond用來做if-else控制,


rotate_control = tf.random_uniform(shape=[1])

rotated_img_batch = tf.cond(rotate_control[0]>=0.0,lambda:tf.contrib.image.rotate(flipped_img_batch,rotate_angle[0],interpolation = 'BILINEAR'),lambda:flipped_img_batch)#interpolation:  "NEAREST", "BILINEAR".

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章