CN104572669B - 推荐系统及其方法 - Google Patents
推荐系统及其方法 Download PDFInfo
- Publication number
- CN104572669B CN104572669B CN201310481308.8A CN201310481308A CN104572669B CN 104572669 B CN104572669 B CN 104572669B CN 201310481308 A CN201310481308 A CN 201310481308A CN 104572669 B CN104572669 B CN 104572669B
- Authority
- CN
- China
- Prior art keywords
- level
- data
- jth
- user
- kth
- 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.)
- Active
Links
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
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
本发明揭露一种推荐系统及其方法。推荐方法包括:提供一本体论数据库,其中该本体论数据库包括多个元素,所述多个元素以一本体论阶层结构排列为N个层级;透过该本体论数据库,储存分别对应于多个使用者的多笔第j层级使用者数据;根据所述第j层级使用者数据,分别产生对应所述使用者的多笔第k层级使用者数据;分群所述第k层级使用者数据;以及根据分群结果以推荐该本体论数据库中的所述元素给所述使用者。
Description
技术领域
本发明是有关于一种推荐技术,且特别是有关于一种推荐系统及其方法。
背景技术
随着信息科技的发展,用以推荐使用者其所感兴趣的信息(例如是商品数据)的推荐系统已广泛地应用在各式电子媒介中。
典型的推荐系统是透过收集使用者数据,分群这些使用者数据,并根据使用者所属的群组以提供推荐信息(例如推荐商品)。如此一来,推荐系统可根据一使用者过去的消费行为将其分类至包括有具相似消费行为的其它使用者的群组中,并根据此一群组中其它使用者的消费行为以推荐此一使用者商品信息。
然而,在实际上,如此的做法常由于使用者数据的数据密度不足(例如,多数使用者仅在大量商品中购买过极少量的商品),而导致分组错误,并造成推荐不精准。
是以,一种改善的推荐系统当被提出。
发明内容
本发明的一目的是在提供一种推荐方法。根据本发明一实施例,推荐方法包括:提供一本体论数据库(ontology database),其中该本体论数据库包括多个元素(entity),所述多个元素以一本体论阶层结构(ontology hierarchy)排列为N个层级(hierarchylevel){L_i},i=1、2、…、N,且N为正整数;透过该本体论数据库,储存分别(respectively)对应于多个使用者的多笔第j层级使用者数据,其中每一所述第j层级使用者数据记录所述层级中一第j层级L_j的至少一个元素;根据所述第j层级使用者数据,分别产生对应所述使用者的多笔第k层级使用者数据,其中每一所述第k层级使用者数据记录所述层级中一第k层级L_k的至少一个元素;分群(cluster)所述第k层级使用者数据;以及根据分群结果以推荐该本体论数据库中的所述元素给所述使用者。
本发明的另一目的是在提供一种推荐系统。根据本发明一实施例,该推荐系统包括一储存模块、一转换模块、一分群模块以及一推荐模块。该储存模块用以储存一本体论数据库。该本体论数据库包括多个元素。所述元素以一本体论阶层结构排列为N个层级{L_i},i=1、2、…、N,N为正整数。该本体论数据库用以储存分别对应于多个使用者的多笔第j层级使用者数据。每一所述第j层级使用者数据用以记录所述层级中一第j层级L_j的至少一个元素。该转换模块用以根据所述第j层级使用者数据,分别产生对应所述使用者的多笔第k层级使用者数据。每一所述第k层级使用者数据记录所述层级中一第k层级L_k的至少一个元素。该分群模块用以分群所述第k层级使用者数据。该推荐模块用以根据分群结果以推荐该本体论数据库中的所述元素给所述使用者。
本发明的又一目的是在提供一种非挥发性计算机可读取记录媒体。根据本发明一实施例,该非挥发性计算机可读取记录媒体储存一计算机程序,用以执行一种应用于推荐系统中的一推荐方法。该推荐方法包括:提供一本体论数据库,其中该本体论数据库包括多个元素,所述元素以一本体论阶层结构排列为N个层级{L_i},i=1、2、…、N,且N为正整数;透过该本体论数据库,储存分别对应于多个使用者的多笔第j层级使用者数据,其中每一所述第j层级使用者数据记录所述层级中一第j层级L_j的至少一个元素;根据所述第j层级使用者数据,分别产生对应所述使用者的多笔第k层级使用者数据,其中每一所述第k层级使用者数据记录所述层级中一第k层级L_k的至少一个元素;分群(cluster)所述第k层级使用者数据;以及根据分群结果以推荐该本体论数据库中的所述元素给所述使用者。
通过在上述一实施例中,以本体论阶层结构排列本体论数据库中的元素,记录本体论数据库中元素的使用者数据可被阶层性地转换。而通过阶层性地转换使用者数据,可调整使用者数据的数据稀疏度。如此一来,将可改善传统推荐系统中使用者数据的数据稀疏问题,而使得分群结果更为精准。
附图说明
图1为根据本发明一实施例所绘示的一种推荐装置的示意图;
图2为根据本发明一实施例所绘示的一种本体论阶层架构的示意图;
图3为根据本发明一操作例所绘示的示意图;
图4为根据本发明另一操作例所绘示的示意图;
图5为根据本发明一实施例所绘示的一种推荐方法的流程图;
图6为根据本发明一实施例所绘示的一种推荐方法的细部流程图;
图7为根据本发明一实施例所绘示的一种推荐方法的细部流程图。
具体实施方式
以下将以附图及详细叙述清楚说明本发明的精神,任何所属技术领域中具有通常知识者在了解本发明的较佳实施例后,当可由本发明所教示的技术,加以改变及修饰,其并不脱离本发明的精神与范围。
关于本文中所使用的“第一”、“第二”、…等,并非特别指称次序或顺位的意思,亦非用以限定本发明,其仅为了区别以相同技术用语描述的元件或操作。
关于本文中所使用的“电性连接”,可指二或多个元件相互直接作实体或电性接触,或是相互间接作实体或电性接触,而“电性连接”还可指二或多个元件相互操作或动作。
关于本文中所使用的方向用语,例如:上、下、左、右、前或后等,仅是参考附加附图的方向。因此,使用的方向用语是用来说明并非用来限制本发明。
关于本文中所使用的用词(terms),除有特别注明外,通常具有每个用词使用在此领域中、在此揭露的内容中与特殊内容中的平常意义。某些用以描述本揭露的用词将于下或在此说明书的别处讨论,以提供本领域技术人员在有关本揭露的描述上额外的引导。
本发明的一实施方式为一种推荐系统。为使说明清楚,在以下段落中,推荐系统将以推荐商品为例进行说明,然而实际上,推荐系统亦可用以推荐地点、网页、信息条目等各式有形(substantial)或抽象(abstract)的元素(entity),是以推荐系统的应用不以下述实施例为限。
图1为根据本发明一实施例所绘示的一种推荐系统100的示意图。推荐系统100包括数据提供接口102、储存模块110、转换模块120、分群模块130以及推荐模块140。数据提供接口102电性连接储存模块110。储存模块110电性连接转换模块120。转换模块120电性连接分群模块130。推荐模块140电性连接分群模块130。当注意到,推荐系统100内各模块间的连接关系不以上述实施例为限,凡足以令推荐系统100实现下述技术内容的连接方式皆可运用于本发明。
在本实施例中,推荐系统100例如但不限于用计算机系统实现。数据提供接口102例如但不限于用键盘、鼠标、网络卡等装置所实现。储存模块110例如但不限于用只读记忆体、快闪记忆体、软盘、硬盘、光盘、随身盘、磁带、可由网络存取的数据库或熟悉此技艺者可轻易思及具有相同功能的计算机可读取记录媒体所实现。转换模块120、分群模块130以及推荐模块140例如但不限于用中央处理器、微处理器、或其它适当处理元件所实现。
在本实施例中,推荐系统100是用以储存多使用者的使用者数据(例如是第1层级使用者数据D_1),并根据这些使用者数据,对使用者进行分群,以依据分群结果(例如是群组G1、G2),推荐例如是商品的元素给这些使用者。
同时参照图2,在本实施例中,推荐系统100的储存模块110包括一本体论数据库112(ontology database)。本体论数据库112包括多个元素I11-I32(entity)。这些元素I11-I32(以例如是图2所示的本体论阶层结构(ontology hierarchy))排列为N个层级(hierarchy level){L_i},i=1、2、…、N,且N为正整数。在本实施例中,N等于3,且所谓N个层级在此为第1层级L_1、第2层级L_2以及第3层级L_3。在本实施例中,第1层级L_1中的元素I11-I18例如是商品,第2层级L_2以及第3层级L_3中的元素I21-I32例如是商品分类(classification)。一个较低层级的元素对应于较高层级的元素中的至少一者。举例而言,第1层级L_1中的红茶I11与绿茶I12对应第2层级L_2中的茶I21,第1层级L_1中的苹果汽水I13与橘子汽水I14对应第2层级L_2中的汽水I22,且第2层级L_2中的茶I21与汽水I22又对应第3层级L_3中的饮料I31。此外,较低层级的元素为其相应的较高层级的元素的下位元素(subordinate entity)。例如,第1层级L_1中的红茶I11与绿茶I12为第2层级L_2中的茶I21的下位元素。
以另一观点而言,单一较高层级的元素可对应多个较低层级的元素。例如,第3层级L_3中的饮料I31对应第2层级L_2中的茶I21与汽水I22。此外,较高层级的元素为其相应的较低层级的元素的上位元素(superordinate entity)。例如,第3层级L_3中的饮料I31为第2层级L_2中的茶I21与汽水I22中的上位元素。
在一实施例中,上述本体论数据库112中的元素I11-I32、层级L_1-L_3及本体论阶层结构例如但不限于根据一商店的商品型录及商品分类所设置,然而上述本体论数据库112中的元素I11-I32、层级L_1-L_3及本体论阶层结构仅为例示,本发明不以此为限。
在本实施例中,推荐系统100的数据提供接口102用以接收并提供多笔分别对应于多个使用者的第1层级(例如,最低层级)使用者数据D_1至本体论数据库112,其中每一第1层级使用者数据D_1记录本体论数据库112中的第1层级L_1的至少一个元素I11-I18。举例而言,每一第1层级使用者数据D_1例如但不限于是记录每一使用者曾经购买过的商品或曾经浏览过的网页等。另一方面,这些第1层级使用者数据D_1例如可用矩阵形式记录,其中使用者的数量例如表示为U,第1层级L_1中的元素的数量例如表示为I_1,且第1层级使用者数据D_1的矩阵的维度例如表示为U×I_1。
在理想情况下,第1层级使用者数据D_1的数据稀疏度低(即数据密度高)(例如是每一使用者曾购买过大量的商品或曾经浏览过大量的网页等),推荐系统100可分群第1层级使用者数据D_1,以将具有相似行为的使用者归类至相同群组,并据以提供推荐信息给使用者。
然而,在多数情况下,第1层级使用者数据D_1的数据稀疏度高(即数据密度低),是以分群第1层级使用者数据D_1并不能可靠地将具有相似行为的使用者归类至相同群组。
因此,为克服数据稀疏度的问题,本发明的推荐系统100是通过前述本体论阶层结构,对第1层级使用者数据D_1进行转换,以产生记录本体论数据库112中较高层级的元素的较高层级使用者数据(例如是第k层级使用者数据D_k)。由于较高层级使用者数据具有较低的数据稀疏度(即较高的数据密度),故分群的准确度可因而被提高。
承上所述,推荐系统100的转换模块120用以根据第1层级使用者数据D_1,分别产生对应前述使用者的多笔第k层级使用者数据D_k,且每一第k层级使用者数据D_k记录本体论数据库112中第k层级L_k的至少一个元素。举例而言,若k为3,则转换模块120即是根据用以记录实际商品(如红茶I11、绿茶I12等)的第1层级使用者数据D_1,产生用以记录商品分类(如饮料I31、服饰I32)的第3层级使用者数据D_3。在一实施例中,第k层级使用者数据D_k的数据稀疏度不大于一第k门槛值。
分群模块130用以分群前述第k层级使用者数据D_k至至少一个群组(如群组G1、G2)。
推荐系统100的推荐模块140用以根据分群模块130的分群结果(如群组G1、G2)以推荐本体论数据库112中的元素I11-I32给使用者。
为使叙述易于了解,以下将同时根据图1-图3举一实际操作例进行说明,然而本发明不以此为限。
在本操作例中,在本体论数据库112储存如图3所示的第1层级使用者数据的情况下,转换模块120计算第1层级使用者数据的数据稀疏度,并判断第1层级使用者数据的数据稀疏度是否大于一第1门槛值。第1层级使用者数据D_1例如记录使用者1-5对元素I11-I18(商品)的购买情况,“1”表示曾经购买,“0”表示不曾购买。例如,在第1层级使用者数据D_1中,使用者1是记录为曾购买过商品中的红茶I11、绿茶I12以及女性T袖I17。
在第1层级使用者数据D_1的数据稀疏度大于第1门槛值的情况下,转换模块120用以将每一第1层级使用者数据D_1所记录的第1层级L_1的元素映射至第2层级L_2的相应的元素,以产生第2层级使用者数据D_2。第2层级使用者数据D_2例如记录使用者1-5对元素I21-I24(商品分类)的购买情况。举例而言,在第2层级使用者数据D_2中,使用者1记录为曾购买过商品分类中的茶I21以及女性服饰I24。亦即,转换模块120是将对应于使用者1的第1层级L_1的红茶I11、绿茶I12以及女性T袖I17对映至第2层级的茶I21以及女性服饰I24。
此时,转换模块120计算第2层级使用者数据D_2的数据稀疏度,并判断第2层级使用者数据D_2的数据稀疏度是否大于第2门槛值,其中第2门槛值可相同或不同于第1门槛值。在第2层级使用者数据D_2的数据稀疏度大于第2门槛值的情况下,转换模块120用以将每一第2层级使用者数据D_2所记录的第2层级L_2的元素映射至第3层级L_3的相应的元素,以产生第3层级使用者数据D_3。第3层级使用者数据D_3例如记录使用者1-5对元素I31-I32(商品分类)的购买情况。例如,在第3层级使用者数据D_3中,使用者1是记录为曾购买过商品分类中的饮料I31以及服饰I32。亦即,转换模块120是将对应于使用者1的第2层级L_2的茶I21以及女性服饰I24对映至第3层级的饮料I31以及服饰I32。
此时,转换模块120计算第3层级使用者数据D_3的数据稀疏度,并判断第3层级使用者数据D_3的数据稀疏度是否大于第3门槛值,其中第3门槛值可相同或不同于第1门槛值与第2门槛值。在第3层级使用者数据D_3的数据稀疏度不大于第3门槛值的情况下,则第3层级使用者数据D_3即为所求的第k层级使用者数据D_k。
简言之,转换模块120是根据本体论阶层结构、第1层级使用者数据D_1的数据稀疏度、第2层级使用者数据D_2的数据稀疏度、第3层级使用者数据D_3的数据稀疏度,将每一第1层级使用者数据D_1所记录的第1层级L_1的元素逐层映射至第k层级L_k的相应的元素,以作为每一第k层级使用者数据所记录的第k层级L_k的至少一个元素。
在产生第k层级使用者数据D_k后,分群模块130即根据分群演算法(clusteringalgorithm),依照第k层级使用者数据D_k之间的相似度分群第k层级使用者数据D_k。在本操作例中,使用者1-3分群至群组G1,且使用者4-5分群至群组G2。
在分群后,推荐模块140即可根据群组G1、G2中的第k层级使用者数据D_k推荐本体论数据库112中的元素I11-I32给前述使用者。
透过上述一实施例中的操作,即可通过分群具较低数据稀疏度的第k层级使用者数据D_k,而改善传统推荐系统中使用者数据的数据稀疏问题,而使得分群与推荐结果更为精准。
此外,透过上述一实施例中的操作,可根据各层级使用者数据的稀疏度,以适应性地产生适合分群的第k层级使用者数据D_k并据以分群,而使得分群机制更为灵活。
在本发明一实施例中,在第x层级使用者数据D_x的数据稀疏度(x为任意正整数,其数值取决于所计算的层级)表示为S_x,使用者的数量表示为U,第x层级L_x中的元素的数量表示为I_x,第x层级使用者数据D_x所记录的第x层级L_x的元素的数量总和表示为R_x,且S_x、U、I_x、R_x符合下式:
S_x=1-(R_x/(U×I_x))。
此外,在本发明一实施例中,转换模块120例如包括稀疏度单元122、第一映射单元124。稀疏度单元122用以计算第x层级使用者数据D_x的数据稀疏度,并判断第x层级使用者数据D_x的数据稀疏度是否大于第x门槛值。在第x层级使用者数据D_x的数据稀疏度大于第x门槛值的情况下,第一映射单元124用以将每一第x层级使用者数据D_x所记录的第x层级L_x的元素映射至第x+1层级的对应的元素。另外,在第x层级使用者数据D_x的数据稀疏度不大于第x门槛值的情况下,第一映射单元124用以用第x层级使用者数据D_x做为第k层级使用者数据D_k,以令分群模块130进行分群。
在以下段落中,将提供推荐模块140根据分群后的第k层级使用者数据D_k进行推荐的具体细节,然而本发明不以下述实施例为限。
在一实施例中,推荐模块140用以在群组G1或群组G2的第k层级使用者数据D_k所记录的第k层级L_k的元素中,透过频繁样式探勘(frequent pattern mining)技术(例如但不限于apriori algorithm)找出第k层级频繁元素。接着,推荐模块140用以根据第k层级频繁元素,在第j层级L_j的元素中找出第j层级频繁元素(j例如是1)。而后,推荐模块140用以推荐第j层级频繁元素给前述群组G1或群组G2中的使用者。
为使叙述易于了解,以下将同时根据图1、图2、图4举一实际操作例进行说明,然而本发明不以此为限。
在本操作例中,在转换模块120产生如图4中的第3层级使用者数据D_3,且分群模块130将第3层级使用者数据D_3分为如图4中的群组G1、G2后,推荐模块140于群组G1中的第3层级使用者数据D_3中,透过频繁样式探勘技术找出第3层级频繁元素,例如是元素I31。举例而言,这代表在群组G1中的第3层级使用者数据D_3中,较多使用者曾经购买商品分类中的饮料I31。
此时,推荐模块140判断第3层级频繁元素是否已为第1层级L_1的元素I11-I18之一。在第3层级频繁元素不为第1层级L_1的元素I11-I18之一的情况下,推荐模块140将第3层级频繁元素(例如是元素I31)映射至第3-(减)1层级(即第2层级)L_2的对应的元素,例如是符号A1所指的元素I21、I22。
接着,推荐模块140于群组G1中的第2层级使用者数据D_2所记录的对应第3层级频繁元素的元素中(例如是元素I21、I22),透过频繁样式探勘技术找出第2层级频繁元素,例如是元素I21。举例而言,这代表在群组G1中的第2层级使用者数据D_2中,较多使用者曾经购买商品分类中的茶I21。
此时,推荐模块140判断第2层级频繁元素是否已为第1层级L_1的元素I11-I18之一。在第2层级频繁元素不为第1层级L_1的元素I11-I18之一的情况下,推荐模块140将第2层级频繁元素(例如是元素I21)映射至第2-1层级(即第1层级)L_1的对应的元素,例如是符号A2所指的元素I11、I12。
接着,推荐模块140例如于群组G1中的第1层级使用者数据D_1中对应第2层级频繁元素的元素中(例如是元素I11、I12),透过频繁样式探勘技术找出第1层级频繁元素,例如是元素I11以及元素I12。举例而言,这代表在群组G1中的第1层级使用者数据D_1中,较多使用者曾经购买商品中的红茶I11与绿茶I12。
此时,推荐模块140判断第1层级频繁元素是否已为第1层级L_1的元素I11-I18之一。由于第1层级频繁元素已为第1层级L_1的元素I11-I18之一,推荐模块140推荐第1层级频繁元素给群组G1中的使用者。
在本操作例中,推荐模块140还判断群组G1中的使用者1-3所对应的第1层级使用者数据是否记录第1层级频繁元素,并据以选择性第1层级频繁元素至使用者1-3。举例而言,由于使用者1-3皆购买过红茶I11,故推荐模块140并不推荐红茶I11给使用者1-3。另一方面,由于使用者3未购买过绿茶I12,故推荐模块140推荐绿茶I12给使用者3。
透过上述实施例,即可根据群组G1、G2中的第k层级使用者数据,找出对应的第1层级频繁元素。借此,在推荐过程中,透过转换模块120所产生的用以记录概念化的商品分类的第k层级使用者数据D_k可转换回用以记录实际商品的第1层级使用者数据D_1。如此一来,通过根据转换后的用以记录实际商品的第1层级使用者数据D_1进行推荐,可精准地推荐所属群组中频繁元素给使用者。
在本发明一实施例中,推荐模块140包括频繁样式探勘单元142、第二映射单元144以及处理单元146。频繁样式探勘单元142用以在第x层级L_x(x为任意正整数,其数值取决于所计算的层级)的部分或所有元素中,透过频繁样式探勘(frequent pattern mining)技术找出第x层级频繁元素。第二映射单元144用以将第x层级频繁元素映射至第x-1层级L_x-1的对应的元素。处理单元146用以判断第x层级频繁元素是否已为第1层级L_1的元素I11-I18之一,并用以在第x层级频繁元素为第1层级L_1的元素的情况下,推荐第1层级频繁元素给群组G1或群组G2中的使用者。
通过应用频繁样式探勘单元142、第二映射单元144以及处理单元146,推荐模块140即可根据群组G1、G2中的第k层级使用者数据,找出对应的第1层级频繁元素,以进行推荐。其中具体的操作细节可参照前述段落,在此不赘述。
此外,当注意到,在一实施例中,推荐系统100可由单一主机实现。于另一实施例中,推荐系统100亦可由一个服务器主机与至少一个远程主机实现。其中远程主机透过网络提供第1层级使用者数据至服务器主机。服务器主机的硬件对第1层级使用者数据进行转换、分群及推荐,并再透过网络,提供推荐的信息至远程主机上。
图5为根据本发明一实施例所绘示的一种推荐方法500的流程图。推荐方法500可应用于如图1所绘示的推荐系统100。此推荐方法500可实作为一计算机程序,并储存于一计算机可读取记录媒体中,而使计算机读取此记录媒体后执行推荐方法500。计算机可读取记录媒体可为只读记忆体、快闪记忆体、软盘、硬盘、光盘、随身盘、磁带、可由网络存取的数据库或熟悉此技艺者可轻易思及具有相同功能的计算机可读取记录媒体。推荐方法500包含下列步骤(应了解到,在本实施方式中所提及的步骤,除特别叙明其顺序者外,均可依实际需要调整其前后顺序,甚至可同时或部分同时执行)。
于步骤S1中,储存模块110提供前述的本体论数据库112。本体论数据库112的具体细节可参照前述段落,在此不赘述。
于步骤S2中,本体论数据库112储存分别对应于多个使用者的第j使用者数据D_j。每一第j层级使用者数据D_j记录第j层级L_j的至少一个元素。在本实施例中,j例如为1。
于步骤S3中,转换模块120根据第j层级使用者数据D_j,分别产生对应前述使用者的多笔第k层级使用者数据D_k,其中每一第k层级使用者数据记录一第k层级L_k的至少一个元素。
在一实施例中,转换模块120是根据本体论数据库112中的本体论阶层结构,将每一第j层级使用者数据D_j所记录的第j层级L_j的元素逐层映射至第k层级L_k的对应的元素,以作为每一第k层级使用者数据D_k所记录的第k层级L_k的至少一个元素,借以产生第k层级使用者数据D_k。
于步骤S4中,分群模块130分群第k层级使用者数据D_k。分群的方法例如是透过本领域已知惯用的分群演算法,在此不赘述。
于步骤S5中,推荐模块140根据分群结果(例如群组G1、G2)以推荐本体论数据库112中的元素给使用者。
当注意到,上述推荐方法500的具体细节可参照前述段落,在此不赘述。
透过应用上述实施例,即可通过分群具较低数据稀疏度的第k层级使用者数据D_k,而改善传统推荐系统中使用者数据的数据稀疏问题,而使得分群与推荐结果更为精准。
图6为根据本发明一实施例所绘示的推荐方法500中的步骤S3的细部流程图。步骤S3包括以下步骤。
在步骤S31中,稀疏度单元122计算第j层级使用者数据D_j的数据稀疏度。
在步骤S32中,稀疏度单元122判断第j层级使用者数据D_j的数据稀疏度是否大于一第j门槛值。若是,进行步骤S34;若否,进行步骤S33。
在步骤S33中,在第j层级使用者数据D_j的数据稀疏度不大于第j门槛值的情况下,第一映射单元124以第j层级使用者数据D_j做为第k层级使用者数据D_k,以在步骤S4中进行分群。
在步骤S34中,在第j层级使用者数据D_j的数据稀疏度大于第j门槛值的情况下,第一映射单元124将每一第j层级使用者数据D_j所记录的第j层级L_j的元素映射至第j+1层级L_j+1的相应的元素,以产生第j+1层级使用者数据D_j+1。
在步骤S341中,稀疏度单元122计算第j+1层级使用者数据D_j+1的数据稀疏度。
在步骤S342中,稀疏度单元122判断第j+1层级使用者数据D_j+1的数据稀疏度是否大于第j+1门槛值,其中第j+1门槛值可相同于或不相同于第j门槛值。若否,进行步骤S343,以第j+1层级使用者数据D_j+1做为第k层级使用者数据D_k,以在步骤S4中进行分群;若是,则再次将每一第j+1层级使用者数据D_j+1所记录的第j+1层级的元素映射至第j+2层级L_j+2的相应的元素,以产生第j+2层级使用者数据D_j+2,直到找到具有不大于第x门槛值(x为任意正整数,其值取决于所计算的层级)的第x层级使用者数据D_x为止。第x门槛值可相同于或不同于第j门槛值以及第j+1门槛值。
透过如上的步骤,即可根据各层级使用者数据的稀疏度,以适应性地产生适合于分群的第k层级使用者数据D_k并据以分群,而使得分群机制更为灵活。
图7为根据本发明一实施例所绘示的推荐方法500中的步骤S5的细部流程图。步骤S5包括以下步骤。
在步骤S51中,频繁样式探勘单元142透过频繁样式探勘技术,在群组G1或群组G2中的第k层级使用者数据D_k所记录的第k层级L_k的元素中,找出第k层级频繁元素。
在步骤S52中,处理单元146判断第k层级频繁元素是否为第j层级L_j中的元素中的一者。若是,则进行步骤S53;若否,则进行步骤S54。
在步骤S53中,在第k层级频繁元素为第j层级L_j中的元素中的一者的情况下,处理单元146以第k层级频繁元素作为第j层级频繁元素,以推荐给对应于群组G1或群组G2中的第k层级使用者数据D_k的使用者。
在步骤S54中,在第k层级频繁元素不为第j层级L_j中的元素中的一者的情况下,第二映射单元144将第k层级频繁元素映射至第k-1层级L_k-1的元素。
在步骤S55中,频繁样式探勘单元142透过频繁样式探勘技术,找出第k层级频繁元素所映射的第k-1层级L_k-1的元素中的第k-1层级频繁元素。
在步骤S551中,处理单元146判断第k-1层级频繁元素是否为第j层级L_j中的元素中的一者。若是,则进行步骤S552,以将第k层级频繁元素作为第j层级频繁元素,推荐给对应于群组G1或群组G2中的第k层级使用者数据D_k的使用者;若否,则第二映射单元144进一步将第k-1层级频繁元素映射至第k-2层级L_k-2的元素,直到找到位于第j层级L_j中的第j层级频繁元素。
透过如上的步骤,在推荐过程中透过转换模块120所产生的用以记录概念化的商品分类的第k层级使用者数据D_k可转换回用以记录实际商品的第1层级使用者数据D_1。如此一来,通过根据转换后的用以记录实际商品的第1层级使用者数据D_1进行推荐,可精准地推荐所属群组中频繁元素给使用者。
虽然本发明已以实施方式揭露如上,然其并非用以限定本发明,任何熟悉此技艺者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰,因此本发明的保护范围当视所附的权利要求书所界定的范围为准。
Claims (18)
1.一种推荐方法,其特征在于,包括:
提供一本体论数据库,其中该本体论数据库包括多个元素,所述多个元素以一本体论阶层结构排列为N个层级{L_i},i=1、2、…、N,且N为正整数;
透过该本体论数据库,储存分别对应于多个使用者的多笔第j层级使用者数据,其中每一所述第j层级使用者数据记录所述层级中一第j层级L_j的至少一个元素;
根据所述第j层级使用者数据,分别产生对应所述使用者的多笔第k层级使用者数据,其中每一所述第k层级使用者数据记录所述层级中一第k层级L_k的至少一个元素;
分群所述第k层级使用者数据;以及
根据分群结果以推荐该本体论数据库中的所述元素给所述使用者。
2.根据权利要求1所述的推荐方法,其特征在于,分别产生对应所述使用者的所述第k层级使用者数据的步骤包括:
根据该本体论阶层结构,将每一所述第j层级使用者数据所记录的该第j层级L_j的元素映射至该第k层级L_k的至少一个元素,以作为每一所述第k层级使用者数据所记录的该第k层级L_k的至少一个元素。
3.根据权利要求1所述的推荐方法,其特征在于,分别产生对应所述使用者的所述第k层级使用者数据的步骤包括:
计算所述第j层级使用者数据的一数据稀疏度;以及
根据所述第j层级使用者数据的该数据稀疏度,以将每一所述第j层级使用者数据所记录的该第j层级L_j的元素映射至该第k层级L_k的至少一个元素。
4.根据权利要求3所述的推荐方法,其特征在于,将每一所述第j层级使用者数据所记录的该第j层级L_j的元素映射至该第k层级L_k的至少一个元素的步骤包括:
判断所述第j层级使用者数据的数据稀疏度是否大于一第j门槛值;以及
在所述第j层级使用者数据的数据稀疏度大于该第j门槛值的情况下,将每一所述第j层级使用者数据所记录的该第j层级L_j的元素映射至所述层级中的一第j+1层级L_j+1的至少一个元素。
5.根据权利要求4所述的推荐方法,其特征在于,将每一所述第j层级使用者数据所记录的该第j层级L_j的元素映射至该第k层级L_k的至少一个元素的步骤还包括:
在所述第j层级使用者数据的数据稀疏度不大于该第j门槛值的情况下,以所述第j层级使用者数据做为所述第k层级使用者数据。
6.根据权利要求3所述的推荐方法,其特征在于,所述第j层级使用者数据的该数据稀疏度表示为S_j,所述使用者的数量表示为U,该第j层级L_j中的元素的数量表示为I_j,所述第j层级使用者数据所记录的该第j层级L_j的元素的数量总和表示为R_j,且S_j、U、I_j、R_j符合下式:
S_j=1-(R_j/(U×I_j))。
7.根据权利要求1所述的推荐方法,其特征在于,根据分群结果以推荐该本体论数据库中的所述元素给所述使用者的步骤包括:
在一群组中的第k层级使用者数据所记录的该第k层级L_k的元素中,找出一第k层级频繁元素;
根据第k层级频繁元素,在该第j层级L_j的元素中找出一第j层级频繁元素;以及
推荐该第j层级频繁元素给对应于该群组中的第k层级使用者数据的使用者。
8.根据权利要求7所述的推荐方法,其特征在于,根据第k层级频繁元素,在该第j层级L_j的元素中找出该第j层级频繁元素的步骤包括:
判断该第k层级频繁元素是否为该第j层级L_j中的元素中的一者;
在该第k层级频繁元素不为该第j层级L_k中的元素中的一者的情况下,将该第k层级频繁元素映射至所述层级中的一第k-1层级L_k-1的元素;以及
透过一频繁样式探勘,找出该第k层级频繁元素所映射的该第k-1层级L_k-1的元素中的一第k-1层级频繁元素。
9.根据权利要求8所述的推荐方法,其特征在于,根据第k层级频繁元素,在该第j层级L_j的元素中找出该第j层级频繁元素的步骤还包括:
在该第k层级频繁元素为该第j层级L_j中的元素中的一者的情况下,以该第k层级频繁元素作为该第j层级频繁元素。
10.一种推荐系统,其特征在于,包括:
一储存模块,用以储存一本体论数据库,其中该本体论数据库包括多个元素,所述多个元素以一本体论阶层结构排列为N个层级{L_i},i=1、2、…、N,N为正整数,该本体论数据库用以储存分别对应于多个使用者的多笔第j层级使用者数据,且每一所述第j层级使用者数据用以记录所述层级中一第j层级L_j的至少一个元素;
一转换模块,用以根据所述第j层级使用者数据,分别产生对应所述使用者的多笔第k层级使用者数据,其中每一所述第k层级使用者数据记录所述层级中一第k层级L_k的至少一个元素;
一分群模块,用以分群所述第k层级使用者数据;以及
一推荐模块,用以根据分群结果以推荐该本体论数据库中的所述元素给所述使用者。
11.根据权利要求10所述的推荐系统,其特征在于,该转换模块还用以根据该本体论阶层结构,将每一所述第j层级使用者数据所记录的该第j层级L_j的元素映射至该第k层级L_k的至少一个元素,以作为每一所述第k层级使用者数据所记录的该第k层级L_k的至少一个元素。
12.根据权利要求10所述的推荐系统,其特征在于,该转换模块还用以计算所述第j层级使用者数据的一数据稀疏度,并根据所述第j层级使用者数据的该数据稀疏度,以将每一所述第j层级使用者数据所记录的该第j层级L_j的元素映射至该第k层级L_k的至少一个元素。
13.根据权利要求12所述的推荐系统,其特征在于,该转换模块还用以判断所述第j层级使用者数据的数据稀疏度是否大于一第j门槛值,并在所述第j层级使用者数据的数据稀疏度大于该第j门槛值的情况下,将每一所述第j层级使用者数据所记录的该第j层级L_j的元素映射至所述层级中的一第j+1层级L_j+1的至少一个元素。
14.根据权利要求13所述的推荐系统,其特征在于,该转换模块还用以在所述第j层级使用者数据的数据稀疏度不大于该第j门槛值的情况下,以所述第j层级使用者数据做为所述第k层级使用者数据。
15.根据权利要求12所述的推荐系统,其特征在于,所述第j层级使用者数据的该数据稀疏度表示为S_j,所述使用者的数量表示为U,该第j层级L_j中的元素的数量表示为I_J,所述第j层级使用者数据所记录的该第j层级L_j的元素的数量总和表示为R_j,且S_j、U、I_j、R_j符合下式:
S_j=1-(R_j/(U×I_j))。
16.根据权利要求10所述的推荐系统,其特征在于,该推荐模块还用以在一群组中的第k层级使用者数据所记录的该第k层级L_k的元素中,找出一第k层级频繁元素,根据第k层级频繁元素,在该第j层级L_j的元素中找出一第j层级频繁元素,以及推荐该第j层级频繁元素给对应于该群组中的第k层级使用者数据的使用者。
17.根据权利要求16所述的推荐系统,其特征在于,该推荐模块还用以判断该第k层级频繁元素是否为该第j层级L_j中的元素中的一者,在该第k层级频繁元素不为该第j层级L_k中的元素中的一者的情况下,将该第k层级频繁元素映射至所述层级中的一第k-1层级L_k-1的元素,以及透过一频繁样式探勘,找出该第k层级频繁元素所映射的该第k-1层级L_k-1的元素中的一第k-1层级频繁元素。
18.根据权利要求17所述的推荐系统,其特征在于,在该第k层级频繁元素为该第j层级L_j中的元素中的一者的情况下,以该第k层级频繁元素作为该第j层级频繁元素。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310481308.8A CN104572669B (zh) | 2013-10-15 | 2013-10-15 | 推荐系统及其方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310481308.8A CN104572669B (zh) | 2013-10-15 | 2013-10-15 | 推荐系统及其方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104572669A CN104572669A (zh) | 2015-04-29 |
CN104572669B true CN104572669B (zh) | 2017-12-19 |
Family
ID=53088762
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310481308.8A Active CN104572669B (zh) | 2013-10-15 | 2013-10-15 | 推荐系统及其方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104572669B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101685458A (zh) * | 2008-09-27 | 2010-03-31 | 华为技术有限公司 | 一种基于协同过滤的推荐方法和系统 |
CN102609465A (zh) * | 2012-01-16 | 2012-07-25 | 武汉大学 | 基于潜在社群的信息推荐方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100281025A1 (en) * | 2009-05-04 | 2010-11-04 | Motorola, Inc. | Method and system for recommendation of content items |
US8620964B2 (en) * | 2011-11-21 | 2013-12-31 | Motorola Mobility Llc | Ontology construction |
-
2013
- 2013-10-15 CN CN201310481308.8A patent/CN104572669B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101685458A (zh) * | 2008-09-27 | 2010-03-31 | 华为技术有限公司 | 一种基于协同过滤的推荐方法和系统 |
CN102609465A (zh) * | 2012-01-16 | 2012-07-25 | 武汉大学 | 基于潜在社群的信息推荐方法 |
Non-Patent Citations (2)
Title |
---|
ART 与概念相似在电子商务推荐系统中的应用;徐红升等;《计算机工程与应用》;20101231;全文 * |
基于在线百科全书的群体兴趣及其关联性挖掘;张海粟等;《计算机学报》;20111130;第34卷(第11期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN104572669A (zh) | 2015-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9087335B2 (en) | Multidimensional personal behavioral tomography | |
US20180158078A1 (en) | Computer device and method for predicting market demand of commodities | |
CN111125495A (zh) | 一种信息推荐方法、设备及存储介质 | |
CN108509466A (zh) | 一种信息推荐方法和装置 | |
CN109961357A (zh) | 用户数据处理方法、装置、电子设备及存储介质 | |
CN103646341B (zh) | 一种网站提供对象的推荐方法和装置 | |
CN107357812A (zh) | 一种数据查询方法及装置 | |
CN104615779A (zh) | 一种Web文本个性化推荐方法 | |
Esmeli et al. | Using Word2Vec recommendation for improved purchase prediction | |
CN107292365A (zh) | 商品标签的绑定方法、装置、设备及计算机可读存储介质 | |
CN107205042A (zh) | 一种信息精准推送方法及系统 | |
CN109543040A (zh) | 相似账户识别方法及装置 | |
CN108734587A (zh) | 金融产品的推荐方法及终端设备 | |
CN106503224A (zh) | 一种根据关键词推荐应用的方法及装置 | |
CN104992348A (zh) | 一种信息展示的方法和装置 | |
CN104615631A (zh) | 一种信息推荐的方法及装置 | |
CN103870541A (zh) | 社交网络用户兴趣挖掘方法和系统 | |
CN102650991A (zh) | 一种基于用户喜好的商品推荐方法及系统 | |
CN104915440A (zh) | 一种商品排重方法和系统 | |
CN109933678A (zh) | 艺术品推荐方法、装置、可读介质及电子设备 | |
Weir | Data mining: exploring the corporate asset | |
CN115878903A (zh) | 基于大数据的信息智能推荐方法 | |
CN110232154A (zh) | 基于随机森林的产品推荐方法、装置及介质 | |
CN104572669B (zh) | 推荐系统及其方法 | |
CN117474636A (zh) | 一种基于大数据的平台用户推荐方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |