⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 linearr.m

📁 The pattern recognition matlab toolbox
💻 M
字号:
%LINEARR Linear regression%%     Y = LINEARR(X,LAMBDA,N)%% INPUT%   X       Dataset%   LAMBDA  Regularization parameter (default: no regularization)%   N       Order of polynomial (optional)%% OUTPUT%   Y       Linear (or higher order) regression%% DESCRIPTION% Perform a linear regression on dataset X, with regularization% parameter LAMBDA.  When N is supplied, also higher order polynomials% are possible.%% SEE ALSO%  RIDGER, TESTR, PLOTR, VANDERMONDE% Copyright: D.M.J. Tax, D.M.J.Tax@prtools.org% Faculty EWI, Delft University of Technology% P.O. Box 5031, 2600 GA Delft, The Netherlandsfunction y = linearr(x,lambda,p)if nargin<3	p = 1;endif nargin<2	lambda = [];endif nargin<1 | isempty(x)	y = mapping(mfilename,{lambda,p});	y = setname(y,'Linear regression');	returnendif ~ismapping(lambda) %training	[n,d] = size(x);	X = +vandermondem(x,p);	if isempty(lambda)		beta = inv(X'*X)*X'*gettargets(x);	else		dimp = size(X,2);		beta = inv(X'*X + lambda*eye(dimp))*X'*gettargets(x);	end	W.beta = beta;	W.n = p;	y = mapping(mfilename,'trained',W,1,d,1);	y = setname(y,'Linear regression');else	% evaluation	w = getdata(lambda);	out = vandermondem(x,w.n)*w.beta;	y = setdat(x,out);	end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -