#kdb
Вопрос:
У меня есть игрушечная линейная модель:
l ml/ml.q
.ml.loadfile`:optimize/init.q
xx: 9h$til 10
yy: ((xx)*3) 4
x0: 1 1
error:{sum xexp[(yy - (xx*x) y);2]}
q).ml.optimize.BFGS[error;x0;();::]
'type
[4] /home/chris/anaconda3/q/ml/optimize/utils.q:467: .ml.i.gradEval:
// Evaluate the gradient
(i.funcEval[func;xk;args]-fk)%eps
^
}
Я надеюсь, что это сведет к минимуму функцию ошибок и восстановится 3;4
из модели.
Однако, похоже, это не проходит, несмотря на то, что я как можно лучше следил за документами:
https://code.kx.com/q/ml/toolkit/optimize/
Что я делаю не так?
Ответ №1:
Проблема была связана с error
функцией; она должна быть унарной и принимать список в качестве параметра.
error:{sum xexp[(yy - (xx*x[0]) x[1]);2]}