CN113158039A - 应用推荐方法、系统、终端以及存储介质 - Google Patents
应用推荐方法、系统、终端以及存储介质 Download PDFInfo
- Publication number
- CN113158039A CN113158039A CN202110367692.3A CN202110367692A CN113158039A CN 113158039 A CN113158039 A CN 113158039A CN 202110367692 A CN202110367692 A CN 202110367692A CN 113158039 A CN113158039 A CN 113158039A
- Authority
- CN
- China
- Prior art keywords
- user
- application
- algorithm
- matrix decomposition
- recommendation
- 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
- 238000000034 method Methods 0.000 title claims abstract description 56
- 239000011159 matrix material Substances 0.000 claims abstract description 101
- 238000000354 decomposition reaction Methods 0.000 claims abstract description 77
- 239000013598 vector Substances 0.000 claims abstract description 45
- 238000005457 optimization Methods 0.000 claims description 15
- 238000010845 search algorithm Methods 0.000 claims description 9
- 238000013528 artificial neural network Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 5
- 230000007547 defect Effects 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 229940050561 matrix product Drugs 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000000265 homogenisation Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000003442 weekly effect Effects 0.000 description 1
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0631—Item recommendations
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Evolutionary Computation (AREA)
- Finance (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Algebra (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Biology (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种应用推荐方法,包括:利用矩阵分解算法对包含用户特征的用户特征矩阵进行矩阵分解得到降维去噪的用户特征;对矩阵分解后得到的用户特征利用层次聚类算法进行聚类操作,使得拥有相似用户特征的用户被聚类至同一用户类内,使用每个用户类的均值向量作为该用户类中的用户特征;根据矩阵分解及聚类操作后的用户特征、用户所处情境特征以及应用特征,利用贝叶斯模型预测各个应用被推荐的概率,生成预测概率降序的应用推荐列表。本发明还涉及一种应用推荐系统。本发明能够利用用户特征信息,结合用户所处情境信息、应用特征及预测的应用被推荐概率,为用户进行更优质的应用推荐。
Description
技术领域
本发明涉及一种应用推荐方法、系统、终端以及存储介质。
背景技术
随着数字时代的到来以及智能移动设备的广泛应用,人们可获取的信息量也随之急剧增多,信息过载的问题也因此变得日趋严重。为应对信息过载带来的弊端,将真正有用的信息以个性化的形式推荐给用户,推荐系统成为了解决信息过载问题的有利工具之一,其应用也变得愈发广泛。面对海量的信息,推荐系统可以根据用户的信息需求、兴趣爱好等,个性化地将用户感兴趣的信息推荐给用户。而对于应用推荐系统而言,其目的在于将用户可能感兴趣的应用程序推荐给用户,使得用户可以更好地使用如手机等智能设备。
然而,推荐系统算法经过长期的发展与演化后,仍存在一些不足之处亟待解决。首先,绝大多数推荐系统面临着推荐同质化的困境,即推荐系统长期为用户推荐与其历史兴趣相似的信息资源,同类资源的重复推荐内容缺乏新颖性,无法引导用户发现更多潜在的新兴趣点,从而使得推荐系统具有较大的局限性。除此之外,现有的绝大多数推荐系统算法均着重于对用户和所推荐信息的属性进行分析并进行推荐,在推荐过程中往往缺失对用户所处情境的考虑,如用户上一个浏览的应用类型、用户在某一类应用中的停留时间等,从而使得推荐系统的推荐效果欠佳。
发明内容
有鉴于此,有必要提供一种应用推荐方法、系统、终端以及存储介质,其能够利用用户特征信息,结合用户所处情境信息、应用特征及预测的应用被推荐概率,为用户进行更优质的应用推荐。
本申请实施例提供一种应用推荐方法,该方法包括如下步骤:a.利用矩阵分解算法对包含用户特征的用户特征矩阵进行矩阵分解得到降维去噪的用户特征;b.对矩阵分解后得到的用户特征利用层次聚类算法进行聚类操作,使得拥有相似用户特征的用户被聚类至同一用户类内,使用每个用户类的均值向量作为该用户类中的用户特征;c.根据矩阵分解及聚类操作后的用户特征、用户所处情境特征以及应用特征,利用贝叶斯模型预测各个应用被推荐的概率,生成预测概率降序的应用推荐列表。
其中,该方法还包括步骤:d.根据应用推荐数据集计算召回率,利用贝叶斯优化网格搜索算法对层次聚类算法中所需要的参数进行自动调优以对所述召回率进行优化。
其中,所述用户特征包括:年龄、性别、所在地、兴趣;所述矩阵分解算法包括:隐含语义分析矩阵分解算法、奇异值矩阵分解算法,非负矩阵分解算法,神经网络分解机算法。
其中,所述的层次聚类算法具体包括如下步骤:
将每一个用户都初始化为一个叶子节点,即一个用户一个组;
在每一次迭代中,计算各组均值向量之间的欧氏距离;然后,合并欧氏距离最近的用户组,使得聚类产生的各用户组的均值向量之间的距离最小为λ;
不断进行迭代合并,直到迭代的终止条件达成:各个组的均值向量之间的距离都大于等于距离阈值λ。
其中,所述的使用每个用户类的均值向量作为该用户类中的用户特征,具体包括:
用该类用户的特征表示每一组的均值向量,求均值向量的公式如下:
其中:第c类用户的用户特征表示,即Uc,为被分到该类的所有用户的用户特征向量的平均值。
其中,所述步骤c具体包括:
所述贝叶斯模型所用公式为:
其中,M’为矩阵分解及聚类操作后的用户特征向量,A为推荐应用的特征,如应用类别、应用评分等,S为用户所处情境特征,包括:用户上一次浏览的应用类型、用户对应用的点击、用户在某一类应用中停留的时长;
根据上述公式计算得到不同的应用被推荐的概率,再以概率做降序排列,从而找出推荐概率最大的前K个应用,得到应用推荐列表。
本申请实施例提供一种应用推荐系统,该系统包括该系统包括分解模块、聚类模块以及推荐模块,其中:所述分解模块用于利用矩阵分解算法对包含用户特征的用户特征矩阵进行矩阵分解得到降维去噪的用户特征;所述聚类模块用于对矩阵分解后得到的用户特征利用层次聚类算法进行聚类操作,使得拥有相似用户特征的用户被聚类至同一用户类内,使用每个用户类的均值向量作为该用户类中的用户特征;所述推荐模块用于根据矩阵分解及聚类操作后的用户特征、用户所处情境特征以及应用特征,利用贝叶斯模型预测各个应用被推荐的概率,生成预测概率降序的应用推荐列表。
其中,所述系统还包括:
优化模块,用于根据应用推荐数据集计算召回率,利用贝叶斯优化网格搜索算法对层次聚类算法中所需要的参数进行自动调优以对所述召回率进行优化。
本申请实施例提供一种终端,所述终端包括处理器、与所述处理器耦接的存储器,其中,
所述存储器存储有用于实现应用推荐方法的程序指令;
所述处理器用于执行所述存储器存储的所述程序指令以进行应用推荐。
本申请实施例提供一种存储介质,存储有处理器可运行的程序指令,所述程序指令用于执行所述的应用推荐方法。
本申请提供了一种应用推荐方法及系统,首先对用户特征矩阵进行LSA矩阵分解操作,矩阵分解不仅可以去除掉数据中的冗余特征以及表示能力不强的特征,使得算法推荐更加优质,而且可以对用户特征实现降维,从而使得运行更加高效。之后,对分解后的用户特征进行层次聚类,并利用贝叶斯优化网格搜索算法对层次聚类参数进行自动调整,无需手动设置参数。对用户特征进行聚类后,本申请将用每一类用户的特征的均值向量作为该类中用户的特征的表示。最后,考虑到通过利用用户情境信息可以更好地分析出用户的喜好特征,从而为用户更好地进行应用推荐,本申请将分解聚类后的用户特征、用户所处情境与应用特征相结合,通过贝叶斯模型预测应用被推荐的概率,并对应用做概率的降序排列,从而生成对用户的应用推荐列表,更有效、更高效地为用户推荐其可能感兴趣的应用软件。
附图说明
图1为本申请实施例应用推荐方法的流程图;
图2是申请实施例用户特征矩阵M示意图;
图3是申请实施例层次聚类算法及停止阈值λ示意图;
图4为本申请实施例应用推荐系统的硬件架构图;
图5为本申请实施例的终端结构示意图;
图6为本申请实施例的存储介质的结构示意图。
具体实施方式
下面结合附图及具体实施例对本发明作进一步详细的说明。
参阅图1所示,是本发明应用推荐方法较佳实施例的作业流程图。
步骤S1,利用矩阵分解算法对包含用户特征的用户特征矩阵进行矩阵分解得到降维去噪的用户特征。其中,所述用户特征包括:年龄、性别、所在地、兴趣等;所述矩阵分解算法包括:LSA(Latent semantic analysis,隐含语义分析)矩阵分解算法、奇异值(SVD,Singular Value Decomposition)矩阵分解算法,非负矩阵分解(NMF,Non-negativeMatrix Factorization)算法,神经网络分解机(NFM,Neural Factorization Machines)算法等。不同的矩阵分解算法具有不同的准确度以及计算复杂度,可根据情况进行适当选择。具体而言:
本实施例对包含用户特征(年龄、性别、所在地、兴趣等)的用户特征矩阵利用LSA矩阵分解算法对用户特征矩阵进行矩阵分解。在用户特征矩阵M中,每个用户都用N个维度进行表示,总共有T个用户,故用户特征矩阵M是一个T行N列的矩阵,如图2所示。
本实施例中具体使用的用户特征如表1所示:
表1
LSA矩阵分解算法把用户特征矩阵M分解为用户-隐空间矩阵U、隐空间转移矩阵Σ、以及隐空间-特征矩阵V的转置的矩阵乘积,如下公式所示:
M=UΣV*
矩阵分解不仅可以去除掉数据中的冗余特征以及表示能力不强的特征,使得本申请推荐更加优质,而且可以对用户特征实现降维,从而使得本申请运行更加高效。所以,对用户特征矩阵进行矩阵分解相较于不进行矩阵分解的算法而言,用户特征更加精炼,且运行更加高效。
步骤S2,对矩阵分解后得到的用户特征利用层次聚类算法进行聚类操作,使得拥有相似用户特征的用户被聚类至同一用户类内。在对用户进行层次聚类之后,使用每个用户类的均值向量作为该用户类中的用户特征。具体而言:
将矩阵分解后的用户特征利用层次聚类算法进行聚类操作,从而将用户们聚类到特征相似、兴趣爱好相仿的用户组中。从下至上的层次聚类算法如图3所示:
首先,将每一个用户都初始化为一个叶子节点,即一个用户一个组。之后,在每一次迭代中,计算各组均值向量之间的相似度,如欧氏距离;然后,合并欧氏距离最近的用户组,使得聚类产生的各用户组的均值向量之间的距离最小为λ。层次聚类算法不断进行迭代合并,直到迭代的终止条件达成,即各个组的均值向量之间的距离都大于等于距离阈值λ。如图3所示,假设迭代停止阈值λ设置为1.2,则层次聚类算法在迭代一次后就会停止,因为此时各组的均值向量之间的最小距离为1.26,已符合迭代停止阈值条件。所以,在层次聚类算法停止时,用户U1和U2会被聚为一组,用户U5和U6会被聚为一组,用户U3、U4各自自成一组。迭代停止条件的满足意味着每个用户组之间已经拥有了足够的差异性,从而能够避免用户被模棱两可地错分入其本不应该属于的用户组。
通过层次聚类算法,具有相似特征的用户被聚合至同一组中,之后用该类用户的特征表示每一组的均值向量,求均值向量的公式如下:
其中:第c类用户的用户特征表示,即Uc,为被分到该类的所有用户的用户特征向量的平均值。
通过这种方式,虽然同处一类的用户具有大体相似的特征,但是处于同类的用户与用户之间也存在一定的差异性与多样性,并非完全相同。对每一类用户的特征取均值向量可以很好地将同类用户的特征进行融合,在不破坏用户原有兴趣取向的同时适当的引入同类用户带来的多样性,从而可以借助与某一用户兴趣大体相同的同类用户的特征,来帮助该用户发现同类用户具有的其他兴趣点,从而引导该用户发现同类用户可能拥有的潜在兴趣,使得推荐更加有效。
步骤S3,结合矩阵分解及聚类操作后的用户特征、用户所处情境特征以及应用特征,利用贝叶斯模型预测各个应用被推荐的概率,并对各个应用进行对于预测概率的降序排列,生成对于具有此种用户特征与用户所处情境特征的用户的应用推荐列表。其中:所述用户所处情境特征包括:用户上一次浏览的应用类型、用户在某一类应用中停留的时长等特征。所述应用特征包括应用类型、应用评分等;例如,某某应用(ID#000)属于第#8类实时新闻类应用,其新闻属性指数为0.95,科技属性指数为0.76,体育属性指数为0.66,等等。上述属性将作为一个向量,表示其应用特征。具体而言:
差别于传统的推荐系统算法,本申请在利用数据特征进行分析与应用推荐时,不再局限于用户自身如年龄、性别、爱好等特征。用户所处情境信息可以更好地辅助分析用户喜好特征,从而提升推荐的准确性,本申请结合矩阵分解及聚类操作后的用户特征、用户所处情境特征(请参考表2)以及应用特征,利用贝叶斯模型预测各个应用被推荐的概率,并对各个应用进行对于预测概率的降序排列,以生成对于具有此种用户特征与用户所处情境特征的用户的应用推荐列表。
所述贝叶斯模型所用公式如下:
其中,M’为矩阵分解及聚类操作后的用户特征向量,A为推荐应用的特征,如应用类别、应用评分等。S为用户所处情境特征,如用户上一次浏览的应用类型、用户在某一类应用中停留的时长等。根据公式可计算出对于一个给出的用户特征及其所处情境特征,不同的应用被推荐的概率,之后再以概率做降序排列,从而找出推荐概率最大的前K个应用,即为最值得被推荐的K个应用,得到应用推荐列表。
同时,本申请可以接受并处理用户场景信息容易随时间发生变化的特点,通过用户反馈的实时用户所处情境信息,更新公式中的概率,从而能够实时更新,以便使得应用推荐具有更好的实时性。
除此之外,本申请采用用户对应用的点击以及停留时长等作为用户所处情境特征,从而充分地避免了用户没有对应用进行评分、评价或不同用户打分尺度差异大等弊端,本申请所选用的情境信息无需用户做特殊操作,容易获取,且不存在尺度标准不一致的问题。
本实施例中具体使用的用户所处情境特征表如表2所示:
表2
步骤S4,根据推荐系统在应用推荐数据集上的召回率,利用贝叶斯优化网格搜索算法对层次聚类算法中所需要的参数进行自动调优从而优化推荐结果的召回率。所以,本申请无需人为手工指定层次聚类时的参数,更加高效。具体而言:
利用推荐数据集计算推荐系统产生的推荐的召回率。所用推荐数据集样本如表3所示:
表3
通过使用此数据集,即可计算出召回率。之后,通过贝叶斯优化网格搜索算法,以优化本申请推荐结果的召回率为目标,对本申请层次聚类中的停止距离阈值λ进行调参,从而优化本申请的推荐性能。所采取的贝叶斯优化网格算法可以在每次对参数调整时考虑之前对参数的调整效果,从而更快地找出效果较好的参数设置。
参阅图4所示,是本发明应用推荐系统10的硬件架构图。该系统包括:分解模块101、聚类模块102、推荐模块103以及优化模块104。
所述分解模块101用于利用矩阵分解算法对包含用户特征的用户特征矩阵进行矩阵分解得到降维去噪的用户特征。其中,所述用户特征包括:年龄、性别、所在地、兴趣等;所述矩阵分解算法包括:LSA(Latent semantic analysis,隐含语义分析)矩阵分解算法、奇异值(SVD,Singular Value Decomposition)矩阵分解算法,非负矩阵分解(NMF,Non-negative Matrix Factorization)算法,神经网络分解机(NFM,Neural FactorizationMachines)算法等。不同的矩阵分解算法具有不同的准确度以及计算复杂度,可根据情况进行适当选择。具体而言:
本实施例对包含用户特征(年龄、性别、所在地、兴趣等)的用户特征矩阵利用LSA矩阵分解算法对用户特征矩阵进行矩阵分解。在用户特征矩阵M中,每个用户都用N个维度进行表示,总共有T个用户,故用户特征矩阵M是一个T行N列的矩阵,如图2所示。
本实施例中具体使用的用户特征如表1所示:
表1
LSA矩阵分解算法把用户特征矩阵M分解为用户-隐空间矩阵U、隐空间转移矩阵Σ、以及隐空间-特征矩阵V的转置的矩阵乘积,如下公式所示:
M=UΣV*
矩阵分解不仅可以去除掉数据中的冗余特征以及表示能力不强的特征,使得本申请推荐更加优质,而且可以对用户特征实现降维,从而使得本申请运行更加高效。所以,对用户特征矩阵进行矩阵分解相较于不进行矩阵分解的算法而言,用户特征更加精炼,且运行更加高效。
所述聚类模块102用于对矩阵分解后得到的用户特征利用层次聚类算法进行聚类操作,使得拥有相似用户特征的用户被聚类至同一用户类内。在对用户进行层次聚类之后,使用每个用户类的均值向量作为该用户类中的用户特征。具体包括:
将矩阵分解后的用户特征利用层次聚类算法进行聚类操作,从而将用户们聚类到特征相似、兴趣爱好相仿的用户组中。从下至上的层次聚类算法如图3所示:
首先,将每一个用户都初始化为一个叶子节点,即一个用户一个组。之后,在每一次迭代中,计算各组均值向量之间的相似度,如欧氏距离;然后,合并欧氏距离最近的用户组,使得聚类产生的各用户组的均值向量之间的距离最小为λ。层次聚类算法不断进行迭代合并,直到迭代的终止条件达成,即各个组的均值向量之间的距离都大于等于距离阈值λ。如图3所示,假设迭代停止阈值λ设置为1.2,则层次聚类算法在迭代一次后就会停止,因为此时各组的均值向量之间的最小距离为1.26,已符合迭代停止阈值条件。所以,在层次聚类算法停止时,用户U1和U2会被聚为一组,用户U5和U6会被聚为一组,用户U3、U4各自自成一组。迭代停止条件的满足意味着每个用户组之间已经拥有了足够的差异性,从而能够避免用户被模棱两可地错分入其本不应该属于的用户组。
通过层次聚类算法,具有相似特征的用户被聚合至同一组中,之后用该类用户的特征表示每一组的均值向量,求均值向量的公式如下:
其中:第c类用户的用户特征表示,即Uc,为被分到该类的所有用户的用户特征向量的平均值。
通过这种方式,虽然同处一类的用户具有大体相似的特征,但是处于同类的用户与用户之间也存在一定的差异性与多样性,并非完全相同。对每一类用户的特征取均值向量可以很好地将同类用户的特征进行融合,在不破坏用户原有兴趣取向的同时适当的引入同类用户带来的多样性,从而可以借助与某一用户兴趣大体相同的同类用户的特征,来帮助该用户发现同类用户具有的其他兴趣点,从而引导该用户发现同类用户可能拥有的潜在兴趣,使得推荐更加有效。
所述推荐模块103用于结合矩阵分解及聚类操作后的用户特征、用户所处情境特征以及应用特征,利用贝叶斯模型预测各个应用被推荐的概率,并对各个应用进行对于预测概率的降序排列,生成对于具有此种用户特征与用户所处情境特征的用户的应用推荐列表。其中:所述用户所处情境特征包括:用户上一次浏览的应用类型、用户在某一类应用中停留的时长等特征。所述应用特征包括应用类型、应用评分等;例如,某某应用(ID#000)属于第#8类实时新闻类应用,其新闻属性指数为0.95,科技属性指数为0.76,体育属性指数为0.66,等等。上述属性将作为一个向量,表示其应用特征。具体而言:
差别于传统的推荐系统算法,本申请在利用数据特征进行分析与应用推荐时,不再局限于用户自身如年龄、性别、爱好等特征。用户所处情境信息可以更好地辅助分析用户喜好特征,从而提升推荐的准确性,本申请结合矩阵分解及聚类操作后的用户特征、用户所处情境特征(请参考表2)以及应用特征,利用贝叶斯模型预测各个应用被推荐的概率,并对各个应用进行对于预测概率的降序排列,以生成对于具有此种用户特征与用户所处情境特征的用户的应用推荐列表。
所述贝叶斯模型所用公式如下:
其中,M’为矩阵分解及聚类操作后的用户特征向量,A为推荐应用的特征,如应用类别、应用评分等。S为用户所处情境特征,如用户上一次浏览的应用类型、用户在某一类应用中停留的时长等。根据公式可计算出对于一个给出的用户特征及其所处情境特征,不同的应用被推荐的概率,之后再以概率做降序排列,从而找出推荐概率最大的前K个应用,即为最值得被推荐的K个应用,得到应用推荐列表。
同时,本申请可以接受并处理用户场景信息容易随时间发生变化的特点,通过用户反馈的实时用户所处情境信息,更新公式中的概率,从而能够实时更新,以便使得应用推荐具有更好的实时性。
除此之外,本申请采用用户对应用的点击以及停留时长等作为用户所处情境特征,从而充分地避免了用户没有对应用进行评分、评价或不同用户打分尺度差异大等弊端,本申请所选用的情境信息无需用户做特殊操作,容易获取,且不存在尺度标准不一致的问题。
本实施例中具体使用的用户所处情境特征表如表2所示:
用户所处情境特征 |
用户对于各类应用的平均日启动次数 |
用户对于各类应用的平均周启动次数 |
用户对于各类应用的平均月启动次数 |
用户对于各类应用的平均使用时长 |
用户上一次打开的应用类型 |
表2
所述优化模块104用于根据推荐系统在应用推荐数据集上的召回率,利用贝叶斯优化网格搜索算法对层次聚类算法中所需要的参数进行自动调优从而优化推荐结果的召回率。所以,本申请无需人为手工指定层次聚类时的参数,更加高效。具体而言:
利用推荐数据集计算推荐系统产生的推荐的召回率。所用推荐数据集样本如表3所示:
表3
通过使用此数据集,即可计算出召回率。之后,通过贝叶斯优化网格搜索算法,以优化本申请推荐结果的召回率为目标,对本申请层次聚类中的停止距离阈值λ进行调参,从而优化本申请的推荐性能。所采取的贝叶斯优化网格算法可以在每次对参数调整时考虑之前对参数的调整效果,从而更快地找出效果较好的参数设置。
请参阅图5,为本申请实施例的终端结构示意图。该终端50包括处理器51、与处理器51耦接的存储器52。
存储器52存储有用于实现上述针对应用推荐方法的程序指令。
处理器51用于执行存储器52存储的程序指令以进行应用推荐。
其中,处理器51还可以称为CPU(Central Processing Unit,中央处理单元)。处理器51可能是一种集成电路芯片,具有信号的处理能力。处理器51还可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
请参阅图6,为本申请实施例的存储介质的结构示意图。本申请实施例的存储介质存储有能够实现上述所有方法的程序文件61,其中,该程序文件61可以以软件产品的形式存储在上述存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质,或者是计算机、服务器、手机、平板等终端设备。
本申请能够利用经过矩阵分解并层次聚类的用户特征信息,结合用户所处情境信息与应用特征,利用贝叶斯模型预测应用被推荐的概率,为用户进行更优质的应用推荐。具体地:
1)相较于未进行用户特征聚类的算法而言,本申请通过对矩阵分解后的用户特征进行层次聚类,并对每一类用户的特征取均值向量可以很好地将同类用户的特征进行融合,在不破坏用户原有兴趣取向的同时适当引入同类用户带来的多样性,从而使得能够借助与某一用户兴趣大体相同的同类用户的特征,来帮助该用户发现同类用户具有的其他兴趣点,从而引导该用户发现同类用户可能拥有的潜在兴趣,使得本申请的应用推荐更加有效。
2)相较于未对用户特征进行矩阵分解的算法而言,本申请通过对用户特征矩阵进行矩阵分解,不仅可以去除数据中的冗余特征以及表示能力不强的特征,使得本申请的应用推荐更加优质,而且可以对用户特征实现降维,从而使得运行更加高效。所以,对用户特征矩阵进行矩阵分解相较于不进行矩阵分解的算法而言,用户特征更加精炼,且运行更加高效。
3)相较于没有考虑用户所处情境的算法而言,本申请通过考虑用户所处情境信息,可以为用户进行更有效的应用推荐。
4)相较于利用用户情境信息分析所推荐产品的算法而言,本申请通过利用用户情境信息分析用户喜好特征信息,从而辅助本申请的应用推荐可以更好地获取用户喜好,并为用户更好地推荐应用。
5)相较于使用评分、评价等信息作为用户情境信息的算法而言,本申请采用用户对应用的点击以及停留时长等作为情境信息。充分避免了用户没有对应用进行评分评价或不同用户打分尺度差异大等弊端,本申请所选用的情境信息无需用户做特殊操作,容易获取,且不存在尺度标准不一致的问题。
虽然本发明参照当前的较佳实施方式进行了描述,但本领域的技术人员应能理解,上述较佳实施方式仅用来说明本发明,并非用来限定本发明的保护范围,任何在本发明的精神和原则范围之内,所做的任何修饰、等效替换、改进等,均应包含在本发明的权利保护范围之内。
Claims (10)
1.一种应用推荐方法,其特征在于,该方法包括如下步骤:
a.利用矩阵分解算法对包含用户特征的用户特征矩阵进行矩阵分解得到降维去噪的用户特征;
b.对矩阵分解后得到的用户特征利用层次聚类算法进行聚类操作,使得拥有相似用户特征的用户被聚类至同一用户类内,使用每个用户类的均值向量作为该用户类中的用户特征;
c.根据矩阵分解及聚类操作后的用户特征、用户所处情境特征以及应用特征,利用贝叶斯模型预测各个应用被推荐的概率,生成预测概率降序的应用推荐列表。
2.如权利要求1所述的方法,其特征在于,该方法还包括步骤:
d.根据应用推荐数据集计算召回率,利用贝叶斯优化网格搜索算法对层次聚类算法中所需要的参数进行自动调优以对所述召回率进行优化。
3.如权利要求2所述的方法,其特征在于:
所述用户特征包括:年龄、性别、所在地、兴趣;
所述矩阵分解算法包括:隐含语义分析矩阵分解算法、奇异值矩阵分解算法,非负矩阵分解算法,神经网络分解机算法。
4.如权利要求3所述的方法,其特征在于,所述的层次聚类算法具体包括如下步骤:
将每一个用户都初始化为一个叶子节点,即一个用户一个组;
在每一次迭代中,计算各组均值向量之间的欧氏距离;然后,合并欧氏距离最近的用户组,使得聚类产生的各用户组的均值向量之间的距离最小为λ;
不断进行迭代合并,直到迭代的终止条件达成:各个组的均值向量之间的距离都大于等于距离阈值λ。
7.一种应用推荐系统,其特征在于,该系统包括分解模块、聚类模块以及推荐模块,其中:
所述分解模块用于利用矩阵分解算法对包含用户特征的用户特征矩阵进行矩阵分解得到降维去噪的用户特征;
所述聚类模块用于对矩阵分解后得到的用户特征利用层次聚类算法进行聚类操作,使得拥有相似用户特征的用户被聚类至同一用户类内,使用每个用户类的均值向量作为该用户类中的用户特征;
所述推荐模块用于根据矩阵分解及聚类操作后的用户特征、用户所处情境特征以及应用特征,利用贝叶斯模型预测各个应用被推荐的概率,生成预测概率降序的应用推荐列表。
8.如权利要求7所述的系统,其特征在于,所述系统还包括:
优化模块,用于根据应用推荐数据集计算召回率,利用贝叶斯优化网格搜索算法对层次聚类算法中所需要的参数进行自动调优以对所述召回率进行优化。
9.一种终端,其特征在于,所述终端包括处理器、与所述处理器耦接的存储器,其中,
所述存储器存储有用于实现权利要求1-6任一项所述的应用推荐方法的程序指令;
所述处理器用于执行所述存储器存储的所述程序指令以进行应用推荐。
10.一种存储介质,其特征在于,存储有处理器可运行的程序指令,所述程序指令用于执行权利要求1至6任一项所述的应用推荐方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110367692.3A CN113158039A (zh) | 2021-04-06 | 2021-04-06 | 应用推荐方法、系统、终端以及存储介质 |
PCT/CN2021/138552 WO2022213662A1 (zh) | 2021-04-06 | 2021-12-15 | 应用推荐方法、系统、终端以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110367692.3A CN113158039A (zh) | 2021-04-06 | 2021-04-06 | 应用推荐方法、系统、终端以及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113158039A true CN113158039A (zh) | 2021-07-23 |
Family
ID=76888837
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110367692.3A Pending CN113158039A (zh) | 2021-04-06 | 2021-04-06 | 应用推荐方法、系统、终端以及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN113158039A (zh) |
WO (1) | WO2022213662A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022213662A1 (zh) * | 2021-04-06 | 2022-10-13 | 深圳先进技术研究院 | 应用推荐方法、系统、终端以及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108108453A (zh) * | 2017-12-28 | 2018-06-01 | 北京奇虎科技有限公司 | 应用信息的推荐方法及装置 |
CN108763515A (zh) * | 2018-05-31 | 2018-11-06 | 天津理工大学 | 一种基于概率矩阵分解的时间敏感个性化推荐方法 |
CN109410075A (zh) * | 2018-10-23 | 2019-03-01 | 广州市勤思网络科技有限公司 | 基于贝叶斯的智能保险推荐方法与系统 |
CN109840833A (zh) * | 2019-02-13 | 2019-06-04 | 苏州大学 | 贝叶斯协同过滤推荐方法 |
CN110765364A (zh) * | 2019-10-22 | 2020-02-07 | 哈尔滨理工大学 | 基于局部优化降维和聚类的协同过滤方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8037007B2 (en) * | 2008-04-25 | 2011-10-11 | Samsung Electronics Co., Ltd. | Situation-aware thresholding for recommendation |
CN103093376B (zh) * | 2013-01-16 | 2020-02-14 | 北京邮电大学 | 基于奇异值分解算法的聚类协同过滤推荐系统 |
CN103744917B (zh) * | 2013-12-27 | 2018-04-06 | 东软集团股份有限公司 | 混合推荐方法及系统 |
CN111798259A (zh) * | 2019-04-09 | 2020-10-20 | Oppo广东移动通信有限公司 | 应用推荐方法、装置、存储介质及电子设备 |
CN111368210B (zh) * | 2020-05-27 | 2020-11-27 | 腾讯科技(深圳)有限公司 | 基于人工智能的信息推荐方法、装置以及电子设备 |
CN113158039A (zh) * | 2021-04-06 | 2021-07-23 | 深圳先进技术研究院 | 应用推荐方法、系统、终端以及存储介质 |
-
2021
- 2021-04-06 CN CN202110367692.3A patent/CN113158039A/zh active Pending
- 2021-12-15 WO PCT/CN2021/138552 patent/WO2022213662A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108108453A (zh) * | 2017-12-28 | 2018-06-01 | 北京奇虎科技有限公司 | 应用信息的推荐方法及装置 |
CN108763515A (zh) * | 2018-05-31 | 2018-11-06 | 天津理工大学 | 一种基于概率矩阵分解的时间敏感个性化推荐方法 |
CN109410075A (zh) * | 2018-10-23 | 2019-03-01 | 广州市勤思网络科技有限公司 | 基于贝叶斯的智能保险推荐方法与系统 |
CN109840833A (zh) * | 2019-02-13 | 2019-06-04 | 苏州大学 | 贝叶斯协同过滤推荐方法 |
CN110765364A (zh) * | 2019-10-22 | 2020-02-07 | 哈尔滨理工大学 | 基于局部优化降维和聚类的协同过滤方法 |
Non-Patent Citations (13)
Title |
---|
SUBHASH K. SHINDE, ET AL.: "Hybrid personalized recommender system using centering-bunching based clustering algorithm", 《EXPERT SYSTEMS WITH APPLICATIONS 》 * |
俞辉: "基于改进LSA的文档聚类算法", 《小型微型计算机系统》 * |
刘忠宝: "机器学习方法在个性化推荐系统中的应用", 《情报探索》 * |
宫秀军等: "基于Bayes潜在语义模型的半监督Web挖掘", 《软件学报》 * |
庞军: "双聚类算法及其在协同过滤中的应用研究", 《中国优秀硕士学位论文全文数据库信息科技辑》 * |
李红梅等: "搜索引擎中的聚类浏览技术", 《中文信息学报》 * |
柳益君等: "基于机器学习的高校图书馆个性化智能推荐服务方案", 《图书馆研究与工作》 * |
浦路平等: "基于PCA和K-均值聚类的有监督分裂层次聚类方法", 《计算机应用研究》 * |
牛在森等: "融合层次聚类和粒子群优化的鲁棒推荐算法", 《小型微型计算机系统》 * |
王海艳等: "基于动态卷积概率矩阵分解的潜在群组推荐", 《计算机研究与发展》 * |
蔡海尼等: "基于时序模型和矩阵分解的推荐算法", 《计算机应用研究》 * |
赵紫娟等: "基于LDA的复杂网络整体研究态势主题分析", 《电子科技大学学报》 * |
陈希等: "基于降维和聚类的协同过滤推荐算法", 《计算机技术与发展》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022213662A1 (zh) * | 2021-04-06 | 2022-10-13 | 深圳先进技术研究院 | 应用推荐方法、系统、终端以及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2022213662A1 (zh) | 2022-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110321422B (zh) | 在线训练模型的方法、推送方法、装置以及设备 | |
CN110457581B (zh) | 一种资讯推荐方法、装置、电子设备及存储介质 | |
CN107423442B (zh) | 基于用户画像行为分析的应用推荐方法及系统,储存介质及计算机设备 | |
US11544474B2 (en) | Generation of text from structured data | |
CN110069709B (zh) | 意图识别方法、装置、计算机可读介质及电子设备 | |
US11315032B2 (en) | Method and system for recommending content items to a user based on tensor factorization | |
CN110543598B (zh) | 信息推荐方法、装置及终端 | |
US9176969B2 (en) | Integrating and extracting topics from content of heterogeneous sources | |
US10380649B2 (en) | System and method for logistic matrix factorization of implicit feedback data, and application to media environments | |
US20220405641A1 (en) | Method for recommending information, recommendation server, and storage medium | |
CN111881343A (zh) | 信息推送方法、装置、电子设备及计算机可读存储介质 | |
US20220172260A1 (en) | Method, apparatus, storage medium, and device for generating user profile | |
CN112307332B (zh) | 基于用户画像聚类的协同过滤推荐方法、系统及存储介质 | |
CN109829154B (zh) | 基于语义的人格预测方法、用户设备、存储介质及装置 | |
US20230351147A1 (en) | Recommendation method and apparatus, and method and apparatus for publishing online prediction model | |
CN113536139A (zh) | 基于兴趣的内容推荐方法、装置、计算机设备及存储介质 | |
CN111209469A (zh) | 一种个性化推荐方法、装置、计算机设备及存储介质 | |
CN113961823B (zh) | 新闻推荐方法、系统、存储介质及设备 | |
CN115631012A (zh) | 目标推荐方法及装置 | |
WO2022213662A1 (zh) | 应用推荐方法、系统、终端以及存储介质 | |
CN114547257B (zh) | 类案匹配方法、装置、计算机设备及存储介质 | |
CN111190967A (zh) | 用户多维度数据处理方法、装置及电子设备 | |
CN116129881A (zh) | 语音任务处理方法、装置、电子设备及存储介质 | |
Bayati et al. | Speed up the cold-start learning in two-sided bandits with many arms | |
Alabdulrahman et al. | Active learning and deep learning for the cold-start problem in recommendation system: A comparative study |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210723 |
|
RJ01 | Rejection of invention patent application after publication |