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

标签 matlab machine-learning octave logistic-regression

我遇到了 2 个类似的 Octave 音程语句,其中一个无法提供正确的结果。该代码应该计算正则化 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

请有人告诉我这两者之间的区别。

最佳答案

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

关于matlab - 这两个用于 ML 中正则化 Logistic 回归的 Octave 语句有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48584780/

相关文章:

c++ - 直接在 MATLAB 中使用 tensorflow/keras?

image - 寻找噪声图像边缘的最佳方法

machine-learning - 需要帮助设置神经网络参数(学习率、动量、隐藏层大小......)

python - Keras 模型不学习

octave - Octave 中有占位符变量吗?

arrays - 如何在 Octave 中将匿名函数分配给数组?

matlab - 错误: chol: input matrix must be positive definite

matlab - FitSCVM - 多个类,28x28 0 到 1 之间的数字矩阵

matlab - 是否可以从 MATLAB 内置类型派生类?

python - ValueError : Error when checking target: expected dense_3 to have 2 dimensions, 但得到形状为 (500, 10, 14) 的数组