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
主站蜘蛛池模板: 亚洲首页在线观看| 国产日韩欧美在线视频免费观看| 日本国产精品| 日本久久网站| 亚洲丝袜第一页| 午夜少妇精品视频小电影| 亚洲高清资源| 国产色伊人| 国产激爽大片高清在线观看| 幺女国产一级毛片| 国产日韩精品一区在线不卡| 国产精品漂亮美女在线观看| 国产在线麻豆波多野结衣| 国产日韩久久久久无码精品| 99久久精品免费观看国产| 激情爆乳一区二区| 午夜啪啪网| 午夜人性色福利无码视频在线观看| 日韩欧美国产综合| 国产在线91在线电影| 天天色综合4| 福利视频99| 日韩中文字幕免费在线观看| 精品伊人久久久久7777人| 国产sm重味一区二区三区 | 免费人成网站在线观看欧美| 日本午夜视频在线观看| 久久久黄色片| 欧美综合成人| 色135综合网| 亚洲男女天堂| 色婷婷在线播放| 日韩高清成人| 国产高潮流白浆视频| 美女高潮全身流白浆福利区| 特级欧美视频aaaaaa| 欧美午夜性视频| 日韩a级毛片| 2020亚洲精品无码| 成人亚洲天堂| 久久精品娱乐亚洲领先| 日韩av无码精品专区| 视频二区欧美| 在线看片中文字幕| 欧美一区中文字幕| 亚洲欧美一区二区三区图片 | 99国产在线视频| 久久永久视频| 无码专区在线观看| 亚洲成人精品在线| 亚洲美女一级毛片| 国产一线在线| 国产精品19p| 自拍偷拍欧美| 福利视频一区| 亚洲欧洲自拍拍偷午夜色| 国产伦片中文免费观看| 国产毛片片精品天天看视频| 久久国产精品国产自线拍| 午夜电影在线观看国产1区| 国产主播在线一区| 国产在线欧美| 国产女人18毛片水真多1| 亚洲天堂网在线播放| 中文字幕在线免费看| 国产在线观看91精品亚瑟| 日韩福利视频导航| 8090成人午夜精品| 色屁屁一区二区三区视频国产| 国产在线无码一区二区三区| 国产成人区在线观看视频| 亚洲小视频网站| 久久综合国产乱子免费| 91福利在线观看视频| 久久国产精品电影| 久久婷婷六月| 动漫精品啪啪一区二区三区| 欧美一道本| 无码aⅴ精品一区二区三区| 久久不卡国产精品无码| 亚洲最大综合网| 亚洲伊人天堂|