如何将图数据库应用于电影智能推荐
导读
电影,是一种结合视觉与听觉的现代艺术。如今,电影已不单是人们娱乐消遣的生活方式,也逐渐成为国家文化软实力的重要标志之一。据有关数据统计,2021年中国影视行业市场规模达2349亿元,同比增长23.2%,预计2020年至2025年的五年期复合年均增长率为5.0%,具备强大市场需求度。而国内影视行业政策注重内容端的输出,影视从业人员并未针对不同客群精准投放作品。
早在2014年,国外某影视平台就运用机器学习和个性化推荐算法技术,通过深度挖掘用户数据,打造影视个性化推荐系统。举个例子,假如有人邀请你看电影,那你的第一个问题一定是:什么电影?大部分情况下,我们可能会根据朋友推荐、热点票房、用户打分、标签类型来选择电影。那么这个时候出现一个朋友,基本在他推荐的电影里,总能命中喜好助你度过闲暇时光,即个性化推荐系统作用。艾媒咨询数据显示,在2021-2022年中国消费者偏好的不同形式影视作品中,74.5%消费者会选择电视剧,71.8%消费者会选择电影,61.5%消费者会选择综艺,47.4%消费者会选择动漫,29.4%消费者会选择纪录片。那么在未来,如何将大数据、人工智能技术运用到影视产业,促进产业智能化、智慧化升级,成为国内发展的新态势。
图技术需求
让更多人看见,是内容行业不变的准则。 但在现阶段,观影人普遍存在无法第一时间找到心仪影片的痛点,往往将时间浪费在菜单栏寻找或搜索框检索上。因此,影视行业应该将内容直接面向用户,根据观众的观影习惯“投其所好”。基于此背景,通过图数据库技术,将电影参演者信息、制作方信息、观影人信息、电影类型信息等相关的知识概念抽取出来,构建电影知识图谱,为影视从业人员提供全局视角,根据观众观音习惯快速匹配合适内容。
以Galaxybase图数据库构建电影知识图谱的基本原理图如下。
图模型构建
构建电影、观众、参影人之间的互联关系,可根据实际情况进行展开,将电影、观众、参影人、IP、标签设置为点,参影人与电影、观众与电影、电影与IP、电影与标签间的依赖关系设置为边。接下来使用Galaxybase图数据库来创建数据模型,点类型和点属性如下表所示。
点类型 | 属性 |
---|---|
参影人 | 参影人ID、出生年份、姓名等 |
观众 | 观众ID、观众类型等 |
电影 | 电影ID、上映年份、语言、评分、电影名等 |
IP | IP_ID、类型、IP名称等 |
标签 | 标签名 |
边类型、起始点类型、终止点类型如下表所示。
边类型 | 起始点类型 | 终止点类型 |
---|---|---|
作者 | IP | 参影人 |
相关 | IP | IP |
属于 | IP | 标签 |
参演 | 参影人 | 电影 |
主演 | 参影人 | 电影 |
导演 | 参影人 | 电影 |
属于 | 参影人 | 标签 |
相关 | 电影 | IP |
属于 | 电影 | 标签 |
观影 | 观众 | 观影 |
相似 | 标签 | 标签 |
电影知识图谱模型如下图所示。
图谱应用 - 电影推荐
在电影知识图谱中,系统将根据观众观看过的历史电影信息,为其推荐可能感兴趣的内容到首页,提高电影的点击率和观众满意度。举例,在上文所建图模型中,系统将寻找编号为“A001”的观众观看过的历史电影,从其历史电影的IP、标签出发,推测其观影偏好,找到风格类似的电影,自动将这些电影推荐至首页。
查询语句
// 查询观众 ID 为 “A001”的观众历史观影数据
MATCH p1=(:观众{观众ID:"A001"})-[:观影]->(m1:电影)
WITH p1,m1
// 找到上述电影的标签和IP
MATCH p2=(m1)-[:属于|相关]-(m2)
WITH p1,p2,m2
// 找与上述电影有相同标签或IP的其它电影
MATCH p3=(m2)-[:属于|相关]-(m3:电影)
// 返回该观众历史观影数据,相关电影推荐
RETURN p1,p2,p3
查询结果
如下图所示,根据返回结果可以发现观众ID为“A001”的观众观看过ID为“7873”、“M99”、“890”的三部影片,而ID为“456”的影片,与“M99”拥有一个相同IP,两个相同标签;ID为“34535”、“67856”的影片与上述电影均有两个相同标签,由此推测观众可能对这三部影片感兴趣,可以建议系统优先推荐。
图谱应用 - 智能问答
在电影知识图谱中,应当存在简单的问答推理功能,满足用户对电影、演员个性化选择的需求。举例,观众观看了吴京主演的长津湖,想起来甄子丹和吴京都是我们熟知的武打影星,那他们有没有一起参与主演的电影呢,在上文所建图模型中,我们将进行探查。
查询语句
// 查询有两个人参与或主演的电影
MATCH p1=(m1:参影人)-[r1:参演|主演]-(m2:电影)-[r2:参演|主演]-(m3:参影人)
// 参影人的变量同时去匹配吴京和甄子丹两个姓名
WHERE m1.姓名 = "甄子丹" AND m3.姓名 = "吴京"
WITH m2,p1
// 查询这个电影的标签和IP
MATCH p2=(m2)-[:相关|属于]-(m4)
// 返回两条路径
RETURN p1,p2
查询结果
如下图所示,可以看到吴京和甄子丹在标签内同属功夫巨星,他们一同参演或主演的电影是杀破狼,这部影片属于动作片和剧情片,系统将用户搜索的结果返回,并将影片推荐至首页。
结语
以上仅为电影知识图谱的简单展示,通过上述两个例子,可以看到相较于传统的推荐算法,基于图数据库的知识图谱,能够抽取电影信息、参影人信息、观影信息等数据,将用户、电影、演员之间的依赖关系以全局统一视角进行整合,挖掘观众与电影间内在的隐性关联,进行精准电影推荐和用户个性化问答,提高用户观影体验,助力影视产业实现智能化升级。
后续,我们会在创邻科技微信公众号与官网发布更多图数据库热点应用场景和前沿资讯,并将可复现的数据集、建模方法、查询语句进行公开,欢迎对图数据库感兴趣的同学关注。
相关文章:
如何将图数据库应用于电影智能推荐
导读 电影,是一种结合视觉与听觉的现代艺术。如今,电影已不单是人们娱乐消遣的生活方式,也逐渐成为国家文化软实力的重要标志之一。据有关数据统计,2021年中国影视行业市场规模达2349亿元,同比增长23.2%,预…...
CSS实现动画效果的菜单收起展开图标,html实现动画效果的箭头
效果 实现代码 此处JS代码引入了jquery <!DOCTYPE html> <html><head><meta charset"UTF-8"><title></title><style>.menu-icon{position: absolute;left: 20%;top: 30%;transition: all .3s;}.menu-icon:before, .menu…...
大数据平台小结
搭建大数据平台启动流程1、启动Nginx服务(在bdp-web-mysql服务中)cd /usr/local/nginx/# 启动Nginx ./sbin/nginx# 查看端口是否存在 netstat -tunlp|grep 200012、启动zookeeper(在bdp-executor-realtime123)cd /app/bdp/apache-…...
力扣-139单词拆分
力扣-139单词拆分 1、题目 给你一个字符串 s 和一个字符串列表 wordDict 作为字典。请你判断是否可以利用字典中出现的单词拼接出 s 。 注意:不要求字典中出现的单词全部都使用,并且字典中的单词可以重复使用。 示例 1: 输入: s "…...
图机器学习-图神经网络
图神经网络 前面讲了图机器学习的一些传统方法,现在正式进入到课程的核心部分:图神经网络。 Design of GNN 那么图神经网络和我们之前接触的一些深度神经网络有什么不同呢? 对于别的类型的神经网络,往往我们都是处理一些类似网…...
配置Airbyte资源限制
资源限制有三种不同的级别配置:Instance-wide - 应用到Airbyte实例创建的Sync Job的所有容器上。Connector-specific - 应用到Airbyte实例创建的Sync Job的所有指定类型连接器的容器上Connection-specific - 应用到Airbyte实例创建的Sync Job的所有指定管道的容器上…...
python实现PCA降维画分类散点图并标出95%的置信区间
此代码以数据集鸢尾花为例,对其使用PCA降维后,绘制了三个类别的样本点和对应的置信圆(即椭圆)。先放效果图。 下面是完整代码: from matplotlib.patches import Ellipsedef plot_point_cov(points, nstd3, axNone, **…...
Mysql高级之索引结构详解
Mysql的索引详解1.索引定义2.索引结构2.1数据结构分析2.1.1熟知的数据结构2.1.2分析为什么这么多的数据结构不全适用于索引结构2.2Hash结构2.3B tree结构3.索引分类3.1聚集索引(聚簇索引)3.2非聚集索引(稀疏索引)3.3联合索引3.4主…...
【线程-J.U.C】
Lock J.U.C最核心组件,Lock接口出现之前,多线程的并发安全只能由synchronized处理,但java5之后,Lock的出现可以解决synchronized的短板,更加灵活。 Lock本质上是一个接口,定义了释放锁(unlock&…...
docker布署spring boot jar包项目
目录docker 安装创建目录制作镜像启动容器查看日志docker 安装 Docker安装、详解与部署 创建目录 服务器中创建一个目录,存放项目jar包和Dockerfile 文件 mkdir /目录位置创建目录后创建Dockerfile文件,上传jar包到同一目录下 创建dockerfile vim Doc…...
极简Vue3教程--Pinia状态管理
Pinia(发音为/piːnjʌ/,如英语中的“peenya”)是最接近pia(西班牙语中的菠萝)的词;Pinia开始于大概2019年,最初是作为一个实验为Vue重新设计状态管理,让它用起来像组合式API&#x…...
常用的map转bean互转方法
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 常用的map转bean互转方法一、hutool工具类二、fastjson工具类三、beanutils_BeanUtils工具类 不太好用四、cglib BeanMap工具类 不太好用五、reflect 反射来玩 不太好玩六、I…...
2.4G收发一体芯片NRF24L01P跟国产软硬件兼容 SI24R1对比
超低功耗高性能 2.4GHz GFSK 无线收发器芯片Si24R1,软硬件兼容NRF24L01P. Si24R1 是一颗工作在 2.4GHz ISM 频段,专为低功耗无线场合设计,集成嵌入式ARQ 基带协议引擎的无线收发器芯片。工作频率范围为 2400MHz-2525MHz,共有 126个…...
设计模式之七大原则(一)——单一职责原则、开放-关闭原则
目录一、设计模式的目的二、设计模式的七大原则1.单一职责原则2.开放-关闭原则一、设计模式的目的 设计模式的目的是为了提高代码重用性、可读性、可扩展性、可靠性,使得程序呈现出高内聚、低耦合的特性。 代码重用性(相同功能的代码,不用多…...
C++ set、unordered_set、multiset它们之间的区别与一些使用方法(不断更新)
set、unordered_set、multiset是什么?以及它们之间的区别 首先,它们三个都是C标准库提供的关联容器中的一种。只不过set、multiset容器是有序的,而unordered_set容器是无序的 std::set 是 C 标准库中的一个容器,其存储的元素按设…...
hadoop调优
hadoop调优 1 HDFS核心参数 1.1 NameNode内存生产配置 1.1.1 NameNode内存计算 每个文件块大概占用150byte,如果一台服务器128G,能存储的文件块如下 128 (G)* 1024(MB) * 1024(KB) * 1024(Byte) / 150 Byte 9.1 亿 1.1.2 Hadoop2.x 在Hadoop2.x中…...
EM@三角函数诱导公式
文章目录诱导公式单位圆坐标和三角函数记忆口诀符号看象限奇变偶不变例常用诱导公式🎈常用部分(5对)倒数关系六种三角函数间的转换关系小结ReflectionsShifts and periodicity诱导公式 诱导公式 - 维基百科,自由的百科全书 (wikipedia.org) 单位圆坐标…...
是不是只能学IT互联网技术才有发展前途?
当然不是,三百六十行,行行出状元。 但我们需要认清一个现实是,我们正处于一个信息爆炸的时代,掌握紧跟潮流的技术,才可以让我们更自信地面对每天的生活,才有多余的精力、财力来享受生活。“人生在世&#…...
Linux 进程:exit和_exit的辨析
目录1.接口与函数2.缓冲区3.exit 与 _exit(1)_exit(2)exit这里来认识exit函数和 _exit接口 ,它们的作用是类似的,都是在调用后退出程序,可以在程序的任何地方调用。 1.接口与函数 exit函数和_exit接口,一个函数,一个…...
智能电子标签——商超版价签
2.1英寸TFT黑白电子价签 ★ 快速变价,高效运营 ★ 市场实用,布局物联网未来 ★ 更好客户体验 ★ 降低系统成本,具备竞争力 ★ 2.1英寸黑白红电子价签 ★ 电池低能耗,常规使用三年 ★ 穿透力强不慣障碍 ★ 2.4G载波&#x…...
计算机网络自检
1 计网体系结构 因特网结构: 计网三个组成成分: 工作方式-其中2个部分: 功能-两个子网: 5个XAN分别是: 传输技术,两者的主要区别: 4种基本网络拓扑结构: 3种交换技术: 协…...
DC真实数据都有哪些?Filecoin为DC数据存储的解决方案又是什么?
对于生活在数字时代的我们而言,数据或许就和平日呼吸的空气一样,已经不需要我们再去思考其概念。我们的日常生活中无时无刻都有数据的身影,日常的购物消费、出行、学习、记录,当我们每天生活有数字化加持的小区里,工作…...
解决vscode无法自动更新
一.前言 要在vscode里面安装插件,被提示版本不匹配,然后得更新,然后我发现我的'帮助'菜单栏下没有检查更新,然后我去&…...
315线上知识竞赛答题活动方案及模板分享
315线上知识竞赛答题活动方案及模板分享在315国际消费者权益日来临之际, 很多单位推出有奖知识竞答, 希望大家在了解专业知识的同时, 还可以拿到自己喜欢的奖品!这是消费者委员会和监管局联合举办的“315消费知识在线有奖竞答”活…...
论文复现-2:代码部分
以CONLL03数据集为例 文章目录1 整体框架2 数据结构2.1 原始数据集2.2 处理之后的数据集3 代码部分3.0 模型参数3.1 数据预处理3.2 模型方法3.1.1 定义表示的学习权重项的学习双塔模型3.2.2 forward3.3 损失函数3.4 训练与推理Ablation study训练实例1 整体框架 任务是实体识别…...
Linux开放的端口太多了?教你一招找出所有开放的端口,然后直接干掉!
基于服务器安全性维护的目的,查看所有开放的端口是通常采取的第一步,从中检查出可疑或者不必要的端口并将其关掉。关于查看开放的端口,方法不止一种,比如lsof 命令,还可以使用 ss 命令。 查看开放的端口 今天我们就介…...
mysql集群简介
集群的好处 高可用性:故障检测及迁移,多节点备份。 可伸缩性:新增数据库节点便利,方便扩容。 负载均衡:切换某服务访问某节点,分摊单个节点的数据库压力。 集群要考虑的风险 网络分裂:群集还…...
装饰器模式
概述 当我们编写软件时,有时我们会遇到需要在不修改现有代码的情况下添加新功能的情况。这时,我们可以使用装饰器模式。 装饰器模式是一种结构性设计模式,它允许我们在不改变对象接口的情况下动态地向对象添加功能。装饰器模式通过创建一个…...
21 Nacos客户端本地缓存及故障转移
Nacos客户端本地缓存及故障转移 在Nacos本地缓存的时候有的时候必然会出现一些故障,这些故障就需要进行处理,涉及到的核心类为ServiceInfoHolder和FailoverReactor。 本地缓存有两方面,第一方面是从注册中心获得实例信息会缓存在内存当中&a…...
遍历读取文件夹下的所有文件
遍历读取文件夹下的所有文件 例如,读取文件夹下,子文件夹的所有的jpg文件: import glob path "./database/20230302/night/*/*.jpg"#设置自己的文件夹路径以及文件 image_files glob.glob(path, recursiveTrue)for image_file …...
做海报的话网站/关键词优化的技巧
首批中国人工智能产业发展联盟特约媒体以及联盟媒体专家委员会委员公布。 中国人工智能产业发展联盟媒体项目组成立会于2018年1月25日在京举行。会议由联盟办公室主任石霖主持。 我国人工智能领域进入了蓬勃发展阶段,各行各业形成了以人工智能为基础的科技创新体系…...
建设网络良好生态发挥网络的作用/做seo用哪种建站程序最好
数据库的一些术语解释:1)关系:关系就是二维表。并满足如下性质:表中的行、列次序并不重要2)行row:表中的每一行,又称为一条记录4)列column:表中的每一列,称为属性,字段5)主键(Primar…...
南京网站建设设计/网络策划书范文
计算机二级C语言程序填空题练习题导语:为帮助同学们更好更有准备地复习计算机二级C语言,小编整理了计算机二级C语言程序填空题练习题,一起来测试一下吧:程序填空题下列给定程序中,函数fun的功能是:把形参a所…...
微网站后台录入/今日热点新闻事件2022
一、类加载器 ClassLoader 能根据需要将 class 文件加载到 JVM 中,它使用双亲委托模型,在加载类的时候会判断如果类未被自己加载过,就优先让父加载器加载。另外在使用 instanceof 关键字、equals()方法、isAssignableFrom()方法、isInstance(…...
郑州做网站制作的公司/北京百度快速排名
一.类的静态成员变量,以及静态函数。 静态成员变量: 1.静态成员共享机制 2.静态成员局部属于类,它不是对象的成员,位于静态区。 3.静态成员变量需要在外部进行初始化。 静态函数: 1.静态成员函数都在代码区&…...
新疆巴州建设局网站/百度seo公司哪家最好
1.什么是直方图?直方图是数字图像处理中一个简单而重要的常用工具,它从总体上刻画了一幅图像的灰度内容。具体来说,直方图描述的是图像中具有各灰度级的出现的概率(像素的个数),其横坐标为灰度级,纵坐标为图像中具有该灰度级的像素个数。由于灰度级的大小为0-255&am…...