機器學習與深度學習19-線性代數02

目錄

    • 前文回顧
    • 6.協方差矩陣與主成分分析
    • 7.矩陣的奇異值分解
    • 8.神經網絡的前向傳播和反向傳播
    • 9.矩陣的跡
    • 10.特征工程的多項式特征擴展

前文回顧

上一篇文章鏈接:地址

6.協方差矩陣與主成分分析

協方差矩陣是一個對稱矩陣,用于衡量隨機變量之間的線性相關性和方差。給定一個 n n n維隨機向量 X = ( X 1 , X 2 , … , X n ) \boldsymbol{X} = (X_1, X_2, \ldots, X_n) X=(X1?,X2?,,Xn?),其協方差矩陣表示為 C = { cov ( X i , X j ) } \boldsymbol{C} = \{\text{cov}(X_i, X_j)\} C={cov(Xi?,Xj?)},其中 cov ( X i , X j ) \text{cov}(X_i, X_j) cov(Xi?,Xj?) 表示隨機變量 X i X_i Xi? X j X_j Xj? 的協方差。協方差矩陣是一個 n × n n \times n n×n 的矩陣,其中第 ( i , j ) (i, j) (i,j) 個元素表示 X i X_i Xi? X j X_j Xj? 之間的協方差。對角線上的元素是各個隨機變量的方差,非對角線上的元素則代表了兩個隨機變量之間的協方差
在主成分分析(PCA)中,協方差矩陣扮演著重要的角色。PCA 是一種常用的降維技術,旨在找到數據中最重要的特征(主成分),以便用較低維度的特征表示數據。使用 PCA 進行降維的關鍵步驟之一是計算數據的協方差矩陣。通過計算協方差矩陣,我們可以獲得數據中各個特征之間的相關性信息。協方差矩陣的特征值和特征向量提供了關于數據結構和特征重要性的有用信息,在 PCA 中,我們將協方差矩陣的特征向量作為新的基向量,將數據投影到這些基向量上,構成新的特征空間。通過將特征值排序,我們可以選擇最重要的特征(較大的特征值),從而實現數據維度的降低。這樣可以減少數據的冗余信息,并捕捉到最具代表性的特征

總結來說,協方差矩陣在主成分分析中起著至關重要的作用。它提供了關于數據特征之間關系的信息,幫助我們理解數據的結構并選擇最具代表性的特征,從而實現數據的降維和壓縮

7.矩陣的奇異值分解

矩陣的奇異值分解(Singular Value Decomposition,SVD)是一種重要的矩陣分解技術,它將一個矩陣分解為三個矩陣的乘積。給定一個 m × n m \times n m×n的矩陣 A \boldsymbol{A} A,其SVD表示為:

A = U Σ V T \boldsymbol{A} = \boldsymbol{U} \boldsymbol{\Sigma} \boldsymbol{V}^T A=UΣVT

其中, U \boldsymbol{U} U V \boldsymbol{V} V是正交矩陣, Σ \boldsymbol{\Sigma} Σ是一個對角矩陣。 U \boldsymbol{U} U的列向量稱為左奇異向量, V \boldsymbol{V} V的列向量稱為右奇異向量, Σ \boldsymbol{\Sigma} Σ的對角線元素稱為奇異值,SVD的主要特點是將原始矩陣分解成了三個部分,每個部分都有其獨特的性質和含義。這使得SVD在矩陣分解和降維中具有廣泛應用,比如:

  • 矩陣分解:SVD在矩陣分解中非常有用。通過將矩陣 A \boldsymbol{A} A進行奇異值分解,我們可以得到特征向量矩陣 U \boldsymbol{U} U V \boldsymbol{V} V以及奇異值矩陣 Σ \boldsymbol{\Sigma} Σ。這使得我們能夠有效地計算矩陣的逆、偽逆和矩陣方程的解等
  • 數據壓縮和降維:SVD也被廣泛應用于數據壓縮和降維。通過保留最大的奇異值和相應的特征向量,我們可以將原始高維數據投影到一個較低維度的空間中,并且盡量保留原始數據的主要信息。這對于處理高維數據、去除冗余信息和減少計算復雜性非常有幫助
  • 圖像處理:在圖像處理中,SVD可以用于圖像壓縮和圖像增強等任務。通過對圖像矩陣進行SVD,我們可以提取出圖像的主要特征,并用較低維度的表示來表示圖像
  • 推薦系統:在協同過濾推薦系統中,SVD可以用于對用戶-物品評分矩陣進行分解,以獲取用戶和物品的潛在特征。這有助于發現用戶和物品之間的關聯性,并用于生成個性化的推薦

總結來說,矩陣的奇異值分解(SVD)是一種強大且廣泛應用的矩陣分解技術。它在矩陣分解、數據壓縮、降維、圖像處理和推薦系統等領域具有重要作用,并為我們理解和處理復雜的數據提供了有力工具

8.神經網絡的前向傳播和反向傳播

  • 前向傳播:

    • 輸入向量 x \boldsymbol{x} x 通過與權重矩陣 W \boldsymbol{W} W 的乘法得到隱藏層的輸入: h = W ? x \boldsymbol{h} = \boldsymbol{W} \cdot \boldsymbol{x} h=W?x
    • 隱藏層的輸入 h \boldsymbol{h} h 經過激活函數 f ( ? ) f(\cdot) f(?) 得到隱藏層的激活值: a = f ( h ) \boldsymbol{a} = f(\boldsymbol{h}) a=f(h)
    • 隱藏層的激活值 a \boldsymbol{a} a 再次與權重矩陣 W ′ \boldsymbol{W}^\prime W 進行乘法運算得到輸出層的輸入: o = W ′ ? a \boldsymbol{o} = \boldsymbol{W}^\prime \cdot \boldsymbol{a} o=W?a
    • 輸出層的輸入 o \boldsymbol{o} o 經過激活函數 f ( ? ) f(\cdot) f(?) 得到最終的輸出值: y = f ( o ) \boldsymbol{y} = f(\boldsymbol{o}) y=f(o)
  • 反向傳播(基于交叉熵損失函數):

    • 計算輸出層的誤差項: δ o = ( y ? t ) ⊙ f ′ ( o ) \boldsymbol{\delta}_o = (\boldsymbol{y} - \boldsymbol{t}) \odot f^\prime(\boldsymbol{o}) δo?=(y?t)f(o),其中 t \boldsymbol{t} t 是目標值, ⊙ \odot 表示逐元素相乘, f ′ ( ? ) f^\prime(\cdot) f(?) 是激活函數的導數
    • 反向傳播輸出層的誤差項到隱藏層: δ a = W ′ T ? δ o ⊙ f ′ ( h ) \boldsymbol{\delta}_a = \boldsymbol{W}^{\prime T} \cdot \boldsymbol{\delta}_o \odot f^\prime(\boldsymbol{h}) δa?=WT?δo?f(h)
    • 計算權重矩陣 W ′ \boldsymbol{W}^\prime W 的梯度: ? W ′ = δ o ? a T \nabla_{\boldsymbol{W}^\prime} = \boldsymbol{\delta}_o \cdot \boldsymbol{a}^T ?W?=δo??aT
    • 計算權重矩陣 W \boldsymbol{W} W 的梯度: ? W = δ a ? x T \nabla_{\boldsymbol{W}} = \boldsymbol{\delta}_a \cdot \boldsymbol{x}^T ?W?=δa??xT

在反向傳播過程中,梯度計算使用了鏈式法則,通過將誤差項逐層傳遞回去,從而計算出權重矩陣的梯度。這些梯度可以用于更新權重矩陣,以最小化損失函數,并不斷優化神經網絡的性能,通過矩陣運算和逐元素操作,神經網絡可以高效地進行前向傳播和反向傳播過程,實現輸入數據的轉換和網絡參數的學習

9.矩陣的跡

矩陣的跡(Trace)是指一個方陣對角線上所有元素的和。對于一個 n × n n \times n n×n矩陣 A \boldsymbol{A} A,其跡表示為 tr ( A ) \text{tr}(\boldsymbol{A}) tr(A),計算方式為:

tr ( A ) = ∑ i = 1 n A i i \text{tr}(\boldsymbol{A}) = \sum_{i=1}^{n} A_{ii} tr(A)=i=1n?Aii?

