亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何向圖像數據添加 Keras- 高斯噪聲

如何向圖像數據添加 Keras- 高斯噪聲

臨摹微笑 2022-11-24 14:55:28
導入模塊:import pandas as pdimport numpy as npimport matplotlib.pyplot as pltimport tensorflow as tffrom tensorflow.keras.layers import GaussianNoisefrom tensorflow.keras.datasets import mnist(X_train, y_train), (X_test, y_test) = mnist.load_data()重新縮放數據X_train = X_train/255X_test = X_test/255plt.imshow(X_train[0])使用 std dev=0.2 添加高斯噪聲sample = GaussianNoise(0.2)noisey = sample(X_test[0:2],training=True)   #plt.imshow(noisey[0])獲取錯誤:ValueError: Tensor conversion requested dtype float64 for Tensor with dtype float32: 'Tensor("gaussian_noise_4_1/random_normal:0", shape=(2, 28, 28), dtype=float32)'
查看完整描述

2 回答

?
繁花不似錦

TA貢獻1851條經驗 獲得超4個贊

類型轉換成本很高,因此 Tensorflow 不進行自動類型轉換。默認情況下,Tensorflow 的數據類型是float32,而您導入的數據集的數據類型是float64。您只需將可選的 dtype 參數傳遞給GaussianNoise

sample = GaussianNoise(0.2, dtype=tf.float64)

或者投射數組:

noisey = sample(X_test[0:2].astype(np.float32),training=True)

我建議第二個。


查看完整回答
反對 回復 2022-11-24
?
慕萊塢森

TA貢獻1810條經驗 獲得超4個贊

我在我的本地主機上為 Jupyter Notebook 嘗試了這個,以下是帶有警告的結果。

http://img1.sycdn.imooc.com//637f1585000114c409000862.jpg

從警告中可以清楚地看出類型轉換的問題是非常昂貴的。您可以將其改進為:


X_train = X_train.astype('float32') / 255


X_test = X_test.astype('float32') / 255


查看完整回答
反對 回復 2022-11-24
  • 2 回答
  • 0 關注
  • 148 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號