【機器學習 / 深度學習】基礎教程

階段一:機器學習 / 深度學習基礎教程

定位:針對準備進入 AI多智能體開發 的初學者,打牢機器學習與深度學習的基礎。


一、為什么需要學習機器學習/深度學習

在進入智能體(Agent)開發之前,必須具備一定的 機器學習和深度學習 基礎。
原因有三:

  1. 智能體的核心決策模型 基于大規模語言模型(LLM),而 LLM 本質上是深度學習的產物。
  2. 多智能體系統的優化與調度 需要理解過擬合、泛化、表示學習等概念。
  3. 在實際工程中,即使調用開源框架(如 LangChain、MetaGPT),也需要對底層模型的工作原理有基本認識,否則無法進行問題診斷與優化。

因此,第一階段的學習目標是:理解機器學習基本范式、掌握神經網絡主流結構、熟悉 PyTorch/TensorFlow 框架的基本用法。


二、機器學習基礎

2.1 機器學習的基本定義

機器學習(Machine Learning, ML)指的是 讓計算機通過數據學習規律,而不是顯式編程
Tom Mitchell 的經典定義:

如果一個程序在某任務 T 上的性能度量 P 隨著經驗 E 的增加而提升,那么它就是在進行學習。

公式化表示:

  • 任務 T:例如圖像分類、語音識別、推薦系統。
  • 性能度量 P:準確率、召回率、均方誤差等。
  • 經驗 E:訓練數據集。

2.2 監督學習

監督學習(Supervised Learning)是最常見的機器學習范式。

  • 定義:通過帶有標簽的數據集來訓練模型,學習從輸入到輸出的映射關系。

  • 數據特征:每個樣本都有輸入 X 和目標輸出 Y

  • 常見任務

    • 分類(Classification):輸入一張圖片,判斷是貓還是狗。
    • 回歸(Regression):輸入房屋特征,預測房價。

數學形式:
已知訓練數據集 D={(xi,yi)}i=1nD = \{(x_i, y_i)\}_{i=1}^nD={(xi?,yi?)}i=1n?,學習一個函數 f(x)f(x)f(x),使得預測值 y^=f(x)\hat{y} = f(x)y^?=f(x) 盡量接近真實值 yyy

例子:貓狗分類

  • 輸入:像素矩陣(圖片)。
  • 輸出:類別標簽(貓=0,狗=1)。
  • 模型:邏輯回歸、神經網絡。

2.3 無監督學習

無監督學習(Unsupervised Learning)則不依賴于標簽。

  • 定義:輸入數據沒有標注,目標是探索數據的結構、分布、規律。

  • 常見任務

    • 聚類(Clustering):將客戶分為不同群體。
    • 降維(Dimensionality Reduction):如 PCA、t-SNE。
    • 密度估計:建模數據的分布。

例子:客戶分群

  • 輸入:客戶的消費特征(年齡、收入、購買習慣)。
  • 輸出:自動劃分為不同群體(高價值用戶、潛在流失用戶等)。

2.4 過擬合與泛化

過擬合(Overfitting):模型在訓練數據上表現極好,但在測試數據上表現很差。

  • 本質:模型學到了“噪聲”而不是“規律”。
  • 典型特征:訓練誤差很低,但驗證誤差很高。

泛化能力(Generalization):模型在新數據上的表現能力。

  • 高泛化能力的模型,意味著它學到的是 通用規律 而不是僅僅記住了訓練數據。

防止過擬合的方法

  1. 增加數據量(Data Augmentation)。
  2. 正則化(L1/L2、Dropout)。
  3. 提前停止(Early Stopping)。
  4. 模型簡化(減少參數量)。

例子:

  • 一個學生死記硬背練習題(過擬合),考試遇到新題就不會。
  • 另一個學生掌握了解題方法(泛化),即使換題型也能解答。

三、神經網絡基礎

深度學習(Deep Learning)是機器學習的一個分支,核心思想是通過 神經網絡(Neural Network) 進行特征自動學習。


3.1 神經網絡的基本結構

感知機(Perceptron) 是最簡單的神經網絡單元。
公式:

y=f(∑i=1nwixi+b) y = f(\sum_{i=1}^n w_i x_i + b) y=f(i=1n?wi?xi?+b)

其中:

  • xix_ixi?:輸入特征
  • wiw_iwi?:權重
  • bbb:偏置
  • fff:激活函數(Sigmoid, ReLU 等)

多個感知機層疊,就形成了多層感知機(MLP)。


3.2 卷積神經網絡(CNN)

CNN 擅長處理圖像。

  • 核心思想:利用卷積核提取局部特征,減少參數量。

  • 典型結構

    1. 卷積層(Convolutional Layer):提取特征。
    2. 池化層(Pooling Layer):下采樣,減少維度。
    3. 全連接層(Fully Connected Layer):輸出分類結果。

例子:識別手寫數字(MNIST)。
輸入:28x28 像素灰度圖。
輸出:0-9 的數字類別。


3.3 循環神經網絡(RNN)

RNN 適合處理序列數據(文本、語音)。

  • 核心思想:引入“記憶”,上一時刻的輸出會影響當前時刻的計算。
  • 問題:長序列訓練容易出現梯度消失或爆炸。
  • 改進模型:LSTM、GRU。

例子:情感分析。
輸入:“I love this movie.”
輸出:情感標簽(正向)。


3.4 Transformer

Transformer 是當前大模型(如 GPT-4、Claude)的核心架構。

  • 核心創新:自注意力機制(Self-Attention)。

  • 優勢

    • 并行計算能力強。
    • 更適合長距離依賴建模。
  • 典型應用:機器翻譯、文本生成、圖像描述。

例子
輸入:“Translate ‘你好世界’ to English。”
輸出:“Hello World.”


四、主流框架:PyTorch 與 TensorFlow

4.1 PyTorch

特點:

  • 動態計算圖,調試更靈活。
  • 更接近 Python 風格,代碼直觀。
  • 研究社區應用廣泛。

簡單例子(線性回歸):

import torch
import torch.nn as nn
import torch.optim as optim# 數據
x = torch.randn(100, 1)
y = 3 * x + 2 + 0.1 * torch.randn(100, 1)# 模型
model = nn.Linear(1, 1)# 損失與優化器
criterion = nn.MSELoss()
optimizer = optim.SGD(model.parameters(), lr=0.01)# 訓練
for epoch in range(1000):y_pred = model(x)loss = criterion(y_pred, y)optimizer.zero_grad()loss.backward()optimizer.step()print("學習到的權重和偏置:", model.weight.item(), model.bias.item())

4.2 TensorFlow / Keras

特點:

  • 靜態圖模式,適合部署到生產環境。
  • 企業應用多,生態豐富。
  • Keras 封裝簡潔,適合快速實驗。

例子(線性回歸):

import tensorflow as tf# 數據
x = tf.random.normal((100, 1))
y = 3 * x + 2 + 0.1 * tf.random.normal((100, 1))# 模型
model = tf.keras.Sequential([tf.keras.layers.Dense(1)
])# 編譯
model.compile(optimizer='sgd', loss='mse')# 訓練
model.fit(x, y, epochs=1000, verbose=0)# 查看參數
w, b = model.layers[0].get_weights()
print("學習到的權重和偏置:", w, b)

4.3 PyTorch vs TensorFlow 對比

特點PyTorchTensorFlow/Keras
編程風格動態圖,像寫 Python靜態圖,適合大規模部署
社區學術研究主流工業界應用廣泛
學習曲線上手容易Keras 簡單,TF 稍復雜
調試靈活易調試部署工具鏈完善

結論:

  • 如果你是 研究/實驗驅動,推薦 PyTorch。
  • 如果你是 企業級部署,推薦 TensorFlow。

五、學習路徑建議(階段一)

  1. 理論入門

    • 學習監督/無監督學習、過擬合、泛化的基本概念。
  2. 神經網絡核心結構

    • 學會 MLP、CNN、RNN、Transformer 的基本原理。
    • 建議在 Kaggle/MNIST 數據集上做小實驗。
  3. 框架實操

    • PyTorch:實現線性回歸、手寫數字識別。
    • TensorFlow/Keras:實現文本分類、圖像分類。
  4. 小項目練習

    • 貓狗分類器(CNN)。
    • 電影評論情感分析(RNN/LSTM)。
    • 英文到中文翻譯(Transformer)。

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

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

相關文章

ESP32應用——HTTP client(ESP-IDF框架)

目錄 一、前言 二、URL 2.1 URL簡介 2.2 URL示例 三、HTTP 3.1 HTTP協議概述 3.2 HTTP的工作原理 3.2.1 HTTP 請求-響應流程 3.2.2 HTTP 請求結構 3.2.3 HTTP請求方法 3.2.4 HTTP響應結構 3.2.5 HTTP狀態碼 四、ESP HTTP 客戶端流程 五、ESP HTTP 客戶端實戰解析…

動學學深度學習07-現代卷積神經網絡

動學學深度學習pytorch 參考地址:https://zh.d2l.ai/ 文章目錄動學學深度學習pytorch1-第07章-現代卷積神經網絡1. AlexNet1.1 AlexNet 的核心貢獻是什么?1.2 AlexNet 與 LeNet 的主要區別有哪些?1.3 為什么 AlexNet 需要 GPU 訓練&#xff1…

詳細講解Java中的反射和經典面試題(保姆級別)

1.1 反射的概述:專業的解釋(了解一下):是在運行狀態中,對于任意一個類,都能夠知道這個類的所有屬性和方法;對于任意一個對象,都能夠調用它的任意屬性和方法;這種動態獲取…

MyCAT完整實驗報告

MyCAT完整實驗報告 ? 前言 剛剛看了一下前面的那篇MyCAT的文章 感覺有一些問題 所以拿出一篇文章再說一下 單獨構建了完整的實驗環境 這樣會全面一點 ? 安裝MyCAT #跳過? 主從配置 #不多追溯 因為我們選擇的主從 也可以做雙主機 但我們后邊再說? 環境搭建 一、環境規劃 服務…

機器翻譯論文閱讀方法:頂會(ACL、EMNLP)論文解析技巧

