You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
22 lines
714 B
Matlab
22 lines
714 B
Matlab
10 years ago
|
function [theta] = trainLinearReg(X, y, lambda)
|
||
|
%TRAINLINEARREG Trains linear regression given a dataset (X, y) and a
|
||
|
%regularization parameter lambda
|
||
|
% [theta] = TRAINLINEARREG (X, y, lambda) trains linear regression using
|
||
|
% the dataset (X, y) and regularization parameter lambda. Returns the
|
||
|
% trained parameters theta.
|
||
|
%
|
||
|
|
||
|
% Initialize Theta
|
||
|
initial_theta = zeros(size(X, 2), 1);
|
||
|
|
||
|
% Create "short hand" for the cost function to be minimized
|
||
|
costFunction = @(t) linearRegCostFunction(X, y, t, lambda);
|
||
|
|
||
|
% Now, costFunction is a function that takes in only one argument
|
||
|
options = optimset('MaxIter', 200, 'GradObj', 'on');
|
||
|
|
||
|
% Minimize using fmincg
|
||
|
theta = fmincg(costFunction, initial_theta, options);
|
||
|
|
||
|
end
|