Kaggle入门五大步,跟着做就对了
Kaggle是一個流行的數據科學競賽平臺,這個平臺非常龐大,如果你是一個初學者,很可能會不知所措,不知道如何開始成為一個優秀的數據科學家的旅程。都會猶豫不決,這并不奇怪。很多人都會有相似的擔心,比如:
我應該如何開始?
我的對手是經驗豐富的博士生研究人員嗎?
如果我沒有實際的勝算,值得參加比賽嗎?
這就是數據科學的意義所在嗎?(如果我在Kaggle上做得不好,我在數據科學領域有前途嗎?)
我怎樣才能在未來提高我的排名?
如果你曾有過這些問題,這篇文章中,我將詳細介紹關于入門、提高技能和享受在Kaggle上的時間的所有知識。
Kaggle競賽
在開始前,需要先了解Kaggle競賽整體的設置。Kaggle作為一個為開發商和數據科學家提供舉辦機器學習競賽、托管數據庫、編寫和分享代碼的平臺,從本質上講,它的比賽必須滿足幾個標準。
所參與項目必須是困難的。為了獲得最好的投資回報,主辦公司會提交他們最大的、最明顯的問題。而你所給出的解決方案必須是新的。為了贏得最新的比賽,你通常需要進行擴展研究,定制算法,訓練高級模型等。而且性能必須是相對的。比賽必須產生一個贏家,所以你的解決方案將與其他人的解決方案進行評分。
Kaggle值得嗎?
盡管Kaggle和典型的數據科學有區別,但對于初學者來說,Kaggle仍然可以是一個很好的學習工具。
每個比賽都是自成一體的。你不需要為自己的項目劃定范圍和收集數據,這讓你可以專注于其他技能。練習就是練習。學習數據科學的最好方法是在實踐中學習。只要你不為贏得每場比賽而緊張,你仍然可以練習有趣的問題。
討論和優勝者訪談是有啟發性的。每場比賽都有自己的討論板和與獲勝者的匯報。你可以窺探到更有經驗的數據科學家的思維過程。
如何在Kaggle上起步
在了解了比賽設置之后,接下來,就是分步驟地行動計劃,在Kaggle上慢慢地提升和競爭。
第一步:選擇一種編程語言。
首先,我建議大家選擇一種編程語言并堅持下去。Python和R在Kaggle和更廣泛的數據科學社區中都很受歡迎。
如果是從一張白紙開始的初學者,我比較推薦Python,因為它是一種通用的編程語言,你可以從頭到尾使用。
第二步:學習探索數據的基礎知識。
加載、瀏覽和繪制數據的能力(即探索性分析)是數據科學的第一步,因為它為你在整個模型訓練中做出的各種決定提供了參考。
如果你走Python路線,那么我推薦Seaborn庫,它是專門為此目的而設計的。它擁有繪制許多最常見和最有用的圖表的高級函數。
第三步:訓練你的第一個機器學習模型。
在進入Kaggle之前,我們建議在一個更簡單、更容易管理的數據集上訓練一個模型。這將使你熟悉機器學習庫和土地的布局。關鍵是要開始養成良好的習慣,比如將你的數據集分成獨立的訓練集和測試集,交叉驗證以避免過度擬合,并使用適當的性能度量。
在這里我推薦大家使用貪心科技AI的課程。
這套課程的核心內容均圍繞機器學習,并通過案例的實戰來加深對技術的理解。 其課程的內容旨在介紹AI及相關基礎理論,我個人使用后最直觀的感受就是這些課件里面的案例研究準備得非常好,它們對于課后我們如何處理任何機器學習任務有指導性的作用。而課下的練習,以測試學生為目的,涵蓋了目前為止可能已經涵蓋的概念知識。它混合了計算機科學、控制論、哲學、經濟學、生物學和混沌理論或模糊邏輯。而它的內容設置幾乎涵蓋了kaggle需要的所有技能。
內容
它涵蓋線性和邏輯回歸、矢量化、正則化、神經網絡、前饋和反向傳播(這是非常好的)、成本函數、網絡初始化、SVM、降維、監督/非監督學習、主成分分析(PCA)、K-Means聚類、異常檢測、推薦系統以及更多。除此之外,這套課程還有很多關于應用機器學習的建議,如診斷偏差與方差誤差,實施訓練-驗證-測試集,如何衡量模型性能(準確度、精確度、召回率和F1分數),哪些算法在大量/缺乏數據的情況下更有效,以及如何調整上述算法以更好地適應我們的需求或情況。
這套機器學習工作流程是開展一個個機器學習項目。盡管單個項目可能有所不同,但大多數工作流程都有幾個共同的任務:問題評估、數據探索、數據預處理、模型訓練/測試/部署等。通過這樣的學習,逐漸就能發現這些核心步驟的有用的視覺化。
課程設置
這套課程視頻教學簡單易懂,也由于是線上上課,購買之后隨時可以使用,還是比較適合時間不好分配的上班族或者像我這樣的學生進行使用。每節課程中還會配有一定的題目,幫助大家鞏固知識點概念。我自己在做這些題目的時候,感受很好的是,這些題目的設定與每小節的課程內容結合的很好,能做到即時的鞏固,也能為后面的學習做鋪墊。
師資力量
雖然是近幾年剛創建的團隊,但其教研人員都是有著豐富的業內經歷和教學經驗。課程的核心團隊由海內外AI專家組建而成,多位合伙人及主講老師都是業內資深工程師。我在上這節課的時候的導師就是亞馬遜的工程師,李文哲老師。他對于每一個問題的講解都十分細致,尤其是遇到運算問題,都會一步步手寫出具體公式。除此之外,他還經常會舉一反三,舉出同樣類型的例子,加深我們的記憶。李老師是一位充滿活力而又溫和的講師,他的經驗可圈可點。他給人以信心,特別是在分享實用的實施技巧和對常見陷阱的警告時。
貪心科技AI這套課程,我體驗下來感覺很好的一點就是,課前課后都有老師和助教引導,老師的態度都很積極,助教對教學也都十分認真負責,每次我提出的問題都會及時解答,就算現在已經結課了,我們也會經常溝通一下最近遇到的問題。
編程
除了前面講到的理論知識之外,貪心科技AI課程對于編程也有涵蓋。像我之前提到的Python在這節課程中就是作為重點來講解的。
貪心科技這套課程就為無編程經驗者提供了Python基礎的內容,作為一個沒有什么編程基礎的統計學生,這也節省了不少我課下補習代碼的時間,大大提高了我的學習效率。除了理論性的內容之外,這套課程還提供了多個機器學習領域代表性案例,如廣告點擊率預測、情感分析項目、信用卡欺詐預測、零售場景用戶分層、意圖識別等,供學生參考練習。如果有興趣的還可以繼續學習高階課程。這套課程會圍繞各種實例,進行高階內容的學習與練習。關于這部分的練習,建議大家搭配jupyter,這也是我自己學習時使用的一個網站。Jupyter是一個免費的、開源的、互動的網絡工具,被稱為計算筆記本,研究人員可以用它將軟件代碼、計算輸出、解釋性文本和多媒體資源結合在一個文件中。每上完一節課程時,我就會去上面下載一些文件進行練習。
而這些項目對于參與Kaggle競賽,可以說是提供了無數的練習機會。
第四步:解決 "入門 "比賽。
在有了一定知識基礎后,我們就準備嘗試Kaggle競賽了。Kaggle上的競賽根據其獎勵分為不同類型。知識、工作、金錢。知識競賽是為那些想要入門的初學者準備的。這些比賽很適合初學者,因為你可以找到很多解釋如何獲得好成績的文章和樣本解決方案。這些競賽分為幾個類別。最常見的是:
特色比賽
- 這些比賽通常由公司、組織甚至政府贊助。它們有最大的獎金池。
研究類 -
這些比賽以研究為導向,幾乎沒有獎金。它們也有非傳統的提交程序。
招聘–這些是由想要雇傭數據科學家的公司贊助的。這些仍然是相對不常見的。
入門 - 這些比賽的結構類似于特色比賽,但它們沒有獎金池。它們的特點是更容易的數據集,大量的教程,以及滾動的提交窗口,因此你可以在任何時候參加它們?!叭腴T
”比賽對初學者來說是很好的,因為它們給你一個低風險的學習環境,而且它們還得到許多社區創建的教程的支持。
第五步:競爭
有了一定基礎后,是時候進入 "特色 "競賽了。一般來說,這需要更多的時間和努力才能獲得好的排名。出于這個原因,我建議明智地選擇你的比賽項目。參加那些能讓你接觸到符合你長期目標的技術和工藝的比賽。在這里我想要提醒大家的事,參與比賽是為了最大限度地提高學習效果,而不是收入。雖然獎金是好的,但更有價值(和可靠)的獎勵是你為你的職業生涯發展的技能。
在參與比賽前后,你可以查閱任何與你要解決的問題類似的過去的比賽。Kaggle通常會在他們的博客(No Free Hunch)上發布對過去比賽獲勝者的采訪??纯茨闶欠窨梢詫㈩愃频姆椒☉糜谀愕膯栴}。另外,獲獎者也經常在github上發布他們的解決方案代碼,作為開放源碼項目。密切關注比賽論壇上的任何有用的帖子或討論。值得注意的是,Kaggle比賽需要持續的努力和承諾,你需要不斷地努力讓你的提交材料變得更好,直到最后。如果你暫時不參加,其他人會越來越好,你的排名會下降。
總結
以上是生活随笔為你收集整理的Kaggle入门五大步,跟着做就对了的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 军人的转业费中的住房是啥?
- 下一篇: 上古的孩子们念古佛修回古遗骨