淺談機器的學習方法

才智咖 人氣:5.68K

篇一:機器學習的方法

【摘 要】本文以什麼是機器學習、機器學習的發展歷史和機器學習的主要策略這一線索,對機器學習進行系統性的描述。接著,著重介紹了流形學習、李群機器學習和核機器學習三種新型的機器學習方法,為更好的研究機器學習提供了新的思路。

淺談機器的學習方法

【關鍵詞】機器學習;人工智慧;李群機器學習;核機器學習;流形學習

計算機視覺是指用計算機實現人的視覺功能,希望能根據感知到的影象( 視訊) 對實際的目標和場景內容做出有意義的判斷如何能正確識別目標和行為非常關鍵,其中一個最基本的和最核心的問題是對影象的有效表達 如果所選的表達特徵能夠有效地反映目標和行為的本質,那麼對於理解影象就會取得事半功倍的效果 正因為如此,關於機器學習的發展歷史 特徵的構建和選取一直得到廣泛關注 近些年來人們已構建出許多特徵,並且得到了廣泛的應用,例如等等 設計特徵是一種利用人類的智慧和先驗知識,並且將這些知識應用到目標和行為識別技術中的很好的方式 但是,如果能通過無監督的方式讓機器自動地從樣本中學習到表徵這些樣本的更加本質的特徵則會使得人們更好地用計算機來實現人的視覺功能,因此也是近些年人們關注的一個熱點方向 深度學習( deeplearning) 的目的就是通過逐層的構建一個多層的網路來使得機器能自動地學習到反映隱含在資料內部的關係,從而使得學習到的特徵更具有推廣性和表達力本文旨在向讀者介紹深度學習的原理及它在目標和行為識別中的最新動態,希望吸引更多的研究者進行討論,並在這一新興的具有潛力的視覺領域做出更好的成果 首先對深度學習的動機歷史以及應用進行了概括說明; 主要介紹了基於限制玻爾 茲曼機的深度學習架構和基於自編碼器的深度學習架構,以及深度學習

近些年的進展,主要討論了去噪自編碼器( denoisingautoencoder),卷積限制玻爾茲曼機,三元因子玻爾茲曼機( 3-way factorizedBoltzmannmachine),以及神經自迴歸分佈估計器( NADE) 等一些新的深度學習單元; 對目前深度學習在計算機視覺中的一些應用以及取得的成果進 行介紹; 最後,對深度學習與神經網路的關係,深度學習的本質等問題加以討論,提出目前深度學習理論方面需要解決的主要問題

1機器學習的發展歷程

機器學習的發展大致可以分為四個階段.

第一階段:20世紀50年代中葉至60年代中葉這個時期是機器學習研究的熱烈時代 研究物件是沒有知識的學習,目標是各自組織和適應系統此階段有兩個代表,一是1957年Rosenblatt提出了感知機演算法,這是第一個具有重要學術意義的機器學習的演算法 二是50年代末,Samuel編寫了跳棋程式,利用啟發式搜尋技術,可以從經驗和棋譜中進行學習,不斷調整棋盤評價函式,提高棋藝.

第二階段:20世紀60年代中葉至70年代中葉,機器學習的冷靜時期本階段是模擬人類的學習過程,採用邏輯結構或圖結構作為內部描述 代表有:1969年Minsky與Papert出版的對機器學習研究有深遠影響的著作<感知機>一書.

第三階段:20世紀70年代中葉至80年代中葉,稱為復興時期在這個時期,人們從學習單一概念延伸至學習的多個概念,探索不同的學習策略和各種學習方法在此階段中,研究

者已經將機器學習系統與現實應用相結合,完成相應的學習過程,取得了很大的成功1980年,在美國召開的第一屆機器學習國際研討會,標誌著機器學習在全世界範圍內的全面興起.

第四階段:1986年至今 由於作為機器學習科學基礎之一的神經科學研究的重新興起,機器學習也進一步受到了人們的重視另一方面,對實驗研究和應用研究得到前所未有的重視.

2.1 機械學習

機械學習是一種最基本的學習策略,把環境提供的資訊簡單儲存起來,不經過任何推理,“死記硬背”式的學習。適合於一些環境相對穩定,輸入輸出模式相對固定的系統中,例如醫生給病人看病。

2.2 傳授學習

傳授學習又叫做指導式學習或示教學習。傳授學習的學習過程可以簡單地描述如下:(1)請求:先向指導者請求提出建議;(2)解釋:接受建議並將其轉化為內部表示形式;(3)操作化:將解釋後的建議轉化為具體的知識;(4)歸併:將得到的新知識歸併到知識庫中;(5)評價:對新知識進行評價,常用方法有,檢查新知識與知識庫裡的知識是否矛盾,或者使 用新知識執行某些任務,觀察其執行情況。

2.3 演繹學習

演繹學習以演繹推理為基礎。演繹推理是一種有一般到個別的推理方法,其核心是三段論。例如,1動物都會死亡;2狗是一種動物;3狗會死亡。只要對給定的知識進行演繹的保真推理,就能得出一個正確的新結論,然後把有價值的結論儲存起來。

2.4 歸納學習

歸納學習以歸納推理為基礎。從某個概念的一系列正例和反例中歸納出一個一般的概念描述。歸納學習可分為有導師學習和無導師學習。有導師學習,又稱示例學習。給學習系統提供正例和反例,學習系統通過歸納演算法求解出一個總的概念描述。無導師學習,又稱觀察與發現學習。通過由環境提供的觀察來進行學習,而且這些觀察是未經過知道者分類的例子。

2.5 類比學習

類比學習是一種利用相似性來認識新事物的學習方式,其基礎是類比推理。可以看作是演繹學習和歸納學習的組合學習形式。

學習過程:

(1)聯想搜尋匹配:提取特徵值,搜尋和它相似的已知事物;

(2)檢驗相似程度:判斷相似程度,相似程度達到一定閾

值,則說明匹配成功;

(3)修正變換求解:即類比對映,把對已知事物的有關知

識進行適當的調整或變換,以求出新事物的解;

(4)更新知識庫:求出新事物的解以後,將新事物及其解

併入知識庫。

3 機器學習方法

3.1 流形學習

