メタモデルへの貢献(MMC)について
多くのNMRを受け取るためには、
Corr(correlation)
の高い予測モデルを作成し、提出する必要があります。
一方、Numeraiは参加者から提出された予測ファイルを変換し、Numeraiがで使用できる形にします。
この時、Numeraiは全参加者の予測値を各参加者のNMRステーク量でアンサンブルしたモデル(メタモデル)を使用します。
NumeraiはメタモデルのCorr
を高めることを目標としています。そのため、Numeraiはmmc
という指標を用いて参加者に報酬/罰金を与える仕組みを作りました。
Corr
が個人のパフォーマンスに報酬を与えるのに対し、mmc
はメタモデルのcorrelation
やグループパフォーマンスへの貢献に報酬を与えます。
Tournament参加者の大多数はexample_model.pyと似たようなモデルです。他の人と異なる独自のモデルを作れば高いMMCを得られます。
2019年には、Integration_test のようなツリーベースのモデルがよいパフォーマンスを出しており、非常に人気があります。
一方、
Corr
を最大化しつつ、mmc
を最大化したい場合、どのようにモデル設計をすればよいでしょう?
他の人が考えないような方法で予測ファイルを提出すればmmc
を高められると思います。
試行錯誤しましょう!
特定のラウンドのユーザ(以下Uとする)の
mmc
は、以下の手順で計算されます。- NMRをステークしているユーザーの67%をランダムに選択します。(選択されるユーザーは入れ替えられることがあります)
- これらのユーザーのステークしているNMRの量を用い、加重した予測値を計算します。
- 加重した予測値とUのモデルの両方を一様分布に変換します。
- Uのモデルとtarget の間の共分散を計算します。
- この値を0.0841で割ったものがMMCのスコアです。 (このステップは、期待されるスコアを相関と同じ大きさにするためです)
- この全体のプロセスを20回繰り返しすことでMMCの平均スコアが計算できます。
- MMCのシステムが攻撃されないようにするには各参加者がステークしたNMRを加重する操作が必要です。
- 冗長性を高めるために、毎回67%の参加者をランダムサンプリングします。もし、この操作がなかったら、自分と似たファイルを提出した人が多額のNMRをステークしていた場合、過剰なペナルティが課されてしまう可能性があります。
Last modified 1yr ago