1. 程式人生 > >機器學習英雄訪談錄之雙料 Kaggle 大師:Dr. Jean-Francois Puget

機器學習英雄訪談錄之雙料 Kaggle 大師:Dr. Jean-Francois Puget

目錄

機器學習英雄訪談錄之雙料 Kaggle 大師:Dr. Jean-Francois Puget

Sanyam Bhutani 是 Medium 上一位專注 ML 和 CV 的博主,本系列翻譯自他進行的系列採訪——《機器學習英雄訪談錄》。

學習從模仿開始,要模仿就要模仿那些最棒的人,這是我開始本系列的初衷。


正文

今天我要採訪的是一位雙料大師:Kaggle Discussion 大師(排名第 1)以及 Kaggle Competition 大師(排名第 27

),同時也是一位 kernel 專家——Dr. Jean-Francois Puget(Kaggle ID 是 CPMP)。


Sanyam Bhutani: 你好,大師,非常感謝你抽時間接受採訪。

Dr. Jean-Francois Puget: 感謝你的邀請。

Sanyam Bhutani: 你能向讀者介紹你的 Kaggle 之旅嗎?你是如何開始並沉迷於這種“合法的粉兒”?

Dr. Jean-Francois Puget: 我以獲得機器學習領域的博士學位開始了我的職業生涯,下面只談這個領域對我的重要性。然後我去了一家名為 ILOG 的創業公司,在另一個領域工作。很快,ILOG 被 IBM 收購,我又回到機器學習領域。自從我獲得博士學位以來,ML 已經發展了很多,我意識到我需要複習。我在 Coursera 上學了一些諸如 Andrew Ng Stanford ML 課程在內的線上課程,閱讀了不少,但這還不夠。我需要了解最新的 ML 實踐,並且 Kaggle 看起來就是我想要的地方。在瀏覽了 Kaggle 一段時間之後,我決定開始嘗試,並於 2016 年 5 月開始參加比賽。我立刻迷上了!

Sanyam Bhutani: 你是 IBM 機器學習和優化產品線的技術領導。你怎麼找時間去參加 Kaggle?這些比賽是否與 IBM 的專案有關?

Dr. Jean-Francois Puget: 我認為如果你不知道如何使用工具,你就不能構建工具。這就是為什麼,如果你為機器學習從業者構建工具,實踐機器學習和資料科學是非常重要的。因此,參加 Kaggle 比賽對我的工作非常有用。這也就是說我花費很多個人時間參加 Kaggle 比賽,無論晚上、週末或假期中。

Sanyam Bhutani: 當你在 2016 年開始參見 Kaggle 時,你已經是 ML 領域的專家。Kaggle 是否值得挑戰?

Dr. Jean-Francois Puget: 事實證明,Kaggle 比我想象的更具競爭力。沒有進入 Kaggle 比賽的人不知道獲勝的解決方案是何等的精心設計和先進。

Sanyam Bhutani: 在過去的幾年裡,你在 Kaggle 取得了驚人的成績。你最欣賞的一次挑戰是什麼?

Dr. Jean-Francois Puget: 我當然喜歡那些我表現得很好的。我最自豪的是最近的 Talking 資料競賽,我單獨排名第 6,領先於許多大師隊。在那場比賽中只有 3 人獲得了金牌。但我最喜歡的是 2Sigma New York Apartment Rental,因為它有自然語言資料和結構化資料的混合,有很多特徵工程的 room。我只做了 12 天,但都很激烈。我向那些想要鍛鍊他們的特徵工程技能的人推薦這個比賽。

Sanyam Bhutani: 你現在面臨什麼樣的挑戰?你如何決定比賽是否值得花時間?

Dr. Jean-Francois Puget: 我現在正在選擇比賽,主要是為了瞭解我尚未掌握的領域。例如,我正在進入 TGS 鹽檢測競賽,以瞭解有關影象分割的更多資訊。

Sanyam Bhutani: 你如何應對新的競賽?你有什麼技巧?

Dr. Jean-Francois Puget: 第一步是快速獲得基準和提交。這是為了清除任何錯誤或任何低階誤解。

第二個也是最重要的一步是建立可靠的本地驗證設定。目標是能夠評估一個模型在訓練資料上是否優於另一模型,而不是依賴於公共排行榜得分。如果你設法得到這個,那麼你可以執行你想要的任意數量的實驗,並且你不受每天 5 次提交的限制。提交僅用於檢查你的本地驗證是否可靠,即當你的本地分數提高時,你的 LB 分數也會提高。基本工具是交叉驗證。掌握交叉驗證以及如何定義摺疊是一項關鍵技能。確保你瞭解何時可以使用隨機摺疊分割,或者何時必須使用某種分層或基於時間的摺疊定義。

