这两个八度语句用于ML中的正则化Logistic回归有什么区别

时间:2018-02-02 14:26:55

标签: matlab machine-learning octave logistic-regression

我遇到过两个类似的八度语句,其中一个语句没有提供正确的结果。该代码用于计算正则化Logistic回归的成本函数。

J=(1/m)*sum(-y'*log(h)-(1-y')*log(1-h)) + (lambda/2*m)*sum(theta(2:end).^2;
%Bad one

J = (sum(-y' * log(h) - (1 - y')*log(1 - h)) / m) + lambda *sum(theta(2:end).^2)/ (2*m); 
%good one
请有人告诉我这两者的区别。

1 个答案:

答案 0 :(得分:2)

在第一个中你有lambda/2*m。这是(lambda/2)*m。在第二个你有lambda/(2*m)。因此,在第一个表达式中,您乘以m,在第二个表达式中除以m。另请注意,第一个表达式在末尾错过了一个括号。