主頁 >  其他 > 高斯噪音 降維 資料壓縮 argmax 奇異值分解(SVD)PCA、ZCA白化 核主成分分析 LDA(線性判別分析)

高斯噪音 降維 資料壓縮 argmax 奇異值分解(SVD)PCA、ZCA白化 核主成分分析 LDA(線性判別分析)

2022-07-12 18:59:47 其他

  • 高斯噪音(Gaussian noise

a kind of signal noise that has a probability density function (pdf) equal to that of the normal distribution (which is also known as the Gaussian distribution).

the values that the noise can take are Gaussian-distributed.

 

(from wiki)

  • 降維(Dimensionality Reduction)

【原】Coursera—Andrew Ng機器學習—課程筆記 Lecture 14—Dimensionality Reduction 降維 - 馬小豆包 - 博客園 (cnblogs.com)

【機器學習】資料降維(Dimensionality Reduction) - 知乎 (zhihu.com)

各類降維方法總結 - 簡書 (jianshu.com)

  • (資料壓縮)Data compression

data compressionsource coding, or bit-rate reduction is the process of encoding information using fewer bits than the original representation.

-Lossless compression reduces bits by identifying and eliminating statistical redundancy. No information is lost in lossless compression.

-Lossy compression reduces bits by removing unnecessary or less important information.

Compression is useful because it reduces the resources required to store and transmit data.

(from wiki)

  • argmax

(from

argmax - Overfitting的文章 - 知乎 https://zhuanlan.zhihu.com/p/79383099)

  • 線性代數筆記5——平面方程與矩陣 - 我是8位的 - 博客園 (cnblogs

矩陣論(七):投影矩陣_exp(i)的博客-CSDN博客_投影矩陣(目前還看不懂

線性空間里的線性映射_Uncertainty!!的博客-CSDN博客_線性映射

  • 奇異值分解(SVD) - 知乎 (zhihu.com)

評論補充:這個先算U V,再算中間矩陣的方法是錯的

(應該先算u或v再求中間矩陣推出v或u,按這種演算法特征向量正負都無法確定)

真正的U和V一定是AAT和ATA的特征向量組,但是直接求ATA和AAT的特征向量組不一定是U和V,

A必須為實對稱矩陣,實對稱矩陣才有正交基讓其對角化,一般的n * n矩陣,比如Jordan block是沒法對角化的

求出矩陣A的特征值和特征向量,就可以把矩陣A特征分解

A=WΣW^(-1)

W: n個特征向量張成的n*n維矩陣

Σ: n個特征值為主對角線的n*n維矩陣(其他的為零)

!!!把W的n個特征向量標準化→每個w,滿足(w^T)·w=1 or ||w||^2=1后

n個特征向量是標準正交基,滿足(W^T)·W=I or W^T=W^(-1),W是酉矩陣

此時特征分解:A=WΣW^(-T)

【上面是方陣的情況】

【下面是SVD,不要求方陣】

A(m*n)的SVD

U: m*m

Σ: m*n,除主對角線元素(奇異值)全為零

V: n*n

U和V是酉矩陣(滿足(W^T)·W=I )

 

 

goal:求SVD分解后的U,Σ,V這三個矩陣

step1: 進行特征分解,得到的特征值和特征向量滿足下式:

(A^T)·A(n*n)的所有特征向量張成一個n×n的矩陣V=SVD公式里的V矩陣

V中的每個特征向量叫做A的右奇異向量

step2:

A·(A^T)(m*m)的所有特征向量張成一個m×m的矩陣V=SVD公式里的U矩陣

U中的每個特征向量叫做A的左奇異向量

step3:

∵Σ除了對角線上是奇異值其他位置都是0

∴只需要求出每個奇異值σ

the reason of step1:

特征值和奇異值滿足:

求奇異值的新方法get

SVD計算舉例

 

 

 

 


PCA降維,需要找到樣本協方差矩陣 (X^T)·X的最大的d個特征向量

然后用這最大的d個特征向量張成的矩陣來做低維投影降維

有一些SVD的實作演算法可以不求先求出協方差矩陣 ,也能求出右奇異矩陣V

PCA演算法可以不用做特征分解,而是做SVD來完成

實際上,scikit-learn的PCA演算法的背后真正的實作就是用的SVD

PCA僅僅使用了我們SVD的右奇異矩陣,即用于列數即特征維度的壓縮,也就是我們的PCA降維

左奇異矩陣可以用于行數的壓縮

讀評論:SVD是對資料進行有效特征整理的程序

對于一個m×n矩陣A,我們可以理解為其有m個資料,n個特征,(想象成一個n個特征組成的坐標系中的m個點),然而一般情況下,這n個特征并不是正交的,也就是說這n個特征并不能歸納這個資料集的特征,

SVD的作用就相當于是一個坐標系變換的程序,從一個不標準的n維坐標系,轉換為一個標準的k維坐標系,并且使這個資料集中的點,到這個新坐標系的歐式距離為最小值(也就是這些點在這個新坐標系中的投影方差最大化),其實就是一個最小二乘的程序,

如何使資料在新坐標系中的投影最大化呢,那么我們就需要讓這個新坐標系中的基盡可能的不相關,我們可以用協方差來衡量這種相關性,A^T·A中計算的便是n×n的協方差矩陣,每一個值代表著原來的n個特征之間的相關性,

當對這個協方差矩陣進行特征分解之后,我們可以得到奇異值和右奇異矩陣,而這個右奇異矩陣則是一個新的坐標系,奇異值則對應這個新坐標系中每個基對于整體資料的影響大小,我們這時便可以提取奇異值最大的k個基,作為新的坐標,這便是PCA的原理

對于表達特征空間的資訊,用正交特征能更方便直觀的去歸納,非正交特征表達更困難,也更容易出現冗余特征,

  • 希望降維多少個維度,就從最大的λ依次開始取(最大,次大,次次大……)
  • 特征值大表示資訊量豐富,反之不豐富
  • PCA(主成分分析)所對應的數學理論是SVD(矩陣的奇異值分解),而奇異值分解本身是完全不需要對矩陣中的元素做標準化或者去中心化的,

但是對于機器學習,我們通常會對矩陣(也就是資料)的每一列先進行標準化,

PCA通常是用于高維資料的降維,它可以將原來高維的資料投影到某個低維的空間上并使得其方差盡量大,如果資料其中某一特征(矩陣的某一列)的數值特別大,那么它在整個誤差計算的比重上就很大,那么可以想象在投影到低維空間之后,為了使低秩分解逼近原資料,整個投影會去努力逼近最大的那一個特征,而忽略數值比較小的特征,

因為在建模前我們并不知道每個特征的重要性,這很可能導致了大量的資訊缺失,為了“公平”起見,防止過分捕捉某些數值大的特征,我們會對每個特征先進行標準化處理,使得它們的大小都在相同的范圍內,然后再進行PCA,

此外,從計算的角度講,PCA前對資料標準化還有另外一個好處,因為PCA通常是數值近似分解,而非求特征值、奇異值得到決議解,所以當我們使用梯度下降等演算法進行PCA的時候,我們最好先要對資料進行標準化,這是有利于梯度下降法的收斂,

(from 主成分分析PCA演算法:為什么要對資料矩陣進行均值化? - Bruce的回答 - 知乎 https://www.zhihu.com/question/40956812/answer/1188542265)

  • 白化whitening

原文地址:http://blog.csdn.net/hjimce/article/details/50864602

**作者:**hjimce

一、相關理論

白化是一個比PCA稍微高級一點的演算法

目的是去除輸入資料的冗余資訊,假設訓練資料是影像,由于影像中相鄰像素之間具有很強的相關性,所以用于訓練時輸入是冗余的;白化的目的就是降低輸入的冗余性,

輸入資料集X,經過白化處理后,新的資料X'滿足兩個性質:

(1)特征之間相關性較低;(2)所有特征具有相同的方差,

PCA如果不降維,而是僅僅使用PCA求出特征向量,然后把資料X映射到新的特征空間,這樣的一個映射程序,其實就是滿足了我們白化的第一個性質:除去特征之間的相關性,因此白化演算法的實作程序,第一步操作就是PCA,求出新特征空間中X的新坐標,然后再對新的坐標進行方差歸一化操作,

二、演算法概述

白化分為PCA白化、ZCA白化

1、PCA預處理

 

 


上面圖片,左圖表示原始資料X

然后我們通過協方差矩陣可以求得特征向量u1、u2,

然后把每個資料點,投影到這兩個新的特征向量,得到進行坐標如下:

 

 

2、PCA白化

對上面的pca的新坐標X’,每一維的特征做一個標準差歸一化處理,

X'為經過PCA處理的新PCA坐標空間,然后λi就是第i維特征對應的特征值(前面pca得到的特征值),ε是為了避免除數為0,

3、ZCA白化

ZCA白化是在PCA白化的基礎上,又進行處理的一個操作,具體的實作是把上面PCA白化的結果,又變換到原來坐標系下的坐標:

 

 


(from 機器學習(七)白化whitening_hjimce的博客-CSDN博客_特征白化)

  • 機器學習中一個重要的思想:不是找到曲折的分界線,而是找到在高維(或低維)的投影,并在新維度中找到合適的線性分界面
  • feature mapping 把資料升維!
  • 核化投影內積,而不投影樣本本身,運算式相對來說更簡單
  • https://www.bilibili.com/video/BV1hW411C7ny?from=search&seid=13237820143070831043&vd_source=0645a76390602d5640c372c2f44d99e1
    • 把所有樣本類似協方差的核函式按一定規律寫出來組成核矩陣,如果該核矩陣滿足半正定,說明里面的小k可以作為核函式

    • 不同核函式的分界面不同(?)

    • 資料降維: 核主成分分析(Kernel PCA) https://zhuanlan.zhihu.com/p/59775730

    主成分分析(Principal Components Analysis, PCA)適用于資料的線性降維,

    而核主成分分析(Kernel PCA, KPCA)可實作資料的非線性降維,用于處理線性不可分的資料集,

    KPCA的大致思路是:對于輸入空間(Input space)中的矩陣X ,我們先用一個非線性映射把X 中的所有樣本映射到一個高維甚至是無窮維的空間(稱為特征空間,Feature space),(使其線性可分),然后在這個高維空間進行PCA降維,

    (知乎原文并不能看得太懂……可能是還有一些知識點不夠熟悉)

    • 矩陣的模

    https://blog.csdn.net/familyshizhouna/article/details/108456164

     

     

    • Linear Discriminant Analysis

    solve more than two-class classification problems.

    It is also known as Normal Discriminant Analysis (NDA) or Discriminant Function Analysis (DFA).

    This can be used to project the features of higher dimensional space into lower-dimensional space in order to reduce resources and dimensional costs.

    one of the most popular dimensionality reduction techniques used for supervised classification problems.

    It is also considered a pre-processing step for modeling differences in ML and applications of pattern classification.

    • Medical

    In the medical field, LDA has a great application in classifying the patient disease on the basis of various parameters of patient health and the medical treatment which is going on. On such parameters, it classifies disease as mild, moderate, or severe. This classification helps the doctors in either increasing or decreasing the pace of the treatment.

  •  

     

    To overcome the overlapping issue in the classification process, we must increase the number of features regularly.

    LDA enables us to draw a straight line that can completely separate the two classes of the data points. Here, LDA uses an X-Y axis to create a new axis by separating them using a straight line and projecting data onto a new axis.

  •  

     

    To create a new axis, Linear Discriminant Analysis uses the following criteria:

    • It maximizes the distance between means of two classes.
    • It minimizes the variance within the individual class.

    Conclusion: the new axis will increase the separation between the data points of the two classes and plot them onto the new axis.

    [Linear Discriminant Analysis (LDA) in Machine Learning - Javatpoint](https://www.javatpoint.com/linear-discriminant-analysis-in-machine-learning#:~:text=Linear Discriminant Analysis (LDA) is,Discriminant Function Analysis (DFA).)

    • PCA在提取樣本主要變化資訊上有效,但次要變化資訊有時也能幫助分類
    • PCA方法尋找的是資料變化的主軸方向,而判別分析尋找的是用來有效分類的方向,

       

       

      變換:使得同一類的樣本被w作用后距離更近,不同類的樣本被w作用后距離更遠,

      Xi的中心點

      Ni為類別ci的樣本數,即Xi的數目,

      中心點經過w變換后得到的中心點

       

       

      樣本集Xi的中心點的投影為Xi中各元素投影后的均值,

      goal: 使得投影之后同類之間樣本距離更小,而不同類之間的樣本距離越大,

      • 1)類內距離:各樣本點到該樣本點所在類別的中心點的距離和

      散列度:一個類別的類內距離

      投影之后類別為i的類內散列度(scatter,類似方差)為:

       

       

      Zi:類別為i的所有樣本集合

      推導見:LDA 線性判別分析 - liuwu265 - 博客園 (cnblogs.com)

      • PPCA

      PPCA(Probability PCA)_我永遠熱愛計算機科學與技術的博客-CSDN博客_ppca

       

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/498631.html

標籤:其他

上一篇:Leetcode 2 兩數相加

下一篇:猴子吃桃(遞回)

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 網閘典型架構簡述

    網閘架構一般分為兩種:三主機的三系統架構網閘和雙主機的2+1架構網閘。 三主機架構分別為內端機、外端機和仲裁機。三機無論從軟體和硬體上均各自獨立。首先從硬體上來看,三機都用各自獨立的主板、記憶體及存盤設備。從軟體上來看,三機有各自獨立的作業系統。這樣能達到完全的三機獨立。對于“2+1”系統,“2”分為 ......

    uj5u.com 2020-09-10 02:00:44 more
  • 如何從xshell上傳檔案到centos linux虛擬機里

    如何從xshell上傳檔案到centos linux虛擬機里及:虛擬機CentOs下執行 yum -y install lrzsz命令,出現錯誤:鏡像無法找到軟體包 前言 一、安裝lrzsz步驟 二、上傳檔案 三、遇到的問題及解決方案 總結 前言 提示:其實很簡單,往虛擬機上安裝一個上傳檔案的工具 ......

    uj5u.com 2020-09-10 02:00:47 more
  • 一、SQLMAP入門

    一、SQLMAP入門 1、判斷是否存在注入 sqlmap.py -u 網址/id=1 id=1不可缺少。當注入點后面的引數大于兩個時。需要加雙引號, sqlmap.py -u "網址/id=1&uid=1" 2、判斷文本中的請求是否存在注入 從文本中加載http請求,SQLMAP可以從一個文本檔案中 ......

    uj5u.com 2020-09-10 02:00:50 more
  • Metasploit 簡單使用教程

    metasploit 簡單使用教程 浩先生, 2020-08-28 16:18:25 分類專欄: kail 網路安全 linux 文章標簽: linux資訊安全 編輯 著作權 metasploit 使用教程 前言 一、Metasploit是什么? 二、準備作業 三、具體步驟 前言 Msfconsole ......

    uj5u.com 2020-09-10 02:00:53 more
  • 游戲逆向之驅動層與用戶層通訊

    驅動層代碼: #pragma once #include <ntifs.h> #define add_code CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS) /* 更多游戲逆向視頻www.yxfzedu.com ......

    uj5u.com 2020-09-10 02:00:56 more
  • 北斗電力時鐘(北斗授時服務器)讓網路資料更精準

    北斗電力時鐘(北斗授時服務器)讓網路資料更精準 北斗電力時鐘(北斗授時服務器)讓網路資料更精準 京準電子科技官微——ahjzsz 近幾年,資訊技術的得了快速發展,互聯網在逐漸普及,其在人們生活和生產中都得到了廣泛應用,并且取得了不錯的應用效果。計算機網路資訊在電力系統中的應用,一方面使電力系統的運行 ......

    uj5u.com 2020-09-10 02:01:03 more
  • 【CTF】CTFHub 技能樹 彩蛋 writeup

    ?碎碎念 CTFHub:https://www.ctfhub.com/ 筆者入門CTF時時剛開始刷的是bugku的舊平臺,后來才有了CTFHub。 感覺不論是網頁UI設計,還是題目質量,賽事跟蹤,工具軟體都做得很不錯。 而且因為獨到的金幣制度的確讓人有一種想去刷題賺金幣的感覺。 個人還是非常喜歡這個 ......

    uj5u.com 2020-09-10 02:04:05 more
  • 02windows基礎操作

    我學到了一下幾點 Windows系統目錄結構與滲透的作用 常見Windows的服務詳解 Windows埠詳解 常用的Windows注冊表詳解 hacker DOS命令詳解(net user / type /md /rd/ dir /cd /net use copy、批處理 等) 利用dos命令制作 ......

    uj5u.com 2020-09-10 02:04:18 more
  • 03.Linux基礎操作

    我學到了以下幾點 01Linux系統介紹02系統安裝,密碼啊破解03Linux常用命令04LAMP 01LINUX windows: win03 8 12 16 19 配置不繁瑣 Linux:redhat,centos(紅帽社區版),Ubuntu server,suse unix:金融機構,證券,銀 ......

    uj5u.com 2020-09-10 02:04:30 more
  • 05HTML

    01HTML介紹 02頭部標簽講解03基礎標簽講解04表單標簽講解 HTML前段語言 js1.了解代碼2.根據代碼 懂得挖掘漏洞 (POST注入/XSS漏洞上傳)3.黑帽seo 白帽seo 客戶網站被黑帽植入劫持代碼如何處理4.熟悉html表單 <html><head><title>TDK標題,描述 ......

    uj5u.com 2020-09-10 02:04:36 more
最新发布
  • 2023年最新微信小程式抓包教程

    01 開門見山 隔一個月發一篇文章,不過分。 首先回顧一下《微信系結手機號資料庫被脫庫事件》,我也是第一時間得知了這個訊息,然后跟蹤了整件事情的經過。下面是這起事件的相關截圖以及近日流出的一萬條資料樣本: 個人認為這件事也沒什么,還不如關注一下之前45億快遞資料查詢渠道疑似在近日復活的訊息。 訊息是 ......

    uj5u.com 2023-04-20 08:48:24 more
  • web3 產品介紹:metamask 錢包 使用最多的瀏覽器插件錢包

    Metamask錢包是一種基于區塊鏈技術的數字貨幣錢包,它允許用戶在安全、便捷的環境下管理自己的加密資產。Metamask錢包是以太坊生態系統中最流行的錢包之一,它具有易于使用、安全性高和功能強大等優點。 本文將詳細介紹Metamask錢包的功能和使用方法。 一、 Metamask錢包的功能 數字資 ......

    uj5u.com 2023-04-20 08:47:46 more
  • vulnhub_Earth

    前言 靶機地址->>>vulnhub_Earth 攻擊機ip:192.168.20.121 靶機ip:192.168.20.122 參考文章 https://www.cnblogs.com/Jing-X/archive/2022/04/03/16097695.html https://www.cnb ......

    uj5u.com 2023-04-20 07:46:20 more
  • 從4k到42k,軟體測驗工程師的漲薪史,給我看哭了

    清明節一過,盲猜大家已經無心上班,在數著日子準備過五一,但一想到銀行卡里的余額……瞬間心情就不美麗了。最近,2023年高校畢業生就業調查顯示,本科畢業月平均起薪為5825元。調查一出,便有很多同學表示自己又被平均了。看著這一資料,不免讓人想到前不久中國青年報的一項調查:近六成大學生認為畢業10年內會 ......

    uj5u.com 2023-04-20 07:44:00 more
  • 最新版本 Stable Diffusion 開源 AI 繪畫工具之中文自動提詞篇

    🎈 標簽生成器 由于輸入正向提示詞 prompt 和反向提示詞 negative prompt 都是使用英文,所以對學習母語的我們非常不友好 使用網址:https://tinygeeker.github.io/p/ai-prompt-generator 這個網址是為了讓大家在使用 AI 繪畫的時候 ......

    uj5u.com 2023-04-20 07:43:36 more
  • 漫談前端自動化測驗演進之路及測驗工具分析

    隨著前端技術的不斷發展和應用程式的日益復雜,前端自動化測驗也在不斷演進。隨著 Web 應用程式變得越來越復雜,自動化測驗的需求也越來越高。如今,自動化測驗已經成為 Web 應用程式開發程序中不可或缺的一部分,它們可以幫助開發人員更快地發現和修復錯誤,提高應用程式的性能和可靠性。 ......

    uj5u.com 2023-04-20 07:43:16 more
  • CANN開發實踐:4個DVPP記憶體問題的典型案例解讀

    摘要:由于DVPP媒體資料處理功能對存放輸入、輸出資料的記憶體有更高的要求(例如,記憶體首地址128位元組對齊),因此需呼叫專用的記憶體申請介面,那么本期就分享幾個關于DVPP記憶體問題的典型案例,并給出原因分析及解決方法。 本文分享自華為云社區《FAQ_DVPP記憶體問題案例》,作者:昇騰CANN。 DVPP ......

    uj5u.com 2023-04-20 07:43:03 more
  • msf學習

    msf學習 以kali自帶的msf為例 一、msf核心模塊與功能 msf模塊都放在/usr/share/metasploit-framework/modules目錄下 1、auxiliary 輔助模塊,輔助滲透(埠掃描、登錄密碼爆破、漏洞驗證等) 2、encoders 編碼器模塊,主要包含各種編碼 ......

    uj5u.com 2023-04-20 07:42:59 more
  • Halcon軟體安裝與界面簡介

    1. 下載Halcon17版本到到本地 2. 雙擊安裝包后 3. 步驟如下 1.2 Halcon軟體安裝 界面分為四大塊 1. Halcon的五個助手 1) 影像采集助手:與相機連接,設定相機引數,采集影像 2) 標定助手:九點標定或是其它的標定,生成標定檔案及內參外參,可以將像素單位轉換為長度單位 ......

    uj5u.com 2023-04-20 07:42:17 more
  • 在MacOS下使用Unity3D開發游戲

    第一次發博客,先發一下我的游戲開發環境吧。 去年2月份買了一臺MacBookPro2021 M1pro(以下簡稱mbp),這一年來一直在用mbp開發游戲。我大致分享一下我的開發工具以及使用體驗。 1、Unity 官網鏈接: https://unity.cn/releases 我一般使用的Apple ......

    uj5u.com 2023-04-20 07:40:19 more