


版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、. 人工智能方向?qū)嵙?xí)實習(xí)報告專業(yè): 計算機科學(xué)與技術(shù)資料.班級: 學(xué)號: 姓名:實驗一 數(shù)據(jù)聚類分析一、實驗?zāi)康木幊虒崿F(xiàn)數(shù)據(jù)聚類的算法。二、實驗內(nèi)容k-means 聚類算法。三、實驗原理方法和手段k-means 算法接受參數(shù) k ;然后將事先輸入的 n 個數(shù)據(jù)對象劃分為 k 個聚類以便使得所獲得的聚類滿足:同一聚類中的對象相似度較高.四、實驗條件matlab2014b五、實驗步驟(1) 初始化 k 個聚類中心。(2) 計算數(shù)據(jù)集各數(shù)據(jù)到中心的距離, 選取到中心距離最短的為該數(shù)據(jù)所 屬類別。(3) 計算(2)分類后, k 個類別的中心(即求聚類平均距離)(4) 繼續(xù)執(zhí)行(2)(3)直到 k 個聚
2、類中心不再變化(或者數(shù)據(jù)集所屬類別不再變化)六、實驗代碼% main.m% k-means algorithm% author matcloud%clear; close all;load fisheriris;x = meas(:,3) meas(:,4); figure;plot(x(:,1),x(:,2),'ko','markersize',4); title('fisheriris dataset','fontsize',18,'color','red');idx,ctrs = kmeans
3、(x,3); figure;subplot(1,2,1); plot(x(idx=1,1),x(idx=1,2),'ro','ma rkersize',4);hold on; plot(x(idx=2,1),x(idx=2,2),'go','m arkersize',4);hold on; plot(x(idx=3,1),x(idx=3,2),'bo','m arkersize',4);hold on; plot(ctrs(:,1),ctrs(:,2),'kx','marke
4、rsize ',12);title('official kmeans','fontsize',16,'color','red');idx,ctrs = my_kmeans(x,3); subplot(1,2,2); plot(x(idx=1,1),x(idx=1,2),'ro','ma rkersize',4);hold on; plot(x(idx=2,1),x(idx=2,2),'go','m arkersize',4);hold on; plot(x(i
5、dx=3,1),x(idx=3,2),'bo','markersize',4); hold on;plot(ctrs(:,1),ctrs(:,2),'kx','markersize ',12);title('custom kmeans','fontsize',16,'color','red');function idx,ctrs = my_kmeans(m,k)row col = size(m);%init k centroidsp = randperm(size(m
6、,1); for i = 1 : kctrs(i,:) = m(p(i),:);endidx = zeros(row,1);%idex is pointer of groupwhile 1d = dist2matrix(m,ctrs); z,g = min(d,2);if(g = idx)break;elseendidx = g;%update ctroids for i = 1 : kv = find(g = i);if vmean(m(v,:),1);endctrs(i,:) =endendendfunction idx,ctrs = my_kmeans(m,k)row col = siz
7、e(m);%init k centroidsp = randperm(size(m,1); for i = 1 : kctrs(i,:) = m(p(i),:);endidx = zeros(row,1);%idex is pointer of groupwhile 1d = dist2matrix(m,ctrs); z,g = min(d,2);if(g = idx)break;elseendidx = g;%update ctroids for i = 1 : kv = find(g = i);if vmean(m(v,:),1);endctrs(i,:) =endendend七、實驗結(jié)果
8、.圖 1-1未聚類數(shù)據(jù)圖 1-2聚類后資料.八、 實驗分析算 法 的 時 間 復(fù) 雜 度 上 界 為o(n*k*t),其 中t是 迭 代 次 數(shù) 。k-means 算法是一種基于樣本間相似性度量的間接聚類方法,屬于非監(jiān)督學(xué)習(xí)方法。此算法以 k 為參數(shù),把 n個對象分為 k 個簇,以使簇內(nèi)具有較高的相似度,而且簇間的相似度較低。相似度的計算根據(jù)一個簇中對象的平均值(被看作簇的重心)來進(jìn)行。此算法首先隨機選擇 k 個對象,每個對象代表一個聚類的質(zhì)心。對于其余的每一個對象,根據(jù)該對象與各聚類質(zhì)心之間的距離,把它分配到與之最相似的聚類中。然后,計算每個聚類的資料.新質(zhì)心。重復(fù)上述過程,直到準(zhǔn)則函數(shù)收斂
9、。k-means 算法是一種較典型的逐點修改迭代的動態(tài)聚類算法,其要點是以誤差平方和為準(zhǔn)則函數(shù)。逐點修改類中心:一個象元樣本按某一原則,歸屬于某一組類后,就要重新計算這個組類的均值,并且以新的均值作為凝聚中心點進(jìn)行下一次象元素聚類;逐批修改類中心:在全部象元樣本按某一組的類中心分類之后,再計算修改各類的均值,作為下一次分類的凝聚中心點。實驗二 主成分分析一、實驗?zāi)康木幊虒崿F(xiàn)主成分的算法。二、實驗內(nèi)容pca 主成分分析算法。三、實驗原理方法和手段pca 的原理就是將原來的樣本數(shù)據(jù)投影到一個新的空間中,相當(dāng)于我們在矩陣分析里面學(xué)習(xí)的將一組矩陣映射到另外的坐標(biāo)系下。通過一個轉(zhuǎn)換坐標(biāo), 也可以理解成把
10、一組坐標(biāo)轉(zhuǎn)換到另外一組坐標(biāo)系下,但是在新的坐標(biāo)系下,表示原來的原本不需要那么多的變量,只需要原來樣本的最大的一個線性無關(guān)組的特征值對應(yīng)的空間的坐標(biāo)即可。四、實驗條件matlab2014b 五、實驗步驟(1) 求 dataadjust 矩陣(2) 求 dataadjust 的協(xié)方差矩陣協(xié)方差公式å n ( xcov( x ,y ) =i- x )(y - y )in -1協(xié)方差矩陣cn´n= (ci, j, ci, j= cov( dimi, dim )j(3) 求協(xié)方差矩陣的特征向量及特征值(4) 取特征值最大的的特征向量eigenvectors(5) 降維矩陣finald
11、ata=dataadjust * eigenvectors 六、實驗代碼data = 2.5 2.4;0.5 0.7;2.2 2.9;1.92.2;3.13.0;2.32.7;21.6;11.1;1.51.6;1.1 0.9;dim1_mean = mean(data(:,1); dim2_mean = mean(data(:,2); dataadjust =data(:,1)-dim1_mean,data(:,2)-di m2_mean;c = cov(dataadjust); vectors,values = eig(c); values = values*ones(2,1); max_v
12、,max_idx = max(values,1);.eigenvectors = vectors(:,max_idx); finaldata = dataadjust * eigenvectors;七、實驗結(jié)果圖 2-1 實驗結(jié)果八、實驗分析主成分分析,是考察多個變量間相關(guān)性一種多元統(tǒng)計方法,研究如何通過少數(shù)幾個主成分來揭示多個變量間的內(nèi)部資料.結(jié)構(gòu),即從原始變量中導(dǎo)出少數(shù)幾個主成分,使它們盡可能多地保留原始變量的信息,且彼此間互不相關(guān).通常數(shù)學(xué)上的處理就是將原來 p 個指標(biāo)作線性組合,作為新的綜合指標(biāo)。實驗三 最近鄰分類器資料.一、實驗?zāi)康木幊虒崿F(xiàn)最近鄰分類器算法。二、實驗內(nèi)容最近鄰分類器算
13、法,這里采用 k 近鄰算法。三、實驗原理方法和手段最近鄰分類為監(jiān)督學(xué)習(xí)方法,已知 n 個類別,判定給定樣本屬于哪個類別。四、實驗條件matlab2014b 五、實驗步驟(1) 計算樣本到各數(shù)據(jù)集點的距離 d歐式距離d(x, y) = x - y =(å nxi=1i12) c- y2i絕對值距離明氏距離d(x, y) = x - y = ån x - y i=1ii1d (x, y) = x - y =å nxi=1i- y p pi 馬氏距離應(yīng)的特征值)d (x, y) = x - y = -ån i=1xyi( 為對iilli余弦距離åni
14、=1x 2 åny 2i=1iiii=1id (x, y) = x - y = -cos(x, y) = -(2) 對 d 排序ånx y(3) 給定 k 值(即鄰居數(shù)),從d 中選取k 個數(shù)據(jù),統(tǒng)計 k 個數(shù)據(jù)中所屬類別的個數(shù) c。(4) c 中值最大的便是該樣本所屬類別。六、實驗代碼close all; clear;clc;red = randn(100,2)+ones(100,2); red = red ones(100,1);green = randn(100,2)-ones(100,2); green = green ones(100,1)*2; data = r
15、ed;green;figure; plot(red(:,1),red(:,2),'ro','markersiz e',4);hold on; plot(green(:,1),green(:,2),'go','mar kersize',4);blue_sample = randn(1,2);hold on; plot(blue_sample(:,1),blue_sampl e(:,2),'bo','markersize',4);%give a k valuek = input('input n
16、eighbors count'); row,col = size(data);for i = 1 : rowd(:,i) = norm(data(i,1:2) - blue_sample(1,:);endd,idx = sort(d); for i = 1 : kk_vector(:,i) = idx(:,i);end%caculate category redcount = 0;greencount = 0; for i = 1 : ktag = data(k_vector(1,i),3);if (tag = 1)redcount = redcount+1; else if(tag
17、= 2)greencount = greencount+1;endendendif(redcount > greencount) blue_sample = blue_sample1;else 2;enddisp('sample is red'); blue_sample = blue_sample disp('sample is green');七、實驗結(jié)果.圖 3-1實驗結(jié)果八、實驗分析knn 算法本身簡單有效,它是一種lazy-learning 算法,分類器不需要使用訓(xùn)練集進(jìn)行訓(xùn)練,訓(xùn)練時間復(fù)雜度為 0。knn 分類的計算復(fù)雜度和訓(xùn)練集中的文檔數(shù)目成
18、正比,也就是說,如果訓(xùn)練集中文檔總數(shù)為 n,那么 knn 的分類時間復(fù)雜度為 o(n)。資料.實驗四 貝葉斯分類器一、實驗?zāi)康木幊虒崿F(xiàn)貝葉斯分類器算法。資料.二、實驗內(nèi)容貝葉斯分類器算法。 三、實驗原理方法和手段已知類別,給定一樣本判定樣本所屬類別。四、實驗條件matlab2014b 五、實驗步驟(1) 已知 k 個類別(2) 計算k 個類別所占全體的比重pr(k)(3) 給定值 radius,在二維空間,以樣本點為圓心以 radiu 為半徑作圓。(4) 統(tǒng)計圓內(nèi) k 個類別的分布情況(在圓內(nèi)包含該類多少個數(shù)據(jù)點)記為c(k)(5) 計算圓內(nèi)分布比重 pr_c(k)(6) 根據(jù)貝葉斯公式p(
19、a / b) = p( a) ´p(b / a) 計算p(b)各類最終比重,取值大的作為樣本類別。 六、實驗代碼clear; close all;%init two clutersrh = randi(80,100);gh = randi(80,100);red = randn(rh,2)+ones(rh,2); green = randn(gh,2)-ones(gh,2);red = red ones(rh,1);green = green ones(gh,1)*2; data = red;green;total = rh+gh; pr_red = rh/(total);pr_gr
20、een = gh/(total);%init a sample sample_blue = randn(1,2);plot(red(:,1),red(:,2),'ro','markersiz e',4);hold on; plot(green(:,1),green(:,2),'go','mar kersize',4);hold on; plot(sample_blue(:,1),sample_blu e(:,2),'b*','markersize',6);for i = 1 : totalp = d
21、ata(i,1:2);tmp = sample_blue - p; d(:,i) = sqrt(dot(tmp,tmp);end%select an circle(center is sample_blue)radius = 5;redcount = 0;greencount = 0; for i = 1 : totalif(d(:,i) <= radius) if(data(i,3) = 1)%redcluster+ 1;redcount = redcountelse if(data(i,3) =2)%green clustergreencount+1;endgreencount =e
22、ndendendpr_redincircle = redcount/rh;pr_greenincircle = greencount/gh;pr_redfinal = pr_red * pr_redincircle; pr_greenfinal = pr_green * pr_greenincircle;fprintf('final red pr= %fn',pr_redfinal); fprintf('final green pr= %fn',pr_greenfinal); if(pr_redfinal >= pr_greenfinal)disp(
23、9;sample is red cluster');else.disp('sample is green cluster');end七、實驗結(jié)果圖 4-1 實驗結(jié)果八、實驗分析對于某些類型的概率模型,在監(jiān)督式學(xué)習(xí)的樣本集中能獲取得非常好的分類效果。在許多實際應(yīng)用中,樸素貝葉斯模型參數(shù)估計使用最大似然估計方法; 換而言之,在不用到貝葉斯概率或者任資料.何貝葉斯模型的情況下,樸素貝葉斯模型也能奏效。資料.實驗五 特征提取算法一、實驗?zāi)康木幊虒崿F(xiàn)特征提取算法。二、實驗內(nèi)容harris 特征提取算法。三、實驗原理方法和手段圖像中的特征點即為圖像邊緣直線形成夾角而成的角點。圖像中
24、較突出的尖銳點和其它有特殊意義的點,這些點反映了地物的特征,對研究具有重要意義。在點特征提取的算法中,主要包含了susan 算法、harris 算法和 moravec 算法,這些算法可以對圖像中角點進(jìn)行提取,從而應(yīng)用于實踐生產(chǎn)中,例如對建筑物角點提取,人臉中眼睛部位角點的提取。四、實驗條件matlab2014b五、實驗步驟(1) 計算圖像i(x,y)在 x 和 y 方向的梯度, .i xi y¶i()¶i()i x = ¶x= i Ä- 101 , iy= ¶x = i Ä- 101 t(2) 計算圖像兩個方向梯度的乘積xx yyyy
25、xyxyi 2 = i i ,i 2 = i i , i= i i(3) 使用高斯函數(shù)對i 2,ix2和iy進(jìn)行高斯加權(quán)(取s = 1)xya = g(i2 ) = i2 Ä w, c = g(i 2 ) = i 2xxyyÄ w, b = g(i) = iÄ wxyxy(4) 計算每個像素的 harris 響應(yīng)值 r,并對小于某一閾值 t 的 r 置為零r = r : detm - a (tracem)2 < t(5) 在 3*3 或 5*5 的鄰域內(nèi)進(jìn)行非最大值抑制,局部最大值點即為圖像中的角點六、實驗代碼%function:%harris角點檢測%注意
26、:%matlab自帶的corner函數(shù)即可實現(xiàn)harris角點檢測。但考慮到harris角點的經(jīng)典性,本程序?qū)⑵鋵崿F(xiàn),純粹出于學(xué)習(xí)目的,了解特征點檢測的方法。%其中所有參數(shù)均與matlab 默認(rèn)保持一致%清空變量,讀取圖像clear;close allsrc= imread('images/girl.jpg');gray=rgb2gray(src); gray = im2double(gray);%縮放圖像,減少運算時間gray = imresize(gray, 0.2);%計算x方向和y方向的梯度及其平方x=imfilter(gray,-1 0 1);x2=x.2;y=imfilter(gray,-1 0 1'); y2=y.2;xy=x.*y;%生成高斯卷積核,對x2、y2、xy進(jìn)行平滑h=fspecial('gaussian',5 1,1.5); w=h*h'a=imfilter(x2,w); b=imfilter(y2,w); c=imfilter(xy,w);%k一般取值0.04-0.06 k=0.04;rmax=0;size=size(gray); height=size(1); width=size(2); r=zeros(h
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 工業(yè)自動化技術(shù)及設(shè)備
- 工作中的心理調(diào)適與減壓方法
- 工業(yè)節(jié)能的途徑與方法探討
- 工業(yè)設(shè)備節(jié)能降耗的散熱技術(shù)改進(jìn)
- 工業(yè)風(fēng)別墅設(shè)計思路分享
- 工作場所的安全管理與防護(hù)措施
- 工作報告編寫技巧與方法
- 工廠設(shè)備維護(hù)與保養(yǎng)
- 工程設(shè)計原理與實踐
- 工程經(jīng)濟分析與評價
- 地類及變化原因劃分、數(shù)據(jù)庫結(jié)構(gòu)、森林資源變化圖斑現(xiàn)地核實表、年度更新統(tǒng)計報表
- 安全標(biāo)準(zhǔn)化示范班組建設(shè)匯報
- GB/T 4437.1-2023鋁及鋁合金熱擠壓管第1部分:無縫圓管
- 工貿(mào)企業(yè)重大事故隱患判定標(biāo)準(zhǔn)-處罰事故案例
- 中藥貼敷課件
- 混凝土電桿組立檢驗批質(zhì)量驗收記錄表
- 國家開放大學(xué)《土木工程力學(xué)(本)》形考作業(yè)1-5參考答案
- 《線性代數(shù)》課程思政的案例及思考
- plc課程設(shè)計-病房呼叫系統(tǒng)
- 起重機改造施工方案
- 驗證前風(fēng)險評估精密檢驗儀器風(fēng)險評估報告
評論
0/150
提交評論