專利名稱:一種基于力矩分析訓練線性分類器的方法
技術領域:
本發(fā)明屬于模式識別領域,涉及線性分類器學習的分類方法。
技術背景近十年來,在人工智能、機器人技術和人機交互等領域推動下,機 器學習方法受到了許多研究機構的關注。機器學習方法就是要在給出的 訓練樣本集合上通過學習得到樣本的分布規(guī)律,這種學習得到的規(guī)律可以用來對未知樣本進行分類或者用來提取樣本的特征。由于機器學習算 法不依賴于相關應用領域先驗知識,已經(jīng)成為模式分類的主要研究方向。機器學習方法可劃分為無監(jiān)督學習方法和有監(jiān)督學習方法。其中, 前者指的是在不給出訓練樣本所屬類別情況下的學習算法,后者指的是 給出訓練樣本所屬類別情況下的學習算法。比較典型的無監(jiān)督學習方法 有主成分分析方法、自組織映射和聚類算法等。這些方法自適應性較強, 但是由于沒有利用樣本的類別信息,所以往往需要大量的樣本才能得到 一個較好的訓練結果,在現(xiàn)實中的應用并不是很多。另一方面,有監(jiān)督 學習方法就充分利用了樣本的類別信息,其所需的訓練樣本較少,收斂 速度也較快。兩類分類問題是模式識別領域的一個基本課題,它的任務就是判斷 出一個未知樣本是否是要檢測的目標,其典型的應用就是異常檢測、人 臉檢測和車輛檢測等。兩類分類方法可分為線性和非線性兩大類別。前者比較典型的方法包括人工神經(jīng)網(wǎng)絡算法、Boosting方法以及非線性支持向量機等,它們 的特點是泛化性能優(yōu)良、分類效果準確,但是這些方法計算量大,訓練 的收斂速度也相對較慢。另一方面,線性分類器是最簡單、最快速的兩 類分類器,它的運算速度快,特別適用于實時處理的場合。支持向量機和線性判別分析最大拒絕分類器是幾種比較典型的線 性分類器。它們在設計的時候都有一個明確的優(yōu)化目標。其中,支持向 量機訓練的線性分類器最大化了兩個類間的邊界,線判別分析在最大化 類間協(xié)方差矩陣的同時最小化類內(nèi)協(xié)方差矩陣。但是,這兩個算法都存 在兩個前提,即假設兩個類是線性可分得并且兩個類的發(fā)生概率相同。 最大拒絕分類器則不存在這些前提,它能處理線性不可分的情況,并且 優(yōu)化目標里面考慮了兩個類的發(fā)生概率。盡管如此,由于最大拒絕分類 器的優(yōu)化目標只考慮了二階矩,所以在實際應用中算法還是存在誤警 率,性能不盡人意。目前存在的基于學習的兩類分類方法,在時間和空間效率,以及優(yōu) 化目標方面都有改善余地,因此研究開發(fā)新的基于統(tǒng)計學習的線性分類 方法在應用和學術上都有重要的意義。發(fā)明內(nèi)容本發(fā)明的目的在正樣本是凸分布的數(shù)據(jù)空間中,在保證漏警率為 零的條件下,有效減少誤警率;其次無需假設兩個前提,即兩個類是線性可分的,以及它們發(fā)生概率是相同的。為此提出一種基于力矩分析策 略訓練線性分類器的方法。為了實現(xiàn)所述的目的,本發(fā)明提供的利用監(jiān)督學習的算法實現(xiàn)訓練 線性分類器的方法,包括初始化算法、迭代算法和結束迭代算法三個部 分。步驟a:用初始化方法來生成數(shù)據(jù)空間中的一個初始超平面。這個超平面將被不斷迭代優(yōu)化。步驟b:基于力矩分析,對初始化的線性分類器進行迭代訓練;迭 代算法對初始化超平面進行迭代優(yōu)化。每次迭代的有兩個目的,首先是 平移超平面的空間位置,其次是調(diào)整超平面的法線方向。迭代訓練算法 會計算當前迭代過程中超平面的支撐點,并以此調(diào)整超平面空間位置。 同時迭代訓練算法會計算每次迭代中超平面的力矩之和,并以此調(diào)整超 平面法線方向。步驟C:最后迭代終止方法定義了迭代算法的結束條件,用來適時地終止訓練,并以此時的超平面定義一個線性分類器。優(yōu)選地,所述步驟a中初始化方法生成的超平面為(x-;c。X/ = 0 其中X為該超平面的變量;;c。為數(shù)據(jù)空間中任意一點,"為該超平面的發(fā)向量,這兩個參數(shù)通過隨機生成。優(yōu)選地,所述的步驟b中的迭代訓練包括超平面空間位置的平移方法和超平面法線方向的調(diào)整方法。優(yōu)選地,所述步驟C中的迭代終止條件,用來適時地終止訓練,并以此時的超平面定義一個局部最優(yōu)的線性分類器。優(yōu)選地,所述的步驟b中的迭代訓練的具體步驟如下步驟bl:設正樣本訓練集合是凸分布為義={義丄,,』,負樣本訓練集合為y 4,L,2,…w;步驟b2:在每次迭代訓練中,計算超平面受力的支撐點,以此支 撐點調(diào)整超平面空間位置;步驟b3:在每次迭代中,計算超平面的力矩之和,并以此調(diào)整超平面法線的方向。優(yōu)選地,所述步驟b2中計算超平面受力支撐點的步驟如下 步驟b21:計算所有正樣本與超平面的發(fā)向量t/的點積值,在這些點積之中選出最小的M'個,其中A/、M,生成W個點積所對應正樣本的支撐點樣本為<formula>formula see original document page 6</formula>步驟b22:計算出支撐點樣本集合的均值C-)Zx嚴,; 步驟b23:計算并生成出超平面的支撐點O:o = c —(c.u-《;;)/, 步驟b24:將超平面平移到支撐點o上。優(yōu)選地,所述步驟b3中調(diào)整超平面法線方向的步驟如下 步驟b31:計算每一個負樣本^H乍用在超平面上的力F(力為"小T^rexp步驟b32:計算每一個負樣本^r作用在超平面上的力臂/為步驟b33:計算出超平面法向量的修正量At;:步驟b34:更新超平面法向量"為^/ + ^。優(yōu)選地,所述的超平面力矩和i:M為:在迭代過程中,當ZA/降低到零的時候,終止迭代訓練,并依據(jù)此 時的超平面定義優(yōu)化過的線性分類器為其中x為變量,O,為最終的超平面的支撐點,^為最終的超平面的 發(fā)向量。本發(fā)明的有益效果本發(fā)明設計了一種有監(jiān)督的學習算法來訓練線 性分類器,該算法將物理學上力矩的概念引入到機器學習領域,直接以 正確拒絕率為優(yōu)化目標,利用力矩分析的方法來調(diào)整、學習線性分類器 的參數(shù),因而本發(fā)明的方法具有更為直接的優(yōu)化目標和明確的物理意 義。本發(fā)明在設計中,首先簡化了原始問題的模型。兩類分類問題的任 務就是將正負樣本集區(qū)分開來。這里只考慮在數(shù)據(jù)空間中正樣本集合是 凸分布的情況。這樣就可以一系列超平面來將這個凸分布與外界分隔開 來。本發(fā)明方法制定了確定上述超平面組的策略。采取分步分割得的策 略,最終得到了一組滿足要求的超平面。本發(fā)明方法給出了確定單個超平面的方法,以錯誤檢測率直接作為 優(yōu)化的目標,將線性分類器看作一個可以在目標集外包羅滾動的活動超 平面,不斷調(diào)整這個超平面的位置和方向,使線性分類器的錯誤檢測率 不斷下降。在調(diào)整超平面的時候算法引入物理學上力矩分析的方法,從 而使得方法具有明確的物理意義。兩類分類問題是模式識別領域的一個基本問題,而線性分類器是一 種最簡單、速度最快的兩類分類器。線性分類器的學習方法涉及到統(tǒng)計 學習、智能計算以及數(shù)據(jù)挖掘等重要學科。其應用十分廣泛,例如異常 檢測、車輛檢測和人臉檢測等?;跇颖緦W習的分類方法是目前研究的主要方向,因為分類方法不依賴于相關應用領域先驗知識,十分有利于 算法推廣和應用。
圖1是本發(fā)明訓練優(yōu)化線性分類器方法的流程2是本發(fā)明確定超平面支撐點的示意3是本發(fā)明計算作用力示意4是本發(fā)明修正超平面法向量的示意5是本發(fā)明優(yōu)化超平面位置的示意6_9是本發(fā)明訓練一個優(yōu)化線性分類器的優(yōu)化過程示意10-11訓練一組優(yōu)化的線性分類器示意圖具體實施方式
下面將結合附圖對本發(fā)明加以詳細說明,應指出的是,所描述的實 施例僅旨在便于對本發(fā)明的理解,而對其不起任何限定作用。通過對以上附圖的說明,來更詳細描述本發(fā)明中所介紹的方法的具 體實施例。本發(fā)明通過多次迭代的方式訓練一個優(yōu)化線性分類器,如圖1所 示,本發(fā)明的訓練方法包括三個組成部分初始化算法、迭代算法和終 止迭代算法。按圖1所展示的算法流程,下面詳細描述每一個步驟。這里,我們假設正樣本訓練集合為義Md』,負樣本訓練集合為 其中A/和W分別是正負樣本的個數(shù)。應為本發(fā)明是一種通用的學習方法,所以這里提到的訓練樣本并不特指某種數(shù)據(jù),可以是任 何數(shù)字化數(shù)據(jù),例如人臉圖片、雷達信號等等。步驟l.如圖2中的線P。所示,在數(shù)據(jù)空間中隨機生成一個初始化 超平面其中x為該超平面的變量;x。為數(shù)據(jù)空間中任意一點,fy為該超平 面的發(fā)向量,這兩個參數(shù)由隨機函數(shù)生成;步驟2.計算所有正樣本與超平面的發(fā)向量t/的點積值,在這些點 積之中選出最小的A/' (M'<M)個,并定義它們所對應的正樣本為支撐 點樣本,記為W睛-k如"Lu,,如圖2中的空正方形所示;圖2 中的正樣本積分直方圖展示了確定支撐點樣本集合的過程,其中r代表 支撐點樣本占所有正樣本的比例,其最大值為1.0;步驟3.計算出支撐點樣本集合的均值C,如圖2中的實心正方形 所示,計算公式為C = il^Z"'師';步驟4.定義并計算出超平面的支撐點o,如圖2中的實心圓點所示,計算公式為o^-(c.u—其中《;;^,"廣W;步驟5.將超平面平移到支撐點o上,如圖2中的線尸。'所示。圖2 展示了確定超平面支撐點o的過程。步驟6.如圖3中的y'所示,對每一個負樣本^y,計算它作用在 超平面上的力臂/=(,外((,0).一,它既是y相對于超平面法線的垂直 分量,其中u為法向量。步驟7.如圖3中的力^所示,對每一個負樣本m計算它作用在超平面上的力 其中少、0;—o)y為y相對于超平面法線的平行分量,圖3展示了本發(fā)明計算作用力的示意圖。步驟8.如圖4本中的A"所示,根據(jù)每個負樣本的力及其力矩,計算出超平面法向量的修正量W"l(/^Hx'("0))—《H乂》,; 步驟9.如圖4中的"'所示,i'新超平面法向量為"'^^t/;圖4展示了本發(fā)明修正超平面法向量的示意圖 步驟IO.計算力矩和2> = -ijl一,^;步驟ll. ZM不為零的時候r返回步驟2,繼續(xù)訓練;否則,終止 迭代訓練,如圖5中的P,所示,依據(jù)此超平面定義優(yōu)化過的線性分類器 為其中x為超平面的變量,o,為最終的超平面的支撐點,^為最終的超平面的發(fā)向量。如圖6-9展示了本發(fā)明方法的調(diào)整超平面的示意圖。為了更直觀, 圖中的數(shù)據(jù)空間用二維空間來表示,超平面用線來表示??梢钥吹?,作 用在超平面上的力推動超平面沿著正樣本外包羅不斷滾動。圖6是經(jīng)過1次迭代后的超平面位置;圖7是經(jīng)過4次迭代后的超平面位置;圖8是經(jīng)過8次迭代后的超平面位置。在圖9中,經(jīng)過27次訓練后,最終達到力的平衡,此時力矩和為 零,訓練結束。最終平衡的超平面將更多的負樣本與正樣本隔離開來, 它被定義為一個線性分類器。對于正樣本成凸分布的情況,本發(fā)明的方法可以找到一組超平面準 確地將所有負樣本與正樣本隔離開來。如圖IO訓練一組優(yōu)化的線性分 類器示意圖所示,在訓練得到第一個分割面以后,將正確分類的負樣本 去掉。然后在剩余訓練集上訓練第二個分割面。割去第二個分割面正確 分類的負樣本后,在剩余練集上訓練第三個分割面。如此循環(huán),直到所 有負樣本都被割去為止。如圖11訓練一組優(yōu)化的線性分類器示意圖所 示,最終訓練得到8個分割面,它們將所有的負樣本與正樣本區(qū)分開來。以上所述,僅為本發(fā)明中的具體實施方式
,但本發(fā)明的保護范圍并 不局限于此,任何熟悉該技術的人在本發(fā)明所揭露的技術范圍內(nèi),可理 解想到的變換或替換,都應涵蓋在本發(fā)明的包含范圍之內(nèi),因此,本發(fā) 明的保護范圍應該以權利要求書的保護范圍為準。
權利要求
1. 一種基于力矩分析訓練線性分類器的方法,其特征在于,步驟a使用初始化,生成數(shù)據(jù)空間中的一個初始超平面;步驟b基于力矩分析,對初始化的線性分類器進行迭代訓練;步驟c迭代終止條件適時終止訓練,得到一個局部最優(yōu)化的線性分類器。
2、 如權利要求1所述的方法,其特征在于,所述步驟a中初始化 生成的超平面為(u0X/ = o其中^為該超平面的變量;x。為數(shù)據(jù)空間中任意一點,"為該超平 面的發(fā)向量,這兩個參數(shù)通過隨機生成。
3、 根據(jù)權利要求1所述的方法,其特征在于,所述的步驟b中的 迭代訓練包括超平面空間位置的平移和超平面法線方向的調(diào)整。
4、 根據(jù)權利要求1所述的方法,其特征在于,所述步驟c中的迭 代終止條件,用來適時地終止訓練,并以此時的超平面定義一個局部最 優(yōu)的線性分類器。
5、 根據(jù)權利要求1所述的方法,其特征在于,所述的步驟b中的 迭代訓練的具體步驟如下步驟bl:設正樣本訓練集合是凸分布為h化U』,負樣本訓練集 步驟b2:在每次迭代訓練中,計算超平面受力的支撐點,以此支撐點調(diào)整超平面空間位置;步驟b3:在每次迭代中,計算超平面的力矩之和,并以此調(diào)整超平面法線的方向。
6、 根據(jù)權利要求5所述的方法,其特征在于,所述步驟b2中計算超平面受力支撐點的步驟如下步驟b21:計算所有正樣本與超平面的發(fā)向量f/的點積值,在這些 點積之中選出最小的M'個,其中M、M,生成M'個點積所對應正樣本的支撐點樣本為義<formula>formula see original document page 2</formula>步驟b22計算出支撐點樣本集合的均值<formula>formula see original document page 3</formula>步驟b23:計算并生成出超平面的支撐點O:<formula>formula see original document page 3</formula>步驟b24:將超平面平移到支撐點O上。
7、根據(jù)權利要求5所述的方法,其特征在于,所述步驟b3中調(diào)整 超平面法線方向的步驟如下步驟b31:計算每一個負樣本"H乍用在超平面上的力F(力為<formula>formula see original document page 3</formula>步驟b32:計算每一個負樣本y作用在超平面上的力臂y'為<formula>formula see original document page 3</formula>步驟b33:計算出超平面法向量的修正量deltau:<formula>formula see original document page 3</formula>步驟b34:更新超平面法向量<formula>formula see original document page 3</formula>。
8、根據(jù)權利要求4所述的方法,其特征在于,所述的超平面力矩在迭代過程中,當ZA/降低到零的時候,終止迭代訓練,并依據(jù)此時的超平面定義優(yōu)化過的線性分類器為<formula>formula see original document page 3</formula>其中x為變量,O,為最終的超平面的支撐點,為最終的超平面的 發(fā)向量。
全文摘要
本發(fā)明公開一種基于力矩分析訓練線性分類器的方法,使用初始化方法,生成數(shù)據(jù)空間中的一個超平面;基于力矩分析的方法,對初始化的線性分類器進行迭代訓練;迭代終止條件適時終止訓練,得到一個局部最優(yōu)化的線性分類器。采用力矩分析的辦法來構造線性分類器,能夠廣泛應用于模式識別領域。該方法將物理上力與力矩的感念引入到機器學習中來,進而訓練得到一個局部最優(yōu)化的線性分類器。本發(fā)明訓練方法學習出來的分類器可使正確拒絕率達到局部最小??捎糜谌四槞z測、車輛檢測等計算機視覺中等的重要的應用領域,具有明顯的理論和實用價值。
文檔編號G06F15/18GK101226520SQ200710062829
公開日2008年7月23日 申請日期2007年1月18日 優(yōu)先權日2007年1月18日
發(fā)明者何曉光, 鑫 楊, 捷 田 申請人:中國科學院自動化研究所