邵國強,介龍梅,蔣慶豐
(大慶師范學院計算機科學與信息技術學院,黑龍江大慶 163712)
貝葉斯方法在紅酒分類中的應用研究
邵國強,介龍梅,蔣慶豐
(大慶師范學院計算機科學與信息技術學院,黑龍江大慶163712)
闡述了貝葉斯方法的基本理論,討論了分類中存在的先驗概率等問題并給出了解決方案,貝葉斯方法適合在自動分類中應用。根據UCI網站提供的紅酒數據,對分類器的性能進行了實驗,結果達到了基本預期,在屬性關聯、屬性容量方面還需要做進一步研究。
貝葉斯方法;先驗概率;分類
分類是計算機自動化和智能化的基本概念,更進一步則是數據挖掘和機器學習領域的核心研究課題之一。目前,已有多種分類的學習算法模型,包括決策樹、神經網絡、K-最近鄰、支持向量機(SVM)和貝葉斯分類器等[1]。
分類在現實生活中的應用非常廣泛,如網絡安全中斷定某種行為是否安全,收到的一個郵件是垃圾郵件與否,根據水域情況考察某海域可能有哪些魚類,還有一篇新聞通過提取詞條自動歸類的問題[2]。
1)在某些領域,貝葉斯分類的性能與神經網絡、決策樹學習相當。
2)可以充分利用先驗知識及訓練樣本的數據特性。
3)改進后的貝葉斯分類器的通用性更佳,精度和效率更高。
假設樣本空間H為t維,含有n個向量,記其中某個向量為x=(x1,x2,…,xt),類別空間為C={C1,C2,…,Cm},則分類就是找到測試t維數據空間H’(其中H’與H同構)的向量x’對應類別空間中的某個值Ci,具體對應關系如圖1所示。
基于并不知道x’究竟屬于哪一類別,由此只能認定為P(Ck|x’)(k=1,2,…,m)中最大的值對應的類別(最可能的類別),亦即找出max{P(x’|Ck)?P(Ck)/P(x’)},k= 1,2,…,m。需要注意的是,當討論某一樣本x’時,P(x’)是相同的,即max{P(x’|Ck)?P(Ck)/P(x’)}∝max{P(x’| Ck)?P(Ck)}=max{P(x’,Ck)},其中P(x’|Ck)和P(Ck)是先驗概率。當屬性P1,P2,…,Pt相互獨立時,P(x’| Ck)?P(Ck)=∏P(Xi|Ck)?P(Ck)。

圖1 分類映射關系示意圖Fig.1 Sketch map of classification map
3.1實驗數據的獲取
1)UCI數據庫。任何分類器都需要一定的訓練數據,在UCI網站上提供了多種基于機器學習和數據挖掘的實驗數據以供研究和測試之用。
2)現實生活中提取。對某些行為的刻畫,如郵件分詞,根據某些詞條的出現頻率可以確定垃圾郵件的標準,網絡安全則需要對系統API的調用進行區分。
3.2現有類別不夠的問題
例如,根據化石年代、地點、特征等對古代人類進行分類,假定集合為{元謀人,周口店人,…,藍田人}(將集合映射為{C1,C2,…,Cm}),而測試向量不符合集合中任何分類,則定義Cm+1為“未知人類”或者“新人類”,由此不影響貝葉斯分類。
3.3先驗概率的獲取
從max{P(x’|Ck)?P(Ck)}可知,P(x’|Ck)?P(Ck)或者P(x’,Ck)是確定分類的核心問題。通常情況下,上述先驗知識并不是確定的和已知的,經常用近似值代替。
基于卡方擬合統計量可以得到如下近似值:


