2012-03-22 107 views
2

這是我的數據如何真正的連續數據進行分類的WEKA

@attribute Service_type {Fund,Loan,CD,Bank_Account,Mortgage} 
@attribute Customer {Student,Business,Other,Doctor,Professional} 
@attribute Monthly_fee real 
@attribute Advertisement_budget real 
@attribute Size {Small,Large,Medium} 
@attribute Promotion {Web&Email,Full,Web,None} 
@attribute Interest_rate real 
@attribute Period real 
@attribute Label real 

這是一個相應的行。

Fund,Student,0.64,0.95,Small,Full,0,10,26.72 

問題是我想預測LABEL屬性是真實的,但是weka可以給我J48決策樹的選項。

我得到了這個提示,我需要我的LABEL屬性分爲範圍像 LABEL大於25 & & LABEL小於30 C1等。

我的問題是,是否有任何其他方式來爲J48做到這一點,或者是否有任何具體的方式或理由來至少分類數據?

回答

2

您必須定義「分類數據」的含義,因爲這在實值類標籤的上下文中是不明確的。如果假設的分類器預測標籤= 26.7200000000001爲您的示例行,應該認爲是正確的?如果是這樣,那麼什麼ε不再是真的?如果沒有,你可能會因爲計算機如何處理實數而固有的本質。

J48沒有(也不能真正地)解決這些問題。它需要有限數量的值可供選擇。按照您的建議,傳統的做法是將變量離散化。因此,您沒有無限數量的標籤,您有一個「0 < = x < = 10」的標籤,另一個用於「10 < = x < = 20」等。具體做法與問題相關 - 多少精度你需要什麼,你可以觀察的值的範圍是什麼等等。離散化越精確,結果分類器的精確度越高,但是需要花費時間和訓練數據的數量。

如果您不想像這樣離散輸出變量,另一種方法是將其視爲迴歸問題而不是分類問題。在那裏,目標是輸出一個實數,使得一些誤差度量(例如整個訓練集上的均方誤差)被最小化。 J48對於這種方法不是一個好的選擇。 Weka並沒有做太多工作,但似乎weka.classifiers.functions命名空間擁有對迴歸模型的基本Weka支持。另外,如果你想堅持基於決策樹的東西,你可以看看weka.classifiers.trees.M5P

請注意,這不是我的專業領域,但由於您在18個小時左右沒有收到任何其他答案,所以我認爲這可能會有所幫助。請記住,如果您看到與我相矛盾的事情,請不要自動假設我知道詳情是正確的。

+0

謝謝Deong! – Vince 2012-03-26 02:54:51

相關問題