現實世界中的資料,例如語音訊號、數字影象或功能性磁共振影象等,通常都是高維資料,為了正確地瞭解這些資料,我們就需要對其進行降維,降維的目的就是要找出隱藏在高維資料中的低維結構。流形學習是一種新的資料降維方法,能揭示資料的內在變化規律,其目標是發現嵌入在高維資料空間中的低維流形結構,並給出一個有效的低維表示。2000年以來,流形學習在包括資料探勘、機器學習、計算機視覺等多個研究領域得到了廣泛的應用。

3.2 李群機器學習

李群機器學習(Lie Group Machine Learning,LML)作為機器學習領域的一種新的學習方法,一方面繼承流形學習的優點,另一方面借用李群的思想,形成了具有創新特色的學習正規化.自2004年提出至今,已引起加拿大、愛爾蘭、芬蘭、義大利、美國等國內外同行的廣泛關注。李群結構是目前學術界公認的對學習問題研究很有用的一套理論工具。從資料分析的角度來說,用機器學習進行資料分析(資料探勘),其目的就是揭示這些資料具有的規律,從而幫助使用者提供解釋的依據。李群一方面具有好的數學結構,另一方面物理學家廣泛使用李群方法來處理物理學中複雜資料的啟發。因此,引進李群理論對機器學習是一種可以探索的新思路。

3.3 核機器學習

20世紀90年代初隨著統計學習理論的完善和線性超平面函式集容量控制方法的發現,提出了著名的支撐向量機方法(SVMs)。隨後,以支撐向量機為核心演算法的核機器(KM)方法和Fisher判斷分析(FDA)方法得到了機器學習、模式識別、網路搜尋引擎技術、計算機視覺等等領域的廣泛關注。核機器方法以統計學習理論為基礎,巧妙利用了Mercer核技巧,使其獲得了良好的推廣能力、強大的非線性處理能力、靈活的相似性測度定義和簡潔的模型表示,是目前在特徵提取、模式識別、資料發掘領域公認的具有最佳效能的方法之一。

4.1基於限制玻爾茲曼機的深度學習架構

玻爾茲曼機( Boltzmannmachine)本質上是一種能量模型 能量模型是指對於引數空間( configurationspace) 中每一種情況均有一個純量形式的能量與之對應 能量函式就是從引數空間到能量的對映函式,人們希望通過學習使得能量函式有符合要求的性質 從結構上來說,玻爾茲曼機是雙層無向全連通圖,如圖3所示 為了方便起見,這裡僅討論觀測變數和隱變數均是0 1變數的情況

玻爾茲曼機的能量函式為E( x,h) =-b'x-c'h-h'Wx-x'Ux-h'Vh ( 1)式中,x表示可見層,h表示隱層,b {0,1}K,c{0,1}D分別表示可見層和隱層單元的偏置( offset) , KD分別表示可見層和隱層單元的數目 WUV分別表示觀測層和隱層之間,觀測層變數之間,隱層變數之間的連線權重矩陣在實際中,由於計算樣本概率密度時歸一化因子的存在,需要使用馬爾可夫蒙特卡洛方法( MCMC)來對玻爾茲曼機進行優化 但是MCMC方法收斂速度很慢,因此人們提出限制玻爾茲曼機和對比散度方法來解決這一問題.

4.2限制玻爾茲曼機

限制玻爾茲曼機是對全連通的玻爾茲曼機進行簡化,其限制條件是在給定可見層或者隱層中的其中一層後,另一層的單元彼此獨立,即式( 1) 中U和V矩陣中的元素均等於0 層間單元獨立的條件是構成高效的訓練限制玻爾茲曼機的方法的條件之 一,而RBM也因此成為深度置信網路( DBN)的構成單元 限制玻爾茲曼機的圖模型如圖4所示 可見,層內單元之間沒有連線關係,層間單元是全連線關係

將式( 1) 中層間連線矩陣U,V置零,得到限制玻爾茲曼機的能量函式E( x,h) =-b'x-c'h-h'Wx 由於限制玻爾茲曼機取消了層內單元之間的連線,所以可以將其條件概率分佈進行分解,這樣就簡化了模型優化過程中的運算 但是在其優化過程中仍然需要基於MCMC方法的吉布斯取樣,訓練過程仍然十分漫長,因此人們提出對比散度方法來加快模型優化. 對比散度( contrastivedivergence) 是Hinton在2006年提出來的快速地訓練限制玻爾茲曼機的方法,該方法在實踐中得到廣泛的應用 對比散度主要是將對數似然函式梯度的求解進行了兩個近似:

(1) 使用從條件分佈中得到的樣本來近似替代計算梯度時的平均求和這是因為在進行隨機梯度下降法進行引數優化時已經有平均的效果,而如果每次計算都進行均值求和則這些效果會相互抵消,而且會造成很大的計算時間的浪費

(2) 在進行吉布斯取樣( Gibbs sampling) 時只採用一步,即僅僅進行一次吉布斯取樣這種一次吉布斯取樣方法會使得采樣得到的樣本分佈與真實分佈存在一定的誤差 但是實踐發現,如果僅作一次迭代的話,就已經能得到令人滿意的結果將限制玻爾茲曼機逐層疊加,就構成了深度置信網路( DBN) 在深度置信網路中底層的輸出作為上一層的輸入,每層是一個限制

玻爾茲曼機,使用對比散度的方法單獨訓練 為了達到更好的識別效果,往往還要對深度置信網路每層的引數進行微調使用限制玻爾茲曼機構建成深度網路,在一些公開的資料集上取得了非常好的效果.

5機器學習系統的模型及其特徵

5.1 機器學習系統的模型

(1) 外部環境是以某種形式表達的資訊或知識的集合,是知識和資訊的來源,執行的物件和任務 外部環境像系統提高資訊的質量是影響學習系統設計的首要因素。(2)學習是將外部環境提供的資訊,加工成為有效資訊的過程,它也是學習系統的核心,包括採集資訊接受監督指導學習推理修改知識庫等其他功能。(3)知識庫是影響學習系統設計的第二大因素,根據知識的不同,選擇不同的表達方式,兼顧表達能力強易於推理易於修改知識庫和知識表示易於擴充套件等幾方面,均是知識庫在表達上需要符合的要求。(4)執行是利用知識庫完成某種任務,並進行識別論證決策判定,將獲得的資訊進行反饋,以修正和完善下一步的學習。

