MLEを学ぶための学習計画を立てようとしています。これを行うために、MLEを理解するために必要な微積分の最小レベルを理解しようとしています。
MLEを理解するには、微積分の基本(つまり、関数の最小値と最大値を見つける)を理解するだけで十分ですか?
MLEを学ぶための学習計画を立てようとしています。これを行うために、MLEを理解するために必要な微積分の最小レベルを理解しようとしています。
MLEを理解するには、微積分の基本(つまり、関数の最小値と最大値を見つける)を理解するだけで十分ですか?
回答:
私のコメントを拡大する-それは依存します。基本のみを理解しようとしている場合は、関数の極値を見つけることができるため、公平な方法が得られます(MLEの多くの実際的なケースでは、可能性が数値的に最大化されます。その場合、他のスキルといくつかのスキルが必要です。基本的な微積分)。
明示的な代数解が得られる素敵な単純なケースは別にしておきます。それでも、微積分は非常に便利です。
ずっと自立するつもりです。1パラメータ最適化の最も単純なケースを考えてみましょう。最初に、導関数を取得し、パラメーターの関数と統計を分離できる場合を見てみましょう。
密度を考えます
次に、サイズサンプルの、尤度は
したがって、対数尤度は
ここで、です。デリバティブを取って、
したがって、これをゼロに設定してを解こうとすると、次のようになります。
ここで、はディガンマ関数であり、は幾何平均です。一般に、導関数をゼロに設定するだけでなく、argmaxを見つけられると確信できないことを忘れてはなりません。ソリューションが最大であることを何らかの方法で示す必要があります(この場合は最大です)。より一般的には、最小値または水平方向の変曲点が得られる可能性があります。また、極大値がある場合でも、大域的最大値(最後に触れます)がない場合があります。
したがって、ここでのタスクは、値を見つけることです。
ここで、です。
これは、基本的な関数に関しては解決策がありません。数値で計算する必要があります。少なくとも、一方のパラメータの関数ともう一方のデータの関数を取得することができました。方程式を解く明確な方法がない場合に使用できるさまざまなゼロ検出アルゴリズムがあります(たとえば、導関数がなくても、バイナリセクションがあります)。
多くの場合、それはそれほど良くありません。単位スケールのロジスティック密度を考え:
尤度のargmaxも、対数尤度関数のargmaxも、代数的に容易に取得することはできません。数値最適化手法を使用する必要があります。この場合、関数はかなり適切に動作し、ニュートンラフソン法は通常、 ML推定値を見つけるのに十分です。導関数が利用できない場合、またはニュートンラフソンが収束しない場合は、ゴールデンセクションなど、他の数値最適化手法が必要になることがあります(これは、利用可能な最良の手法の概要を示すものではなく、いくつかの手法についてのみ言及しています)基本的なレベルで遭遇する可能性があります)。
より一般的には、それほど多くのことを実行できない場合もあります。中央値がで単位がスケールのコーシーを考えます。
一般に、ここでの可能性には固有の極大値はありませんが、いくつかの極大値があります。極大値が見つかった場合、別の場所に別の大きな値がある可能性があります。(時々、人々は中央値に最も近い局所最大値、またはそのようなものを特定することに集中します。)
初心者にとって、関数のargmaxを持つ凹型のターニングポイントを見つけた場合、複数のモード(既に説明)に加えて、ターニングポイントにまったく関連付けられていない最大値が存在する可能性があると考えるのは簡単です。導関数を取得してゼロに設定するだけでは不十分です。たとえばユニフォームのパラメーターを推定することを検討してください。
他の場合では、パラメーター空間は離散的である場合があります。
時々最大値を見つけることはかなり複雑かもしれません。
そして、それは単一のパラメータに関する問題のほんの一部です。複数のパラメーターがある場合、物事は再び複雑になります。