推荐系统和消费行为(文字版)

点击这里收听本期节目音频版

编辑: 肖怡婷

本期嘉宾: 万梦婷(UCSD 博士学生) (G)

主播: 阿拉法特 (A), 舒晏 (S)

A
2006年,著名的在线视频点播网站 Netflix 宣布了一项推荐系统挑战赛。这项比赛很快吸引了大量的工业界,学术界,甚至媒体的关注。部分原因是因为 Netfix 开出了巨额的奖金,这场比赛持续了长达三年,才最终选出获胜者。之后 Netfix 虽然想过再办一次这个比赛,但是因为很多原因,其中部分原因是因为我们上期谈到过的比赛过程中出现的隐私泄露问题,第二次比赛没有能够成功地举办。尽管如此,Netfix 这次挑战赛可以说给推荐系统的研究起到了非常大的一个推进作用。今天这期节目我们将和嘉宾一起讨论推荐系统。

 00:57 
A
大家好,欢迎收听德塔赛。我是阿拉法特。在节目开始前首先需要说一个变化,在今天这期节目和之后的大概两期节目中,舒晏都不能够参与我们节目的录制,因为她最近在国内。那么我们今天的嘉宾是万梦婷。
G
大家好,我是万梦婷。
A
万梦婷现在是 UCSD 的博士学生,之前她是在北京大学完成了统计系的本科。万梦婷的研究主要关注对人类的看法和行为进行建模,从而能够更好地理解人类活动和交互。她的研究可以说是获得了非常多的认可,其中最值得一提的是她是今年的微软研究院 MSRA Fellow,今年微软研究院只给不到十个北美的博士学生颁发了这个奖学金,所以可以说是一个非常难得的荣誉。

 01:59 
A
那我们继续从这个 Netfix 的挑战赛开始说起。万梦婷你能给我们介绍一下在这次比赛之前,大家一般是用什么样的方法去实现推荐系统的吗?
G
好的。我所知道的推荐系统历史,大概在90年代的时候,是明尼苏达 GroupLens 的实验室,他们发表了一系列的文章,推广了协同过滤这个概念。这其中就包括了基于用户的协同过滤和基于产品的协同过滤。基于用户的协同过滤,在那个时候是说在给用户推荐新产品的时候,我去寻找和这个用户喜好比较相像的那些用户,然后对他们对待推荐产品的评分做一个加权平均,用来作为这个用户对新产品的一个评分的预测,然后再根据这个评分进行排序,这是基于用户的协同过滤。
A
这个权重是和用户之间的相似度成正比吗?
G
对,可以这么理解。
A
当时比较流行的衡量两个用户之间相似程度的方法一般是怎么样实现的?
G
最简单的方法就是去看这两个用户他们的评分记录,如果说他们都喜欢相同的产品,那么我们可以说从喜好来讲,这两个用户的喜好可能会比较相像,那么我们就假设这两个用户他们对于新产品的评分也可能更加的接近。
A
这是以基于用户的一种协同过滤方法了。
G
是这样的。还有一种比较流行的基于产品的协同过滤。也就是说在预测评分之前我们先计算一个产品之间的相似度,这个相似度跟我们之前所说的基于用户的方法也很像,就是看哪些用户给这个产品打过高分,然后如果说喜欢这两个产品的用户他们也比较的相似,那么我们就说着两个产品之间的相似度也比较高。我们得到了这个产品之间的相似度之后,再根据用户的历史记录去推测这个用户还会喜欢什么样的产品。这两种方法都是叫 memory-based,就是基于记忆的这种协同过滤,他们的核心思想都是寻找用户或者说产品的邻居,然后去根据这些邻居的表现来推测这个用户对于这个产品的表现。

 04:41 
A
对这两类协同过滤方法主要的批评是什么样的?
G
这两种协同过滤的方法,因为他们计算比较快,其实到现在很多工业界也是依然在采用这样的方式。但是这两种方法在很多时候并不能够很好的去学习用户和产品之间的匹配程度,同时他们在很多情况下也不是一种个性化的推荐。
A
为什么它不是个性化的推荐?即便我们现在推荐一个产品是根据用户自己的浏览记录来推荐的,但它还是不够个性化,为什么会出现这种情况?
G
其实现在你看到这种 item-to-item 的推荐,比如说你去 Amazon 的时候你看到了一个产品,然后底下有同时购买,同时浏览,这种就是你看到了什么产品我就给你推荐什么产品。这个是所有人如果看见了同样一个产品,我给你推荐的其实是差不多的,是一样的。
A
所以这可以说是一个基于产品的协同过滤。
G
对。其实基于用户的协同过滤现在已经用的比较少了。我觉得大部分都是这种 item-to-item 的推荐,很多情况下是比较多的。Netflix 也是这样的,它在给你做推荐的时候会说因为你看过了什么电影,我去给你推荐这些电影,那这一部分也是没有个性化的成分。应该是没有的,我记得他们的文章里是这么说的。

 06:16 
