论文笔记(eTrust: Understanding Trust Evolution in an Online World)

eTrust:理解线上信任进化

原文链接:eTrust: Understanding Trust Evolution in an Online World, KDD’12
原理:用户偏好与项的向量内积 + 用户与朋友相似度权重*朋友对项的时间衰减评分=用户对项的评分

摘要

大部分关于线上信任的研究都假设用户之间的信任关系是静态的。正如社会科学家告诉我们的那样,信任随着人类的交互而进化发展。在线信任进化的研究面临着独特的挑战,因为通常情况下可用的数据来自于被动观察(科学家在现实世界中调查一群人,记录他们的各种信息)。本文利用社会科学理论开发了研究在线信任发展的方法。我们提出了一个进化信任框架eTrust,它利用了在线产品评审中用户偏好的动态特性。

介绍

信任被广泛的用于帮助线上用户在应用程序中收集可靠的信息,比如高质量评论检测和产品推荐。
Epinion 1等产品评审站点的一个重要特点是用户之间存在信任网络。这些网站为研究线上世界中的信任提供了一个明智的平台。
图一展示了在两个不同时间点的线上评价系统,有两种物体:users、items。两种动作:建立用户之间的信任关系、建立用户对项的评级。评价系统随着时间再进化,当新的用户 u5 和新的项 I5 被加入时,新的信任关系和新的评级关系就会被创建。

Ziegler指出信任和用户偏好相似性有很强的相关性,两个用户越相似,他们之间就越可能存在相似关系。换句话说,用户之间的信任关系会随着用户偏好的变化而发展

本文首次尝试在线产品评审的背景下,利用用户偏好的动态特性来研究网络信任的演化。这项工作的主要贡献包括:

  • 提供研究线上世界中信任演变的方法
  • 提出了一个框架eTrust,通过利用在线产品评审用户偏好的动态来理解信任的演变
  • 介绍了这项关于用户偏好变化的eTrust研究的结果。
  • 通过在线应用程序评估eTrust,例如使用实时数据的评级和信任预测。

问题陈述

t 时刻的用户集合 Ut = {u1, u2, . . . , unt }
t 时刻的项集合 It = {I1, I2, . . . , Imt }
Ut ⊆ Ut+1 and It ⊆ It+1

t 时刻的信任网络 Xt ∈ Rnt×nt 【 Xt(i, j) = 1 if ui is trusted by uj at time t)】
t 时刻的评级 Rt ∈ Rnt×mt

用户可能对不同方面(facets)的项目有不同的偏好,我们假设项有K个潜在面,并且用户对相同潜在面的项有着相似的偏好。 (这个地方可以用电影推荐来理解,比如:每个电影有3个潜在面:导演、演员、电影类型,对于这三个潜在面相同的电影用户可能有着相同的喜好)
t 时刻用户 ui 的偏好向量 pti ∈ RK+
项 Ij 的特征向量 qj ∈ RK
t 时刻多面信任关系 Wt ∈ Rnt×nt×K 【wtivk 表示 t 时刻 ui 对 uv 在 k 面的的信任关系】

则,在动态用户偏好的情况下的信任进化问题可以被称述为:给定 T 时刻的切片,用户 U、项 I、用户信任网络 X、用户评级 R,信任进化 W 可以利用用户的偏好 P 的变化来学习到。

信任进化框架

eTrust - 模拟信任进化

在评级系统中信任和用户偏好的相似度有很强的联系,反映在其评级信息中。本文探索了用户偏好的动态性,为评级系统建立了信任进化模型。

rtij 为实际的评级,r^tij 为预测的评级,一个基于信任网络的评级预测的方法,是最近邻居模型(考虑用户多方面信任关系)的变体:

Nti 是 ui 在 t 时刻信任的用户集合
rtvjvj 是 uv 在 t 时刻之前对 Ij的评级(tvj 就是用户 uv 对项 Ij 进行评价时的时刻)
越早的评级反映的是用户之前的偏好,应该对当前的评级有更小的影响,因此,我们选择了指数时间函数。
其中,ηi ≥ 0 绘制 ui 的用户特定衰变率,应该从data中学习得到

