摘要:

传统的评分预测只考虑到了文本信息,没有考虑到用户的信息,因为同一个词 在不同的用户表达中是不一样的。同样good 一词,

有人觉得5分是good 有人觉得4分是good。但是传统的文本向量表达无法区分。所以每个人都应该有一个属于自己的词向量。

传统的是word embedding的方式,这样处理,忽略了文档的生成者的特性。

因此本文讨论的是如何利用用户信息,来“修正”单词的特征表示。

作者提出了一套自己的表达词向量的方式,并不是用的word embedding.。

作者提出了将用户表示为一个转换矩阵,利用矩阵(用户)与向量(单词)的乘来得到新的单词向量。

然后 用修正的单词向量输入模型,进行预测。模型架构如下:

其中p是修正后的单词表示,u是用户,w是word.

UWCVM模型

User-Word Composition Vector Model(UWCVM)模型利用用户信息修正单词的特征表示。

Mitchell&Lapata[2]提出的两种基于向量的语义和用户组合的方法,如下图所示:

一种是加法模型:一种是乘法模型,乘法模型适合本文的假设,就是e可以修正u。

最初的想法是每个用户算一个word embeding,但是这样计算量比较大,另外每个

用户的词也比较少,训练不充分。

所以采用的是

每个用户的转换矩阵Uk的维度为dxd,其中d=50或100。把Uk分解为两个低秩矩阵,即矩阵分解:

