㈠ MATLAB 中 正则化函数是什么
不知道你问的是正则化项,还是正则化方法。
(1)如果是正则化项,一般用范数表示:
norm(X)默认等同于 norm(X,2),返回 X的2-范数;
norm(X,1) 返回 X的1-范数;
norm(X,Inf) 返回 X的无穷范数;
norm(X,'fro') 返回 X的F范数.
(2)如果是某一具体的正则化方法,估计需要自己编程,仿佛曾见过老外编的一个正则化工具箱,里面包括常见的正则化方法,例如:Tikhnove正则化。
㈡ 关于matlab的SVM工具箱的几个函数
能不用自带函数不,给你个最小二乘支持向量机的自编代码
clear all;
clc;
N=35; %样本个数
NN1=4; %预测样本数
%********************随机选择初始训练样本及确定预测样本*******************************
x=[];
y=[];
index=randperm(N); %随机排序N个序列
index=sort(index);
gama=23.411; %正则化参数
deita=0.0698; %核参数值
%thita=; %核参数值
%*********构造感知机核函数*************************************
%for i=1:N
% x1=x(:,index(i));
% for j=1:N
% x2=x(:,index(j));
% K(i,j)=tanh(deita*(x1'*x2)+thita);
% end
%end
%*********构造径向基核函数**************************************
for i=1:N
x1=x(:,index(i));
for j=1:N
x2=x(:,index(j));
x12=x1-x2;
K(i,j)=exp(-(x12'*x12)/2/(deita*deita));
end
end
%*********构造多项式核函数****************************************
%for i=1:N
% x1=x(:,index(i));
% for j=1:N
% x2=x(:,index(j));
% K(i,j)=(1+x1'*x2)^(deita);
% end
%end
%*********构造核矩阵************************************
for i=1:N-NN1
for j=1:N-NN1
omeiga1(i,j)=K(i,j);
end
end
omeiga2=omeiga1';
omeiga=omeiga2+(1/gama)*eye(N-NN1);
A12=ones(1,N-NN1);
A21=A12';
A=[0 A12;A21 omeiga];
%**************************************
for i=1:N-NN1
B21(i,:)=y(index(i));
end
B=[0;B21];
%********LS-SVM模型的解******************************
C=A\B;
%******
b=C(1); %模型参数
for i=1:N-NN1
aipha(i)=C(i+1); %模型参数,行向量
end
%*******************************************
for i=1:N %预测模型
aifx(i)=b+(aipha)*K(1:N-NN1,i);
end
%*******************************************
aifx
index
㈢ 求大神解答:matlab软件中center and scale x data是什么意思
你好
这句话的意思是将x data原始数据进行中心化与比例化处理。类似于线性插值技术。matlab在曲线拟合工具箱中加入这个选项是为了当X data与ydata拟合不好时,选择这个选项有利于得到更好的拟合效果。matlab通过正则化预测数据(Xdatal)的中心与比例,以有助于预测。具体实现过程如下:
x 是预测数据, μ 是 x的均值, σ 是x的标准差 .把xdata数据转换成z, 转换后的数据中心 为0, 标准差为 1.
经过centering and scaling后,求出的多项式系数是y与z的函数关系,与y与x关系不同。但是模型形式与残差范数没有变化。具体如何实现过程见matlab给出的比较代码:
loadcensus
x=cdate;
y=pop;
z=(x-mean(x))/std(x);%Computez-scoresofxdata
plot(x,y,'ro')%Plotdata
holdon
zfit=linspace(z(1),z(end),100);
pz=polyfit(z,y,3);%Computeconditionedfit
yfit=polyval(pz,zfit);
xfit=linspace(x(1),x(end),100);
plot(xfit,yfit,'b-')%Plotconditionedfitvs.xdata
处理后x与z数据的差异化见下图:
好处是能得到更加精确的拟合结果。
可也有缺点,得不到y与x的直接函数关系式,只能间接通过z得到。
希望对你有帮助!