A
首先我们需要给不知道 Netflix 这次比赛的听众解释一下这次比赛具体是干嘛的。Netflix 当时给的数据,最主要的就是用户,电影和用户给这个电影的分数。你需要给一些没有见过的用户,电影这样的样例给一个预测,就是说用户会给这个电影多少分。那么一个最简单的模型,就是我们直接预测用户会给电影的分数,就是这个电影获得的一个平均分数,那这个模型非常的简单。Netflix 在自己原本使用的系统,这个系统 Netflix 形容它是一个非常简单的线性模型,这个线性模型它能够实现的准确率已经是比我们刚刚提到的一个非常简单的直接预测这个电影的平均分数这样一个系统要高 10% 了,那么 Netflix 举办这次比赛是说它希望参赛选手提出来的系统能够比他们现有的系统,这个线性模型,还要再高10%,这是这次比赛的参赛者需要达到的一个目标。万梦婷你能介绍一下这次比赛之后流行起来的一个推荐系统的实现算法吗?
G
好的。像小阿说的 Netflix 举办了这个比赛之后,一个非常重要的影响就是它推广了矩阵分解这项技术在推荐系统上的应用。矩阵分解,它是一种基于模型的协同过滤,它的核心思想是说我们在训练集上想训练出一组隐变量去捕捉产品的性质。就比如说一个电影,它是不是有关爱情的,是不是一个喜剧片,是不是阵容非常强大。然后我们再用另外一组隐变量去捕捉用户在这些维度上面的偏好,就比如说这个用户是不是喜欢爱情电影,是不是喜欢喜剧片,是不是喜欢看很多明星。然后我们用这两组变量的内积去预测用户对这个电影的评分。这项技术在推荐系统上面得到了非常非常多的应用,但是它有两个很重要的问题:一个是说我们这里需要训练的就是各种各样的隐变量,那我们希望隐变量去捕捉到我们想要的这些信息,但实际上这些隐变量都是不太容易解释的,所以说这就出现了一个可解释性的问题。很多时候可解释性对推荐系统来讲也是非常重要的,我们有一些可能心理学上或者是人机交互方向的一些文章,也就是说如果、我对我推荐的结果能够提供一种可信的解释,它是可以提高推荐系统的透明度,从而更加地赢得用户对你系统的信任,那么这是这项技术的一个很重要的问题,就是说它不是很容易解释;第二个问题是说因为这项技术是完全基于用户的 ID 和产品的 ID,它并没有用到其他的信息,那么这种技术在冷启动问题上面的表现就不是很好。因为当用户或者产品记录非常少的时候,我们的模型是很难学到一些比较有意义的隐变量。这两个问题其实也是推荐系统中比较普遍的两类问题,那么有很多的文章都是专门研究这两类问题的。
A
矩阵分解这样一种方法,它要分解的矩阵就是,比如说以 Netflix 这个例子来说,它是把用户,电影,评分作为一个矩阵,比如说每个行都是某一个用户,每列是某一个电影,让它分解这个矩阵。最后我们是要给每个用户相当于用一个向量表示他们,每一个电影用一个不同的向量表示它,然后这两个向量的内积就是用户看到这个电影时可能会给的评分,简单来概括是这样的。我之前没有想过去比较矩阵分解和协同过滤,但是我现在聊到这个话题,我感觉矩阵分解从某种意义上来说,感觉是提出了一个比协同过滤要更加好的一个特征向量表示,我们可以这么说吗?
G
对。我们之前所说的这种基于邻居的协同过滤,更多的是提出一种算法,然后我去对产品进行排序,做推荐。那么矩阵分解它是我们所谓的基于模型的协同过滤。也是说我通过训练得到了产品和用户的两组特征表示。

 11:03 
