当前位置:文档之家› 模式识别BP算法与SVM实验报告

模式识别BP算法与SVM实验报告

模式识别BP算法与SVM实验报告
模式识别BP算法与SVM实验报告

《模式识别》实验报告

四.非线性分类器实验-BP 神经网络

1.(a)初始化高斯随机生成器为0,即randn(…seed?,0);产生2 维两类数据集(X1,y1),其中X1的数据来自4 个高斯分布,m=[-5,5,-5,5;5,-5,5,-5]的正态分布,S =s * I,s=2,I是一个2×2 的单位矩阵。前两个分布的数据为一类y=1,后两个分布的数据为另一类y=-1,每一类数据的数量N=100。

(b)初始化高斯随机生成器为10,即randn(…seed?,10),重复(a)产生数据集(X2,y2)。

(c)使s=5,重复(a)、(b)分别产生数据集(X3,y3)、(X4,y4)。

(d)画出数据集。

M1文件如下:

function [X1,y] =data_generator(S)

m=[-5,5,-5,5;5,-5,5,-5];

x1=mvnrnd(m(:,1),S,50);

x2=mvnrnd(m(:,2),S,50);

x3=mvnrnd(m(:,3),S,50);

x4=mvnrnd(m(:,4),S,50);

for i=1:50

for j=1:2

X1(i,j)=x1(i,j);

end

y(i,1)=1;

end

for i=1:50

for j=1:2

X1(i+50,j)=x2(i,j);

end

y(i+50,1)=1;

end

for i=1:50

for j=1:2

X1(i+100,j)=x3(i,j);

end

y(i+100,1)=-1;

end

for i=1:50

for j=1:2

X1(i+150,j)=x4(i,j);

end

y(i+150,1)=-1; end end

M2文件如下:

function plotXy(S)

[X1,y] =data_generator(S); figure(1);

scatter3(X1(:,1),X1(:,2),y(:,1),'.b'); end

(a)调用指令如下:

randn('seed',0); S=[2,0;0,2]; plotXy(S)

显示结果如下:

-10

-5

5

10

-10

-5

5

10

-1-0.5

0.5

1

(b)调用指令如下:

randn('seed',10); S=[2,0;0,2]; plotXy(S)

显示结果如下:

-10

-5

5

10

-10

-5

5

10

-1-0.5

0.5

1

(c)调用指令如下:

randn('seed',0); S=[5,0;0,5]; plotXy(S)

结果显示如下:

-20

-10

10

20

-10

10

20

-1-0.5

0.5

1

(d)调用指令如下:

randn('seed',10); S=[5,0;0,5]; plotXy(S)

显示结果如下:

-10

-5

5

10

-20

-10

10

20

-1-0.5

0.5

1

2.(a)运行标准BP 算法(traingd),隐层节点数为15,分别取学习率参数lr=0.01,2,4,设迭代次数为1000,用数据集(X1,y1)作为训练数据。

(b)对训练得到神经网络,用数据集(X1,y1)(训练数据)和(X2,y2)(测试数据)进行性能评估,并进行分析。 M3文件如下:

function net=NN_training(S,code,iter,par_vec) [x,y]=data_generator(S); rand('seed',0); randn('seed',0);

methods_list={'traingd';'traingdm';'traingda'};

limit=[min(x(:,1)),max(x(:,1));min(x(:,2)),max(x(:,2))];

net=newff(limit,[15 1],{'tansig','tansig'},methods_list{code,1}); net=init(net);

net.trainParam.epochs=iter; net.trainParam.lr=par_vec(1); if(code==2)

net.trainParam.mc=par_vec(2);

elseif(code==3)

net.trainParam.lr_inc=par_vec(3);

net.trainParam.lr_dec=par_vec(4);

net.trainParam.max_perf_inc=par_vec(5);

end

net=train(net,x',y);

end

M4文件如下:

function pe=NN_evaluation(net,x,y)

y1=sim(net,x);

pe=sum(y.*y1<0)/length(y);

end

(a)(b)调用指令为:

randn('seed',0);

S=[2,0;0,2];

code=1;

iter=1000;

par_vec=[0.01,0,0,0,0];

net=NN_training(S,code,iter,par_vec);

randn('seed',10);

S=[2,0;0,2];

[x,y]=data_generator(S);

NN_evaluation(net,x',y)

结果显示如下:

当lr取0.01时,用数据集(X1,y1)(训练数据)和(X2,y2)(测试数据)进行性能评估结果返回错误率是0.5950,性能图如下:

当Lr取2时评估结果返回错误率是0.5250,性能图如下:

当lr取4时评估结果返回错误率为0.5050,性能图如下:

3. (a)运行自适应学习率BP 算法(traingda),设学习率参数lr=0.01,lr_inc=1.05,lr_dec=0.7,max_perf_inc=1.04,设迭代次数为300,用数据集(X1,y1)作为训练数据。

(b)对训练得到神经网络,用数据集(X1,y1)(训练数据)和(X2,y2)(测试数据) 进行性能评估,并进行分析。

调用指令如下:

randn('seed',0);

S=[2,0;0,2];

code=3;

iter=300;

par_vec=[0.01,0,1.05,0.7,1.04];

net=NN_training(S,code,iter,par_vec);

randn('seed',10);

S=[2,0;0,2];

[x,y]=data_generator(S);

NN_evaluation(net,x',y)

结果如下:

当lr=0.01,lr_inc=1.05,lr_dec=0.7,max_perf_inc=1.04,设迭代次数为300时,评估结果返回错误率是0.5850,性能图为:

4.重复2-3 中的实验内容,分别使用数据集(X3,y3)、(X4,y4)作为训练和测试数据。

当lr取0.01时,用数据集(X3,y3)(训练数据)和(X4,y4)(测试数据)进行性

能评估结果返回错误率是0.5500,性能图如下:

当lr取2时评估结果返回错误率是0.4750,性能图如下:

当lr取4时评估结果返回错误率是0.500,性能图如下:

评估结果返回错误率是0.4750,性能图为:

操作系统上机实验报告(西电)

操作系统上机题目 一、题目 实验1:LINUX/UNIX Shell部分 (一)系统基本命令 1.登陆系统,输入whoami 和pwd ,确定自己的登录名和当前目录; 登录名yuanye ,当前目录/home/yuanye 2.显示自己的注册目录?命令在哪里? a.键入echo $HOME,确认自己的主目录;主目录为/home/yuanye b.键入echo $PA TH,记下自己看到的目录表;/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games c.键入which abcd,看看得到的错误信息; 再键入which ls 和which vi,对比刚刚得到的结果的目录是否在a.、b. 两题看到的目录表中; /bin/ls /usr/bin/vi 3.ls 和cd 的使用: a.键入ls,ls -l ,ls -a ,ls -al 四条命令,观察输出,说明四种不同使用方式的区别。 1. examples.desktop 公共的模板视频图片文档音乐桌面; 总计32 2.-rw-r--r-- 1 yuanye yuanye 357 2011-03-22 22:15 examples.desktop drwxr-xr-x 2 yuanye yuanye 4096 2011-03-22 23:25 公共的 drwxr-xr-x 2 yuanye yuanye 4096 2011-03-22 23:25 模板 drwxr-xr-x 2 yuanye yuanye 4096 2011-03-22 23:25 视频 drwxr-xr-x 2 yuanye yuanye 4096 2011-03-22 23:25 图片 drwxr-xr-x 2 yuanye yuanye 4096 2011-03-22 23:25 文档 drwxr-xr-x 2 yuanye yuanye 4096 2011-03-22 23:25 音乐 drwxr-xr-x 2 yuanye yuanye 4096 2011-03-22 23:25 桌面 3. . .fontconfig .local .Xauthority .. .gconf .mozilla .xsession-errors .bash_logout .gconfd .nautilus 公共的 .bashrc .gksu.lock .profile 模板 .cache .gnome2 .pulse 视频 .chewing .gnome2_private .pulse-cookie 图片 .config .gnupg .recently-used.xbel 文档 .dbus .gstreamer-0.10 .scim 音乐 .dmrc .gtk-bookmarks .sudo_as_admin_successful 桌面 .esd_auth .gvfs .update-manager-core

模式识别第二次上机实验报告

北京科技大学计算机与通信工程学院 模式分类第二次上机实验报告 姓名:XXXXXX 学号:00000000 班级:电信11 时间:2014-04-16

一、实验目的 1.掌握支持向量机(SVM)的原理、核函数类型选择以及核参数选择原则等; 二、实验内容 2.准备好数据,首先要把数据转换成Libsvm软件包要求的数据格式为: label index1:value1 index2:value2 ... 其中对于分类来说label为类标识,指定数据的种类;对于回归来说label为目标值。(我主要要用到回归) Index是从1开始的自然数,value是每一维的特征值。 该过程可以自己使用excel或者编写程序来完成,也可以使用网络上的FormatDataLibsvm.xls来完成。FormatDataLibsvm.xls使用说明: 先将数据按照下列格式存放(注意label放最后面): value1 value2 label value1 value2 label 然后将以上数据粘贴到FormatDataLibsvm.xls中的最左上角单元格,接着工具->宏执行行FormatDataToLibsvm宏。就可以得到libsvm要求的数据格式。将该数据存放到文本文件中进行下一步的处理。 3.对数据进行归一化。 该过程要用到libsvm软件包中的svm-scale.exe Svm-scale用法: 用法:svmscale [-l lower] [-u upper] [-y y_lower y_upper] [-s save_filename] [-r restore_filename] filename (缺省值:lower = -1,upper = 1,没有对y进行缩放)其中,-l:数据下限标记;lower:缩放后数据下限;-u:数据上限标记;upper:缩放后数据上限;-y:是否对目标值同时进行缩放;y_lower为下限值,y_upper为上限值;(回归需要对目标进行缩放,因此该参数可以设定为–y -1 1 )-s save_filename:表示将缩放的规则保存为文件save_filename;-r restore_filename:表示将缩放规则文件restore_filename载入后按此缩放;filename:待缩放的数据文件(要求满足前面所述的格式)。缩放规则文件可以用文本浏览器打开,看到其格式为: y lower upper min max x lower upper index1 min1 max1 index2 min2 max2 其中的lower 与upper 与使用时所设置的lower 与upper 含义相同;index 表示特征序号;min 转换前该特征的最小值;max 转换前该特征的最大值。数据集的缩放结果在此情况下通过DOS窗口输出,当然也可以通过DOS的文件重定向符号“>”将结果另存为指定的文件。该文件中的参数可用于最后面对目标值的反归一化。反归一化的公式为: (Value-lower)*(max-min)/(upper - lower)+lower 其中value为归一化后的值,其他参数与前面介绍的相同。 建议将训练数据集与测试数据集放在同一个文本文件中一起归一化,然后再将归一化结果分成训练集和测试集。 4.训练数据,生成模型。 用法:svmtrain [options] training_set_file [model_file] 其中,options(操作参数):可用的选项即表示的涵义如下所示-s svm类型:设置SVM 类型,默

《 Windows7 操作系统》实验报告

实验(一) Windows 7基本操作 一、实验目的 1.掌握文件和文件夹基本操作。 2.掌握“资源管理器”和“计算机”基本操作。 二、实验要求 1.请将操作结果用Alt+Print Screen组合键截图粘贴在题目之后。 2.实验完成后,请将实验报告保存并提交。 三、实验内容 1.文件或文件夹的管理(提示:此题自行操作一遍即可,无需抓图)★期末机试必考题★ (1) 在D:盘根目录上创建一个名为“上机实验”的文件夹,在“上机实验”文件夹中创建1个名为“操作系统上机实验”的空白文件夹和2个分别名为“2.xlsx”和“3.pptx”的空白文件,在“操作系统上机实验”文件夹中创建一个名为“1.docx”的空白文件。 (2) 将“1.docx”改名为“介绍信.docx”;将“上机实验”改名为“作业”。 (3) 在“作业”文件夹中分别尝试选择一个文件、同时选择两个文件、一次同时选择所有文件和文件夹。 (4) 将“介绍信.docx”复制到C:盘根目录。 (5) 将D:盘根目录中的“作业”文件夹移动到C:盘根目录。 (6) 将“作业”文件夹中的“2.xlsx”文件删除放入“回收站”。 (7) 还原被删除的“2.xlsx”文件到原位置。 2.搜索文件或文件夹,要求如下: 查找C盘上所有以大写字母“A”开头,文件大小在10KB以上的文本文件。(提示:搜索时,可以使用“?”和“*”。“?”表示任意一个字符,“*”表示任意多个字符。)

3. 在桌面上为C:盘根目录下的“作业”文件夹创建一个桌面快捷方式。★期末机试必考题★ 3.“计算机”或“资源管理器”的使用 (1) 在“资源管理器”窗口,设置以详细信息方式显示C:\WINDOWS中所有文件和文件夹,使所有图标按类型排列显示,并不显示文件扩展名。(提示:三步操作全部做完后,将窗口中显示的最终设置结果抓一张图片即可) (2) 将C:盘根目录中“介绍信.docx”的文件属性设置为“只读”和“隐藏”,并设置在窗口中显示“隐藏属性”的文件或文件夹。(提示:请将“文件夹”对话框中选项设置效果与C:盘根目录中该文件图标呈现的半透明显示效果截取在一整张桌面图片中即可) 4.回收站的设置 设置删除文件后,不将其移入回收站中,而是直接彻底删除功能。

模式识别(K近邻算法)

K 近邻算法 1.算法思想 取未知样本的x 的k 个近邻,看这k 个近邻中多数属于哪一类,就把x 归于哪一类。具体说就是在N 个已知的样本中,找出x 的k 个近邻。设这N 个样本中,来自1w 类的样本有1N 个,来自2w 的样本有2N 个,...,来自c w 类的样本有c N 个,若c k k k ,,,21 分别是k 个近邻中属于c w w w ,,,21 类的样本数,则我们可以定义判别函数为: c i k x g i i ,,2,1,)( == 决策规则为: 若i i j k x g max )(=,则决策j w x ∈ 2.程序代码 %KNN 算法程序 function error=knn(X,Y ,K) %error 为分类错误率 data=X; [M,N]=size(X); Y0=Y; [m0,n0]=size(Y); t=[1 2 3];%3类向量 ch=randperm(M);%随机排列1—M error=0; for i=1:10 Y1=Y0; b=ch(1+(i-1)*M/10:i*M/10); X1=X(b,:); X(b,:)=[]; Y1(b,:)=[]; c=X; [m,n]=size(X1); %m=15,n=4 [m1,n]=size(c); %m1=135,n=4 for ii=1:m for j=1:m1 ss(j,:)=sum((X1(ii,:)-c(j,:)).^2); end [z1,z2]=sort(ss); %由小到大排序 hh=hist(Y1(z2(1:K)),t); [w,best]=max(hh); yy(i,ii)=t(best); %保存修改的分类结果 end

模式识别实验报告

模式识别实验报告

————————————————————————————————作者:————————————————————————————————日期:

实验报告 实验课程名称:模式识别 姓名:王宇班级: 20110813 学号: 2011081325 实验名称规范程度原理叙述实验过程实验结果实验成绩 图像的贝叶斯分类 K均值聚类算法 神经网络模式识别 平均成绩 折合成绩 注:1、每个实验中各项成绩按照5分制评定,实验成绩为各项总和 2、平均成绩取各项实验平均成绩 3、折合成绩按照教学大纲要求的百分比进行折合 2014年 6月

实验一、 图像的贝叶斯分类 一、实验目的 将模式识别方法与图像处理技术相结合,掌握利用最小错分概率贝叶斯分类器进行图像分类的基本方法,通过实验加深对基本概念的理解。 二、实验仪器设备及软件 HP D538、MATLAB 三、实验原理 概念: 阈值化分割算法是计算机视觉中的常用算法,对灰度图象的阈值分割就是先确定一个处于图像灰度取值范围内的灰度阈值,然后将图像中每个像素的灰度值与这个阈值相比较。并根据比较的结果将对应的像素划分为两类,灰度值大于阈值的像素划分为一类,小于阈值的划分为另一类,等于阈值的可任意划分到两类中的任何一类。 最常用的模型可描述如下:假设图像由具有单峰灰度分布的目标和背景组成,处于目标和背景内部相邻像素间的灰度值是高度相关的,但处于目标和背景交界处两边的像素灰度值有较大差别,此时,图像的灰度直方图基本上可看作是由分别对应于目标和背景的两个单峰直方图混合构成。而且这两个分布应大小接近,且均值足够远,方差足够小,这种情况下直方图呈现较明显的双峰。类似地,如果图像中包含多个单峰灰度目标,则直方图可能呈现较明显的多峰。 上述图像模型只是理想情况,有时图像中目标和背景的灰度值有部分交错。这时如用全局阈值进行分割必然会产生一定的误差。分割误差包括将目标分为背景和将背景分为目标两大类。实际应用中应尽量减小错误分割的概率,常用的一种方法为选取最优阈值。这里所谓的最优阈值,就是指能使误分割概率最小的分割阈值。图像的直方图可以看成是对灰度值概率分布密度函数的一种近似。如一幅图像中只包含目标和背景两类灰度区域,那么直方图所代表的灰度值概率密度函数可以表示为目标和背景两类灰度值概率密度函数的加权和。如果概率密度函数形式已知,就有可能计算出使目标和背景两类误分割概率最小的最优阈值。 假设目标与背景两类像素值均服从正态分布且混有加性高斯噪声,上述分类问题可以使用模式识别中的最小错分概率贝叶斯分类器来解决。以1p 与2p 分别表示目标与背景的灰度分布概率密度函数,1P 与2P 分别表示两类的先验概率,则图像的混合概率密度函数可用下式表示为

操作系统上机实验报告

大连理工大学实验报告 学院(系):专业:班级: 姓名:学号:组:___ 实验时间:实验室:实验台: 指导教师签字:成绩: 实验名称:进程控制 一、实验目的和要求 (1)进一步加强对进程概念的理解,明确进程和程序的区别 (2)进一步认识并发执行的实质 二、实验环境 在windows平台上,cygwin模拟UNIX运行环境 三、实验内容 (1) getpid()---获取进程的pid 每个进程都执行自己独立的程序,打印自己的pid; (2) getpid()---获取进程的pid 每个进程都执行自己独立的程序,打印自己的pid; 父进程打印两个子进程的pid;

(3)写一个命令处理程序,能处理max(m,n), min(m,n),average(m,n,l)这几个命令(使用exec函数族)。 Max函数 Min函数 Average函数 Exec函数族调用 四、程序代码 五、运行结果 六、实验结果与分析 七、体会 通过这次上机,我了解了fork函数的运行方法,同时更深刻的了解了进程的并行执行的本质,印证了在课堂上学习的理论知识。同时通过编写实验内容(3)的命令处理程序,学会了exec函数族工作原理和使用方法。通过这次上机实验让我加深了对课堂上学习的理论知识的理解,收获很多。

大连理工大学实验报告 学院(系):专业:班级: 姓名:学号:组:___ 实验时间:实验室:实验台: 指导教师签字:成绩: 实验名称:进程通讯 一、实验目的和要求 了解和熟悉UNIX支持的共享存储区机制 二、实验环境 在windows平台上,cygwin模拟UNIX运行环境 三.实验内容 编写一段程序, 使其用共享存储区来实现两个进程之间的进程通讯。进程A创建一个长度为512字节的共享内存,并显示写入该共享内存的数据;进程B将共享内存附加到自己的地址空间,并向共享内存中写入数据。 四、程序代码 五、运行结果 六、实验结果与分析 七、体会

操作系统实验报告生产者与消费者问题模拟

操作系统上机实验报告 实验名称: 生产者与消费者问题模拟 实验目的: 通过模拟生产者消费者问题理解进程或线程之间的同步与互斥。 实验内容: 1、设计一个环形缓冲区,大小为10,生产者依次向其中写入1到20,每个缓冲区中存放一个数字,消费者从中依次读取数字。 2、相应的信号量; 3、生产者和消费者可按如下两种方式之一设计; (1)设计成两个进程; (2)设计成一个进程内的两个线程。 4、根据实验结果理解信号量的工作原理,进程或线程的同步\互斥关系。 实验步骤及分析: 一.管道 (一)管道定义 所谓管道,是指能够连接一个写进程和一个读进程的、并允许它们以生产者—消费者方式进行通信的一个共享文件,又称为pipe文件。由写进程从管道的写入端(句柄1)将数据写入管道,而读进程则从管道的读出端(句柄0)读出数据。(二)所涉及的系统调用 1、pipe( ) 建立一无名管道。 系统调用格式 pipe(filedes) 参数定义 int pipe(filedes); int filedes[2]; 其中,filedes[1]是写入端,filedes[0]是读出端。 该函数使用头文件如下: #include #inlcude #include 2、read( ) : 系统调用格式 read(fd,buf,nbyte) 功能:从fd所指示的文件中读出nbyte个字节的数据,并将它们送至由指针buf 所指示的缓冲区中。如该文件被加锁,等待,直到锁打开为止。 参数定义:

int read(fd,buf,nbyte); int fd; char *buf; unsigned nbyte; 3、write( ) 系统调用格式 read(fd,buf,nbyte) 功能:把nbyte 个字节的数据,从buf所指向的缓冲区写到由fd所指向的文件中。如文件加锁,暂停写入,直至开锁。 参数定义同read( )。 (三)参考程序 #include #include #include int pid1,pid2; main( ) { int fd[2]; char outpipe[100],inpipe[100]; pipe(fd); /*创建一个管道*/ while ((pid1=fork( ))==-1); if(pid1==0) { lockf(fd[1],1,0); /*把串放入数组outpipe中*/ sprintf(outpipe,child 1 is using pipe!); /* 向管道写长为50字节的串*/ write(fd[1],outpipe,50); sleep(5); /*自我阻塞5秒*/ lockf(fd[1],0,0); exit(0); } else { while((pid2=fork( ))==-1); if(pid2==0) { lockf(fd[1],1,0); /*互斥*/ sprintf(outpipe,child 2 is using pipe!); write(fd[1],outpipe,50); sleep(5); lockf(fd[1],0,0);

模式识别感知器算法求判别函数

感知器算法求判别函数 一、 实验目的 掌握判别函数的概念和性质,并熟悉判别函数的分类方法,通过实验更深入的了解判别函数及感知器算法用于多类的情况,为以后更好的学习模式识别打下基础。 二、 实验内容 学习判别函数及感知器算法原理,在MATLAB 平台设计一个基于感知器算法进行训练得到三类分布于二维空间的线性可分模式的样本判别函数的实验,并画出判决面,分析实验结果并做出总结。 三、 实验原理 3.1 判别函数概念 直接用来对模式进行分类的准则函数。若分属于ω1,ω2的两类模式可用一方程d (X ) =0来划分,那么称d (X ) 为判别函数,或称判决函数、决策函数。如,一个二维的两类判别问题,模式分布如图示,这些分属于ω1,ω2两类的模式可用一直线方程 d (X )=0来划分。其中 0)(32211=++=w x w x w d X (1) 21,x x 为坐标变量。 将某一未知模式 X 代入(1)中: 若0)(>X d ,则1ω∈X 类; 若0)(3时:判别边界为一超平面[1]。 3.2 感知器算法 1958年,(美)F.Rosenblatt 提出,适于简单的模式分类问题。感知器算法是对一种分

类学习机模型的称呼,属于有关机器学习的仿生学领域中的问题,由于无法实现非线性分类而下马。但“赏罚概念( reward-punishment concept )” 得到广泛应用,感知器算法就是一种赏罚过程[2]。 两类线性可分的模式类 21,ωω,设X W X d T )(=其中,[]T 1 21,,,,+=n n w w w w ΛW ,[]T 211,,,,n x x x Λ=X 应具有性质 (2) 对样本进行规范化处理,即ω2类样本全部乘以(-1),则有: (3) 感知器算法通过对已知类别的训练样本集的学习,寻找一个满足上式的权向量。 感知器算法步骤: (1)选择N 个分属于ω1和 ω2类的模式样本构成训练样本集{ X1 ,…, XN }构成增广向量形式,并进行规范化处理。任取权向量初始值W(1),开始迭代。迭代次数k=1。 (2)用全部训练样本进行一轮迭代,计算W T (k )X i 的值,并修正权向量。 分两种情况,更新权向量的值: 1. (),若0≤T i k X W 分类器对第i 个模式做了错误分类,权向量校正为: ()()i c k k X W W +=+1 c :正的校正增量。 2. 若(),0T >i k X W 分类正确,权向量不变:()()k k W W =+1,统一写为: ???∈<∈>=21T ,0,0)(ωωX X X W X 若若d

模式识别关于男女生身高和体重的神经网络算法

模式识别实验报告(二) 学院: 专业: 学号: 姓名:XXXX 教师:

目录 1实验目的 (1) 2实验内容 (1) 3实验平台 (1) 4实验过程与结果分析 (1) 4.1基于BP神经网络的分类器设计 .. 1 4.2基于SVM的分类器设计 (4) 4.3基于决策树的分类器设计 (7) 4.4三种分类器对比 (8) 5.总结 (8)

1)1实验目的 通过实际编程操作,实现对课堂上所学习的BP神经网络、SVM支持向量机和决策树这三种方法的应用,加深理解,同时锻炼自己的动手实践能力。 2)2实验内容 本次实验提供的样本数据有149个,每个数据提取5个特征,即身高、体重、是否喜欢数学、是否喜欢文学及是否喜欢运动,分别将样本数据用于对BP神经网络分类器、SVM支持向量机和决策树训练,用测试数据测试分类器的效果,采用交叉验证的方式实现对于性能指标的评判。具体要求如下: BP神经网络--自行编写代码完成后向传播算法,采用交叉验证的方式实现对于性能指标的评判(包含SE,SP,ACC和AUC,AUC的计算可以基于平台的软件包); SVM支持向量机--采用平台提供的软件包进行分类器的设计以及测试,尝试不同的核函数设计分类器,采用交叉验证的方式实现对于性能指标的评判; 决策树--采用平台提供的软件包进行分类器的设计以及测试,采用交叉验证的方式实现对于性能指标的评判(包含SE,SP,ACC和AUC,AUC的计算基于平台的软件包)。 3)3实验平台 专业研究方向为图像处理,用的较多的编程语言为C++,因此此次程序编写用的平台是VisualStudio及opencv,其中的BP神经网络为自己独立编写,SVM 支持向量机和决策树通过调用Opencv3.0库中相应的库函数并进行相应的配置进行实现。将Excel中的119个数据作为样本数据,其余30个作为分类器性能的测试数据。 4)4实验过程与结果分析 4.1基于BP神经网络的分类器设计 BP神经网络能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。其学习规则是使用梯度下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。BP神经网络模型拓扑结构包括输入层(input)、隐层(hidden layer)和输出层(output layer)。 在独自设计的BP神经中,激励函数采用sigmod函数,输入层节点个数为5,

