基于矩阵分解算法的短视频推荐系统研究

(整期优先)网络出版时间:2023-05-16
/ 2

基于矩阵分解算法的短视频推荐系统研究

韩宝帅,1,杨海鹏1 ,陆之恒1,王麟阁1

1.宁波财经学院  浙江宁波 315175

摘要:近年来,短视频应用的快速发展,用户体量以及各种短视频内容的飞速增长,导致用户产品服务者面对着如何从大量信息中高效、准确地获取、推送信息的问题,这也直接影响应用系统的推广力度,因此研究基于推荐算法的短视频推荐系统具有重要的应用意义。本文基于矩阵分解算法的短视频推荐系统研究应用,致力于推荐给用户真正符合用户需求的视频内容。

关键字:推荐算法;矩阵分解算法;短视频;推荐系统

1引言

当前网络信息社会发展背景下,短视频是一种重要的信息传播方式,短视频应用的快速发展,各种短视频内容以P量级增长,对于用户来说,从大量信息中找到自己感兴趣的内容变得越发困难;对于产品服务者,让自己生产的信息在众多信息中脱颖而出更是难上加难。推荐系统作为人工智能领域较为重要的一种应用,正是为了解决这一矛盾而应运而生。在大数据时代,推荐系统可以有效面对信息过载、用户需求不明确等问题,为用户量身定制符合他们需求的信息。推荐系统已经被广泛的应用到我们生活中的许多方面,在电商、咨询、音乐、短视频等热门应用中,推荐系统都是核心组件之一,代表性的有较早使用的亚马逊、Netflix,以及近几年兴起的以抖音、火山为代表的各大短视频app。

本文对推荐系统在短视频推荐系统中的应用进行研究,基于矩阵分解的方法,通过获取用户信息以及点赞、分享等行为,采取推荐算法分析用户的兴趣偏好,为用户量身定制符合他们“个性口味”的短视频,以此加强用户对于平台的依赖并吸引更多的用户。

2算法设计

2.1 算法介绍

本文主要研究的是矩阵分解算法在短视频推荐系统中的应用,矩阵分解(Matrix Factorization)延用协同过滤算法的“物以类聚,人以群分”的基本思想,但其核心思想是将一个矩阵分解成两个或者多个矩阵的乘积,实际推荐计算时不再使用大矩阵,而是用分解得到的两个小矩阵:一个是由用户和代表用户隐含特征的标签组成,另一个由物品和代表物品隐含特征的标签组成。矩阵分解的目的是通过机器学习的手段将用户行为矩阵中缺失的数据(用户没有评分的元素)填补完整,最终达到可以为用户做推荐的目标。

2.2 算法实现

对于下图的用户-音乐矩阵(评分矩阵),记为R。矩阵中内容表示某用户对某音乐的评分,其中空白部分表示未知的,也就是要预测的。

用户/音乐

音乐A

音乐B

音乐C

音乐D

a

5

4

2

3

b

2

8

c

0

9

R

矩阵分解把用户音乐都映射到一个K维空间中,分别记作矩阵P和矩阵Q,这个k维空间实际就是音乐所被标记的隐含标签协同过滤算法非常依赖历史数据,而偏好数据又往往是稀疏的,这就需要对原始数据做降维处理,分解之后的矩阵,就代表了用户和音乐的隐藏特征。

用户/K

小清新

重口味

优雅

伤感

a

2

3

1

0

b

0

1

2

0

c

-1

0

2

1

音乐A

音乐B

音乐C

音乐D

小清新

2

-1

-1

1

重口味

0

1

0

0

优雅

1

3

4

1

伤感

0

1

0

3

P                                           Q

P矩阵是用户-K矩阵,即用户和隐含特征矩阵,这里取了几个常见的隐含特征对用户和音乐打上标签,并根据已有数据对隐含特征进行分析。Q矩阵是K-音乐矩阵,即隐含特征和音乐的矩阵,R矩阵即为P*Q。利用矩阵分解技术,整个过程相当于降维处理。根据P与Q矩阵即可对用户-音乐的评分进行预测。

但矩阵分解有多种技术可以来对评分矩阵进行填充,在求解过程中,我们需先确定一个损失函数来构造目标函数。

我们利用平方差来构建损失函数:

其中表示真实值,表示预测值,通过计算真实值和预测值之间的距离平方之和来最小化预测值的偏差,那么最终可以计算出用户对所有音乐的评分,再根据评分进行判断,评分越高即代表用户越可能感兴趣,可以推荐给用户观看,以此来实现个性化推荐功能。

3系统功能模块设计

(1)登录功能模块

用户在登录界面输入账号和密码进行登录,登录成功后,进入推荐视频页面

(2)注册功能模块

用户在未拥有账号的情况下,在此页面输入个人信息进行账号的注册。

(3) 初始化个人信息界面

用户首次登录时,可以选择输入个人一些基本信息如性别、年龄,设置了几个常用关键词供用户选择如体育、明星等以便于系统为用户初始推荐,当然,用户也可选择跳过此页面直接进入系统。

4视频推荐主页界面

用户进入推荐视频页面,系统会根据用户的个人标签个性化推荐视频,同时根据用户当前观看视频数据进行数据分析,实时推荐视频。

(5) 发布个人视频界面

视频发表页面,用户选择视频,输入视频的标题即可发表,发表完成后可在发布视频模块中查看到自己的作品。

(6) 个人主页界面

进入个人主页模块,显示用户的个人信息,用户可以在此修改个人信息。

(7) 用户发布视频模块

发布视频界面,在此查看自己历史发布的全部视频单个视频的点赞数和评价,也可对视频进行删除

(8) 用户个人关键词模块

进入此界面,会展示系统根据用户观看内容分析出的关键词,用户可以选择删除不符合自己的关键词或添加符合自己兴趣的关键词。

(9)点赞视频模块

用户在视频推荐主页点击爱心即可进行点赞,此页面会展示用户点赞的视频。

10搜索界面

点击搜索框进入搜索界面,展示用户的个性关键词供用户快速搜索,下方展示今日所有用户搜索量最大的几个关键词,也可在搜索框内会进行个性关键词搜索。

4系统实现

通过对矩阵算法在短视频小程序中的应用进行研究,实现了个性化推荐,

通过关键词对用户的兴趣进行分类推荐,也提供给用户选择自己感兴趣的关键词的功能,使得用户即使是首次登录时亦可享受到符合他兴趣的视频,再根据对用户个人固定数据(如性别、年龄、职业)分析以及实时数据(点赞、分享)分析,实时推荐符合他当前兴趣的内容。

本系统采用SpringBoot +uniapp前后端分离的总体架构,开发了一款依托微信小程序的短视频APP,基于矩阵分析算法的后台算法能够根据用户的多项数据为用户打上独有的个性标签进而推荐与标签匹配度高的视频内容,为用户快速获取个性内容,加强用户对于平台的粘性并吸引更多的用户,同时也使视频提供方相对获取长尾流量,获得高度认可与收益,建立社区生态。

参考文献

[1]曹玉明,徐晨枫,王麟阁.基于SVD算法的智能餐饮推荐系统的设计实现[J].信息技术与信息化,2020,No.243(06):224-226.

[2]张彭飞. 基于协同过滤的微信点餐推荐系统的设计与实现[D].吉林大学,2022.DOI:10.27162/d.cnki.gjlin.2022.007344.

作者信息:韩宝帅  出生年月:2000.05.22  性别:男  民族:籍贯:安徽淮南  学历:本科 职称:无   研究方向:推荐系统