A
说到这儿就会想到深度学习。最近几年的这些推荐系统的论文有提到使用神经网络去实现的这样一些思路吗?
G
是的。这两年随着深度学习技术的发展,这项技术也逐渐地被应用在了推荐系统上。我理解的是这项技术主要有两个方向的应用,一个是说刚才我们提到了冷启动的问题,就是说如果我们只依靠产品的 ID 或者是用户的 ID,不用其他信息,那么在记录很少的时候就很难学到比较有意义的特征。一个比较自然的思想就是我能不能使用比如说这个电影其他的一些特征或者说用户的自己的一些特征。那么深度学习一个非常重要的应用,就是它可以用来更好地去提取一些有意义的特征,比如说产品的图片,商品的描述,还有用户的评论,我们都可以使用深度学习的一些技术去从这些辅助信息中提出比较好的特征,那么这也自然的能够解决一部分我们刚才所说的冷启动的问题,同时其实也解决了一部分我们所谓的可解释性的问题,因为当你使用了商品的图片或者是产品描述的时候,我们其实可以看到我们所学的这些用户的表示或者是产品的表示对应在图片或者是评论这种特征上面它相应的维度,我们可以通过图片的这些信息和文字的信息去解释我们所学到的这些维度都代表了什么,这是一个深度学习比较重要的应用方向。
另外一个应用方向是说把深度学习把神经网络的这种结构直接和协同过滤的思想结合起来。比如说今年的 WWW 有一篇论文,它现在的引用率其实已经很高了,我们刚才说到矩阵分解它其实是用用户的隐变量和产品的隐变量做一个内积,那么今年 WWW 这篇文章说内积这个东西可能并不足够用,那么它相当于做两件事情:第一件事情是像矩阵分解一样,它提取了一组产品的隐变量,一组用户的隐变量,然后做一个内积;另外一部分是说它训练了一个 MLP,然后通过 MLP 来提取用户和产品的特征,然后它把这个矩阵分解这一部分和 MLP 这部分拼接起来,最后得到一个最终的用户对于产品的偏好得分。
A
MLP 是指这个 Multi-Layer Perceptron,一个神经网络。
G
对的。
A
感觉它就是把矩阵分解和协同过滤这两种方法能够获得的特征表示并接在一起了。
G
是这样的。
A
那当它拿到了这样一种特征表示之后,它还是用协同过滤这样的方式去求近似度来做推荐吗?
G
并不是。它把矩阵分解得到的特征和 MLP 得到特征两组拼接起来,然后再通过最后一层的 Layer 得到一个得分,相当于给定一个用户,给定一个产品,然后你可以得到一个偏好得分。然后直接根据这个得分对产品进行排序。
A
它整个预测也是在神经网络中完成的。
G
对。所以其实这个方法也是一个基于模型的方法。就是我需要训练出一个模型,然后通过这个模型进行预测。
A
用深度学习,我们可以更好地利用一些额外的属性的信息去在一定程度上缓解冷启动给我们带来的困难。
G
是这样的。

 15:11 
A
你提到另外一个推荐系统的难点是说模型的可解释性。
G
对。
A
你有提到它在心理学上的一些好处。你能更详细的给我们解释一下为什么我们希望推荐系统是可解释的吗?
G
一般大家认为如果对你所做的推荐能够提供一种解释的话,是可以提高这个系统的透明度,从而赢得用户对这个系统的信任。所以我们也会看到这种解释可以是很多种方式,最简单的一种,就是比如说我们在 Amazon 上购物的时候,它在做推荐的时候会告诉你买了这个产品的用户同时也买了什么,然后看过这个产品的用户同时也看过哪些产品,那这其实就是一种很简单的解释方式。像 Netflix 也是,我们在 Netflix 上看电影的时候,它除了有一些个性化的推荐告诉你这是我专门为你挑选的以外,它也会说因为你看过了什么电影,我给你推荐这一部分电影。还有一些主题,比如说如果我比较喜欢看这种侦探类的剧集或者电影,那如果 Netflix 的算法能够猜到我喜欢这一类电影,它在推荐的时候就会有一栏,可能都是这种侦探类的剧集,然后给你推荐一部分侦探类的剧集。
A
用户会因为推荐系统能够给他解释它为什么推荐某一个产品给他而对推荐系统的表现更满意。
G
对,因为当你提供了一种解释的时候,如果用户觉得这种解释是可信的,那么他对你这种系统的信任度就会提高,对系统做出的反馈也会更加的正面。

 17:10 
