淺談ICA算法的概念、本質和流程

2020-11-23 電子發燒友

淺談ICA算法的概念、本質和流程

工程師譚軍 發表於 2018-06-25 14:57:00

ICA獨立成分分析是近年來出現的一種強有力的數據分析工具(Hyvarinen A, Karhunen J, Oja E, 2001; Roberts S J, Everson R, 2001)。1994年由Comon給出了ICA的一個較為嚴格的數學定義,其思想最早是由Heranlt和Jutten於1986年提出來的。 

ICA從出現到現在雖然時間不長,然而無論從理論上還是應用上,它正受到越來越多的關注,成為國內外研究的一個熱點。

ICA獨立成分分析是一種用來從多變量(多維)統計數據裡找到隱含的因素或成分的方法,被認為是PCA主成分分析(請參見人工智慧(46))和FA因子分析的一種擴展。對於盲源分離問題,ICA是指在只知道混合信號,而不知道源信號、噪聲以及混合機制的情況下,分離或近似地分離出源信號的一種分析過程。 

ICA算法概念:

ICA(IndependentComponent Analysis) 獨立成分分析是一門統計技術,用於發現存在於隨機變量下的隱性因素。ICA為給觀測數據定義了一個生成模型。在這個模型中,其認為數據變量是由隱性變量,經一個混合系統線性混合而成,這個混合系統未知。並且假設潛在因素屬於非高斯分布、並且相互獨立,稱之為可觀測數據的獨立成分。

ICA與PCA相關,但它在發現潛在因素方面效果良好。它可以應用在數字圖像、檔文資料庫、經濟指標、心裡測量等。

ICA算法本質:

ICA是找出構成信號的相互獨立部分(不需要正交),對應高階統計量分析。ICA理論認為用來觀測的混合數據陣X是由獨立元S經過A線性加權獲得。ICA理論的目標就是通過X求得一個分離矩陣W,使得W作用在X上所獲得的信號Y是獨立源S的最優逼近,該關係可以通過下式表示:

Y = WX = WAS , A = inv(W)

ICA相比與PCA更能刻畫變量的隨機統計特性,且能抑制高斯噪聲。

從線性代數的角度去理解,PCA和ICA都是要找到一組基,這組基張成一個特徵空間,數據的處理就都需要映射到新空間中去。

ICA理論基礎:

ICA理論基礎如下:

1)標準正交基

2)白化

3)梯度下降

ICA目標函數:

ICA的目標函數如下: 

樣本數據 x 經過參數矩陣 W 線性變換後的結果的L1範數,實際上也就是描述樣本數據的特徵。

加入標準正交性約束(orthonormality constraint)後,ICA獨立成分分析相當於求解如下優化問題: 

這就是標準正交ICA的目標函數。與深度學習中的通常情況一樣,這個問題沒有簡單的解析解,因此需要使用梯度下降來求解,而由於標準正交性約束,又需要每次梯度下降迭代之後,將新的基映射回正交基空間中,以此保證正交性約束。 

ICA優化參數:  

針對ICA的目標函數和約束條件,可以使用梯度下降法,並在梯度下降的每一步中增加投影(projection )步驟,以滿足標準正交約束。過程如下:  

ICA算法流程:

已知信號為S,經混和矩陣變換後的信號為:X=AS。對交疊信號X,求解混矩陣B,使Y=WX各分量儘量相互獨立。求解W的過程並不一定是近似A的逆矩陣,Y也不是信號S的近似,而是為了使Y分量之間相互獨立。目的是從僅有的觀測數據X出發尋找一個解混合矩陣。

常見的方法:InfoMax方法(用神經網絡使信息最大化),FastICA方法(固定點算法,尋求X分量在W上投影(W^t)*X)的非高斯最大化。

主要算法流程如下: 
 1、預處理部分:1)對X零均值處理   
2)球化分解(白化)

乘球化矩陣S,使Z=SX各行正交歸一,即ZZ』=I

2、核心算法部分: 尋求解混矩陣U,使Y=UZ,Y各道數據儘可能獨立(獨立判據函數G)。
1)、由於Y獨立,各行必正交。且通常取U保持Y各行方差為1,故U是正交變換。
2)、所有算法預處理部分相同,以後都設輸入的為球化數據z,尋找正交矩陣U,使Y=Uz獨立。

由於獨立判據函數G的不同,以及步驟不同,有不同的獨立分量分析法。

3、Fast ICA算法思路:

思路:屬於探查性投影追蹤

