Python 机器学习与scipy优化

Python 机器学习与scipy优化,python,optimization,scipy,minimize,Python,Optimization,Scipy,Minimize,我有编码机器学习,为了优化我的成本函数,我使用了scipy.optimize.minimum,而scipy没有返回正确的答案。那么我该怎么做呢 代码: 这就是说成功是错误的信息 我做的每件事都是对的,我不知道发生了什么在以下情况下很难调试类似的东西: 由于外部数据,代码不可复制 问题甚至并没有试图解释这里优化了什么 有一些奇怪的设计决策: 使用np.matrix->使用np.array 不要称之为雅可比梯度下降 然后关于你的观察: Iterations: 0 Function evalu

我有编码机器学习,为了优化我的成本函数,我使用了
scipy.optimize.minimum
,而scipy没有返回正确的答案。那么我该怎么做呢

代码:

这就是说成功是错误的信息
我做的每件事都是对的,我不知道发生了什么

在以下情况下很难调试类似的东西:

  • 由于外部数据,代码不可复制
  • 问题甚至并没有试图解释这里优化了什么
有一些奇怪的设计决策:

  • 使用np.matrix->使用np.array
  • 不要称之为雅可比梯度下降
然后关于你的观察:

Iterations: 0
Function evaluations: 106
Gradient evaluations: 94
在执行如此多的函数求值时,零迭代是一个非常糟糕的迹象。有些东西坏了。也许上面的线搜索很疯狂,但这只是一个猜测

现在什么坏了

  • 你的雅可比矩阵肯定坏了
    • 我没有检查数学,但是:
      • 当变量数固定->否时,您的雅可比图形取决于样本数!那没有道理
采取的步骤:

  • 使用
    jac=False运行
    
    • 如果工作:你的成本fuc看起来不错
    • 如果不起作用:你的麻烦(没有证据)可能从那里开始
  • 修理雅可比矩阵
  • 检查雅可比矩阵是否与
我想知道为什么你这里没有任何形状错误。当我试着模仿你的输入形状和玩弄样本大小的时候,我是这样做的

Iterations: 0
Function evaluations: 106
Gradient evaluations: 94