智能信息处理课程设计报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
智能信息处理课程设计报告
班级:11电科2
姓名:张俊为
学号: Xb11640218 浙江理工大学科技与艺术学院
1. 课程设计目的
1. 提高分析问题、解决问题的能力,进一步巩固智能信息处理算法的基本原理与方法。 2. 熟悉掌握一门计算机语言,可以进行智能信息处理的应用开发设计。
2. 课程设计内容及实现
1. 掌握BP 网络的基本原理,能利用BP 网络解决Hermit 多项式的逼近问题,具体内
容如下:
考虑Hermit 多项式的逼近问题,该问题由Mackay 提出:
()()22
1.112exp 2x F x x x ⎛⎫
=-+- ⎪⎝⎭
,式中,x ∈R 。
训练样本产生方式如下:样本数N=100,其中样本输入x i 服从区间[-4, 4]内的均匀分布,样本输出为F(x i )+e i , e i 为添加的噪声,服从均值为0,标准差为0.1的正态分布。
对于该函数逼近问题,可以用一个单输入单输出的3层BP 网络对样本进行拟合,网络的隐节点数选为10。
其它学习参数设定如下:神经网络采用标准Sigmoid 激活函数,输出层采用线性激活函数,即:()f u u =。
学习率η=0.003,目标误差ε=0.5,最大学习次数20000,初始权值和偏移取[-0.1, 0.1]内的随机数。
2. 掌握模糊C 均值聚类算法的基本原理,并用该算法实现彩色图像分割。
2.1、BP 网络解决函数逼近
2.1.1、BP 神经网络设计
图 1创建BP 神经网络
2.1.2、BP 神经网络训练
图 2训练图2.1.3、BP神经网络测试及结果分析
图 3仿真结果图
P=linspace(-4,4,100);%均匀产生随机数
T=1.1.*(1-P+2.*P.^2).*exp(-P.^2/2)+sqrt(0.1)*rand n(1); %样本输出fx+ei t
net=newff(P,T,10); %产生bp网络,10个神经元net.trainParam.show = 50;%显示周期
net.trainParam.lr = 0.003; %学习率
net.trainParam.epochs = 20000;%最大学习次数
net.trainParam.goal = 0.001; %目标误差
net.IW{1,1}=rand(10,1)*0.2-0.1;%初始权值
net.b{1,1}=rand(10,1)*0.2-0.1;
net.b{2,1}=rand(1)*0.2-0.1;%初始偏移量
[net,tr]=train(net,P,T); p=8.*rand(1,100)-4;
A = sim(net,P); %仿真figure; plot(P,T,'o',P,A,'x');
2.2、基于模糊C均值聚类的彩色图像分割
2.2.1、基本原理及实现流程
在数字图像由于存在混合像素的原因,也就是说一个像素中不仅存在一类地物,因而采用硬分类方式往往不合适,而模糊C均值就是引入模糊集对每个像素的划分概率不单单是
用0或1这样的硬分类方式,而是0和1之间的范围内(包括0和1)。
定义{},1,2,...,i x i n =是n 个样本组成的样本集合,c 为预定的类别数目,
,1,2,...,i m i c =为每个聚类中心,()j i u x 是第i 个样本对于第j 类的隶属度函数。用隶属度
函数定义的聚类损失函数可以写为:
2
11
(),c
n
b f j i i j j i J u x x m ==⎡⎤=-⎣⎦∑∑
其中,1b >是一个可以控制聚类结果的模糊程度的常数。
在不同的隶属度定义方法下最小化式的损失函数,就得到不同的模糊聚类方法。其中最有代表的是模糊C 均值方法,它要求一个样本对于各个聚类的隶属度之和为1,即
1
()1,c
j
i
j u x ==∑ 1,2,...
,i n = 在条件式下求得其极小值,令f J 对i m 和()j i u x 的偏导数为0,可得必要条件:
1
1
(),1,2,...,()n
b
j i i i i n
b
j i i u x x m j c u x ==⎡⎤⎣⎦=
=⎡⎤⎣⎦
∑
∑
,
()()
()
()
1/121/121
1/(),1,2,...,1/b i
j
j
i
c
b i
j
k x m u x i n x m --=-=
=-∑ 1,2,...
,j c =。 用迭代的方法求解上式,就是模糊C 均值算法。算法步骤如下:
1) .设定聚类数目c 和参数b 。
2) 初始化各个聚类中心i m 。
3)重复下面的运算,直到各个样本的隶属度值稳定: 当算法收敛时,就得到了各类的聚类中心和各个样本对于各类的隶属度值,从而完成了模糊聚类划分。
2.2.2、实验结果及分析
图4 图5
RGB=imread('1954.jpg','jpg');
figure(1),imshow(RGB),title('彩色图');
u=reshape(RGB,[6144 3]);
u=double(u); cluster_n=3;
options=[2 100 exp(-5) 1];
[center, U, obj_fcn] = FCMClust(u, cluster_n, options);
[A,B]=max(U); a=reshape(B,[64 96 1]);
a(B==1)=0; a(B==3)=125; a(B==2)=255; a=uint8(a); figure(2),imshow(a),title('转换图');
3.课程设计总结与体会
这次课程设计,我学到了BP神经网络的构建,训练,以及参数的选择等。设置适量的神经元个数,以及学习次数,可以让神经网络更有效率地进行训练,在最短的时间取得最好的结果。我了解到模糊C均值聚类首先需要对彩色图像分割成一些颜色相近的集合,然后在进行聚类。这样也可以大大加快该算法的速度。这两个实验都对算法的效率有一定的要求,在输出同样的结果时,更高效的方法能更快应用于我们的生产和生活。