目的:輸入球化數據z,經過正交陣U處理,輸出Y=Uz
1)輸入球化數據z,經過正交陣某一行向量ui處理(投影),提取出某一獨立分量yi。

2)將此分量除去,按次序依次提取下去,得到所有的yi ,以及ui。

3)得到獨立的基向量U

U=WX

Fast ICA算法程序如下:

       function [Out1, Out2, Out3] =fastica(mixedsig, varargin)

%FASTICA(mixedsig) estimates theindependent components from given

% multidimensional signals. Each row ofmatrix mixedsig is one

% observed signal.

% = FASTICA (mixedsig); the rows oficasig contain the

% estimated independent components.

% = FASTICA (mixedsig); outputs the estimatedseparating

% matrix W and the corresponding mixingmatrix A.

mixedsig為輸入向量,icasig為求解的基向量。

A即為混合矩陣,可以驗證mixedsig=A×icasig。

W即為解混矩陣,可以驗證icasig=W×mixedsig。

ICA算法優點:

1)收斂速度快。

2)並行和分布計算,要求內存小,易於使用。

3)能通過使用一個非線性函數g便能直接找出任何非高斯分布的獨立分量。

4)能夠通過選擇一個適當的非線性函數g而使其達到最佳化。特別是能得到最小方差的算法。

5)僅需要估計幾個(不是全部)獨立分量,能極大地減小計算量。

ICA算法缺點:

1) 特徵矩陣W的特徵數量(即基向量數量)大於原始數據維度會產生優化方面的困難,並導致訓練時間過長;

2) ICA模型的目標函數是一個L1範數,在 0 點處不可微,影響了梯度方法的應用。

註:儘管可以通過其他非梯度下降方法避開缺點2),也可以通過使用近似值「平滑」 L1 範數的方法來解決,即使用 ( x2+ε )1/2 代替 |x|,對L1範數進行平滑,其中 ε 是「平滑參數」(smoothing parameter)。

ICA與PCA區別:

1) PCA是將原始數據降維並提取出不相關的屬性,而ICA是將原始數據降維並提取出相互獨立的屬性。

2) PCA目的是找到這樣一組分量表示,使得重構誤差最小,即最能代表原事物的特徵。ICA的目的是找到這樣一組分量表示,使得每個分量最大化獨立,能夠發現一些隱藏因素。由此可見,ICA的條件比PCA更強些。

3) ICA要求找到最大獨立的方向,各個成分是獨立的;PCA要求找到最大方差的方向,各個成分是正交的。

4) ICA認為觀測信號是若干個統計獨立的分量的線性組合,ICA要做的是一個解混過程。而PCA是一個信息提取的過程,將原始數據降維,現已成為ICA將數據標準化的預處理步驟。

ICA算法應用:

從應用角度看,ICA應用領域與應用前景都是非常廣闊的,目前主要應用於盲源分離、圖像處理、語言識別、通信、生物醫學信號處理、腦功能成像研究、故障診斷、特徵提取、金融時間序列分析和數據挖掘等。 

結語:

ICA是一種常用的數據分析方法,是盲信號分析領域的一個強有力方法,也是求非高斯分布數據隱含因子的方法。從樣本-特徵角度看,使用ICA的前提條件是,認為樣本數據由獨立非高斯分布的隱含因子產生,隱含因子個數等於特徵數,要求的是隱含因子。ICA算法已經被廣泛應用於盲源分離、圖像處理、語言識別、通信、生物醫學信號處理、腦功能成像研究、故障診斷、特徵提取、金融時間序列分析和數據挖掘等領域。

打開APP閱讀更多精彩內容

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容圖片侵權或者其他問題,請聯繫本站作侵刪。 侵權投訴