《模式识别》实验报告

《模式识别》实验报告 一、数据生成与绘图实验 1.高斯发生器。用均值为m,协方差矩阵为S 的高斯分布生成N个l 维向量。 设置均值 T m=-1,0 ?? ??,协方差为[1,1/2;1/2,1]; 代码: m=[-1;0]; S=[1,1/2;1/2,1]; mvnrnd(m,S,8) 结果显示: ans = -0.4623 3.3678 0.8339 3.3153 -3.2588 -2.2985 -0.1378 3.0594 -0.6812 0.7876 -2.3077 -0.7085 -1.4336 0.4022 -0.6574 -0.0062 2.高斯函数计算。编写一个计算已知向量x的高斯分布(m, s)值的Matlab函数。 均值与协方差与第一题相同,因此代码如下: x=[1;1]; z=1/((2*pi)^0.5*det(S)^0.5)*exp(-0.5*(x-m)'*inv(S)*(x-m)) 显示结果: z = 0.0623 3.由高斯分布类生成数据集。编写一个Matlab 函数,生成N 个l维向量数据集,它们是基于c个本体的高斯分布(mi , si ),对应先验概率Pi ,i= 1,……,c。 M文件如下: function [X,Y] = generate_gauss_classes(m,S,P,N) [r,c]=size(m); X=[]; Y=[]; for j=1:c t=mvnrnd(m(:,j),S(:,:,j),fix(P(j)*N)); X=[X t]; Y=[Y ones(1,fix(P(j)*N))*j]; end end

调用指令如下: m1=[1;1]; m2=[12;8]; m3=[16;1]; S1=[4,0;0,4]; S2=[4,0;0,4]; S3=[4,0;0,4]; m=[m1,m2,m3]; S(:,:,1)=S1; S(:,:,2)=S2; S(:,:,3)=S3; P=[1/3,1/3,1/3]; N=10; [X,Y] = generate_gauss_classes(m,S,P,N) 二、贝叶斯决策上机实验 1.(a)由均值向量m1=[1;1],m2=[7;7],m3=[15;1],方差矩阵S 的正态分布形成三个等(先验)概率的类,再基于这三个类,生成并绘制一个N=1000 的二维向量的数据集。 (b)当类的先验概率定义为向量P =[0.6,0.3,0.1],重复(a)。 (c)仔细分析每个类向量形成的聚类的形状、向量数量的特点及分布参数的影响。 M文件代码如下: function plotData(P) m1=[1;1]; S1=[12,0;0,1]; m2=[7;7]; S2=[8,3;3,2]; m3=[15;1]; S3=[2,0;0,2]; N=1000; r1=mvnrnd(m1,S1,fix(P(1)*N)); r2=mvnrnd(m2,S2,fix(P(2)*N)); r3=mvnrnd(m3,S3,fix(P(3)*N)); figure(1); plot(r1(:,1),r1(:,2),'r.'); hold on; plot(r2(:,1),r2(:,2),'g.'); hold on; plot(r3(:,1),r3(:,2),'b.'); end (a)调用指令: P=[1/3,1/3,1/3];

模式识别实验报告(一二)

信息与通信工程学院 模式识别实验报告 班级: 姓名: 学号: 日期:2011年12月

实验一、Bayes 分类器设计 一、实验目的: 1.对模式识别有一个初步的理解 2.能够根据自己的设计对贝叶斯决策理论算法有一个深刻地认识 3.理解二类分类器的设计原理 二、实验条件: matlab 软件 三、实验原理: 最小风险贝叶斯决策可按下列步骤进行: 1)在已知 ) (i P ω, ) (i X P ω,i=1,…,c 及给出待识别的X 的情况下,根据贝叶斯公式计 算出后验概率: ∑== c j i i i i i P X P P X P X P 1 ) ()() ()()(ωωωωω j=1,…,x 2)利用计算出的后验概率及决策表,按下面的公式计算出采取i a ,i=1,…,a 的条件风险 ∑== c j j j i i X P a X a R 1 )(),()(ωω λ,i=1,2,…,a 3)对(2)中得到的a 个条件风险值) (X a R i ,i=1,…,a 进行比较,找出使其条件风险最小的 决策k a ,即()() 1,min k i i a R a x R a x == 则 k a 就是最小风险贝叶斯决策。 四、实验内容 假定某个局部区域细胞识别中正常(1ω)和非正常(2ω)两类先验概率分别为 正常状态:P (1ω)=; 异常状态:P (2ω)=。 现有一系列待观察的细胞,其观察值为x : 已知先验概率是的曲线如下图:

)|(1ωx p )|(2ωx p 类条件概率分布正态分布分别为(-2,)(2,4)试对观察的结果 进行分类。 五、实验步骤: 1.用matlab 完成分类器的设计,说明文字程序相应语句,子程序有调用过程。 2.根据例子画出后验概率的分布曲线以及分类的结果示意图。 3.最小风险贝叶斯决策,决策表如下: 结果,并比较两个结果。 六、实验代码 1.最小错误率贝叶斯决策 x=[ ] pw1=; pw2=; e1=-2; a1=; e2=2;a2=2; m=numel(x); %得到待测细胞个数 pw1_x=zeros(1,m); %存放对w1的后验概率矩阵 pw2_x=zeros(1,m); %存放对w2的后验概率矩阵

操作系统实验报告18038

福州大学数学与计算机科学(软件)学院 实验报告 课程名称:计算机操作系统 学号:221100218 姓名: 专业:软件工程 年级:2011级 学期:2012学年第2学期 2013年10 月24 日

实验一 Linux操作系统的使用和分析 一、实验目的 本实验主要学习和掌握Linux操作系统的基本应用。通过本实验,学生能够熟练掌握Linux环境下各种基本操作命令接口的应用。从系统安全角度出发,学习掌握系统的基本安全优化和配置,在操作系统层次进行有效安全加固,提高Linux系统的安全性能。通过本次实验,有助于学生进一步理解操作系统原理中的相关内容,加深认识。 二、实验要求 1、熟练掌握Linux系统的基本操作命令。 2、熟悉Linux 系统的基本配置。 3、实现Linux系统的安全加固。 4、掌握一种以上的网络应用软件的安装、配置与应用。 三、实验内容 系统的启动,如图: 关闭使用shutdowm 还有列出文件夹内的信息ls,cp复制拷贝,touch创建文件命令等等 ①下载文件压缩包pro.gz,解压如图:

②然后修改安装路径: ③之后用make编译文件 ④在安装路径/home/liaoenrui/11里的etc中修改文件的组名和用户名: 将groud 命名也命名为ftp,然后用groudadd和useradd命令将这两个添加在该目录的sbin目录下:

⑤最后运行文件,./profile即可 四、实验总结 通过本次的操作系统的上机实验,我熟练了Linux系统的基本操作命令,并且对安装文件有更深入的了解,比如在上述安装过程中对于通过froftpd来架构linux的ftp,由于之前都是用window系统,所以对于这些非常的生疏,因此在请教了多人和上网查询之后,终于有所了解,并且成功的将此实验顺利完成。在本次实验中,我发现自己的动手能力又有很大的提高,相信以后继续努力的话会有更大的进步,当然这也要归功于老师的教导。 参考文献 [1] Neil Maththew Richard Stones Linux 程序设计第四版人民邮电出版社 [2] 周茜,赵明生.中文文本分类中的特征选择研究[J].中文信息学报,2003,Vol.18 No.3

机器学习在模式识别中的算法研究

机器学习在模式识别中的算法研究 摘要:机器学习是计算机开展智能操作的基础,人工智能的发展依靠机器学习 技术,而机器学习、模式识别与当前人工智能的发展密切相关。本文通过概述机 器学习机制,围绕神经网络、遗传算法、支持向量机、K-近邻法等算法研究当前 机器学习在模拟识别中的应用,为今后模拟识别与人工智能开发与研究提供借鉴。关键词:机器学习;模式识别;人工神经网络 前言: 机器学习技术覆盖了人工智能的各个部分,如自动推理、专家系统、模式识别、智能机器人等。模式识别是将计算机的不同事物划分成不同的类别。人工智 能的模式识别可以利用机器学习算法完善分类能效。因此,机器学习与模式识别 密不可分,本文就机器学习在模式识别领域的学习算法中的应用展开研究。 1、机器学习机制与系统设计 在机器学习模型中,环境可以向系统的学习部件中提供信息,学习部件根据 这些信息调整和修改知识库,提升系统内部执行文件的性能。执行文件再将获得 的信息向学习部件反馈,此过程就是机器学习系统结合外部与内部的环境信息自 动获取知识的过程。机器学习系统设计的构建过程应包含两部分:其一,模型的 选择和构建。其二,学习算法的选择与设计。不同种类的模型具有不同的目标函数,涉及到不同的学习机制,算法的复杂性与能力决定着学习系统的效率与学习 能力。此外,训练样本集的特征与大小的问题也与机器学习系统的性能相关。 2、机器学习在模式识别中的应用 2.1 遗传算法 在机器学习中,特征维数是一大难题,每一种模式中的特征反映出的事物本 质权重均不一致。部分对于分类结果并无积极作用,甚至属于冗余,因此选择特 征尤为关键。遗传算法实际上是寻优算法,可以有效的解决特征选择问题。遗传 算法可以筛选出准确反映出原模式相关信息、影响分类的结果、相互关联性较小 的特征。遗传算法实际是利用达尔文的生物进化思想,在运算领域中巧妙生成一 种寻优算法。该算法是1975年由美国Michigan大学的Holland教授提出的,遗 传算法的主要方法如下:首先,将种群中的个体作为对象,进行一系列的变异、 交叉、选择等操作。其次,利用遗传操作促进群体不断的进化,最终产生最优的 个体,最后,结合个体对于环境的适应程度选择最优良的个体,为其创造机会繁 衍后代。遗传算法程序如下:选择合适的编码策略,确定遗传策略和适应度函数。遗传策略包含种群的选择、大小、交叉概率、变异方法、变异概率等遗传参数; 利用编码策略,将特征集变为位串结构;构建初始化群体;计算整个群体的个体 适应度;结合遗传策略,将交叉、选择等作用在群体中,产生下一代群体;判别 群体性能是否到达某一标准,假若不满足将回到遗传策略阶段。 2.2 k-近邻法 k-nearest neighbor(k-近邻法)被广泛运用在无指导、基于实例的学习方法中, 可以实现线性不可分的样本识别,在之前并不了解待分样本的分布函数。当前被 广泛应用的k-近邻法主要是将待分类样本为重点形成超球体,同时扩展超球的半 径一直到球内包含着K个已知模式的样本,判别k个邻近样本属于哪一种。其主 要分类算法如下:设有c个类别,分别是w1,w2,w3,...,wc,i=1,2,3,...,c.测试样本x

《大学计算机基础》上机实验报告

《大学计算机基础》 上机实验报告 班级: 姓名: 学号: 授课教师: 日期:年月日

目录 一、Windows操作系统基本操作 ............................. - 1 - 二、Word文字处理基本操作 ................................ - 4 - 三、Excel电子表格基本操作 ............................... - 6 - 四、PowerPoint幻灯片基本操作 ............................ - 8 - 五、网页设计基本操作..................................... - 9 - 六、Access数据库基本操作 ............................... - 10 - 上机实验作业要求: ○1在实验报告纸上手写并粘贴实验结果; ○2每人将所有作业装订在一起(要包封面); ○3全部上机实验结束后全班统一上交; ○4作业内容不得重复、输入的数据需要有差别。

实验名称一、Windows操作系统基本操作 实验目的1、掌握Windows的基本操作方法。 2、学会使用“画图”和PrntScr快捷键。 3、学会使用“计算器”和Word基本操作。 实验内容 1、日历标注 利用“画图”和Word软件,截取计算机上日历的图片并用文字、颜色、图框等标注出近期的节假日及其名称,并将结果显示保存在下面(参考下面样图)。 运行结果是: 主要操作步骤是: 2、科学计算 利用“计算器”和Word软件,计算下列题目,并将结果截图保存在下面(参考样图)。 ○1使用科学型计算器,求8!、sin(8)、90、74、20、67、39、400、50.23、ln(785)的平均值、和值,并用科学计数法显示。 运行结果是: ②将以下十、八、十六进制数转换为二进制数:(894.8125)10、(37.5)8、(2C.4B)16 运行结果是:(需要下载使用“唯美计算器”) ○3计算下列二进制数的加法与乘法:101.1+11.11;1101*1011 运行结果是:(参考样图) 写出主要操作步骤: 3、实验心得体会

模式识别实验报告

实验一Bayes 分类器设计 本实验旨在让同学对模式识别有一个初步的理解,能够根据自己的设计对贝叶斯决策理论算法有一个深刻地认识,理解二类分类器的设计原理。 1实验原理 最小风险贝叶斯决策可按下列步骤进行: (1)在已知)(i P ω,)(i X P ω,i=1,…,c 及给出待识别的X 的情况下,根据贝叶斯公式计算出后验概率: ∑== c j i i i i i P X P P X P X P 1 ) ()() ()()(ωωωωω j=1,…,x (2)利用计算出的后验概率及决策表,按下面的公式计算出采取i a ,i=1,…,a 的条件风险 ∑== c j j j i i X P a X a R 1 )(),()(ωω λ,i=1,2,…,a (3)对(2)中得到的a 个条件风险值)(X a R i ,i=1,…,a 进行比较,找出使其条件风险最小的决策k a ,即 则k a 就是最小风险贝叶斯决策。 2实验内容 假定某个局部区域细胞识别中正常(1ω)和非正常(2ω)两类先验概率分别为 正常状态:P (1ω)=0.9; 异常状态:P (2ω)=0.1。

现有一系列待观察的细胞,其观察值为x : -3.9847 -3.5549 -1.2401 -0.9780 -0.7932 -2.8531 -2.7605 -3.7287 -3.5414 -2.2692 -3.4549 -3.0752 -3.9934 2.8792 -0.9780 0.7932 1.1882 3.0682 -1.5799 -1.4885 -0.7431 -0.4221 -1.1186 4.2532 已知类条件概率密度曲线如下图: )|(1ωx p )|(2ωx p 类条件概率分布正态分布分别为(-2,0.25)(2,4)试对观察的结果进 行分类。 3 实验要求 1) 用matlab 完成分类器的设计,要求程序相应语句有说明文字。 2) 根据例子画出后验概率的分布曲线以及分类的结果示意图。 3) 如果是最小风险贝叶斯决策,决策表如下:

