全部版块 我的主页
论坛 经管考试 九区 经管考证 金融类
4127 13
2014-03-28
请教各位有没什么想法

要对一个categorical variaible做模型, 100个level左右, 50万个obs,为了抓outlier,挑最有可能的分类错误的records

之前在同样的data对另一个variable做过一个4个level的用multinomial做效果还不错,但现在level太多了 估计不行。

有什么想法欢迎推荐~已经想了几周了~谢谢大家啊
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2014-3-28 16:30:49
我做GLM的经验,不知道对你有没有用:
1. 通过plots或者其他检验去掉明显unreasonable的数据;  
2. 检查100个level的分布,是不是有些level的obs很少;
3. 如果有一部分(比如50个level)的数据占据了整个数据量的大部分(比如90%以上),可以将其他level的数据合并成一组,降低level数目,但是对结果的影响会比较小;
希望这个思路对你有帮助
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2014-3-28 19:26:54
tracymicky 发表于 2014-3-28 16:30
我做GLM的经验,不知道对你有没有用:
1. 通过plots或者其他检验去掉明显unreasonable的数据;  
2. 检查 ...
谢谢援手~
我对别的连续型变量是用GLM再比较预测值和真实值
主要是这个是要做production所以画图目测什么的不好弄,最好要有像GLM output这么清楚的
想过用clustering 但是没想到怎么定义距离
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2014-3-29 13:47:08
gz0422lulu 发表于 2014-3-28 19:26
谢谢援手~
我对别的连续型变量是用GLM再比较预测值和真实值
主要是这个是要做production所以画图目测什 ...
找outlier的话 可以试试别的工具 比如R之类的 可能功能会略强大  当然了 如果你知道变量的确切定义或者计算公式或者range的话, 是可以直接来检验的 不过代码可能会比较麻烦一些;
clustering 我的经验是这样的 先从internal的定义来看有机会分组吗  如果没有的话 先细分 然后建模中会发现not significant的组 然后合并 像我给你的上个回复说的 减少分组必然会影响准确性 但是从practical的角度来讲 只要找到这个平衡就好。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2014-3-29 13:57:27
还是财险用到数学多点。。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2014-3-29 21:54:35
我遇到过相似的问题。
而且我迄今也没有弄明白,那些离群值究竟是坏点,还是在上万数据中正常出现的小概率事件。除非根据ID一一去检查。
换做我的话可能会考虑尝试SVM,不过根据lz的描述,至少要对这50万数据跑99次才够分,不知R有没有这个能力。
另一个非标准的办法是把这100个level转化成99个示性变量,然后在每一类中按输出变量由小到大的顺序排序,用神经网络计算(分位数+类别)对应的期望值,再把实际数据中每个category里面高出期望值x%置信区间的值筛出来。
不管哪种,面对50万的量,大概都得上SAS或者R Revolution了。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群