9月7日-8日,相约 2023 腾讯全球数字生态大会!聚焦产业未来发展新趋势! 了解详情
写点什么

新浪微博 FiBiNET:结合特征重要性和双线性特征交互进行 CTR 预估

  • 2019-11-29
  • 本文字数:1710 字

    阅读完需:约 6 分钟

新浪微博FiBiNET:结合特征重要性和双线性特征交互进行CTR预估

背景及简单介绍

基于深度学习的 CTR 预估模型用处已经很广泛,模型也提出了很多,比如 wide&deep,DCN,DIN 等等。但是许多模型在计算特征交互时用的还是较简单的方法:比如 Hadamard 乘积或者内积,而很少去关注特征的重要性。本文提出了一种新的 CTR 预估被称为 FiBiNET,该模型名是 Feature Importance and Bilinear feature Interaction NETwork 的缩写。一方面,FiBiNET 可通过 Squeeze-Excitation network 动态学习不同特征的重要性权重,因为不同的特征其实对目标预测的重要性是不一样的,比如在一个人的收入时,职业的特征肯定比爱好的特征来的更加重要;另一方面,通过双线性变换函数从更加细粒度的角度高效学习特征的交互。通过结合 DNN,deep FiBiNET 模型在 realworld datasets 上取得了很好的性能。

相关工作

Squeeze-and-Excitation Network(SENet)模块



上图是 SENet 的 Block 单元,图中的 [公式] 是传统的卷积结构,X 和 U 是[公式]的输入(C’H’W’)和输出(CHW),这些都是以往结构中已存在的。SENet 增加的部分是 U 后的结构:对 U 先做一个 Global Average Pooling(图中的 [公式] ,作者称为 Squeeze 过程),输出的 11C 数据再经过两层的全连接(图中的 [公式] ,作者称为 Excitation 过程),最后用 sigmoid(论文中的 self-gating mechanism)限制到[0,1]的范围,把这个值作为 scale 系数乘到 U 的 C 个通道上, 作为下一级的输入数据。这种结构的原理是想通过控制 scale 的大小,把重要的特征增强,不重要的特征减弱,从而让提取的特征指向性更强。

模型结构


Sparse Input and Embedding layer


首先是输入层和 Embedding 层,和常规的 DeepFM,AFM 等模型没什么区别,输出是 [公式] ,其中 f 是特征 fields 的数目, [公式] ,表示第 i 个 field 的 embedding 向量,维度为 k。


  1. SENET Layer



输入是 embedding 层输出的 [公式] ,SENET Layer 输出一个权重向量 [公式] ,每个值都对应一个特征 field。然后将该权重向量与 embedding 层的输出相乘得到: [公式] 。


展开来说,SENET 一共三个步骤:


squeeze step:计算每个 field embedding 的概况统计(summary statistics)。使用 max 或者 mean pool 针对每个 field 得到一个统计向量: [公式] 。其中 mean pool 的效果要好于 max pool,这也很好理解,因为 embedding 提取出来的 k 维度的向量,如果只是取最大的一个值是会损失很多信息的。


Excitation:根据向量 Z 计算每个 field embedding 的权重,使用的是两层 FC:



Re-Weight:将原来的 field embedding 与 Excitation 步骤输出的 A 向量逐元素相乘:



3. Bilinear-Interaction



传统的特征交叉方式广泛采用了内积(fm,ffm 等)和哈达玛积(AFM,NFM 等)。其中内积可被表示为:



哈达玛积可被表示为:[公式] 。而这两种方式在稀疏数据上很难有效对特征交叉进行建模。文章提出结合内积和哈达玛积并引入一个额外的参数矩阵 W 来学习特征交叉。如上图有半部分所示: [公式] 和 W 之间是内积,W 和 [公式] 之间是哈达玛积。


交叉向量 [公式] 可通过三种方式得到:


  • Field-All Type:这种情况下,所有特征组交叉时共享一个参数矩阵 W,额外参数量为 W 矩阵的大小 k×k。

  • Field-Each Type:每个特征组 field i 维护一个参数矩阵 Wi,额外参数量为(f-1)kk。

  • Filed-Interaction Type:每对交互特征[公式] 都有一个参数矩阵 [公式] 。额外参数量为 0.5*(f-1)kk。

  • 最终,交叉层由原始的特征组 embedding 向量 E 以及 SENET 层输出的 embedding 向量 V 分别得到交叉向量 p 和 q。


  1. Combination Layer


组合层将交叉向量 p 和 q 进行拼接操作:



若直接对 c 向量中的元素进行求和并使用一个 sigmoid 函数输出,则得到一个浅层的 CTR 预估模型,若将该向量输入深度神经网络,则得到一个深度 CTR 预估模型。


  1. Deep Network


