2013-07-18 64 views
0

很多機器學習競賽在Kaggle舉行,其中一個訓練集和功能集和測試集,給出其輸出標籤須根據決定通過利用訓練集。如何處理機器學習編程競賽

這是很清楚,在這裏監督學習算法,如決策樹,SVM等都是適用的。我的問題是,我應該如何着手解決這些問題,我的意思是從決策樹或SVM或其他算法開始,還是有其他方法,即如何決定?

+1

雖然這是一個有趣的問題,這是主觀和可能的題外話:-( – NPE

+1

有沒有什麼論壇,我可以發佈這個問題,因爲我對這樣的比賽非常感興趣 – Joy

+2

嗯,你可以在kaggle論壇上提出問題,毫無疑問,很多人會願意給你一些建議,並且這是更合適的場地(儘管這是一個有趣的問題) – mvherweg

回答

3

所以,我從來沒有聽說過Kaggle,直到讀您的文章 - 太感謝你了,它看起來真棒。在探索他們的網站時,我發現了一部分能夠很好地指導你。在competitions page(點擊所有比賽),你看Digit RecognizerFacial Keypoints Detection,這兩者都是比賽,但在那裏爲教育目的,提供了教程(教程不適用於面部關鍵點檢測的是,因爲競爭是其除了一般的論壇,競賽也有論壇,我想這是非常有幫助的。

如果你對機器學習的數學基礎很感興趣,而且對它比較陌生,可以建議Bayesian Reasoning and Machine Learning。這不是Cakewalk,但它比其他同行友好得多,沒有嚴格的損失。

編輯: 我在Kaggle上找到了tutorials page,這似乎是他們所有教程的總結。另外,一個python庫scikit-learn提供了大量機器學習算法的描述/解釋。

+0

非常感謝:) – Joy

1
  1. 數據挖掘中有No Free Lunch。直到你嘗試了很多方法,你纔會知道哪些方法最好。

  2. 話雖這麼說,也有在數據挖掘可理解性和準確性之間的權衡。決策樹和KNN往往是可以理解的,但不如SVM或隨機森林準確。 Kaggle在可理解性方面尋找高精度。

  3. 這也取決於屬性的數量。一些學習者可以處理許多屬性,如SVM,而其他學習者則可以處理很多屬性,比如神經網絡。

  4. 您可以通過使用PCA縮小屬性的數量,這在幾個Kaggle比賽中有所幫助。

2

該備忘錄http://peekaboo-vision.blogspot.pt/2013/01/machine-learning-cheat-sheet-for-scikit.html是一個很好的起點。根據我的經驗,同時使用多種算法通常可以給出更好的結果,例如logistic迴歸和svm,其中每個算法的結果都具有預定義的權重。和測試,測試,測試;)

+0

+1不錯的鏈接!我是集體學習的狂熱粉絲 - 隨機森林真棒 - 或者你指的是對數據的不同部分*使用不同的算法,或者完全是其他的東西? –