首页 > 分享 > Meachine Learning 第二周作业

Meachine Learning 第二周作业

花了6-8个小时才完成第二周的作业,不熟悉matlab,走了很多弯路,纪念一下。

function A = warmUpExercise()
%WARMUPEXERCISE Example function in octave
%   A = WARMUPEXERCISE() is an example function that returns the 5x5 identity matrix

A = eye(5);
% ============= YOUR CODE HERE ==============
% Instructions: Return the 5x5 identity matrix
%               In octave, we return values by defining which variables
%               represent the return values (at the top of the file)
%               and then set them accordingly.
% ===========================================
end

function plotData(x, y)
%PLOTDATA Plots the data points x and y into a new figure
%   PLOTDATA(x,y) plots the data points and gives the figure axes labels of
%   population and profit.

figure; % open a new figure window

% ====================== YOUR CODE HERE ======================
% Instructions: Plot the training data into a figure using the
%               "figure" and "plot" commands. Set the axes labels using
%               the "xlabel" and "ylabel" commands. Assume the
%               population and revenue data have been passed in
%               as the x and y arguments of this function.
%
% Hint: You can use the 'rx' option with plot to have the markers
%       appear as red crosses. Furthermore, you can make the
%       markers larger by using plot(..., 'rx', 'MarkerSize', 10);

plot(x,y,'rx','MarkerSize',10);
ylabel('Profit in $10000s');
xlabel('Population of City in $10000s');
% ============================================================

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 values
m = 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 k=1:m
  L =(X(k,:)*theta-y(k))^2;
  J = J+L;
 end
  J = J/(2*m);

% =========================================================================
end

function [theta, J_history] = gradientDescent(X, y, theta, alpha, num_iters)
%GRADIENTDESCENT Performs gradient descent to learn theta
%   theta = GRADIENTDESCENT(X, y, theta, alpha, num_iters) updates theta by
%   taking num_iters gradient steps with learning rate alpha

% Initialize some useful values
m = length(y); % number of training examples
J_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.
    %
    J1=0;
    J2=0;
    for i = 1:m;
      J1 = J1 + X(i,:)*theta-y(i);
      J2 = J2 + (X(i,:)*theta-y(i))*X(i,2);
    end  

            temp1 = theta(1) - alpha*J1/m;
    temp2 = theta(2) - alpha*J2/m;
    theta(1) = temp1;
    theta(2) = temp2;

    % ============================================================

    % Save the cost J in every iteration    
    J_history(iter) = computeCost(X, y, theta);
    fprintf('With theta =%f   %f n Cost computed = %fn',theta(1),theta(2) ,J_history(iter));

     end

end

相关知识

AI实战圣经《Machine Learning Yearning》第1
Research Progress in Detection and Identification of Crop Diseases and Insect Pests Based on Deep Learning
用环保意识惠及学生——记湖北省黄石市第二中学校长周阿毛
花卉与健康作业
公路养护作业单位资质管理办法
拥抱不确定 青春向未来——华中农业大学第二十届大学生心理健康活动周圆满落幕
【作业
读书笔记读吴钩《风雅宋》,第二周打卡雅趣篇。
中国水周
2024世界空间周

网址: Meachine Learning 第二周作业 https://m.huajiangbk.com/newsview640809.html

所属分类:花卉
上一篇: 我们的纪念册散文诗
下一篇: 花木兰论文(花木兰毕业论文)