三、结果分析

通过基于项目的协同过滤算法,针对每个用户进行推荐,推荐相似度排名前 5 的项目,其婚姻知识类推荐结果见表 4-2-24,其咨询类的推荐结果见表 4-2-25。 表 4-2-24 知识类推荐结果 表 4-2-25 咨询类推荐结果
从上述推荐结果表格可知,根据用户访问的相关网址,对用户进行推荐。但是其推荐结果存在 null 的情况,产生这种情况是由于在目前的数据集中,出现访问此网址的只有单独一个用户,因此在协同过滤算法中计算它与其他物品的相似度为 0,所以出现无法推荐的情况。一般出现这种情况,在实际中可以考虑其他的非个性化的推荐方法进行推荐,例如基于关键字、基于相似行为的用户等。 由于本例采用的是最基本的协同过滤算法进行建模,因此得出的模型结果也是一个初步的效果,实际应用过程中要结合业务进行分析,对模型进一步改造。一般情况下,最热门物品往往具有较高的“相似性”。例如,热门的网址,访问各类网页的大部分人都会进行访问,在计算物品相似度的过程中,就可以知道各类网页都和某些热门的网址有关。因此,处理热门网址的方法有:① 在计算相似度的过程中,可以加强对热门网址的惩罚,降低其权重,比如对相似度平均化或者对数化等方法。② 将推荐结果中的热门网址过滤掉,推荐其他的网址,将热门网址以热门排行榜的形式进行推荐。 在协同过滤推荐过程中,两个物品相似是因为它们共同出现在很多用户的兴趣列表中,也可以说是每个用户的兴趣列表都对物品的相似度产生贡献。但是,并不是每个用户的贡献度都相同。通常不活跃的用户要么是新用户,要么是只来过网站一两次的老用户。在实际分析中,一般认为新用户倾向于浏览热门物品,首先他们对网站还不熟悉,只能点击首页的热门物品,而老用户会逐渐开始浏览冷门的物品。因此可以说,活跃用户对物品相似度的贡献应该小于不活跃的用户。所以,在改进相似度的过程中,取用户活跃度对数的倒数作为分析目标。 然而,在实际应用中,为了尽量提高推荐的准确率,还会将基于物品的相似度矩阵按最大值归一化,其好处不仅仅在于增加推荐的准确度,还可以提高推荐的覆盖率和多样性。由于本例的推荐是针对某一类数据进行,因此不存在类间的多样性,所以本任务不进行讨论。 当然,除了个性化推荐列表,还有另一个重要的推荐应用就是相关推荐列表。有过网购经历的用户都知道,当你在电子商务平台上购买一个商品时,它会在商品信息下面展示相关的商品。一种是包含购买了这个商品的用户也经常购买的其他商品,另一种是包含浏览过这个商品的用户经常购买的其他商品。这两种相关推荐列表的区别为:使用了不同用户行为计算物品的相似性。