版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、如文檔對(duì)你有用,請(qǐng)下載支持!HUNANUNIVERSITY人工智能實(shí)驗(yàn)報(bào)告題目實(shí)驗(yàn)三:分類算法實(shí)驗(yàn)學(xué)生姓名匿名學(xué)生學(xué)號(hào)02x專業(yè)班級(jí)智能科學(xué)與技術(shù)1302班指導(dǎo)老師袁進(jìn)一.實(shí)驗(yàn)?zāi)康? .了解樸素貝葉斯算法的基本原理;2 .能夠使用樸素貝葉斯算法對(duì)數(shù)據(jù)進(jìn)行分類3 .了解最小錯(cuò)誤概率貝葉斯分類器和最小風(fēng)險(xiǎn)概率貝葉斯分類器4 .學(xué)會(huì)對(duì)于分類器的性能評(píng)估方法二、實(shí)驗(yàn)的硬件、軟件平臺(tái)硬件:計(jì)算機(jī)軟件:操作系統(tǒng):WINDOWS10應(yīng)用軟件:C,Java或者M(jìn)atlab相關(guān)知識(shí)點(diǎn):貝葉斯定理:產(chǎn)(周日)表示事件B已經(jīng)發(fā)生的前提下,事件A發(fā)生的概率,叫做事件B發(fā)生下事件A的條件概率,其基本求解公式為:,貝葉斯
2、定理打通了從P(A|B)獲得P(B|A)的道路。'-直接給出貝葉斯定理:樸素貝葉斯分類是一種十分簡(jiǎn)單的分類算法,叫它樸素貝葉斯分類是因?yàn)檫@種方法的思想真的很樸素,樸素貝葉斯的思想基礎(chǔ)是這樣的:對(duì)于給出的待分類項(xiàng),求解在此項(xiàng)出現(xiàn)的條件下各個(gè)類別出現(xiàn)的概率,哪個(gè)最大,就認(rèn)為此待分類項(xiàng)屬于哪個(gè)類別。樸素貝葉斯分類的正式定義如下:1、設(shè)=V/為一個(gè)待分類項(xiàng),而每個(gè)a為x的一個(gè)特征屬性。如文檔對(duì)你有用,請(qǐng)下載支持!2、有類別集合。=也用小?物。3、計(jì)算尸(的.P(則吟,PWM04、如果尸(弊=msP®*P(則力/(五|0,則££躲。那么現(xiàn)在的關(guān)鍵就是如何計(jì)算第3步中
3、的各個(gè)條件概率。我們可以這么做:1、找到一個(gè)已知分類的待分類項(xiàng)集合,這個(gè)集合叫做訓(xùn)練樣本集。2、統(tǒng)計(jì)得到在各類別下各個(gè)特征屬性的條件概率估計(jì)。即p他加,尸班門產(chǎn)小帆;P®曬)尸豫)廣p&i|;;尸®加J網(wǎng)聞詼L3、如果各個(gè)特征屬性是條件獨(dú)立的,則根據(jù)貝葉斯定理有如下推導(dǎo):因?yàn)榉帜笇?duì)于所有類別為常數(shù),因?yàn)槲覀冎灰獙⒎肿幼畲蠡钥?。又因?yàn)楦魈卣鲗傩允菞l件獨(dú)立的,所以有:整個(gè)樸素貝葉斯分類分為三個(gè)階段:第一階段:準(zhǔn)備工作階段,這個(gè)階段的任務(wù)是為樸素貝葉斯分類做必要的準(zhǔn)備,主要工作是根據(jù)具體情況確定特征屬性,并對(duì)每個(gè)特征屬性進(jìn)行適當(dāng)劃分,然后由人工對(duì)一部分待分類項(xiàng)進(jìn)行分類,
4、形成訓(xùn)練樣本集合。這一階段的輸入是所有待分類數(shù)據(jù),輸出是特征屬性和訓(xùn)練樣本。這一階段是整個(gè)樸素貝葉斯分類中唯一需要人工完成的階段,其質(zhì)量對(duì)整個(gè)過程將有重要影響,分類器的質(zhì)量很大程度上由特征屬性、特征屬性劃分及訓(xùn)練樣本質(zhì)量決定。第二階段:分類器訓(xùn)練階段,這個(gè)階段的任務(wù)就是生成分類器,主要工作是計(jì)算每個(gè)類別在訓(xùn)練樣本中的出現(xiàn)頻率及每個(gè)特征屬性劃分對(duì)每個(gè)類別的條件概率估計(jì),并將結(jié)果記錄。其輸入是特征屬性和訓(xùn)練樣本,輸出是分類器。這一階段是機(jī)械性階段,根據(jù)前面討論的公式可以由程序自動(dòng)計(jì)算完成。第三階段:應(yīng)用階段。這個(gè)階段的任務(wù)是使用分類器對(duì)待分類項(xiàng)進(jìn)行分類,其輸入是分類器和待分類項(xiàng),輸出是待分類項(xiàng)與類
5、別的映射關(guān)系。這一階段也是機(jī)械性階段,由程序完成。三、實(shí)驗(yàn)內(nèi)容及步驟實(shí)驗(yàn)內(nèi)容:A.利用貝葉斯算法進(jìn)行數(shù)據(jù)分類操作,并統(tǒng)計(jì)其預(yù)測(cè)正確率,數(shù)據(jù)集:汽車評(píng)估數(shù)據(jù)集(learn作為學(xué)習(xí)集,test作為測(cè)試集合)B.隨機(jī)產(chǎn)生10000組正樣本和20000負(fù)樣本高斯分布的數(shù)據(jù)集合(維數(shù)設(shè)為二維),要求正樣本:均值為1;3,方差為20;02;負(fù)樣本:均值為10;20,方差為100;010.先驗(yàn)概率按樣本量設(shè)定為1/3和2/3.分別利用最小錯(cuò)誤概率貝葉斯分類器和最小風(fēng)險(xiǎn)概率貝葉斯分類器對(duì)其分類。(假設(shè)風(fēng)險(xiǎn)程度正樣本分錯(cuò)風(fēng)險(xiǎn)系數(shù)為0.6,負(fù)樣本分錯(cuò)風(fēng)險(xiǎn)為0.4,該設(shè)定僅用于最小風(fēng)險(xiǎn)分析)相關(guān)概念:如文檔對(duì)你有用
6、,請(qǐng)下載支持!1 .貝葉斯法則機(jī)器學(xué)習(xí)的任務(wù):在給定訓(xùn)練數(shù)據(jù)D時(shí),確定假設(shè)空間H中的最佳假設(shè)。最佳假設(shè):一種方法是把它定義為在給定數(shù)據(jù)D以及H中不同假設(shè)的先驗(yàn)概率的有關(guān)知識(shí)下的最可能假設(shè)。貝葉斯理論提供了一種計(jì)算假設(shè)概率的方法,基于假設(shè)的先驗(yàn)概率、給定假設(shè)下觀察到不同數(shù)據(jù)的概率以及觀察到的數(shù)據(jù)本身。2 .先驗(yàn)概率和后驗(yàn)概率用P(h)表示在沒有訓(xùn)練數(shù)據(jù)前假設(shè)h擁有的初始概率。P(h)被稱為h的先驗(yàn)概率。先驗(yàn)概率反映了關(guān)于h是一正確假設(shè)的機(jī)會(huì)的背景知識(shí)如果沒有這一先驗(yàn)知識(shí),可以簡(jiǎn)單地將每一候選假設(shè)賦予相同的先驗(yàn)概率。類似地,P(D)表示訓(xùn)練數(shù)據(jù)D的先驗(yàn)概率,P(D|h)表示假設(shè)h成立時(shí)D的概率。機(jī)
7、器學(xué)習(xí)中,我們關(guān)心的是P(h|D),即給定D時(shí)h的成立的概率,稱為h的后驗(yàn)概率。3 .貝葉斯公式貝葉斯公式提供了從先驗(yàn)概率P(h)、P(D)和P(D|h)計(jì)算后驗(yàn)概率P(h|D)的方法p(h|D尸P(D|H)*P(H)/P(D)P(h|D)隨著P(h)和P(D|h)的增長(zhǎng)而增長(zhǎng),隨著P(D)的增長(zhǎng)而減少,即如果D獨(dú)立于h時(shí)被觀察到的可能性越大,那么D對(duì)h的支持度越小。4 .極大后驗(yàn)假設(shè)學(xué)習(xí)器在候選假設(shè)集合H中尋找給定數(shù)據(jù)D時(shí)可能性最大的假設(shè)h,h被稱為極大后驗(yàn)假設(shè)(MAP確定MAPW方法是用貝葉斯公式計(jì)算每個(gè)候選假設(shè)的后驗(yàn)概率,計(jì)算式如下:h_map=argmaxP(h|D)=argmax(P
8、(D|h)*P(h)/P(D)=argmaxP(D|h)*p(h)(h屬于集合H)C.編寫一個(gè)貝葉斯分類器。輸入為:均指向量、先驗(yàn)概率、協(xié)方差矩陣、輸入學(xué)習(xí)數(shù)據(jù)X,測(cè)試數(shù)據(jù)類別XLABEL測(cè)試數(shù)據(jù)Y.輸出為Y對(duì)應(yīng)的類別。(選做)。四、實(shí)驗(yàn)步驟:1 .仔細(xì)閱讀并了解實(shí)驗(yàn)數(shù)據(jù)集;2 .使用任何一種熟悉的計(jì)算機(jī)語(yǔ)言(比如C,Java或者matlab)實(shí)現(xiàn)樸素貝葉斯算法;3 .利用樸素貝葉斯算法在訓(xùn)練數(shù)據(jù)上學(xué)習(xí)分類器,訓(xùn)練數(shù)據(jù)的大小分別設(shè)置為:前100個(gè)數(shù)據(jù),前200個(gè)數(shù)據(jù),前500個(gè)數(shù)據(jù),前700個(gè)數(shù)據(jù),前1000個(gè)數(shù)據(jù),前1350t數(shù)據(jù);4 .利用測(cè)試數(shù)據(jù)對(duì)學(xué)習(xí)的分類器進(jìn)行性能評(píng)估;5 .統(tǒng)計(jì)分析
9、實(shí)驗(yàn)結(jié)果并上交實(shí)驗(yàn)報(bào)告;A源代碼:packageBayes;importimportimportimportimportimportimportimportpublic class NaiveBayesTool /*中明全局變量/前面是自己的屬性,后面是value的屬性*/int testTotal = 0; / 訓(xùn)練樣本數(shù)量int predictTotal = 0; / 測(cè)試樣本的數(shù)據(jù)int predictSucess = 0; / 預(yù)測(cè)成功的數(shù)量/存儲(chǔ)數(shù)量public int buy=new int 44; /vhigh,high,med,lowpublicintpublicintpubl
10、icintmaint =new int 44; /vhigh,high,med,low door =new int 44;/2,3,4,5moreperson =new int 34;/2,4,morepublic int public int lug_boot =new int 34; /small ,med,big safe =new int 34; /low,med,highpublic int 口 ClassValues =new int 4; /unacc,acc, good,vgoodString口ClassValueName = "unacc" , "
11、;acc" , "good" , "vgood" ;/存儲(chǔ)概率float 口 ClassValue_gl = new float 4; / unacc-0 acc-1_good-2 vgood-3float buy_Vlaue_gl= new float 44;/ 前面是自己的屬性,后面是 value 的屬性float maint_Value_gl = new float 44;float door_Value_gl = new float 44;float person_Value_gl = new float 34;float lugboo
12、t_Value_gl = new float 34;float safe_Value_gl = new float 34;/* 主函數(shù)*/public static void main(Stringargs ) throws lOException NaiveBayesTool NBayes=new NaiveBayesTool();NBayes.ReadFile( "learn.txt" ); / 獲取訓(xùn)練樣本NBayes.Calculated_probability();/ 計(jì)算概率NBayes.TestData(); /導(dǎo)入測(cè)試樣本數(shù)據(jù)NBayes.show(); /
13、 輸出結(jié)果 /*汽車屬性類 * */public class Property 汽車有6個(gè)屬性,每個(gè)屬性都有幾種類別,根據(jù)這 6個(gè)屬性來(lái)判斷汽 車的性價(jià)比Classvalue如彳可,publicStringbuying ; /vhigh,high,med,lowpublic String public String public String public String public Stringmaint;/vhigh,high,med,lowdoors;/2,3,4,5morepersons;/2,4,morelug_boot;/small,med,bigsafety;/low,med,h
14、ighpublicStringClassValues;/unacc,acc,good,vgoodpublicStringPredictResult=newString5;/記錄預(yù)測(cè)結(jié)果publicProperty(Stringb,Stringm,Stringd,Stringp,Stringl,Strings,Stringc)如文檔對(duì)你有用,請(qǐng)下載支持!buying=b;maint=mdoors=d;persons=p;lug_boot=l;safety=s;ClassValues=c;;Vector<Property>Data=newVector();/存儲(chǔ)數(shù)據(jù)Vector<
15、Property>DataTest=newVector。;/存儲(chǔ)測(cè)試數(shù)據(jù)/*文件讀寫獲取訓(xùn)練樣本*/publicvoidReadFile(Stringfilename)throwslOExceptionBufferedReaderbr=newBufferedReader(newFileReader(filename);Stringtemp=null;temp=br.readLine();String口str=null;PropertyTempClass=null;while(temp!=null)str=temp.split(",");TempClass=newPro
16、perty(str0,str1,str2,str3,str4,str5,str6);Statistics(TempClass);/統(tǒng)計(jì)個(gè)數(shù)testTotal+;temp=br.readLine();br.close();/*統(tǒng)計(jì)每一項(xiàng)的個(gè)數(shù)vhigh,vhigh,2,2,small,low,unacc*/publicvoidStatistics(Propertycar)for(inti=0;i<4;i+)if(ClassValuesi+;/vhigh,high,med,lowif("vhigh")buy0i+;elseif("high")buy1i
17、+;elseif("med")buy2i+;elsebuy3i+;/vhigh,high,med,lowif("vhigh")maint0i+;elseif("high")maint1i+;elseif("med")maint2i+;elsemaint3i+;/2,3,4,5moreif("2")door0i+;elseif("3")door1i+;elseif("4")door2i+;如文檔對(duì)你有用,請(qǐng)下載支持!elsedoor3i+;2,4,morei
18、f("2")person0i+;elseif("4")person1i+;elseperson2i+;/small,med,bigif(car.lug_boot.equals("small")lug_boot0i+;elseif(car.lug_boot.equals("med")lug_boot1i+;elselug_boot2i+;/low,med,highif("low")safe0i+;elseif("med")safe1i+;elsesafe2i+;/*計(jì)算概率*/
19、publicvoidCalculated_probability()for(inti=0;i<ClassValues.length;i+)ClassValue_gli=(float)ClassValuesi/testTotal;for(inti=0;i<buy_Vlaue_gl.length;i+)for(intj=0;j<buy_Vlaue_gl0.length;j+)buy_Vlaue_glij=(float)buyij/ClassValuesj;maint_Value_glij=(float)maintij/ClassValuesj;door_Value_glij=(f
20、loat)doorij/ClassValuesj;一一for(inti=0;i<person_Value_gl.length;i+)for(intj=0;j<person_Value_gl0.length;j+)person_Value_glij=(float)personij/ClassValuesj;lugboot_Value_glij=(float)lug_bootij/ClassValuesj;safe_Value_glij=(float)safeij/ClassValuesj;一一/*獲取測(cè)試數(shù)據(jù)*/publicvoidTestData()throwslOExceptio
21、nBufferedReaderbr=newBufferedReader(newFileReader("test.txt");Stringtemp;temp=br.readLine();Stringstr=null;PropertyCar=null;while(temp!=null)str=temp.split(",");Car=newProperty(str0,str1,str2,str3,str4,str5,str6);predictTotal+;Data.addElement(Car);calculate(Car);temp=br.readLine(
22、);/*對(duì)分類器進(jìn)行性能測(cè)試,判斷其成功率為多少*paramcar*/publicvoidcalculate(Propertycar)/unacc,acc,good,vgood,P(yi)-ClassValueTotal_glP(x|yi歸ow,vhigh4442small,low,unacc第一條floatitemGl;/每一條的概率intb,m,d,p,l,s;b=m=d=p=l=s=-1;floatMaxGl=0;if("vhigh")b=0;elseif("high")b=1;elseif("med")b=2;elseb=3;
23、if("vhigh")m=0;elseif("high")m=1;elseif("med")m=2;elsem=3;if("2")d=0;elseif("3")d=1;elseif("4")d=2;elsed=3;if("2")p=0;elseif("4")p=1;elsep=2;if(car.lug_boot.equals("small")l=0;elseif(car.lug_boot.equals("m
24、ed")l=1;elsel=2;if("low")s=0;elseif("med")s=1;elses=2;.length ; i +) / 計(jì)算在 unacc,acc,good,vgoodtoString (ClassValue_gl i ), toString (buy_Vlaue_gl b i ), toString (maint_Value_gl 向 i ), toString (door_Value_gl d i ), toString (person_Value_gl p i ),intt=0;/記錄最大概率的下標(biāo)inti;for(
25、i=0;i<ClassValue_gl下的概率itemGl=0;BigDecimal口bigDecimal=newBigDecimal(Float.newBigDecimal(Float.newBigDecimal(Float.newBigDecimal(Float.newBigDecimal(Float.如文檔對(duì)你有用,請(qǐng)下載支持!newBigDecimal(Float.toString(lugboot_Value_glli),newBigDecimal(Float.toString(safe_Value_glsi),;for(intj=1;j<bigDecimal.length
26、;j+)/加:a.add(b);除:a.divide(b,2);/2為精度取值bigDecimal0=bigDecimal0.multiply(bigDecimalj);/multiply乘itemGl=bigDecimal0.floatValue();car.PredictResulti=itemGl+"t"if(MaxGl<itemGl)MaxGl=itemGl;t=i;/判斷結(jié)果是否正確if(/預(yù)測(cè)結(jié)果和開始給定的結(jié)果相等car.PredictResulti="true"predictSucess+;elsecar.PredictResulti="false"publicvoidshow()for(inti=0;i<predictTotal;i+)Propertyc=Data.get(i);for(intj=0;j<j+)+"t");/分類器的準(zhǔn)確率floatt=(float)predictSucess/predictTotal;t=t*10000/100;"n分類器的準(zhǔn)確率為:"+t+"%");四、思考題1 .實(shí)驗(yàn)A中的分類器的優(yōu)缺點(diǎn)??赡艽嬖?概率問題存在準(zhǔn)確度問題,樸素貝葉斯分類器是基于樣本屬性條件獨(dú)立的假設(shè)的前提下的,但是實(shí)際
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024擔(dān)保合同范本樣本
- 2024天津市小型建設(shè)工程施工合同(空白)
- 廣告代理服務(wù)合同
- 寫字間租賃協(xié)議
- 建筑施工承包合同范本
- 個(gè)人期貨市場(chǎng)貸款合同
- 人才互助發(fā)展協(xié)議書
- 新版股權(quán)協(xié)議書樣本
- 攪拌機(jī)租賃合同樣式
- 技術(shù)服務(wù)合同樣本地址
- 2023年新華社招聘122人筆試參考題庫(kù)(共500題)答案詳解版
- 2023游戲行業(yè)人才報(bào)告
- 流行病學(xué)的誤差和偏倚
- 2023年中級(jí)經(jīng)濟(jì)師考試真題及答案完整版
- 二年級(jí)上冊(cè)道德與法治10《我們不亂扔》說課稿
- 2023-2024學(xué)年高一上學(xué)期選科指導(dǎo)主題班會(huì) 課件
- Unit4ExploringpoetryExtendedReading公開課課件高中英語(yǔ)牛津譯林版(2020)選擇性
- 天線技術(shù)在智能電網(wǎng)通信系統(tǒng)中的關(guān)鍵技術(shù)研究-第2篇
- 急診科護(hù)士培訓(xùn)計(jì)劃(6篇)
- 中國(guó)公路學(xué)會(huì)高德地圖-2023年高速公路服務(wù)區(qū)出行熱度分析報(bào)告:1月-6月
- 安裝發(fā)光字驗(yàn)收單
評(píng)論
0/150
提交評(píng)論