NeuSE: A Neural Snapshot Ensemble Method for Collaborative Filtering(阅读论文笔记)
NeuSE: A Neural Snapshot Ensemble Method for Collaborative Filtering(阅读论文笔记)
- 与现有的集成CF方法不同,本文的目标是在不显著增加训练开销的情况下,提高几乎所有现有CF算法的性能。
- 该方法可以自适应地改变不同user-item对的集成权值,使用户在不同item上具有不同的集成权值,从而更好地表征协同过滤的非凸性.
- 只要我们可以创建快照模型,就可以应用NeuSE来提高模型的性能。
- Each hop denotes one layer of model/user/item memory networks with feature mapping layers
文章综述(我的粗浅理解)
本文提出的是一种基于集成学习的CF算法,这种算法的特殊之处,就在于会按照一定的epoch间隔, 选取snapshot。
提出这个算法的原因是,global model并不能很好的fit所有的user/item(全局模型次优性问题),因此会导致overfitting/underfitting,虽然Adagrad,Bayesian approache,集成学习可以优化这个问题,但是仍存在进一步的优化空间。
存在的问题
- global optimal models在CF问题中往往产生次优的性能(意思就是并不是最优)
- 由于用户和标的物共存,CF算法中的y优化问题普遍是non-convex(因此局部最优并非全局最优)的,因此AdaGrad仅能够促进收敛于局部最优,但并不能达到更好的效果
- Bayesian approache也存在两个问题:
1)为未知的模型参数选择先验分布是non-trival的;
2)这种方法通常计算量大,因此仅限于小规模问题 - ensemble learning-based CF algorithms,适合解决全局模型的次优性能问题(suboptimal performance issue of global models)但是同时由于,在集成学习种,学习多个基础模型的话,在大数据集或复杂模型(例如深度神经网络)的情况下,仍然面临效率问题。最后,许多集成协同过滤算法是为了某个特定的协同过滤方法而提出的,不具有普适性(LLORMA)。
因此提出了NeuSE(Neural Snapshot Ensemble),结合了在全局模型学习过程中获得的快照模型,这样就可以用很少的额外的训练成本来实现集成学习。
NeuSE中的三种memory networks
- model memory network to capture the global importance of each snapshot model,
- user memory network to capture the user-wise importance of each snapshot model
- item memory network to capture the item-wise importance of each snapshot model.
PROBLEM FORMULATION
案例研究
1. 全局收敛 VS 局部收敛
- 如(a)图所示,不同评分次数的用户在不同的epoch收敛,全局最优在175期左右达到最优。
- 因此,如果只使用全局最优模型,评分次数小于50的用户和评分次数大于500的用户分别会出现欠拟合和过拟合。
- 由于用户和项目的共存, optimal snapshot models也因不同种类的item而有所不同
- 需要针对不同的用户-项目对选择不同的快照模型,以获得更好的精度。
2. Model Selection(snapshot model selection)
原因:集成学习中,如果选了糟糕的基础模型会导致结果退化
1)Single: the globally optimal snapshot model
2) set 1 : all snapshot models from every 50 epochs till epoch = 500
3) set 2 (snapshot models with epoch = 100, 200, 300)
本研究表明,对不同的用户-项目对,需要 ensemble learner 对优模型分配较高的权重,对劣质模型分配较低的权重,以克服快照模型选择的挑战。
NeuSE: NEURAL SNAPSHOT ENSEMBLE
Network Architecture
- NeuSE的关键步骤是自适应地生成不同评级的集成权值。然而,如果我们只考虑单个用户/项目的有限ratings,集成模型很容易过拟合。
- 为了解决这一点,我们采用了NeuSE中的记忆网络,它可以保持长期记忆,以促进推理。
- memory component 存储全局信息的权重向量和每个用户/项目的 top
NeuSE: A Neural Snapshot Ensemble Method for Collaborative Filtering(阅读论文笔记)相关推荐
- Neural Collaborative Filtering【论文笔记】
文章目录 1 文章为了解决什么问题? 2 文章提出了什么方法? 3 模型架构以及原理? 3.1 推荐问题基本描述 3.2 矩阵分解(Matrix Factorization, MF) 3.3 NCF通 ...
- 《Learning to Denoise Unreliable Intercations for Graph Collaborative Filtering》个人笔记
原文: https://dl.acm.org/doi/10.1145/3477495.3531889 摘要 现已存在的基于GNN协同过滤模型面临着一些用户-项目噪音数据,这个严重影响系统的有效性和 ...
- Neural Collaborative Filtering(NCF) 学习笔记
前置知识: 矩阵分解MF: 把user–item交互矩阵分为两个子矩阵,用两个子矩阵相乘来重构关联矩阵,优化目标是使重构矩阵和真实矩阵之间的误差最小.常用的损失函数是均方误差.通过这种方式得到二者的向 ...
- CSRNet: Dilated Convolutional Neural Networks for Understanding the Highly Congested Scenes2018—论文笔记
本论文来自CVPR2018, 读于20190409. Abstract 我们提出的Congested Scene Recognition(CSRNet)包含了两个部分,一个是获得二维特征的前端,一个是 ...
- 《Beyond Short Clips: End-to-End Video-Level Learning with Collaborative Memories》论文笔记
Abstract 解决的问题? 现有的视频标准训练方式每个迭代会从原始视频中采样一个clip(剪辑),然后通过这一个clip来学习video-level级别的标签.本文认为一个clip不具有足够的时间 ...
- #论文笔记#【MRM-Lasso:A sparse Multiview Feature Selection Method Via Low-Rank Analysis】论文笔记
前言 从现在开始记录一下看的每篇论文,也算是给研究生三年一个交代,不然三年过去了啥也没干不太好.虽然以后可能不会从事这个行业,但是把当下的事做好,不管什么行业,自律是很重要的,从去年进实验 ...
- 《ENet: A Deep Neural Network Architecture for Real-Time Semantic Segmentation》论文笔记
1. 概述 导读:一般的分割网络需要大量的浮点运算以及较长的运算时间,这个妨碍了其在实时要求较高场合的使用,这篇文章提出了基于编解码器结构的实时分割网络ENT(Efficient Neural Net ...
- 论文《Product-based Neural Networks for User Response Prediction》阅读
论文<Product-based Neural Networks for User Response Prediction>阅读 论文概况 Introduction Deep Learni ...
- 推荐系统- NCF(Neural Collaborative Filtering)的推荐模型与python实现
引言: 本文主要表述隐式反馈的基础上解决推荐算法中的关键问题协同过滤. 尽管最近的一些工作已经将深度学习用于推荐系统中,但他们主要将其用于辅助信息建模,例如物品的文字描述和音乐的声学特征. 当涉及到协 ...
- 【推荐系统论文精读系列】(五)--Neural Collaborative Filtering
文章目录 一.摘要 二.介绍 三.准备知识 3.1 从隐式数据中进行学习 3.2 矩阵分解 四.神经协同过滤 4.1 总体框架 4.1.1 学习NCF 4.2 广义矩阵分解(GMF) 4.3 多层感知 ...
最新文章
- python计算概率密度最大的值_Python机器学习(六十四)SciPy 统计
- Framebuffer原理、使用、测试系列文章
- windows x64 build c++ poco库
- NIST发布网络安全劳动力框架
- Work Management Service application in SharePoint 2016
- 关于搜狐焦点房产的数据分析
- JAVA导出excel如何设置表头跨行或者跨列,跪求各位大神了
- python selenium爬虫代码示例_python3通过selenium爬虫获取到dj商品的实例代码
- 编写一个Applet在屏幕上画一组同心圆
- Docker系列(四)守护式容器
- KDevelop下如何选择不同的源文件进行执行
- 电脑编程需要下载什么软件吗
- 7-2统计素数并求和(20分)
- 计算机后台处理程序,小编教你处理打印后台程序服务没有运行
- Leetcode每日一题 面试题56 - I.数组中数字出现的次数
- 中国第一政经博客 数学
- 手机网络邻居访问电脑_手机怎么访问局域网电脑共享文件
- win7怎么查看计算机用户名,Win7怎么查看自己电脑ip地址?
- JAVA图形编程Swing之——JPanel绘图
- Java——批量更改图片像素(大小)
热门文章
- 什么是客户旅程分析(customer journey mapping)
- CMT2300A 433MHz SUB-1G无线收发芯片
- ios下使用speex进行音频压缩
- C++ 重新定义继承而来的非虚函数
- 大数据统计分析毕业设计_数据分析毕业设计 大数据可视化毕业设计
- SQL中计算字符串的长度函数
- 网络1711-12信管1711-12 图 作业评分
- Contos7 postfix dovecot及postfixAdmin Roundcube整合配置
- 美团外卖红包,商超生鲜红包,饿了么红包天天领,果蔬抢特价,大额满减券
- 关于高校通过ipv6免收费上网
- Neural Collaborative Filtering【论文笔记】