赛道 | 深延科技包揽SIGIR eCOM‘21双赛道冠军 自研自动特征工程框架神助攻

本文主要是介绍赛道 | 深延科技包揽SIGIR eCOM‘21双赛道冠军 自研自动特征工程框架神助攻,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

日前,信息检索领域的国际重要会议SIGIR 2021正在线上举行,来自深兰科技的DeepBlueAI团队参加了SIGIR eCom'21 竞赛,并且表现出色,在竞赛仅设的两个赛道中均获得冠军。

这是继2019年获得该系列比赛冠军以来的第二次夺冠,证明了深兰在电商推荐系统领域技术有着领先的地位。此外,更值得注意的是在第二个赛道,深兰自研的自动特征工程框架助力队伍获得了冠军,证明了其自动化机器学习的强大能力。

SIGIR eCom'21 竞赛由Coveo承办,是在2021 SIGIR Workshop on eCommerce上组织的一场电商商品推荐的比赛。该比赛从2017年开始,每年举办一次,今年已是第5届,吸引了来自NVIDIA、eBay、华东师范大学、乐天等知名公司和学校的团队。

一、SIGIR eCom'21冠军方案解读

1、赛题介绍

SIGIR eCom'21 竞赛分为两个赛题:

第一、商品推荐任务。赛题把一个会话分成前后两部分,给出前面一部分的数据,要求预测出后面会交互的商品,是一个大规模数据的推荐问题。

第二、购买意图预测任务。赛题给出一个有添加购物车行为的会话的前面一部分,要求预测最后用户是不是真的会买这个商品,是一个二分类问题。

2、团队成绩

比赛竞争非常激烈,最终DeepBlueAI团队击败了NVIDIA团队,在两个任务都取得了冠军。

3、数据分析

两个任务使用的是同一批数据,训练集测试集合起来一共有600多万,其中有100万会话数据和6万多个商品。经过分析,这两个任务分别有以下难点。

对于商品推荐任务:

首先数据量很大,对代码运行效率要求很高;第二有30%的测试集会话,给的初始信息很少,怎么有效优化冷启动的会话,提升得分?第三原始数据给出的字段极为丰富,怎么有效利用这些信息?

对于预测购买意图任务,主要是这个任务的评分指标很复杂:

首先,它定义了一个k,k表示第一次添加购物车之后会话还有几条记录。评分指标要求对k越小的样本预测正确奖励越高,针对这一点,怎么设计模型或者策略能够适应这个机制?

第二,每个k是一个分类,最终得分是每个类样本的平均准确率之和。因为使用了准确率(accuracy),加上正负样本不平衡,导致对模型的精度要求非常高。

4、竞赛方案

对于商品推荐任务,团队整体采用召回+排序的框架。

排序方面,团队尝试了很多方法,但是提升的效果有限。召回在这个任务里更为重要,在尝试了很多种方法后,团队最终使用了两个效果较好的召回。

(1)u2i_interact_i2i_itemcf:

先通过协同过滤的方法算出item与item之间的相似度,然后根据user历史交互的item,推荐与它最相似的item。

(2)u2url_url2i:

先统计访问当前url之后,下次访问每个item的概率;然后根据用户最后一个url推荐那些概率大的item。

对于预测购买意图任务:

首先是特征工程,团队采用了手动特征与自动特征工程相结合的方式。手动特征方面,主要是提取一些比较明显有效的特征,如用户是否查看了添加购物车商品的细节、查看了多久、用户一共交互了多少商品等比较直观的特征,效果上评分指标提升0.008;自动特征工程则是利用深兰自研autosmart框架提取的特征,这一部分特征效果提升0.002。

然后是后处理方面,针对评分指标的特性,基于k值不同对每个分类单独进行阈值调整,达到本地最好效果。

二、SIGIR 2019 eBay冠军方案解读

值得一提的是,早在2019年深延科技就在SIGIR 2019 eBay 数据挑战赛上夺得冠军。

当时比赛是由 eBay 搜索组组织的高精度召回任务。挑战针对的是电子商务搜索中的常见问题:展示非相关性排序时要显示的项目。用户通常按非相关性的维度进行排序,例如流行度、评论得分、价格等。

|关于深延科技|