跡有以下特性:

  • 跡對矩陣的轉置不變: tr ( A ) = tr ( A T ) \text{tr}(\boldsymbol{A}) = \text{tr}(\boldsymbol{A}^T) tr(A)=tr(AT)
  • 跡對矩陣乘法具有結合律: tr ( A B ) = tr ( B A ) \text{tr}(\boldsymbol{AB}) = \text{tr}(\boldsymbol{BA}) tr(AB)=tr(BA)
  • 跡對矩陣加法具有可加性: tr ( A + B ) = tr ( A ) + tr ( B ) \text{tr}(\boldsymbol{A} + \boldsymbol{B}) = \text{tr}(\boldsymbol{A}) + \text{tr}(\boldsymbol{B}) tr(A+B)=tr(A)+tr(B)

在矩陣求導和優化中,跡具有一些重要的應用。矩陣求導中的應用有:

  • 跡的導數:當我們需要對一個標量函數關于一個矩陣進行求導時,可以將其轉化為對跡的求導。根據跡的性質,我們有 ? ? A tr ( A B ) = B T \frac{\partial}{\partial \boldsymbol{A}} \text{tr}(\boldsymbol{AB}) = \boldsymbol{B}^T ?A??tr(AB)=BT ? ? A tr ( A B A T ) = B A T + B T A \frac{\partial}{\partial \boldsymbol{A}} \text{tr}(\boldsymbol{ABA}^T) = \boldsymbol{BA}^T + \boldsymbol{B}^T \boldsymbol{A} ?A??tr(ABAT)=BAT+BTA 等等
  • 鏈式法則:在多元復合函數求導時,跡的性質使得我們能夠使用跡來簡化求導過程。通過將跡運算與矩陣鏈式相乘結合起來,我們可以高效地計算復雜函數的導數

優化中的應用:

  • 正則化項:在損失函數中引入跡作為正則化項,可以對模型參數進行約束,避免過擬合或提高模型的穩定性
  • 物理意義:在一些優化問題中,跡可以表示系統的某些物理量,例如能量、功率等,從而幫助解決實際問題

總結:矩陣的跡是指方陣對角線上所有元素的和,具有對轉置不變、結合律和可加性等特性。在矩陣求導和優化中,跡被廣泛應用于簡化求導過程、定義正則化項以及表示物理量等方面

10.特征工程的多項式特征擴展

在特征工程中,多項式特征擴展(Polynomial Feature Expansion)是一種將原始特征通過多項式組合生成新的特征的方法。它通過引入原始特征的冪和交互項來捕捉特征之間的非線性關系,從而提供更豐富的特征表示

假設我們有一個包含 n n n個特征的向量 x = ( x 1 , x 2 , … , x n ) \boldsymbol{x} = (x_1, x_2, \ldots, x_n) x=(x1?,x2?,,xn?),多項式特征擴展可以將其轉化為一個包含多項式特征的向量 y = ( y 1 , y 2 , … , y m ) \boldsymbol{y} = (y_1, y_2, \ldots, y_m) y=(y1?,y2?,,ym?),其中 m m m是根據所選特征的最高次數和交互項確定的新特征維度

通過線性代數的方法,可以使用以下步驟來實現多項式特征擴展:

  • 構建特征矩陣:將原始特征向量 x \boldsymbol{x} x構造成一個 n × 1 n \times 1 n×1的矩陣 X \boldsymbol{X} X
    X = [ x 1 x 2 ? x n ] \boldsymbol{X} = \begin{bmatrix} x_1 \\ x_2 \\ \vdots \\ x_n \end{bmatrix} X= ?x1?x2??xn?? ?
    計算多項式度數:選擇所需的多項式度數 d d d,確定要生成的多項式特征的最高次數
  • 擴展特征矩陣:通過計算原始特征的冪和交互項,將特征矩陣 X \boldsymbol{X} X擴展為一個 n × m n \times m n×m的新特征矩陣 Y \boldsymbol{Y} Y。每一列代表一個多項式特征
    Y = [ 1 x 1 x 1 2 … x 1 d x 1 x 2 … 1 x 2 x 2 2 … x 2 d x 2 x 3 … ? ? ? ? ? ? ? 1 x n x n 2 … x n d x n ? 1 x n … ] \boldsymbol{Y} = \begin{bmatrix} 1 & x_1 & x_1^2 & \ldots & x_1^d & x_1x_2 & \ldots \\ 1 & x_2 & x_2^2 & \ldots & x_2^d & x_2x_3 & \ldots \\ \vdots & \vdots & \vdots & \ddots & \vdots & \vdots & \ddots \\ 1 & x_n & x_n^2 & \ldots & x_n^d & x_{n-1}x_n & \ldots \end{bmatrix} Y= ?11?1?x1?x2??xn??x12?x22??xn2????x1d?x2d??xnd??x1?x2?x2?x3??xn?1?xn???? ?
  • 利用線性代數進行計算:可以使用線性代數中的矩陣乘法來計算特征矩陣的擴展。我們可以將特征矩陣 X \boldsymbol{X} X與一個由多項式系數組成的矩陣相乘,得到擴展后的特征矩陣 Y \boldsymbol{Y} Y,多項式特征擴展使得我們能夠引入更多非線性特征,從而改善模型對數據的擬合能力。然而,要注意的是,高次多項式和大量交互項可能導致特征維度的爆炸,需要謹慎選擇多項式的度數和特征組合

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

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

