【機器學習筆記 Ⅱ】1 神經網絡

神經網絡是一種受生物神經元啟發設計的機器學習模型,能夠通過多層非線性變換學習復雜的輸入-輸出關系。它是深度學習的基礎,廣泛應用于圖像識別、自然語言處理、游戲AI等領域。


1. 核心思想

  • 生物類比:模仿人腦神經元的工作方式,通過“激活”和“連接”處理信息。
  • 數學本質:多層嵌套的函數組合,通過調整權重和偏置擬合數據。

2. 基本結構

(1) 神經元(Neuron)

神經元結構

(2) 網絡層級

  1. 輸入層(Input Layer):接收原始數據(如圖像像素、文本詞向量)。
  2. 隱藏層(Hidden Layers):進行特征變換(層數和神經元數可調)。
  3. 輸出層(Output Layer):生成最終預測(如分類概率、回歸值)。

3. 前向傳播(Forward Propagation)

數據從輸入層逐層傳遞到輸出層的過程:
在這里插入圖片描述


4. 激活函數(Activation Functions)

函數公式特點適用場景
Sigmoid( \frac{1}{1+e^{-z}} )輸出(0,1),適合概率二分類輸出層
ReLU( \max(0, z) )計算快,解決梯度消失隱藏層(最常用)
Leaky ReLU( \max(0.01z, z) )避免神經元“死亡”替代ReLU
Softmax( \frac{e^{z_i}}{\sum e^{z_j}}} )多分類概率歸一化多分類輸出層

5. 反向傳播(Backpropagation)

通過鏈式法則計算損失函數對每個參數的梯度,從輸出層反向傳遞誤差并更新權重:

  1. 計算損失(如交叉熵、均方誤差)。

6. 代碼實現(Python)

(1) 使用TensorFlow/Keras

from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense# 創建模型
model = Sequential([Dense(128, activation='relu', input_shape=(784,)),  # 隱藏層(128個神經元)Dense(64, activation='relu'),                      # 隱藏層Dense(10, activation='softmax')                    # 輸出層(10分類)
])# 編譯模型
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])# 訓練
model.fit(X_train, y_train, epochs=10, batch_size=32)

(2) 手動實現(NumPy)

import numpy as npdef relu(z):return np.maximum(0, z)def softmax(z):exp_z = np.exp(z - np.max(z, axis=1, keepdims=True))return exp_z / np.sum(exp_z, axis=1, keepdims=True)# 初始化參數
W1 = np.random.randn(input_size, hidden_size) * 0.01
b1 = np.zeros((1, hidden_size))
# ...(其他層初始化)# 前向傳播
z1 = X.dot(W1) + b1
a1 = relu(z1)
z2 = a1.dot(W2) + b2
y_pred = softmax(z2)# 反向傳播(略)

7. 神經網絡類型

類型特點應用場景
前饋神經網絡(FNN)信息單向傳播(輸入→輸出)圖像分類、回歸
卷積神經網絡(CNN)局部連接、權重共享計算機視覺
循環神經網絡(RNN)處理序列數據(時間/文本)語音識別、機器翻譯
Transformer自注意力機制(并行處理長序列)GPT、BERT等大模型

8. 關鍵挑戰與解決方案

問題原因解決方案
梯度消失/爆炸深層網絡鏈式求導的連乘效應ReLU、BatchNorm、殘差連接
過擬合模型復雜度過高Dropout、L2正則化、早停
計算成本高參數量大GPU加速、模型剪枝

9. 總結

  • 神經網絡 = 多層非線性變換 + 梯度下降優化。
  • 核心步驟:前向傳播 → 計算損失 → 反向傳播 → 更新參數。
  • 設計要點
    1. 選擇網絡深度和寬度(如層數、每層神經元數)。
    2. 選擇激活函數(隱藏層用ReLU,輸出層按任務定)。
    3. 優化器(如Adam)、損失函數(如交叉熵)、正則化。

神經網絡通過堆疊簡單的神經元實現了強大的表達能力,是解決復雜模式識別任務的利器!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/90117.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/90117.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/90117.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

