b=T.fvector()
theano.gradient.hessian(T.gammaln(b).sum(), [b])
は、NotImplementedError
となります。同等のコードは、例えば、 T.log
の代わりにT.gammaln
私はtheanoはちょうどgammaln
の2番目の派生を知らないと思いますか?theanoのガンマ関数でヘッセ行列を得ることは可能ですか?
b=T.fvector()
theano.gradient.hessian(T.gammaln(b).sum(), [b])
は、NotImplementedError
となります。同等のコードは、例えば、 T.log
の代わりにT.gammaln
私はtheanoはちょうどgammaln
の2番目の派生を知らないと思いますか?theanoのガンマ関数でヘッセ行列を得ることは可能ですか?
gammalnのgradはpsiを使用します。しかし、私たちはpsiのgradを実装していませんでした。
クラスpsiのgrad()メソッドは、ファイルtheano/scalar/basic_scipy.pyに実装できます。これにより、このケースが機能します。
ドキュメントのこのページでは、(Theanoに新しいオペアンプを追加して大学院生を実装する方法を説明する方法を説明します)方法:http://deeplearning.net/software/theano/extending/extending_theano.html
あなたはこれを実装するヘルプが必要な場合は、theano-devメーリングリストを使用すると、より適しています継続的な議論のためのstackoverflow。
これを行うと、Theanoに大きな貢献をします。
ありがとうございました。グラデーション+有限差分を使用した私の特定のユースケースについては、妥当な回避策でした(私はちょうど、学習中ではなく、ヘッセ行列を収束させたい)。将来的に私が時間を見つけたら、それを実装することを見てみましょう! – daknowles