<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 智能計算 > 設計應用 > 人工智能之ICA算法

          人工智能之ICA算法

          作者: 時間:2018-06-19 來源:網絡 收藏

            機器學習有關算法內容,請參見公眾號“科技優(yōu)化生活”之前相關文章。之機器學習主要有三大類:1)分類;2)回歸;3)聚類。今天我們重點探討一下算法。 ^_^

          本文引用地址:http://www.ex-cimer.com/article/201806/381805.htm

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

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

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



            ICA算法概念:

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



            ICA與PCA相關,但它在發(fā)現(xiàn)潛在因素方面效果良好。它可以應用在數(shù)字圖像、檔文數(shù)據(jù)庫、經濟指標、心里測量等。

            ICA算法本質:

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

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

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

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



            ICA理論基礎:

            ICA理論基礎如下:

            1)標準正交基

            2)白化

            3)梯度下降

            ICA目標函數(shù):

            ICA的目標函數(shù)如下:



            樣本數(shù)據(jù) x 經過參數(shù)矩陣 W 線性變換后的結果的L1范數(shù),實際上也就是描述樣本數(shù)據(jù)的特征。

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



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

            ICA優(yōu)化參數(shù):

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



            ICA算法流程:

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

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

            主要算法流程如下:

            1、預處理部分:1)對X零均值處理

            2)球化分解(白化)

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

            2、核心算法部分: 尋求解混矩陣U,使Y=UZ,Y各道數(shù)據(jù)盡可能獨立(獨立判據(jù)函數(shù)G)。

            1)、由于Y獨立,各行必正交。且通常取U保持Y各行方差為1,故U是正交變換。

            2)、所有算法預處理部分相同,以后都設輸入的為球化數(shù)據(jù)z,尋找正交矩陣U,使Y=Uz獨立。

            由于獨立判據(jù)函數(shù)G的不同,以及步驟不同,有不同的獨立分量分析法。

            3、Fast ICA算法思路:

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

            目的:輸入球化數(shù)據(jù)z,經過正交陣U處理,輸出Y=Uz

            1)輸入球化數(shù)據(jù)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算法優(yōu)點:

            1)收斂速度快。

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

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

            4)能夠通過選擇一個適當?shù)姆蔷€性函數(shù)g而使其達到最佳化。特別是能得到最小方差的算法。

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

            ICA算法缺點:

            1) 特征矩陣W的特征數(shù)量(即基向量數(shù)量)大于原始數(shù)據(jù)維度會產生優(yōu)化方面的困難,并導致訓練時間過長;

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

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

            ICA與PCA區(qū)別:

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

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

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

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



            ICA算法應用:

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

            結語:

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



          關鍵詞: 人工智能 ICA

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();