導航:首頁 > 源碼編譯 > 分類演算法背景

分類演算法背景

發布時間:2023-08-17 04:19:32

1. 樸素貝葉斯分類演算法的sklearn實現

1、背景

《機器學習實戰》當中,用python根據貝葉斯公式實現了基本的分類演算法。現在來看看用sklearn,如何實現。還拿之前的例子,對帖子的分類。數據如下:

補充:題目的值左邊是幾個人的評論,右邊是評論屬於侮辱類(1)、正常類(0),需要進行文本分類,且再有新的文本過來時能自動劃分至0或1。

2、分類

(1)演算法的准備

通過查看sklearn的訓練模型函數,fit(X, Y),發現只需要准備兩個參數。一個是數據的矩陣,另一個是數據的分類數組。首先就是將以上的文本轉化成矩陣。

在前一章其實已經講解過如何將文本轉化成矩陣。這里將示意的再補充下。

a.首先選取所有的單詞,形成列,也可理解為屬性。例如:

b.其次將遍歷每個文本,填滿上述列的值。文本出現過列的次,填一。沒有出現過填0。比如第一句就是:my dog has flea problems help please,可表示為:

同理所有的文本都可如此表示,所以就形成了一個數字的矩陣。

(2)beyes模型的選擇

在完成數據的准備以後,就可以直接調用sklearn的模型和函數完成模型的訓練啦。但在beyes模型的選擇的時候發現,beyes下有多個模型可選擇,所以這個會讓人糾結。接下來共同了解下這些模型:

a.高斯模型(GaussianNB)

高斯模型是對於每個屬性的值是連續的,且服從高斯分布時可使用:

比如人的身高,比如花的高度等等。當然你也可將這些數據離散化,比如按等距劃分、等頻劃分成離散的值,但可能效果都沒有直接用高斯模型來計算的好。

用法:class sklearn.naive_bayes.GaussianNB

參數:無

b.多項式模型(MultinominalNB)

如果大部分是多元離散值,則採用多項式模型要好些。多項式模型,通常就是構造參數向量,然後通過極大似然估計來尋求參數的最有值。

這里只簡單的略列一些公式,具體可查詢更多資料。從這個計算過程中可得出,這里引入啦一個平滑先驗值alpha,這個值在模型訓練的時候也會用到。通常alpha>0,可引入不在訓練集的特徵,尤其當alpha=1,成為拉普拉絲平滑。具體alpha取值對模型的影響可附件的圖。

用法:class sklearn.naive_bayes.MultinomialNB(alpha=1.0,fit_prior=True,class_prior=None) 

參數:

alpha:浮點數,就是上述說的引入平滑的值;

fit_prior:bool值,如果為Ture,則不用去學習P(y=ck),以均勻分布替代,否則則去學習P(y=ck)(不懂)

class_prior:一個數組。它指定了每個分類的先驗概率P(y=c1),P(y=c2)…..,若指定了該參數 

則每個分類的先驗概率無需學習 (不懂)

c.伯努利模型(BernoulliNB)

如果特徵值為二元離散值或是稀疏的多元離散值,則可採用伯努利模型。

公式:class sklearn.naive_bayes.BernoulliNB(alpha=1.0,binarize=0.0,fit_prior=Ture, 

class_prior=None) 

參數:

binarize:一個浮點數或者None,如果為浮點數則以該數值為界,特徵值大於它的取1,小於的為0 。如果為None,假定原始數據已經二值化 

其它參數同上。

通過以上的模型對比和分析,由於文本分析轉化後是很多二項取值的稀疏矩陣,因此選取伯努利模型效果會更佳。

補充:alpha、binarize值對模型效果的影響

2. 大數據挖掘的演算法有哪些

大數據挖掘的演算法:
1.樸素貝葉斯,超級簡單,就像做一些數數的工作。如果條件獨立假設成立的話,NB將比鑒別模型收斂的更快,所以你只需要少量的訓練數據。即使條件獨立假設不成立,NB在實際中仍然表現出驚人的好。
2. Logistic回歸,LR有很多方法來對模型正則化。比起NB的條件獨立性假設,LR不需要考慮樣本是否是相關的。與決策樹與支持向量機不同,NB有很好的概率解釋,且很容易利用新的訓練數據來更新模型。如果你想要一些概率信息或者希望將來有更多數據時能方便的更新改進模型,LR是值得使用的。
3.決策樹,DT容易理解與解釋。DT是非參數的,所以你不需要擔心野點(或離群點)和數據是否線性可分的問題,DT的主要缺點是容易過擬合,這也正是隨機森林等集成學習演算法被提出來的原因。
4.支持向量機,很高的分類正確率,對過擬合有很好的理論保證,選取合適的核函數,面對特徵線性不可分的問題也可以表現得很好。SVM在維數通常很高的文本分類中非常的流行。