相關文章

青藏高原ASTER_GDEM數據集(2011)

共享方式:開放獲取數據大小:73.69 GB數據時間范圍:2012-04-08 — 2012-05-08元數據更新時間:2021-10-15 數據集摘要 ASTER Global Digital Elevation Model (ASTER GDEM)是美國航空航天局 (NAS…

代碼隨想錄訓練營二十六天| 654.最大二叉樹 617.合并二叉樹 700.二叉搜索樹的搜索 98.驗證二叉搜索樹

654.最大二叉樹: 文檔講解:代碼隨想錄|654.最大二叉樹 視頻講解:又是構造二叉樹,又有很多坑!| LeetCode:654.最大二叉樹_嗶哩嗶哩_bilibili 狀態:已做出 思路: 這道題目要求使用給定…

臨時抱佛腳v2

術語解釋 多范式 (Multi-paradigm) 指支持多種編程范式,如面向對象編程和函數式編程,允許開發者根據需求選擇最合適的風格。 函數式編程 (Functional Programming) 一種編程范式,將計算視為數學函數的求值,強調不變性、無副作用…

MCGS和1200plc變量表格式編輯

設備編輯窗口---設備信息導出---另存為xx.CSV文件 在上面導出的表格基礎上編輯 本體位的編輯: db數據塊位編輯 db數據塊int類型 (4.14應改為4.140,0不省略) db數據塊real類型 通道號,地址均按順序排列 ,寄存期地址最后一位0不能省略&#…

Android高性能音頻與圖形開發:OpenSL ES與OpenGL ES最佳實踐

引言 在移動應用開發中,音頻和圖形處理是提升用戶體驗的關鍵要素。本文將深入探討Android平臺上兩大核心多媒體API:OpenSL ES(音頻)和OpenGL ES(圖形),提供經過生產環境驗證的優化實現方案。 …

GaussDB分布式數據庫調優方法總結:從架構到實踐的全鏈路優化指南

GaussDB分布式數據庫調優方法總結:從架構到實踐的全鏈路優化指南 GaussDB作為華為自主研發的分布式數據庫,基于MPP(大規模并行處理)架構設計,支持存儲與計算分離、列存/行存混合引擎、向量化執行等核心技術&#xff0…

NLP學習路線圖(三十九):對話系統

在人工智能領域,自然語言處理(NLP)無疑是推動人機交互革命的核心引擎。當清晨的鬧鐘響起,你輕聲一句“小愛同學,關掉鬧鐘”;當開車迷路時說“嘿Siri,導航到最近加油站”;當深夜向客服機器人詢問訂單狀態時——我們已在不知不覺中與對話系統建立了千絲萬縷的聯系。這類系…

Cambridge Pixel為警用反無人機系統(C-UAS)提供軟件支持

警用 C-UAS 系統受益于 Cambridge Pixel 和 OpenWorks Engineering 的技術合作。 作為雷達數據處理和雷達目標跟蹤的專家公司,Cambridge Pixel宣布與OpenWorks Engineering 合作,為警用系統提供先進的C-UAS系統。OpenWorks Engineering以創新的光學系統和…

【ArcGIS Pro微課1000例】0072:如何自動保存編輯內容及保存工程?

文章目錄 一、自動保存編輯內容二、自動保存工程在使用ArcGIS或者ArcGIS Pro時,經常會遇到以下報錯,無論點擊【發送報告】,還是【不發送】,軟件都會強制退出,這時如果對所操作沒有保存,就會前功盡棄。 此時,自動保存工作就顯得尤為重要,接下來講解兩種常見的自動保存方…

進行性核上性麻痹健康護理指南:全方位照護之道

進行性核上性麻痹(PSP)是一種罕見的神經系統變性疾病,會嚴重影響患者的生活質量。做好健康護理,能在一定程度上緩解癥狀,提高患者生活質量。 ?飲食護理是基礎。患者常伴有吞咽困難,飲食應選擇質地均勻、易…

第二節:Vben Admin v5 (vben5) Python-Flask 后端開發詳解(附源碼)

目錄 前言項目準備項目結構應用創建應用工廠`vben5-admin-backend/app/__init__.py` 文件`vben5-admin-backend/app/config.py` 文件`vben5-admin-backend/app/.env` 文件`vben5-admin-backend/app/logging_config.py` 文件`vben5-admin-backend/app/start.py` 文件`vben5-admi…

從零打造前沿Web聊天組件:從設計到交互

作者現在制作一款網頁端聊天室(青春版),之前一直有這個想法,現在總算是邁出了第一步開始制作了… 雄關漫道真如鐵,而今邁步從頭越! 啟程 當前已經完成左側聊天室列表顯示,通過http://localhos…

計算機網絡 : 傳輸層協議UDP與TCP

計算機網絡 : 傳輸層協議UDP與TCP 目錄 計算機網絡 : 傳輸層協議UDP與TCP引言1. 傳輸層協議UDP1.2 UDP協議段格式1.3 UDP的特點1.4 面向數據報1.5 UDP的緩沖區1.6 基于UDP的應用層協議及使用注意事項 2. 傳輸層協議TCP2.1 再談端口號2.2 TCP協議段格式2.…

Java高頻面試之并發編程-27

hello啊,各位觀眾姥爺們!!!本baby今天又來報道了!哈哈哈哈哈嗝🐶 面試:詳細說說AtomicInteger 的原理 AtomicInteger 的原理詳解 AtomicInteger 是 Java 并發包 (java.util.concurrent.atomic)…

冒險島的魔法果實-多重背包

問題描述 在冒險島的深處,小萌探索到了一個傳說中的魔法果實園。這里滿是各種神奇的魔法果實,吃了可以增加不同的魔法能量。 小萌想帶一些魔法果實回去,但是他的背包空間有限。看著這些琳瑯滿目的魔法果實,小萌很是糾結&#xf…

atomicity of memory accesses

文章目錄 atomicity of memory accesses? 正確認識原子性的邊界對于 **Load**:? 正確的原子性邊界是:對于 **Store**:? 正確的原子性邊界是: 🔄 修正原文中的說法(對照分析)? 原子性邊界最終…

VScode安裝配置PYQT6

開始是準備安裝PYQT5的,但是安裝不下去,就改成安裝PYQT6 一.安裝pyqt5,成功。 c:\PYQT>pip install pyqt5 Defaulting to user installation because normal site-packages is not writeable Collecting pyqt5 Downloading PyQt5-5.15.…

SpringBoot使用oshi獲取服務器相關信息

概念 OSHI是Java的免費基于JNA的(本機)操作系統和硬件信息庫。它不需要安裝任何其他本機庫,并且旨在提供一種跨平臺的實現來檢索系統信息,例如操作系統版本,進程,內存和CPU使用率,磁盤和分區&a…

Spring Boot 3 集成 MyBatis 連接 MySQL 數據庫

Spring Boot 3 集成 MyBatis 連接 MySQL 數據庫的步驟&#xff1a; 以下是集成 Spring Boot 3、MyBatis、HikariCP 連接池并操作 MySQL 數據庫的完整步驟和代碼&#xff1a; 一、創建 Spring Boot 項目 添加以下依賴&#xff1a; <dependencies><!-- Spring Web --…

基于React + FastAPI + LangChain + 通義千問的智能醫療問答系統

&#x1f4cc; 文章摘要&#xff1a; 本文詳細介紹了如何在前端通過 Fetch 實現與 FastAPI 后端的 流式響應通信&#xff0c;并支持圖文多模態數據上傳。通過構建 multipart/form-data 請求&#xff0c;配合 ReadableStream 實時讀取 AI 回復內容&#xff0c;實現類似 ChatGPT…