wtivk 是在 t 时刻 ui 和 uv 在 k 面之间的信任强度。
由于信任和用户偏好相似度之间有强烈而明显的联系,我们定义stivk ∈ RL是 t 时刻 ui 和 uv 在 k 面的偏好相似度向量,基于 t 时刻他们在 k 面的偏好 pti (k) 、 ptv(k)
然后可以用 stivk 来定义 wtivk,其中 f 是 sigmoid 激活函数

偏好相似度向量:

latent factor model 没有包含信任网络的影响,neighborhood model 没有考虑用户偏好和项的特征。因此,我们将两者结合起来,在这个公式中,在 t 时刻 ui 对 Ij 的评级由两个因素决定,前部分捕获了 ui 在 t 时刻的偏好和 item 的特征,后部分考虑了用户信任用户的影响。α ∈ [0, 1] 来调节两部分的贡献。

然后,信任进化问题就被嵌到了评级预测中,可以被下面的最小化问题表达:

c(·) 模拟了用户偏好的变化,λ 控制变化的速度,当 λ → 0,我们不考虑不同时间点用户偏好的联系。当 λ → +∞,不同时间点用户的偏好向量被限制为相同。
由于用户偏好的变化被认为随着时间平滑变化,可以如下定义函数c:

eTrust 应用

评分预测

预测 T+1 时刻用户 ui 对项 Ij 的评分:
在这里插入图片描述
其中,w 是从数据中学习得到的,qj 是不随时间进化的,对于每个用户,ui,bi,ηi 在时间片上是相互独立的可以直接应用到 T+1 时刻。
定义用户 ui 在 k 面的偏好变化速度为 Zik ,则用户在 T+1 时刻 k 面的偏好 pT+1i(k) 可以用过 T 时刻 k 面的偏好和偏好变化速度计算出来:在这里插入图片描述在这里插入图片描述
在 T+1 时刻,新的用户和新的项可能被引入,我们使用 Homophily 来解决冷启动问题:相似的用户更可能信任彼此。因此,对于一个新的用户,我们先基于 profile 找到他的 top-l 相似用户集合,然后通过平均他信任用户的偏好来估计他的偏好。对于新的项也是同样的方法。

信任预测

信任传播模型(Trust propagation model)是一个流行的模型,它基于已知信任关系来得到新的信任关系的。但是用户的信任关系通常是服从幂律分布 (pow-law distribution) 的,因此,在实际应用中,没有足够的信息来应用这一技术。此外,该传播模型不能直接适用于信息少的新用户。

eTrust 可以用户信任预测,给定时间 T 之前的信任网络和评分,我们想要推荐 T+1 时刻的信任关系。通过优化 eTrust 的目标函数可以得到参数 w(权重),然后用户 ui 和用户 uv 在 k 面的信任强度 wivk 便可以计算出来。然后整体的信任强度 wiv 可以如下计算得到:(对于一个新的用户的偏好,用他关于 profiles 的 top-l 相似用户的平均偏好来表示)
在这里插入图片描述

学习总结

1、作者在考虑用户与用户之间的信任关系时,不是简单的信任和不信任关系,而是考虑了 K 个潜在面,用户在不同潜在面对别的用户有不同的信任关系。这样的好处就是在推荐物品时不是简单的考虑用户对邻居的信任分数大小,也考虑到了推荐商品的特性。(比如说:给用户 a 推荐运动产品的时候可能更信任用户 b,推荐电影的时候可能更信任用户 c )
2、信任和用户偏好相似性有很强的相关性,同时,用户之间的信任关系会随着用户偏好的变化而发展。
3、在考虑信任用户对项的评级时,采用指数时间函数,表明时间越久远的评级的影响程度越小。
4、疑问:最近邻居模型的分母为什么时那样的呢?感觉分母应该是邻居个数。
5、用户在不同方面的喜欢程度乘以用户对别的用户在不同方面的信任程度之和得到用户对别的用户的整体信任程度。
6、通过之前的偏好变化计算得到偏好变化速度,再计算得到下个时刻用户的偏好。这是我觉得这篇论文提出的一个好的角度,但是这样的计算方式是否合理呢?即每个时刻的偏好减去上一个时刻的偏好值是否稳定,如果波动很大的话,这样计算就不太合适了,可以考虑换一种计算方式!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/480104.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

