CN111914181A - 基于矩阵分解的物品推荐方法、系统及相关组件 - Google Patents

基于矩阵分解的物品推荐方法、系统及相关组件 Download PDF

Info

Publication number
CN111914181A
CN111914181A CN202010848479.XA CN202010848479A CN111914181A CN 111914181 A CN111914181 A CN 111914181A CN 202010848479 A CN202010848479 A CN 202010848479A CN 111914181 A CN111914181 A CN 111914181A
Authority
CN
China
Prior art keywords
matrix
hyper
parameter
user
partial derivative
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.)
Granted
Application number
CN202010848479.XA
Other languages
English (en)
Other versions
CN111914181B (zh
Inventor
苏映滨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Moshi Technology Co ltd
Original Assignee
Shenzhen Moshi Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Moshi Technology Co ltd filed Critical Shenzhen Moshi Technology Co ltd
Priority to CN202010848479.XA priority Critical patent/CN111914181B/zh
Publication of CN111914181A publication Critical patent/CN111914181A/zh
Application granted granted Critical
Publication of CN111914181B publication Critical patent/CN111914181B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Business, Economics & Management (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Optimization (AREA)
  • Accounting & Taxation (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Finance (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Software Systems (AREA)
  • Algebra (AREA)
  • Computing Systems (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

本发明公开了基于矩阵分解的物品推荐方法、系统及相关组件,该方法包括:获取用户与物品的N*M维输入矩阵R,并将矩阵分解为N*K维的第一矩阵P和K*M维的第二矩阵Q,其中,
Figure DDA0002643908450000011
将第一矩阵对应的用户的特征信息,以及第二矩阵对应的物品的特征信息加入至输入矩阵中,得到目标矩阵;对目标矩阵中的超参数进行偏导数求解,并利用随机梯度下降算法获取超参数的次优解,从而得到每个超参数的更新方式;根据更新方式求得每个超参数的值,然后根据每个超参数的值完成输入矩阵的分解;基于分解后的矩阵,根据物品与物品的相似度或者用户与用户的相似度为用户推荐物品。本发明可有效提高矩阵分解的效率和质量,进而提高物品推荐的效率和准确度。

Description

基于矩阵分解的物品推荐方法、系统及相关组件
技术领域
本发明涉及推荐系统技术领域,特别涉及基于矩阵分解的物品推荐方法、系统及相关组件。
背景技术
矩阵分解技术在推荐系统中具有广泛的应用,基于特征的矩阵分解由于带有更丰富的用户与物品特征,其应用效果与范围更加广泛,但是由于当前的算法SVD Feature(一种解决基于特征的矩阵分解工具包,SVD即为奇异值分解)的特征权重均需要预先设定好,由此会导致调整超参数非常困难且耗时,并且由于不同用户与物品在不同特征上的权重不同,从而导致应用效果大打折扣。
发明内容
本发明实施例提供了一种基于矩阵分解的物品推荐方法、系统、计算机设备及存储介质,旨在提高矩阵分解效率和质量,进而提高物品推荐效率和准确度。
第一方面,本发明实施例提供了一种基于矩阵分解的物品推荐方法,所述方法包括:
获取用户与物品的N*M维输入矩阵R,并将所述矩阵分解为N*K维的第一矩阵P和K*M维的第二矩阵Q,其中,
Figure BDA0002643908430000011
将所述第一矩阵对应的用户的特征信息,以及所述第二矩阵对应的物品的特征信息加入至所述输入矩阵中,得到目标矩阵:
Figure BDA0002643908430000012
式中,
Figure BDA0002643908430000013
表示的是
Figure BDA0002643908430000014
第i行、第j列的元素值,px和qx分别表示用户i和物品j的向量,K表示向量的维度,pxk表示用户i的向量px的第k个元素,qxk表示物品j的向量的第k个元素,αix表示用户i第x个特征的权重,βjx表示物品j第x个特征的权重,m表示用户i的向量个数,n表示物品j的向量个数;
对所述目标矩阵中的超参数进行偏导数求解,并利用随机梯度下降算法获取所述超参数的次优解,从而得到每个超参数的更新方式;
根据所述更新方式求得每个超参数的值,然后根据所述每个超参数的值完成所述输入矩阵的分解;
基于分解后的矩阵,根据物品与物品的相似度或者用户与用户的相似度为用户推荐物品。
进一步的,所述将所述第一矩阵对应的用户的特征信息,以及所述第二矩阵对应的物品的特征信息加入至所述输入矩阵中,得到目标矩阵,包括:
将用户的特征信息以及物品的特征信息分别加入至所述第一矩阵和第二矩阵中,得到第三矩阵:
Figure BDA0002643908430000021
根据用户的特征信息以及所述特征信息对应的权重对所述第三矩阵中的超参数进行替换,从而得到所述目标矩阵。
进一步的,所述对所述目标矩阵中的超参数进行偏导数求解,并利用随机梯度下降算法获取所述超参数的次优解,从而得到每个超参数的更新方式,包括:
对每个超参数在偏导数为0的位置进行最小化取值,得到每个超参数的偏导数:
Figure BDA0002643908430000022
Figure BDA0002643908430000023
Figure BDA0002643908430000024
Figure BDA0002643908430000025
式中,
Figure BDA0002643908430000026
为pxik的偏导数,
Figure BDA0002643908430000027
为qxjk的偏导数,
Figure BDA0002643908430000028
为αix的偏导数,
Figure BDA0002643908430000029
为βjx的偏导数。
进一步的,所述对每个超参数在偏导数为0的位置进行最小化取值,得到每个超参数的偏导数之后,包括:
利用随机梯度下降算法对每个超参数进行偏导反向更新,得到每个超参数的次优解,从而得到每个超参数的更新方式:
Figure BDA0002643908430000031
Figure BDA0002643908430000032
Figure BDA0002643908430000033
Figure BDA0002643908430000034
式中,p’xik为pxik的偏导数,q’xjk为qxjk的偏导数,α’ix为αix的偏导数,β’jx为βjx的偏导数。
进一步的,所述利用随机梯度下降算法对每个超参数进行偏导反向更新,得到每个超参数的次优解,从而得到每个超参数的更新方式,包括:
对每个超参数进行随机初始化,并根据所述更新方式对每个超参数进行更新;
计算每个超参数的更新方式的均方根误差,当所述超参数的更新方法的均方根误差小于预设阈值时,则将其作为最终参数;当所述均方根误差大于或者等于预设阈值时,则利用所述更新方法对所述超参数再次进行更新。
进一步的,所述根据所述更新方式求得每个超参数的值,然后根据所述每个超参数的值完成所述输入矩阵的分解,包括:
按照下列公式对所有超参数之和的最小值进行求解,从而完成所述输入矩阵的分解:
Figure BDA0002643908430000035
进一步的,所述对每个超参数在偏导数为0的位置进行最小化取值,得到每个超参数的偏导数,包括:
通过优化理论确定所述每个超参数的偏导数最小化取值为0。
第二方面,本发明实施例提供了一种基于矩阵分解的物品推荐系统,所述装置包括:
获取单元,用于获取用户与物品的N*M维输入矩阵R,并将所述矩阵分解为N*K维的第一矩阵P和K*M维的第二矩阵Q,其中,
Figure BDA0002643908430000041
第一加入单元,用于将所述第一矩阵对应的用户的特征信息,以及所述第二矩阵对应的物品的特征信息加入至所述输入矩阵中,得到目标矩阵:
Figure BDA0002643908430000042
式中,
Figure BDA0002643908430000043
表示的是
Figure BDA0002643908430000044
第i行、第j列的元素值,px和qx分别表示用户i和物品j的向量,K表示向量的维度,pxk表示用户i的向量px的第k个元素,qxk表示物品j的向量的第k个元素,αix表示用户i第x个特征的权重,βjx表示物品j第x个特征的权重,m表示用户i的向量个数,n表示物品j的向量个数;
第一求解单元,用于对所述目标矩阵中的超参数进行偏导数求解,并利用随机梯度下降算法获取所述超参数的次优解,从而得到每个超参数的更新方式;
第二求解单元,用于根据所述更新方式求得每个超参数的值,然后根据所述每个超参数的值完成所述输入矩阵的分解;
推荐单元,用于基于分解后的矩阵,根据物品与物品的相似度或者用户与用户的相似度为用户推荐物品。
第三方面,本发明实施例提供了一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的基于矩阵分解的物品推荐方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的基于矩阵分解的物品推荐方法。
本发明实施例提供了一种基于矩阵分解的物品推荐方法、系统、计算机设备及存储介质,所述方法包括:获取用户与物品的N*M维输入矩阵R,并将所述矩阵分解为N*K维的第一矩阵P和K*M维的第二矩阵Q,其中,
Figure BDA0002643908430000045
Figure BDA0002643908430000046
将所述第一矩阵对应的用户的特征信息,以及所述第二矩阵对应的物品的特征信息加入至所述输入矩阵中,得到目标矩阵;对所述目标矩阵中的超参数进行偏导数求解,并利用随机梯度下降算法获取所述超参数的次优解,从而得到每个超参数的更新方式;根据所述更新方式求得每个超参数的值,然后根据所述每个超参数的值完成所述输入矩阵的分解;基于分解后的矩阵,根据物品与物品的相似度或者用户与用户的相似度为用户推荐物品。本发明实施例通过自适应地计算出矩阵分解过程中各个特征向量的权重,一方面避免对多超参数的繁琐调参过程,另一方面可提高特征矩阵分解结果的质量,从而提高物品推荐的效率和准确度。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种基于矩阵分解的物品推荐方法的流程示意图;
图2为本发明实施例提供的一种基于矩阵分解的物品推荐系统的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
下面请参见图1,图1为本发明实施例提供的一种基于矩阵分解的物品推荐系统的流程示意图,具体包括:步骤S101~S105。
S101、获取用户与物品的N*M维输入矩阵R,并将所述矩阵分解为N*K维的第一矩阵P和K*M维的第二矩阵Q,其中,
Figure BDA0002643908430000061
S102、将所述第一矩阵对应的用户的特征信息,以及所述第二矩阵对应的物品的特征信息加入至所述输入矩阵中,得到目标矩阵:
Figure BDA0002643908430000062
式中,
Figure BDA0002643908430000063
表示的是
Figure BDA0002643908430000064
第i行、第j列的元素值,px和qx分别表示用户i和物品j的向量,K表示向量的维度,pxk表示用户i的向量px的第k个元素,qxk表示物品j的向量的第k个元素,αix表示用户i第x个特征的权重,βjx表示物品j第x个特征的权重,m表示用户i的向量个数,n表示物品j的向量个数;
S103、对所述目标矩阵中的超参数进行偏导数求解,并利用随机梯度下降算法获取所述超参数的次优解,从而得到每个超参数的更新方式;
S104、根据所述更新方式求得每个超参数的值,然后根据所述每个超参数的值完成所述输入矩阵的分解;
S105、基于分解后的矩阵,根据物品与物品的相似度或者用户与用户的相似度为用户推荐物品。
本实施例所提供的基于矩阵分解的物品推荐方法在进行矩阵分解的过程中,首先将用户与物品的输入矩阵分解为维度较低的第一矩阵和第二矩阵,然后为了丰富用户与物品的特征,将用户与物品的特征信息一并加入,从而得到所述目标矩阵,再利用随机梯度下降算法以及偏导数计算等技术得到所述目标矩阵中的超参数的值,进而完成矩阵分解,并基于分解后的矩阵向用户推荐物品。
在利用推荐算法向用户推荐物品时,需要对用户或者物品进行矩阵分解,得到用户与用户之间的相似度,或者物品与物品之间的相似度,从而根据相似度向用户推荐物品。但是当用户与物品的特征纬度较多时,矩阵分解中的超参数的组合将会非常多,例如假设每个超参数有1000个可能的取值,用户特征为100,物品特征为100,那么超参数组合总共有:1000*100*100=1000万种可能,因此要在1000万种可能中找到最优的超参数组合将非常费时费力。而本实施例实施例通过自适应地计算出矩阵分解过程中各个特征向量的权重,一方面避免了对多超参数的繁琐调参过程,另一方面可提高特征矩阵分解结果的质量,从而提高物品推荐的效率和准确度。
在一具体实施例中,在基于用户-物品的评分矩阵的物品推荐中,通过本实施例提供的基于矩阵分解的物品推荐方法对所述评分矩阵中的未知评分进行求解预测,并根据预测评分的高低向用户推荐物品。
在一实施例中,所述步骤S102包括:
将用户的特征信息以及物品的特征信息分别加入至所述第一矩阵和第二矩阵中,得到第三矩阵:
Figure BDA0002643908430000071
根据用户的特征信息以及所述特征信息对应的权重对所述第三矩阵中的超参数进行替换,从而得到所述目标矩阵。
本实施例中,首先将用户的特征信息和物品的特征信息分别加入输入矩阵分解后的第一矩阵和第二矩阵中,并得到所述第三矩阵,然后再根据特征信息所对应的权重将第三矩阵中的超参数(即αj和βj)替换为包含权重的超参数(即αix和βjx),并将更换超参数后的第三矩阵称之为目标矩阵。
在一实施例中,所述步骤S103包括:
对每个超参数在偏导数为0的位置进行最小化取值,得到每个超参数的偏导数:
Figure BDA0002643908430000072
Figure BDA0002643908430000073
Figure BDA0002643908430000074
Figure BDA0002643908430000075
式中,
Figure BDA0002643908430000081
为pxik的偏导数,
Figure BDA0002643908430000082
为qxjk的偏导数,
Figure BDA0002643908430000083
为αix的偏导数,
Figure BDA0002643908430000084
为βjx的偏导数。
本实施例中,对每个超参数取值为0的位置进行偏导数计算,从而可以计算得到每个超参数的最小偏导数。
在一实施例中,所述对每个超参数在偏导数为0的位置进行最小化取值,得到每个超参数的偏导数之后,包括:
利用随机梯度下降算法对每个超参数进行偏导反向更新,得到每个超参数的次优解,从而得到每个超参数的更新方式:
Figure BDA0002643908430000085
Figure BDA0002643908430000086
Figure BDA0002643908430000087
Figure BDA0002643908430000088
式中,p’xik为pxik的偏导数,q’xjk为qxjk的偏导数,α’ix为αix的偏导数,β’jx为βjx的偏导数。
本实施例中,在计算得到每个超参数偏导数之后,根据随机梯度下降算法,在给定学习率的条件下,逐渐往偏导反方向进行更新,可以最终得到每个超参数对应的次优解,从而获得每个超参数的更新方式。在一具体应用场景中,所述学习率η的取值范围为0.001~0.1。
在一实施例中,所述利用随机梯度下降算法对每个超参数进行偏导反向更新,得到每个超参数的次优解,从而得到每个超参数的更新方式,包括:
对每个超参数进行随机初始化,并根据所述更新方式对每个超参数进行更新;
计算每个超参数的更新方式的均方根误差,当所述超参数的更新方法的均方根误差小于预设阈值时,则将其作为最终参数;当所述均方根误差大于或者等于预设阈值时,则利用所述更新方法对所述超参数再次进行更新。
本实施例中,在利用随机梯度下降算法对每个超参数进行更新时,首先将每个超参数随机初始化,得到对应的初始值,然后利用每个超参数的更新方式对对应的初始值进行更新计算,得到对应的更新结果。判断每次得到的更新结果的均方根误差(RMSE值),当均方根误差小于预设阈值时,则判定更新结果即为最终的参数结果。
在一实施例中,所述步骤S104包括:
按照下列公式对所有超参数之和的最小值进行求解,从而完成所述输入矩阵的分解:
Figure BDA0002643908430000091
本实施例中,可以将求解最优的超参数理解为求解所有超参数之和的最小值,因此本实施例通过定义一损失函数(即平方项损失)对所有超参数之和的最小值进行求解,从而得到最优的超参数。
在一实施例中,所述对每个超参数在偏导数为0的位置进行最小化取值,得到每个超参数的偏导数,包括:
通过优化理论确定所述每个超参数的偏导数最小化取值为0。
本实施例中,由于在对所有超参数之和的最小值进行求解时所采用的计算公式为凸函数,因此根据优化理论可以确定极小值在偏导数为0的位置,因而在计算每个超参数的偏导数时,最小化取值位置为0。
图2为本发明实施例提供的一种基于矩阵分解的物品推荐装置200的示意性框图,该物品推荐装置200包括:
获取单元201,用于获取用户与物品的N*M维输入矩阵R,并将所述矩阵分解为N*K维的第一矩阵P和K*M维的第二矩阵Q,其中,
Figure BDA0002643908430000092
第一加入单元202,用于将所述第一矩阵对应的用户的特征信息,以及所述第二矩阵对应的物品的特征信息加入至所述输入矩阵中,得到目标矩阵:
Figure BDA0002643908430000093
式中,
Figure BDA0002643908430000094
表示的是
Figure BDA0002643908430000095
第i行、第j列的元素值,px和qx分别表示用户i和物品j的向量,K表示向量的维度,pxk表示用户i的向量px的第k个元素,qxk表示物品j的向量的第k个元素,αix表示用户i第x个特征的权重,βjx表示物品j第x个特征的权重,m表示用户i的向量个数,n表示物品j的向量个数;
第一求解单元203,用于对所述目标矩阵中的超参数进行偏导数求解,并利用随机梯度下降算法获取所述超参数的次优解,从而得到每个超参数的更新方式;
第二求解单元204,用于根据所述更新方式求得每个超参数的值,然后根据所述每个超参数的值完成所述输入矩阵的分解;
推荐单元205,用于基于分解后的矩阵,根据物品与物品的相似度或者用户与用户的相似度为用户推荐物品。
在一实施例中,所述第一加入单元202包括:
第二加入单元,用于将用户的特征信息以及物品的特征信息分别加入至所述第一矩阵和第二矩阵中,得到第三矩阵:
Figure BDA0002643908430000101
替换单元,用于根据用户的特征信息以及所述特征信息对应的权重对所述第三矩阵中的超参数进行替换,从而得到所述目标矩阵。
在一实施例中,所述第一求解单元203包括:
最小化权值单元,用于对每个超参数在偏导数为0的位置进行最小化取值,得到每个超参数的偏导数:
Figure BDA0002643908430000102
Figure BDA0002643908430000103
Figure BDA0002643908430000104
Figure BDA0002643908430000105
式中,
Figure BDA0002643908430000106
为pxik的偏导数,
Figure BDA0002643908430000107
为qxjk的偏导数,
Figure BDA0002643908430000108
为αix的偏导数,
Figure BDA0002643908430000109
为βjx的偏导数。
在一实施例中,所述最小化取值单元之后,包括:
反向更新单元,用于利用随机梯度下降算法对每个超参数进行偏导反向更新,得到每个超参数的次优解,从而得到每个超参数的更新方式:
Figure BDA0002643908430000111
Figure BDA0002643908430000112
Figure BDA0002643908430000113
Figure BDA0002643908430000114
式中,p’xik为pxik的偏导数,q’xjk为qxjk的偏导数,α’ix为αix的偏导数,β’jx为βjx的偏导数。
在一实施例中,所述反向更新单元包括:
初始化单元,用于对每个超参数进行随机初始化,并根据所述更新方式对每个超参数进行更新;
计算单元,用于计算每个超参数的更新方式的均方根误差,当所述超参数的更新方法的均方根误差小于预设阈值时,则将其作为最终参数;当所述均方根误差大于或者等于预设阈值时,则利用所述更新方法对所述超参数再次进行更新。
在一实施例中,所述第二求解单元204包括:
第三求解单元,用于按照下列公式对所有超参数之和的最小值进行求解,从而完成所述输入矩阵的分解:
Figure BDA0002643908430000115
在一实施例中,所述最小化取值单元包括:
优化理论单元,用于通过优化理论确定所述每个超参数的偏导数最小化取值为0。
由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
本发明实施例还提供了一种计算机可读存储介质,其上存有计算机程序,该计算机程序被执行时可以实现上述实施例所提供的步骤。该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明实施例还提供了一种计算机设备,可以包括存储器和处理器,存储器中存有计算机程序,处理器调用存储器中的计算机程序时,可以实现上述实施例所提供的步骤。当然计算机设备还可以包括各种网络接口,电源等组件。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的状况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (10)

1.一种基于矩阵分解的物品推荐方法,其特征在于,包括:
获取用户与物品的N*M维输入矩阵R,并将所述矩阵分解为N*K维的第一矩阵P和K*M维的第二矩阵Q,其中,
Figure FDA0002643908420000011
将所述第一矩阵对应的用户的特征信息,以及所述第二矩阵对应的物品的特征信息加入至所述输入矩阵中,得到目标矩阵:
Figure FDA0002643908420000012
式中,
Figure FDA0002643908420000013
表示的是
Figure FDA0002643908420000014
第i行、第j列的元素值,px和qx分别表示用户i和物品j的向量,K表示向量的维度,pxk表示用户i的向量px的第k个元素,qxk表示物品j的向量的第k个元素,αix表示用户i第x个特征的权重,βjx表示物品j第x个特征的权重,m表示用户i的向量个数,n表示物品j的向量个数;
对所述目标矩阵中的超参数进行偏导数求解,并利用随机梯度下降算法获取所述超参数的次优解,从而得到每个超参数的更新方式;
根据所述更新方式求得每个超参数的值,然后根据所述每个超参数的值完成所述输入矩阵的分解;
基于分解后的矩阵,根据物品与物品的相似度或者用户与用户的相似度为用户推荐物品。
2.根据权利要求1所述的基于矩阵分解的物品推荐方法,其特征在于,所述将所述第一矩阵对应的用户的特征信息,以及所述第二矩阵对应的物品的特征信息加入至所述输入矩阵中,得到目标矩阵,包括:
将用户的特征信息以及物品的特征信息分别加入至所述第一矩阵和第二矩阵中,得到第三矩阵:
Figure FDA0002643908420000015
根据用户的特征信息以及所述特征信息对应的权重对所述第三矩阵中的超参数进行替换,从而得到所述目标矩阵。
3.根据权利要求1所述的基于矩阵分解的物品推荐方法,其特征在于,所述对所述目标矩阵中的超参数进行偏导数求解,并利用随机梯度下降算法获取所述超参数的次优解,从而得到每个超参数的更新方式,包括:
对每个超参数在偏导数为0的位置进行最小化取值,得到每个超参数的偏导数:
Figure FDA0002643908420000021
Figure FDA0002643908420000022
Figure FDA0002643908420000023
Figure FDA0002643908420000024
式中,
Figure FDA0002643908420000025
为pxik的偏导数,
Figure FDA0002643908420000026
为qxjk的偏导数,
Figure FDA0002643908420000027
为αix的偏导数,
Figure FDA0002643908420000028
为βjx的偏导数。
4.根据权利要求3所述的基于矩阵分解的物品推荐方法,其特征在于,所述对每个超参数在偏导数为0的位置进行最小化取值,得到每个超参数的偏导数之后,包括:
利用随机梯度下降算法对每个超参数进行偏导反向更新,得到每个超参数的次优解,从而得到每个超参数的更新方式:
Figure FDA0002643908420000029
Figure FDA00026439084200000210
Figure FDA00026439084200000211
Figure FDA00026439084200000212
式中,p’xik为pxik的偏导数,q’xjk为qxjk的偏导数,α’ix为αix的偏导数,β’jx为βjx的偏导数。
5.根据权利要求4所述的基于矩阵分解的物品推荐方法,其特征在于,所述利用随机梯度下降算法对每个超参数进行偏导反向更新,得到每个超参数的次优解,从而得到每个超参数的更新方式,包括:
对每个超参数进行随机初始化,并根据所述更新方式对每个超参数进行更新;
计算每个超参数的更新方式的均方根误差,当所述超参数的更新方法的均方根误差小于预设阈值时,则将其作为最终参数;当所述均方根误差大于或者等于预设阈值时,则利用所述更新方法对所述超参数再次进行更新。
6.根据权利要求1所述的基于矩阵分解的物品推荐方法,其特征在于,所述根据所述更新方式求得每个超参数的值,然后根据所述每个超参数的值完成所述输入矩阵的分解,包括:
按照下列公式对所有超参数之和的最小值进行求解,从而完成所述输入矩阵的分解:
Figure FDA0002643908420000031
7.根据权利要求3所述的基于矩阵分解的物品推荐方法,其特征在于,所述对每个超参数在偏导数为0的位置进行最小化取值,得到每个超参数的偏导数,包括:
通过优化理论确定所述每个超参数的偏导数最小化取值为0。
8.一种基于矩阵分解的物品推荐系统,其特征在于,包括:
获取单元,用于获取用户与物品的N*M维输入矩阵R,并将所述矩阵分解为N*K维的第一矩阵P和K*M维的第二矩阵Q,其中,
Figure FDA0002643908420000032
第一加入单元,用于将所述第一矩阵对应的用户的特征信息,以及所述第二矩阵对应的物品的特征信息加入至所述输入矩阵中,得到目标矩阵:
Figure FDA0002643908420000033
式中,
Figure FDA0002643908420000034
表示的是
Figure FDA0002643908420000035
第i行、第j列的元素值,px和qx分别表示用户i和物品j的向量,K表示向量的维度,pxk表示用户i的向量px的第k个元素,qxk表示物品j的向量的第k个元素,αix表示用户i第x个特征的权重,βjx表示物品j第x个特征的权重,m表示用户i的向量个数,n表示物品j的向量个数;
第一求解单元,用于对所述目标矩阵中的超参数进行偏导数求解,并利用随机梯度下降算法获取所述超参数的次优解,从而得到每个超参数的更新方式;
第二求解单元,用于根据所述更新方式求得每个超参数的值,然后根据所述每个超参数的值完成所述输入矩阵的分解;
推荐单元,用于基于分解后的矩阵,根据物品与物品的相似度或者用户与用户的相似度为用户推荐物品。
9.一种计算机设备,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的基于矩阵分解的物品推荐方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的基于矩阵分解的物品推荐方法。
CN202010848479.XA 2020-08-21 2020-08-21 基于矩阵分解的物品推荐方法、系统及相关组件 Active CN111914181B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010848479.XA CN111914181B (zh) 2020-08-21 2020-08-21 基于矩阵分解的物品推荐方法、系统及相关组件

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010848479.XA CN111914181B (zh) 2020-08-21 2020-08-21 基于矩阵分解的物品推荐方法、系统及相关组件

Publications (2)

Publication Number Publication Date
CN111914181A true CN111914181A (zh) 2020-11-10
CN111914181B CN111914181B (zh) 2023-10-13

Family

ID=73279177

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010848479.XA Active CN111914181B (zh) 2020-08-21 2020-08-21 基于矩阵分解的物品推荐方法、系统及相关组件

Country Status (1)

Country Link
CN (1) CN111914181B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106980648A (zh) * 2017-02-27 2017-07-25 南京邮电大学 一种基于概率矩阵分解结合相似度的个性化推荐方法
CN107122407A (zh) * 2017-03-24 2017-09-01 首都师范大学 基于特征选择的多领域推荐方法
US20180068371A1 (en) * 2016-09-08 2018-03-08 Adobe Systems Incorporated Learning Vector-Space Representations of Items for Recommendations using Word Embedding Models

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180068371A1 (en) * 2016-09-08 2018-03-08 Adobe Systems Incorporated Learning Vector-Space Representations of Items for Recommendations using Word Embedding Models
CN106980648A (zh) * 2017-02-27 2017-07-25 南京邮电大学 一种基于概率矩阵分解结合相似度的个性化推荐方法
CN107122407A (zh) * 2017-03-24 2017-09-01 首都师范大学 基于特征选择的多领域推荐方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王运;倪静;马刚;: "基于FunkSVD矩阵分解和相似度矩阵的推荐算法", 计算机应用与软件, no. 12 *

Also Published As

Publication number Publication date
CN111914181B (zh) 2023-10-13

Similar Documents

Publication Publication Date Title
US10932003B2 (en) Method and system for making recommendations from binary data using neighbor-score matrix and latent factors
Beck Estimating grouped data models with a binary-dependent variable and fixed effects via a logit versus a linear probability model: The impact of dropped units
Powell Least Frobenius norm updating of quadratic models that satisfy interpolation conditions
Nannen et al. A method for parameter calibration and relevance estimation in evolutionary algorithms
US8000262B2 (en) Method for identifying network similarity by matching neighborhood topology
Gunasegaran et al. Evolutionary cross validation
CN112464057A (zh) 一种网络数据分类方法、装置、设备及可读存储介质
CN112364942B (zh) 信贷数据样本均衡方法、装置、计算机设备及存储介质
Wang et al. An adaptive Kriging method based on K-means clustering and sampling in n-ball for structural reliability analysis
Nevo et al. Identifying a Minimal Class of Models for High--dimensional Data
Zhu et al. Essential formulae for restricted maximum likelihood and its derivatives associated with the linear mixed models
CN112965991A (zh) 预计算结果生成方法、装置、电子设备及存储介质
CN110275881B (zh) 基于哈希嵌入向量向用户推送对象的方法和装置
CN111914181A (zh) 基于矩阵分解的物品推荐方法、系统及相关组件
CN110874615B (zh) 特征聚类处理方法、集群服务器及可读存储介质
Vandebril et al. A QR–method for computing the singular values via semiseparable matrices
Haggag New criteria of model selection and model averaging in linear regression models
Kan et al. Correcting the bias in Monte Carlo estimators of American-style option values
López-Rubio et al. Principal components analysis competitive learning
Ma et al. A gradient descent approach for incomplete linear systems
CN111692833B (zh) 用于冰箱的生成存储间室温度和湿度的方法及其装置
US20220382741A1 (en) Graph embeddings via node-property-aware fast random projection
Yanagimoto Estimating a model through the conditional MLE
Bazaz et al. A stopping criterion for Krylov-subspace based model order reduction techniques
CN111626819B (zh) 一种基于信任相关度的快速矩阵分解推荐方法及系统

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
GR01 Patent grant
GR01 Patent grant