很多機器學習競賽在Kaggle舉行,其中一個訓練集和功能集和測試集,給出其輸出標籤須根據決定通過利用訓練集。如何處理機器學習編程競賽
這是很清楚,在這裏監督學習算法,如決策樹,SVM等都是適用的。我的問題是,我應該如何着手解決這些問題,我的意思是從決策樹或SVM或其他算法開始,還是有其他方法,即如何決定?
很多機器學習競賽在Kaggle舉行,其中一個訓練集和功能集和測試集,給出其輸出標籤須根據決定通過利用訓練集。如何處理機器學習編程競賽
這是很清楚,在這裏監督學習算法,如決策樹,SVM等都是適用的。我的問題是,我應該如何着手解決這些問題,我的意思是從決策樹或SVM或其他算法開始,還是有其他方法,即如何決定?
所以,我從來沒有聽說過Kaggle,直到讀您的文章 - 太感謝你了,它看起來真棒。在探索他們的網站時,我發現了一部分能夠很好地指導你。在competitions page(點擊所有比賽),你看Digit Recognizer和Facial Keypoints Detection,這兩者都是比賽,但在那裏爲教育目的,提供了教程(教程不適用於面部關鍵點檢測的是,因爲競爭是其除了一般的論壇,競賽也有論壇,我想這是非常有幫助的。
如果你對機器學習的數學基礎很感興趣,而且對它比較陌生,可以建議Bayesian Reasoning and Machine Learning。這不是Cakewalk,但它比其他同行友好得多,沒有嚴格的損失。
編輯: 我在Kaggle上找到了tutorials page,這似乎是他們所有教程的總結。另外,一個python庫scikit-learn提供了大量機器學習算法的描述/解釋。
非常感謝:) – Joy
數據挖掘中有No Free Lunch。直到你嘗試了很多方法,你纔會知道哪些方法最好。
話雖這麼說,也有在數據挖掘可理解性和準確性之間的權衡。決策樹和KNN往往是可以理解的,但不如SVM或隨機森林準確。 Kaggle在可理解性方面尋找高精度。
這也取決於屬性的數量。一些學習者可以處理許多屬性,如SVM,而其他學習者則可以處理很多屬性,比如神經網絡。
您可以通過使用PCA縮小屬性的數量,這在幾個Kaggle比賽中有所幫助。
該備忘錄http://peekaboo-vision.blogspot.pt/2013/01/machine-learning-cheat-sheet-for-scikit.html是一個很好的起點。根據我的經驗,同時使用多種算法通常可以給出更好的結果,例如logistic迴歸和svm,其中每個算法的結果都具有預定義的權重。和測試,測試,測試;)
+1不錯的鏈接!我是集體學習的狂熱粉絲 - 隨機森林真棒 - 或者你指的是對數據的不同部分*使用不同的算法,或者完全是其他的東西? –
雖然這是一個有趣的問題,這是主觀和可能的題外話:-( – NPE
有沒有什麼論壇,我可以發佈這個問題,因爲我對這樣的比賽非常感興趣 – Joy
嗯,你可以在kaggle論壇上提出問題,毫無疑問,很多人會願意給你一些建議,並且這是更合適的場地(儘管這是一個有趣的問題) – mvherweg