Problem with Gradient descent

Hello,
I am currently following the programm of Machine Learning and I have a problem with the first assignment since 2 months.
When I try to plot the gradient descent: Matlab send me this error:
gradientDescent
Not enough input arguments.
Error in gradientDescent (line 7)
m = length(y); % number of training examples
This is my code :
function [theta, J_history,theta_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.
%
error=(X.*theta-y)
temp0=theta(1)+(alpha/m)*sum(error.*X(:,1));
temp1=theta(2)+(alpha/m)*sum(error.*X(:,2));
theta=[temp0,temp1]
% ============================================================
% Save the cost J in every iteration
J_history(iter) = computeCost(X, y, theta);
end
end
Thanks in advance for your help

8 Kommentare

Adam Danz
Adam Danz am 14 Sep. 2019
Bearbeitet: Adam Danz am 14 Sep. 2019
What isn't clear about,
gradientDescent
Not enough input arguments. % <----------
?
Are you providing all 5 inputs to your function?
Do you have more than 1 function named gradientDescent? (check using "which gradientDescent -all)
Faizan Hussain
Faizan Hussain am 5 Jan. 2020
Hello Adam, I'm facing the same problem. I have only one function called gradientDescent. The problem still persists. I'm using the same code script above. It can only run if the matlab recognizes the variable m.
Adam Danz
Adam Danz am 5 Jan. 2020
Could you provide a minimal working example that reproduces the problem?
ANOOP ANOOP SINGH
ANOOP ANOOP SINGH am 28 Okt. 2020
same problem Error in gradientDescent (line 7)
m = length(y); % number of training examples
Adam Danz
Adam Danz am 28 Okt. 2020
First person to provide a minimal working example that reproduces the problem gets help.
Raha Pedram
Raha Pedram am 18 Nov. 2020
Unfortunately, I have the same problem. I don not know how to fix this issue.
Kevin Chan
Kevin Chan am 25 Apr. 2021
X,y, etc variables have not been defined.
Walter Roberson
Walter Roberson am 25 Apr. 2021
X, y are supposed to be passed into the function.
We have no information as to how m is defined.

Melden Sie sich an, um zu kommentieren.

Antworten (0)

Kategorien

Gefragt:

am 14 Sep. 2019

Kommentiert:

am 25 Apr. 2021

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by