熱身課-入行 AI,選個腳踏實地的崗位 重點筆記

weixin_34054866發表於2018-11-24

何為腳踏實地?

到底做什麼算是入行 AI

三個角色:演算法、工程、資料

演算法

日常

演算法工程師:讀論文&實現演算法-確認是否可以落地,是否可以改善產品的質量

必備能力

  • 具備良好的英語基礎,大量閱讀英語論文的能力
  • https://arxiv.org ——這裡有多個學科(包括 computer science)大量的最新論文。
  • 平均每週讀一篇最新論文的頻率

自測演算法力

有個很簡單的驗證方法:現在就去 https://arxiv.org 找一篇論文(比如這篇:Dynamic Routing Between Capsules),從頭到尾讀一遍。現在不懂沒關係,至少先試試在不懂的情況下能不能把它從頭到尾一字不漏的讀完,有不認識的字查字典。

學術實踐能力

讀懂論文:

  1. 回溯學習能力
  2. 數學能力
  3. 理論聯絡實際,將學術論述與產品、業務結合的能力
    1. 負責實際業務問題到數學模型的抽象

創新型人才

不用發明,但是懂得使用演算法解決不同的問題

做工程

日常工作

典型的工位:機器學習工程師(調參工程師)

注:用已知有效的方法來解決實際問題

軟體工程師的分支

說到底,開發人工智慧產品的程式設計師還是程式設計師

程式設計師的基本素質

  • 編碼能力
  • 基礎演算法能力
    • 圖的構建
    • 刪除
    • 遍歷
    • 排序

最基本的首先是一個合格的程式設計師

做工程,「機器學習」學到多深夠用

演算法

  • 簡單使用:瞭解演算法的基本原理,應用領域,功能和侷限
    • 該演算法的應用領域是什麼
      • 該演算法的應用目標是什麼
      • 該演算法的合適應用在怎樣的資料集會造成什麼樣的影響
      • 能夠獲取該演算法的函式庫,呼叫該演算法生成模型
    • 模型調優:對所採用演算法和對應模型的資料公式有所瞭解
      • 知道呼叫函式各個引數的意義
      • 能夠通過加約束條件來優化
      • 瞭解當前問題域,目標和輸入資料確定的情況下,還可以用那些其他模型可替換現有模型,並進行嘗試。
      • 能夠多個模型弱模型加權組成強模型
    • 執行效率優化:對模型本身的數學推導過程和模型最優化方法有所掌握,對於各種最優化方法的特點、資源佔用及消耗情況有所瞭解。
      • 瞭解演算法在當前資料集上的執行效率
      • 瞭解在其他語言、平臺、框架的工具包中有否同等或近似功能但在當前應用場景下效率更高的演算法
      • 能夠針對具體場景,通過轉換模型的最優化方法(optimizer)來改進執行效率。

資料

* 具有業務含義的資訊
* 運算的數字
  • 特徵選取:從業務角度區分輸入資料包含的特徵
    • 對資料本身和其對應的業務領域有所瞭解。
    • 能夠根據需要標註資料。
    • 知道如何從全集中通過劃分特徵子集、加減特徵等方法選取有效特徵集。
  • 向量空間模型(VSM)構建:瞭解如何將自然語言、圖片等人類日常使用的資訊轉化成演算法可以運算的資料。
    • 能夠把文字、語音、影像等輸入轉化成演算法所需輸入格式
    • 能夠根據資訊熵等指標選取有效特徵。
  • 資料清洗和處理:對直接的業務資料進行篩選並轉換為模型可處理
    • 能夠運用統計學方法等 ETL 手段清洗輸入資料。
    • 能夠對資料進行歸一化(normalization), 正則化(regularization)等標準化操作。
    • 能夠採用 bootstrap 等取樣方法處理有限的訓練/測試資料,以達到更好的運算效果。

模型驗證

模型問題:

  • 這個模型的質量如何?
  • 這個模型的那個模型比較,哪個更適合解決當前問題
  • 在做了如此這般的優化之後得出了一個新的模型,怎麼能確認它比舊的模型好?

解決模型問題:

  • 瞭解 bias,overfitting 等基本概念,及針對這些情況的基本改進方法。
  • 瞭解各種模型度量指標(e.g. Accuracy, Precision,Recall, F1Score……)的計算方法和含義,及其對模型質量的影響。
  • 能夠構建訓練集、測試集,並進行交叉驗證。
  • 能夠運用多種不同的驗證方法(e.g. 2-Fold cross-validation,K-Fold cross-validation, Leave-One-Out cross-validation……)來適應不同的資料集。

做資料

最主要的資料標註

  • ETL
  • 處理資料

標註資料的重要性

雖然有無監督學習,但是證明有直接用途的還是有監督學習。

深度學習在應用上比較成功:

  • 影像處理
  • 語音處理
  • NLP
  • 自動翻譯
  • AlphaGo

上述都是依賴於海量的標註資料

現階段而言,資料比演算法重要!重點:

資料人工標註的重要性

對人類真正有用的模型,還是需要人工標註的訓練資料。
人工標註資料仍然是 AI 落地的必要和主流

人工智慧的“勤行”

  • 什麼是標註
    • 核心一點:標註就是將原始資料內全部或者部分內容,按照業務需求打上定義好的標籤。
  • 資料標註的日常工作
    • 給各種各樣的資料(文字、影像、視訊、音訊)打上標籤
  • 資料標註的難點
    • 資料的整體一致性,以及與業務的集合
    • 資料一致性:所有資料的標註原則一樣
    • 與業務的結合:這是最重要的落地相
  • 資料標註的潛力
    • 資料對模型的影響遠勝於演算法
  • 資料標註的職業發展
    • 如何根據業務設定標註原則
    • 如何快速統一地實現標註原則
    • 資料標註職業的提升路徑:經驗 業務 管理:
      • 通過實踐積累資料標註的工作經驗
      • 深入理解業務需求並將其體現到資料的標註結果中
      • 管理標註團隊達到高效的標註結果與業務變更 align

認清形勢,腳踏實地

我們要做的就是:認清市場當前的需求,瞭解不同層次人才定位,並結合自己實際尋找一條可行之路

相關文章