模式识别实验报告_2

模式识别理论与方法 课程作业实验报告 实验名称:Generating Pattern Classes 实验编号:Proj01-01 规定提交日期:2012年3月16日 实际提交日期:2012年3月13日 摘要: 在熟悉Matlab中相关产生随机数和随机向量的函数基础上,重点就多元(维)高斯分布情况进行了本次实验研究:以mvnrnd()函数为核心,由浅入深、由简到难地逐步实现了获得N 个d维c类模式集,并将任意指定的两个维数、按类分不同颜色进行二维投影绘图展示。 技术论述:

1,用矩阵表征各均值、协方差2,多维正态分布函数: 实验结果讨论:

从实验的过程和结果来看,进一步熟悉了多维高斯分布函数的性质和使用,基本达到了预期目的。 实验结果: 图形部分: 图1集合中的任意指定两个维度投影散点图形

图2集合中的任意指定两个维度投影散点图形,每类一种颜色 数据部分: Fa= 9.6483 5.5074 2.4839 5.72087.2769 4.8807 9.1065 4.1758 1.5420 6.1500 6.2567 4.1387 10.0206 3.5897 2.6956 6.1500 6.9009 4.0248 10.1862 5.2959 3.1518 5.22877.1401 3.1974 10.4976 4.9501 1.4253 5.58257.4102 4.9474 11.3841 4.5128 2.0714 5.90068.2228 4.4821 9.6409 5.43540.9810 6.2676 6.9863 4.2530 8.8512 5.2401 2.7416 6.5095 6.1853 4.8751 9.8849 5.8766 3.3881 5.7879 6.7070 6.6132 10.6845 4.8772 3.4440 6.0758 6.6633 3.5381 8.7478 3.3923 2.4628 6.1352 6.9258 3.3907

