.^ \\ / .\\ ./ kron , ; 点幂 左除 详细说明help slash 右除 点左除 点右除 张量积 详细说明help kron 作分隔用,如把矩阵元素、向量参数、函数参数、几个表达式分隔开来 (a)写在一个表达式后面时,运算后命令窗口中不显示表达式的计算结果 (b)在创建矩阵的语句中指示一行元素的结束,例如m=[x y z;i j k] : (a)创建向量的表达式分隔符,如x=a:b:c (b)a(:,j)表示j列的所有行元素;a(i,:)表示i行的所有列元素;a(1:3,4)表示第四列的第1行至第3行元素 () [] {} % ' .' ... = == <,> & | ~ xor 圆括号 创建数组、向量、矩阵或字符串(字母型) 创建单元矩阵(cell array)或结构(struct) 注释符,特别当编写自定义函数文件时,紧跟function后的注释语句,在你使用help函数名时会显示出来。 (a)一般转置符 表示MATLAB表达式继续到下一行,增强代码可读性 赋值符号 等于关系运算符 小于,大于关系运算符 详细说明help relop 逻辑与 逻辑或 逻辑非 逻辑异或 定义字符串用 (b)向量或矩阵的共轭转置符 MATLAB所定义的特殊变量及其意义 变量名 help who ans eps pi inf NaN 意义 在线帮助命令, 如用help plot调用命令函数plot的帮助说明。 列出所有定义过的变量名称 最近的计算结果的变量名 MATLAB定义的正的极小值=2.2204e-16 π值3.14159265... ∞值,无限大 非数
特殊矩阵生成函数 函数命令 compan(a) 说明 生成伴随矩阵,a须为向量,即行数为1或列数为1的矩阵。 4
magic(a) pascal(a) pascal(a,k) 生成a阶魔方阵, 生成a阶Pascal矩阵(向右上的斜列方向为对应的二项式(x+y)i 项系数) 设置k=1时,按行方向由上到下,由左到右顺序为(x-y)i项系数 设置k=2时,按列方向由下到上,由右到左顺序为(x-y)i项系数 hadamard(a) hilb(a) invhilb(a) 生成哈达玛矩阵,其中a,a/12或a/20须为2的整数次幂。 H2=[1 1;1 -1] H2n=[Hn Hn;Hn -Hn] (Hn为n阶hadamard矩阵) 生成a阶希尔伯特矩阵,其中元素aij为1/(i+j-1)。 生成a阶希尔伯特矩阵的逆矩阵。 5
实验一 感知器算法实验
一、实验目的
掌握感知器算法聚类原理。
二、实验原理
感知器算法:
(1)已知两个训练模式集共N个模式,它们分别属于?1和?2类,权向量初始值为w(1);
(2)在用全部训练模式集进行第一轮迭代中,第k次训练步骤为:
如Xk??1 且wT(k)?Xk?0 且分类器对第k个模式Xk做错误分类,应校正权向量,使
w(k?1)?w(k)?C?Xk (C为一校正常数)
如Xk??2 且wT(k)?Xk?0 且分类器对第k个模式Xk做错误分类,应校正权向量,使
w(k?1)?w(k)?C?Xk
如不合以上情况,表明该模式样本在第k部中分类正确,权向量不变,即
w(k?1)?w(k)
(3)重复第2部,一直到某轮训练中所有的模式都有:
?wT(k)?Xk?0如Xk??1 ?T?w(k)?Xk?0如Xk??2
三、使用仪器、材料
计算机
四、实验步骤
1.实验步骤
利用MATLAB编程实现感知器分类算法,并对实验一中图1实验数据进行分类(左下角 8点属于第一类,右上角点属于第二类),求出判别函数,画出判别界面。
6
1)20个模式样本点,分别属于?1和?2类,取权向量初始值为w(1)=[0 0 0]’,校正系数C=1;并对?2类样本取增广向量后乘(-1);
2)在用全部训练模式集进行第一轮迭代中,第k次训练步骤为:如
wT(k)?Xk?0 ,则分类器对Xk做错误分类,应校正权向量,使W(k+1)=W(k)+Xk;否则权向量不变,即W(k+1)=W(k);
(3)重复第2步,直到某轮训练中所有的模式都有:WT(k)*Xk>0为止,算法收敛,记录数据。 2. 实验程序示例
%感知器算法
% 20个分类点集合
x=[0 0 1;1 0 1;0 1 1;1 1 1;2 1 1;1 2 1;2 2 1;3 2 1;-6 -6 -1;-7 -6 -1;-8 -6 -1;-6 -7 -1;-7 -7 -1;-8 -7 -1;-9 -7 -1;-7 -8 -1;-8 -8 -1;-9 -8 -1;-8 -9 -1;-9 -9 -1]; x=x';
sx=size(x);%=(2,20) w=[0 0 0]'; f=1; k=0;
while f==1 k=k+1 f=0;
for i=1:sx(2)
if w'*x(:,i)<=0 i
w=w+x(:,i) f=1;
%else h(i)=w'*x(:,i); end end end
五、实验过程原始记录
六、实验结果及分析
7
实验二 模式聚类算法实验
一、实验目的
掌握K-均值模式聚类原理。
二、实验原理
K-均值聚类法是先行选择K个样本点作为初始聚类中心,再按照最小距离原则使各个样本点向各个中心聚集,从而得到初始分类。然后判断初始分类是否合理(即为判断聚类前后聚类中心是否改变),如果不合理(即为聚类中心改变),就修改分类。以此反复进行修改聚类的迭代运算,知道合理为止。 K-均值聚类法步骤:
第一:选K个初始聚类中心:Z1(1),Z2(1),??,Zk(1);
第二:逐个将需要分类的模式样本{xi, i=1,2,3,??,N}按最小距离原则分配给K
个聚类中心中的某一个;
第三:计算各个聚类中心的新的向量值:
Zj(k?1)?1Njx?Sj(k)?X j=1,2,??,K
Nj为第j个聚类域Sj所包含样本个数;
第四:如果Zj(k?1)?Zj(k) ,j=1,2,??,K,则回到第二步,将模式样本逐个
重新分类,重复迭代计算。如果Zj(k?1)?Zj(k) ,j=1,2,??,K,算法收敛,计算完毕。
X2 10 9 8 7 6 5 4 3 2 1 X1 0 1 2 3 4 5 6 7 8 9 10 图1 8