深延科技成立于2018年,是深兰科技(DeepBlue)旗下的子公司,以“人工智能赋能企业与行业”为使命,助力合作伙伴降低成本、提升效率并挖掘更多商业机会,进一步开拓市场,服务民生。公司推出四款平台产品——深延智能数据标注平台、深延AI开发平台、深延自动化机器学习平台、深延AI开放平台,涵盖从数据标注及处理,到模型构建,再到行业应用和解决方案的全流程服务,一站式助力企业“AI”化。

这篇关于赛道 | 深延科技包揽SIGIR eCOM‘21双赛道冠军 自研自动特征工程框架神助攻的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/438465

相关文章

一文详解MySQL如何设置自动备份任务

《一文详解MySQL如何设置自动备份任务》设置自动备份任务可以确保你的数据库定期备份,防止数据丢失,下面我们就来详细介绍一下如何使用Bash脚本和Cron任务在Linux系统上设置MySQL数据库的自... 目录1. 编写备份脚本1.1 创建并编辑备份脚本1.2 给予脚本执行权限2. 设置 Cron 任务2

MyBatis Plus 中 update_time 字段自动填充失效的原因分析及解决方案(最新整理)

《MyBatisPlus中update_time字段自动填充失效的原因分析及解决方案(最新整理)》在使用MyBatisPlus时,通常我们会在数据库表中设置create_time和update... 目录前言一、问题现象二、原因分析三、总结:常见原因与解决方法对照表四、推荐写法前言在使用 MyBATis

Python使用smtplib库开发一个邮件自动发送工具

《Python使用smtplib库开发一个邮件自动发送工具》在现代软件开发中,自动化邮件发送是一个非常实用的功能,无论是系统通知、营销邮件、还是日常工作报告,Python的smtplib库都能帮助我们... 目录代码实现与知识点解析1. 导入必要的库2. 配置邮件服务器参数3. 创建邮件发送类4. 实现邮件

Python使用pynput模拟实现键盘自动输入工具

《Python使用pynput模拟实现键盘自动输入工具》在日常办公和软件开发中,我们经常需要处理大量重复的文本输入工作,所以本文就来和大家介绍一款使用Python的PyQt5库结合pynput键盘控制... 目录概述:当自动化遇上可视化功能全景图核心功能矩阵技术栈深度效果展示使用教程四步操作指南核心代码解析

SpringBoot实现文件记录日志及日志文件自动归档和压缩

《SpringBoot实现文件记录日志及日志文件自动归档和压缩》Logback是Java日志框架,通过Logger收集日志并经Appender输出至控制台、文件等,SpringBoot配置logbac... 目录1、什么是Logback2、SpringBoot实现文件记录日志,日志文件自动归档和压缩2.1、

SpringCloud使用Nacos 配置中心实现配置自动刷新功能使用

《SpringCloud使用Nacos配置中心实现配置自动刷新功能使用》SpringCloud项目中使用Nacos作为配置中心可以方便开发及运维人员随时查看配置信息,及配置共享,并且Nacos支持配... 目录前言一、Nacos中集中配置方式?二、使用步骤1.使用$Value 注解2.使用@Configur

Golang实现Redis分布式锁(Lua脚本+可重入+自动续期)

《Golang实现Redis分布式锁(Lua脚本+可重入+自动续期)》本文主要介绍了Golang分布式锁实现,采用Redis+Lua脚本确保原子性,持可重入和自动续期,用于防止超卖及重复下单,具有一定... 目录1 概念应用场景分布式锁必备特性2 思路分析宕机与过期防止误删keyLua保证原子性可重入锁自动

C++ HTTP框架推荐(特点及优势)

《C++HTTP框架推荐(特点及优势)》:本文主要介绍C++HTTP框架推荐的相关资料,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. Crow2. Drogon3. Pistache4. cpp-httplib5. Beast (Boos

SpringBoot基础框架详解

《SpringBoot基础框架详解》SpringBoot开发目的是为了简化Spring应用的创建、运行、调试和部署等,使用SpringBoot可以不用或者只需要很少的Spring配置就可以让企业项目快... 目录SpringBoot基础 – 框架介绍1.SpringBoot介绍1.1 概述1.2 核心功能2

python利用backoff实现异常自动重试详解

《python利用backoff实现异常自动重试详解》backoff是一个用于实现重试机制的Python库,通过指数退避或其他策略自动重试失败的操作,下面小编就来和大家详细讲讲如何利用backoff实... 目录1. backoff 库简介2. on_exception 装饰器的原理2.1 核心逻辑2.2