麻安鵬, 王 君, 杜金星, 楊本娟
(貴州師范大學 數(shù)學科學學院, 貴陽 550025)
隨著信息時代的到來,接收到的信息數(shù)據(jù)更加復雜多變,這些數(shù)據(jù)大多都以張量的形式表示,特別以張量的高階形式表示,例如:三階張量有彩色圖片、灰度視頻等;四階張量有彩色視頻、帶時間序列的灰度視頻等。因此基于張量數(shù)據(jù)的機器學習方法成為研究學者們廣泛探討的問題,同時也涌現(xiàn)出了大量針對張量數(shù)據(jù)(三階及以上)學習的算法,支持張量機算法就是其中之一。支持張量機是主要針對張量數(shù)據(jù)學習的算法,是支持向量機從向量空間到張量空間理論和方法的推導?;谥С窒蛄繖C的學習框架,Tao等人結(jié)合交替投影的思想以及多線性代數(shù)的運算,提出了有監(jiān)督的張量學習框架,但這種推廣只是簡單地將向量形式的數(shù)據(jù)輸入變成張量形式的數(shù)據(jù)輸入而已,在本質(zhì)上并沒有解決實際問題;接著Tao等人又將雙向最優(yōu)投影算法與有監(jiān)督的張量學習框架結(jié)合,提出了支持張量機(STM)算法。
支持張量機模型的求解與支持向量機模型求解相似,都需要構(gòu)造一個最優(yōu)分類超平面,不同的是在對支持張量機求取分類超平面時需反復迭代求解超平面所需的參數(shù),在此過程中計算量大、時間需求長、內(nèi)存要求高。但如果直接將張量數(shù)據(jù)拉成向量形式的數(shù)據(jù)輸入到支持向量機中對數(shù)據(jù)進行處理的話,可能出現(xiàn)以下問題:
(1)無法獲得原始數(shù)據(jù)中潛在的、更有意義的信息。因為將張量數(shù)據(jù)拉成向量數(shù)據(jù)的形式對數(shù)據(jù)進行處理,可能會使數(shù)據(jù)與數(shù)據(jù)之間的聯(lián)系遭到破壞,使數(shù)據(jù)中重要的信息丟失和數(shù)據(jù)中存在的冗余信息被掩蓋;
(2)容易產(chǎn)生高維向量,限制后期學習。從而導致數(shù)據(jù)分類正確率低等情況,而采用支持張量機算法對張量數(shù)據(jù)進行處理,就能很好的解決上述存在的問題,故而一些關(guān)于支持張量機算法改進方法被提出。
支持張量機是在支持向量機的基礎(chǔ)上推廣而來的,最初只是在支持向量機上簡單的將輸入?yún)?shù)從向量形式輸入變成張量形式輸入,也就是將x→X,w→W輸入,再把向量的乘積變?yōu)閺埩康膬?nèi)積即可。仔細觀察發(fā)現(xiàn)該模型與支持向量機并沒有什么本質(zhì)上的區(qū)別,因為張量的內(nèi)積與將張量展開成向量求取向量的乘積結(jié)果相同,這意味著其結(jié)果與直接將數(shù)據(jù)展開成向量并采用支持向量機的結(jié)果是一樣的,這種只改變輸入方式,而不對模型進行優(yōu)化的方法,本質(zhì)上只是經(jīng)典支持向量機的一個線性映射。如果只將這些輸入?yún)?shù)變成張量的形式輸入,這種推廣無法體現(xiàn)支持張量機想要盡可能多的保留張量數(shù)據(jù)內(nèi)部機構(gòu)信息的核心目的。為了更多的保留張量內(nèi)部結(jié)構(gòu)信息,Cai等人提出了支持矩陣機模型;受支持矩陣機模型的啟發(fā),Tao等人將支持張量機的張量權(quán)重限制在CP秩意義下的秩一張量中[1],故而得到了經(jīng)典支持張量機模型,在此模型中,張量的權(quán)重參數(shù)W的形式(1):
(1)
再采用交替投影法求取W,得到的分類決策函數(shù)為式(2):
(2)
經(jīng)典支持張量機模型式(3):
(3)
求解該模型一般轉(zhuǎn)化為其對偶問題的求解,對偶問題為式(4):
(4)
再通過SMO算法計算出W,最后再求出決策函數(shù)式(5):
(5)
優(yōu)化經(jīng)典支持張量機模型主要從減少儲存空間、縮短分類時間、提高模型精度和擴展模型性能等對模型進行優(yōu)化,也就是從輸入數(shù)據(jù)、模型內(nèi)部運算和其他方面擴展對模型進行改進。
對數(shù)據(jù)預處理,從而減少存儲空間、縮短分類時間。數(shù)據(jù)預處理主要是對數(shù)據(jù)進行降維處理,收集到的數(shù)據(jù)大多包含許多冗余信息,但這些冗余信息在數(shù)據(jù)分類和特征提取中,并不是所有特征都是有用的。因此想要在運算過程中縮短訓練時間,可在對數(shù)據(jù)分類之前對數(shù)據(jù)降維處理。對張量數(shù)據(jù)降維處理的方法有:主成分分析算法(PCA)、遞歸特征消除法(RFE)、多線性主成分分析算法(MPCA)、無關(guān)多線性主成分分析算法(UMPCA)、流行學習等。采用PCA對張量數(shù)據(jù)降維,首先要將張量數(shù)據(jù)拉成向量的形式,故而PCA主要針對向量數(shù)據(jù)降維;而采用MPCA算法可直接對張量數(shù)據(jù)降維,不僅能夠保留張量數(shù)據(jù)固有的高階結(jié)構(gòu)和內(nèi)在相關(guān)性,還能為后續(xù)訓練降低計算成本,故而MPCA主要針對張量(三階及以上張量)數(shù)據(jù)降維;RFE主要針對數(shù)據(jù)中冗余信息繁瑣,不相關(guān)的數(shù)據(jù)進行分類的特征選擇方法;UMPCA主要提取無關(guān)特征,以確保保存數(shù)據(jù)中更重要的信息;流行學習主要是為了保存數(shù)據(jù)內(nèi)部結(jié)構(gòu)被提出的。
改變張量內(nèi)積求解方式,從張量模型內(nèi)部提高模型精度?;谥С窒蛄繖C和支持張量機的理論與發(fā)展過程,通過研究與分析,可知支持張量機主要在張量的分解上進行了一系列的改進,期望在分類結(jié)果中體現(xiàn)不同張量內(nèi)部的結(jié)構(gòu)信息,常常使用CP分解、Tucker分解的方式來求取張量內(nèi)積,從而改進支持張量機中求核矩陣的方法。
令張量Xi∈RI1×I2×…×IN和張量Xj∈RI1×I2×…×IN:
(1)CP分解求取張量內(nèi)積公式(6)為:
(6)
(2)Tucker分解求取張量內(nèi)積公式(7)為:
(7)
對于擴展模型的應(yīng)用方面,將在線學習與支持張量機結(jié)合在一起,提出在線支持張量機算法;將半監(jiān)督學習運用到支持張量機上,提出半監(jiān)督支持張量機算法。
(1)在線學習與支持張量機。由于數(shù)據(jù)的未知性,無法預測數(shù)據(jù)到達的時間以及順序,也不可能將所有數(shù)據(jù)都打包存儲起來批量學習。因為這樣的批量學習,不僅浪費時間和儲存空間,還不能保證數(shù)據(jù)的時效性,故而將在線學習與支持張量機結(jié)合,提出了在線支持張量機、快速支持張量機、在線最小二乘支持張量機等算法。這些算法都是支持張量機關(guān)于在線學習方面的拓展應(yīng)用,可以有效減少模型訓練的時間和儲存空間,同時能夠更好的保障數(shù)據(jù)的及時性。
(2)半監(jiān)督學習與支持張量機。針對支持張量機訓練時間較長問題,將半監(jiān)督學習運用到支持張量機上,以減少支持張量機訓練時間。支持張量機主要依賴于有標記的訓練樣本,對于未標記的樣本往往“束手無策”,但在大多數(shù)情況下,不可能去對所有數(shù)據(jù)進行逐個標記?;谶@種考慮,結(jié)合半監(jiān)督學習的優(yōu)點,將半監(jiān)督學習運用到支持張量機上,提出了最小二乘半監(jiān)督支持張量機學習算法、基于Tucker分解的半監(jiān)督支持張量機、半監(jiān)督張量學習的圖像分類等模型,這種結(jié)合不僅能充分利用未標記數(shù)據(jù),減少時間投入,還能非常有效的提升支持張量機算法的識別率。
在人工智能領(lǐng)域,如人臉識別、圖像分類、遙感圖像分類等圖像處理中支持張量機算法應(yīng)用十分廣泛。
(1)人臉識別。首先提取需要識別的人臉圖像的特征信息,也就是對人臉進行一個特征建模,再將提取的特征信息與數(shù)據(jù)庫中已知人臉圖像進行比較,相當于解答模型是否正確的過程,最后得到相關(guān)結(jié)論。決定人臉識別效果的關(guān)鍵,通常與選擇特征提取方法和分類器密切相關(guān),常見的特征提取和降維算法有主成分分析(PCA)、多線性主成分分析(MPCA)、遞歸特征消除法(RFE)等;常用的分類器有最近鄰分類器(KNN)、支持向量機算法(SVM)、支持張量機算法(STM)等。首先采用MPCA對人臉數(shù)據(jù)降維處理,再用支持高階張量機對數(shù)據(jù)分類識別[2]。與PCA算法相比,MPCA算法對張量數(shù)據(jù)降維可有效地降低后續(xù)訓練時間,同時更好的保留張量數(shù)據(jù)內(nèi)在的空間結(jié)構(gòu)信息,從而提升識別性能。
(2)圖像分類。圖像分類是指對給定的圖像,判斷其所屬的類別。但在實際應(yīng)用中,圖像往往包含多個物體,需要評估圖像分類的可行性。把基于向量空間中的模糊支持向量機推廣到張量空間中,提出了模糊支持張量機[3]。首先利用手寫體數(shù)字數(shù)據(jù)庫對模糊支持張量機模型的分類性進行實驗分析,同時驗算算法性能,最后將模糊支持張量機算法應(yīng)用到羽絨菱節(jié)圖像中,通過對比表明該算法能有效提高圖像分類識別率。
(3)遙感圖像分類?;谥С謴埩繖C算法提出了支持規(guī)范張量訓練機,此算法主要用于二進制分類,可有效的避免支持張量機將張量數(shù)據(jù)投影到向量的結(jié)構(gòu)信息損失[4]。特別是在小樣本的訓練集下,能得到高效的識別分類結(jié)果。
文本分類主要是根據(jù)待分類數(shù)據(jù)的關(guān)鍵特征匹配,因此必須根據(jù)某種評價標準選擇最優(yōu)的匹配結(jié)果,從而完成分類,評價標準的選擇直接影響分類器的分類性能。基于支持張量機的學習框架,采用交替投影的算法推出了支持張量機算法,再將支持張量機算法應(yīng)用于文本分類[5]。結(jié)果表明,對于小樣本數(shù)據(jù)該算法能有效降低數(shù)據(jù)特征維數(shù),且在處理小樣本數(shù)據(jù)與數(shù)據(jù)偏斜問題上有明顯優(yōu)勢。
支持張量機應(yīng)用于醫(yī)學診斷,如:對阿爾茲海默癥、腫瘤、癲癇疾病等的診斷。將支持張量機算法應(yīng)用于阿爾茲海默癥的腦白質(zhì)圖像分類,并結(jié)合遞歸特征消除法對腦白質(zhì)圖像進行特征選擇,取得了很好的分類效果[6]。結(jié)果表明,該算法能有效診斷阿爾茲海默癥。
支持張量機是支持向量機理論和方法到張量空間的推導,本文從減少儲存空間縮短分類時間、提高模型精度和擴展模型性能等方面對模型進行優(yōu)化,同時列舉了支持張量機算法在現(xiàn)實生活中的一些應(yīng)用。對于支持張量機的優(yōu)化問題,可從以下二方面做進一步的探討:
(1)支持張量機與在線學習結(jié)合主要針對的是低階張量數(shù)據(jù),可擴展到高階的張量數(shù)據(jù)上。
(2)目前對支持張量機的研究大多是線性的,而基于非線性方向的研究還比較少,可向非線性方向擴展。