tensorflow的型別問題

2021-08-15 18:40:00 字數 1362 閱讀 9728

tensorflow中的型別dtype與numpy中的型別一致可以互用,但是寫程式時最好不要互用。

dtype定義了

以下物件:

在專案訓練時,對於生成和讀取tfrecord檔案時編碼解碼過程中出現了,沒有考慮到傳遞變數的預設屬性。

# 讀取

image_data = image.open(filename)# type : image

# 灰度化

image_data=image_data.convert('l')

image_data = np.array(image_data)

# 將轉化為bytes

image = image_data.tobytes()

list=np.zeros(shape=[captchanumber*alphabetnumber])

for i,num in enumerate(label):

list[i*alphabetnumber+num]=1

list=list.tobytes()

example = tf.train.example(features=tf.train.features(feature=))

tfrecord_writer.write(example.serializetostring())

而在另乙個讀取程式中核心**是

features = tf.parse_single_example(serialized_example,

features=)

# 獲取資料

image = tf.decode_raw(features['image'], tf.uint8)

#獲取標籤資料

label = tf.decode_raw(features['label'], tf.float64)

tf.decode_raw需要指定使用何種資料型別翻譯出位元組字串,先前存入tfrecord的資料型別是什麼,那麼這裡也要填入什麼型別。

先前的語句  image_data = np.array(image_data) 好像沒有指定型別,numpy對於np.array()未指定型別的操作方式是預設最小能支援
image_data的型別,這裡image_data的資料大小是0-255,所以預設選擇tf.uint8

對於label,先前語句是list=np.zeros(shape

=[captchanumber*alphabetnumber])這裡資料預設是np.float64,也就是tf.float64。

tensorflow的安裝問題

還是這個問題 嘗試各種辦法之後沒有什麼用處,只能將原來的環境刪除,在重新安裝一次tensorflow了,不過這樣也好,讓我一次性更新完了1.9.0 的tensorflow cpu和tensorflow gpu。安裝tensorflow cpu直接pip install tensorflow 就行了系...

TensorFlow基礎型別彙總

4.2 tensorflow基礎型別定義及操作函式介紹 下面介紹tensorflow的基礎型別 基礎函式。這部分學完,會使你對tensorflow的基礎語法有個系統的了解,為後面學習寫 或讀 掃清障礙。4.2.1 張量及操作 張量可以說是tensorflow的標誌,因為整個框架的名稱tensorfl...

Tensorflow問題 變數共享的問題

在debug tensorflow 的時候博主遇到乙個比較常見的bug,查閱了許多資料都無法解決,著實讓人頭大。最終通過自己的努力還是找到了解決方法,為了不再犯同樣的錯誤,下面請看我的解決方案,希望對遇到同樣bug的新手同學們有一點點幫助。博主也是個菜鳥新手,我們共同進步,各位行業大佬有問題請提出,...