输入是组合层的输出 c,通过几层的 MLP 转化,最后通过 sigmoid 函数输出 CTR 的预估值 [公式] 。


  1. Output Layer

实验

浅层 FiBiNET



深层 FiBiNET



参考文献:


https://arxiv.org/pdf/1905.09433.pdf


https://blog.csdn.net/u012151283/article/details/95234555


https://zhuanlan.zhihu.com/p/32


本文转载自 Alex-zhai 知乎账号。


原文链接:https://zhuanlan.zhihu.com/p/76698689


活动推荐:

2023年9月3-5日,「QCon全球软件开发大会·北京站」 将在北京•富力万丽酒店举办。此次大会以「启航·AIGC软件工程变革」为主题,策划了大前端融合提效、大模型应用落地、面向 AI 的存储、AIGC 浪潮下的研发效能提升、LLMOps、异构算力、微服务架构治理、业务安全技术、构建未来软件的编程语言、FinOps 等近30个精彩专题。咨询购票可联系票务经理 18514549229(微信同手机号)。

2019-11-29 13:231092

评论

发布
暂无评论
发现更多内容

Docker Shim 被移除,K8s v1.24 升级该怎么办

Daocloud 道客

Docker Kubernetes CRI-Dockerd

欧拉的奇异之旅·共赴开源时代

白洞计划

flask POST请求,数据入库,文件上传,一文看懂,3天掌握Flask开发项目系列博客之三

梦想橡皮擦

3月月更

每秒百万条信息查询天翼云助力江苏核酸检测信息查询

天翼云开发者社区

WMS系统与ERP仓储管理的差异

源字节1号

开源 后端 前端开发 WMS系统 ERP系统

在线JSON格式化美化

入门小站

工具

3天掌握Flask开发项目系列博客之二,操作数据库

梦想橡皮擦

3月月更

天翼云供应链API安全治理实践获“优秀治理实践奖”

天翼云开发者社区

技术平台&应用开发专题月 | 业务上云后的调试利器—云机一体

用友BIP

用友 用友iuap

基于 EventBridge 构建 SaaS 应用集成方案

阿里巴巴云原生

云原生 SaaS

如何在 Python 中反转字符串?

Ethereal

如何设计良好的技术项目文档结构

老张

项目管理 交付质量

聊聊 Pulsar:编译 Pulsar 源码并搭建源码环境

老周聊架构

云原生 Apache Pulsar 3月月更

一种小程序弱网离线优化的思路

阿里巴巴终端技术

小程序 弱网 体验优化

《人民日报》刊文:天翼云持续创新为数据安全保驾护航

天翼云开发者社区

拥抱国产云桌面,焱融科技与酷栈科技完成产品兼容认证

焱融科技

云计算 分布式 云原生 高性能 文件存储

译文《Java并发编程之CAS》

潘大壮

乐观锁 并发编程 CAS 并发’ Java Concurrency

阿里IM技术分享(七):闲鱼IM的在线、离线聊天数据同步机制优化实践

JackJiang

即时通讯 IM im开发

东数西算加快云网与数据融合天翼云架起云间高速

天翼云开发者社区

天翼云联手平凯星辰共建开源分布式数据库实验室

天翼云开发者社区

云原生网络利器--Cilium 之 eBPF 篇

Daocloud 道客

云原生 ebpf cilium

阿里云神龙AI加速引擎帮助vivo将训练性能提升30%-70%

阿里云弹性计算

AI gpu 神龙架构 加速引擎

智能家居市场白热化,小程序助力生态合作新模式

Speedoooo

小程序生态 智慧小区 小程序容器 智慧家居 智慧物业

终端常用快捷键

刁架构

终端 快捷键 iterm2

无影云电脑支持企业快速实现居家办公

阿里云弹性计算

远程办公 数据安全 无影云电脑

龙蜥开发者说来了,来看看社区一周动态还有什么? | 3.07-3.11

OpenAnolis小助手

开源 开发者 龙蜥社区 一周动态

作业五

Geek_f3e842

架构实战营

向工程腐化开炮|资源治理

阿里巴巴终端技术

Java android 资源管理

确保数据中心物理安全的五种方法

Ethereal

技术平台&应用开发专题月 | 企业上云利器-YMS(Yon Middleware Service)

用友BIP

用友 用友iuap

云原生中间件 -- Redis Operator 篇

Daocloud 道客

redis 云原生 中间件 云原生中间件

  • 扫码添加小助手
    领取最新资料包
新浪微博FiBiNET:结合特征重要性和双线性特征交互进行CTR预估_文化 & 方法_Alex-zhai_InfoQ精选文章