第三步是真正理解度量標準,以及如何通過損失函式對其進行近似。有時它很容易,例如,如果度量是平均平方誤差(mse),則使用均方誤差(rmse)。有時,當度量標準不可微分時,這是棘手的,例如,當度量標準是用於二元分類的 roc-auc,或者用於影象分割的交集。

然後是特徵工程、NN 架構選擇、超引數優化等,在上述準備步驟之前跳到此是在浪費時間。

Sanyam Bhutani: 對於像我這樣想要在 Kaggle 做的更好的讀者和新手,你最好的建議是什麼?

Dr. Jean-Francois Puget: 在每場比賽結束後閱讀頂級團隊的文字。如果你參加比賽的話那更好,因為你會從寫作中獲得更多,但恕我直言閱讀所有的文字是有用的。那是你在 Kaggle 上學到的最多的東西。

此外,通過內部部署機器或雲服務獲得一個不錯的計算資源。隨著時間的推移,Kaggle 比賽需要越來越多的計算資源。無論如何,這是 IT 行業的一般趨勢。

最後,在檢視共享材料之前,請努力嘗試。如果不將它們用作黑盒,重用共享材料(尤其是 kernel)就可以了。使用你想要重複使用的內容,並對其進行修改以利用你的本地驗證設定。例如,許多共享 kernel 沒有交叉驗證,你應該在那種情況下新增它。

Sanyam Bhutani: 對於那些想要將機器學習作為職業道路的讀者來說,你是否覺得一個好的 Kaggle profile 和(Kaggle)經歷是有幫助的?

Dr. Jean-Francois Puget: 當然有用。由於我是一名大師,我現在得到了感興趣的工作機會。Kaggle 非常引人注目。但人們也不應高估它。你在 Kaggle 學到的技能非常有用,但在現實世界中也需要其他技能。能夠與業務利益相關者打交道、收集相關資料的能力是未經過 Kaggle 測試的關鍵技能。事實上,Kaggle 比賽伴隨著明確的業務問題和相關資料。

Sanyam Bhutani: 鑑於 ML 爆炸性的增長率,你如何跟上最新技術的?

Dr. Jean-Francois Puget: 我在 Kaggle 上練習,也在 IBM 相關的 ML 專案上實踐。我也讀過科學論文。KaggleNoobs 的 Slack 團隊是一個獲取有趣材料訊息的好地方。

Sanyam Bhutani: 你在機器學習中真正感到興奮的是什麼?

Dr. Jean-Francois Puget: 我認為像 XGBost 或 LightGBM 這樣的梯度增強機(GBM)是過去 5 年中最重要的發展。大多數人會說深度學習。我同意深度學習是非常重要和令人興奮的,但 GBM 現在在行業中更具可操作性,因為它們可以用來取代迄今為止構建的大多數預測模型。

Sanyam Bhutani: 你覺得 ML 作為一個領域炒作過頭了嗎?

Dr. Jean-Francois Puget: 近年來,炒作已從 ML 轉移到 DL,現在已經轉移到 AI。當然這三個領域密切相關,但 ML 不再是什麼頭條新聞。這麼說,我不認為 ML/DL/AI 會辜負當前的炒作。雖然有真正的進步,但它們是過譽的和過於籠統的。人工智慧和深度學習很快就會出現戲劇性的回撥,之後還有另一個 AI 冬天。

Sanyam Bhutani: 在我們結束之前,對於那些開始競賽感到不知所措的初學者給點提示可以嗎?

Dr. Jean-Francois Puget: 不要害羞,儘量嘗試吧。使用假名而不是你的真實姓名,這樣你就不必擔心損害你的聲譽。但是要準備讓自己受到傷害,因為 Kaggle 很有競爭力;),並且利用任何挫折來學習下次如何做得更好。

Sanyam Bhutani: 感謝你接受這次採訪。


對我的啟發

  • 如果你不知道如何使用工具,你就不能構建工具。
  • 為了瞭解尚未掌握的領域而選擇比賽。
  • 最重要的一步是建立可靠的本地驗證設定,為自己定一個基準。
  • 能夠與業務利益相關者打交道、收集相關資料是重要的能力。
  • KaggleNoobs 的 Slack 團隊是一個獲取有趣材料訊息的好地方。