如果想要或許更多更詳細的訊息,建議您去參加CDA數據分析課程。大數據分析師現在有專業的國際認證證書了,CDA,即「CDA 數據分析師」,是在數字經濟大背景和人工智慧時代趨勢下,面向全行業的專業權威國際資格認證, 旨在提升全民數字技能,助力企業數字化轉型,推動行業數字化發展。 「CDA 數據分析師」具體指在互聯網、金融、零售、咨詢、電信、醫療、旅遊等行業專門從事數據的採集、清洗、處理、分析並能製作業務報告、 提供決策的新型數據分析人才。點擊預約免費試聽課。

3. 大數據代碼分享

3月13日下午,南京郵電大學計算機學院、軟體學院院長、教授李濤在CIO時代APP微講座欄目作了題為《大數據時代的數據挖掘》的主題分享,深度詮釋了大數據及大數據時代下的數據挖掘。

眾所周知,大數據時代的大數據挖掘已成為各行各業的一大熱點。
一、數據挖掘
在大數據時代,數據的產生和收集是基礎,數據挖掘是關鍵,數據挖掘可以說是大數據最關鍵也是最基本的工作。通常而言,數據挖掘也稱為DataMining,或知識發現Knowledge Discovery from Data,泛指從大量數據中挖掘出隱含的、先前未知但潛在的有用信息和模式的一個工程化和系統化的過程。
不同的學者對數據挖掘有著不同的理解,但個人認為,數據挖掘的特性主要有以下四個方面:
1.應用性(A Combination of Theory and Application):數據挖掘是理論演算法和應用實踐的完美結合。數據挖掘源於實際生產生活中應用的需求,挖掘的數據來自於具體應用,同時通過數據挖掘發現的知識又要運用到實踐中去,輔助實際決策。所以,數據挖掘來自於應用實踐,同時也服務於應用實踐,數據是根本,數據挖掘應以數據為導向,其中涉及到演算法的設計與開發都需考慮到實際應用的需求,對問題進行抽象和泛化,將好的演算法應用於實際中,並在實際中得到檢驗。
2.工程性(An Engineering Process):數據挖掘是一個由多個步驟組成的工程化過程。數據挖掘的應用特性決定了數據挖掘不僅僅是演算法分析和應用,而是一個包含數據准備和管理、數據預處理和轉換、挖掘演算法開發和應用、結果展示和驗證以及知識積累和使用的完整過程。而且在實際應用中,典型的數據挖掘過程還是一個交互和循環的過程。
3.集合性(A Collection of Functionalities):數據挖掘是多種功能的集合。常用的數據挖掘功能包括數據探索分析、關聯規則挖掘、時間序列模式挖掘、分類預測、聚類分析、異常檢測、數據可視化和鏈接分析等。一個具體的應用案例往往涉及多個不同的功能。不同的功能通常有不同的理論和技術基礎,而且每一個功能都有不同的演算法支撐。
4.交叉性(An Interdisciplinary Field):數據挖掘是一門交叉學科,它利用了來自統計分析、模式識別、機器學習、人工智慧、信息檢索、資料庫等諸多不同領域的研究成果和學術思想。同時一些其他領域如隨機演算法、資訊理論、可視化、分布式計算和最優化也對數據挖掘的發展起到重要的作用。數據挖掘與這些相關領域的區別可以由前面提到的數據挖掘的3個特性來總結,最重要的是它更側重於應用。
綜上所述,應用性是數據挖掘的一個重要特性,是其區別於其他學科的關鍵,同時,其應用特性與其他特性相輔相成,這些特性在一定程度上決定了數據挖掘的研究與發展,同時,也為如何學習和掌握數據挖掘提出了指導性意見。如從研究發展來看,實際應用的需求是數據挖掘領域很多方法提出和發展的根源。從最開始的顧客交易數據分析(market basket analysis)、多媒體數據挖掘(multimedia data mining)、隱私保護數據挖掘(privacy-preserving data mining)到文本數據挖掘(text mining)和Web挖掘(Web mining),再到社交媒體挖掘(social media mining)都是由應用推動的。工程性和集合性決定了數據挖掘研究內容和方向的廣泛性。其中,工程性使得整個研究過程里的不同步驟都屬於數據挖掘的研究范疇。而集合性使得數據挖掘有多種不同的功能,而如何將多種功能聯系和結合起來,從一定程度上影響了數據挖掘研究方法的發展。比如,20世紀90年代中期,數據挖掘的研究主要集中在關聯規則和時間序列模式的挖掘。到20世紀90年代末,研究人員開始研究基於關聯規則和時間序列模式的分類演算法(如classification based on association),將兩種不同的數據挖掘功能有機地結合起來。21世紀初,一個研究的熱點是半監督學習(semi-supervised learning)和半監督聚類(semi-supervised clustering),也是將分類和聚類這兩種功能有機結合起來。近年來的一些其他研究方向如子空間聚類(subspace clustering)(特徵抽取和聚類的結合)和圖分類(graph classification)(圖挖掘和分類的結合)也是將多種功能聯系和結合在一起。最後,交叉性導致了研究思路和方法設計的多樣化。
前面提到的是數據挖掘的特性對研究發展及研究方法的影響,另外,數據挖掘的這些特性對如何學習和掌握數據挖掘提出了指導性的意見,對培養研究生、本科生均有一些指導意見,如應用性在指導數據挖掘時,應熟悉應用的業務和需求,需求才是數據挖掘的目的,業務和演算法、技術的緊密結合非常重要,了解業務、把握需求才能有針對性地對數據進行分析,挖掘其價值。因此,在實際應用中需要的是一種既懂業務,又懂數據挖掘演算法的人才。工程性決定了要掌握數據挖掘需有一定的工程能力,一個好的數據額挖掘人員首先是一名工程師,有很強大的處理大規模數據和開發原型系統的能力,這相當於在培養數據挖掘工程師時,對數據的處理能力和編程能力很重要。集合性使得在具體應用數據挖掘時,要做好底層不同功能和多種演算法積累。交叉性決定了在學習數據挖掘時要主動了解和學習相關領域的思想和技術。
因此,這些特性均是數據挖掘的特點,通過這四個特性可總結和學習數據挖掘。
二、大數據的特徵
大數據(bigdata)一詞經常被用以描述和指代信息爆炸時代產生的海量信息。研究大數據的意義在於發現和理解信息內容及信息與信息之間的聯系。研究大數據首先要理清和了解大數據的特點及基本概念,進而理解和認識大數據。
研究大數據首先要理解大數據的特徵和基本概念。業界普遍認為,大數據具有標準的「4V」特徵:
1.Volume(大量):數據體量巨大,從TB級別躍升到PB級別。
2.Variety(多樣):數據類型繁多,如網路日誌、視頻、圖片、地理位置信息等。
3.Velocity(高速):處理速度快,實時分析,這也是和傳統的數據挖掘技術有著本質的不同。
4.Value(價值):價值密度低,蘊含有效價值高,合理利用低密度價值的數據並對其進行正確、准確的分析,將會帶來巨大的商業和社會價值。
上述「4V」特點描述了大數據與以往部分抽樣的「小數據」的主要區別。然而,實踐是大數據的最終價值體現的唯一途徑。從實際應用和大數據處理的復雜性看,大數據還具有如下新的「4V」特點:
5.Variability(變化):在不同的場景、不同的研究目標下數據的結構和意義可能會發生變化,因此,在實際研究中要考慮具體的上下文場景(Context)。
6.Veracity(真實性):獲取真實、可靠的數據是保證分析結果准確、有效的前提。只有真實而准確的數據才能獲取真正有意義的結果。
7.Volatility(波動性)/Variance(差異):由於數據本身含有噪音及分析流程的不規范性,導致採用不同的演算法或不同分析過程與手段會得到不穩定的分析結果。
8.Visualization(可視化):在大數據環境下,通過數據可視化可以更加直觀地闡釋數據的意義,幫助理解數據,解釋結果。
綜上所述,以上「8V」特徵在大數據分析與數據挖掘中具有很強的指導意義。
三、大數據時代下的數據挖掘
在大數據時代,數據挖掘需考慮以下四個問題:
大數據挖掘的核心和本質是應用、演算法、數據和平台4個要素的有機結合。
因為數據挖掘是應用驅動的,來源於實踐,海量數據產生於應用之中。需用具體的應用數據作為驅動,以演算法、工具和平台作為支撐,最終將發現的知識和信息應用到實踐中去,從而提供量化的、合理的、可行的、且能產生巨大價值的信息。
挖掘大數據中隱含的有用信息需設計和開發相應的數據挖掘和學習演算法。演算法的設計和開發需以具體的應用數據作為驅動,同時在實際問題中得到應用和驗證,而演算法的實現和應用需要高效的處理平台,這個處理平台可以解決波動性問題。高效的處理平台需要有效分析海量數據,及時對多元數據進行集成,同時有力支持數據化對演算法及數據可視化的執行,並對數據分析的流程進行規范。
總之,應用、演算法、數據、平台這四個方面相結合的思想,是對大數據時代的數據挖掘理解與認識的綜合提煉,體現了大數據時代數據挖掘的本質與核心。這四個方面也是對相應研究方面的集成和架構,這四個架構具體從以下四個層面展開:
應用層(Application):關心的是數據的收集與演算法驗證,關鍵問題是理解與應用相關的語義和領域知識。
數據層(Data):數據的管理、存儲、訪問與安全,關心的是如何進行高效的數據使用。
演算法層(Algorithm):主要是數據挖掘、機器學習、近似演算法等演算法的設計與實現。
平台層(Infrastructure):數據的訪問和計算,計算平台處理分布式大規模的數據。
綜上所述,數據挖掘的演算法分為多個層次,在不同的層面有不同的研究內容,可以看到目前在做數據挖掘時的主要研究方向,如利用數據融合技術預處理稀疏、異構、不確定、不完整以及多來源數據;挖掘復雜動態變化的數據;測試通過局部學習和模型融合所得到的全局知識,並反饋相關信息給預處理階段;對數據並行分布化,達到有效使用的目的。
四、大數據挖掘系統的開發
1.背景目標
大數據時代的來臨使得數據的規模和復雜性都出現爆炸式的增長,促使不同應用領域的數據分析人員利用數據挖掘技術對數據進行分析。在應用領域中,如醫療保健、高端製造、金融等,一個典型的數據挖掘任務往往需要復雜的子任務配置,整合多種不同類型的挖掘演算法以及在分布式計算環境中高效運行。因此,在大數據時代進行數據挖掘應用的一個當務之急是要開發和建立計算平台和工具,支持應用領域的數據分析人員能夠有效地執行數據分析任務。
之前提到一個數據挖掘有多種任務、多種功能及不同的挖掘演算法,同時,需要一個高效的平台。因此,大數據時代的數據挖掘和應用的當務之急,便是開發和建立計算平台和工具,支持應用領域的數據分析人員能夠有效地執行數據分析任務。
2.相關產品
現有的數據挖掘工具
有Weka、SPSS和SQLServer,它們提供了友好的界面,方便用戶進行分析,然而這些工具並不適合進行大規模的數據分析,同時,在使用這些工具時用戶很難添加新的演算法程序。
流行的數據挖掘演算法庫
如Mahout、MLC++和MILK,這些演算法庫提供了大量的數據挖掘演算法。但這些演算法庫需要有高級編程技能才能進行任務配置和演算法集成。
最近出現的一些集成的數據挖掘產品
如Radoop和BC-PDM,它們提供友好的用戶界面來快速配置數據挖掘任務。但這些產品是基於Hadoop框架的,對非Hadoop演算法程序的支持非常有限。沒有明確地解決在多用戶和多任務情況下的資源分配。
3.FIU-Miner
為解決現有工具和產品在大數據挖掘中的局限性,我們團隊開發了一個新的平台——FIU-Miner,它代表了A Fast,Integrated,and User-Friendly System for Data Miningin Distributed Environment。它是一個用戶友好並支持在分布式環境中進行高效率計算和快速集成的數據挖掘系統。與現有數據挖掘平台相比,FIU-Miner提供了一組新的功能,能夠幫助數據分析人員方便並有效地開展各項復雜的數據挖掘任務。
與傳統的數據挖掘平台相比,它提供了一些新的功能,主要有以下幾個方面:
A.用戶友好、人性化、快速的數據挖掘任務配置。基於「軟體即服務」這一模式,FIU-Miner隱藏了與數據分析任務無關的低端細節。通過FIU-Miner提供的人性化用戶界面,用戶可以通過將現有演算法直接組裝成工作流,輕松完成一個復雜數據挖掘問題的任務配置,而不需要編寫任何代碼。
B.靈活的多語言程序集成。允許用戶將目前最先進的數據挖掘演算法直接導入系統演算法庫中,以此對分析工具集合進行擴充和管理。同時,由於FIU-Miner能夠正確地將任務分配到有合適運行環境的計算節點上,所以對這些導入的演算法沒有實現語言的限制。
C.異構環境中有效的資源管理。FIU-Miner支持在異構的計算環境中(包括圖形工作站、單個計算機、和伺服器等)運行數據挖掘任務。FIU-Miner綜合考慮各種因素(包括演算法實現、伺服器負載平衡和數據位置)來優化計算資源的利用率。
D.有效的程序調度和執行。
應用架構上包括用戶界面層、任務和系統管理層、邏輯資源層、異構的物理資源層。這種分層架構充分考慮了海量數據的分布式存儲、不同數據挖掘演算法的集成、多重任務的配置及系統用戶的交付功能。一個典型的數據挖掘任務在應用之中需要復雜的主任務配置,整合多種不同類型的挖掘演算法。因此,開發和建立這樣的計算平台和工具,支持應用領域的數據分析人員進行有效的分析是大數據挖掘中的一個重要任務。
FIU-Miner系統用在了不同方面:如高端製造業、倉庫智能管理、空間數據處理等,TerraFly GeoCloud是建立在TerraFly系統之上的、支持多種在線空間數據分析的一個平台。提供了一種類SQL語句的空間數據查詢與挖掘語言MapQL。它不但支持類SQL語句,更重要的是可根據用戶的不同要求,進行空間數據挖掘,渲染和畫圖查詢得到空間數據。通過構建空間數據分析的工作流來優化分析流程,提高分析效率。
製造業是指大規模地把原材料加工成成品的工業生產過程。高端製造業是指製造業中新出現的具有高技術含量、高附加值、強競爭力的產業。典型的高端製造業包括電子半導體生產、精密儀器製造、生物制葯等。這些製造領域往往涉及嚴密的工程設計、復雜的裝配生產線、大量的控制加工設備與工藝參數、精確的過程式控制制和材料的嚴格規范。產量和品質極大地依賴流程管控和優化決策。因此,製造企業不遺餘力地採用各種措施優化生產流程、調優控制參數、提高產品品質和產量,從而提高企業的競爭力。
在空間數據處理方面,TerraFly GeoCloud對多種在線空間數據分析。對傳統數據分析而言,其難點在於MapQL語句比較難寫,任務之間的關系比較復雜,順序執行之間空間數據分許效率較低。而FIU-Miner可有效解決以上三個難點。
總結而言,大數據的復雜特徵對數據挖掘在理論和演算法研究方面提出了新的要求和挑戰。大數據是現象,核心是挖掘數據中蘊含的潛在信息,並使它們發揮價值。數據挖掘是理論技術和實際應用的完美結合。數據挖掘是理論和實踐相結合的一個例子。