相關焦點

  • 人工智慧之ICA算法
    ICA算法概念:  ICA(IndependentComponent  ICA算法本質:  ICA是找出構成信號的相互獨立部分(不需要正交),對應高階統計量分析。ICA理論認為用來觀測的混合數據陣X是由獨立元S經過A線性加權獲得。
  • 教育的概念和本質
    教育的概念和本質在歷年的考試中以單選、多選和判斷為主,現在做個梳理,幫助大家備考。1.「教育」一詞的由來在我國,「教育」一詞最早見於《孟子·盡心上》 :「君子有三樂,而王天下不與存焉。父母俱存,兄弟無故,一樂也;仰不愧於天,俯不怍於人,二樂也;得天下英才而教育之,三樂也。」
  • 淺談TCP/IP傳輸層TCP BBR算法
    鑑於TCP擁塞控制算法背後有一套複雜的數學理論和控制策略,因此本文也只能是淺談,通過本文你將了解到以下內容(溫馨提示:文章較長需要一些耐心,也可以先收藏再閱讀): 回顧傳統擁塞控制算法 TCP BBR算法的概況 BBR算法的原理簡介0x01.
  • 反向傳播算法:定義,概念,可視化
    隨機梯度下降法  負責「學習」的算法。它使用了由反向傳播算法產生的梯度。  反向傳播算法  然後,反向傳播算法返回到網絡中,調整權重來計算梯度。一般來說,反向傳播算法不僅僅適用於多層感知器。它是一個通用的數值微分算法,可以用來找到任何函數的導數,只要給定函數是可微的。
  • 從零開始入門 K8s:調度器的調度流程和算法介紹
    導讀:Kubernetes 作為當下最流行的容器自動化運維平臺,以聲明式實現了靈活的容器編排,本文以 v1.16 版本為基礎詳細介紹了 K8s 的基本調度框架、流程,以及主要的過濾器、Score 算法實現等,並介紹了兩種方式用於實現自定義調度能力。
  • 超詳細丨推薦系統架構與算法流程詳解
    推薦算法的理解  如果說網際網路的目標就是連接一切,那麼推薦系統的作用就是建立更加有效率的連接,推薦系統可以更有效率的連接用戶與內容和服務,節約了大量的時間和成本。  如果把推薦系統簡單拆開來看,推薦系統主要是由數據、算法、架構三個方面組成。    數據提供了信息。
  • 遺傳算法的基本概念和實現(附 Java 實現案例)
    基因遺傳算法是一種靈感源於達爾文自然進化理論的啟發式搜索算法。該算法反映了自然選擇的過程,即最適者被選定繁殖,並產生下一代。本文簡要地介紹了遺傳算法的基本概念和實現,希望能為讀者展示啟發式搜索的魅力。   如上圖(左)所示,遺傳算法當個體由多條染色體組成,每條染色體由多個基因組成。上圖(右)展示了染色體分割和組合方式。
  • ACL2019|圖表示解決長文本關係匹配問題:騰訊提出概念交互圖算法
    傳統算法忽略了文本內部語義結構,而深度神經網絡目前主要用於句子對之間的匹配。同時由於長文本對計算量需求較大,且目前缺乏訓練數據集,因此長文本的匹配問題一直難以解決。對此,來自阿爾伯塔大學和騰訊 PCG 移動瀏覽器產品部的研究者提出了概念交互圖(Concept Interaction Graph)算法,對比現有的文章關係匹配算法有明顯的效果提升。
  • 淺談科學革命的本質與必然性
    科學革命對比政治革命,存在相似之處,但是需要明確的是革命所帶來影響和變化往往超過了政治制度的範圍。原句摘錄:當不同範式在範式選擇中彼此競爭、互相辯駁時,每一個範式都同時是論證的起點和終點。庫恩指出,每一個範式都有自身完備的邏輯系統,範式之間是沒有共同前提的,間接地證實了範式之間是無法並存的,一個新的理論和範式的出現,就必須放棄舊的理論和範式。既然在邏輯上已經證實兩者的對立,那麼反對者的觀點必然是與邏輯無關的。如一些人認為科學是累積發展的,這就是從非邏輯角度提出的質疑。
  • 教育的概念及本質
    【考點講解】從歷年教師招聘考試來看,教育的概念、本質是個常考點。考查題型主要以客觀題為主,一:一般考查形式: 以案例反選的形式來考查考生,給出一個案例讓考生對此做出選擇。二:也會以判斷題的形式來考查考生,文中會有一些混淆點。本文將幫助各位考生對此塊知識點進行理解和掌握,希望能對各位考生有所助益。
  • 大數據算法時代的自由和必然
    海德格爾通過人與動物行為的比較,表明人作為在時間中存在的有限存在者,必須承受生存論層面上的自由和必然。兩位哲學家分別在不同的語境中,揭示出了「算法」的局限性及其「泛人本主義」本質,人因為能夠建立客觀意義世界並超越它,而擁有不同於動物、人工智慧和神的自由和尊嚴。
  • 算法之「算法」:所有機器學習算法都可以表示為神經網絡
    與其說神經網絡是簡單的算法,不如說是框架和概念,這是顯而易見的,因為在構建神經網絡時有很大的自由度——比如對於隱藏層&節點個數、激活函數、優化器、損失函數、網絡類型(卷積神經網絡、循環神經網絡等)以及特殊層(批歸一化、隨機失活等)。如果把神經網絡看作是概念而非嚴格的算法,一個有趣的推論就應運而生了:任何機器學習算法,無論是決策樹還是k近鄰,都可以用神經網絡表示。
  • 莊鎮泉——中國科學技術大學——神經網絡,遺傳算法等計算智能方法...
    承擔863高技術計劃、國家自然科學基金和973國家重點基礎研究課題等國家級項目十餘項,大型橫向項目十多項。獲中國科學院科技進步三等獎,國家教委科技進步三等獎和安徽省教委科技進步二等獎等多項獎項。近年來出版多部著作,在國內外學術會議和學術刊物上發表論文60多篇。曾多次應邀赴日本東京大學、香港科技大學等校進行合作研究。
  • 淺談ACM算法學習與有效訓練
    我覺得一般情況下,對於我們普通學校的大學生,各方面能力的差距不會太大,在這種情況下,訓練和學習的方法尤為重要。「這種」也許有可能是指:沒什麼實用性,對吧,這樣我就不想評論了(又是有關科學和工程的討論)。但起碼有一點需要明確的:ACM-ICPC比賽時關於計算機科學的比賽,計算機科學是算法的科學,計算機算法中dijkstra有著重要的實際和啟發意義,所以比賽一定要考。  你參加這個比賽,要拿獎,就必須學習這種算法。
  • 中臺崛起的本質是「去ERP化」
    右邊是數據中臺,數據中臺從後臺獲取全域數據,並且通過結合人工智慧的算法技術挖掘產生業務洞察,並提供唯一的數據查詢和統計服務給到業務前臺和業務中臺,從而驅動業務朝智能化轉型,優化現有業務同時轉型和創新業務。整個這個過程,都是業務響應需求的發展,進行微服務改造的過程。
  • 資料|數據挖掘:概念、模型、方法和算法(第2版)/ 國外計算機科學...
    《數據挖掘:概念、模型、方法和算法(第2版)/國外計算機科學經典教材》介紹了通過分析高維數據空間中的海量原始數據來提取用於決策的新信息的尖端技術和方法。《數據挖掘:概念、模型、方法和算法(第2版)/國外計算機科學經典教材》開篇闡述數據挖掘原理,此後在示例的引導下詳細講解起源於統計學、機器學習、神經網絡、模糊邏輯和演化計算等學科的具有代表性的、前沿的挖掘方法和算法。書中還著重描述如何恰當地選擇方法和數據分析軟體併合理地調整參數。每章末尾附有複習題。
  • ICA發布旅客出行前,做核酸檢測的最新安排
    檢測截止時間凌晨0:00至上午9:29航班起飛前兩天上午10:00上午9:30至下午3:29航班起飛前兩天下午4:00下午3:30至晚上11:59航班起飛前一天上午10:00檢測機構清單、地址、營業時間及收費標準請查看以下連結:https://safetravel.ica.gov.sg
  • 三張圖讀懂機器學習:基本概念、五大流派與九種常見算法
    四大會計師事務所之一的普華永道(PwC)近日發布了多份解讀機器學習基礎的圖表,其中介紹了機器學習的基本概念、原理、歷史、未來趨勢和一些常見的算法。為便於讀者閱讀,機器之心對這些圖表進行了編譯和拆分,分三大部分對這些內容進行了呈現,其中也加入了一些擴展連結,希望能幫助你進一步擴展閱讀。
  • 道的大腦中心形式統攝概念必然存在著的本質
    道的大腦中心形式統攝概念必然存在著的本質是:大腦中心形式必然的存在,卻得到了證明。道的概念,必然存在著,道概念的本質概念,道概念的本質概念就是大腦中心形式統攝概念,他們不是絕對等同的,兩者不可以完全自由的相互替換。
  • 梯度下降算法詳解
    原創 | CDA數據分析研究院,轉載需授權介紹如果說在機器學習領域有哪個優化算法最廣為認知,用途最廣,非梯度下降算法莫屬。但是換一種思路,比如用梯度下降算法去優化線性回歸的損失函數,完全就可以不用考慮多重共線性帶來的問題。其實不僅是線性回歸,邏輯回歸同樣是可以用梯度下降進行優化,因為這兩個算法的損失函數都是嚴格意義上的凸函數,即存在全局唯一極小值,較小的學習率和足夠的迭代次數,一定可以達到最小值附近,滿足精度要求是完全沒有問題的。