2017-01-04 109 views
2

如何獲取MinibatchSource中每個流的名稱?如何獲取MinibatchSource中的流名稱?

我可以得到與stream_infos返回的流信息相關的名稱嗎?

minibatch_source.stream_infos()

我也有跟進,問題:

從結果: 打印(reader_train.streams.keys()) 是 dict_keys(['標籤」,‘特色’

如何這些名稱涉及到MiniBatchSource,這是這樣做的建設?

return MinibatchSource(ImageDeserializer(map_file, StreamDefs(
    features = StreamDef(field='image', transforms=transforms), # first column in map file is referred to as 'image' 
    labels = StreamDef(field='label', shape=num_classes)  # and second as 'label' 
))) 

我原以爲我的流將被命名爲'圖像'和'標籤',但它們被命名爲'標籤'和'特徵'。

我想那些名字是默認的名字?

回答

1

對於你原來的問題:

minibatch_source.streams.keys() 

例如見this tutorial下的一節「簡單的介紹一下數據和數據讀」。

對於您的後續問題:keys()返回的名稱是StreamDefs()的參數。這是您程序中所需的全部內容。如果你定義MinibatchSource這樣

return MinibatchSource(ImageDeserializer(map_file, StreamDefs(
image = StreamDef(field='image', transforms=transforms), # first column in map file is referred to as 'image' 
label = StreamDef(field='label', shape=num_classes)  # and second as 'label'))) 

那麼名稱將匹配。您可以選擇任何想要的名稱,但StreamDef()field的值應與源(取決於您的輸入數據和您正在使用的Deserializer)相匹配。