4. 大數據分析領域有哪些分析模型

數據角度的模型一般指的是統計或數據挖掘、機器學習、人工智慧等類型的模型,是純粹從科學角度出發定義的。
1. 降維
在面對海量數據或大數據進行數據挖掘時,通常會面臨「維度災難」,原因是數據集的維度可以不斷增加直至無窮多,但計算機的處理能力和速度卻是有限的;另外,數據集的大量維度之間可能存在共線性的關系,這會直接導致學習模型的健壯性不夠,甚至很多時候演算法結果會失效。因此,我們需要降低維度數量並降低維度間共線性影響。
數據降維也被成為數據歸約或數據約減,其目的是減少參與數據計算和建模維度的數量。數據降維的思路有兩類:一類是基於特徵選擇的降維,一類是是基於維度轉換的降維。
2. 回歸
回歸是研究自變數x對因變數y影響的一種數據分析方法。最簡單的回歸模型是一元線性回歸(只包括一個自變數和一個因變數,且二者的關系可用一條直線近似表示),可以表示為Y=β0+β1x+ε,其中Y為因變數,x為自變數,β1為影響系數,β0為截距,ε為隨機誤差。
回歸分析按照自變數的個數分為一元回歸模型和多元回歸模型;按照影響是否線性分為線性回歸和非線性回歸。
3. 聚類
聚類是數據挖掘和計算中的基本任務,聚類是將大量數據集中具有「相似」特徵的數據點劃分為統一類別,並最終生成多個類的方法。聚類分析的基本思想是「物以類聚、人以群分」,因此大量的數據集中必然存在相似的數據點,基於這個假設就可以將數據區分出來,並發現每個數據集(分類)的特徵。
4. 分類
分類演算法通過對已知類別訓練集的計算和分析,從中發現類別規則,以此預測新數據的類別的一類演算法。分類演算法是解決分類問題的方法,是數據挖掘、機器學習和模式識別中一個重要的研究領域。
5. 關聯
關聯規則學習通過尋找最能夠解釋數據變數之間關系的規則,來找出大量多元數據集中有用的關聯規則,它是從大量數據中發現多種數據之間關系的一種方法,另外,它還可以基於時間序列對多種數據間的關系進行挖掘。關聯分析的典型案例是「啤酒和尿布」的捆綁銷售,即買了尿布的用戶還會一起買啤酒。
6. 時間序列
時間序列是用來研究數據隨時間變化趨勢而變化的一類演算法,它是一種常用的回歸預測方法。它的原理是事物的連續性,所謂連續性是指客觀事物的發展具有合乎規律的連續性,事物發展是按照它本身固有的規律進行的。在一定條件下,只要規律賴以發生作用的條件不產生質的變化,則事物的基本發展趨勢在未來就還會延續下去。
7. 異常檢測
大多數數據挖掘或數據工作中,異常值都會在數據的預處理過程中被認為是「噪音」而剔除,以避免其對總體數據評估和分析挖掘的影響。但某些情況下,如果數據工作的目標就是圍繞異常值,那麼這些異常值會成為數據工作的焦點。
數據集中的異常數據通常被成為異常點、離群點或孤立點等,典型特徵是這些數據的特徵或規則與大多數數據不一致,呈現出「異常」的特點,而檢測這些數據的方法被稱為異常檢測。
8. 協同過濾
協同過濾(Collaborative Filtering,CF))是利用集體智慧的一個典型方法,常被用於分辨特定對象(通常是人)可能感興趣的項目(項目可能是商品、資訊、書籍、音樂、帖子等),這些感興趣的內容來源於其他類似人群的興趣和愛好,然後被作為推薦內容推薦給特定對象。
9. 主題模型
主題模型(Topic Model),是提煉出文字中隱含主題的一種建模方法。在統計學中,主題就是詞彙表或特定詞語的詞語概率分布模型。所謂主題,是文字(文章、話語、句子)所表達的中心思想或核心概念。
10. 路徑、漏斗、歸因模型
路徑分析、漏斗分析、歸因分析和熱力圖分析原本是網站數據分析的常用分析方法,但隨著認知計算、機器學習、深度學習等方法的應用,原本很難衡量的線下用戶行為正在被識別、分析、關聯、打通,使得這些方法也可以應用到線下客戶行為和轉化分析。