5.2 機器學習系統的重要特徵

機器學習系統通常具有如下重要特徵:(1)目的性系統知道學習什麼,學習的行為具有高度的目的性。(2)結構性系統能修改和完善知識結構和組織形式。(3)有效性系統學習到的知識具有適應和符合實踐的能力,能夠對系統性能的改善起到正面的作用。(4)開放性系統在與環境進行資訊互動的過程中,能使自身不斷進化。

6.機器學習策略

對於環境提供資訊,機器要運用一定的學習策略轉換為知識,並存儲在知識庫中,為下一步的執行作保證根據策略使用推理的多少和難易程度,學習策略可以分為四類: 1機械學習

這種學習策略,無需任何推理過程或計算轉換過程,可以直接將環境提供的資訊進行儲存該學習系統主要考慮三個方面:第一:儲存組織的形式利於檢索在採用機械學習的系統中,主要採用的是索引儲存的方式,在這種情況下,只有檢索一個專案比重新分析計算更加快捷,這種學習策略才具有一定的意義 採用適當的儲存組織形式,最大限度地提高檢索效率,縮短檢索時間,是機械學習要解決的重大問題第二:環境穩定儲存資訊適用性高因為系統不需要對資訊做過多的加工,學習部分沒有推理的過程,這對於環境的依賴程度就大大提高要求環境具有高度的穩定性系統的學習是通過事先編好的程式獲得,是建立在這次獲得的知識適用於下次的情況的假設上的,如果環境變化的過於頻繁,每次存的知識都不能適用,這種策略也就失去其意義第三:權衡儲存和計算之間的關係學習的目的是改進系統的效率,如果檢索比重新計算來的慢,那麼就降低了系統的執行力 機械學習也就失去了意義。

2歸納學習

歸納推理是由環境提供足夠多的例項或反例,應用歸納的方法,得出一般性的規律或對於概念的一般性的描述這是一個從個別到一般的過程歸納學習可以獲得新的概念,創立新的規則,發現新的理論 其原理是在大量觀察的基礎上通過假設形成一個科學理論 按其有無教師的指導,可以分為示例學習及觀察與發現學習示例學習,又稱為概念獲取 確定概念的一

篇二:機器學習方法及應用研究

摘要:本文介紹了機器博弈技術,給出了提升計算機的智慧程度是研究機器博弈技術的重點。設計了五子棋遊戲演算法,由於演算法設計決定了計算機的智慧程度,該演算法沒有用到機器學習,計算機不具有智慧。分析了卡斯帕羅夫和“深藍”的不同特點,給出了“深藍”戰勝世界冠軍的啟示,只有利用機器學習技術開發的具備學習能力的計算機才具有智慧。

關鍵詞:機器博弈,機器學習,智慧0、引言

很早人類就有製造機器人的幻想,例如黃帝的“指南車”,諸葛亮的“木牛流馬”。《三國演義》中諸葛亮發明的運輸工具稱為“木牛流馬”,解決了川山山區軍糧運輸的難題。根據文獻,諸葛亮最具有實物性質的智慧結晶就是“木牛流馬”。

機器博弈既可以是計算機與計算機之間的博弈,也可以是計算機與人類之間的博弈。諸如戰爭、競技、下棋、打牌等一類競爭性智慧活動稱為博弈[1]。 1、“深藍”戰勝世界冠軍

1997年5月,美國IBM公司的“深藍”超級計算機首次擊敗國際象棋男子世界冠軍卡斯帕羅夫。表1給出了卡斯帕羅夫和“深藍”具有的不同特點。

學習是人類獲取知識的重要途徑和自然智慧的重要標誌,機器學習則是機器獲取知識的重要途徑和人工智慧的重要標誌[2]。“深藍”之所以能擊敗卡斯帕羅夫,最主

______________________

作者簡介:馬健喆,男,(1995,11-),山西太原人,本科,主要研究方向為資訊處理。

要的原因是“深藍”具有較強的學習能力和推理能力。

表1卡斯帕羅夫和“深藍”的不同特點

學習過程與推理過程密切相關。按照學習中使用推理的多少,機器學習所採用的策略總體上可以分為機械學習、示教學習、示例學習和類比學習。學習中所用的推理越多,系統的能力越強[3,4]。 2、五子棋遊戲的設計

設計五子棋遊戲,實現簡單的五子棋遊戲;插入一個下載的棋盤圖片作為自己的棋盤;插入一段音樂實現背景音樂的播放;當有輸贏出現時彈出一個顯示戰況的對話方塊;在選單欄上新增一個戰況的標題,當單擊時彈出顯示當時戰況的對話方塊。

五子棋棋局與圍棋相同,棋子分為黑、白兩種顏色,棋盤為19?19,在棋盤線交叉點上放置棋子。計算機與人對局,各執一種顏色的棋子,輪流下一子,先將橫、豎或斜線的5個或5個以上同色棋子連成不間斷的一排者為勝。現代五子棋棋盤已標準化為15?15的方格棋盤。

本文采用MFC對話方塊構建五子棋棋盤,直接擷取五子棋棋盤圖片作為對話方塊背景;採用MFC按鈕控制元件作為五子棋遊戲“悔棋”、“音樂”、“戰況”、“重新開始”的選項按鍵;實現五子棋人機對戰,人通過滑鼠點選下子;設計五子棋遊戲演算法實現計算機的下子點的選擇。

圖1給出了五子棋遊戲演算法的程式流程圖,具體步驟如下:

圖1五子棋遊戲演算法的程式流程圖

(1)對局雙方各執一種顏色的棋子; 

       (2)空棋盤開局;

(3)玩家(黑方)首先落子,接著計算機(白方)作出決策,落子,交替下子,每次只能下一子;

(4)棋子下在棋盤的空白點上,棋子下定後,不得向其它點移動,不得從棋盤上拿掉或拿起另落別處;

(5)黑方的第一枚棋子可下在棋盤任意交叉點上;

(6)輪流下子是雙方的權利;

