No.3ベストアンサー
- 回答日時:
コロナ感染者数のような、数値が大きくなるにつれて、変動幅も指数的に増大する場合は、誤差の評価もそれに対応していないと、感染者が少ない時は予測が合うが、感染者が多い時は予測が合わないという評価になってしまいます。
一般的には、対数グラフにプロットすれば、一定のばらつきになるはずです。そうなっているか、確認する必要があります。
また、予測が多めに出た場合と少なめに出た場合とがあったとき、少なめに予測した時は予測が間違ったとの「そしり」を受けるよう場合、少なめの予測に対してペナルティを掛けたいです。
1) その点、RMSLEは、少なめの予測に対して悪化する評価なので、適していると言えます。
2) 評価値が小さい時の方が誤差が小さいということです。それはRMSEと同じです。
No.2
- 回答日時:
No.1 訂正です。
>> |ε[k]|<<(1 + x[k])のとき、δ[k] ≒ ε[k]
これ間違い。正しくは
|ε[k]|<<(1 + x[k])のとき、δ[k] ≒ ε[k]/(1 + x[k])
でした。相対誤差を評価している。これは最後に書いた方式のa=1の場合に相当します。
No.1
- 回答日時:
RMSLEとは、実測値 x[k], 予測値p[k] (k=1,2,...,N)を使って、
δ[k] = log(1 + p[k]) - log(1 + x[k])
とするとき、このδ[k]についてのRMS(2乗したものの平均値の平方根)のことです。xやpが負の値になったら計算できないという欠点を持っています。(1を足してあるのは、xやpが0になったときも困るもんだから、ごまかしてある、っていうだけのことです。)
ここで予測の残差εを
ε[k] = p[k] - x[k]
として、
δ[k] = log((1 + x[k] + ε[k])/(1 + x[k]))
= log(1 + (ε[k]/(1 + x[k])))
と書き直してみれば、
|Δx|<<1のとき log(1 + Δx) ≒ Δx
という近似を使って、
|ε[k]|<<(1 + x[k])のとき、δ[k] ≒ ε[k]
です。つまり、残差(予測の誤差)が実測値に比べて十分小さい(予測がそこそこ当っている)のなら、RMSLEはRMSEと(ほとんど)同じです。
だから、予測がメチャクチャ外れて、たとえばεがxの何万倍もある、という事態が心配な場合にのみ、RMSLEを使う意味が出てきます。しかしそんな予測は、あきらかに使い物にならないわけで、わざわざ評価するまでもない。だから普通はRMSLEなんて使いません。
しかし、まるでダメな「予測」でも、あえてその性能を評価しなきゃならんという場面もある。それは機械学習です。というわけで、RMSLEは機械学習に特有の手法であり、それも予測の性能がまるっきりダメダメの段階でのみ意味を持っています。(だから機械学習だって、収束が近いときにわざわざこんなもん使う必要はありません。)
で、本題ですが、まず、2つめのご質問。これは基本中の基本です。
RMSLEでもRMSEでも、要するにδのバラツキの標準偏差を計算しているわけですから、大きいほどバラツキも大きい。小さいほどバラツキも小さい。そういう意味ですんで、「誤差が小さい/大きい」と単純には言えない。たとえば「ある時点だけで1回、とんでもないデタラメな予測値を出してる以外は良く合ってる」のか、「万遍なくプラスマイナスにブレている」のかは、この評価関数では区別できません。
自分がどんな特徴を捉えて「誤差が小さい/大きい」と判定したいのかによって、どんな評価関数を使うのかを自分で決めなくちゃいけないんです。もちろん、評価関数を自分で作る必要がある場合も多い。
そこでご質問のひとつめについて。「予測が100で実際が102」の場合と「予測が10000で実際が10002」の場合を「どっちも予測の誤差は2だから同程度だ」と評価したいのであれば、RMSLE(もちろん、RMSEで十分ですが)を使えばいいでしょう。えええ、あんた正気か?「予測が100で実際が102」と同程度なのは「予測が10000で実際が10200」だろがよ、ともし考えるのであれば、RMSLEやRMSEじゃダメで、相対誤差で性能を測るべきでしょう。たとえば
δ[k] = ε[k]/x[k]
のRMSを使う。ところがこのやりかたですと、x[k]が0に近い値のときにはちょっとの誤差ε[k]があるだけでδ[k] がひどく大きくなる。(それにx[k]=0だと困る。)これはこれで不都合ですね。そこでたとえば、折衷案として
δ[k] = ε[k]/(a + x[k])
とやる。aは適当な正の数です。こうすると、x[k]がaに比べて小さいうちはδ[k]≒ε[k]/aであり、RMSEと似た性質を持つ。また、x[k]が大きくなるとδ[k]≒ε[k]/x[k] になるんで、相対誤差の評価に近い。こうして「主に相対誤差を評価するけれども、x[k]が小さいときの相対残差ε[k]/x[k]に過敏に反応しない」ような評価関数が得られるわけ。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 統計学 信頼区間についての質問です。 6 2023/06/25 17:34
- 物理学 誤差の問題についでです。 yがy=A+Bxの上に乗ると予想でき、以下の4個の測定値 (2,3.2±1 2 2023/04/25 00:54
- 統計学 生物統計学の質問 3 2022/11/11 21:14
- 統計学 標準誤差の求め方 2 2022/07/04 19:59
- 統計学 生物統計学の質問 7 2022/05/17 13:59
- Word(ワード) 数値に差のあるデータを分かりやすく比較する方法について。医療現場におけるヒヤリハットの発生件数を事例 3 2022/07/18 14:24
- 統計学 お世話になっています. x軸は時間(期間)y軸はある値に対する2つのグラフ比較をしますが、私個人の考 2 2023/03/30 11:42
- 統計学 風速を1秒刻みで推定する方法 6 2023/03/03 11:58
- その他(ビジネス・キャリア) 公務員と民間について質問です 自分は大卒で公務員に現役合格しました。 大体大学3年から1500時間位 6 2022/09/19 14:20
- 数学 【 数I 分散 】 3 2023/02/26 21:55
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
マイナスを含むデータの平均と分散
-
誤差率が1%はおおきいですか?...
-
molにはどうして後に000がつ...
-
素朴な疑問、なぜ高層ビルは1...
-
身長計。学校にあるやつ、病院...
-
直線性について
-
対数グラフでエラーバーを追加...
-
https://www.shinchosha.co.jp/...
-
表面抵抗の表現方法について教...
-
逆数の誤差
-
教科書に問題文の数値が整数の...
-
1が3で割り切れないということ...
-
RS232C 調歩同期のビットレート...
-
亡くなって2年目を、なんで3...
-
0.5797を少数第3位まで求めよと...
-
寄与率が負になる意味
-
身長測って174.5cmで公称で175...
-
【エクセル】グラフ誤差範囲の0...
-
周波数確度ppmとは。
-
内容量の誤差について
おすすめ情報