0
我正在使用slim將數據轉換爲TF記錄格式並查看this example,其中正在轉換MNIST數據集。使用張量流添加標籤要素slim
在行127
至128
上,圖像png_string
被分配標籤labels[j]
。
example = dataset_utils.image_to_tfexample(png_string, 'png'.encode(), _IMAGE_SIZE, _IMAGE_SIZE, labels[j])
我想補充的另一個標籤,但我看向dataset_utils
文件和image_to_tfexample
功能,我看到:
def image_to_tfexample(image_data, image_format, height, width, class_id):
return tf.train.Example(features=tf.train.Features(feature={
'image/encoded': bytes_feature(image_data),
'image/format': bytes_feature(image_format),
'image/class/label': int64_feature(class_id),
'image/height': int64_feature(height),
'image/width': int64_feature(width),
}))
而且好像我必須編輯這個功能添加另一個標籤(添加另一行image/class/label': int64_feature(class_id)
?)
我不完全確定如何添加另一個標籤,我想訓練我的神經網絡(也許我只需要創建另一個image_to_tfexample()
同樣的即時通訊?年齡,但不同的標籤)
所以,class_id是原始標籤變量(這是標籤[j]在示例中代表的內容)。當你將標籤添加爲另一個變量時,爲什麼從「image/class/label」中刪除「class」部分?你知道這些「圖像/類/標籤」或「圖像/高度」是什麼意思作爲一個功能對象? – haxtar
你的問題是如何添加一個'新標籤'到上面的'proto'。我沒有刪除任何東西,用一個新的密鑰添加了一個新功能。你可以添加你喜歡的任何東西:''Key':int64_feature(value)。在閱讀記錄時,您將使用'key'檢索值。所以鑰匙需要不同。 –