5. 遙感圖像分類法

利用計算機進行遙感信息的自動提取則必須使用數字圖像,由於地物在同一波段、同一地物在不同波段都具有不同的波譜特徵,通羨毀過對某種地物在各波段的波譜曲線進行分析橋派汪,根據其特點進行相應的增強處理後,可以在遙感影像上識別並提取同類目標物。早期的自動分類和圖像分割主要是基於光譜特徵,後來發展為結合光譜特徵、紋理特徵、形狀特徵、空間關系特徵等綜合因素的計算機信息提取。

常用的信息提取方法是遙感影像計算機自動分類。首先,對遙感影像室內預判讀,然後進行野外調查,旨在建立各種類型的地物與影像特徵之間的對應關系並對室內預判結果進行驗證。工作轉入室內後,選擇訓練樣本並對其進行統計分析,用適當的分類器對遙感數據分類,對分類結果進行後處理,最後進行精度評價。遙感影像的分類一般是基於地物光譜特徵、地物形狀特徵、空間關系特徵等方面特徵,目前大多數研究還是基於地物光譜特徵。

在計算機分類之前,往往要做些預處理,如校正、增強、濾波等,以突出目標物特徵或消除同一類型目標的不同部位因照射條件不同、地形變化、掃描觀測角的不同而造成的亮度差異等。