謝飛機的Java高級開發面試:從Spring Boot到分布式架構的蛻變之旅

面試現場:謝飛機的求職奇遇記 "請坐,謝先生。我看你簡歷上寫了精通Lombok?"面試官推了推金絲眼鏡。 謝飛機一愣:"啊...這個..."突然掏出手機,"您看我GitHub開源項目里用了SneakyThrows&…

一站式整合:解鎖高效后端管理利器——Motia

在當今的科技世界中,企業對于后端系統的要求越來越高。無論是處理復雜的 API 請求、管理后臺任務,還是集成 AI 代理,這些都需要一個強大的框架來支撐。而今天,我們要介紹的 Motia 正是這樣一個現代化、統一的后端框架,…

如何將信息從 iPhone 同步到Mac(完整步驟和示意圖)

如果您是 Apple 用戶,您一定知道在所有設備上保持同步是多么便捷。Apple 生態系統的一大亮點就是能夠在 iPhone 和 Mac 之間同步 iMessage 和短信。如果您想了解如何將信息從 iPhone 同步到 Mac,千萬不要錯過本教程。快速瀏覽一下這些方法:第…

【C++字符串變換】2022-7-20

緣由C問題-字符串變換-編程語言-CSDN問答 void 字符串變換() {string s "", t ""; char f; int x 0, g 1, l 0;cin >> s; l s.size();while (x <l){f s[x];if (f s[x 1]){g, s.erase(x, 1);}else{if (g > 1){s.erase(x, 1);t s.sub…

Web攻防-XMLXXE無回顯帶外SSRF元數據DTD實體OOB盲注文件拓展

知識點&#xff1a; 1、WEB攻防-XML&XXE-注入原理&分類&修復 2、WEB攻防-XML&XXE-文件讀取&SSRF&實體引用 3、WEB攻防-XML&XXE-無回顯&升級拓展&挖掘思路 一、演示案例-WEB攻防-XML&XXE-注入原理&分類&安全影響 詳細點 XML被…

Node中Unexpected end of form 錯誤

文章目錄Unexpected end of form 錯誤為什么 app.use(upload.any()) 會導致 Unexpected end of form 錯誤&#xff1f;1. 主要問題分析app.use(upload.any()) 的問題錯誤場景2. 解決方案? 方案 1&#xff1a;僅在需要文件上傳的路由使用 Multer&#xff08;推薦&#xff09;?…

通過Curtain 解決方案保障BIM模型安全共享—建筑業的防泄密實戰

某跨海大橋項目突發數據泄露事件&#xff1a;主橋鋼結構的BIM模型被外泄&#xff0c;核心參數流入競爭對手手中&#xff0c;導致項目風險評估升級。調查發現&#xff0c;泄漏源頭是一名施工方的項目經理。盡管BIM系統已經能夠控制哪些人可以閱讀、修改、甚至下載資料的權限&…

ULVAC愛發科RFS03D RF POWER SUPPLY INSTRUCTION MANUAL RF射頻電源

ULVAC愛發科RFS03D RF POWER SUPPLY INSTRUCTION MANUAL RF射頻電源

暑假算法日記第三天

目標?&#xff1a;刷完靈神專題訓練算法題單 階段目標&#x1f4cc;&#xff1a;【算法題單】滑動窗口與雙指針 LeetCode題目: 3439. 重新安排會議得到最多空余時間 I2134. 最少交換次數來組合所有的 1 II1297. 子串的最大出現次數2653. 滑動子數組的美麗值1888. 使二進制字符…

了解業務分析技術梗概

業務分析技術 以下基于BABOK V3框架&#xff0c;結合業務分析師&#xff08;BA&#xff09;的實際工作場景&#xff0c;系統梳理50項業務分析技術、常用工具、學習路徑及文檔應用指南。內容綜合BABOK官方標準及行業實踐&#xff0c;旨在提升BA的工作效能。 一、BABOK V3 技術體…

小紅的數字刪除 - 牛客

小紅的數字刪除 題目不難&#xff0c;忽略了一個 corner case&#xff0c;導致我在某次面試沒有 AK。 10003 對于這個 case&#xff0c;只考慮前導零 全部刪除是不對的&#xff0c;剩下的 3 也不能刪。 void solve(){string s;cin >> s;int res0;vector<int> a(…

Linux網絡: socket初識

一些概念 簡單了解一下TCP,UDP這兩個協議&#xff0c;和一些概念 TCP與UDP 學校教過TCP是 傳輸層協議有連接可靠傳輸面向字節流 而UDP是 傳輸層協議無連接不可靠傳輸面向數據報 當時完全不知道這些什么意思 網絡字節序 網絡通信&#xff0c;要接收和發送數據。我們知道…

AI時代的彎道超車之第二十七章:AI技術的發展方向

在這個AI重塑世界的時代,你還在原地觀望嗎?是時候彎道超車,搶占先機了! 李尚龍傾力打造——《AI時代的彎道超車:用人工智能逆襲人生》專欄,帶你系統掌握AI知識,從入門到實戰,全方位提升認知與競爭力! 內容亮點: AI基礎 + 核心技術講解 職場賦能 + 創業路徑揭秘 打破…

RabbitMQ用法的6種核心模式全面解析

文章目錄**一、RabbitMQ核心架構解析**1. AMQP協議模型2. 消息流轉原理**二、六大核心用法詳解****1. 簡單隊列模式&#xff08;Hello World&#xff09;****2. 工作隊列模式&#xff08;Work Queues&#xff09;****3. 發布/訂閱模式&#xff08;Pub/Sub&#xff09;****4. 路…

深入協程調試:協程調試工具與實戰

本文系統梳理主流協程調試工具&#xff0c;結合完整代碼示例與實戰技巧&#xff0c;助你高效解決異步編程難題一、協程調試的核心挑戰 協程的非線性執行流是調試的最大挑戰&#xff1a; 傳統斷點調試難以追蹤協程切換堆棧信息不完整或丟失上下文并發競爭條件難以復現 #mermaid-…

Git 日常開發實戰命令大全

&#x1f9f0; Git 日常開發實戰命令大全 本文整理了 Git 在日常開發中高頻使用的命令集合&#xff0c;覆蓋從基礎操作到進階技巧的完整流程&#xff0c;方便留存查閱&#x1f440; &#xff0c;最后附上所有指令。其中內容包括&#xff1a; ? 本地倉庫管理&#xff1a;添加文…

力扣 hot100 Day37

25. K 個一組翻轉鏈表 給你鏈表的頭節點 head &#xff0c;每 k 個節點一組進行翻轉&#xff0c;請你返回修改后的鏈表。 k 是一個正整數&#xff0c;它的值小于或等于鏈表的長度。如果節點總數不是 k 的整數倍&#xff0c;那么請將最后剩余的節點保持原有順序。 你不能只是…

【力扣 中等 C】516. 最長回文子序列

目錄 題目 解法一 題目 待添加 解法一 int max(int a, int b) {return a > b ? a : b; }int longestPalindromeSubseq(char* s) {const int len strlen(s);int dp[len];for (int i len - 1; i > 0; i--) {dp[i] 1;int leftDown;if (i 1 < len) {leftDown dp…

DAY 54 Inception網絡及其思考

知識點回顧&#xff1a; 傳統計算機視覺發展史&#xff1a;LeNet-->AlexNet-->VGGNet-->nceptionNet-->ResNet 之所以說傳統&#xff0c;是因為現在主要是針對backbone-neck-head這樣的范式做文章 inception模塊和網絡特征融合方法階段性總結&#xff1a;逐元素相加…

1. 微服務架構演進:從單體到SpringCloud

想象一下,你剛剛花了一個下午在生產環境下部署一款單體應用,結果因為一個微小的配置變動,整個系統宕機,大量用戶投訴蜂擁而至。運維緊急回滾,開發又要加班定位問題……這并非孤立事件,而是單體架構在規模和復雜性增長后常見的“連鎖反應”。 一、單體架構:簡單之始,復雜…