推荐系统-DeepCrossing模型

0 整体思路

简单来说,DeepCrossing模型解决了特征工程、稀疏向量稠密化、优化目标拟合等推荐系统常见问题。
我们依次对数据进行初步分析、预处理、特征拼接、输入到带残差的MLP、最后使用逻辑回归Scoring输出概率值。
在这里插入图片描述

1 预处理

拿到数据,先划分为数值型和类别型两类数据:
在这里插入图片描述

我们拿到的数据比较清楚,I1-I13是数值型、C1-C26是类别型,不过有不少缺失值,可以在预处理进行填充,数值型填充0,类别型填充-1。
此外I1-I13上,部分字段的数据大小差别甚大,可以把他们映射到对数范围,提高模型的稳定性。
最后,对类别型字段做一下类别编码。

def data_process(data_df, dense_features, sparse_features):
    """
    简单处理特征,包括填充缺失值,数值处理,类别编码
    param data_df: DataFrame格式的数据
    param dense_features: 数值特征名称列表
    param sparse_features: 类别特征名称列表
    """
    data_df[dense_features] = data_df[dense_features].fillna(0.0)
    for f in dense_features:
        data_df[f] = data_df[f].apply(lambda x: np.log(x+1) if x > -1 else -1)  # 归一化
        
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值