點擊上方藍色文字關注我們

作者 | Sabina Pokhrel

編譯 | VK

來源 | Towards Data Science

幾個月前,我在悉尼參加了一個會議。 會上,fast.ai向我介紹了一門在線機器學習課程,那時候我根本沒注意。 這周,在Kaggle競賽尋找提高分數的方法時,我又遇到了這門課程。 我決定試一試。

這是我從第一堂課中學到的東西,這是一個1小時17分鐘的視頻,介紹了隨機森林。

課的主題是隨機森林,傑里米(講師)提供了一些基本信息以及使用Jupyter Notebook的提示和技巧。

Jeremy談到的一些重要的事情是,數據科學並不等同於軟件工程。 在數據科學中,我們做的是設計模型。 雖然軟件工程有自己的一套實踐,但數據科學也有自己的一套最佳實踐。

模型構建和原型設計需要一個交互的環境,是一個迭代的過程。 我們建立一個模型。 然後,我們採取措施來改善它。 重複直到我們對結果滿意爲止。

隨機森林

我聽說過“隨機森林”這個詞,我知道它是現有的機器學習技術之一,但是老實說,我從來沒有想過要去了解它。 我一直熱衷於更多地瞭解深度學習技術。

從這次演講中,我瞭解到隨機森林確實很棒。

它就像一個通用的機器學習技術,既可以用於迴歸,也可以用於分類。 這意味着你可以使用隨機森林來預測股票價格以及對給定的醫療數據樣本進行分類。

一般來說,隨機森林模型不會過擬合,即使它會,它也很容易阻止過擬合。

對於隨機森林模型,不需要單獨的驗證集。

隨機森林只有一些統計假設。 它也不假設你的數據是正態分佈的,也不假設這些關係是線性的。

它只需要很少的特徵工程。

因此,如果你是機器學習的新手,它可以是一個很好的起點。

其他概念

維數詛咒是一個概念,意思是你擁有的數據特徵越多,數據點就會越分散。 這意味着兩點之間的距離沒有意義。

Jeremy確信,在實踐中,情況並非如此,事實上,你的數據擁有的特徵越多,對模型的訓練效果就越好。

沒有免費午餐定理是這樣一個概念:沒有一個模型可以完美地適用於任何類型的數據。

技巧和竅門

  1. 你可以在Jupyter Notebook中使用!來執行bash命令,例如。

!ls 
!mkdir new_dr
  1. 在Python 3.6中追加字符串的新方法。

name = 'Sabina'
print(f'Hello {name}')no_of_new_msg = 11
print(f'Hello {name}, you have {no_of_new_msg} new messages')
  1. 不需要離開Jupyter notebook就可以查看python函數。在函數名前使用?獲取它的文檔。

from sklearn.ensemble import RandomForestClassifier?RandomForestClassifier.fit()
  1. 如果你想閱讀源代碼,可以使用??在函數名稱前。

from sklearn.ensemble import RandomForestClassifier??RandomForestClassifier.fit()
  1. 通過使用to_feather方法保存處理過的數據集,將數據集以存儲在RAM中的相同格式保存到磁盤。可以使用read_feather方法從保存的文件中讀取數據。注意,爲了使用這些方法,你需要安feather-format庫。

import pandasdf = pd.DataFrame()
df.to_feather('filename')saved_df= pd.read_feather('filename')

如果你有興趣深入探討該主題,請點擊此處鏈接到課程視頻。

http://course18.fast.ai/lessonsml1/lesson1.html

長按掃碼,關注我們

你與世界 只差一個

磐創AI

點擊 閱讀原文 ,獲得更多精彩內容

相關文章