在线广告数据集: Criteo Labs
描述:包含数百万个展示广告的点击反馈记录,该数据可作为点击率(CTR)预测的基准。
数据集具有40个特征,第一列是标签,其中值1表示已点击广告,而值0表示未点击广告。 其他特征包含13个dense特征和26个sparse特征。
DeepFM 是由华为诺亚方舟实验室在 2017 年提出的模型。
FM(Factorization Machines,因子分解机)拟解决在稀疏数据的场景下模型参数难以训练的问题。FM 作为推荐算法广泛应用于推荐系统及计算广告领域,通常用于预测点击率 CTR(click-through rate)和转化率 CVR(conversion rate)。
https://zhuanlan.zhihu.com/p/342803984
FM Layer主要是由一阶特征和二阶特征组合,再经过Sigmoid得到 logitcs
模型公式:
-
FM的模型公式是一个通用的拟合方程,可以采用不同的损失函数用于解决regression、classification等问题,FM可以在线性时间对新样本作出预测.
优点:
缺点:只能显示的做特征的二阶交叉,对于更高阶的交叉无能为力。
模型构成:
模型公式:
根据 User embedding和item imbedding使用nearest neighbor search 的方法召回,在softmax采用负采样。
输入数据高度稀疏,使用embeding和average pooling处理,得到用户的观看/搜索兴趣
离散型数据可使用embeding处理,连续型数据可使用归一化或分桶方式处理
skip-gram:采用中心词预测上下文词的方式训练词向量,模型的输入是中心词,采用滑动窗口的形式获取序列样本,得到中心单词之后,根据词向量的矩阵乘法,得到中心词的词向量,然后与上下文矩阵相乘,得到中心单词与每个单词的相似度,通过softmax得到相似概率,并选择概率最大的index输出。
将一个单词转换成one-hot向量与嵌入矩阵相乘得到嵌入向量,送进softmax得到预测结果。
构建损失函数(假设维度有10000个):
Deep Structured Semantic Models 双塔模型
在NLP中负采样就是在不是target中采样。k一般取5-20,不能是均匀采样,均匀采样会拿到很多频率高的词,可以用下面这种方式: