CN116186413A - 一种用于多模态特征推荐的方法和系统 - Google Patents
一种用于多模态特征推荐的方法和系统 Download PDFInfo
- Publication number
- CN116186413A CN116186413A CN202310234391.2A CN202310234391A CN116186413A CN 116186413 A CN116186413 A CN 116186413A CN 202310234391 A CN202310234391 A CN 202310234391A CN 116186413 A CN116186413 A CN 116186413A
- Authority
- CN
- China
- Prior art keywords
- artwork
- recommendation
- similarity
- features
- user
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种用于多模态特征推荐的方法和系统,包括:提取目标艺术品三种特征,包括:上下文数据、尺寸数据、图像数据;通过自注意力机制构建注意力网络;注意力网络使用向量进行权重计算;对三种特征的相似度在艺术品推荐候选集中按照从小到大排序,然后对得到的序号通过权重矩阵进行加权平均,通过对目标艺术品和候选艺术品集建模,挖掘潜在特征,找到三种特征相似度之间的相关度,进而确定三种相似度序号之间的权重分配,按照艺术品的最终相似度从大到小排序,形成艺术品推荐集合。本发明的优点是:解决了冷启动的问题,有效地对多模态特征进行融合,应用于艺术品多模态特征推荐,推荐效果更好。
Description
技术领域
本发明涉及智能信息推荐技术领域,特别涉及一种用于多模态特征推荐的方法和系统。
背景技术
近年来,随着互联网的快速发展,现代社会已成为了一个信息化、数字化的社会,数据充斥着整个世界,信息爆炸已成为常态。然而面对大量的数据,用户对信息的利用率反而降低了,即产生了信息超载(Information over load)问题。对此,推荐系统是有效解决信息超载难题的关键技术之一。事实上,随着互联网、物联网和云计算技术的迅猛发展,个性化推荐系统目前已经成为互联网产品的标配,互联网用户在电商、视频、新闻及音乐等领域中将要面对的互联网信息已和推荐系统息息相关。早在1992年,开始了一项针对邮件筛选的系统研究,该系统利用协同思想来过滤掉用户不喜欢的邮件。1994年,研究的Resnick网络新闻系统标志着推荐系统开始发展成为一项独立的研究领域,该系统的主要贡献有两个:第一、基于协同过滤思想的推荐算法(Collaborative Filtering,CF)的首次提出,第二、建立了推荐任务数学模型。1998年,出现了基于项目的协同过滤算法,该算法能根据用户浏览的新项目快速地更新推荐结果,并且能够对推荐结果进行简单的解释。2000-2010年间,Netflix、Google以及Facebook等公司相继发布了基于推荐系统的在线网站,推动了推荐系统的应用和发展,为用户提供个性化推荐服务。2012年,深度学习技术逐步被应用于推荐系统领域。2016年,Google的推荐团队提出Wide&Deep模型,该模型综合wide与deep这两种模型的各自优点进行推荐排序,其中wide模型承担了记忆的任务,deep模型承担归纳泛化的任务,这是深度学习应用于推荐系统领域中的一种成功尝试。2020年,提供了一个二维的分类方案对推荐系统的类别进行合理划分,还着重介绍了几个典型的深度学习推荐模型,并分析了相应的优缺点。从邮件过滤到个性化商品推荐,我们的日常生活中处处可见推荐系统的身影,无论是新闻,视频,还是购物,旅行,推荐系统都以某种方式来帮助我们处理信息过载以及解读用户的兴趣。
现有技术一
基于内容的推荐算法(Content-based Recommendation,简称CB),是通过计算物品特征之间的相似度,然后根据用户的偏好来进行物品的推荐。以艺术品推荐为例,如图1所示,推荐过程可以描述为:首先选取参与计算相似度的艺术品的特征,例如艺术品名称、类型等,通过相似度计算发现艺术品2和艺术品3相似,然后在用户的历史兴趣偏好中发现,用户3喜欢艺术品3,因为艺术品2和艺术品3拥有较高的相似度,所以判断用户3可能对艺术品2也有兴趣,因此把艺术品2推荐给用户3。
现有技术一的缺点
①因为只会根据用户的历史偏好进行推荐,所以可能会忽略用户的兴趣变化,无法挖掘其潜在爱好;②只对单一内容特征进行推荐,没有考虑到更多模态的内容特征,会使得推荐结果不准确。
现有技术二
协同过滤推荐算法(Collaborative Filtering,CF)以“物以类聚人以群分”为核心思想。该模型将所有用户作为一个整体,根据其在评分矩阵上的位置和历史行为对每个用户赋予不同权重,从而实现个性化推荐。它可以分为以下两类:①基于用户的协作推荐(User-based CF,UCF),通过对用户和用户相似度的计算,实现推荐,如图2所示。已知用户1、用户2都和用户3相似,而且用户1和用户2都喜欢艺术品1,那么根据UCF就会将艺术品1推荐给用户3;②基于物品的协同推荐(Item-based CF,ICF),通过对用户喜好中物品相似度的统计,实现推荐,如图3所示。已知用户1和用户2都喜欢艺术品1和艺术品2,基于此判断艺术品1和艺术品2相似,那么如果用户3喜欢艺术品2,根据ICF,就会给用户3推荐艺术品1。
现有技术二的缺点
基于协同过滤的推荐算法有如下缺点:①冷启动问题:无法进行新物品或者新用户的推荐;②算法的拓展性较差。
现有技术三
基于关联规则的推荐算法计算相似度的对象是通过物品关系,物品之间关系通过两种形式进行表现:频繁项集和关联规则,顾名思义,频繁项集是指多种元素之间的关系,频繁出现的元素的集合称为频繁项集,比如表1中的{葡萄酒、尿布、豆奶};而关联规则是指两种元素之间的关系,比如表1中的尿布和葡萄酒,表示买了尿布的人很可能也会买葡萄酒。
表1关联分析表
现有技术三的缺点
基于关联规则的推荐算法的缺点:①存在新用户和新物品冷启动的问题;②对于热门商品,推荐可能会有“偏见”,造成推荐结果不准确。
发明内容
本发明针对现有技术的缺陷,提供了一种用于多模态特征推荐的方法和系统。解决了在新物品冷启动的问题的,另外融合了用户行为特征进行推荐,也解决了新用户冷启动的问题。
本发明基于内容推荐算法的改进,其中改进的关键部分是对多模态内容特征进行了融合推荐,算法中设计了注意力加权排序融合机制,有效地对多模态特征进行融合。
为了实现以上发明目的,本发明采取的技术方案如下:
一种用于多模态特征推荐的方法,包括以下步骤:
S1:提取目标艺术品三种特征,包括:上下文数据、尺寸数据、图像数据;
S2:通过自注意力机制构建注意力网络;
S3:注意力网络使用Q、K、V三个向量进行权重计算;
Q表示目标艺术品的三种特征,K表示数据库中除目标艺术品之外的推荐候选集中艺术品的三种特征,V表示推荐候选集中艺术品的三种特征对应的相似度的序号值;
S4:对三种特征的相似度在艺术品推荐候选集中按照从小到大排序,然后对得到的序号通过权重矩阵进行加权平均,通过对目标艺术品和候选艺术品集建模,挖掘潜在特征,找到三种特征相似度之间的相关度,进而确定三种相似度序号之间的权重分配。
S5使用加权排序算法,其步骤如下:
S51:读取艺术品三种特征的相似度;
S52:构建艺术品特征相似度矩阵;
S53:对艺术品三种特征相似度,纵向按照从小到大生成序号;
S55:构建艺术品相似度序号矩阵;
S55:使用注意力网络横向学习艺术品各特征权重;
S56:对艺术品三种特征相似度序号进行加权平均;
S57:对得到的结果值进行归一化表示最终的相似度。
S6:按照艺术品的最终相似度从大到小排序,形成艺术品推荐集合。
进一步地,S3中注意力网络的计算过程如下:
S31:输入目标艺术品三种特征的相似度;
S32:使用线性变换进行初始化Q、K、V矩阵;
S33:计算目标艺术品的Q与所有候选集中的K的相关性;
S34:对得到的相关性结合V进行权重计算转化;
S35:将权重进行Softmax归一化操作;
S36:输出艺术品注意力权重矩阵。
进一步地,S4中所述艺术品相似度计算如下式:
其中n表示艺术品推荐候选集的数量,m表示参与艺术品推荐的特征数量,ωij表示第i个艺术品的第j个特征的权重系数,表示第i个艺术品的第j个特征的相似度序号,Ri表示第i个艺术品进行特征相似度加权融合之后的序号,simi表示第i个艺术品与目标艺术品的相似度。
进一步地,尺寸数据的相似度通过余弦距离得到,上下文数据的相似度通过Doc2vecDBOW模型得到,图像数据相似度通过TCRN模型得到。
本发明还公开了一种用于多模态特征推荐的系统,由数据库、服务端及客户端三部分组成,该系统用于实现上述方法。
数据库包括:用户属性表、用户行为表、管理员属性表以及艺术品属性表;
用户属性表中主要用来存储与用户相关的属性信息;
用户行为表主要用来采集用户与系统之间的交互数据;
管理员属性表是用来存储管理员相关的基本信息;
艺术品属性表用来存储艺术品的属性信息,表中主要包含作品ID、作品名称、作者名、作品类别、作品子类别、作品描述、作品尺寸、作品URL等字段,其中作品URL字段可以用来下载作品的对应的图像数据;
服务端功能包括:注册登录功能、艺术品上传、修改、删除、搜索、收藏以及推荐,并设计艺术品后台管理系统,是数据库的可视化操作页面。
客户端支持用户注册登录、艺术品浏览、艺术品搜索、艺术品收藏、艺术品推荐功能。
进一步地,系统中数据库的交互页面利用ElementUI技术进行设计,数据库采用MySQL的关系型数据库;服务端采用vscode软件开发,主要采用了VUE与flask框架方法来进行设计;客户端是IOS系统软件,开发工具是Xcode,采用SwiftUI框架实现客户端的界面设计。
与现有技术相比,本发明的优点在于:
1.不存在新物品冷启动的问题的,提出的算法融合了用户行为特征进行推荐,也解决了新用户冷启动的问题。
2.对多模态内容特征进行了融合推荐,设计了注意力加权排序融合机制,有效地对多模态特征进行融合。
3.应用于艺术品多模态特征推荐,推荐效果更好。
附图说明
图1是现有技术一基于内容的推荐算法结构示意图;
图2是现有技术二基于用户协同的推荐算法图;
图3是现有技术三基于物品协同的推荐算法图;
图4是本发明实施例一种用于多模态特征推荐的方法和系统流程图;
图5是本发明实施例自注意力网络架构示意图;
图6是本发明实施例加权排序算法的矩阵图;
图7是本发明实施例推荐系统的E-R模型图;
图8是本发明实施例推荐系统App时序图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下根据附图并列举实施例,对本发明做进一步详细说明。
在使用多模态特征进行艺术品推荐的时候,不同的艺术品特征在最终融合进行推荐的时候所占的权重是不同的,为了解决这个问题,本实施例设计了一种带有注意力的加权排序算法融合机制。利用注意力机制对不同特征(包括视觉特征、上下文特征和尺寸特征)的偏好权重进行建模以进行合理的权重分配。这里将上述算法模型命名为VstarNet,其中V表示视觉特征(Visual Features),S表示尺寸特征(Size Features),T表示上下文特征(Text Features),A表示注意力机制(Attention),R表示推荐(Recommend),Net表示神经网络模型。VstarNet模型的实现流程如图4所示。
由于本发明的推荐算法是完全基于艺术品内容的推荐,并且通过前期提取计算的艺术品三种相似度,属于序列型数据,具有顺序特性,所以在研究中采用自注意力机制(Self-Attention)来构建注意力网络,自注意力机制的核心在于通过分析学习数据内部的潜在特征联系,计算自己对自己的权重,这也是自注意力机制与普通注意力机制最大的区别。图5展示了本发明使用的注意力网络架构。
如图5所示,注意力网络使用Q、K、V这三个向量进行权重计算,其中Q表示query,K是key,V是Value,K-V表示键值对,在本实施例中Q表示目标艺术品的三种特征,K表示推荐候选集中艺术品的三种特征,V表示推荐候选集中艺术品的三种特征对应的相似度的序号值,该网络的计算过程如下:
排序法的核心思想是通过对概率值的排序序号(而不是概率值本身)进行平均来表示最终的结果值,本实施例中设计的注意力加权排序算法就是对三种特征的相似度在艺术品推荐候选集中按照从小到大排序(从0开始),然后对得到的序号进行加权平均,其中权重的分配是通过注意力网络实现的,通过对目标艺术品和候选艺术品集建模,挖掘潜在特征,找到三种特征相似度之间的相关度,进而确定三种相似度序号之间的权重分配。例如,艺术品M和艺术品N的最终相似度为simMN,RMN表示艺术品M、N的最终相似度序号,sim1表示艺术品M、N的视觉相似度,表示艺术品M、N的视觉相似度序号,sim2表示艺术品M、N的上下文相似度,/>表示艺术品M、N的上下文相似度序号,sim3表示艺术品M、N的尺寸相似度,/>表示艺术品M、N的尺寸相似度序号。则艺术品M、N的最终相似度计算如下式1所示:/>
其中ω1、ω2、ω3分别表示艺术品视觉、上下文以及尺寸的注意力权重,Rmin、Rmax分别表示加权平均后相似度序号的最小值和最大值。上式是从两个艺术品的微观角度来解释加权排序算法的原理,整个艺术品推荐算法的宏观角度表示如下式2:
其中n表示艺术品推荐候选集的数量,m表示参与艺术品推荐的特征数量,ωij表示第i个艺术品的第j个特征的权重系数,表示第i个艺术品的第j个特征的相似度序号,Ri表示第i个艺术品进行特征相似度加权融合之后的序号,simi表示第i个艺术品与目标艺术品的相似度,本实施例的加权排序算法的执行流程如下:
按照艺术品的最终相似度从大到小排序,形成艺术品推荐集合,图6为上述公式的矩阵图形表示,可以更为直观地感受该算法的计算原理。综上所述,本实施例提出的加权排序算法可以拓展到多个特征,并不局限于3个,而且权重系数也可以通过其他方式来获取,并不一定要用注意力网络,这也为后续展开相关研究提供了思路和理论基础。
软件部分:
软件系统的基本开发环境为MacOS 13,主要的开发语言是Python。系统架构为C/S结构模式,并采用前后端分离技术。为了实现用户最佳体验,整个软件系统由数据库、服务端及客户端三部分组成。其中数据库的交互页面利用ElementUI技术进行设计,数据库采用MySQL的关系型数据库;服务端采用vscode软件开发,主要采用了VUE与flask框架方法来进行设计;客户端是IOS系统软件,开发工具是Xcode,采用SwiftUI框架实现客户端的界面设计,具体配置见表2。
表2系统开发环境配置
数据库设计
(1)E-R模型图
E-R图又称实体关系图,一种用于反映现实世界的概念模型,描述实体间的属性与关联。从需求分析可以看出,艺术品推荐系统共有3个实体,分别为艺术品、用户和管理员。用户可浏览、收藏艺术品,管理员可管理用户与艺术品。用户与艺术品之间的关系是m:n,管理员与用户之间的关系是1:m,管理员与艺术品的关系是1:n。艺术品内容推荐系统的E-R模型图如图7所示,其中,实体使用黄色方框表示,实体之间的联系使用绿色菱形表示,每个实体的属性使用灰色椭圆表示。
(2)数据表设计
由E-R图得知,3个实体的属性可以与3个数据表相对应,分别为用户属性表、管理员属性表以及艺术品属性表。另外实体之间的联系,可以设计用户行为表来采集用户与艺术品之间的交互数据。
1)用户属性表
用户属性表中主要用来存储与用户相关的属性信息,具体表结构如表3所示。
表3用户属性表
2)用户行为表
用户行为表主要用来采集用户与系统之间的交互数据,具体表结构如表4所示。
表4用户行为表
3)管理员属性表
与用户属性表对应,管理员属性表是用来存储管理员相关的基本信息,具体表结构如表5所示。
表5管理员属性表
4)艺术品属性表
顾名思义,艺术品属性表用来存储艺术品的属性信息,结合本实施例第三章的描述,表中主要包含作品ID、作品名称、作者名、作品类别、作品子类别、作品描述、作品尺寸、作品URL等字段,其中作品URL字段可以用来下载作品的对应的图像数据,具体表结构如表6所示。
表6艺术品属性表
在MySQL数据库中对上述4个数据表进行搭建,并创建ETL进行推荐过程中历史数据的存储,为系统的推荐效果奠定了良好的数据基础。
服务端实现
服务端也就是整个软件的后台管理系统,负责完成系统的各个功能模块,艺术品推荐系统的服务端主要实现管理员&用户的注册登录、艺术品的管理以及艺术品的推荐功能,主要介绍在推荐系统服务端的设计中所使用的技术框架以及相应功能的实现。
(1)技术框架
使用Python作为服务端的开发语言,开发工具为VScode,使用Flask框架完成艺术品上传、删除、存储、推荐以及用户登录等功能,并使用基于Vue 2.0的ElementUI框架完成服务端后台可视化管理页面的设计与搭建。
以Python为平台的轻量级Web开发框架——Flask框架,在2010年应运而生,它本身就等同于一个内核,额外的功能几乎都要通过第三方扩展才能完成。由于它采用了一种全新的设计思路——“跨平台”技术,因此能够快速地构建出具有良好可扩展性和灵活性的系统。尽管Flask并不是最为著名的web框架,但它应是一个最具弹性的框架,Flask并不预设数据库,用户可选MySQL,还可采用NoSQL。
ElementUI框架是一款基于Vue.js 2.0的桌面UI框架,由国内饿了吗公司的前端团队研发推出,视觉设计更加贴合国人美学体验,并且是当前我国前端设计领域中普及率最高,使用率最大的UI框架之一。
(2)服务端功能实现
主要实现注册登录功能、艺术品上传、修改、删除、搜索以及推荐等功能,并设计艺术品后台管理系统,其本质上是数据库的可视化操作页面。定义Art模块实现艺术品的管理功能,其中Art_add类表示艺术品上传,Art_update类表示艺术品修改,Art_delete类表示艺术品删除,Art_list表示艺术品搜索,Art_collect类表示艺术品收藏,Art_Rcommand类表示艺术品推荐。
①注册登录功能
定义一个Login模块负责注册登录的功能实现,Adm类进行管理员注册登录的管理,User类进行用户注册登录的管理。具体实现步骤如下,使用xxx表示Adm类或者User类:
步骤1:管理员&用户注册,调用Login.xxx.setName()方法进行名称设置,Login.xxx.setAccount()设置登录账号,Login.xxx.setPassword()设置登录密码,Login.xxx.setSex()设置用户&管理员性别,Login.xxx.setAge()设置年龄等;
步骤2:注册成功之后,分别使用ElementUI和SwiftUI进行登录页面的设计;
步骤3:在登录页面输入账号密码进行登录,调用Login.xxx.verify_password()方法验证用户名和密码。如果输入的是正确的用户名,并且可以和密码匹配成功,则继续向下执行;
步骤4:服务端调用Login.xxx.post()方法提交登录请求,如果返回http码为400则表示无此账户,需要先进行注册;返回http码为401则表示密码错误;返回http码201则表示登录成功,并进入系统页面。
②艺术品上传功能
支持艺术品名称、作者、类别、子类别、作品描述以及作品图片等信息的上传,其中作品图片以Base64格式进行上传,通过点击操作页面上的上传按钮,填写艺术品相关信息,使用request.get_data()方法来获取页面交互信息,验证收集到的艺术品名称和艺术品图片是否为空,如果任何一项为空则,提示“名称和图片不能为空”,否则使用Art.query.filter().add()方法验证艺术品是否已存在于艺术品属性表中,如果http返回码为401,则报出“添加失败,该艺术品已存在”,http返回码为201,则表示“添加成功”,并将艺术品的各项信息添加到艺术品属性表中。
③艺术品修改功能
支持对已上传艺术品信息的修改,通过点击操作页面上的修改按钮,修改艺术品的基本信息,调用request.get_data()方法来获取页面交互信息,使用Art.query.filter().update()方法提交修改申请,如果http返回码为200,则表示“修改成功”,并将艺术品信息更新到艺术品属性表中。
④艺术品删除功能
点击艺术品后面的删除按钮,调用request.get_data()方法来获取页面交互信息,使用Art.query.filter().delete()方法提交删除申请,如果http返回码为204,则报出“删除成功”,并将该艺术品从数据表中删除。
⑤艺术品搜索功能
操作页面左上角有搜索栏,输入艺术品名称等信息可以进行搜索,调用request.get_data()方法来获取页面交互信息,使用Art.query.filter().all()方法提交搜索申请,在数据表中进行配对,如果http返回码为200,则表示“操作成功”,并在页面上显示出搜索结果。
⑥艺术品收藏功能
艺术品收藏为客户端的功能之一,进入艺术品详情页,点击收藏按钮,调用request.get_data()方法获取页面交互信息,使用collection_add()方法进行艺术品收藏,collection_delete()方法进行取消收藏,collection_list()方法进行艺术品收藏列表的展示。
⑦艺术品推荐功能
本推荐系统是基于艺术品内容的推荐,通过计算目标艺术品与数据库中的艺术品在多模态特征上的融合相似度,按照相似度大小降序排列,选出排名前Top-10的艺术品形成推荐列表,具体算法的实现以及N值的确定已在第四章中详细描述,主要涉及到用户信息获取、用户浏览信息获取、用户收藏信息获取等流程,具体实现的步骤如下:
步骤1:通过用户在客户端的操作行为获取到用户当前浏览的艺术品信息,并根据用户ID在用户行为表中获取到ArtFavoriteList(用户艺术品收藏列表);
步骤2:使用Art_Rcommand.getart()方法获取所有的艺术品信息,并提取出相应的图像视觉、上下文以及尺寸信息,形成一个多模态特征的艺术品推荐候选集;
步骤3:通过对用户的浏览信息、收藏信息等用户行为进行分析,对艺术品的3个模态赋予不同的注意力权重;
步骤4:结合第四章中的VstarNet推荐算法,得到该用户在当前艺术品下的推荐列表。
客户端实现
艺术品推荐系统客户端为ios系统App,支持用户注册登录、艺术品浏览、艺术品搜索、艺术品收藏、艺术品推荐等功能,本节主要介绍客户端实现所需的技术框架以及进行上述各个功能的实现。
(1)技术框架
客户端使用开发工具为Xcode,使用Swift语言完成ios客户端的设计开发。Swift语言是苹果公司在2016年的WWDC2014发布会上推出的一种全新的程序设计语言,该语言具有的优势如下:
①效率高。Swift克服了其它语言长久以来无法两全的难题。C语言具有一流的执行性能,但是它的开发速度远没有JavaScript和Python这些script语言快。Python的开发速度非常快,但是它的执行性能无法与C和Java相提并论。Swift兼顾了开发速度与执行性能两方面,例如,一个常用的搜索算法使用swift完成比Objective C快2.6倍,比Python2.7快8.4倍。
②安全性高。Swift语言设计之初就将安全摆在第一位,它的许多设计都源于从安全角度思考,而且xcode可以动态编译swift代码,将代码bug实时展示出来。
③简洁易懂。Swift的语法很明确,比较易读易写,其原因是Swift去掉了很多遗留约定,如分号、结束行和括号,Swift代码更加贴近简单英语,这样写代码就更加自然,同时让开发人员花更少的时间去查找存在问题的编码。
(2)客户端功能实现
客户端主要实现的功能包含用户注册登录、艺术品详情、收藏以及推荐功能,用户通过使用账号密码登录App之后,推荐系统App的前台显示及调用流程使用UML时序图表示,如图8所示。
具体的实现步骤如下:
步骤1:用户使用账号密码进行登录,进入推荐系统首页,按照类别浏览艺术品;
步骤2:用户看到感兴趣的艺术品可以进行点击,进入该艺术品的详情页面,在详情页面可以对该艺术品进行收藏和推荐;
步骤3:用户点击详情页下的收藏按钮,则会调用服务端的Art_collent类进行艺术品的收藏操作,然后该艺术品会出现在收藏页面下;
步骤4:用户点击详情页下的猜您喜欢按钮,则会调用服务端的Art_Rcommand类进行艺术品的相似度计算、排序以及推荐结果的展示。
本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的实施方法,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。
Claims (6)
1.一种用于多模态特征推荐的方法,其特征在于,包括以下步骤:
S1:提取目标艺术品三种特征,包括:上下文数据、尺寸数据、图像数据;
S2:通过自注意力机制构建注意力网络;
S3:注意力网络使用Q、K、V三个向量进行权重计算;
Q表示目标艺术品的三种特征,K表示数据库中除目标艺术品之外的推荐候选集中艺术品的三种特征,V表示推荐候选集中艺术品的三种特征对应的相似度的序号值;
S4:对三种特征的相似度在艺术品推荐候选集中按照从小到大排序,然后对得到的序号通过权重矩阵进行加权平均,通过对目标艺术品和候选艺术品集建模,挖掘潜在特征,找到三种特征相似度之间的相关度,进而确定三种相似度序号之间的权重分配;
S5使用加权排序算法,其步骤如下:
S51:读取艺术品三种特征的相似度;
S52:构建艺术品特征相似度矩阵;
S53:对艺术品三种特征相似度,纵向按照从小到大生成序号;
S55:构建艺术品相似度序号矩阵;
S55:使用注意力网络横向学习艺术品各特征权重;
S56:对艺术品三种特征相似度序号进行加权平均;
S57:对得到的结果值进行归一化表示最终的相似度;
S6:按照艺术品的最终相似度从大到小排序,形成艺术品推荐集合。
2.根据权利要求1所述的一种用于多模态特征推荐的方法,其特征在于:S3中注意力网络的计算过程如下:
S31:输入目标艺术品三种特征的相似度;
S32:使用线性变换进行初始化Q、K、V矩阵;
S33:计算目标艺术品的Q与所有候选集中的K的相关性;
S34:对得到的相关性结合V进行权重计算转化;
S35:将权重进行Softmax归一化操作;
S36:输出艺术品注意力权重矩阵。
4.根据权利要求1所述的一种用于多模态特征推荐的方法,其特征在于:尺寸数据的相似度通过余弦距离得到,上下文数据的相似度通过Doc2vecDBOW模型得到,图像数据相似度通过TCRN模型得到。
5.一种用于多模态特征推荐的系统,其特征在于:由数据库、服务端及客户端三部分组成,所述系统用于实现权利要求1至4其中一项所述的一种用于多模态特征推荐的方法;
数据库包括:用户属性表、用户行为表、管理员属性表以及艺术品属性表;
用户属性表中主要用来存储与用户相关的属性信息;
用户行为表主要用来采集用户与系统之间的交互数据;
管理员属性表是用来存储管理员相关的基本信息;
艺术品属性表用来存储艺术品的属性信息,表中主要包含作品ID、作品名称、作者名、作品类别、作品子类别、作品描述、作品尺寸、作品URL等字段,其中作品URL字段可以用来下载作品的对应的图像数据;
服务端功能包括:注册登录功能、艺术品上传、修改、删除、搜索、收藏以及推荐,并设计艺术品后台管理系统,是数据库的可视化操作页面;
客户端支持用户注册登录、艺术品浏览、艺术品搜索、艺术品收藏、艺术品推荐功能。
6.根据权利要求5所述的一种用于多模态特征推荐的系统,其特征在于:系统中数据库的交互页面利用ElementUI技术进行设计,数据库采用MySQL的关系型数据库;服务端采用vscode软件开发,主要采用了VUE与flask框架方法来进行设计;客户端是IOS系统软件,开发工具是Xcode,采用SwiftUI框架实现客户端的界面设计。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310234391.2A CN116186413A (zh) | 2023-03-10 | 2023-03-10 | 一种用于多模态特征推荐的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310234391.2A CN116186413A (zh) | 2023-03-10 | 2023-03-10 | 一种用于多模态特征推荐的方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116186413A true CN116186413A (zh) | 2023-05-30 |
Family
ID=86438434
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310234391.2A Pending CN116186413A (zh) | 2023-03-10 | 2023-03-10 | 一种用于多模态特征推荐的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116186413A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116628235A (zh) * | 2023-07-19 | 2023-08-22 | 支付宝(杭州)信息技术有限公司 | 数据推荐方法、装置、设备及介质 |
-
2023
- 2023-03-10 CN CN202310234391.2A patent/CN116186413A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116628235A (zh) * | 2023-07-19 | 2023-08-22 | 支付宝(杭州)信息技术有限公司 | 数据推荐方法、装置、设备及介质 |
CN116628235B (zh) * | 2023-07-19 | 2023-11-03 | 支付宝(杭州)信息技术有限公司 | 数据推荐方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10198503B2 (en) | System and method for performing a semantic operation on a digital social network | |
US9607010B1 (en) | Techniques for shape-based search of content | |
US20180181569A1 (en) | Visual category representation with diverse ranking | |
US9864803B2 (en) | Method and system for multimodal clue based personalized app function recommendation | |
CN110199276A (zh) | 用方面标记查询 | |
CN105718184A (zh) | 一种数据处理方法和装置 | |
US20140330821A1 (en) | Recommending context based actions for data visualizations | |
CN101968802A (zh) | 一种基于用户浏览行为进行互联网内容推荐的方法与设备 | |
KR20100094021A (ko) | 이동통신 단말기와 아이피 기반 정보 단말기를 이용한 맞춤, 지능형 심볼, 아이콘 인터넷 정보 검색시스템 | |
IL227140A (en) | A system and method for performing semantic work on a digital social network | |
CN104903886A (zh) | 基于社交图谱信息的结构化搜索查询 | |
US9767417B1 (en) | Category predictions for user behavior | |
US20190332605A1 (en) | Methods, systems and techniques for ranking blended content retrieved from multiple disparate content sources | |
CN107562939A (zh) | 垂直领域新闻推荐方法、装置及可读储存介质 | |
CN108959595B (zh) | 基于虚拟与现实的网站构建和体验方法及其装置 | |
US9767204B1 (en) | Category predictions identifying a search frequency | |
Díez et al. | Towards explainable personalized recommendations by learning from users’ photos | |
US10474670B1 (en) | Category predictions with browse node probabilities | |
CN106354855A (zh) | 一种推荐方法及系统 | |
CN116186413A (zh) | 一种用于多模态特征推荐的方法和系统 | |
CN116089745A (zh) | 信息推荐方法、装置、电子设备及计算机可读存储介质 | |
CN116308683B (zh) | 基于知识图谱的服装品牌定位推荐方法、设备及存储介质 | |
US10387934B1 (en) | Method medium and system for category prediction for a changed shopping mission | |
CN115760315A (zh) | 商品推荐方法及其装置、设备、介质 | |
KR101985603B1 (ko) | 삼분 그래프에 기반한 추천 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |