Kaggle比賽:從何着手?

介紹python

參加Kaggle比賽,我必須有哪些技能呢?算法

你有沒有面對過這樣的問題?最少在我大二的時候,我有過。過去我僅僅想象Kaggle比賽的困難度,我就感受懼怕。這種恐懼跟我怕水的感受類似。怕水,讓我沒法參加一些游泳課程。然而,後來,我獲得的教訓是隻要你不真的跨進水裏,你就不知道水有多深。相同的哲學對Kaggle也同樣適用。沒有試過以前不要下結論。編程

 
 

 

Kaggle,數據科學的家園,爲競賽參與者,客戶解決方案和招聘求職提供了一個全球性的平臺。這是Kaggle的特殊吸引力,它提供的競賽不只讓你站到不一樣的高度思考問題,還提供了可觀的獎金。數據結構

然而,人們老是猶豫到底要不要參加競賽。其中有如下幾個緣由:機器學習

1.他們小看了本身的技能,知識和掌握的技術的水平。編程語言

2.無論本身一連串技能的水平如何,他們都選擇獎金最高的問題。工具

3.在問題的困難度水平上,他們沒有充分發揮出本身的技能水平。學習

我估計,這個問題可能要歸咎於Kaggle自身。Kaggle.com沒有提供任何信息來幫助人們選擇哪些是對於他們自身技能水平而言是最適合的比賽。結果就是對於新手或者中間水平的人來講,選擇一個適合本身的問題來開始成爲一個艱苦的工做。編碼

你能從這篇文章中學到什麼?3d

本文中,咱們會解開根據自身技能,工具和技術組合來選擇合適的Kaggle問題的死鎖狀態。這裏咱們會詳細說明每一個kaggle問題的困難度,以及要解決這些問題須要的技能水平。

在後面的部分,咱們針對下面的一些狀況,定義了正確的方法來選擇kaggle問題:

Case 1:我有編程背景,可是是機器學習的初學者。

Case 2:我在數據分析行業以及有兩年以上經營,可是不擅長R或者python。

Case 3:我擅長編碼和機器學習,須要找一下有挑戰的工做。

Case 4:我對於機器學習和編程語言都是新手,可是我想學。

Kaggle問題列表

1.泰坦尼克:機器從災難中學習

目標:一個開始你的機器學習之旅的經典流行問題。給你一套在船上的乘客屬性,讓你來預測在船沉沒後誰會生存下來。

 

 
 

困難度:

◆ 機器學習技巧:容易

◆ 編程技巧:容易

◆ 專業知識要求:容易

◆ 可用教程:完善

2.Julia初步

目標:這是一個用即將推出的工具Julia來識別谷歌街景圖片中的人物的問題。

 

 
 

困難度:

◆ 機器學習技能:容易

◆ 編程技能:中 

◆ 專業知識要求:容易 

◆ 可用教程:完善

3.數字識別

目標:給你的是一個手寫數字的像素數據(圖片),你須要判斷這是哪一個數字。這是隱馬爾可夫模型的經典問題。

各類屬性的困難度:

◆ 機器學習技能:中

◆ 編程技能:中 

◆ 專業知識需求:容易

◆ 可用教程:有但不是手把手教學

4.當詞袋趕上爆米花袋

目標:給你一組影評,你須要在這些敘述中找出其中潛在的情感(情感分析問題)。這個問題的目標是向你介紹谷歌軟件包——Word2Vec。

這是一個使人驚異的軟件包,能幫助你將單詞轉換到有限維空間。用這種方法咱們能夠僅關注向量就能在詞與詞之間創建類似性。一個很是簡單的例子就是你的算法能夠找出類似性如:King – Male + Female結果是Queen。

 

 
 

困難度:

◆ 機器學習技能:難

◆ 編程技能:中

◆ 專業知識要求:容易

◆ 可用教程:有可是不是手把手教學

5.髒文件去噪聲

目標:你可能知道一種技術叫OCR。這種技術簡而言之就是將手寫文檔轉換成電子文檔。然而,這個技術並不完美。這裏你的工做就是用機器學習方法讓它的結果完美起來。

 

 
 

困難度:

◆ 機器學習技能:難

◆ 編程技能:難

◆ 專業知識要求:難

◆ 可用教程:無

6.舊金山犯罪分類

目標:預測發生在灣區的犯罪的分類類型。

 

 
 

困難度:

◆ 機器學習技能:極難

◆ 編程技能:極難

◆ 專業知識要求:難

◆ 可用教程:無

7.出租車軌跡預測:時間/地點

目標:在同一個數據集上有兩個問題。給你一個出租車的控制器,讓你來預測出租車將要去哪或者完成一個旅程出租車要花費多少時間。

 

 
 

困難度:

◆ 機器學習技能:容易

◆ 編程技能:難

◆ 專業知識要求:中

◆ 可用教程:有一些可做爲比較標準的代碼(benchmark code)。

6.Facebook招聘——人仍是機器人

目標:若是你有意願要了解一個新的領域,你必須解決這個問題。給你一些投標數據,指望你能區分投標人究竟是人仍是機器人。這是當時Kaggle比賽中能夠得到數據最豐富的一個數據集。

 

 
 

困難度:

◆ 機器學習技能:中

◆ 編程技能:中

◆ 專業知識要求:中

◆ 可用教程:由於是一個招聘競賽,沒有任何可資利用的支持。

注意:上述說明中沒有涵蓋提供了獎金的Kaggle競賽,由於那些競賽都跟某個領域密切相關。