利用遙感圖像進行分類,就是對單個像元或比較勻質的像元組給出對應其特徵的名稱,其原理是利用圖像識別技術實現對遙感圖像的自動分類。計算機用以識別和分類的主要標志是物體的光譜特性,圖像上的其它信息如大小、形狀、紋理等標志尚未充分利用。

計算機圖像分類方法,常見的有兩種,即監督分類和非監督分類。監督分類,首先要從欲分類的圖像區域中選定一些訓練樣區,在這樣訓練區中地物的類別是已知的,用它建立分類標准,然後計算機將按同樣的標准對整個圖像進行識別和分類。它是一種由已知樣本,外推未知區域類別的方法;非監督分類是一種無先驗(已知)類別標準的分類方法。對於待研究的對象和區域,沒有已知類別或訓練樣本作標准,而是利用圖像數據本身能在特徵測量空間中聚集成群的特點,先形成各個數據集,然後再核對這些數據集所代表的物體類別。

與監督分類相比,非監督分類具有下列優點:不需要對被研究的地區有事先的了解,對分類的結果與精度要求相同的條件下,在時間和成本上較為節省,但實際上,非監督分類不如監督分類的精度高,所以監督分類使用的更為廣泛。

細小地物在影像上有規律地重復出現,它反映了色調變化的頻率,紋理形式很多,包括點、斑、格、壠、柵。在這些形式的基礎上根據粗細、疏密、寬窄、長短、直斜和隱顯等條件還可再細分為更多的類型。每種類型的地物在影像上都有本身的紋理圖案,因此,可以從影像的這一特徵識別地物。紋理反映的是亮度(灰度)的空間變化情況,有三個主要標志:某種局部的序列性在比該序列更大的區域內不斷重復;序列由基本部分非隨機排列組成;各部分大致都是均勻的統一體,在紋理區域內的任何地方都有大致相同的結構尺寸。這個序列的基本部分通常稱為紋理基元。因此可以認為紋理是由基元按某種確定性的規律或統計性的規律排列組成的,前者稱為確定性紋理(如人工紋理),後者呈隨機性紋理(或自然紋理)。對紋理的描述可通過紋理的粗細度、平滑性、顆粒性、隨機性、方向性、直線性、周期性、重復性等這些定性或定量的概念特徵來表徵。

