ランク学習(predict) *自分メモ
![](https://assets.st-note.com/img/1655562165256-CuUy5MM78A.png)
最近、ランク学習で予想をしようと思っていたが、
(勘違いして、ランク学習出来てなかったw)
どうも、的中率が上手く出ない。
![](https://assets.st-note.com/img/1655562242021-GUKEdnGNiQ.png)
原因はpredictで出力した際にマイナスの値が出て、
それが恐らく計算する邪魔をしているらしい。
ちなみにランク学習は関連度が高い値を高いスコアに出すので、
上手く出力できていない人は・・・。
①Y(着順)の値を逆数にする。
例:1着→10 2着→5 3着→3 etc….
②predictで出力した値を逆数にする。
マイナスで出てきたスコアをプラス
逆にプラスで出てきたスコアをマイナス
どちらかの方法で正しいランキングに変わると思うので試して欲しい。
で、自分はここまで解決出来たのだが、
上記に加えて正規化をすることで根本から解決。
*正規化とは
データ等々を一定のルール(規則)に基づいて変形し、利用しやすくすること。
例:1,2,3の値を0から1の間の数字に変換。
メリットとしては、バラツキのある数字を一定の数字(上記の例は0-1)で管理出来る。
![](https://assets.st-note.com/img/1655570069054-WTuL61mQTL.png)
正規化参考サイト
https://note.nkmk.me/python-list-ndarray-dataframe-normalize-standardize/
この記事が気に入ったらサポートをしてみませんか?