![]() |
销魂的风衣 · CardLayout - 卡片佈局 ...· 6 月前 · |
![]() |
冲动的西瓜 · 神经网络中通过add和concate(cat ...· 7 月前 · |
![]() |
爱健身的钥匙扣 · macOS 免费轻量级截图工具 ...· 11 月前 · |
![]() |
逃跑的面包 · ODBC 工具會顯示 32 位元和 64 ...· 1 年前 · |
![]() |
刚分手的人字拖 · python中from time ...· 1 年前 · |
目录
2、提高模型稳定性—适合泛线性模型(如逻辑回归)—幅度过大的变量进行分箱处理
(1)、加入噪声数据— 加扰动 :比如在 图像识别 场景中,训练CNN识别图片时,常用的数据增强技术包括选择、拉伸、增加白噪声等方法。而在风控场景里,由于数据一般都是标签不平衡的(一般5%左右的bad rate),我只SMOTE方法来对bad的部分进行upsample。SMOTE方法通过对bad的部分加扰动,产生新的数据,这样就能平衡训练集中的各标签比例。
(2)、 使用统计特征 :比如,在2000年逾期5000元,是很严重的事件,意味着高风险;但2022年逾期5000元,却是低风险的。所以,如果只用金额数据,模型的预测往往不够精准。此时,可以利用统计特征来代表实际值。例如使用Z-Score,z的绝对值值越高,代表他和其他客户的差异越大。
风控领域由于对解释性有一定要求,所以很难使用神经网络等深度学习模型。
对于 逻辑回归 模型,单个变量的变动会影响模型的输出,而且这种影响是线性的。这会造成两个因素影响稳定性,
问题 |
(1)、某特征样本的数值变化幅度过大,对最终输出结果影响会较为剧烈:例如我的模型其中一个特征是逾期金额,逾期10元和逾期20元对于银行来说都是小事,但在模型的某一项里,影响是双倍的。 (2)、对outlier值处理,比较复杂 |
解决方案 |
采用分箱技术→如WOE编码变换→来提高模型的稳定性:采用WOE编码后,(1)、比如,把小于100元的样本都被分到一个组,那么欠银行1元和99元都是一样低风险; (2)、比如,把outlier值的样本,会自动转换成变成分箱的最左或者最右的那一类。例如我们的客户里年龄最大的不到100岁,那么我们可以每10岁设置一个分箱,变为[-∞,10],[11,20],....[90,+∞]十个分箱。 |
(1)、自带的自动分箱理念 :由于树的split是基于阈值的,即相当于进行自动分箱,这也是基于树模型的好处之一。
(2)、基于树的模型,一般对数据的波动不敏感 :数据分布发生微小偏移时,仍能表现稳定。比如决策树,数据的准备往往是简单的甚至是不必要的。
但是,使用 单棵决策树容易过拟合 。为了防止过拟合我们一般会:
(1)、使用单棵决策树顺丰需要修剪枝叶技巧 :但是这种方法,需要大量的分析与尝试,所以大多数人,很少使用单颗决策树作为ML模型。
(2)、使用随机森林算法 :三个臭皮匠顶过一个诸葛亮,RF在解决回归问题时,并没有像它在分类中表现的那么好,这是因为它并不能给出一个连续的输出。
(3)、使用XGBoost算法 :Kaggle比赛中的利器,XGBoost具有非常好的非 线性 拟合能力,以及对超参数的鲁棒性。但依赖统计特征,特征的准备需要积累一定周期才有足够置信度,比如一年的数据量。
其实,无论稳定性做得多好,模型总有效用递减的时候。下一步就是要如何实现模型监控。