乾貨 | 數據分析——Kaggle競賽入門

 2019-10-31 11:00:32.0

Kaggle衆所周知是從事機器學習數據分析者的聚集地,今天就讓我們邁入這個聖地,揭開它的面紗。

1 kaggle的主頁面

kaggle主頁面

主頁上的菜單欄主要展示了Competitions(競賽)、Datasets(數據集)、Notebooks(kernel,程序)、Discussion(討論區)和Courses(相關基礎課程)。

這裏比較重要的是Competitions(競賽),我們來看看它!

2 通過幫助文檔全面瞭解下kaggle
最簡單的方式就是根據官方文檔來了解kaggle了,點擊下圖所示的地方,就可以進入幫助文檔,幫助文檔介紹了四個方面
  • 競賽:包括競賽類別、競賽形式、如何組隊、如何提交結果

  • 數據集:數據集類型、搜索創建暑數據集以及如何發起一個數據項目等

  • 筆記本(Notebooks):其實就是kernel,類似於python的jupyter notebook。這是重點!你可以利用kaggle上的免費計算資源哦!

  • API接口:kaggle提供命令行的形式查看競賽內容,下載和提交競賽數據
    幫助文檔1

幫助文檔2


3 Kaggle的競賽類型

競賽頁面

在這個頁面我們可以搜索到所有的競賽題目。

3.1 根據比賽內容分類

大致可以分爲三類:

(1) 數據挖掘

kaggle上大多都是 數據挖掘類的競賽,其便籤往往是tabular data

(2) 計算機視覺(CV)

對於CV領域的競賽,其標題下往往含有  image data或video data的標籤,這類競賽往往不僅僅包含圖像分類,還有定位、檢測和分割,當然也有視頻理解。

圖像數據標籤

含有ImageData標籤競賽的統計

(3) 自然語言處理(NLP)
對於NLP領域的競賽,其往往含有text data或nlp的標籤

含有text data標籤的比賽

3.2 根據比賽的級別分類

級別分類

(1) 入門級:Getting started

入門級主要針對剛入門 機器學習的初學者,是kaggle裏最簡單的比賽,都是永久性的。就好像是kaggle競賽中的Hello world。在裏面也會有很多大神給出的參考答案,有很多思想值得學習。因此是一個鼓勵性質的比賽,沒有獎品或者積分。


     下圖就列出了三個經典的入門級比賽:

  • 手寫數字識別:這個是CV屆深度學習入門的Hello world,用來識別手寫數字0~9,其來自美國國家標準與技術研究所,是數據集NIST的縮小版。

  • Titanic: Machine Learning from Disaster :是當年泰坦尼克號郵輪上旅客的真實數據,通過遇難者的基本信息來預測是否生存下來。是一個分類問題

  • 房價預測:這個就是一個簡單的迴歸問題。顧名思義,就是根據房子的基本信息進行房價的預測。

    三個經典的入門級比賽

(2)  進階級:Playground

Playground,顧名思義,一個廣場,提供大家玩的。主要面向打過初級比賽後,想要嘗試增加難度的新手。這種比賽後面通常會標有Kowledge(經驗)、Kudos(榮譽)和少量獎金,因此一些示例比賽如:

image.png

  • 貓狗分類

  • 葉片分類

  • 紐約出租車行駛時間預測

(3) 高級:Featured

Featured,即重要比賽或者高級比賽。通常帶有商業目的,難度較大,需要有深厚的 機器學習功底。

高級比賽

重點是:高級比賽是有賞金的!有的獎池子高達100萬美元!當然要獲得獎金必須位列前幾名,拿剛剛結束的Two Sigma: Using News to Predict Stock Movements這個比賽爲例,總獎金高達10萬美金,第一名可以分的2.5萬美元,第二名2萬美元,直到第七名是1萬美元。而且每個人都可以參與哦!

獎金分配示例

當然沒有獲得獎金的也有️金牌、銀牌和銅牌之分,一般都是多個,如果參加比賽的隊伍有兩千多個,通常位列200左右也都可以獲得銅牌。
排行榜中的獎牌

(4)研究級別:Research

與高級比賽相比研究類比賽更具實驗性,而且通常沒有獎金和分數,但是其爲解決某些競爭較弱的特定領域提供瞭解決方案。
    一些舉例:

  • 谷歌地標檢索挑戰 - 給定一張圖片,你能在數據集中找到所有相同的地標嗎?

  • 右鯨識別 - 在航拍照片中識別瀕臨滅絕的右鯨

  • 大規模分級文本分類 - 將維基百科文檔分爲大約300000個類別之一

(5) 招聘型:Recruitment

在招聘競賽中,個人將爲公司策劃的挑戰建立 機器學習模型。在比賽結束時,感興趣的參與者可以上傳他們的簡歷供主持人考慮。獎品是(可能)舉辦比賽的公司或組織的工作面試。
舉例比賽:
  • 沃爾瑪招聘 - 商店銷售預測

  • 愛彼迎招聘 - 新用戶預定預測

(6) 年度比賽:Annual

雖然本身不是嚴格的競爭類型,但Kaggle保持着每年兩次的競爭傳統。
第一個是三月 機器學習比賽,自2014年以來每年都在美國大學籃球錦標賽上進行。
第二個是聖誕老人主題優化競賽,每年聖誕節前後舉辦一次。

(7) 限制參與賽:Limited Participation

Kaggle很少舉辦有限參與的比賽。這些比賽要麼是私人的,要麼是邀請的。
有限參與比賽的一個例子是大師級比賽,這是一種私人比賽,只限制可見性和提交給受邀用戶,通常是kaggle大師和大師級。 篩選Masters比賽類別,可以看到kaggle一共舉辦過6次master大賽,最近一次也是五年前了。Master大賽
4 比賽的形式

(1) 經典形式

簡單(或「經典」)的比賽是那些遵循標準kaggle格式的比賽。在簡單的競爭中,用戶在接受競爭規則後,可以在競爭開始時訪問完整的數據集。作爲競爭對手,您將下載數據,在本地或內核中構建模型,生成預測文件,然後將預測作爲提交文件上傳到kaggle上。到目前爲止,關於kaggle的大多數比賽都遵循這種格式。

(2) 兩階段形式

在兩階段比賽中,挑戰分爲兩部分:第一階段和第二階段,第二階段建立在第一階段取得的成績上。階段2涉及在階段開始時發佈的新測試數據集。階段2的合格性通常需要在階段1中提交。在兩階段比賽中,閱讀和理解比賽的具體規則和時間表尤爲重要。
其中一個例子就是 自然保護漁業監測競賽.

(3)kernel-only形式

有些比賽只進行內核比賽或代碼比賽。在這些比賽中,所有的參賽作品都是在一個kaggle內核內完成的,不可能直接上傳參賽作品。

這些比賽有兩個吸引人的特點。競爭更加平衡,因爲所有用戶都有相同的硬件津貼。而且獲勝的模型往往比其他競爭中獲勝的模型簡單得多,因爲它們必須在內核平臺施加的計算約束下運行。

僅內核競爭配置了它們對您可以提交的內核的獨特約束。這些特性可能受到如下限制:CPU或GPU運行時、使用外部數據的能力以及對Internet的訪問。要了解必須遵守的約束條件,請查看特定競爭對手的內核需求。

文章來源:機器之心