(7)連五取勝。在對弈過程中若某一方出現“成五”(“五連”和“多連”的總稱),則判定為勝。若棋盤下滿還沒有勝方,則為平局。

該五子棋遊戲演算法沒有用到機器學習,計算機不具有智慧。圖2、圖3分別給出了利用MFC實現五子棋遊戲程式的執行結果。本文設計實現的五子棋遊戲可以根據個人愛好設計介面,人機互動方便、簡單。

圖2 五子棋遊戲程式的執行結果

圖3 五子棋遊戲程式的執行結果

演算法設計決定了計算機的智慧程度,可用於五子棋計算的演算法包括博弈樹、負極大值演算法、???演算法、置換表技術、雜湊表技術、歷史啟發等。怎樣綜合使用各種演算法,提升計算機的智慧程度是研究機器博弈技術的重點。 3、結論

機器學習是計算機獲取智慧的途徑,本文設計了五子棋遊戲演算法,實現了五子棋遊戲。下一步工作將機器學習方法引入到五子棋遊戲的設計,提高計算機的學習能力和推理能力。

篇三:基於機器學習的文字分類方法

基於機器學習演算法的文字分類方法綜述

摘要:文字分類是機器學習領域新的研究熱點。基於機器學習演算法的文字分類方法比傳統的文字分類方法優勢明顯。本文綜述了現有的基於機器學習的文字分類方法,討論了各種方法的優缺點,並指出了文字分類方法未來可能的發展趨勢。

1. 引言

隨著計算機技術、資料庫技術,網路技術的飛速發展,Internet的廣泛應用,資訊交換越來越方便,各個領域都不斷產生海量資料,使得網際網路資料及資源呈現海量特徵,尤其是海量的文字資料。如何利用海量資料探勘出有用的資訊和知識,方便人們的查閱和應用,已經成為一個日趨重要的問題。因此,基於文字內容的資訊檢索和資料探勘逐漸成為備受關注的領域。文字分類(text categorization,TC)技術是資訊檢索和文字挖掘的重要基礎技術,其作用是根據文字的某些特徵,在預先給定的類別標記(label)集合下,根據文字內容判定它的類別。傳統的文字分類模式是基於知識工程和專家系統的,在靈活性和分類效果上都有很大的缺陷。例如卡內基集團為路透社開發的Construe專家系統就是採用知識工程方法構造的一個著名的文字分類系統,但該系統的開發工作量達到了10個人年,當需要進行資訊更新時,維護非常困難。因此,知識工程方法已不適用於日益複雜的海量資料文字分類系統需求

[1]。20世紀90年代以來,機器學習的分類演算法有了日新月異的發展,很多分類器模型逐步被應用到文字分類之中,比如支援向量機(SVM,Support Vector Machine)[2-4]、最近鄰法(Nearest Neighbor)[5]、決策樹(Decision tree)[6]、樸素貝葉斯(Naive Bayes)[7]等。逐漸成熟的基於機器學習的文字分類方法,更注重分類器的模型自動挖掘和生成及動態優化能力,在分類效果和靈活性上都比之前基於知識工程和專家系統的文字分類模式有所突破,取得了很好的分類效果。

本文主要綜述基於機器學習演算法的文字分類方法。首先對文字分類問題進行概述,闡述文字分類的一般流程以及文字表述、特徵選擇方面的方法,然後具體研究基於及其學習的文字分類的典型方法,最後指出該領域的研究發展趨勢。

2.文字自動分類概述

文字自動分類可簡單定義為:給定分類體系後,根據文字內容自動確定文字關聯的類別。從數學角度來看,文字分類是一個對映過程,該對映可以是一一對映,也可以是一對多對映過程。文字分類的對映規則是,系統根據已知類別中若干樣本的資料資訊總結出分類的規律性,建立類別判別公式或判別規則。當遇到新文字時,根據總結出的類別判別規則確定文字所屬的類別。也就是說自動文字分類通過監督學習自動構建出分類器,從而實現對新的給定文字的自動歸類。文字自動分類一般包括文字表達、特徵選取、分類器的選擇與訓練、分類等幾個步驟,其中文字表達和特徵選取是文字分類的基礎技術,而分類器的選擇與訓練則是文字自動分類技術的重點,基於機器學習的文字分來就是通過將機器學習領域的分類演算法用於文字分類中來[8]。圖1是文字自動分類的一般流程。

2.1 文字表述

至今,計算機還不能像人類那樣閱讀完文章之後,根據自身的理解能力對文章的內容產生一定的認識。要使計算機能夠高效率、高效能地處理自然文字,就需要有一個文字表示的過程,文字表示是將非結構化的文字文件表示為機器易於處理的形式的過程。文字表示通常包括文字預處理和文字模型表示等步驟,其中文字預處理為建立文字表示模型做必要的準備工作。具體的文字標識方法有很多種模型,如布林模型、布林模型性、向量空間模型等。詞包(Bag of Words)表示法是目前文字分類的標準模式。把文字看成是段落的集合,或者是句子的集合,也可以看成是單或字母的集合,而單詞是組成文字的一個基本單位,研究者通常把一個文本當作是一系列單詞的集合來表示,即所謂的詞包表示法,它通過特徵處理和統計學習演算法的基礎上獲得對文字語義內容及類別資訊的估計與預測。實際應用中空間向量模型(vector Space Modal, VSM)是常見的文字表示模型。在這種表示方式中,每篇文件表示成形如d=的向量,其中ti表示詞條項,wi表示ti在文件d中的權值。如圖

2所示是向量空間模型。向量空間模型已經在資訊檢索、文字分類等應用中取得了成功。除VSM外,還有基於概率分佈、基於二維檢視等模型。這些非VSM的表示方法需要通過理論以及應用實踐上的進一步驗證。

2.2 特徵提取

特徵提取是在初始全特徵集基礎上提取出一個特徵子集的過程,能夠起到降低向量空間維數、簡化計算、防止過擬合作用。首先根據特徵提取演算法對特徵的重要性進行評估,然後進行重要度排序,最後根據提取閾值或提取比率完成提取。提取後的特徵集將用於之後的訓練和分類過程。常用特徵提取演算法有文件頻數(Document Frequency)、資訊增益(information Gain)、期望交叉熵(expected cross entropy)、互資訊(Mutual Information)、χ2統計等。

