タグ

newton'smethodに関するyukimori_726のブックマーク (1)

  • Pythonで2変数関数に対してニュートン法を用いる - minus9d's diary

    前回、Pythonで2変数関数に対して最急勾配法を用いる - minus9d's diaryにて、2変数関数に対する最急勾配法を Pythonで実装しました。 今回は、最急勾配法よりも収束が早いと言われるニュートン法を実装してみます。私の理解が正しければ、ニュートン法では、初期点が与えられたとき、その点の近くにあるStationary point(停留点)、すなわち微分が0になる点を探します。微分が0になる点なので、必ずしも極値に収束するとは限らず、鞍点に収束する可能性もあります。 ニュートン法の更新式は以下の通りです。 ここでは学習率、はヘッセ行列です。変数名は教科書「言語処理のための機械学習入門 (自然言語処理シリーズ) 」に従っていますが、この教科書は版によってはニュートン法の式が誤っているので注意。 目的関数は前回と同じくです。の極小値の一つを求めるのが目的です。 実装コード Py

  • 1