A
说到心理学研究对推荐系统造成的影响,我想在提到这个今年 RecSys 有一篇文章,它提到用户在打分的时候可能会受到一些偏见的影响。据我所知是第一次有人提出这样的观点,是这样吗?
G
也不能够说是第一次,但是这也确实是推荐系统研究上的一个趋势,就是更多的去研究推荐系统中存在的偏见问题。因为其实在工业界,大家都会说我们再通过离线的数据训练出一个模型,在上线测试的时候发现并没有离线时候那么大的提升,有一个很重要的问题,就是我们在训练离线的时候可能是有偏见的。比如说 RecSys 的这篇最佳论文,它所说的就是我在训练用户,我在预测用户评分的时候,我并没有考虑到用户打分的时候已有的分数对用户其实是有影响的。其实当用户对一个产品的期望分数和已有分数相差比较远的时候,那么用户可能就会改变自己的行为,比如说已有的分数是一个四分,但用户觉得这可能就是一个两三分的电影,那么这时候用户很可能会去倾向打一个两分。但是当以为的分数是四分用户觉得这是一个三四分的电影的时候,那么用户可能就会打一个四分。那么这样的这种偏见,如果我们只是去训练一个矩阵分解,不去考虑这种现象的话,那我们最后得到得分很可能是有偏差的。所以这篇 RecSys 的文章也是提出来,他们发现了这样一种问题,那么他们提出了一种模型去克服这样的问题,从而可以对一个产品估计出把这些偏见去除之后的真实得分。
A
这个偏见是存在在我们的训练数据本身中的?
G
是这样的,很可能有一些我们之前没有观测到的因素对于用户的行为产生了一定的偏差。
G
那在这篇论文中,他们的工作是假设这个数据本身中有偏差。他们给出的预测是一个去除这种偏见的预测,我们是希望预测的分数,去除偏见的预测会更接近用户本身心里想给这个产品打的分数?
G
对,我们希望这个去除了偏见的预测能够更接近用户心中对这个产品的偏好程度。

 20:12 
