- AI 核心任務與數據類型:
- 特征提取核心:AI 的核心是從原始輸入數據中提取特征,CV 是將圖像數據轉換為計算機可識別的特征,NLP 是將文本數據轉換為特征,數據挖掘是將結構化數據轉換為特征。
- 數據類型特點:圖像數據在計算機眼中是矩陣,每個值是像素點,可直接計算;文本數據如字符串,較難直接處理成矩陣。
- 神經網絡基礎概念:
- 映射概念:映射可看作 y = wx + b 的方程,w 和 b 組成映射方程。通過權重參數對輸入數據進行組合變換,將原始數據投影到特征空間,得到新特征,目的是讓數據更好被認識和識別。
- 輸入與權重矩陣:以圖像數據為例,輸入數據可拉成向量,如 32×32×3 的圖像有 3072 個像素點。權重參數與特征一一對應,做矩陣乘法,橫向量乘列向量得一個值,在分類任務中,該值代表數據屬于各個類別的概率。
- 偏置參數:偏置用于對結果做微調,偏置個數與輸出結果個數相同,如 10 分類任務就有 10 個偏置。
- 權重初始化:權重一開始是隨機初始化的,后續根據預測結果與真實標簽的一致性進行更新。
- 損失計算方法:
- 回歸任務損失:回歸任務預測一個值,通過計算預測值與真實值的差異來衡量損失,如計算錯誤類別和真實類別得分的差值,差值越大損失越大。
- 分類任務損失:分類任務要得到數據屬于各個類別的概率,二分類使用 ZMOD 函數將輸入值映射到 0 - 1 之間,大于 0.5 為正例,小于 0.5 為負例;多分類通過 Softmax 函數,先將得分值進行 e 的冪運算放大差異,再進行歸一化得到概率值,最后用對數計算損失,只考慮正確類別的概率,概率越高損失越小。
- 權重更新方法:
- 梯度下降原理:神經網絡由前向傳播和反向傳播組成。前向傳播通過輸入數據和權重參數得到預測值,計算損失;反向傳播通過求梯度找到權重更新方向,梯度是損失對權重參數的偏導數,沿梯度反方向更新權重可使損失變小。
- 學習率:學習率控制每次更新的步長,一般較小且適中,學習率有 warm up 階段,先緩慢上升到基礎學習率,再進行衰減。
- 批量處理:有隨機梯度下降、批量梯度下降和小批量梯度下降。隨機梯度下降用一個樣本更新,速度快但結果可能不穩定;批量梯度下降用所有樣本求平均,結果穩定但計算量大;小批量梯度下降用一批樣本,batch 越大越好,可使求平均更準確。
- 動量概念:引入動量(慣性),考慮前一步的梯度方向,通過求合力方向更新權重,可使模型更新更快,多數模型都會引入。
- 網絡結構與特征提取:
- 特征提取本質:神經網絡通過權重參數對輸入數據進行線性組合,將原始數據轉換為新特征,權重參數越多,可得到的特征個數越多。
- 深度學習不可解釋性:深度學習得到的特征難以解釋其具體含義。
- 網絡結構示例:輸入數據通過多組權重和偏置參數得到中間特征和最終預測結果,如輸入 1×3 矩陣,通過 3×4 矩陣的 W1 和 4 個偏置 B1 得到 1×4 的中間特征,再經過 4×4 矩陣的 W2 和 4 個偏置 B2,最后通過 4×1 矩陣的 W3 和 1 個偏置 B3 得到預測值。
- 網絡效果與優化:
- 神經元個數影響:神經元個數越多,可切分數據集的 “刀數” 越多,能更好地對數據進行分類,但可能出現過擬合問題。
- 過擬合問題:模型為了識別離群點開辟過大區域,導致測試時預測錯誤,數據預處理很重要,數據質量和數量都會影響模型效果。
- 非線性變換:神經網絡的線性變換只能解決線性問題,通過引入激活函數(如 SoftReLU)進行非線性變換,可使模型解決非線性問題。SoftReLU 函數小于 0 時 y = 0,大于 0 時 y = x,能去除不好的特征。