3.基於機器學習的文字分類方法

3.1 基於樸素貝葉斯法的文字分類

樸素貝葉斯方法是最早用於文字分類的分類器演算法,是一種統計學分類方法,它基於貝葉斯決策論並且基於此項獨立的假設,幾不同屬性對分類結果的影響是獨立的。假設d為待分類文件的表示向量,它屬於文件類別集合C={c1,c2,c3,…,cn}中某一類。根據貝葉斯公式有:

n

P d = P cj P(d|cj)

j=1

P cj|d =P cj P(d|cj)P(d)…,n

其中P cj 表示類別cj在樣本集中的比重,P(d|cj)由概率密度函式計算得出。分類時,P cj|d 值最大情況對應的類別cmax為待分類文件類別。基於上述假設的概率分類器一般稱為貝葉斯分類器。貝葉斯分類器容易理解,計算簡單而且比較實用,其分類效果基本能滿足要求,但其關於詞項獨立性的假設受到了質疑。

3.2 基於決策樹法的文字分類

決策樹學習是應用最廣泛的歸納推理演算法之一,它是一種逼近離散值函式的方法,對噪聲資料有很好的健壯性且能夠學習析取表示式。決策樹著眼於從一組無次序無規則的事例中推理出決策樹表示形式的分類規則,它通過把例項從根結點排序到某個葉子結點來分類例項,葉子結點即為例項所屬的分類。在構造分類模型時,樹上的每個結點指定了對例項屬性集測試後選擇出的屬性,並且該結點的每一個後繼分支對應於該屬性的一個可能值。分類例項的時候,就是從樹的結點開始,測試這個結點指定的屬性,然後按照給定例項的該屬性值對應的樹枝向下移動,之後在新的'結點上重複這個過程直到葉子結點,即獲得分類。

一般來說,決策樹演算法主要圍繞兩大核心問題展開:第一,決策樹的生長問題,即利用訓練樣本集,完成決策樹的建立過程;第二,決策樹的剪枝問題,即利用檢驗樣本集對形成的決策樹進行優化處理。決策樹的構建是一種自上而下、分而治之的歸納過程,本質是貪心演算法。各種演算法建樹的基本過程相似,是一個遞迴的過程。

設資料樣本集為S,演算法框架如下:

(1) 如果資料樣本集S中所有樣本都屬於同一類或者滿足其他終止準則,則S不再劃分,

形成葉節點:

(2) 否則,根據某種策略選擇一個屬性,按照屬性的各個取值,對S進行劃分,得到n個子樣本集,記為Si,再對每個Si迭代執行步驟(1)。

經過n次遞迴,最後生成決策樹。從根到葉節點的一條路徑對應著一條規則,整棵決策樹就對應著一組析取表示式規則。為了防止決策樹和訓練樣本集的過度擬合,特別是存在噪聲資料或不規範屬性時更為突出,需要對決策樹進行剪枝。剪枝的演算法通常利用統計方法決定是否將一個分支變為一個節點。通常採用兩種方法進行決策樹的剪枝,即在決策樹生長過程完成前就進行剪枝的事前修剪法和在決策樹生長過程完成後才進行剪枝的事後修剪法。

決策樹分類演算法自提出以來,出現了很多種,早期的是CLS學習演算法和CART演算法,最有影響的是1986年Quinlan提出的ID3演算法。ID3演算法體現了決策樹分類的優點:演算法的理論清晰、方法簡單,學習能力較強。缺點是:只對比較小的資料集有效,且對噪聲比較敏感。在ID3演算法的基礎上,Quinlan又發展了具有重要影響的C4.5演算法,它繼承並改進了ID3演算法,使用非常廣泛。為了適應處理大規模資料集的需要,後來學者又提出了若干改進的演算法,取得了較好的效果。決策樹文字分類法分類精度較好,並且可以很好的抵抗噪聲,但缺點是在處理大規模資料集的情況下效率不高。

3.3 基於K最近鄰法的文字分類

K最近鄰演算法(k Nearest Neighbor, KNN)分類演算法是傳統的基於統計的模式識別方法,在文字分類領域使用較多。其演算法思想是對於一篇待分類文件,在訓練集中找到K個最相近的鄰居。取這K個鄰居的類別為該文件的候選類別,該文件與K個鄰居之間的相似度為候選類別的權重,然後使用設定的相似度閾值就可以得到該文件的最終分類。KNN演算法也是基於向量空間模型的分類演算法之一,最初由Cover和Hart於1968年提出,是一個理論上比較成熟的方法。採用kNN方法進行文件分類可以定義為:對於給定的文件集D,把D中所有的文字內容形式化為特徵空間中的加權特徵向量D,其中向量D表示為D=。對於某一給定的測試文件d,通過計算它與每個訓練文件的相似度,找出k個最相似的文件。在此基礎上,給每個文件類別加權打分,根據加權距離和判斷測試文字所屬的類別。根據上述表述,可以把KNN文字分類法歸結為以下步驟:

⑴ 根據各種規則將文字內容變換成文字特徵向量。

⑵ 根據相似度公式計算測試文字與每個訓練文字的相似度,計算公式如下:

Sim di,dj =2m2 mk=1Wik k=1Wjk mW×W

其中,m是特徵向量維數,K表示近鄰個數,其具體數值的確定目前還沒有很好的方法,一般採用先定一個初始值,然後通過實驗測試調整K值,一般初始值定為幾百到幾千之間,但是要小於訓練文件總數。

⑶ 從(2)的結果中選出k個相似度最大的訓練集文件,計算分類權重,計算公式為:

P d,ci = Sim d,dj y dj,ci ?bi

dj?kNN

其中d表示文字特徵向量,y dj,ci ? 0,1 ,即如果文件屬於該類別值為l,反之為0。bi為閾值,對於某一特定類來說,bi是一個有待優化選擇的值,可以通過一個驗證文件集來進行調整。

KNN演算法足向量空間模型下最好的分類演算法之一,優點是易於快速實現,在基於統計

