矩阵计算-MATLAB-利用最小二乘法生成一个线性分类器

  • 格式:doc
  • 大小:74.00 KB
  • 文档页数:2
y2=a*x2+b;
hold;
plot(x2,y2);些离散的点
四、心得体会
通过本次实验我熟悉线性分类器的概念,了解有哪些主流的分类器,并且通过对现有知识的学习,我会利用最小二乘法设计一个线性分类器。首先在实验前,应该先了解最先二乘法和线性分类器的概念,这样以便于我们做实验。本次实验是基于一次函数y=kx+b形式进行实验的,在实验时,我先求出了系数k和截距b。在做实验时,要先利用程序代码生成一些离散的点,其次要利用程序对离散点进行曲线拟合。本次实验也或多或少的出现了一些问题,比如:开始时,不知道散点图怎么绘制,曲线怎么拟合,好在自己查阅资料,一点点的解决了。
B(1,1)=B(1,1)+x(i)*y(i);
B(2,1)=B(2,1)+y(i);
end
A(2,1)=A(1,2);
S=A\B;
a=S(1);
b=S(2);
end
2)在command windows窗口中输入以下代码
[a,b]=OnePolyFit(x,y)%直线一次拟合,生成拟合后图像
x2=linspace(0,10);
x1=linspace(0,10);
y1=x1+0.28;
plot(x1,y1);%生成仿真测量数据
x=linspace(0,10,30);
y=x+0.28+0.1*randn(1,length(x))
plot(x,y,'ro');%显示测量数据
2、对形如y=kx+b曲线拟合。
1)建立M文件
function [a,b]=OnePolyFit(x,y)%线性拟合函数
姓名学号专业班级
课程名称矩阵分析与计算实验名称利用最小二乘法生成一个线性分类器
实验日期
同组人员指导教师
得分
1、实验内容
1、熟悉线性分类器的概念。
2、了解有哪些主流的分类器。
3、设计一个线性分类器(最小二乘法)。
二、实验步骤
1、先生成一些离散的点。
建立M文件,在M文件中输入以下代码:
function mainFunc()%生成原始曲线
if(length(x)==length(y))
n=length(x);
else
disp('x和y的维数不相等');
2、曲线拟合。
return;
end
A=zeros(2,2);
A(2,2)=n;
B=zeros(2,1);
for i=1:n
A(1,1)=A(1,1)+x(i)*x(i);
A(1,2)=A(1,2)+x(i);