EA 发帖数: 3965 | 1 我用logistic regression 建了一个模型,现在想把它转化成score, 比如,年龄18-40
,5分,41-65, 7分, 66+, 10分。 男性, 1分,女性,2分。 心脏病, 10分, 糖
尿病,8分。 最后根据病人的具体情况,得到总分。请问有什么方法吗? | a******c 发帖数: 291 | 2 有多种方法,看使用对象和你自己的偏好。假如你要将Score纳在1-100之间,我用过以
下几种方法:
1) 将probability score乘以一个常数,使之变为整数,再加上限,比如if score
> 100 then score=100。同时告知这个Score也可以当probability使用(除以100即可
)。但假如你的score是要卖给第三者,你就要防止别人reverse engineer你的score的
话,这个方法不能用。
2) 可以将probability score 分100等分(PROC RANK),每一等分的score为1, 2
, 3,…, 99, 100。
3) 看看probability score的分布,以中值为中心,定为score=50,再向两边发散
。这样的话,你可以“制造”一个正态分布的score。
2)and 3) 可以确保别人不能reverse engineer你的score,同时score只适用于rank
order,而不是estimat,比如说你可以说score =90比score=30好,但不能说score=90
比score=30好过两倍。
假如你的score需要在500-800之间(类似于fico),你可以用以上的方法取得1-100的
range ,然后加上常数400即可。
从我build scorecard的经验来看,没有固定的方法,我还尝试过(1/probability)*
常数、(-1*log(probability score))*常数、等方式,类似于简单的加密。总之,不
要破坏probability score的monotonicity即可,你可以完全看看自己喜欢那样,然后
sell your story。
You are in a job of fun. Enjoy! |
|