• 天池新闻推荐比赛4:特征工程


    ​ 具体的代码见:http://datawhale.club/t/topic/201

    ​ 特征构造很重要的是要结合用户的历史点击文章信息。 往往用户的最后一次点击会和其最后几次点击有很大的关联。 所以我们就可以对于每个候选文章, 做出与最后几次点击相关的特征如下:

    1. 候选item与最后几次点击的相似性特征(embedding内积) — 这个直接关联用户历史行为
    2. 候选item与最后几次点击的相似性特征的统计特征 — 统计特征可以减少一些波动和异常
    3. 候选item与最后几次点击文章的字数差的特征 — 可以通过字数看用户偏好
    4. 候选item与最后几次点击的文章建立的时间差特征 — 时间差特征可以看出该用户对于文章的实时性的偏好
    5. 如果使用了youtube召回的话, 我们还可以制作用户与候选item的相似特征

    实现思路:

    1. 我们首先获得用户的最后一次点击操作和用户的历史点击
    2. 基于用户的历史行为制作特征, 这个会用到用户的历史点击表, 最后的召回列表, 文章的信息表和embedding向量
    3. 制作标签, 形成最后的监督学习数据集

    对训练数据做负采样

    通过召回我们将数据转换成三元组的形式(user1, item1, label)的形式,观察发现正负样本差距极度不平衡,我们可以先对负样本进行下采样,下采样的目的一方面缓解了正负样本比例的问题,另一方面也减小了我们做排序特征的压力,我们在做负采样的时候又有哪些东西是需要注意的呢?

    1. 只对负样本进行下采样(如果有比较好的正样本扩充的方法其实也是可以考虑的)
    2. 负采样之后,保证所有的用户和文章仍然出现在采样之后的数据中
    3. 下采样的比例可以根据实际情况人为的控制
    4. 做完负采样之后,更新此时新的用户召回文章列表,因为后续做特征的时候可能用到相对位置的信息。
  • 相关阅读:
    PMP-合同类型
    一、JavaScript简介
    编写一程序,从键盘输入10个实数,计算并输出算术平均数
    从键盘输入3个整数,输出其中最大数
    穷举法判断键入的数是不是素数
    2.事件每天执行
    1.mysql 启动服务提示输入密码
    二、linux 用户授权
    1.maven打包乱码
    1.下载谷歌插件
  • 原文地址:https://www.cnblogs.com/zwrAI/p/14083372.html
Copyright © 2020-2023  润新知