A
到目前为止,我们是大概了解了一下推荐系统整体上是怎么实现的。那么你可以给我们具体介绍一下你的工作主要是围绕哪方面吗?
G
好的。我之前在微软实习时所做的工作其实是和推荐系统最为相关的,那么在微软的时候我们特别的关注一种购物行为,就是 grocery shopping,就是大家去超市购买瓜果蔬菜,生活用品这样的行为。我们想对这种行为进行建模,进行预测。
A
说到购买生活用品的推荐,一个非常有趣的例子应该就是,超市会把啤酒放在婴儿的尿布货架的边上这样一个故事。
G
对,这是很多年前数据挖掘开始兴起的时候一个非常经典的案例。
A
它当时是用了一个叫做 frequent item set 的方法,他就是看哪些商品它们会非常频繁的被同时购买,那结果他们是发现了尿布会和啤酒被同时购买。他们得到的启发是说有很多家中的男性,他来给婴幼儿买这个尿布的时候,如果他在买尿布的时候看到边上有个啤酒货架,他就会顺便再拿一件啤酒,是基于这样一个观察。那你们的研究是基于什么样的模型呢?
G
我们的研究中也会特别关注一个特征,就是价格在推荐系统或者说预测用户偏好模型中的重要性。驱动我们去研究它的一个目的是说我们发现很多用户对于价格的敏感程度是不一样的,所以我们其实在不同的价格之下,对于用户的这种推荐的这个列表,它的次序可能也是不一样的。那么更进一步,我们希望对价格以及用户的偏好模型进行建模以后,可以帮助零售商,帮助生产商更为有效地制定一些个性化的促销策略,也就是说比如说不同的用户可以得到不同产品的优惠券。那么我们在建模的时候是说用户特别的这种去超市里购买商品这种行为,我们是分为了三个部分来建模。第一个部分是我们所谓的 category purchase,就是对于商品类别的选择。比如说今天我去超市,我想买一瓶牛奶,那么牛奶就是一个商品类别。我们首先对这个商品类别进行预测,就是想知道用户都想买哪些东西。第二个步骤是我们知道了用户想买哪些东西以后,我们在这个商品类别里面进行一个商品的选择,我们叫 product selection。经过这个步骤,就是我们预测这个用户想具体的买哪一个商品之后,我们进入第三个步骤,就是对用户想买多少进行一个预测,我们这一部分叫 quantity prediction。那么我们把用户的行为分为了这三个步骤之后,对每一个步骤我们都去把商品的价格作为一种特征放进去,然后用一个和我们刚才所说的矩阵分解非常相似的模型去对用户的行为进行建模。我们希望看到加入了价格这个特征之后,对预测用户行为会产生什么样的影响,同时也根据这种价格特征的系数的大小来判断不同用户对不同商品的价格是否敏感。
A
用户行为被分为三类之后,我们是可以看到价格的改变对这三类用户行为产生的影响会有什么区别吗?
G
其实是有很大区别的。因为我们刚才说这种商品类别的选择,商品在类别中的选择和商品数量的多少,其实对我们发现价格对于在类别中商品的选择这个步骤的影响是最大的,对于用户商品类别选择这个步骤的影响是最小的。
A
你可以举一个具体的例子吗?
G
我们还是以啤酒为例。如果我去超市我并没有打算买啤酒这个产品,那么这个时候你对啤酒这个类别产品的商品进行促销,那么对我来讲影响是非常小的,但如果一旦知道我去超市是打算买啤酒这个产品,那么在这个啤酒产品类别中,我一旦对某一个产品进行降价,那么我很可能就会去选择最便宜的产品,价格对于这种行为的影响是非常大的。
A
对于买多少呢?会造成如果这个产品降价了会买更多的这种现象出现吗?
G
总体来讲还是会有影响,但并不如第二个类别这种商品选择的影响那么。而且对于买多少这个影响是非常依赖于类别的。比如说能够放很久的产品,像冷冻的披萨,那么如果你降价比较多,用户可能会从一开始打算买一个变成买两个。但是对于一些生鲜瓜果蔬菜如果你降价很多,用户其实也并没有那么强的反馈,因为这种东西你并不能储藏很久。
A
这让我想起一个对网络暴力的研究。结论是说网络暴力对女性造成的影响是超过男性的,然后他们是有一些数据去支持。他们放出这个结果之后,就有一些评论说:“啊,科学家又证明了火是热的,水是湿的” 大概就是说他们证明了我们早就知道的一些结论,用户会买很多可以放很久的东西,但是不会买很多不能放很久的东西。当时研究者提到这些评论之后还说,对这个的回应就是,很多人对现有的研究在用数据来对一些尝试性行为给出证明的做法并没有特别地 appreciate,没有特别地意识到这其实是一个很重要的事情,就很多事情它已经不再是一个直觉,而是我们有数据可以支持这种直觉是对的或者或者错的。那么在你做的这个研究中,你们有看到这个用户本身行为的区别吗?还是降价这个行为对几乎每个用户都是差不多的?
G
其实不同的用户对于产品的反应是不太一样的。有的用户他可能对有些特定的商品类别会更加敏感,因为用户所属的类别也是不一样的。举个例子,比如说如果你是一个大学生,你可能平时做饭并不是非常的多,那你去超市买的更多的可能是饮料,饮用水或者啤酒这样的产品,你可能会对这种类别的产品它的价格更加的敏感。但如果说你有了家庭,那你去超市的目的可能是置办很多的生鲜瓜果蔬菜,你同时也更会有需求去储藏更多的产品来供给家庭的需要。所以这种时候你可能对生鲜瓜果蔬菜或者是食物这一类的产品的价格更加的敏感。同时对于一个家庭来讲,它对于数量的敏感度可能会更强,因为人比较多,所以当你一旦降价的时候,它还是会有需求能够买更多的东西。
A
即便是从超市这个例子中,从一开始的只是看哪些产品被同时购买,到现在你提到的这种非常复杂的拥有非常多变量的模型,我们可以看到推荐系统在一步一步变得越来越复杂,越来越具有针对性。
G
是这样的,它的预测能力也会越来越强大。

 28:48 
