我已經使用兩個分類器(如naivebayes和SMO)訓練和測試了數據。現在我需要使用堆疊將它們結合起來。我需要知道如何執行堆疊,以及應該如何使用我的基本級別分類器和元級別分類器。堆積在數據挖掘中
Q
堆積在數據挖掘中
1
A
回答
2
這聽起來像你想要的是ensemble learning而不是堆疊。在一個集合中,你可以使用兩個分類器來作出決定併合並這些決定。
堆疊是將一個分類器的輸出用作下一個等級的輸入的過程。也就是說,一些分類器的預測是其他分類器的特徵。爲此,您需要重新訓練其中一個模型,並將第一個分類器的輸出作爲輸入。
應使用哪一個分類器,取決於您的具體應用。同樣,如何去做取決於你用什麼系統來訓練這些分類器。
0
要選擇用於堆疊的基礎級分類器,請考慮可能可以在特徵子集或數據子集上學習的各種分類器。例如,您的基級分類器可能是K-NN,隨機森林和樸素貝葉斯。對於元級分類器,我們希望選擇一個能夠基於基本級預測作爲特徵很好地學習的分類器。一個好的候選人是Logistic迴歸。
使用mlxtend圖書館爲例,我們有:
from sklearn.linear_model import LogisticRegression
from sklearn.neighbors import KNeighborsClassifier
from sklearn.naive_bayes import GaussianNB
from sklearn.ensemble import RandomForestClassifier
from mlxtend.classifier import StackingClassifier
clf1 = KNeighborsClassifier(n_neighbors=1)
clf2 = RandomForestClassifier(random_state=1)
clf3 = GaussianNB()
lr = LogisticRegression()
sclf = StackingClassifier(classifiers=[clf1, clf2, clf3],
meta_classifier=lr)
有關堆疊分類和迴歸量的例子看mlxtend documentation page。
相關問題
- 1. HTML數據挖掘
- 2. python數據挖掘
- 3. Kissmetrics數據挖掘
- 4. 在數據挖掘中構建DecisionTree
- 5. 數據挖掘 - K近鄰
- 6. 休眠4數據挖掘
- 7. JSON到R數據挖掘
- 8. 數據挖掘字符串
- 9. hadoop的數據挖掘庫
- 10. 數據挖掘情況
- 11. R數據挖掘語法
- 12. 「相似性」數據挖掘
- 13. Google數據挖掘工具
- 14. 從數據挖掘開始
- 15. 數據挖掘教科書
- 16. 的Oracle SQL導航數據挖掘文本挖掘
- 17. 錯誤(數據挖掘):在挖掘模型中未指定任何案例
- 18. 數據挖掘海量數據
- 19. 數據挖掘和頻繁數據集
- 20. Web刮,數據挖掘,數據提取
- 21. 數據挖掘項目數據集
- 22. 在數據挖掘中映射數據的算法
- 23. .net圖挖掘
- 24. 數據挖掘庫和許可限制
- 25. Twitter的數據挖掘:分離
- 26. 如何文本挖掘特定數據
- 27. 如何數據挖掘文本?
- 28. MySQL查詢與數據挖掘
- 29. 數據挖掘KNN分類器
- 30. 從內聯框架數據挖掘