咱們來看看不一樣的人,擁有不一樣技術組合,處在人生的不一樣階段如何正確選擇一個適合本身的方式來開始Kaggle之旅。

Case 1:我有編程背景,可是是機器學習的初學者。

◆ 第一步:你應該參與第一個Kaggle題目是⑦出租車軌跡預測。緣由是,這個問題有一個複雜的數據集,包括JSON格式,其中一列揭示出租車已經訪問過的一系列座標。若是你能解析這個信息,那麼在目標目的地或時間上得到一些初步估計就不須要用到機器學習。這樣,你能夠憑藉你的編程能力在工業界找到實現本身價值的機會。

◆ 第二步:你下一步應該作的是:①泰坦尼克。緣由是,你如今應該已經明白如何操做一個複雜數據集。這樣,如今正是搞一搞純粹的機器學習的好時機了。有很豐富的解決方案和腳本能夠利用,你應該能建立一個很好的解決方案。

◆ 第三步:你如今應該嘗試大一點的東西了。試試Facebook招聘。這會幫助你意識到理解某個領域的知識如何在機器學習上幫助你獲得最好的結果。

一旦你完成了上述全部的嘗試,你嘗試Kaggle上任何一個問題都沒有問題可。

Case 2:我在數據分析行業以及有兩年以上經營,可是不擅長R或者python。

◆ 第一步:你的第一個嘗試應該是①泰塔尼克。緣由是,你已經瞭解如何建立預測算法。你如今應該努力學習像R和Python這樣的編程語言。有很豐富的解決方案和腳本能夠利用的條件下,你應該能用R和Python完成不一樣的模型。這個問題也能夠幫你瞭解一點更高級的機器學習算法。

◆ 第二步:下一步是Facebook招聘。緣由是,給你簡單的數據結構和豐富的數據內容,你將能夠結合正確的表,在這個問題上給出預測算法。這會幫助你意識到理解某個領域的知識如何在機器學習上幫助你獲得最好的結果。

建議:你如今要準備好離開你待得很是舒服的領域,嘗試徹底不一樣的東西。閱讀一些問題,好比糖尿病視網膜病變檢測,Avinto上下文廣告點擊,犯罪分類並找到你感興趣的領域。如今嘗試將你學到的任何知識都應用一下。

如今是時候嘗試一下對更復雜的東西編程了。試一下出租車軌跡預測問題或者髒文件去噪聲問題。一旦你各項準備都齊全了,你能夠嘗試Kaggle上的任何問題。

Case 3:我擅長編碼和機器學習,須要找一下有挑戰的工做。

◆ 第一步:你在Kaggle上有不少選擇。首選是掌握一種新語言好比Julia。你能夠開始邁出Julia的第一步。緣由是,這將在Python和R以外顯示Julia的強大之處。

◆ 第二步:第二個如今就是發展另外一個領域的技能。你能夠嘗試Avito競賽、搜索相關或者Facebook——人vs機器人

Case 4:我對於機器學習和編程語言都是新手,可是我想學。

◆ 第一步:你應該用①泰塔尼克來做爲你Kaggle之旅的開始。緣由是,你的第一步應該是學習編程語言如R和Python。有不少可資利用的解決方案和腳本的狀況下,你應該能用R和Python創建不一樣的模型。這個問題也幫助你瞭解一些機器學習算法。

◆ 第二步:而後你應該着手的是:Facebook招聘。緣由是,給你簡單的數據結構和豐富的數據內容,你將能夠結合正確的表,在這個問題上給出預測算法。這會幫助你意識到理解某個領域的知識如何在機器學習上幫助你獲得最好的結果。

一旦你完成了這些,你應該在Kaggle選擇任何一個你感興趣的問題了。

Kaggle上公平競爭中的一些駭客方法

這不是一個駭客方法的徹底列表,只不過想要給你一個好的起點。徹底的列表值得另開一個帖子來講明。

1.確認你在最後期限以前提交了一個解決方案(即便最簡單的提交也算完成任務),若是你將來還但願繼續參加這個競賽的話。

2.在你處理數據以前,瞭解該領域的專業知識。例如,在機器人vs人的比賽中,開始你的數據之旅前,你須要瞭解在線競標平臺的知識。

3.本身作一個模擬Kaggle競賽評分標準的評估算法。一個簡單的10折交叉驗證一般就能夠很好的工做。

4.從訓練數據中切割出儘量多的特徵——特徵工程一般能將你的成績從40%的位置推升到前10%。

5.單純一個模型一般不能把你推升到前10.你須要作不少不少模型,而後將他們集成起來。能夠是許多不一樣模型的集成,也能夠是同一算法的不一樣變量集。

結束語

在參加Kaggle比賽後,我意識到不少好處。我已經習慣了R和python。我相信這是學習編程語言方面最好的方式。另外,在論壇中給人們交互會幫助你加深對機器學習和領域知識的理解。

在本文中,咱們介紹了各類Kaggle問題,將他們的基本屬性按照難度水平作了區分。咱們也列舉了真實生活中的各類情形,闡述了參加Kaggle比賽的各類方法。

你怎麼參加Kaggle比賽呢?你可否看到參加的各類巨大益處呢?有什麼想法,歡迎在以後評論。

做者:

TAVISH SRIVASTAVA

連接:

https://www.analyticsvidhya.com/blog/2015/06/start-journey-kaggle/

做者:馬力_Panotech 連接:https://www.jianshu.com/p/f648de991d51 來源:簡書 簡書著做權歸做者全部,任何形式的轉載都請聯繫做者得到受權並註明出處。
相關文章
相關標籤/搜索