金融建模比赛记录
数据处理
对于A训练集(有标签):
- 1.数据分散在四个文件内,train_behavior,train_ccx,train_consumer,train_target,各个数据文件的解释大赛excel表格中已有.
- 2.需要根据ccx_id将每个文件中的数据进行聚合, 聚合之前可以先在每个文件中提取特征.
- 对于每个文件内
- train_behavior(基础信息+行为数据):一共2270维特征,对其中(1)唯一值列去除—共去除23列;(2)对于缺失90%值的列进行去除;(3)对于包含空值且只有两种值的列进行去除;(类别值的列:’var3’, u’var4’, u’var5’, u’var6’, u’var11’, u’var12’, u’var13’, u’var14’, u’var15’, u’var18’, u’var19)。最终得到336维特征(3)去除时间列(2列)
- train_consumer(消费数据): 用户的消费记录,提取了\
- train_ccx(查询记录):用户的查询记录,提取了”查询次数”以及categorical列的次数
初步结果(模型都是默认参数)
features/models(AUC) | lightgbm | lr | gbdt |
---|---|---|---|
behavior | 0.588 | 0.566 | 0.578 |
behavior+consuming | 0.626 | 0.563 | 0.581 |
behavior+consuming+ccx | 0.639 | 0.592 | 0.603 |
对于B训练集(无标签)
该问题属于半监督学习,半监督学习分为纯半监督学习和直推学习.
- 纯半监督学习:是将未标记数据和有标记数据都作为训练集来训练,得到模型,来预测待测数据
- 直推学习:是将未标记数据作为需要预测的对象,通过有标记数据进行训练,来预测.
解决思路:
- 1.聚类将A和B合并聚为两类,用该聚类簇中A标签投票标记B(否决)
- 2.自训练方法,先训练A得到一个分类模型,然后通过分类模型分类B,将置信度高的进行标记,然后加入训练集,训练->标记置信度高的,迭代.(尝试)