相應的眾多紋理特徵提取演算法也可歸納為兩大類,即結構法和統計法。結構法把紋理視為由基本紋理元按特定的排列規則構成的周期性重復模式,因此常採用基敏仔於傳統的Fourier頻譜分析方法以確定紋理元及其排列規律。此外結構元統計法和文法紋理分析也是常用的提取方法。結構法在提取自然景觀中不規則紋理時就遇到困難,這些紋理很難通過紋理元的重復出現來表示,而且紋理元的抽取和排列規則的表達本身就是一個極其困難的問題。在遙感影像中紋理絕大部分屬隨機性,服從統計分布,一般採用統計法紋理分析。目前用得比較多的方法包括:共生矩陣法、分形維方法、馬爾可夫隨機場方法等。共生矩陣是一比較傳統的紋理描述方法,它可從多個側面描述影像紋理特徵。

圖像分割就是指把圖像分成各具特性的區域並提取出感興趣目標的技術和過程,此處特性可以是像素的灰度、顏色、紋理等預先定義的目標可以對應單個區域,也可以對應多個區域。

圖像分割是由圖像處理到圖像分析的關鍵步驟,在圖像工程中占據重要的位置。一方面,它是目標表達的基礎,對特徵測量有重要的影響;另一方面,因為圖像分割及其基於分割的目標表達、特徵抽取和參數測量的將原始圖像轉化為更抽象更緊湊的形式,使得更高層的圖像分析和理解成為可能。

