2017-08-11 122 views
0

我有一個熱點編碼的標籤。我想用它們來訓練和預測一個catboost分類器。然而,當我合適時,它給我一個錯誤,說標籤每行不允許有多個整數值。那麼catboost不允許對標籤進行單熱編碼?如果沒有,我怎樣才能讓catboost工作?Catboost是否支持單熱編碼?

+0

你傳遞給'catboost'的參數是什麼?你有沒有加入'one_hot_max_size'? –

+0

@BobDalgleish是的......我只是通過了learning_rate,depth,iterations和one_hot_max_size ....我找到了解決方法,儘管...... – TanMath

回答

0

我找到了解決此問題的解決方法。這個問題可能有更好的解決方案,我很樂意聽到。

解決方法是將單熱編碼轉換爲分類值。當然,大多數情況下,我們將我們的分類值轉換爲單熱編碼。所以只是不要做這一步。

然後,設置損失函數爲'MultiClass'。這是catboost(我認爲大多數漸變增強軟件包)將支持多分類的唯一損失函數。