⑴ 神經網路復習筆記
神經網路(ANN)是深度學習的基礎,隨著計算機計算能力的增強和大數據的獲取,神經網路的重要性日益顯著。神經網路主要由輸入層、隱藏層和輸出層組成,每一層包含多個節點,通過節點之間的連接和權重進行信息的傳遞。
在神經網路中,使用符號表示數據和參數,如d表示特徵數,m表示樣本數。每個樣本x是一個d維向量,y是一個實數(標簽值)。參數w對應特徵,整個參數矩陣W是一個d維列向量。b表示常數項(偏置項)。
神經網路的訓練過程是通過梯度下降法對參數w和b進行估計,以獲得預測函數,用於估計y。在logistic回歸中,輸出y是通過sigmoid函數轉換得到的,而在神經網路中,輸出層使用sigmoid函數,而隱藏層使用修正線性單元(ReLU)等激活函數。
神經網路相比logistic回歸主要增加了隱層,使得網路能夠處理非線性分類問題。網路的層數、節點數和激活函數的選擇對網路性能有重要影響。通常使用反向傳播演算法(Back-Propagation)來計算梯度,以優化參數。
神經網路模型具有靈活性高、可以處理冗餘特徵等優點,但對雜訊敏感、參數多、存在局部極小值問題,以及計算速度相對較慢。在實際應用中,需要通過交叉驗證、正則化等技術來避免過擬合問題。
學習神經網路時,可以參考相關課程和書籍,如優達學城的機器學習課程、網易雲課堂的Python數據分析與機器學習實戰、吳恩達的機器學習課程、周志華的《機器學習》、李航的《統計學習方法》以及圖領版的《數據挖掘導論》等。
⑵ 什麼是神經網路
深度學習是機器學習的一種,以深度計算為特徵。神經網路因其強大與可擴展性,成為深度學習的標准模型。本文帶你了解神經網路。
神經網路的基礎是神經元,由神經元組成復雜連接,每個神經元執行簡單線性計算。神經元接收參數x,權重w決定參數x對神經元的影響程度,偏置b允許神經元獨立調整輸出。神經元最終輸出值y,由所有接收到值的求和計算得到。通過組合神經元形成神經網路層,每個層執行相對簡單的轉換。神經元數量巨大,實現復雜數據轉換。
神經網路通過引入激活函數將線性單元轉換為非線性單元。激活函數如ReLU,通過計算輸入值,將線性單元轉換為非線性,實現更復雜的數據擬合。堆疊層通過多層轉換,實現更復雜的轉換,最終計算結果。
神經網路訓練通過隨機梯度下降演算法,不斷調整各因子權重,最小化損失,提升預測准確率。損失函數衡量模型預測值與真實值之間的差距。優化器指導權重調整以最小化損失。學習率和批量大小影響訓練過程。
過擬合與欠擬合是神經網路訓練中常見的問題。過擬合意味著模型過於關注雜訊,欠擬合意味著模型學習不足。通過調整模型容量、使用提前停止策略,可以解決這些問題。Dropout層隨機丟棄部分輸入單元,防止學習雜訊;批量歸一化層確保數據在共同尺度上,優化訓練過程。
神經網路在二元分類任務中,通過准確率和交叉熵衡量性能。准確率衡量正確預測數量與總預測數量的比例,交叉熵衡量概率分布之間的距離。Sigmoid激活函數將密集層輸出轉化為概率,用於分類預測。
神經網路由基礎單元到復雜層構建,通過優化調整實現高效數據轉換。理解神經網路的工作機制與優化策略,對於掌握深度學習至關重要。本文僅作為入門參考,更多知識體系有待進一步學習與探索。