圖像分割是圖像理解的基礎,而在理論上圖像分割又依賴圖像理解,彼此是緊密關聯的。圖像分割在一般意義下是十分困難的問題,目前的圖像分割一般作為圖像的前期處理階段,是針對分割對象的技術,是與問題相關的,如最常用到的利用閾值化處理進行的圖像分割。

圖像分割有三種不同的途徑,其一是將各象素劃歸到相應物體或區域的象素聚類方法即區域法,其二是通過直接確定區域間的邊界來實現分割的邊界方法,其三是首先檢測邊緣象素再將邊緣象素連接起來構成邊界形成分割。

閾值是在分割時作為區分物體與背景象素的門限,大於或等於閾值的象素屬於物體,而其它屬於背景。這種方法對於在物體與背景之間存在明顯差別(對比)的景物分割十分有效。實際上,在任何實際應用的圖像處理系統中,都要用到閾值化技術。為了有效地分割物體與背景,人們發展了各種各樣的閾值處理技術,包括全局閾值、自適應閾值、最佳閾值等等。

當物體與背景有明顯對比度時,物體的邊界處於圖像梯度最高的點上,通過跟蹤圖像中具有最高梯度的點的方式獲得物體的邊界,可以實現圖像分割。這種方法容易受到雜訊的影響而偏離物體邊界,通常需要在跟蹤前對梯度圖像進行平滑等處理,再採用邊界搜索跟蹤演算法來實現。