技术动态 | 67 亿美金搞个图,创建知识图谱的成本有多高你知道吗?

OpenKG 祝各位读者元宵节快乐!本文转载自公众号:机器之心。选自ISWC作者:Baptiste Rocca参与:思源、李亚洲我们知道强大的深度模型需要很多计算力,那你知道创建一个知识图谱的成本到底是多少吗?德国 Mannhe…

Attention模型:我的注意力跟你们人类不一样

星标/置顶小屋,带你解锁最萌最前沿的NLP、搜索与推荐技术文 | 小轶背景截至今日,Badanau Attention的原文citation已达1.34w之多。2020年几乎所有主流NLP任务都需要借助attetion来实现。在深度学习全民炼丹的时代,attention是为数不多具有较强…

动态规划算法(Dynamic Programming)之0-1背包问题

文章目录1. 问题引入2. 动态规划求解0-1背包3. 复杂度4. 0-1背包升级版(带价值)5. 0-1背包升级版(带价值)DP解法1. 问题引入 前面讲了0-1背包的回溯解决方法,它是穷举所有可能,复杂度是指数级别的&#xf…

Java多线程系列(一):最全面的Java多线程学习概述

Java并发编程的技能基本涵括以下5方面: 多线程 线程池 线程锁 并发工具类 并发容器 多线程的4种创建方式 继承Thread 实现Runnable接口 实现Callable接口 以及线程池来创建线程 Java线程的生命周期 线程的创建 线程的就绪 线程的运行 线程的阻塞 线程的死…

论文浅尝 | 基于知识库的自然语言理解 01#

本文转载自公众号:知识工场。罗康琦,上海交通大学计算机系2019届博士,研究方向为自然语义理解和知识图谱。2012年获得华中科技大学软件工程学士学位,现就职于京东数据科学实验室(Data Science Lab)。他曾在…

推荐系统图算法实用干货汇总(含论文、代码、样例教程)

Hello,今天为朋友们推荐一个值得学习的公众号「浅梦的学习笔记」,小编目前在电商公司从事推荐系统相关的工作。主要分享关于「推荐系统,图算法,NLP&CV以及求职面试」等内容,欢迎关注一起学习和交流~文末可打包下载…

动态规划应用--双11购物凑单

文章目录1. 问题描述2. 代码实现1. 问题描述 双11购物节的时候,某宝给你很多张满300减50的优惠券,你想组合各种商品的价格总和>300,且金额总和越接近300越好,这样可以多薅点羊毛。 回溯算法效率太低,时间复杂度指…

商汤科技2020数据分析师0820笔试题目整理

2019年8月19日 问答题1:缺失值数据预处理有哪些方法?https://juejin.im/post/5b5c4e6c6fb9a04f90791e0c 处理缺失值的方法如下:删除记录,数据填补和不处理。主要以数据填补为主。 1 删除记录:该种方法在样本数据量十分…

Java多线程系列(八):ConcurrentHashMap的实现原理(JDK1.7和JDK1.8)

HashMap、CurrentHashMap 的实现原理基本都是BAT面试必考内容,阿里P8架构师谈:深入探讨HashMap的底层结构、原理、扩容机制深入谈过hashmap的实现原理以及在JDK 1.8的实现区别,今天主要谈CurrentHashMap的实现原理,以及在JDK1.7和…

论文笔记(Neural Graph Collaborative Filtering)