其中,Count(Ck)為Ck在樣本中出現的個數,Sk為樣本總數。其中,Count(x’,Ck)為x’與Ck在樣本中同時出現的個數,Count(Ck)的含義則同上。
至此,樸素貝葉斯分類的基本問題即已獲得了高效、完善的處理及解決實現。
3.4學習方法的改進
分類算法存在如下的預設性前提:1)樣本與實際分布相差不大。2)屬性間相互獨立。3)候選類別間互斥。為了使得樸素貝葉斯方法能夠具備更好的通用性,本次研究提出了如下幾方面改進:
1)加大樣本的數量[3]
由大數定律知,當樣本容量趨向于無窮大時,頻率趨向于概率,而且樣本的分布接近于總體的分布。
2)增量學習
增大樣本容量容易造成貝葉斯學習的速度較慢,如何能夠提升學習的速度和效率,可采用增量學習的方法。
3)加權學習[4]
通常情況下,貝葉斯分類器會認定每個屬性都是相等的貢獻,而實際上當樣本空間H中的t個屬性互有關聯的情況下,就需要為不同的屬性賦予相應的權值,進而可以根據P(Pi|Ck)求出P(x’|Ck)。
4.1實驗數據
UCI網站上提供了紅酒和白酒質量實驗數據,本文中選用的是紅酒數據,網站提供了4 898條記錄,其中前3 000條數據作為樣本數據,后1 898條數據作為測試數據。部分數據如圖2所示。

圖2 紅酒屬性與分類數據Fig.2 The basic data and properties of red wine
數據中總共包括非揮發性酸、揮發性酸、密度、酒精等11個屬性,結果為酒的質量,質量分為1~10十個等級。
1)通過quality列可以統計出P(Ck)。2)計算P(Pi|Ck)求出P(x’|Ck)。
3)將向量x’的分類設置概率最大的Ck。
綜上可得,分類對比結果如圖3所示。
4.2核心代碼
1)計算每一類別的個數


圖3 分類結果對比Fig.3 Comparison of the classification result
2)公有變量定義


4.3實驗結果與分析
quality列為真實的分類,而quality_c列是分類器算法得到的分類。對于1 898條測試數據,通過貝葉斯方法得到的預測分類與實際分類相同的數量為1 651,準確率為86.98%。對于屬性之間的關聯矩陣可以通過粗糙集等方法得到,增大樣本和屬性集合的容量也是提高分類算法結果的重要手段。
本文討論了基于貝葉斯分類器的重要理論,同時也進一步研究了分類的具體問題如樣本選擇、概率計算、假定空間設計和實驗數據獲取與驗證。利用UCI網站提供的紅酒分類數據,部分作為實驗數據,部分作為測試數據,通過對比,分類效果比較理想。未來,關于如何提高算法的精度仍有待后續的深入研究。
[1]孫笑微.貝葉斯分類技術在高校教師教學質量評價中的應用[J].沈陽師范大學學報(自然科學版),2014,32(1):98-102.
[2]崔雪森,唐峰華,張衡,等.基于樸素貝葉斯的西北太平洋柔魚漁場預報模型的建立[J].中國海洋大學學報(自然科學版),2015,45(2):37-43.
[3]張輪,楊文臣,劉拓,等.基于樸素貝葉斯分類的高速公路交通事件檢測[J].同濟大學學報(自然科學版),2014,42(4):558-563,595.
[4]李志義,沈之銳,義梅練.貝葉斯分類算法在社交網站信息過濾中的應用分析[J].圖書情報工作,2014,58(13):100-106.
The research on application of Bayesian method in red wine classification
SHAO Guoqiang,JIE Longmei,JIANG Qingfeng
(Computer science&Information technology college,Daqing Normal University,Daqing Heilongjiang 163712,China)
The paper introduces basic theory of Bayesian method.The problems,such as prior probability,which are associated with classification,are argued.The solutions for them are given too.The Bayesian method is fit for automated classification.According to the red wine data from UCI website,the performance of the classifier is tested.The result is nearly satisfied.The attribute-association and capacity will be researched in the future.
Bayesian method;prior probability;classification
TP305
A
2095-2163(2016)03-0029-03
2016-04-27
邵國強(1981-),男,碩士,講師,主要研究方向:數據庫應用、計算機網絡與通信、人工智能等。