為了獲得圖像的邊緣人們提出了多種邊緣檢測方法,如Sobel,Cannyedge,LoG。在邊緣圖像的基礎上,需要通過平滑、形態學等處理去除雜訊點、毛刺、空洞等不需要的部分,再通過細化、邊緣連接和跟蹤等方法獲得物體的輪廓邊界。

對於圖像中某些符合參數模型的主導特徵,如直線、圓、橢圓等,可以通過對其參數進行聚類的方法,抽取相應的特徵。

區域增長方法是根據同一物體區域內象素的相似性質來聚集象素點的方法,從初始區域(如小鄰域或甚至於每個象素)開始,將相鄰的具有同樣性質的象素或其它區域歸並到目前的區域中從而逐步增長區域,直至沒有可以歸並的點或其它小區域為止。區域內象素的相似性度量可以包括平均灰度值、紋理、顏色等信息。

區域增長方法是一種比較普遍的方法,在沒有先驗知識可以利用時,可以取得最佳的性能,可以用來分割比較復雜的圖像,如自然景物。但是,區域增長方法是一種迭代的方法,空間和時間開銷都比較大。

基於像素級別的信息提取以單個像素為單位,過於著眼於局部而忽略了附近整片圖斑的幾何結構情況,從而嚴重製約了信息提取的精度,而面向對象的遙感信息提取,綜合考慮了光譜統計特徵、形狀、大小、紋理、相鄰關系等一系列因素,因而具有更高精度的分類結果。面向對象的遙感影像分析技術進行影像的分類和信息提取的方法如下:

首先對圖像數據進行影像分割,從二維化了的圖像信息陣列中恢復出圖像所反映的景觀場景中的目標地物的空間形狀及組合方式。影像的最小單元不再是單個的像素,而是一個個對象,後續的影像分析和處理也都基於對象進行。

然後採用決策支持的模糊分類演算法,並不簡單地將每個對象簡單地分到某一類,而是給出每個對象隸屬於某一類的概率,便於用戶根據實際情況進行調整,同時,也可以按照最大概率產生確定分類結果。在建立專家決策支持系統時,建立不同尺度的分類層次,在每一層次上分別定義對象的光譜特徵、形狀特徵、紋理特徵和相鄰關系特徵。其中,光譜特徵包括均值、方差、灰度比值;形狀特徵包括面積、長度、寬度、邊界長度、長寬比、形狀因子、密度、主方向、對稱性,位置,對於線狀地物包括線長、線寬、線長寬比、曲率、曲率與長度之比等,對於面狀地物包括面積、周長、緊湊度、多邊形邊數、各邊長度的方差、各邊的平均長度、最長邊的長度;紋理特徵包括對象方差、面積、密度、對稱性、主方向的均值和方差等。通過定義多種特徵並指定不同權重,建立分類標准,然後對影像分類。分類時先在大尺度上分出"父類",再根據實際需要對感興趣的地物在小尺度上定義特徵,分出"子類"。

閱讀全文

與分類演算法背景相關的資料

熱點內容
mysql命令行版本 瀏覽:301
如何進入itunes找文件夾 瀏覽:830
CAD中重復命令使用 瀏覽:477
心智pdf 瀏覽:473
網站電台直播間源碼 瀏覽:850
文件夾14c和18c的區別 瀏覽:34
android隱式調用 瀏覽:667
plc的編程指令邊沿繼電器 瀏覽:721
voc文件夾 瀏覽:862
租廣東聯通伺服器注意什麼雲空間 瀏覽:932
javascript高級程序設計pdf 瀏覽:289
pwm單片機原理 瀏覽:346
ai演算法在線修復圖片 瀏覽:979
scratch編程中如何做射擊游戲 瀏覽:476
at89c51編程器 瀏覽:341
項目經理叫醒程序員 瀏覽:342
autocad旋轉命令 瀏覽:660
手機版wpsoffice怎麼打包文件夾 瀏覽:579
在成都學車用什麼app 瀏覽:818
grep命令管道 瀏覽:426