FAQ

譜面難度推定表について

載っていない譜面があるのですが。

データの更新は不定期です。
最終更新以降に難易度表入りした譜面は載っていません。
気が向いたらたまにデータ更新するかもしれないので気長にお待ちください。

この譜面はもっと難しい/簡単だと思うのですが。

全体の傾向として以下のようなことが言えると考えられます。いわば、この手法の限界です。

詳細は「細かい話」で。

プレイヤー実力推定表について

名前が載っていないのですが。

発狂BMSを10譜面以上プレイしている (かつ、FAILED以外のランプが1つ以上ある) 方を集計対象にしています。
「譜面難度推定表」とセットで更新されるので今載っていない方は気長にお待ちください。
「リコメンド」ツールでは表に載っていない方の実力も推定出来ます。
ただし、「プレイヤー実力推定表」には反映されません。仕様です。

「リコメンド」について

「実力」はどのように算出されているのですか。

「点いている (NOPLAY以外の) ランプの難度の平均」のようなものです。
実際には「平均」ではなく、「項目反応理論」というものに基づいて計算されています。
詳細は「細かい話」で。

「実力」がxxでした。「難度」がxxの譜面まではクリアできるはずということですか。

「難度」がxx付近の譜面が半分くらいクリアできそうだということです。
裏を返せば半分くらいはおそらくクリアできないということです。

もっと「実力」の値が高いと思うのですが。

「実力」の値は、プレイ済みの全譜面に点いているランプを見て計算しています。
そのため、低難度譜面を現在の実力に見合わないランプのまま放置していると低めに推定されます
例えば、★10〜の譜面にクリアランプを点けられる方は★1の大部分をHARDクリア出来ると考えられますが、
そのような方が★1のFAILEDやEASY, NORMALランプを放置しているとそれに引きずられて「実力」の値が低めに推定されます。

ただし、NOPLAYは無視して推定しているので、低難度をNOPLAYのまま放置していても「実力」の値には影響しません
NOPLAY譜面の埋め作業をしても理想的には 「実力」の値はほぼ変わらないはずですが、実際には、多少の増減が起こります。

また、NORMALゲージやHARDゲージを使わない方は少し「実力」が低めに推定されるかもしれません
「EASYランプ」は「EASYランプは点くがNORMALランプは点かない」とみなされるためです。

「実力」の値が下がることはありますか。

NOPLAYの譜面に「弱い」ランプを点けると下がってしまうことがあります。
また、「譜面難度推定表」のデータが更新された際に少し (下一桁程度) 変動することがあります。

「実力の推定に失敗しました」と言われました。

「リコメンド」は「EASY以上のランプがひとつもない」か、または「FCランプしかない」の場合に「実力」を推定できません。
EASY以上のランプがひとつもない方は、頑張ってひとつ (以上) EASY以上のランプをつけてからお試しください。
FCランプしか送信しない主義の方は実力を推定できません。これは仕様です。ごめんなさい。

「実力」の値が「プレイヤー実力推定表」と違うのですが。

「リコメンド」では最新のクリアデータが反映されますが、「プレイヤー実力推定表」には「譜面難度推定表」を更新した時点でのデータが反映されています。「リコメンド」でデータを更新しても「プレイヤー実力推定表」には反映されません。これは仕様です。
また、「プレイヤー実力推定表」と「リコメンド」とでは「実力」の算出方法が少し違います。
なので、「譜面難度推定表」の最終更新日時からランプ状況が全く変わっていなくても「実力」の値が若干異なる場合があります。

「リコメン度」が「譜面難度推定表」の「難度」順になっていないのですが。

「地力譜面度」も「リコメン度」に影響します。
簡単な譜面では「地力譜面度」が高いほうが、難しい譜面では「地力譜面度」が低いほうが「リコメン度」が高くなります。
「簡単な地力譜面はおそらくクリア出来る」「簡単でも個人差譜面はクリア出来ない場合がある」「難しくても個人差譜面ならクリア出来るかもしれない」「難しい地力譜面はおそらくクリア出来ない」といったイメージです。


細かい話

「地力譜面度」について

「プレイヤーの実力がどれくらいクリアランプとして反映されやすいか」を表します。
地力譜面度が小さい譜面は「実力が足りなくてもごまかしやすい」、逆に「実力を上げてもあまりクリアの安定に結びつかない」譜面です。具体的には縦連打やスクラッチなどが頻出するいわゆる個人差譜面、またはtotal値の高い譜面 (しっかり見切らずともごまかしやすい) などが該当します。
地力譜面度が大きい譜面は「ある一定の実力に達さないと手も足も出ない」、逆に「実力が上がればクリアが安定する」譜面です。具体的には乱打譜面などのいわゆる地力譜面、またはtotal値の低い譜面 (きっちり押せないとゲージが回復しない) などが該当します。

「難度」について

譜面の難しさです。
本当は★とは関係ない値なのですが、わかりやすいようにEASYクリア基準で★換算してあります。

推定の際に「全ての方がEASY, NORMAL, HARDゲージ全てを利用し、実力に見合ったランプを点けている」と仮定しています。
実際にはNORMALゲージを利用しない方も多いですが、そのような方のEASYランプも「EASYゲージではクリア出来るがNORMALゲージではクリア出来ない」ものとして推定しているため、結果としてNORMALクリア難度は真の難度よりやや高めに推定されると考えられます。
同様に、段位のHARDクリア難度も真の難度より高めに推定されていると考えられます。FC難度も「FC埋めをしていない上級者の方」が一定数いらっしゃるはずなので、その分高めに推定されていると考えられます。

また、推定の際に「EASYクリア難度 < NORMALクリア難度 < HARDクリア難度 < FC難度である」と仮定しています。
そのため、実際はNORMALクリアよりHARDクリアのほうが簡単な場合にNORMALクリア難度が低めに (HARD難度より低くなるように) 推定されると考えられます。

さらに、追加されたばかりの譜面はデータが少なく、どうしてもある程度は不正確な推定となってしまいます。
ただし、プレイヤーの実力が推定に反映されるので、クリアレートで起こる「新曲補正」 (上級者がまずプレイするのでクリアレートが上がる) のような影響は受けにくいはずです。

「リコメン度」について

「あなたと同じ『実力』を持ったプレイヤーがその譜面のランプを更新出来る確率」が「リコメン度」です。
「実力」だけを見ているので、「リコメン度」はあなた個人の得意・苦手を反映しません。
たとえば縦連打が得意な方は縦連打譜面が (「リコメン度」の割に) 簡単に感じる、またはその逆といったことはありえます。
ちなみに、「実力」と同じ「難度」の譜面 (・ランプ) では「リコメン度」がちょうど50%になります。

項目反応理論

譜面の「難度」や「地力譜面度」、プレイヤーの「実力」、「リコメン度」は「項目反応理論」 (項目応答理論とも。item response theory; IRT) にもとづいて推定しています。項目反応理論は、身近なところではTOEFLなどに用いられています。以下に概略を述べます。

*私も勉強中なので以下の文章の正しさは保証しません。項目反応理論に関してはWeb上や書籍に数多くの情報がありますので詳しくはそちらをどうぞ。

今回用いたのは段階反応モデルというものですが、まずはその基本となる2パラメータロジスティックモデルについて述べます。
2パラメータロジスティックモデルでは、それぞれの譜面にa (ここでは「地力譜面度」。ふつうは「識別力」などと呼びます)、b (「難度」)という2つのパラメータがあり、実力θを持つプレイヤーがその譜面をプレイした際にクリア出来る確率p(θ)が以下の式で表されます (表せるということにします)。
p(θ)=1/(1+e^(-a*(θ-b)))
θ=bのときp=1/2になります。通常aの前に係数1.7が付いていることが多いですが、値が定数倍変わるだけなので今回は省きます。
a, bを変えていくつかグラフにするとこんな感じです (横軸θ、縦軸p)。
[項目特性曲線]
太線で表示されているのが(a, b)=(3, 2)の場合です。θ=b (ここでは2) のときちょうどp=1/2となります。
細線で表示されているのは(a, b)=(3, 1), (10, 2)の場合です。
aが大きいと曲線が急に、小さいとゆるやかになります。すなわち、aが大きいとθを大きくしたときにp(θ)が上がりやすくなります (地力譜面度が高い譜面は実力の向上がクリアに結びつきやすい)。
また、bを小さくすると曲線が左に、大きくすると右に平行移動します。θに対してbが小さい譜面ほどクリアしやすいです (難度が低い譜面ほどクリアしやすい)。

以上のようなモデルで、bが各譜面につき1つではなく複数 (EASY難度, HARD難度, FC難度) あることにしたのが段階反応モデルです。ただし、それぞれのbにつきaは共通とします。

上述のモデルのもとで、実際のクリアデータを最もよく説明出来るように各プレイヤーのθ、各譜面のa, bを (集計データから) 推定したのが「譜面難度推定表」「プレイヤー実力推定表」のデータになります。推定にはマルコフ連鎖モンテカルロ法 (Markov chain Monte Carlo methods; MCMC) のひとつである Metropolis within Gibbs algorithm を用いました。マルコフ連鎖モンテカルロ法に関してもWeb上や書籍に数多くの情報がありますので、詳しくはそちらを。
詳細は省きますが、この場合「FC達成者がいない譜面のFC難度」もいちおう推定されます (a, b, θの事前分布として正規分布を仮定したので難度が無限に大きくならない)。ですが、その値には「非常に難しい」以上の意味があまりないので、ここでは「★Infinity」と表記することにしました。

また、「リコメンド」ツールでは、推定された譜面難度・地力譜面度とプレイヤーのクリア状況から最尤推定法 (maximum likelihood estimation; MLE) でプレイヤーの実力θを推定し、その値にもとづいて上記のp(θ) (「リコメン度」) を計算しています。

θやbの値はそのままでは直感的にわかりづらいため、★難度に換算したものを表示しています。具体的には、★1譜面のEASY難度平均が★1.00, ★2譜面のEASY難度平均が★2.00, ……となるように線形補間しています。
要するにこんな感じの折れ線グラフです (横軸★、縦軸 θまたはb)。
[折れ線グラフ]