04.01 人工智能工程師學習學習路線圖

人工智能工程師學習圖如下:

人工智能工程師學習學習路線圖

入門前需要的幾種技能:

統計學

要深入理解機器學習,必須要有紮實的統計學基礎知識,這涉及到幾個方面:

1、度量模型是否成功的各種方法(精確度、召回率、ROC曲線下面積等)。損失函數和評估指標的選擇是如何**偏離模型的輸出**的。

2、如何理解**過擬合**和**欠擬合**,以及**偏差/方差折衷**。

3、你對模型的結果有什麼樣的**信心**。

機器學習理論

在訓練神經網絡的時候,實際上發生了什麼?是什麼使得某些任務可行,而其他任務不可行?要弄清楚這些問題,最好的方法不是深入研究理論知識,而是試著通過圖形和示例來了解機器學習。

需要理解的概念範圍包括:不同的**損失函數**的工作原理是什麼、為什麼**反向傳播**是有用的、**計算圖**是什麼。而對於**如何建立一個功能模型**,以及**如何跟團隊裡的其他人員進行有效地交流**,這些都需要深入地理解。

另一個基本技能是閱讀、理解和實施論文的能力。這個一開始做起來可能會感覺比較困難,所以最好的方法就是閱讀附帶代碼的論文(例如,研究GitXiv上的論文),並試著去理解它是如何實現的。

數據處理

如果你去問任何一個數據科學家他們的主要工作是什麼,他們會告訴你,90%的工作是數據處理。這與應用AI同樣重要,因為模型的成功與否與數據的質量(和數量)強相關。數據工作包含多個方面,但可歸納為下面幾類:

  • 數據採集(包括:找到好的數據源、準確度量數據的**質量**和**分類**、獲取和推斷標籤)

  • 數據預處理(**缺失數據**填補、**特徵工程**、數據**增強**、數據**規範化**、交叉驗證分割)

  • 數據後處理(使模型的輸出可用、清理工作、處理**特殊情況**和**異常值**)熟悉數據處理工作最好的方法是獲取一個數據集並試著使用它。有很多在線數據集,以及很多提供API的社交媒體和新聞媒體網站。基於上面提到的幾個步驟,我們可以這樣進行學習:

  • 獲取一個開源的數據集,並對其進行檢查。它有多大(點和特徵的數量)?數據如何分佈?是否存在缺失值或異常值

  • 構建一個將原始數據轉換為可用數據的轉換流程。如何填補缺失值?如何正確處理異常值?如何規範化數據?能創造出更多的表現特徵嗎?

軟件工程

許多的應用機器學習允許你充分發揮自己在軟件工程方面的技能,雖然有時也會有一點小改變。這些技能包括:

  • 測試流水線的各個方面(數據的預處理和增強、輸入輸出的整理、模型推理時間)。

  • 基於**模塊化**和可重用的原則來構建代碼。

  • 在訓練過程中的不同點對模型進行備份(**設置檢查點**)。

  • 配置一個**分佈式的基礎架構**,這樣能更加有效地進行訓練、超參數搜索或者推演。


分享到:


相關文章: