机器学习作业之 Linear Regression with Multiple Variables (Week 2)

来源:互联网 发布:统计查询sql语句 编辑:程序博客网 时间:2024/05/17 18:49
cost function:
function J = computeCost(X, y, theta)%COMPUTECOST Compute cost for linear regression%   J = COMPUTECOST(X, y, theta) computes the cost of using theta as the%   parameter for linear regression to fit the data points in X and y% Initialize some useful valuesm = length(y); % number of training examples% You need to return the following variables correctly J = 0;% ====================== YOUR CODE HERE ======================% Instructions: Compute the cost of a particular choice of theta%               You should set J to the cost. for i=1:m J = J+(X(i,:)*theta - y(i,:))^2; end J = J/(2*m); % =========================================================================end

granditent descent:

function [theta, J_history] = gradientDescent(X, y, theta, alpha, num_iters)%GRADIENTDESCENT Performs gradient descent to learn theta%   theta = GRADIENTDESENT(X, y, theta, alpha, num_iters) updates theta by %   taking num_iters gradient steps with learning rate alpha% Initialize some useful valuesm = length(y); % number of training examplesJ_history = zeros(num_iters, 1);for iter = 1:num_iters    % ====================== YOUR CODE HERE ======================    % Instructions: Perform a single gradient step on the parameter vector    %               theta.     %    % Hint: While debugging, it can be useful to print out the values    %       of the cost function (computeCost) and gradient here.    %   theta=theta-alpha*(1/m)*(X'*(X*theta-y));              % ============================================================    % Save the cost J in every iteration        J_history(iter) = computeCost(X, y, theta);endend


0 0
原创粉丝点击