我在使用 fmin_bfgs(在 SciPy 中)优化未正则化的逻辑成本函数时遇到了以下错误:
遇到除以零的情况:假设 rhok 很大
C:\Python27\lib\site-packages\scipy\optimize\optimize.py:828: RuntimeWarning: 在双精度标量中遇到除以零 rhok = 1.0 / (numpy.dot(yk, sk))
警告:由于精度损失,未必达到所需的误差。当前函数值:0.693147 迭代次数:1 函数评估次数:27
算法(fmin_bfgs)在一轮迭代后就停止了。我可能做错了什么?这是我的 Python 代码:https://gist.github.com/4223554
这是数据集:https://gist.github.com/4223566
回答:
各位,
与’pv’提到的不同,问题与初始_theta 无关,而是与训练数据集有关。我已经解决了这个问题,以下是工作代码:https://github.com/dormantroot/machine-learning-experiment/blob/master/LogisticRegressionExamples/LogisticRegression.py