神经图协同过滤 论文链接:Neural Graph Collaborative Filtering, SIGIR’19 原理:在 user-item interaction graph 上使用 GNN 来学习 user 向量和item 向量,用户向量和项向量的内积来预测评分。 区别: 大部分论文使用 GNN 只是…

论文浅尝 | 基于知识库的自然语言理解 02#

本文转载自公众号:知识工场。罗康琦,上海交通大学计算机系2019届博士,研究方向为自然语义理解和知识图谱。2012年获得华中科技大学软件工程学士学位,现就职于京东数据科学实验室(Data Science Lab)。他曾在…

工业解密:百度地图背后的路线时长预估模型!

星标/置顶小屋,带你解锁最萌最前沿的NLP、搜索与推荐技术编 | YY无论你是苦逼学生(公交地铁狗)、职场萌新(打车狗)还是有钱大佬(有车一族),只要站在了北上广深的土地上,就…

动态规划应用--“杨辉三角”最短路径 LeetCode 120

文章目录1. 问题描述2. DP算法代码3. LeetCode 120 三角形最小路径和1. 问题描述 对“杨辉三角"进行一些改造。每个位置的数字可以随意填写,经过某个数字只能到达下面一层相邻的两个数字。 假设你站在第一层,往下移动,我们把移动到最底…

Java多线程系列(九):CountDownLatch、Semaphore等4大并发工具类详解

之前谈过高并发编程系列:4种常用Java线程锁的特点,性能比较、使用场景 ,以及高并发编程系列:ConcurrentHashMap的实现原理(JDK1.7和JDK1.8) 今天主要介绍concurrent包的内容以及4大并发工具类。 Java并发工具包 1.并发工具类 …

快手 算法工程师 0825 笔试题

4 求解一元一次方程的解 #include <cstdio> #include <iostream> #include <string.h> #include <cstring> #include <algorithm> using namespace std; int x0,n0,xr0,nr0; int flag 0; void Adds(string a,char op) { if(flag0) {if(a…

论文笔记(Neural Collaborative Filtering)

神经协同过滤 论文链接&#xff1a;Neural Collaborative Filtering, WWW’17 原理&#xff1a;融合 GMF 和 MLP 1. 摘要 虽然最近的一些研究使用深度学习作为推荐&#xff0c;但他们主要是用深度学习来建模辅助信息&#xff0c;例如 item 的文本描述。在表示协同过滤的关键…

玩转算法第七章-二叉树与递归

二叉树与递归 二叉树的前序遍历 leetcode 104 将两个递归函数映射到max函数中去 思考题&#xff1a;leetcode 111 leetcode&#xff1a;226 扩展题&#xff1a;leetcode 100 leetcode&#xff1a;101 第一个是&#xff0c;第二个不是 leetcode 222&#xff1a; leet…

POJ 2965 开冰箱的门(回溯)

文章目录1. 题目1.1 题目链接1.2 题目大意1.3 解题思路2. 代码2.1 Accepted代码1. 题目 1.1 题目链接 http://poj.org/problem?id2965 1.2 题目大意 有一个4*4的符号矩阵&#xff08;和-&#xff09;&#xff0c;改变一个元素的符号&#xff0c;它所在的行和列的其他元素也…

论文浅尝 | 基于知识库的自然语言理解 03#

本文转载自公众号: 知识工场。罗康琦&#xff0c;上海交通大学计算机系2019届博士&#xff0c;研究方向为自然语义理解和知识图谱。2012年获得华中科技大学软件工程学士学位&#xff0c;现就职于京东数据科学实验室&#xff08;Data Science Lab&#xff09;。他曾在AAAI&#…

Java多线程系列(七):并发容器的原理,7大并发容器详解、及使用场景

之前谈过高并发编程系列&#xff1a; 高并发编程系列&#xff1a;4种常用Java线程锁的特点&#xff0c;性能比较、使用场景 高并发编程系列&#xff1a;CountDownLatch、Semaphore等4大并发工具类详解 高并发编程系列&#xff1a;4大JVM性能分析工具详解&#xff0c;及内存…