数据处理第一次提交

提交得分

在这里插入图片描述

问题

数据处理

  1. 所有数据只看了数据的分布情况,了解其标签含义,未深入
  2. 数据有的很难知道含义,比如说职业职称,这些数具体代表啥含义不清楚,可能是数据举办方故意保密,保护个人隐私。
    在这里插入图片描述

评测

本次比赛成绩排名根据测试集的在公积金逾期风险监控中,需要尽可能做到尽可能少的误伤尽可能准确地探测,于是我们选择“在FPR较低时的TPR加权平均值”作为平均指标。
给定一个阀值,可根据混淆矩阵计算TPR(覆盖率)和FPR(打扰率)
TPR = TP /(TP + FN)
FPR = FP /(FP + TN)
其中,TP、FN、FP、TN分别为真正例、假反例、假正例、真反例。
这里的评分指标,首先计算了3个覆盖率TPR:
TPR1:FPR=0.001时的TPR
TPR2:FPR=0.005时的TPR
TPR3:FPR=0.01时的TPR
最终成绩= 0.4 * TPR1 + 0.3 * TPR2 + 0.3 * TPR3 代码如下:

def tpr_weight_funtion(y_true,y_predict):

    d = pd.DataFrame()

    d['prob'] = list(y_predict)

    d['y'] = list(y_true)

    d = d.sort_values(['prob'], ascending=[0])

    y = d.y

    PosAll = pd.Series(y).value_counts()[1]

    NegAll = pd.Series(y).value_counts()[0]

    pCumsum = d['y'].cumsum()

    nCumsum = np.arange(len(y)) - pCumsum + 1

    pCumsumPer = pCumsum / PosAll

    nCumsumPer = nCumsum / NegAll

    TR1 = pCumsumPer[abs(nCumsumPer-0.001).idxmin()]

    TR2 = pCumsumPer[abs(nCumsumPer-0.005).idxmin()]

    TR3 = pCumsumPer[abs(nCumsumPer-0.01).idxmin()]

    return 0.4 * TR1 + 0.3 * TR2 + 0.3 * TR3

我的理解是:不要把一个不是逾期的人判为逾期,数据中的逾期的人的样本很少,逾期率只有0.063925,那训练时就可能把逾期的人当作异常值剔除。
在这里插入图片描述

要解决的问题

  1. 数据预处理,数据一共有20个特征,这20个特征都需要还是有无关特征,对于连续值需不需要离散化?
  2. 选择什么模型,暂时测过的是贝叶斯与决策树,决策树比贝叶斯好很多,我们还有很多模型可以继续测试
  3. 题目说训练集提供40000名,测试集提供15000名,此数据测试集增加了干扰样本,这些干扰样本不参与最终分数的计算。我们训练时不需要测试集,测试集是通过训练好的模型来输出结果,那么说,我们还需要考虑吗
  4. 个人的住房公积金缴存和贷款等数据信息,不太懂什么是公积金,了解相关知识应该会更好一些。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值