会话推荐(Session-based Recommendation)
会话推荐(Session-based Recommendation)(概念)
在超载信息时代和数字化经济中,推荐系统 (RS) 在知情消费、服务和决策方面发挥着越来越重要的作用。近年来,基于会话的推荐系统 (SBRS) 已成为 RS 的新范例。不同于其他推荐系统,例如基于内容的推荐系统和基于协同过滤的推荐系统,它们通常对长期但静态的用户偏好进行建模,SBRS 旨在捕获短期但动态的用户偏好,以提供更及时和准确的推荐,这些推荐对用户的演变敏感他们的会话上下文。
User and User Properties
SBRS 中的用户是对项目(例如产品)采取操作(例如点击、购买)并接收推荐结果的主体。假设 u 表示一个用户,每个用户都与一个唯一的 ID 和一组描述她的属性相关联,例如用户的性别,并且它有多个值,例如男性和女性。用户的属性可能会影响她对项目采取的行动,并进一步影响相应的会话。例如,一个男孩可能会看更多的动作片,导致他在观看过程中看更多的动作片,而一个女孩可能喜欢看更多的爱情片。除了可以明显观察到的显性属性外,一些反映用户内部状态的隐性属性,例如她的情绪和意图,也可能对她的行为产生重大影响。所有用户共同构成用户集,即U = {u1, u2, …, u |U | }.请注意,由于两个原因,会话的用户信息可能并不总是可用的:(1)由于隐私保护而没有记录; (2) 一些用户在与 amazon.com 等在线平台互动时未登录。因此,会话变为匿名。
Item and Item Properties
SBRS 中的项目是要推荐的实体,例如产品(例如书籍)或服务(例如课程)。令 v 表示一个项目,它与唯一 ID 和一组属性相关联,以提供项目的描述信息,例如项目的类别和价格。数据集中的所有项构成项集,即V = {v1, v2, …, v |V | }.
通常,项目在不同域中是不同的。例如,在新闻推荐领域,一个项目是发布在新闻网站上的新闻文章,例如abc.com上关于人工智能的报道;在电子商务领域,item 是一种待售的产品,例如 amazon.com 上的耳机,在服务行业,item 是一种特定的服务,例如 Coursera 提供的“机器学习”课程(https://www.coursera.org/)。
Action and Action Properties
用户通常在会话中对某个项目执行操作,例如,单击某个项目。让 a 表示一个动作,它与唯一 ID 和一组属性相关联以提供其属性信息,例如动作的类型,并具有多个值,例如点击、查看和购买。请注意,某些操作可能与特定项目无关,例如搜索操作或目录导航操作。但是它们仍然可以为 SBRS 提供有用的信息,如 [91] 中所讨论的那样。
Interaction and Interaction Properties
交互是会话中最基本的单元。令 o 表示交互,它是一个三元组,由用户 u、项目 v 和 u 对 v 采取的操作 a 组成,即 o = ⟨u, v, a⟩。在用户信息不可用的情况下,交互变为匿名,即 o = ⟨v, a⟩。此外,在只有一种类型的动作(例如点击)的情况下,交互 o 可以进一步简化为 o = ⟨v⟩,即它仅由一个项目组成。所有交互作用共同构成交互作用集 O。
Session and Session Properties
Session是SBRS中的一个重要实体。让 s 表示一个会话,它是在一段连续时间内生成的交互的非空有界列表,它可能与某些用户(例如,用户 ID)或特定于会话(例如,会话 ID 或 cookie)相关联) 信息,即 s = {o1, o2, …, o |s | }.请注意,这里我们使用概念“列表”而不是“集合”来表示在一个会话中可能存在重复的交互。例如,用户在收听会话中多次收听一首歌曲。每个会话都与一组属性相关联,例如 s 的持续时间,它具有多个对应值,例如 20 分钟或 40 分钟。会话的其他一些重要属性包括会话发生的时间和日期。下面展示可能对 SBRS 产生重大影响的会话的五个重要属性:
session length
这是会话的一个基本属性,在大多数文献中被作为实验数据的统计指标之一。不同长度的会话可能会给 SBRS 带来不同的挑战,从而导致不同的推荐性能。
internal order
会话的内部顺序是指其中交互的顺序。通常,不同的会话内部有不同的排序灵活性,即不排序、灵活排序和排序。内部顺序的存在导致会话中的顺序依赖关系可用于推荐。
action type
在现实世界中,一些会话只包含一种类型的动作,例如购买,而其他会话可能包含多种类型的动作,例如点击、购买(参见图 2 (a))。不同类型的动作的依赖性通常是不同的。例如,在一个会话中一起点击的项目可能是相似的或有竞争力的,而在一个会话中一起购买的项目可能是互补的。因此,会话中动作类型的数量决定了会话内依赖是同质的(基于单一类型的动作)还是异质的(基于多类型动作),这对于准确推荐很重要。
user information
会话的用户信息主要是指会话中用户的ID,有时也包括用户属性。在本文中,用户信息的属性是指用户信息在会话中的可用性。实际上,会话的用户信息在某些情况下是给出的,而在其他情况下是不可用的。用户信息在连接同一用户在不同时间发生的会话方面起着重要作用,因此它的可用性决定了为特定用户跨多个会话建模长期个性化偏好的可能性。在实际应用中,SBRS最初建议处理那些用户信息不可用的匿名会话 。
session-data structure
会话数据结构是指由多个级别组成的与会话相关的层次结构,它本质上存在于某些会话数据中。例如,属性层由交互中实体(例如,用户、项目)的属性组成,交互层由每个会话中的交互组成,会话层由当前用户的多个历史会话组成(参见图.2(b))。交互级别是一个会话所必需的,而其他级别则取决于具体的会话数据。这是因为属性信息或历史会话信息可能并非在所有会话数据中都可用。通常,会话数据集中包含的级别数决定了可用于推荐的信息量。