更多內容請見: 機器翻譯修煉-專欄介紹和目錄 文章目錄 一、論文選擇:快速判斷論文價值 1.1 關注核心會議與子領域 1.2 篩選標準 1.3 預讀篩選 1.4 快速定位關鍵信息 二、精讀解析 2.1 問題定義(5分鐘) 2.2 方法解剖(15分鐘) 2.3 實驗深挖(20分鐘) 2.4 批判性思考(10分…

Transformer模型實戰篇

引入 基于Transformers的NLP解決方案的步驟如下:(以文本分類為例) 導入相關包,General,可以詢問ai需要導什么包加載數據集,Data_loader,Datasets數據集劃分,測試機,驗證集…

深入(流批【牛批】框架)Flink的機制

flink本身是專注有狀態的無限流處理,有限流處理【batch批次】是無限流處理的一中特殊情況!應用場景實時ETL 集成流計算現有的諸多數據通道和SQL靈活的加工能力,對流式數據進行實時清洗、歸并和結構化 處理;同時,對離線…

Git 2.15.0 64位安裝步驟Windows詳細教程從下載到驗證(附安裝包下載)

一、下載后雙擊運行 安裝包下載:https://pan.quark.cn/s/7200b32a1ecf,找到下載好的文件:?Git-2.15.0-64-bit.exe?雙擊這個文件,就會彈出安裝向導窗口,點 ??“Next”(下一步)?? 二、選擇…

在職老D滲透日記day23:sqli-labs靶場通關(第29關-31關)http參數過濾

5.29.第29關 http參數過濾 閉合5.29.1.手動注入(1)判斷注入類型、注入點閉合(2)有回顯,優先用聯合查詢注入,判讀字段數?id1&id2 order by 3 -- ?id1&id2 order by 4 --(3)…

Spring Boot整合Amazon SNS實戰:郵件訂閱通知系統開發

Spring Boot整合Amazon SNS實戰引言配置服務總結新用戶可獲得高達 200 美元的服務抵扣金 亞馬遜云科技新用戶可以免費使用亞馬遜云科技免費套餐(Amazon Free Tier)。注冊即可獲得 100 美元的服務抵扣金,在探索關鍵亞馬遜云科技服務時可以再額…

LeetCode_動態規劃1

動態規劃1.動態規劃總結1.1 01背1.1.1 二維數組1.1.2 一維數組1.2 完全背包2.斐波那契數(力扣509)3.爬樓梯(力扣70)4.使用最小花費爬樓梯(力扣746)5.不同路徑(力扣62)6.不同路徑 II(力扣63)7.整數拆分(力扣343)8.不同的二叉搜索樹(力扣96)9.分割等和子集(力扣416)10.最后一塊石…

【STM32】HAL庫中的實現(九):SPI(串行外設接口)

SPI 接口通信原理 SPI(Serial Peripheral Interface)是全雙工主從通信協議,特點是: 信號線功能SCK串行時鐘MOSI主設備輸出,從設備輸入MISO主設備輸入,從設備輸出CS(NSS)片選信號&am…

Git常用操作大全(附git操作命令)

Git常用操作大全 一、基礎配置 1.1 設置用戶名和郵箱 git config --global user.name "你的名字" git config --global user.email "你的郵箱"1.2 查看配置 git config --list二、倉庫管理 2.1 初始化本地倉庫 git init2.2 克隆遠程倉庫 git clone <倉庫…

詳解flink table api基礎(三)

文章目錄1.使用flink的原因&#xff1a;2. Flink支持兩種模式&#xff1a;3. flink table api工作原理&#xff1a;4. Flink table api 使用5. select語句&flink table api&#xff1a;6. 使用flink table api 創建table7. 使用flink table api 寫流式數據輸出到表或sink8.…

Vue2+Vue3前端開發_Day5

參考課程: 【黑馬程序員 Vue2Vue3基礎入門到實戰項目】 [https://www.bilibili.com/video/BV1HV4y1a7n4] ZZHow(ZZHow1024) 自定義指令 基本語法&#xff08;全局 & 局部注冊&#xff09; 介紹&#xff1a;自己定義的指令&#xff0c;可以封裝一些 DOM 操作&#xff0c…

機器學習--決策樹2

目錄 第一代裁判&#xff1a;ID3 與信息增益的 “偏愛” 第二代裁判&#xff1a;C4.5 用 “增益率” 找平衡 第三代裁判&#xff1a;CART 的 “基尼指數” 新思路 遇到連續值&#xff1f;先 “砍幾刀” 再說 給決策樹 “減肥”&#xff1a;剪枝的學問 動手試試&#xff1…

yggjs_react使用教程 v0.1.1

yggjs_react是一個用于快速創建React項目的工具&#xff0c;它集成了Vite、TypeScript、Zustand和React Router等現代前端技術棧&#xff0c;幫助開發者快速搭建高質量的React應用。 快速入門 快速入門部分將指導您如何安裝yggjs_react工具、創建新項目并啟動開發服務器。 安…

vulhub可用的docker源

這一塊不太容易找&#xff0c;我試了好幾個源&#xff0c;下面是20250820測試可用源 編輯方法sudo mkdir -p /etc/docker sudo vim /etc/docker/daemon.json 配置內容 [1] {"registry-mirrors" : ["https://docker.registry.cyou", "https://docker-…

基于YOLOv8-SEAttention與LLMs融合的農作物害蟲智能診斷與防控決策系統

1. 引言 1.1 研究背景與意義 農作物蟲害是制約農業產量與質量的重要因素。據FAO報告&#xff0c;全球每年因病蟲害造成的糧食損失高達 20%–40%。傳統人工巡查與經驗診斷具有時效性差、成本高與專業人才不足等缺陷。近年來&#xff0c;計算機視覺特別是目標檢測技術在農業檢測…

從零開始構建GraphRAG紅樓夢知識圖譜問答項目(三)

文章結尾有CSDN官方提供的學長的聯系方式&#xff01;&#xff01; 歡迎關注B站從零開始構建一個基于GraphRAG的紅樓夢項目 第三集01 搭建后端服務 創建一個python文件server.py 完整源碼放到文章最后了。 1.1 graphrag 相關導入 # GraphRAG 相關導入 from graphrag.query.cont…