写点什么

Field-aware Neural Factorization Machine 阅读笔记

  • 2019-12-02
  • 本文字数:621 字

    阅读完需:约 2 分钟

Field-aware Neural Factorization Machine阅读笔记

提出 Field-aware Neural Factorization Machine 模型,该模型可以通过 FFM 模型构造二阶的交互特征,也可通过 DNN 构建更高阶的交互特征。


FNFM 模型结构如下:



  • Input Layer:x = [x1; x2; . . . ; xf ] ,其中 f 表示特征组的个数,如果是 sparse 的离散特征,xi 就是 one-hot 向量,如果是 dense 的数值特征,就是一个 scalar。

  • Embedding Layer:和传统的做法一样,通过 embedding 层映射到低维度向量。为了交叉合并离散特征和数值特征,dense 的特征也可以通过 embedding 层做处理。

  • Bi-Interaction Concatation Layer:设 xi 和 xj 分别是属于特征组 fi 和 fj 的两个输入特征,那么 second-order feature 交互向量的计算为:

  • 其中的计算符号表示向量间的 element-by-element product operation。 vi,fj 表示输入 xi 和特征组 fj 交互时的向量,vj,fi 表示输入 xj 和特征组 fi 交互时的向量,也就是相同的输入特征与不同的特征组特征交互时,使用的是不同的向量。然后将所有的交互向量 concat 起来。这里有一个创新点:就是传统的 BI 层中采用的是 pooling 层,而这里采用的是 concat 层,原因是为了最大的程度的保留信息不会损失。



Normalization Layer:之后是 BN 层,原因是经过 BI 层之后,输出会变得很不稳定,分布很不均匀。


Multiple Layer Perceptron (MLP) :负责提取高阶的特征。


损失函数还是选择 negative log-likelihood function:




实验结果



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


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


2019-12-02 16:242792

评论

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

Go 入门很简单:如何在 Go 中使用日志包

宇宙之一粟

日志 log Go 语言 4月月更

面试突击41:notify是随机唤醒吗?

王磊

Java java面试

【高并发】如何解决可见性和有序性问题?这次彻底懂了!

冰河

并发编程 多线程 协程 异步编程 精通高并发系列

学生管理系统架构文档

小虾米

架构实战营

Windows注册表内容

Sher10ck

注册表

HDFS小文件分析实践

移动云大数据

hdfs 小文件

制约国内企业知识管理发展的因素

小炮

知识管理 企业知识管理 企业知识管理工具

GAIA-IR: GraphScope 上的并行化图查询引擎

6979阿强

大数据 并行计算 图计算 GraphScope 图分析

解决报错:SSL certificate problem: certificate has expired

liuzhen007

SSL证书 4月月更

Apache ShardingSphere 如何实现分布式事务

SphereEx

Apache 数据库 ShardingSphere SphereEx

行业大咖齐聚 多元主题碰撞 OpenHarmony技术日等你来

Geek_283163

OpenAtom OpenHarmony

面对裁员潮,程序员如何安身立命

融云 RongCloud

Android C++系列:C++最佳实践6 constexpr与decltype

轻口味

c++ android ndk jni 4月月更

深入解析require源码,知其根,洞其源

战场小包

前端 Node 4月月更

spring-cloud-kubernetes与SpringCloud Gateway

程序员欣宸

Java spring-cloud 4月月更

组件容器化Statefulset与Deployment的选型与实践

移动云大数据

Deployment statefulset

Build On 活动预告 | 构建你的第一个基于知识图谱的推荐模型

亚马逊云科技 (Amazon Web Services)

云计算

得物技术网络优化-CDN资源请求优化实践

得物技术

CDN 网络 资源 CDN加速 升级

融云首席科学家任杰:互联网兵无常势,但总有人正年轻

融云 RongCloud

Cilium 原理解析:网络数据包在内核中的流转过程

火山引擎边缘云

Linux 云原生 网络

Mybatis-plus在项目中的应用

Rubble

4月日更 4月月更

Linux驱动框架与杂项字符设备框架介绍

DS小龙哥

4月月更

什么是域名(Domain Name ) ?

源字节1号

TASKCTL 资源树刷新、重载和重置的不同区别

敏捷调度TASKCTL

DevOps 分布式 敏捷开发 自动化运维 大数据运维

[Day20]-[动态规划]零钱兑换 II

方勇(gopher)

LeetCode 动态规划 数据结构算法

为什么需要可编程代理

Flomesh

负载均衡 代理 Pipy 可编程代理

Git技巧小能手

西门阿杰

git 版本控制

微信小程序开发系列(一) :开发环境搭建和微信小程序的视图设计与开发

汪子熙

微信小程序 微信 开发视图 微信小程序专栏 4月月更

架构实战营-外包学生管理系统架构文档

CityAnimal

架构实战营 #架构实战营 「架构实战营」

阿里云发布中国云原生数据湖应用洞察白皮书

阿里云大数据AI技术

大数据 数据湖

湖仓一体,Hologres加速云数据湖DLF技术原理解析

阿里云大数据AI技术

sql 大数据 分布式计算 Cloud Native MaxCompute

Field-aware Neural Factorization Machine阅读笔记_语言 & 开发_Alex-zhai_InfoQ精选文章