的模式識別中非常有效,有較好的分類準確性和穩定性,尤其對於未知和非常態分佈可以取得較高的分類準確率。KNN可以較好地避免樣本的不平衡問題,對於類域的交叉或重疊較多的待分樣本集和樣本容量較大的類域的分類較為適合,並且,它對訓練資料中的噪聲有很好的健壯性,當給定足夠大的訓練集合時也非常有效。總體來說KNN優於貝葉斯、決策樹。然而作為一種懶散的學習演算法,它也存在一些限制:一是空間開銷大。因為要事先儲存全部訓練樣例,當訓練樣例增大時儲存空間也隨之增大。二是計算相似度時,例項間的距離是根據例項的所有屬性來計算的,這與那些只選擇全部例項屬性的一個子集的方法不同,例如決策樹。有些屬性與分類相關性不大或無關時,可能會誤導近鄰演算法的分類,近鄰間的距離會被大量的不相關屬性所支配。這種由於存在很多不相關屬性所導致的難題,有時被稱為唯度災難[9]。最近鄰方法對這個問題特別敏感。解決的方法一般有兩種,一是在計算兩個例項間的距離時對每個屬性加權,二是從例項空間中完全消除最不相關的屬性。

3.4 基於中心向量法的文字分類

還有一類分類速度較快的基於向量空間模型的文字分類演算法是基於中心向量的分類法,又稱為Rocchio演算法[10]。中心向量法最初用於資訊檢索,現在已經被廣泛應用於文字分類。中心向量法的基本思想是通過對訓練集進行訓練得到每一個已知類別的中心,稱之為類中心向量,分類過程中將待分類文件與已知的類中心向量進行相似度比較,判定規則為相似度最大的類中心向量所代表的類別為待分類文件的類別。假設令C= Ci mi=1表示訓練集包含的m個類,則基於中心向量的文字分類過程為:

⑴ 對每一個類Ci,計算該類中所有文件向量的算術平均作為該類的類中心向量V Ci ; ⑵ 對於一個待分類文件d,計算d與所有類中心向量V Ci 的相似度Sim d,V Ci 並且返回相似度最大的類別最為結果。這裡相似度的計算同3.3中步驟(2)的相似度激素那方法相同。中心向量法適合於訓練集中各類別大小相對均衡,且同類別文件分佈稠密的情況,此時分類效果較好,但當訓練集中各類別間大小不均衡且同類別文件分佈稀疏時,分類效果較差。

3.5 基於支援向量機的文字分類

支援向量機(Support Vector Machines, SVM)是由Vapnik與其領導的貝爾實驗室研究小組在1995年據統計學理論提出的一種用於解決二分類模式識別問題的學習方法。Joachims是最早將SVM方法用於文字分類中的,並且取得非常理想的分類效果。SVM方法將文字分類問題變成了一系列二分類問題。SVM演算法是建立在統計學習理論的VC維理論和結構風險最小原理基礎上的,它將降維和分類結合在一起,根據有限的樣本資訊在模型的複雜性和學習能力之間尋求最佳折衷,這裡模型的複雜性代表對特定訓練樣本的學習精度,而學習能力代表無錯誤的識別任意樣本的能力。支援向量機演算法的目的在於尋找一個超平面H,該超平面可以將訓練集中的資料分開,且與類別邊界的沿垂直於該超平面方向的距離最大,故SVM法也被稱為最大邊緣演算法。樣本集中的大部分樣本不是支援向量,移去或者減少這些樣本對分類結果沒有影響,這樣只用各類別邊界樣本的類別來決定分類結果的做法,具有較強的適應能力和較高的準確率。

總結起來,SVM演算法的分類思想是從訓練樣本中尋找能夠確定一個最優超平面的支援向量。假設有大小為m的訓練樣本集 x1,y1 , x2,y2 ,… xn,yn ,如果它是一個二分類任務,則分類標識為yi=±1 (i=1,2,3,…,m),那麼任務的決策函式可用下式表示:

f x =sin w?x+b

篇四:機器學習理論與方法

機器學習理論與方法 實驗報告

實驗專案:基於Hopfield Network 模型的數字識別 實驗者: 彭江軍 學號: 2011114093 專業: 資訊與計算科學 指導教師: 張瑞

一:程式前期準備與思路

(1) 先對圖中給的8個已知的pattern影象數字化成矩陣,對於待處理的影象也處理為矩陣,匯入excel表。

(2) 由權重的計算公式,編寫程式得到權重矩陣。

(3) 選擇相應的啟用函式,這裡我們選擇bi-polar binary 函式。不斷更新,使其能量不斷下降,最終趨於穩定。

二:程式程式碼

1.得到權重的程式

% 讀取資料

A=xlsread('',1);

B=xlsread('',1);

C=xlsread('',1);

D=xlsread('',1);

E=xlsread('',1);

F=xlsread('',1);

G=xlsread('',1);

H=xlsread('',1);

% 將矩陣依次處理為向量,以便求

法用for來做

A1=A(1,:);

for i=2:12

A1=vpa([A1 A(i,:)]);

end

B1=B(1,:);

for i=2:12

B1=vpa([B1 B(i,:)]);

end

C1=C(1,:);

for i=2:12

C1=vpa([C1 C(i,:)]);

end

D1=D(1,:);

for i=2:12

D1=vpa([D1 D(i,:)]);

end

E1=E(1,:);

for i=2:12

E1=vpa([E1 E(i,:)]);

end

F1=F(1,:);

for i=2:12

F1=vpa([F1 F(i,:)]); weight,由於是A,B等編號,故這一步無

end

G1=G(1,:);

for i=2:12

G1=vpa([G1 G(i,:)]);

end

H1=H(1,:);

for i=2:12

H1=vpa([H1 H(i,:)]);

end

% 求weight公式

I=eye(120);

W=(A1'*A1+B1'*B1+C1'*C1+D1'*D1+E1'*E1+F1'*F1+G1'*G1+H1'*H1)/120-8/120*I;

W=double(W);

xlswrite('',W)

2.更新程式

編寫指令碼檔案

function HPML(x0,weight,n)

%% x0為需要識別的數字矩陣

% weight 為經過學習得到的權重

% n為需要迭代的次數

O=weight*x0;

[r,c]=size(O);

% 迭代更新矩陣

