2017-02-13 152 views
2

即時通訊面臨的問題是,我需要訓練與「主類別」和「子類別」張量流圖。Tensorflow python分類訓練與子類別

我已經知道如何用「maincategories」完全訓練一個圖形。

例如,我有3種不同的動物類型:貓,狗和大象。

如果我培養一個圖片圖表的3種類型,它將返回比分爲3種類型,如:

貓0,7

狗0,3

大象0,02

我想壽是培養那些3種類型和子類別爲那些類型,例如:

貓:白色,脂肪,...

犬:哈士奇,...

當我現在的形象與該圖的分類,我想獲得的輸出與maincategories和子類別,像這樣:

貓:0, 7 - >白:0,3 - >脂肪:0,5

狗:0,2 .....

目前我看到的唯一途徑是培養一個圖形與maincategories和訓練所有主要類別與子類別的單獨圖形,然後編碼如下:

if name=='cat' and score>=0,7: 
    classify again with catgraph and get results 

在這個例子中,catgraph將會被訓練成不同的cattypes類別。

然而,這並不是非常優雅,我希望有更好的方法來做到這一點。

我很感謝你給我的任何幫助。

〜喵

回答

0

你可以訓練一個圖表,兩路輸出,共享一切,但最後一層(或多達你喜歡的層)。然後你會爲每個人記錄一個(說)記錄,並根據損失的總和進行優化。如果你受到網絡學習能力的瓶頸,你可能想要權衡一個損失。

請記住跟蹤總結中的兩個損失,以便於查看。您可以將損失添加到損失收集中。

0

你必須單獨訓練子類別。將--image_dir指向您的子類別的根。注意:這裏所指的子類別是子文件夾。然後像使用主類別那樣得到每個子類別的輸出。我希望這會流露出一些光芒。您可以參考Tensorflow image retraining