本港台开奖现场直播 j2开奖直播报码现场
当前位置: 新闻频道 > IT新闻 >

码报:【组图】我只想走进你心里,常见推荐系统算法浅谈(2)

时间:2017-03-03 00:34来源:报码现场 作者:本港台直播 点击:
开发者们后来想出了一个办法,通过一个叫降维(Dimensionality Reduction)的过程,把事物更一般化的表现出来。这种方法在计算量上比用户关联和物-物关联

  开发者们后来想出了一个办法,通过一个叫降维(Dimensionality Reduction)的过程,把事物更一般化的表现出来。这种方法在计算量上比用户关联和物-物关联算法要密集得多,因此也就没有那么快的得到采用。但随 着计算机变更快更便宜,降维算法也逐步取得了一些进展。

  为了弄清降维算法是怎么工作的,我们来看看你爱吃的东西,以及如何把它跟其他一百万人爱吃的东西做比较。你可以把这些信息用一个巨型矩阵表示出来,每一条竖线代表一样食物, 每个人爱吃什么东西就自然形成了一行。在你的这一行上面或许会显示你给了卤煮 5 颗星、红烧肉 4 星半、烤猪蹄 3 颗星、豆腐脑 1 颗星、小龙虾 5 颗星、炒肝 4 颗星等等。(写到这儿我都饿了...)

码报:【j2开奖】我只想走进你心里,常见推荐系统算法浅谈

  然而,使用这个矩阵的推荐算法并不关心你给哪种食物评了多少颗星。它想要了解的是你一般而言的喜好,这样它可以将这个信息应用到更丰富多样的食物上。比如基于你上面给出的信息,算法可能会认为你喜欢猪肉、内脏类食物和地方菜品,不喜欢任何油炸食物和蔬菜,依此类推。你爱吃的食物所拥有的特点(或者说维度),它的数量和符合你要求的食物的数量比起来要小得多——至多可能 50 或 100。通过查对这些维度,推荐算法可以迅速决定你是否会喜欢一种新的食物(比方说羊杂汤),方法就是把这种食物的各项维度(地方菜品、内脏、不是鸡肉、不是炒的、不是蔬菜、不是烤的)同你的资料进行比对。这种更为一般性的呈现使得推荐算法能准确的发现有着相似但不同喜好的用户。而且它大幅压缩了矩阵的规模,使算法变得更加高效。

  这是一个很酷的解决方案。不过,你爱吃的食物的维度该上哪儿去找呢?肯定不是去问厨师。推荐系统会使用一种称为奇异值分解的数学方法来计算维度。这种方法涉及到把最初的一个巨型矩阵分解为两个 “口味矩阵”——其中一个包含了所有的用户和 100 项口味维度,另一个则包含了所有的食物和 100 项口味维度——再加上第三个矩阵,当乘以前面两个矩阵中的任意一个时,会得到最初的那个矩阵。

  计算用的维度既不是描述性的,也一点儿都不直观;它们是纯抽象的值,只要这些值最终生成准确的推荐结果就行了。这种方法的主要缺点是,创建矩阵所需要的时间会随着客户和产品数量的增多而飞速增长——创建一个拥有 2.5 亿名客户和 1000 万种产品的矩阵,需要花上创建一个 25 万名客户和 1 万种产品的矩阵 10 亿倍那么多的时间。而且这一过程还需要经常重复。一旦收到新的评分,矩阵就已经过时;在像亚马逊这样的公司,每一秒钟都会收到新的评论。幸运的是,就算略微过时,矩阵仍然能以一个挺不错的水平运作。开发者们也已经在设计新的算法,为奇异值分解提供可用的近似值并显著缩短计算时间。

  今天就说说以上三种常见的推荐系统的算法吧,彩蛋君都写饿了,下次我们聊聊行业典范亚马逊的推荐系统算法吧!

(责任编辑:本港台直播)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
栏目列表
推荐内容