for k=1:n-1

for i=1:r

for j=1:c

if(O(i,j)>=0)

O(i,j)=1;

else

O(i,j)=-1;

end

end

end

O=weight*O;

end

% 對於跳出迴圈的矩陣規範化

for i=1:r

for j=1:c

if(O(i,j)>=0)

O(i,j)=1;

else

O(i,j)=-1;

end

end

end

%將生成的向量以行序為主轉化為矩陣,因為reshape函式以列序為主,故未採用

M=zeros(12,10);

for i=1:12

M(i,:)=O(10*(i-1)+1:10*i);

end

imshow(M,[-1,1])

title(strcat('iteration times:',num2str(n)));

3.呼叫函式

x0=xlsread('',1);

weight=xlsread('',1);

X=zeros(12,10);

for i=1:12

X(i,:)=x0(10*(i-1)+1:10*i);

end

subplot(1,3,1);

imshow(X,[-1,1]);

title('previous image');

n=1;

subplot(1,3,2);

HPML(x0,weight,n)

subplot(1,3,3);

n=2;

HPML(x0,weight,n)

三:程式結果

篇五:基於機器學習的數字音訊分類方法研究

基於機器學習的數字音訊分類方法研究

摘要:

讓計算機能聽懂人類的語言,是人類自計算機誕生以來夢寐以求的想法。隨著經濟的發展,人們越來越迫切要求擺脫鍵盤的束縛而代之以語音輸入這樣便於使用的、自然的、人性化的輸入方式。這就使語音訊號分析成為社會生活中越來越重要的一部分。其中語音識別是語音訊號分析的重要領域,而語音特徵訊號識別又是語音識別研究領域的一個重要方面。

語音特徵訊號識別一般採用模式匹配的方法解。首先通過預處理提取語音特徵,作為該語音片段的模型。將該模型與已知的參考模型相比較,獲得最佳匹配的參考模式作為識別結果,在論文中研究的是基於傳統的BP神經網路的音訊分類與SVM技術音訊分類的模擬實驗結果進行比較,對比兩者各自優缺點,從而熟悉這兩種技術的基本工作原理和演算法。通過實驗對其效能進行了主觀評價和客觀資料分析,對於所選語音訊號BP網路具有較快的訓練速度,但是SVM技術具有較高的識別率。BP網路的學習和記憶具有不穩定性。也就是說,如果增加了學習樣本,訓練好的網路就需要從頭開始訓練,對於以前的權值和閾值是沒有記憶的。但是可以將預測、分類或聚類做的比較好的權值儲存。

關鍵詞:語音識別,特徵提取,梅爾倒譜系數,BP網路,SVM(支援向量機)

Research on digital audio classification base on

machine-learning

Abstract:

Since the birth of the computer people want to let the computer can understand human's language le are becoming more and more urgent to get rid of keyboard and replace it by voice input that is personalized、convenient and natural to be used that Analysis of speech signal become a more and more important part in social speech recognition is an important part of Analysis of speech signal ,and the voice signal recognition is one of the most important aspects of speech recognition .

Speech feature signals recognition use to use pattern matching tly, through pretreatment of phonetic feature extraction make as the model is compared with known reference model, get the best matches the reference pattern as a result of recognition. In this paper research is based on the traditional BP neural network audio classification and technology of Support vector machine audio classification the experimental results were compared to find each of advantages and disadvantages, so to understand with the two technical basic principle and algorithm. Through the experiments on the performance of the subjective evaluation and objective data analysis, for selected speech signal BP network has faster training speed, but the SVM technology has higher recognition rate. BP network learning and memory have instability. That is to say that if the increase of learning samples, the trained network is needed to start training, for the previous weights and thresholds is no memory. But it can keep these better weight that do well in predict, classification or clustering.

KEY WORDS:Speech recognition feature extraction Mel frequency cepstrum coefficient BP networks SVM ( support vector machine )

目錄

第一章 緒論 ..................................................................................................................................... 4

1.1 語音訊號處理髮展前景 .................................................................................................. 4

1.2 語音識別技術概述 .......................................................................................................... 4

1.2.1 語音識別技術的發展歷史回顧 ........................................................................... 5

1.2.2 音訊識別系統的基本原理 ................................................................................... 5

1.2.3 語音識別的意義 ................................................................................................... 6

1.3 專案的主要研究內容 ...................................................................................................... 6

1.4本文的主要章節安排 ......................................................................................................... 6

第二章 訊號的預處理 ..................................................................................................................... 7

2.1 訊號的預加重 .................................................................................................................... 7

2.2音訊訊號的加窗分幀 ......................................................................................................... 8

2.3音訊訊號的端點檢測 ......................................................................................................... 9

2.3.1 音訊訊號的短時能量分析 ................................................................................... 9

2.3.2 音訊訊號的短時過零率分析 ............................................................................. 10

2.3.3 基於短時平均能量和短時平均過零率的雙門限端點檢測 ............................. 11

第三章 音訊訊號的特徵向量提取 ............................................................................................... 12

3.1 訊號的倒譜分析 ............................................................................................................ 12

3.2 梅爾倒譜引數 ................................................................................................................ 13

第四章 基於BP神經網路的音訊訊號資料分類 ...................................................................... 18

4.1BP神經網路概述 .............................................................................................................. 18

4.1.1 BP神經網路 ............................................................................................................... 18

4.1.2 語音特徵訊號分類 ............................................................................................. 19

4.2BP 網路的MATLAB實現 ............................................................................................... 20

4.2.1 歸一化方法及MATLAB實現 .......................................................................... 20

4.2.2 資料選擇選擇和歸一化 ..................................................................................... 20

4.2.4 模擬結果分析 ..................................................................................................... 21

第五章利用SVM建立分類器來對語音特徵訊號進行分類預測 .............................................. 24

5.1svm技術簡述 .................................................................................................................... 24

5.1.1 SVM的原理和優點 .............................................................................................. 24

5.1.2SVM技術在本案例中的應用 ............................................................................... 25

5.1.3實驗的模擬結果與分析 ........................................................................................ 25

第六章 總結與展望 ....................................................................................................................... 28

致 謝 .............................................................................................................................................. 29

