某银行杯数字人民币涉赌涉诈智能识别比赛小结
1 赛题背景
数字人民币是中国人民银行发行的数字形式法定货币,其效力等同人民币现金。该产品与传统银行账户体系不同,不需要绑定账户就能实现价值转移。自数字人民币在我行快速推广以来,不少诈骗分子利用普通民众对数币缺乏了解却又想积极参与使用的心态,不断变换手段进行诈骗。而依赖传统的名单、规则模式,已无法满足压降日益猖獗的数币欺诈行为的需求。
利用机器学习、深度学习等人工智能算法,可以从绑卡签约、交易行为、钱包行为等海量且复杂的数据中识别出可疑线索,有效防范涉赌涉诈风险。
本次比赛采用模型在测试数据集的表现,计算F1-score作为最终的评价指标。
2 数据说明
因保密性,数据结构,样本不适合公布。训练数据包含钱包相关基础数据及对应的涉赌涉诈标签值(1表示为涉赌涉诈钱包,0表示为非涉赌涉诈钱包),其中正负样本比例约为1:100;
3 评分标准
𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛=𝑇𝑃 / (𝑇𝑃+𝐹𝑃)
𝑅𝑒𝑐𝑎𝑙𝑙=𝑇𝑃 / (𝑇𝑃+𝐹𝑁)
𝐹1−𝑠𝑐𝑜𝑟𝑒=(2×𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛×𝑅𝑒𝑐𝑎𝑙𝑙)/(𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛+𝑅𝑒𝑐𝑎𝑙𝑙)
最终排名:按 F1-score 从高到低排序。
参赛队伍: 412
参赛人数: 1707
本次大赛本人采用了xgboot、K-Nearest Neighbors算法。
本次分享主要是对K-Nearest Neighbors算法进行总结。
1、先加载库和数据打印出来预览。观察数据的特征分布。
2、在随机森林对数据降维、计算均值和方差对数据进行筛选。均值舍弃±0.1之间的特征,方差舍去50以下的数据特征。
df2 = data.copy(deep = True)
df2.drop(columns = list(featureScores.index[20:]),inplace = True)
df2.head()
把特征从新整合。
3、对数据进行Smote采样。
model K-Nearest Neighbors上阵run
最终K-Nearest Neighbors算法F1 0.994033 best_thresh0.6667
xgboot算法F1 0.92 best_thresh0.491
技术都是你追我赶,欢迎大家交流学习。
- 点赞
- 收藏
- 关注作者
评论(0)