サポート確率質量関数を持つ離散確率変数があるとします。ような関数は、最大化し エッジケースの処理を回避するには、と仮定し。
関連する質問:
- 上記の期待を最大化するは、が単調であるため、も最大化すると考えてい。あれは正しいですか?
- 勝るものはありますか?
関心のある人にとって、この質問は、予測値を評価するための効用関数として、ターゲット値と近隣値の確率の合計のログを使用するCDCインフルエンザ予測コンテストから生じます。
サポート確率質量関数を持つ離散確率変数があるとします。ような関数は、最大化し エッジケースの処理を回避するには、と仮定し。
関連する質問:
関心のある人にとって、この質問は、予測値を評価するための効用関数として、ターゲット値と近隣値の確率の合計のログを使用するCDCインフルエンザ予測コンテストから生じます。
回答:
クールな問題!西安の導出が示すように、それはQからPへのKLの相違を最小化することに関連しています。クリフはいくつかの重要なコンテキストも提供します。
問題は最適化ソフトウェアを使用して簡単に解決できますが、一般的なソリューションの閉じた形式の数式を書く方法がわかりません。がバインドされない場合、直感的な式があります。
ほぼ間違いなく最適な(最後にある私のグラフ例を参照してくださいが、近いかもしれません)。そして、はと同じ問題ではありません。はと同等の目的ではないことに注意してください。それは単調な変化ではありません。期待が合計であり、ログは行くの内側に、それは目的関数の単調変換ではありませんので、合計。
および定義し。問題は次のとおりです:
ラグランジュ: これは、Slaterの条件が成立する凸最適化問題であるため、KKT条件が必要であり、最適化のための十分な条件です。1次条件:
相補的なたるみ: そしてもちろん。(私のテストではと思われますが、すぐにはわかりません。)とはラグランジュ乗数です。
次に、解決策を検討します
してみましょうとベクトルとします。してみましょうもののトライバンド対角行列とします。例えば。以下のための
問題はより多くの行列表記で書くことができます:
これは数値的にすばやく解決できますが、きれいな閉じた形の解決策を見つける方法がありませんか?
解の特徴は次のとおりです: しかし、最適化ソフトウェアをチェックする以外に、それがどれほど役立つかはわかりません。
A = eye(n) + diag(ones(n-1,1),1) + diag(ones(n-1,1),-1);
cvx_begin
variable q(n)
dual variable u;
dual variable l;
maximize(p'*log(A*q))
subject to:
u: q >= 0;
l: sum(q) <= 1;
cvx_end
例えば。入力:
p = 0.0724 0.0383 0.0968 0.1040 0.1384 0.1657 0.0279 0.0856 0.2614 0.0095
解決策があります:
q = 0.0000 0.1929 0.0000 0.0341 0.3886 0.0000 0.0000 0.2865 0.0979 0.0000
解決策私は基本的に通常のPDF(赤)に従ってビンのトンを持っているときに(青)を取得します: 別のより恣意的な問題:
非常に大まかに言えば、場合、を取得しますが、が1トンあたりを移動する場合、最適化がの質量を質量の近傍に配置し、質量のあるの間に戦略的に配置します。
もう一つの概念のポイントは、あなたの見通しの不確実性が効果的にあなたの見積もり滑らかになるということである、スムーズな解決しています近いです。(そうだと思います)
以来解きかについてだけ解決 は、 この連立方程式の解がシンプレックスに属していない場合、引数はシンプレックスの面にあります。
私がこれを正しく理解していれば、これが閉じた形の解決策になるとは思いません。または、それは少なくとも閉じた形式ではない問題の特殊化です。
これが私が言う理由は、インターバル打ち切りデータのNPMLEに現れる可能性とまったく同じであるためです。特殊化は、すべてのインターバルがの形式であることです。一般に、NPMLEは関数の最大化子です
ここで、はサブジェクトイベント時間です。ここでわかっているのは、イベントが間隔内で発生したことです。これは、および場合の問題とまったく同じです。
一般に、これは閉じた形式ではありません。ただし、少なくとも1つの特殊なケースがあります。現在のステータスデータ、又はときに、すべての間隔がフォームであるまたは。
そうは言っても、NPMLEを解くためのアルゴリズムはたくさんあります!関数にR
のicenReg
パッケージを使用してそれに合わせることができic_np
ます(注:私は作成者です)。B = c(1,1)
間隔が閉じていることを宣言して、オプションを必ず設定してください。
を最大化する関数がも最大化するわけではないことに注意してください。簡単な例として、仮定。そしてと0が他最大限しかしため未定義である。