畢業設計小結 ................................................................................................................................. 30

參考文獻......................................................................................................................................... 31

附錄 ................................................................................................................................................ 32

附錄1:相關文獻的翻譯 ...................................................................................................... 32

第一章 緒論

通過語音傳遞資訊是人類最重要、最有效、最常用和方便的交換資訊的形式。語音是人類特有的功能,聲音是人類最常用的工具,是相互傳遞資訊的最主要的手段。因此,語音訊號是人們構成思想溝通和感情交流的途徑。

1.1 語音訊號處理髮展前景

讓計算機能聽懂人類的語言,是人類自計算機誕生以來夢寐以求的想法。隨著計算機越來越向便攜化方向發展,以及計算環境的日趨複雜化,人們越來越迫切要求擺脫鍵盤的束縛而代之以語音輸入這樣便於使用的、自然的、人性化的輸入方式。尤其是漢語,它的漢字輸入一直是計算機應用普及的障礙,因此利用漢語語音進行人機交換是一個極其重要的研究課題。作為高科技應用領域的研究熱點,語音訊號處理技術從理論的研究到產品的開發已經走過了幾十個春秋平且取得了長足的進步。它正在直接與辦公、交通、金融、公安、商業、旅遊的行業的語音諮詢與管理,工業生產部門的語音控制,電話-電信系統的自動撥號、輔助控制與查詢以及醫療衛生和福利事業的生活志願系統等各種實際應用領域相接軌,並且有望成為下一代作業系統和應用程式的使用者介面。可見,語音訊號處理技術的研究將是一項極具市場價值和挑戰性的生活。我們今天進行這一領域的研究與開拓就是要讓語音訊號處理技術走入人們的日常生活當中,並不斷朝向更高目標而努力。

語音訊號處理這門學科之所以能夠長期地、深深地吸引廣大科學工作者不斷地對其進行研究和探討,除了它的實用性之外,另一個重要原因是,它始終與當時資訊科學中最活躍的前沿學科保持密切的聯絡,並且一起發展。語音訊號處理是以語音語言學和數字訊號處理為基礎而形成的一門涉及面很廣的綜合性學科都有著非常密切的關係。對語音訊號處理的研究一直是數字訊號處理技術發展的重要推動力量。因為許多的處理的新方法的提出,首先是在語音處理中獲得成功,然後在推廣到其他領域的[2]。

1.2 語音識別技術概述

語音識別是指機器對人類說話的語句或命令進行識別和理解並做出相應的反應。它是涉及語言學、電腦科學、生理學等諸多領域的一門交叉學科。隨著計算機軟硬體和資訊科技的飛速發展,以語音識別技術開發出的產品也廣泛地應用於聲控電話交換、資訊網路查詢、醫療服務、銀行服務、工業控制等社會和人們生活的每個方面。

1.2.1 語音識別技術的發展歷史回顧

對語音識別技術的研究距今已有半個多世紀的歷史。1952 年,AT&Tbell 實驗室的Davis 等人成功研製的Audry 系統標誌著語音識別研究工作的開始。它是世界上第一個能識別十個英文數字發音的實驗系統。進入20 世紀60 年代,計算機的應用推動了語音識別的發展。在這一時期產生了動態規劃(DP,Dynamic Programming) 和線性預測分析技術(LP,Linear Prediction)兩大重要理論,較好地解決了語音訊號產生模型的問題,對語音識別的發展產生了深遠影響。70 年代,語音識別領域取得了較大的突破。動態時間歸正技術(DTW)基本成熟,有效地解決了語音訊號特徵提取和不等長語音匹配問題,同時還提出了向量量化(VQ),隱馬爾可夫模型(HMM)理論。80 年代語音識別研究進一步走向深入,各種連線詞語音識別演算法被開發,並從模板匹配技術轉向基於統計模型技術,特別是在實踐開發中成功應用了HMM 模型和人工神經網路(ANN)。1988 年Kai-FuLee 等用VQ/HMM 方法實現了997 個詞彙的非特定人連續語音識別系統SPHINX,這是世界上第一個高效能的非特定人、大詞彙量、連續語音識別系統。進入90 年代後,語音識別技術開始向市場提供產品。具代表性的是IBM 的Via Voice 和Dragon 公司的Dragon Dictate系統,這些語音識別系統具有說話人自適應能力,新使用者不需要對全部詞彙進行訓練便可在使用中不斷提高識別率。進入21 世紀,語音識別的研究重點包括即興口語的識別和理解,自然口語對話,以及多語種的語音同聲翻譯。而基於語音識別晶片的嵌入式產品也越來越多, 如Infineon 公司的Unispeech 和Unilite 語音晶片等。我國對語音識別的研究也較早。20 世紀50 年代後期,中科院聲學所用頻譜分析的方法研究了漢語10 個母音的語音識別;20 世紀70 年代後期,構建了基於模板匹配的孤立詞語音識別系統;20 世紀80 年代後期,研究了八五期間中科院人機語音對話研究專案。目前我國語音識別技術的研究水平已經基本上與國際相當。如以中國科學院自動化研究所模式識別國家重點實驗室為依託的中科模識,其漢語連續語音、非特定人聽寫機系統的普通話系統的錯誤率可以控制在10%以內。

1.2.2 音訊識別系統的基本原理

語音識別屬於模式識別的範疇。根據模式識別的原理,未知語音的模式與己知語音的參考模式逐一進行比較,最佳匹配的參考模式被作為識別結果。語音識別系統的工作過程可以描述如下:待識別語音經過話筒變換成電訊號後加在識別系統的輸入端,首先經過預處理,包括反混疊失真濾波、預加重和端點檢測從而將語音訊號的特徵被提取出來。常用的特徵包括:短時平均能量或幅度、短時平均過零率、短時自相關函式、線性預測係數、倒譜、共振峰等。根據實際需要選擇語音特徵引數,這些特徵引數的時間序列便構成了待識別語音的模式,將其與己經儲存在計算機內的參考模式逐一進行比較,獲得最佳匹配的參考模式便是識別結果。參考模式是在系統使用前獲得並存儲起來的,為此,要輸入一系列已知語音訊號,提取它們的特徵作為參考模式,這一過程稱為訓練過程。