模式识别第三章-感知器算法

模式识别第三章 感知器算法 一.用感知器算法求下列模式分类的解向量w : })0,1,1(,)1,0,1(,)0,0,1(,)0,0,0{(:1T T T T ω })1,1,1(,)0,1,0(,)1,1,0(,)1,0,0{(:2T T T T ω 将属于2ω的训练样本乘以(-1),并写成增广向量的形式: T x )1,0,0,0(1 =,T x )1,0,0,1(2=,T x )1,1,0,1(3=,T x )1,0,1,1(4 = T x )1,1-,0,0(5-=,T x )1,1-,1-,0(6-=,T x )1,0,1-,0(7-=,T x )1,1-,1-,1-(8-= 第一轮迭代:取1=C ,T )0,0,0,0()1(=ω 因0)1,0,0,0)(0,0,0,0()1(1==T T x ω不大于0,故T x )1,0,0,0()1()2(1=+=ωω 因1)1,0,0,1)(1,0,0,0()2(2==T T x ω大于0,故T )1,0,0,0()2()3(==ωω 因1)1,1,0,1)(1,0,0,0()3(3==T T x ω大于0,故T )1,0,0,0()3()4(==ωω 因1)1,0,1,1)(1,0,0,0()4(4==T T x ω大于0,故T )1,0,0,0()4()5(==ωω 因1)1,1-,0,0)(1,0,0,0()5(5-=-=T T x ω不大于0,故T x )0,1-,0,0()5()6(5 =+=ωω 因1)1,1-,1-,0)(0,1-,0,0()6(6=-=T T x ω大于0,故T )0,1-,0,0()6()7(==ωω 因0)1,0,1-,0)(0,1-,0,0()7(7=-=T T x ω不大于0,故T x )1-,1-,1,0()7()8(7-=+=ωω 因3)1,1-,1-,1-)(1-,1-,1,0()8(8=--=T T x ω大于0,故T )1-,1-,1,0()8()9(-==ωω 第二轮迭代: 因1)1,0,0,0)(1-,1-,1,0()9(1-=-=T T x ω不大于0,故T x )0,1-,1,0()9()10(1-=+=ωω 因0)1,0,0,1)(0,1-,1-,0()10(2==T T x ω不大于0,故T x )1,1,1,1()10()11(2--=+=ωω 因1)1,1,0,1)(1,1,1,1()11(3=--=T T x ω大于0,故T )1,1,1,1()11()12(--==ωω 因1)1,0,1,1)(1,1,1,1()12(4=--=T T x ω大于0,故T )1,1,1,1()12()13(--==ωω

相关主题
文本预览
相关文档 最新文档