Uk=U_k1*U_k2+diag(u')

在乘积模型(b)的线性转换的基础上,增加一层非线性变换的连接层,采用tanh作为激活函数。

DCVM模型

Document Composition Vector  Model(DCVM)模型用于综合所有的单词向量,生成文档(即每条评论review)的向量表示。

本文采用了Hermann&Blunsom[3]提出的方法,即用biTanh迭代地生成文档的向量表示。

包括以下两个步骤:

以修正后的单词向量作为输入,应用biTanh函数得到句子的向量表示。以句子的向量表示作为输入,应用biTanh函数得到文档的向量表法。

文章指出,这样迭代地使用biTanh函数可看作是两对词袋的卷积神经网络。

其实就是卷积神经网络。

评分预测

将学习得到的文档模型应用到有监督的metriclabeling[4]框架中。主要包括以下两个步骤:

(1)仅基于用户-评论对的向量表示,学习一个初始预测器。以下的损失函数是我们要优化的目标:

(2)将初始的分类器应用到metriclabeling框架中,其主要思路是“similaritems,similarlabels”。Metriclabeling的训练目标是最小化如下的损失函数:

关于公式的参数含义和详细定义,请查阅原文。

实验结果

文章给出了在两个真实数据集上的实验结果,如下图所示:

作者在presentation中提到该模型的一个扩展版本,发表在ACL2015[5]。主要区别是后来的版本添加了物品的文本描述信息。两个模型的具体对比如下:

IJCAI2015:

ACL2015:

《User Modeling with Neural Network for Review Rating Prediction》评论打分预测的更多相关文章

  1. <<Joint Deep Modeling of Users and Items Using Reviews for Recommendation>> 评论打分预测

    综述: 本文将 CNN 与 FM(Factorization Machine) 结合,基于评论文本来进行评分预测. 简介: 目前将神经网络应用推荐系统的研究工作中,有一类思路是把如CNN等神经网络作为 ...

  2. Joint Deep Learning for Pedestrian Detection笔记

    1.结构图 Introduction Feature extraction, deformation handling, occlusion handling, and classification ...

  3. PCoA|NMDS|STRESS|RDA |RA|Unimodal|CCA|Generalized Joint Attribute Modeling

    PCoA:主坐标轴分析 数值型变量使用各种距离公式,而分类变量看是否相同,比如, Aabbcc || Aaffff 其中,两个相同,4个不同,一组6个,则(6+6-2*2)=8. PC0A与PCA区别 ...

  4. Use of Deep Learning in Modern Recommendation System: A Summary of Recent Works(笔记)

    注意:论文中,很多的地方出现baseline,可以理解为参照物的意思,但是在论文中,我们还是直接将它称之为基线,也 就是对照物,参照物. 这片论文中,作者没有去做实际的实验,但是却做了一件很有意义的事 ...

  5. Paper Reading:Deep Neural Networks for YouTube Recommendations

    论文:Deep Neural Networks for YouTube Recommendations 发表时间:2016 发表作者:(Google)Paul Covington, Jay Adams ...

  6. 推荐系统系列(六):Wide&Deep理论与实践

    背景 在CTR预估任务中,线性模型仍占有半壁江山.利用手工构造的交叉组合特征来使线性模型具有"记忆性",使模型记住共现频率较高的特征组合,往往也能达到一个不错的baseline,且 ...

  7. 论文笔记之:Dueling Network Architectures for Deep Reinforcement Learning

    Dueling Network Architectures for Deep Reinforcement Learning ICML 2016 Best Paper 摘要:本文的贡献点主要是在 DQN ...

  8. 【DeepLearning学习笔记】Coursera课程《Neural Networks and Deep Learning》——Week1 Introduction to deep learning课堂笔记

    Coursera课程<Neural Networks and Deep Learning> deeplearning.ai Week1 Introduction to deep learn ...

  9. 实时实例分割的Deep Snake:CVPR2020论文点评

    实时实例分割的Deep Snake:CVPR2020论文点评 Deep Snake for Real-Time Instance Segmentation 论文链接:https://arxiv.org ...

随机推荐

  1. 你可能不知道的shell、bash二三事(Centos 7)

    个人.bashrc: ~/.bashrc: # .bashrc # User specific aliases and functions alias rm='rm -i' alias cp='cp ...

  2. 使用PowerShell替代WinDbg在高分辨率笔记本下调试、排错

    最近换新的开发笔记本,分辨率较高发现部分应用在High DPI下几乎没法用.比较纠结的就是WinDbg,频繁切换分辨率.显示文字大小影响工作节奏.幸好PowerShell在High DPI下效果不错. ...

  3. 【转】C内存管理

    在任何程序设计环境及语言中,内存管理都十分重要.在目前的计算机系统或嵌入式系统中,内存资源仍然是有限的.因此在程序设计中,有效地管理内存资源是程序员首先考虑的问题. 第1节主要介绍内存管理基本概念,重 ...

  4. [深入浅出Cocoa]iOS网络编程之Socket

    http://blog.csdn.net/kesalin/article/details/8798039 版权声明:本文为博主原创文章,未经博主允许不得转载.   目录(?)[+]   [深入浅出Co ...

  5. sublime--将vue代码进行高亮显示

    vue的.vue文件sublime是不认识,但是为了让 .vue 文件看上去更加简洁:所以要用到一款不错的插件: 下载:vue-syntax-highlight https://gitee.com/m ...

  6. poi 导入导出excel

    import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; i ...

  7. Asp.net MVC]Asp.net MVC5系列——在模型中添加

    目录 概述 在模型中添加验证规则 自定义验证规则 伙伴类的使用 总结 系列文章 [Asp.net MVC]Asp.net MVC5系列——第一个项目 [Asp.net MVC]Asp.net MVC5 ...

  8. php中调用这个功能可以在web页面中显示hello world这个经典单词

    php程序写的时间长了,自然对他所提供的功能了如指掌,他所提供的一大堆功能,真是觉得很好用,但有时候会发现php也缺少一些功能,自己总是会产生为php添加一些自定义的功能的想法.久而久之,终于今天憋不 ...

  9. 51nod 1183 - 编辑距离 - [简单DP][编辑距离问题][Levenshtein距离问题]

    题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1183 编辑距离,又称Levenshtein距离(也叫做Edi ...

  10. HDU - 5818 Joint Stacks 比较大の模拟,stack,erase

    https://vjudge.net/problem/HDU-5818 题意:给你两个栈AB,有常规push,pop操作,以及一个merge操作,merge A B 即将A.B的元素按照入栈顺序全部出 ...