999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于VB與MatrixVB的模糊C均值方法實現

2009-05-12 03:14:34李茂寬王偉華
現代電子技術 2009年2期
關鍵詞:模式識別

劉 超 李茂寬 王偉華

摘 要:針對Visual Basic數值計算能力和圖像處理能力的不足,不利于系統開發,介紹了模糊C均值法的原理及其基于VB和MatrixVB的實現;該方法將Matlab的強大計算功能與VB的Windows用戶界面開發方面優勢結合起來,充分發揮各自優勢,縮短了軟件的開發周期。軟件測試結果表明,該計算方法正確,軟件界面友好,計算速度快,系統資源消耗少,操作簡便易行,能滿足數據分類的要求。

關鍵詞:Visual Basic;MatrixVB;模糊C均值;模式識別

中圖分類號:TQ15.9;TP311 文獻標識碼:B 文章編號:1004 373X(2009)02 102 02

Realization of Fuzzy C-Means Based on Visual Basic and MatrixVB

LIU Chao1,LI Maokuan2,WANG Weihua3

(1.PLA General Staff Meteorological and Hydrological Department,Beijing,100081,China;

2.Naval Aeronautical and Astronautical University,Yantai,264001,China;3.Unit 61828 of PLA,Kashi,844200,China)

Abstract:According to the situation that Visual Basic is insufficient in numerical computation,image processing ability and is weak in algorithm development.The theory of fuzzy C-means and the realization of fuzzy C-means by incorporating VBand MatrixVB are introduced.The incorporated advances of Matlab′s powerful calculation function and Visual Basic′s friendly graphic user interface shorten the period of software development by taking the advantages of both.It has been demonstrated by the instance that the calculating procedure is accurate.The software interface is friendly.Beside this,resource expenditure of computer is low and calculating speed is quick,the software is convenient to use.It can fulfill the data clustering problem well.

Keywords:Visual Basic;MatrixVB;fuzzy C-means;pattern recognition

0 引 言

聚類是將一組給定的未知類標號的樣本分成內在的多個類別,使得同一類中的樣本具有較高的相似度,而不同類中的樣本差別大。聚類分析的目的是揭示和刻畫數據的內在結構,其內容涉及統計學、生物學、以及機器學習等研究領域,并在模式識別、數據分析和挖掘、圖像處理等領域獲得了廣泛的應用[1]。模糊C均值(Fuzzy C-Means,FCM)算法是一種基于劃分的聚類算法,它的思想就是使得被劃分到同一類的對象之間相似度最大,而不同類之間的相似度最小。模糊C均值算法是普通C均值算法的改進,普通C均值算法對于數據的劃分是硬性的,而FCM則是一種柔性的模糊劃分。

目前大多數針對模式識別的軟件都是基于Matlab,模糊C均值就已經集成在Matlab語言中。Matlab是集數值分析、矩陣運算、信號處理和圖形顯示于一體的高性能數學軟件,但Matlab也存在其自身的局限性:一般基于Matlab的應用程序不能脫離Matlab集成環境工作,而且編寫界面的功能相對較弱,Matlab本身是一種解釋性的語言,運行速度非常慢,大大降低了程序的效率。因此,將Matlab與VB有效地集成在一起,實現應用系統的無縫集成,對于有效縮短開發周期,優化系統性能是十分有意義的。介紹用VB與MatrixVB的混編來實現模糊C均值聚類方法。

1 關于MatrixVB 的簡介

MatrixVB[2] 是Mathworks 公司針對VB 提供的一個Matlab 組件庫(Component Object Model Library) ,它提供了600 多個函數,包括基本的數學運算和功能強大的信號處理、線性代數、串運算及圖形圖像處理功能等,用來彌補VB 內建函數的不足,主要是針對數學函數而言,它具有Matlab繪圖的強大功能,讓VB 能很輕易地畫出一些數學函數圖形,為VB 提供了強大的功能擴展,讓程序員更容易地去開發計算應用方面的程序代碼。在VB中使用該數學工具包可以避免重復性勞動,可以減少開發人員實現算法和界面設計方面的困難。

2 模糊C均值原理及其實現

模糊C均值(FCM),是用隸屬度確定每個數據點屬于某個聚類的程度的一種聚類算法。由Bezdek[3]提出了該算法,作為早期硬C均值聚類(HCM)方法的一種改進。

FCM把n個向量x璱(i=1,2,…,n)分為c個模糊組,并求每組的聚類中心,使得非相似性指標的價值函數達到最小。FCM與HCM的主要區別在于FCM用模糊劃分,使得每個給定數據點用值在[0,1]間的隸屬度來確定其屬于各個組的程度。與引入模糊劃分相適應,隸屬矩陣U允許有取值在[0,1]間的元素。不過,加上歸一化規定,一個數據集的隸屬度和總等于1:

∑ci=1u璱j=1,衘=1,2,…,n(1)

則FCM的價值函數(或目標函數)就是一般化形式:

J(U,c1,c2,…,c璫)=∑ci=1J璱=∑ci=1∑njum璱jd2璱j(2)

式中,c璱為模糊組i的聚類中心;d璱j=||c璱-x璲||為第i個聚類中心與第j個數據點間的歐幾里德距離;且m是一個加權指數。構造如下新的目標函數,可求得使式(2)達到最小值的必要條件:

(U,c1 ,c2,…,c璫 ,λ1,λ2,…,λ璶 )=

J(U,c1,c2,…,c璫 ) + ∑nj = 1λ璲 (∑ci = 1u璱j -1)=

∑ci = 1∑njum璱jd2璱j + ∑nj = 1(∑ci = 1u璱j -1)(3)

式中,λ璲,j=1,2,…,n是式(1)的n個約束式拉格朗日乘子。對所有輸入參量求導,使式(2)達到最小的必要條件為:

c璱=∑nj=1um璱jx璲/∑nj=1um璱j(4)

和:

u璱j=1/∑ck=1d璱jd璳kj2/(m-1)(5)

根據上述兩個必要條件,模糊C均值聚類算法是一個簡單的迭代過程。在批處理方式運行時,FCM用下列步驟確定聚類中心c璱和隸屬矩陣U :

步驟1 用值在0,1間的隨機數初始化隸屬矩陣U,使其滿足式(1)中的約束條件。

步驟 2 用式(4)計算c個聚類中心c璱,i=1,2,…,c。

步驟3 用式(2)計算價值函數。如果它小于某個確定的閾值,或它相對上次價值函數值的改變量小于某個閾值,則算法停止。

步驟4 用式(5)計算新的U矩陣。返回步驟2。

通過上面的討論,不難看出FCM算法需要兩個參數,一個是聚類數目C;另一個是參數m。以下利用VB和MatrixVB實現上述算法。首先讀入待分類的數據,數據分布如圖1所示,是200組二維數據。設置參數:將數據分為3類,初始化隸屬度矩陣U,m=2。程序如下所示:

Cluster_N = 3

data_N = 200

Data = vbload("c:\data.mat")‘讀入數據并顯示

ax = vbaxes(Form1.hWnd)

aa = Data(linspace(1,200,200),1)

bb = Data(linspace(1,200,200),2)

Call scatter(aa,bb,".")

U = randM(Cluster_N,data_N) ‘初始化隸屬矩陣

tmp = Sum(U)

tmp = mtimes(ones(Cluster_N,1),tmp)

U = rdivide(U,tmp)

dist = zeros(3,200) ‘初始距離矩陣

算法的輸出是C個聚類中心點向量和大小為C×N的一個模糊劃分矩陣,這個矩陣表示的是每個樣本點屬于每個類的隸屬度。根據這個劃分矩陣,按照模糊集合中的最大隸屬原則就能夠確定每個樣本點歸為哪個類。聚類中心表示的是每個類的平均特征,可以認為是這個類的代表點。以下是迭代求取聚類中心和隸屬度矩陣的程序:

mf = power(U,2)

center = rdivide(mtimes(mf,Data),

transpose(mtimes(ones(2,1),Sum(transpose(mf)))))

For j = 1 To 200

For i = 1 To 3

a1 = center(i,linspace(1,2,2))

a2 = Data(j,linspace(1,2,2))

dist(i,j) = Sum(power(minus(a1,a2),2))

Next i

Next j

obj_fuc = Sum(Sum(times(power(dist,2),mf)))

tmp = power(dist,-2)

U = rdivide(tmp,mtimes(ones(3,1),Sum(tmp)))

圖2是對未知類別的待分類數據進行模糊C均值聚類的最終結果,不同的圖形表示不同的類別。

圖1 待分類數據

圖2 分類后數據

3 結 語

在此介紹VB與MatrixVB混合編程的模糊C均值方法實現,程序在 Windows XPProfessional 版上用MatrixVB4.5和Visual Basic6.0中文版實現,具有效率高,占用系統資源少等優點。文中給出了部分基本代碼,可以根據自己的需要進行擴充,并應用于分類處理。這種編程方式既節省了時間,又提高了軟件的性能,對于優化系統,縮短軟件開發周期很有意義。

參考文獻

[1]邊肇祺,張學工.模式識別[M].2版.北京:清華大學出版社,2000.

[2]MathWorks.Inc.MatrixVB User′s Guide[Z].2000.

[3]Bezdek J C.Pattern Recognition with Objective Function Algorithms [M].New York:Plenum Press,1981.

[4]王躍強,王紀龍,王云才.VB 程序中實現調用Matlab 的方法[J].計算機應用,2002,2(21):95-96.

[5]何強,何英.Matlab 擴展編程[M].北京:清華大學出版社,2002.

[6]劉炳文.精通Visual Basic6.0中文版[M].北京:電子工業出版社,1999.

[7]黃錫泉.VB與Matlab 無縫接口編程[J].微計算機應用,2005,26(2):238-239.

[8]董樑,李光軍,賀仲雄.復雜系統的集對模式識別方法.現代電子技術,2007(2):68-70.

作者簡介 劉 超 男,1981年出生,山東青島人,碩士研究生。研究方向為計算機仿真。

李茂寬 男,1979年出生,山東即墨人,博士研究生。研究方向為圖像處理與模式識別。

王偉華 男,1974年出生,河南人。研究方向為計算機仿真。

猜你喜歡
模式識別
紫地榆HPLC指紋圖譜建立及模式識別
中成藥(2018年2期)2018-05-09 07:19:52
2019 IEEE計算機視覺與模式識別會議
UPLC-MS/MS法結合模式識別同時測定芪參益氣滴丸中11種成分
中成藥(2017年10期)2017-11-16 00:50:05
淺談模式識別在圖像識別中的應用
電子測試(2017年23期)2017-04-04 05:06:50
第四屆亞洲模式識別會議
基于可拓模式識別的孤島檢測研究
電測與儀表(2016年6期)2016-04-11 12:07:48
可拓模式識別算法中經典域的確定方法
第3屆亞洲模式識別會議
基于LLE降維和BP_Adaboost分類器的GIS局部放電模式識別
電氣設備的故障診斷與模式識別
河南科技(2014年5期)2014-02-27 14:08:35
主站蜘蛛池模板: 亚洲三级视频在线观看| 国产一级毛片在线| 久精品色妇丰满人妻| 日韩无码视频专区| 亚洲人成色77777在线观看| 国产成人三级在线观看视频| 一区二区三区在线不卡免费| 婷婷六月在线| 亚洲欧美色中文字幕| a毛片免费在线观看| 91久久国产成人免费观看| 国产精品林美惠子在线播放| 一级黄色片网| 国产成人精品无码一区二 | 国产视频自拍一区| 欧美一区福利| 青草免费在线观看| 国产精品欧美激情| 青草视频免费在线观看| 一本色道久久88亚洲综合| 亚洲色婷婷一区二区| 午夜视频日本| av在线5g无码天天| 一本大道东京热无码av| 欧美综合区自拍亚洲综合绿色 | 亚洲第一成年网| 久久人妻xunleige无码| 久久 午夜福利 张柏芝| 黄色福利在线| 欧美无遮挡国产欧美另类| 免费观看无遮挡www的小视频| 欧美日韩中文国产| 亚洲国产成熟视频在线多多| 国产黑丝一区| 国产欧美专区在线观看| 国产SUV精品一区二区| 91热爆在线| 激情爆乳一区二区| 91尤物国产尤物福利在线| 国产久草视频| 久久国产成人精品国产成人亚洲| 国产福利一区在线| 乱人伦99久久| 在线高清亚洲精品二区| 啪啪永久免费av| 亚洲人成影视在线观看| 亚洲伊人电影| 国产好痛疼轻点好爽的视频| 国产精品大尺度尺度视频| 成人国产免费| 黄色污网站在线观看| 亚洲中文精品人人永久免费| 欧美日本在线观看| 国产大片喷水在线在线视频| 综合天天色| 久久久久青草线综合超碰| 成人国产三级在线播放| 日韩高清在线观看不卡一区二区| 亚洲欧美自拍一区| 国产网站免费看| 日韩av电影一区二区三区四区| 在线国产你懂的| 国产微拍精品| av性天堂网| 久久青草视频| 国产一线在线| 激情無極限的亚洲一区免费| av在线无码浏览| 日韩成人午夜| 欧美第一页在线| 狠狠操夜夜爽| 亚洲综合久久成人AV| 日本在线亚洲| 精品五夜婷香蕉国产线看观看| 91久久夜色精品国产网站| 欧美国产在线一区| 亚洲国产综合精品中文第一 | 亚洲香蕉在线| 久久精品欧美一区二区| 亚洲香蕉在线| 99热最新在线| 中文字幕va|