A
你在 UCSD 的导师是 Julian McAuley,她的一个非常有影响力的贡献是她整理了一个非常庞大的对 Amazon 产品评论的数据集。你们现在的工作还是和 Amazon 的数据有关系吗?
G
我们的很多工作其实都可以运用在 Amazon 这个数据集上。我此前有一个工作是针对 Amazon 的问答系统。其实在 Amazon 这样的评论网站上,我们发现和很多地方,像知乎或者 Quara 不太一样。因为用户可以问一个关于某个产品的问题,但这些问题其实是非常主观的。比如说我想给我的一个年纪比较小,比如说十岁的弟弟买一个自行车。那么我这个问题可能就是说我想知道这辆自行车是不是适用于这样一个小男孩。这样的问题其实是没有一个非常客观的答案的,它非常的主观,而用户又需要等待其他用户来解决这些问题,所以我们的想法是说我能不能够当用户提出这个问题以后,直接从用户的评论里面去寻找这个问题的答案。也就是说我们对这个产品已有的这些评论对它进行排一个序,我们希望把相关的那些评论排到比较前面的地方,这样用户可以更好地去阅读这些评论,然后也许能够提供一个让用户比较满意的答案。
A
举一个例子,比如说我要买一个电脑包,然后我自己是用一台 13 寸的苹果笔记本,我可能会非常想知道这个电脑包能不能装下我的13寸笔记本,这时候我可能会想,我去搜一下这个用户评论中有没有用户提到过 13 寸的苹果电脑这个关键字。你们现在是把整个过程的智能化,对更复杂的问题看一看,有没有可能评论中已经有人提到了和这个问题有关系的一些评论,我们可以把它直接拿上来。这个数据听起来非常的难以标注,你们是怎么收集这个数据的呢?
G
我们分为了几个步骤,因为我们发现其实在 Amazon 的这些问题中,很大一部分也是一种二元性的问题,是或者不是的这种问题。那我们第一步就是先把这些问题单独提出来,因为这些问题我们是拥有答案的,所以这些答案也比较容易预测,因为你想回答这一类的问题的答案中也大部分都是一些是或者不是问题,那么这是一个比较简单的步骤,那么就先分隔出来这一部分二元性的问题,然后从答案中提取是或者不是这样一个答案,从而得到一个 ground truth。我们现在已经有了这一部分问题的标签。另外一部分问题是说有一些不是这种二元性的问题,是一些非常开放的问题,那么我们依然是有真实答案的,只是说这些答案非常的复杂。那我们的做法去衡量这个系统的好坏,是说因为我们是想对这个产品所有的评论进行排序嘛,那我们就把这些真实的答案混到这个产品的评论中,我们来看我们的系统能不能把真实的答案排到最前面去,这也是对系统对这种开放性问题性能好坏的一种衡量方式。
A
需要有一个额外的步骤,区分我们所看到的这个问题是这两类问题的哪一种吗?
G
是,我们需要这样一个步骤,但非常幸运的是现在的研究已经有一些比较成熟的工具可以帮助我们去做这个步骤。
A
去判断一个问题是一个可以用是或者不是回答。
G
对,因为从语法上来讲,中文可能不是那么的容易,但是在英文中,从语法上来讲,比如说 Is 开头或者是 Are 开头,然后有问号,这种情况其实是比较容易判断的。
A
那我们最后给梦婷的一个问题是:怎么看待推荐系统和一个传统的机器学习算法之间的一个联系呢?
G
很显然随着机器学习算法的进步,那么现在主流的推荐系统里得算法也大多数都是机器学习的算法。但是推荐系统本身可能是一个更加广阔或者说是不同学科交叉的一个领域。除了我们所说的机器学习算法以外,我们刚才也提过有一些心理学的研究,有一些人机交互设计方面的研究。很多时候比如说在推荐系统设计上的一个很简单的 UI 的改变,那么在真正上线测试的时候,用户对于推荐系统的反馈都会有很显着的很不一样的反馈。
A
我的感受是推荐系统相比较其他机器学习这个领域的问题,它有一个非常特殊的地方,在于它的数据往往是用户本身的行为,但是用户怎么样和一个行为交互,这是很大程度上受这个系统的设计者的影响。毕竟像在一个网页上用户能够点击链接,那就是这个网页的设计者给他提供的链接,但我们并不能说这用户最后点击的东西一定是他最喜欢的,因为设计者很有可能没有提供他最喜欢的这个物品放在网页上,我没法获得这个信息。
G
对,所以我也相信像心理学,像 HCI 人机交互等等这些社会科学方面的研究,对于将来机器学习算法在推荐系统这个领域里的研究也会产生一定的影响。
A
那么今天这个话题就聊到这里。我也非常感谢梦婷今天抽出时间来和我们一块录这期节目。
G
谢谢小阿,我也非常荣幸能够被邀请来录这期节目。谢谢大家。
A
如果你喜欢这期节目,也希望你能够推荐给你身边的小伙伴。我们今天的节目就到这里了,我们下期节目见。再见!
G
拜拜!