CN111143700B - 一种活动推荐方法、装置、服务器及计算机存储介质 - Google Patents
一种活动推荐方法、装置、服务器及计算机存储介质 Download PDFInfo
- Publication number
- CN111143700B CN111143700B CN201811200216.7A CN201811200216A CN111143700B CN 111143700 B CN111143700 B CN 111143700B CN 201811200216 A CN201811200216 A CN 201811200216A CN 111143700 B CN111143700 B CN 111143700B
- Authority
- CN
- China
- Prior art keywords
- user
- preference
- sponsor
- activity
- activities
- 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
- 230000000694 effects Effects 0.000 title claims abstract description 474
- 238000000034 method Methods 0.000 title claims abstract description 85
- 238000012163 sequencing technique Methods 0.000 claims abstract description 8
- 238000012549 training Methods 0.000 claims description 36
- 238000000605 extraction Methods 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 6
- 238000004891 communication Methods 0.000 claims description 3
- 238000000354 decomposition reaction Methods 0.000 claims description 3
- 239000011159 matrix material Substances 0.000 description 38
- 238000013500 data storage Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 11
- 238000004364 calculation method Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 10
- 230000006399 behavior Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000011161 development Methods 0.000 description 5
- 239000000284 extract Substances 0.000 description 5
- 238000005457 optimization Methods 0.000 description 4
- 230000002860 competitive effect Effects 0.000 description 3
- 238000011478 gradient descent method Methods 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 235000010627 Phaseolus vulgaris Nutrition 0.000 description 2
- 244000046052 Phaseolus vulgaris Species 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- KLDZYURQCUYZBL-UHFFFAOYSA-N 2-[3-[(2-hydroxyphenyl)methylideneamino]propyliminomethyl]phenol Chemical compound OC1=CC=CC=C1C=NCCCN=CC1=CC=CC=C1O KLDZYURQCUYZBL-UHFFFAOYSA-N 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 201000001098 delayed sleep phase syndrome Diseases 0.000 description 1
- 208000033921 delayed sleep phase type circadian rhythm sleep disease Diseases 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000012417 linear regression Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- 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
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种活动推荐方法、装置、服务器及计算机存储介质,所述方法包括:获取候选活动的主办方和举办地点;根据用户对主办方的关注度、对主办方主办活动的参与度,确定用户的主办方偏好;根据在举办地点举办的活动、与用户参与过的活动之间的关系,确定用户的举办地点偏好;将特征所述主办方、举办地点、主办方偏好、举办地点偏好组成特征组合;确定特征组合中用户对各特征的一阶权重、以及用户对特征两两结合的二阶权重;根据主办方、举办地点、主办方偏好、举办地点偏好、一阶权重和二阶权重,确定用户对候选活动的活动偏好;根据活动偏好对至少一个候选活动进行排序,得到候选活动推荐列表。
Description
技术领域
本发明涉及大数据处理领域,尤其涉及一种活动推荐方法、装置、服务器及计算机存储介质。
背景技术
近年来,互联网的快速发展极大地拓宽了人们获取信息和交流信息的渠道,特别是Web 2.0的发展极大地降低了用户在互联网上发布信息的门槛,每个人都可能成为互联网中的一个信息源。虽然,信息量在快速增长,但是人们处理信息的能力不足,因此,在面对纷繁复杂的诸多信息时,用户经常会难以分辨和选择,被庞大繁杂的信息淹没而不知所措,形成典型的信息过载问题。个性化推荐能有效的解决上述问题,能够对用户的兴趣爱好进行建模,分析用户的个性化需求,帮助用户过滤掉自身不感兴趣的内容,并能够向用户建议可能感兴趣的内容。目前,个性化推荐已在电子商务、社会化网络等多个领域得到了充分应用。
随着社交网络的发展,人们不再满足于单纯的线上互动,越来越多的用户相约走下网络,在线下一起参加感兴趣的活动,由此,演化出以活动为核心,连接线上和线下社交关系的新型社交网络,形成基于活动的社交网络(Event-Based Social Network,EBSN)。随着EBSN上发布活动数量的增多,不可避免的也出现了信息过载的问题。虽然,考虑到用户日常的活动范围主要在一个区域、如城市中,可以按活动举办的区域对活动进行归类,能够在一定程度上缓解信息过载的问题,但这种方法仍然无法考虑用户的活动兴趣与需求,不能从用户角度出发,帮助用户选择合适的同区域活动。因此,在EBSN中应用个性化推荐技术,分析线下活动特征、用户参与活动的特点、用户之间的社交关系等各类EBSN数据,挖掘用户参与活动的个性化需求,并为用户推荐符合其个人兴趣的活动,可以改善EBSN的用户体验,有利于促进EBSN更好更快地发展。
在EBSN中,用户与活动主办方的关注度、活动内容文本、活动举办地点等可能影响用户参与活动的偏好因素统称上下文信息。在EBSN中应用个性化推荐技术,虽然可以改善EBSN的用户体验,但是,在现有的活动推荐中,并不能充分利用用户参与活动的偏好与上下文信息之间、多种上下文信息之间的交叉影响,而且现有的活动推荐方法大都是将活动推荐问题转化为根据训练得到的用户偏好模型、对即将举办的活动进行排序的问题。由于用户参与活动记录属于隐式反馈,无法得知用户对参与过的活动的实际偏好排序,使得根据用户对参与过的活动的偏好进行模型训练存在一定的困难,模型训练的方法不能贴近于用户实际的决策模式,最终无法准确地为用户推荐符合个人兴趣的活动。
发明内容
有鉴于此,本发明实施例为解决现有技术中存在的至少一个问题而提供一种活动推荐方法、装置、服务器及计算机存储介质,准确地为用户推荐符合个人兴趣的活动,为EBSN的发展提供良好基础。
为达到上述目的,本发明实施例的技术方案是这样实现的:
第一方面,本发明实施例提供一种活动推荐方法,所述方法包括:
获取候选活动的主办方和举办地点;
根据用户对所述主办方的关注度、对主办方主办活动的参与度,确定所述用户的主办方偏好;
根据在所述举办地点举办的活动、与所述用户参与过的活动之间的关系,确定所述用户的举办地点偏好;
将特征所述主办方、所述举办地点、所述主办方偏好、所述举办地点偏好组成特征组合;
确定所述特征组合中所述用户对各特征的一阶权重、以及所述用户对所述特征两两结合的二阶权重;
根据所述主办方、所述举办地点、所述主办方偏好、所述举办地点偏好、所述一阶权重和所述二阶权重,确定所述用户对所述候选活动的活动偏好;
根据所述活动偏好对至少一个候选活动进行排序,得到候选活动推荐列表。
进一步地,所述根据用户对所述主办方的关注度、对主办方主办活动的参与度,确定所述用户的主办方偏好,包括:
获取所述用户对主办方的关注度;
根据由主办方举办过的活动以及用户参与过的活动,获取所述用户对主办方主办的活动的参与度;
根据所述用户对所述主办方的关注度、对主办方主办活动的参与度,确定所述用户的主办方偏好。
进一步地,所述根据由主办方举办过的活动以及用户参与过的活动,获取所述用户对主办方主办的活动的参与度,包括:
获取所述由主办方举办过的活动;
根据用户参与活动的记录,获取所述用户参与过的活动;
根据所述由主办方举办过的活动以及用户参与过的活动,获取所述用户对主办方主办的活动的参与度。
进一步地,所述根据在所述举办地点举办的活动、与所述用户参与过的活动之间的关系,确定所述用户的举办地点偏好,包括:
获取所述在所述举办地点举办的活动;
根据用户参与活动的记录,获取所述用户参与过的活动;
根据在所述举办地点举办的活动、与所述用户参与过的活动之间的关系,确定所述用户的举办地点偏好。
进一步地,在所述将特征所述主办方、所述举办地点、所述主办方偏好、所述举办地点偏好组成特征组合之前,所述方法还包括:
将特征所述主办方偏好、所述举办地点偏好进行归一化。
第二方面,本发明实施例提供一种活动推荐装置,所述装置包括:
特征提取模块,用于获取候选活动的主办方和举办地点;根据用户对所述主办方的关注度、对主办方主办活动的参与度,确定所述用户的主办方偏好;根据在所述举办地点举办的活动、与所述用户参与过的活动之间的关系,确定所述用户的举办地点偏好;
组合模块,用于将特征所述主办方、所述举办地点、所述主办方偏好、所述举办地点偏好组成特征组合;
竞争学习训练模块,用于确定所述特征组合中所述用户对各特征的一阶权重、以及所述用户对所述特征两两结合的二阶权重;
用户偏好模块,用于根据所述主办方、所述举办地点、所述主办方偏好、所述举办地点偏好、所述一阶权重和所述二阶权重,确定所述用户对所述候选活动的活动偏好;根据所述活动偏好对至少一个候选活动进行排序,得到候选活动推荐列表。
进一步地,所述特征提取模块还用于获取所述用户对主办方的关注度;
根据由主办方举办过的活动以及用户参与过的活动,获取所述用户对主办方主办的活动的参与度;
根据所述用户对所述主办方的关注度、对主办方主办活动的参与度,确定所述用户的主办方偏好。
进一步地,所述特征提取模块还用于获取所述在所述举办地点举办的活动;
根据用户参与活动的记录,获取所述用户参与过的活动;
根据在所述举办地点举办的活动、与所述用户参与过的活动之间的关系,确定所述用户的举办地点偏好。
第三方面,本发明实施例提供一种服务器,所述服务器包括网络接口、存储器和处理器;其中,
所述网络接口,配置为实现组件之间的连接通信;
所述存储器,配置为存储能够在所述处理器上运行的计算机程序;
所述处理器,配置为在运行所述计算机程序时,执行第一方面所述活动推荐方法的步骤。
第四方面,本发明实施例提供一种计算机存储介质,所述计算机存储介质存储有活动推荐程序,当所述活动推荐程序被至少一个处理器执行时实现第一方面所述的活动推荐方法的步骤。
本发明实施例所提供的一种活动推荐方法、装置、服务器及计算机存储介质,通过获取候选活动的主办方和举办地点;根据用户对所述主办方的关注度、对主办方主办活动的参与度,确定所述用户的主办方偏好;根据在所述举办地点举办的活动、与所述用户参与过的活动之间的关系,确定所述用户的举办地点偏好;将特征所述主办方、所述举办地点、所述主办方偏好、所述举办地点偏好组成特征组合;确定所述特征组合中所述用户对各特征的一阶权重、以及所述用户对所述特征两两结合的二阶权重;根据所述主办方、所述举办地点、所述主办方偏好、所述举办地点偏好、所述一阶权重和所述二阶权重,确定所述用户对所述候选活动的活动偏好;最后,根据所述活动偏好对至少一个候选活动进行排序,得到候选活动推荐列表。通过确定特征组合中用户对各特征的一阶权重、以及所述用户对所述特征两两结合的二阶权重,可以充分利用用户对活动的偏好与上下文信息之间、多种上下文信息之间潜在的交叉影响,使得推荐的活动可以更加贴近于用户个人兴趣的活动,提高了推荐的准确率,能够获得更优的推荐效果。
附图说明
图1为本实施例提供的一种活动推荐方法的实现流程示意图一;
图2为本实施例提供的一种展览会推荐系统的示意图;
图3为本实施例提供的一种活动推荐方法的实现流程示意图二;
图4为示例性的展览会信息示意图;
图5为示例性的主办方发布展览会信息示意图;
图6为本实施例提供的进行活动推荐后的展览会示意图;
图7为本实施例提供的用户参与活动的记录示意图;
图8为本实施例提供的一种活动推荐装置的结构示意图;
图9为本实施例提供的一种活动推荐装置的具体硬件结构。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对发明的具体技术方案做进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
实施例一
本实施例提供一种活动推荐方法,图1为本实施例提供的一种活动推荐方法的实现流程示意图一,如图1所示,该方法主要包括以下步骤:
步骤101、获取候选活动的主办方和举办地点。
步骤102、根据用户对所述主办方的关注度、对主办方主办活动的参与度,确定所述用户的主办方偏好。
具体地,根据用户对所述主办方的关注度、对主办方主办活动的参与度,确定所述用户的主办方偏好,包括:获取所述用户对主办方的关注度;根据由主办方举办过的活动以及用户参与过的活动,获取所述用户对主办方主办的活动的参与度;根据所述用户对所述主办方的关注度、对主办方主办活动的参与度,确定所述用户的主办方偏好。
进一步地,根据由主办方举办过的活动以及用户参与过的活动,获取所述用户对主办方主办的活动的参与度,包括:获取所述由主办方举办过的活动;根据用户参与活动的记录,获取所述用户参与过的活动;根据所述由主办方举办过的活动以及用户参与过的活动,获取所述用户对主办方主办的活动的参与度。
步骤103、根据在所述举办地点举办的活动、与所述用户参与过的活动之间的关系,确定所述用户的举办地点偏好。
需要说明的是,根据在所述举办地点举办的活动、与所述用户参与过的活动之间的关系,确定所述用户的举办地点偏好,包括:获取所述在所述举办地点举办的活动;根据用户参与活动的记录,获取所述用户参与过的活动;根据在所述举办地点举办的活动、与所述用户参与过的活动之间的关系,确定所述用户的举办地点偏好。
步骤104、将特征所述主办方、所述举办地点、所述主办方偏好、所述举办地点偏好组成特征组合。
需要说明的是,在所述将特征所述主办方、所述举办地点、所述主办方偏好、所述举办地点偏好组成特征组合之前,还包括:将特征所述主办方偏好、所述举办地点偏好进行归一化。
步骤105、确定所述特征组合中所述用户对各特征的一阶权重、以及所述用户对所述特征两两结合的二阶权重。
步骤106、根据所述主办方、所述举办地点、所述主办方偏好、所述举办地点偏好、所述一阶权重和所述二阶权重,确定所述用户对所述候选活动的活动偏好。
步骤107、根据所述活动偏好对至少一个候选活动进行排序,得到候选活动推荐列表。
在本实施例中,将获取的特征主办方、举办地点、主办方偏好、举办地点偏好组成特征组合,通过确定特征组合中用户对各特征的一阶权重、以及所述用户对所述特征两两结合的二阶权重,确定用户对候选活动的活动偏好,可以充分利用用户参与活动偏好与上下文信息之间、多种上下文信息之间潜在的交叉影响,提高推荐的准确率以及效率。
本实施例提供一种示例性的活动推荐系统,以展览会推荐系统为例,展览会推荐系统包含数据存储模块、推荐服务模块、用户界面模块,图2为本实施例提供的一种展览会推荐系统的示意图,各系统模块之间的关系如图2所示,该系统包括以下模块:
1、数据存储模块
数据存储模块用于存储展览会推荐系统所需要的基本数据,主要包括用户参与活动记录、活动信息数据等。由于用户对展览会的参与程度不同,因此用户参与活动记录可进一步分为“参加”和“关注”,“参加”表示用户参与某项展览会,“关注”表示用户关注某项展览会,但不一定会安排时间参加。其中,活动信息数据主要包含主办方、活动介绍、举办时间、举办地点等。
2、推荐服务模块
推荐服务模块用于利用数据存储模块中的用户参与活动记录和活动信息数据,经过特征提取和竞争学习训练后,生成展览会候选活动的推荐列表。该模块包括特征提取模块、竞争学习训练模块、用户偏好模块。
(1)特征提取模块:结合用户参与活动记录和活动信息数据,提取用户偏好模块所需要的特征,如主办方、举办地点、用户对主办方的偏好、用户对举办地点的偏好等。
(2)竞争学习训练模块:根据用户参与活动记录,基于竞争学习方法对用户偏好模块进行训练,以调整用户偏好模块的参数,使得用户偏好模块尽可能符合用户的个性化需求。
(3)用户偏好模块是预先设定的用于估计用户对展览会偏好的模块。该模块以提取的特征信息为输入,以用户对一项或多项展览会偏好的估计值为输出,输出的估计值主要用于生成展览会推荐列表。
3、用户界面模块
用户界面模块用于用户与展览会推荐系统的交互,其中,用户包括参与活动的用户和主办方,该模块主要包括用户行为收集模块、推荐结果列表展示模块、活动信息发布模块。
(1)用户行为收集模块:收集用户参与活动的信息,并将信息存储于数据存储模块中的用户参与活动记录中。例如收集展览会推荐系统中的“参加”和“关注”信息,并将“参加”和“关注”信息存储于数据存储模块中的用户参与活动记录中。
(2)推荐列表展示模块:从推荐服务模块中获取展览会推荐列表,并按一定格式展示给用户,例如展示活动标题、举办时间、举办地点等。
(3)活动信息发布模块:获取主办方在展览会推荐系统提交的活动信息,并将活动信息存储于数据存储模块中的活动信息中。
实施例二
本实施例提供一种活动推荐方法,该方法可应用于展览会推荐系统中,图3为本实施例提供的一种活动推荐方法的实现流程示意图二,如图3所示,该方法主要包括以下步骤:
步骤301、获取候选活动的主办方和举办地点。
需要说明的是,在EBSN上发布的活动信息包括详细的活动介绍、主办方、举办地点、举办时间等,用户需要通过这些活动信息来权衡是否参与某一项活动。本实施例主要从发布的活动信息中提取候选活动的主办方和举办地点。其中,候选活动是指即将举办的活动,也就是举办时间还未截止的活动。
示例性的,如图2所示,当主办方通过活动信息发布模块将候选活动信息存储于数据存储模块中后,为了获取候选活动的主办方和举办地点,可通过推荐服务模块中的特征提取模块在数据存储模块中提取候选活动的主办方和举办地点。
步骤302、根据用户对主办方的关注度、对主办方主办的活动的参与度,确定用户的主办方偏好。
这里,若用户曾经参与主办方g举办的活动越多,则说明用户对主办方g越满意,也会更倾向于参与由主办方g举办的候选活动,也就是用户对主办方g的偏好越高。另外,在一些EBSN中,例如豆瓣同城,用户通过关注自己感兴趣的主办方来获得该主办方所举办的活动的推送消息,这样可以及时了解由该主办方所举办的候选活动的活动信息,并权衡是否参与该候选活动,若用户关注主办方g,则说明用户对主办方g的偏好越高。因此,可以根据用户对主办方的关注度以及对主办方主办的活动的参与度,确定用户的主办方偏好。
具体地,在本实施例中,为了确定用户的主办方偏好,需要获取用户对主办方的关注度以及对主办方主办的活动的参与度,包括下述步骤:
步骤302a、获取用户对主办方的关注度。
需要说明的是,在EBSN上发布活动后,用户可根据自身对主办方的偏好,确定是否关注主办方,每个用户对每个主办方的关注度可以关注度矩阵的形式进行存储。因此,可基于关注度矩阵,获取当前用户对主办方的关注度。
关于关注度矩阵具体如下,对全体用户u∈U和主办方g∈G,确定关注度矩阵RUG={ru,g}|U|×|G|表示用户对主办方的关注度,如果用户u关注了主办方g,则ru,g=1,如果用户u未关注主办方g,则ru,g=0。当用户u关注了主办方g,即ru,g=1,说明用户对主办方g的关注度比较高。因此,可通过关注度矩阵,获取用户对主办方的关注度。
步骤302b、根据由主办方举办过的活动以及用户参与过的活动,获取用户对主办方主办的活动的参与度。
这里,由于用户对主办方主办的活动的参与度与由主办方举办过的活动以及用户参与过的活动有关,因此,根据由主办方举办过的活动以及用户参与过的活动,可获取用户对主办方主办的活动的参与度。
具体地,在本实施例中,为了确定用户对主办方主办的活动的参与度,需要获取主办方举办过的活动以及用户参与过的活动,包括下述步骤:
步骤302b1、获取由主办方举办过的活动。
这里,各活动举办结束后,可在EBSN上获取各活动的主办方,可以记录下各活动的主办方,并以主办方矩阵的方式进行存储。因此,可通过主办方矩阵,获取由主办方举办过的活动。
关于主办方矩阵具体如下,对全体活动e∈E和主办方g∈G,G表示在EBSN中注册的主办方的集合,确定主办方矩阵REG={re,g}|E|×|G|表示活动与主办方之间的关系,如果活动e的主办方是主办方g,则re,g=1,如果活动e的主办方不是主办方g,则re,g=0。因此,根据主办方矩阵可以获得各主办方举办过的活动集合,如主办方g举办了活动e,主办方g举办过的活动的集合表示为Eg。
步骤302b2、根据用户参与活动的记录,获取用户参与过的活动。
需要说明的是,当用户参与过某项活动后,用户参与活动的记录可以活动参与矩阵的形式进行存储,从而可以基于活动参与矩阵,获取当前用户参与过的活动。
关于活动参与矩阵具体如下,对全体用户u∈U和活动e∈E,U表示用户集合,E表示同区域、如同城活动集合,确定各用户参与各活动矩阵RUE={ru,e}|U|×|E|表示各用户参与各活动的记录,其中,|U|为用户数量为用户总数的用户集合,|E|为活动数量为活动总数的活动集合,如果用户u参与了活动e,则ru,e=1,如果用户u未参与活动e,则ru,e=0。因此,根据活动参与矩阵可以获得各用户参与过的活动的集合,用户u参与过的活动的集合表示为Eu。
步骤302c、确定用户的主办方偏好。
需要说明的是,根据步骤302a中获取的用户对主办方的关注度以及步骤302b中获取的用户对主办方主办的活动的参与度,可以确定出用户的主办方偏好,其中,步骤302b中的用户对主办方主办的活动的参与度是根据步骤302b1中获取的由主办方举办过的活动以及步骤302b2中获取的用户参与过的活动获取的。结合用户对主办方的关注度和对主办方主办的活动的参与度,可以计算出用户的主办方偏好,其计算公式如式(1):
pu,g=ru,g+|Eu∩Eg| (1)
其中,ru,g表示用户u对主办方g的关注度,Eu表示用户u参与过的活动的集合,可以通过各用户参与各活动矩阵获得,Eg表示主办方g举办过的活动的集合,可以通过主办方矩阵获得,|Eu∩Eg|表示用户u对主办方g主办活动的参与度,pu,g表示用户u的主办方g的偏好。例如,当用户u关注了主办方g,且用户u参与过两次主办方g主办活动,也就是用户u对主办方g主办活动的参与度为2,则用户u的主办方g的偏好为3。
基于以上描述可见,全体用户的主办方偏好矩阵表示为PUG={pu,g}|U|×|G|,能够体现每个用户的主办方偏好。
示例性的,如图2所示,当用户行为收集模块收集到用户参与活动的信息,并将信息存储于数据存储模块中的用户参与活动记录中,主办方通过活动信息发布模块将候选活动信息存储于数据存储模块中后,为了获取用户的主办方偏好,可通过推荐服务模块中的特征提取模块提取用户的主办方偏好。
步骤303、根据在举办地点举办的活动、与用户参与过的活动之间的关系,确定用户的举办地点偏好。
这里,如果用户曾经参与举办地点l举办的活动越多,则说明用户对举办地点l越满意,也会更倾向于参与举办地点l举办的活动,也就是用户对举办地点的偏好越高。由于用户参与举办地点举办的活动与在举办地点举办的活动以及用户参与过的活动有关,因此,可以根据在举办地点举办的活动以及用户参与过的活动,确定用户的举办地点偏好。
具体地,在本实施例中,为了确定用户的举办地点偏好,需要获取在举办地点举办的活动以及用户参与过的活动,包括下述步骤:
步骤303a、获取在举办地点举办的活动。
需要说明的是,各活动举办结束后,可在EBSN上获取了活动的举办地点,可以记录下各活动的举办地点,并以举办地点矩阵的方式进行存储。因此,可通过举办地点矩阵,获取在举办地点举办的活动。
关于举办地点矩阵具体如下,对全体活动e∈E和举办地点l∈L,L表示在EBSN中注册的举办地点的集合,确定举办地点矩阵REL={re,l}|E|×|L|表示活动与举办地点之间的关系,如果活动e的举办地点是举办地点l,则re,l=1,如果活动e的举办地点不是举办地点l,则re,l=0。因此,根据举办地点矩阵可以获得在举办地点举办的活动的集合,如在活动地点l举办了活动e,在举办地点l举办的活动的集合表示为El。
步骤303b、根据用户参与活动的记录,获取用户参与过的活动。
需要说明的是,当用户参与过某项活动后,用户参与活动的记录可以活动参与矩阵的形式进行存储,从而可以基于活动参与矩阵,获取当前用户参与过的活动。根据活动参与矩阵可以获取各用户参与过的活动的集合,用户u参与过的活动的集合表示为Eu。
步骤303c、确定用户的举办地点偏好。
这里,根据步骤303a中获取的在举办地点举办的活动以及步骤303b中获取的用户参与过的活动,可以计算出用户的举办地点偏好。结合在举办地点举办的活动、与用户参与过的活动之间的关系,可以计算出用户的举办地点偏好,其计算公式如式(2):
pu,l=|Eu∩El| (2)
其中,Eu表示用户u参与过的活动的集合,可以通过各用户参与各活动矩阵获得,El为在举办地点l举办的活动的集合,可以通过举办地点矩阵获得,pu,l表示用户u的举办地点l的偏好。例如,当用户u参与过两次在举办地点l举办的当地活动,则用户u的主办方l的偏好为2。
基于以上描述可见,全体用户的举办地点偏好矩阵表示为PUL={pu,l}|U|×|L|,能够体现每个用户的举办地点偏好。
示例性的,如图2所示,当用户行为收集模块收集到用户参与活动的信息,并将信息存储于数据存储模块中的用户参与活动记录中,主办方通过活动信息发布模块将候选活动信息存储于数据存储模块中后,为了获取用户的举办地点偏好,可通过推荐服务模块中的特征提取模块提取用户的举办地点偏好。
步骤304、对用户的主办方偏好和举办地点偏好进行归一化。
需要说明的是,由于特征主办方、举办地点、主办方偏好、举办地点偏好的数值规模不一致,使得用户参与活动的偏好会偏向于数值规模较大的特征,数值规模较小的特征对用户参与活动的偏好的影响会比较小,因此需要对特征进行归一化。由于一项活动仅对应一个主办方和举办地点,则特征主办方和举办地点的数值为0或1,数值规模并不大,不需要进行归一化。但是用户的主办方偏好或举办地点的偏好的数值可能会比较大,例如用户的主办方偏好为30,因此,需要将用户的主办方偏好和举办地点偏好进行归一化,使得多个用户的主办方偏好或举办地点偏好之和为1,例如用户的主办方g1偏好为1,用户的主办方g2偏好为1,用户的主办方g3偏好为2,则归一化后的用户的主办方g1偏好为0.25,用户的主办方g2偏好为0.25,用户的主办方g3偏好为0.5。
对用户的主办方偏好或举办地点偏好进行归一化,当用户的主办方偏好或举办地点偏好为pi,则归一化后的用户的主办方偏好或举办地点偏好为其计算公式如式(3):
步骤305、将特征主办方、举办地点、归一化后的主办方偏好、归一化后的举办地点偏好组成特征组合。
这里,对任一候选活动可获得特征主办方、举办地点、归一化后的主办方偏好、归一化后的举办地点偏好,并将特征主办方、举办地点、归一化后的主办方偏好、归一化后的举办地点偏好组成特征组合,以特征组合为基础,可以获得用户对候选活动的偏好。
步骤306、确定特征组合中用户对各特征的一阶权重、以及用户对特征两两结合的二阶权重。
需要说明的是,本实施例可以根据特征组合建立一个用户偏好模型,并利用训练样本对用户偏好模型进行训练,其中,训练样本包括一个用户参与过的活动和至少一个用户未参与的活动,从而获得用户偏好模型的模型参数集合,也就是特征组合中用户对各特征的一阶权重、以及用户对特征两两结合的二阶权重。
为了利用特征组合建立的用户偏好模型,首先需要建立一个因子分解机模型,其中,因子分解机模型是在常用的线性回归模型中加入输入变量的二阶组合的模型,可以将输入变量两两之间的相互影响关系考虑进来,其因子分解机模型的数学形式如式(4)所示:
其中,xi、xj为输入变量;ω0为常数项,ωi为输入变量的一阶权重;ωi,j为二阶组合部分中输入变量xi与xj组合的权重,构成二阶权重矩阵W={ωi,j}n×n。
由于二阶组合的规模约为原始输入变量数量的平方,在输入变量较多时,二阶组合以及对应的二阶权重的规模会变得十分巨大,使整个模型难以训练和调参。对此,在因子分解机模型引入了矩阵分解算法,将二阶权重矩阵W分解为二阶权重隐式因子矩阵Vn×k与自身的点积,即W=VVT,其中n为输入变量的数量,k为设定的二阶权重隐式因子矩阵的维数,V中每行记为向量v,表示对应输入变量的组合权重隐式因子。
向量vi、vj分别为输入变量xi、xj对应的二阶权重隐式因子,则有ωi,j=vi,vj,其中<·,·>表示向量点乘,从而转化后的因子分解机模型中的二阶权重规模会相对较小,其数学形式为:
为降低计算复杂度,将式(5)转化为式(6):
其中,k为二阶权重隐式因子矩阵的列数,即二阶权重隐式因子向量vi的维数,vi,f表示二阶权重隐式因子向量vi的第f维分量。
根据因子分解机模型以及特征组合中的特征建立一个基于因子分解机的用户偏好模型,用于计算任意用户对任意活动的偏好,需要将用户和活动获取到的特征组合中的特征都作为模型的输入变量,而且需要采用额外的输入变量表示当前正在进行偏好估计的用户和候选活动。将所有特征代入因子分解机模型,得到基于因子分解机的用户偏好模型,如式(7)所示:
其中,ge表示候选活动e的主办方,le表示将候选活动e的举办地点le,用户变量xu表示当前正在进行偏好估计的用户,活动变量xe表示当前正在进行偏好计算的候选活动,主办方变量表示当前正在进行偏好计算的主办方,其中/>举办地点变量/>表示当前正在进行偏好计算的举办地点,其中/>用户的主办方偏好变量/>表示当前正在进行偏好计算的用户的主办方偏好值,其中/>用户的举办地点偏好变量/>表示当前正在进行偏好计算的用户的举办地点偏好值,其中/>
其中,ω0为用户偏好模型的常数项;ωu为用户变量xu的一阶权重,ωe为活动变量xe的一阶权重,为主办方变量/>的一阶权重,/>为举办地点变量/>的一阶权重,/>为用户的主办方偏好变量/>的一阶权重,/>为对应用户的举办地点偏好变量/>的一阶权重,vu为用户变量xu的二阶权重隐式因子,ve为活动变量xe的二阶权重隐式因子,/>为主办方变量/>的二阶权重隐式因子,/>为举办地点变量/>的二阶权重隐式因子,/>为用户的主办方偏好变量/>的二阶权重隐式因子,/>为用户的举办地点偏好变量/>的二阶权重隐式因子。
由于式(7)的用户偏好模型中xu、xe等输入变量的值可能为0,而且需要额外构造输入变量标记用户和活动,为了简化计算量,可以直接利用二维数据,需要将式(6)进一步简化,建立基于二维关系的因子分解机的用户偏好模型。
在基于二维关系的因子分解机模型中,将当前正在进行偏好估计的用户u和活动e等不属于二维关系矩阵的值,而属于用于标记二维关系矩阵的值的信息表示为实体,构成实体集E,输入的二维关系矩阵的值表示为特征,构成特征集C,对特征其数据值为rc,则基于二维关系的因子分解机模型的公式如式(8)所示:
/>
其中,ωc为对应特征的一阶权重;ve为对应实体e∈ε的二阶权重隐式因子,vc为对应特征/>的二阶权重隐式因子,结合提取到的特征和基于二维关系的因子分解机模型建立用户偏好模型如式(9),其中,实体集ε={u,e},特征集/> 表示用户u对活动e的活动偏好:
式(9)中,Gu表示用户的主办方的偏好pu,g大于0的主办方集合,Lu表示用户偏好pu,l大于0的举办地点的集合,常数项ω0、一阶权重ω.、二阶权重隐式因子v.统称为模型参数,构成模型参数集合Θ={ω0,ω.,v.}。可对模型参数集合中的各项参数进行初始化,作为模型训练的基础,其中对常数项ω0初始化,取(0,1)之内的随机值作为初始值;对实体或特征对应的一阶权重ω.初始化,取(0,1)之内的随机值作为初始值;对实体或特征对应的二阶权重隐式因子v.初始化,取期望为0,标准差为0.1的高斯分布的随机值为初始值。
根据用户参与活动的记录获取包括一个用户参与过的活动、至少一个用户未参与的活动的训练样本,训练用户偏好模型。由于,用户选择要参与的活动的过程是根据各活动信息、自身的偏好等因素,综合考虑后进行选择的过程,并不是只在两个活动中进行择一的过程。可将用户进行综合考虑的过程视为用户对一项活动所能得到的偏好最大化的过程,当用户相比于其它的活动,要更偏向于参与某一项活动时,说明用户参与该活动可使自己得到最大的偏好。
由于用户对不同活动的偏好之间存在着一定的竞争关系,当用户对活动的偏好越大,则用户参与该活动的可能性越大。基于用户对不同活动的偏好之间存在竞争关系,通过竞争学习方法以及训练样本对用户偏好模型进行训练。其中表示训练样本/>e*表示用户参与过的活动,其中/>通过用户偏好模型得到的用户u对活动e的偏好为/>用户u对活动e*的偏好为/>若用户参与过的活动e为活动e*,即e*=e,则用户u对活动e的偏好应当大于训练样本/>中除e以外的其它活动的偏好,如式(10):
从用户参与活动概率的角度来看式(10),也就是用户u从训练样本中选择参与活动e的概率/>即用户u对活动e的偏好均大于用户对其它活动的偏好的概率,如式(11):
用户对不同活动的偏好之间存在着一定的竞争关系,可以通过竞争学习方法训练用户偏好模型,也就是通过用户参与活动记录模拟用户对参与过的活动偏好大于用户对未参与的其它活动偏好,使得训练后的用户偏好模型更贴近于用户实际的决策模式。以式(11)为约束条件,对用户偏好模型进行训练,即对模型参数进行调整使基于二维关系的因子分解机的用户偏好模型满足约束条件。
由于的定义不同,则通过竞争学习方法训练用户偏好模型的形式也不同,将竞争学习方法分为基于SOFTMAX形式和HINGE形式的竞争学习方法,并采用随机梯度下降方法构造不同的损失函数,得到不同的优化目标和参数更新公式,完成对用户偏好模型的训练,获得用户偏好模型的各项模型参数。
本实施例将竞争学习方法分为基于SOFTMAX形式和HINGE形式的竞争学习方法,并基于SOFTMAX形式和HINGE形式的竞争学习方法训练用户偏好模型如下所示:
1、基于SOFTMAX形式的竞争学习方法训练用户偏好模型
基于SOFTMAX形式的竞争学习方法,确定如式(12)所示:
根据确定SOFTMAX形式的损失函数/>如式(13):
根据损失函数训练模型的优化目标,如式(14):
其中,Ds为包括用户u、用户参与过的活动e*、训练样本的训练集,λ为正则项系数,用于控制正则化项与损失函数的比重,||Θ||2为正则化项,即/>
采用随机梯度下降方法进行模型训练的过程如下:
步骤a1:判断模型参数集合Θ中的参数是否初始化,若未初始化,则进入步骤b1,若已初始化,则进入步骤c1;
步骤b1:对模型参数集合Θ中的参数进行初始化,进入步骤c1;
步骤c1:根据训练集Ds以及更新公式对模型参数集合Θ中的所有参数θ∈Θ进行更新,更新公式如式(15):
其中,α为学习率,用于控制每次更新的幅度,避免模型训练过程中参数过快收敛、上下抖动以及过拟合,为SOFTMAX损失函数的梯度,如式(16):/>
为简化计算,可以将式(16)转化为式(17):
其中
步骤d1:n次迭代后,获取模型参数集合Θ中的模型参数。
根据用户偏好模型中的模型参数,也就是特征组合中用户对各特征的一阶权重、以及用户对特征两两结合的二阶权重,就可以计算用户对候选活动的活动偏好。
2、基于HINGE形式的竞争学习方法训练用户偏好模型
由于基于HINGE形式的竞争学习方法中考虑到用户选择参与活动过程中存在不确定性和复杂性,因此,引入随机错误项表示用户选择过程中可能存在的偏差,并将随机错误项转换为约束条件,即用户u对活动e*的偏好与训练样本中除e*以外其它活动e的偏好的差值/>应当大于对应的随机错误项的差值,也就是,用户对参与过的活动的偏好与训练样本中其它活动的偏好之间的差值大于一个偏差值,从而保证用户对参与过的活动偏好确实为用户的最优选择。
从用户参与活动概率的角度来看,当用户u参与活动e(e*=e)的概率满足上述约束条件的概率时,确定如式(18):
其中,表示活动集合中用户对未参与活动的平均偏好,erru,e表示对应/>在(0,1)之间的随机错误项,/>表示对应未参与活动的平均偏好/>的错误项。/>存在一个上限,其中,上限为用户对参与的活动的偏好与未参与活动的平均偏好之间的差值大于一个偏差值的概率。
根据式(18),训练模型的优化目标如式(19):
约束条件为:/>
其中,ξ表示优化目标中的一个目标变量,用于根据约束条件通过最小化ξ使/>最大化,也就是使用户u对活动e*的偏好/>尽可能大于训练样本/>中除e*以外其它活动的偏好/>
采用随机梯度下降方法进行模型训练的过程如下:
步骤a2:判断模型参数集合Θ中的参数是否初始化,若未初始化,则进入步骤b2,若已初始化,则进入步骤c2;
步骤b2:对模型参数集合Θ中的参数进行初始化,进入步骤c2;
步骤c2:根据训练集Ds以及更新公式对模型参数集合Θ中的所有参数θ∈Θ进行更新,更新公式如式(20):
其中,α为学习率,用于控制每次更新的幅度,避免模型训练过程中参数过快收敛、上下抖动以及过拟合,H(·)为Heaviside函数,
步骤d2:n次迭代后,获取模型参数集合Θ中的各项模型参数。
根据用户偏好模型中的模型参数,也就是特征组合中用户对各特征的一阶权重、以及用户对特征两两结合的二阶权重,就可以计算用户对候选活动的活动偏好。
示例性的,如图2所示,当推荐服务模块中的特征提取模块提取到特征组合中的各特征后,为了获取特征组合中用户对各特征的一阶权重、以及用户对特征两两结合的二阶权重,可通过竞争学习训练模块基于竞争学习方法对用户偏好模块进行训练,以调整用户偏好模块的参数,从而获取特征组合中用户对各特征的一阶权重、以及用户对特征两两结合的二阶权重。
步骤307、根据候选活动的主办方、举办地点、用户的主办方偏好、用户的举办地点偏好、一阶权重和二阶权重,确定用户对候选活动的活动偏好。
需要说明的是,当用户偏好模型中的模型通过模型训练后,获得了各模型参数,则可以通过候选活动的特征组合中的各特征,利用式(9)确定用户对候选活动的活动偏好。
示例性的,如图2所示,当通过竞争学习训练模块调整用户偏好模块的参数,获取特征组合中用户对各特征的一阶权重、以及用户对特征两两结合的二阶权重后,可通过推荐服务模块中的用户偏好模块获取用户对候选活动的活动偏好。
步骤308、根据活动偏好对各候选活动进行排序,得到候选活动推荐列表。
这里,可根据活动偏好对各候选活动的进行降序排序,得到候选活动推荐列表,并将候选活动推荐列表中的候选活动按顺序推荐给用户,或者按顺序进行显示,使得推荐的活动可以更加贴近于用户个人兴趣的活动,去除用户不感兴趣的活动,提高了推荐的准确率,获得更优的推荐效果。
示例性的,如图2所示,当通过推荐服务模块中的用户偏好模块获取用户对候选活动的活动偏好后,可根据活动偏好对各候选活动进行排序,得到候选活动推荐列表,并将候选活动推荐列表发送给推荐列表展示模块,按一定格式展示给用户。
以展览会的活动推荐为例,在“豆瓣同城”网站上展示出大量的展览会信息,如图4所示,包含了6个在北京举办的展览会信息,且展览会“Enjoy Vision Foto Lab《造就》摄影装置展”尚未通过活动信息发布模块发布,其中,6个展览会分别用活动序号1-6表示,对前2个候选的展览会,也就是活动序号1和2的展览会进行活动推荐的流程如下:
1、主办方通过活动信息发布模块发布活动信息
展览会“Enjoy Vision Foto Lab《造就》摄影装置展”的主办方通过活动信息发布模块的界面填写活动信息,包括活动类型、活动标题、活动时间、举办地点等,如图5所示。填写完成并提交后,活动信息发布模块将活动信息存储到数据存储模块中的活动信息数据中。
2、特征提取模块提取特征组合中的各特征
根据用户参与活动记录和活动信息,利用步骤301-303提取用户偏好模块需要输入的主办方、举办地点、用户的主办方偏好、用户的举办地点偏好,其中主办方特征和举办地点特征,如表1所示:
表1
活动序号 | 主办方 | 举办地点 |
1 | 主办方1 | 地点1 |
2 | 主办方2 | 地点2 |
3 | 主办方3 | 地点3 |
4 | 主办方3 | 地点4 |
5 | 主办方3 | 地点5 |
6 | 主办方3 | 地点6 |
结合用户对主办方的关注度以及用户参与活动记录,根据步骤302提取用户的主办方偏好,如表2所示:
表2
主办方 | 用户的主办方偏好 |
主办方1 | 1 |
主办方2 | 1 |
主办方3 | 2 |
结合举办地点以及用户参与活动记录,根据步骤303提取用户的举办地点偏好,如表3所示:
表3
活动地点 | 用户的举办地点偏好 |
地点1 | 0 |
地点2 | 0 |
地点3 | 0 |
地点4 | 0 |
地点5 | 1 |
地点6 | 1 |
综合上述特征,可以得到活动的特征表,如表4所示:
表4
由于上述各特征项的数值规模不一致,使得用户参与活动的偏好会偏向于数值规模较大的特征,因此,需要对各特征值进行归一化。对用户的主办方偏好进行归一化,得到归一化后的用户的主办方偏好,如表5所示:
表5
主办方 | 用户的主办方偏好 | 归一化后用户的主办方偏好 |
主办方1 | 1 | 0.25 |
主办方2 | 1 | 0.25 |
主办方3 | 2 | 0.5 |
对用户的举办地点偏好进行归一化,得到归一化后的用户的举办地点偏好,如表6所示:
表6
活动地点 | 用户的举办地点偏好 | 归一化后用户的举办地点偏好 |
地点1 | 0 | 0 |
地点2 | 0 | 0 |
地点3 | 0 | 0 |
地点4 | 0 | 0 |
地点5 | 1 | 0.5 |
地点6 | 1 | 0.5 |
3、根据竞争学习训练模块获取特征组合中用户对各特征的一阶权重、以及用户对特征两两结合的二阶权重
根据步骤306,通过竞争学习方法对用户偏好模块进行训练和参数调整,获取特征组合中用户对各特征的一阶权重、以及用户对特征两两结合的二阶权重。
4、通过用户偏好模块生成活动推荐列表
根据用户偏好模块,计算用户对候选活动的活动偏好,并根据活动偏好对各候选活动的进行降序排序,得到活动序号为1、2的展览会的活动推荐列表,如表7所示:
表7
推荐排名 | 活动序号 | 用户的活动偏好 |
1 | 2 | 1.5487 |
2 | 1 | 1.2924 |
5、推荐列表展示模块根据活动推荐列表为用户展示活动
根据用户偏好模块生成的活动推荐列表及数据存储模块中存储的活动信息,经过活动推荐后,向用户展示展览会列表,如图6所示。
6、用户行为收集模块收集用户参与活动记录
当用户进入展览会推荐系统中的活动详情页面查看活动信息后,可选择是否要参与这项活动,如“参加”或“关注”。若用户选择“参加”某项展览会,还可以在弹出的窗口中选择参加的日期和场次,以及填写对活动的评论或感想等,如图7所示,构成用户参与活动的记录,用户行为收集模块将上述“参加”或“关注”信息存储于数据存储模块中。
本展览会推荐系统实现了活动信息的发布和存储,并根据用户参与活动记录和活动信息,确定用户对展览会的偏好,为用户推荐展览会。
实施例三
基于实施例一的同一发明构思,本实施例提供一种活动推荐装置,图8为本实施例提供的一种活动推荐装置的结构示意图,如图8所示,所述活动推荐装置800包括:
特征提取模块801,用于获取候选活动的主办方和举办地点;根据用户对所述主办方的关注度、对主办方主办活动的参与度,确定所述用户的主办方偏好;根据在所述举办地点举办的活动、与所述用户参与过的活动之间的关系,确定所述用户的举办地点偏好。
组合模块802,用于将特征所述主办方、所述举办地点、所述主办方偏好、所述举办地点偏好组成特征组合。
竞争学习训练模块803,用于确定所述特征组合中所述用户对各特征的一阶权重、以及所述用户对所述特征两两结合的二阶权重。
用户偏好模块804,用于根据所述主办方、所述举办地点、所述主办方偏好、所述举办地点偏好、所述一阶权重和所述二阶权重,确定所述用户对所述候选活动的活动偏好;根据所述活动偏好对至少一个候选活动进行排序,得到候选活动推荐列表。
在其他实施例中,所述特征提取模块801还用于获取所述用户对主办方的关注度;根据由主办方举办过的活动以及用户参与过的活动,获取所述用户对主办方主办的活动的参与度;根据所述用户对所述主办方的关注度、对主办方主办活动的参与度,确定所述用户的主办方偏好。
在其他实施例中,所述特征提取模块801还用于获取所述在所述举办地点举办的活动;根据用户参与活动的记录,获取所述用户参与过的活动;根据在所述举办地点举办的活动、与所述用户参与过的活动之间的关系,确定所述用户的举办地点偏好。
在本实施例中的各组成部分可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
所述集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中,基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或processor(处理器)执行本实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
因此,本实施例提供了一种计算机存储介质,该计算机存储介质存储有活动推荐的程序,所述活动推荐的程序被至少一个处理器执行时实现上述实施例一或实施例二所述的活动推荐方法的步骤。
基于上述活动推荐装置800以及计算机存储介质,参见图9,其示出了本实施例提供的一种活动推荐装置800的具体硬件结构,包括:网络接口901、存储器902和处理器903;各个组件通过总线系统904耦合在一起。可理解,总线系统904用于实现这些组件之间的连接通信。总线系统904除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图9中将各种总线都标为总线系统904。其中,
其中,所述网络接口901,用于在与其他外部网元之间进行收发信息过程中,信号的接收和发送;
存储器902,用于存储能够在处理器903上运行的计算机程序;
处理器903,用于在运行所述计算机程序时,执行:
获取候选活动的主办方和举办地点;
根据用户对所述主办方的关注度、对主办方主办活动的参与度,确定所述用户的主办方偏好;
根据在所述举办地点举办的活动、与所述用户参与过的活动之间的关系,确定所述用户的举办地点偏好;
将特征所述主办方、所述举办地点、所述主办方偏好、所述举办地点偏好组成特征组合;
确定所述特征组合中所述用户对各特征的一阶权重、以及所述用户对所述特征两两结合的二阶权重;
根据所述主办方、所述举办地点、所述主办方偏好、所述举办地点偏好、所述一阶权重和所述二阶权重,确定所述用户对所述候选活动的活动偏好;
根据所述活动偏好对至少一个候选活动进行排序,得到候选活动推荐列表。
可以理解,本发明实施例中的存储器902可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data RateSDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Sync Link DRAM,SLDRAM)和直接内存总线随机存取存储器(DirectRambus RAM,DRRAM)。本文描述的方法的存储器902旨在包括但不限于这些和任意其它适合类型的存储器。
而处理器903可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器903中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器903可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器902,处理器903读取存储器902中的信息,结合其硬件完成上述方法的步骤。
可以理解的是,本文描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(ApplicationSpecific Integrated Circuits,ASIC)、数字信号处理器(Digital Signal Processing,DSP)、数字信号处理设备(DSP Device,DSPD)、可编程逻辑设备(Programmable LogicDevice,PLD)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、通用处理器、控制器、微控制器、微处理器、用于执行本申请所述功能的其它电子单元或其组合中。
对于软件实现,可通过执行本文所述功能的模块(例如过程、函数等)来实现本文所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其它的方式实现。以上所描述的终端实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
Claims (10)
1.一种活动推荐方法,其特征在于,所述方法包括:
获取候选活动的主办方和举办地点;
根据用户对所述主办方的关注度、对主办方主办活动的参与度,确定所述用户的主办方偏好;
根据在所述举办地点举办的活动、与所述用户参与过的活动之间的关系,确定所述用户的举办地点偏好;
将特征所述主办方、所述举办地点、所述主办方偏好、所述举办地点偏好组成特征组合;
确定所述特征组合中所述用户对各特征的一阶权重、以及所述用户对所述特征两两结合的二阶权重;
根据所述主办方、所述举办地点、所述主办方偏好、所述举办地点偏好、所述一阶权重和所述二阶权重,确定所述用户对所述候选活动的活动偏好;
根据所述活动偏好对至少一个候选活动进行排序,得到候选活动推荐列表;其中,
所述根据所述主办方、所述举办地点、所述主办方偏好、所述举办地点偏好、所述一阶权重和所述二阶权重,确定所述用户对所述候选活动的活动偏好,包括:
根据所述主办方、所述举办地点、所述主办方偏好、所述举办地点偏好、所述一阶权重和所述二阶权重,以及基于二维关系的因子分解机的用户偏好模型,确定所述用户对所述候选活动的活动偏好,所述用户偏好模型是利用竞争学习方法训练得到的。
2.根据权利要求1所述的方法,其特征在于,所述根据用户对所述主办方的关注度、对主办方主办活动的参与度,确定所述用户的主办方偏好,包括:
获取所述用户对主办方的关注度;
根据由主办方举办过的活动以及用户参与过的活动,获取所述用户对主办方主办的活动的参与度;
根据所述用户对所述主办方的关注度、对主办方主办活动的参与度,确定所述用户的主办方偏好。
3.根据权利要求2所述的方法,其特征在于,所述根据由主办方举办过的活动以及用户参与过的活动,获取所述用户对主办方主办的活动的参与度,包括:
获取所述由主办方举办过的活动;
根据用户参与活动的记录,获取所述用户参与过的活动;
根据所述由主办方举办过的活动以及用户参与过的活动,获取所述用户对主办方主办的活动的参与度。
4.根据权利要求1所述的方法,其特征在于,所述根据在所述举办地点举办的活动、与所述用户参与过的活动之间的关系,确定所述用户的举办地点偏好,包括:
获取所述在所述举办地点举办的活动;
根据用户参与活动的记录,获取所述用户参与过的活动;
根据在所述举办地点举办的活动、与所述用户参与过的活动之间的关系,确定所述用户的举办地点偏好。
5.根据权利要求1所述的方法,其特征在于,在所述将特征所述主办方、所述举办地点、所述主办方偏好、所述举办地点偏好组成特征组合之前,所述方法还包括:
将特征所述主办方偏好、所述举办地点偏好进行归一化。
6.一种活动推荐装置,其特征在于,所述装置包括:
特征提取模块,用于获取候选活动的主办方和举办地点;根据用户对所述主办方的关注度、对主办方主办活动的参与度,确定所述用户的主办方偏好;根据在所述举办地点举办的活动、与所述用户参与过的活动之间的关系,确定所述用户的举办地点偏好;
组合模块,用于将特征所述主办方、所述举办地点、所述主办方偏好、所述举办地点偏好组成特征组合;
竞争学习训练模块,用于确定所述特征组合中所述用户对各特征的一阶权重、以及所述用户对所述特征两两结合的二阶权重;
用户偏好模块,用于根据所述主办方、所述举办地点、所述主办方偏好、所述举办地点偏好、所述一阶权重和所述二阶权重,确定所述用户对所述候选活动的活动偏好;根据所述活动偏好对至少一个候选活动进行排序,得到候选活动推荐列表;其中,
所述根据所述主办方、所述举办地点、所述主办方偏好、所述举办地点偏好、所述一阶权重和所述二阶权重,确定所述用户对所述候选活动的活动偏好,包括:
根据所述主办方、所述举办地点、所述主办方偏好、所述举办地点偏好、所述一阶权重和所述二阶权重,以及基于二维关系的因子分解机的用户偏好模型,确定所述用户对所述候选活动的活动偏好,所述用户偏好模型是利用竞争学习方法训练得到的。
7.根据权利要求6所述的装置,其特征在于,所述特征提取模块还用于获取所述用户对主办方的关注度;
根据由主办方举办过的活动以及用户参与过的活动,获取所述用户对主办方主办的活动的参与度;
根据所述用户对所述主办方的关注度、对主办方主办活动的参与度,确定所述用户的主办方偏好。
8.根据权利要求6所述的装置,其特征在于,所述特征提取模块还用于获取所述在所述举办地点举办的活动;
根据用户参与活动的记录,获取所述用户参与过的活动;
根据在所述举办地点举办的活动、与所述用户参与过的活动之间的关系,确定所述用户的举办地点偏好。
9.一种服务器,其特征在于,所述服务器包括网络接口、存储器和处理器;其中,
所述网络接口,配置为实现组件之间的连接通信;
所述存储器,配置为存储能够在所述处理器上运行的计算机程序;
所述处理器,配置为在运行所述计算机程序时,执行权利要求1至5任一项所述活动推荐方法的步骤。
10.一种计算机存储介质,其特征在于,所述计算机存储介质存储有活动推荐程序,当所述活动推荐程序被至少一个处理器执行时实现如权利要求1至5中任一项所述活动推荐方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811200216.7A CN111143700B (zh) | 2018-10-16 | 2018-10-16 | 一种活动推荐方法、装置、服务器及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811200216.7A CN111143700B (zh) | 2018-10-16 | 2018-10-16 | 一种活动推荐方法、装置、服务器及计算机存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111143700A CN111143700A (zh) | 2020-05-12 |
CN111143700B true CN111143700B (zh) | 2023-07-25 |
Family
ID=70515051
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811200216.7A Active CN111143700B (zh) | 2018-10-16 | 2018-10-16 | 一种活动推荐方法、装置、服务器及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111143700B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114817725B (zh) * | 2022-04-28 | 2022-10-14 | 杭州核新软件技术有限公司 | 一种行为决策逻辑识别方法及系统 |
CN115292562B (zh) * | 2022-10-09 | 2022-12-16 | 深圳市铱云云计算有限公司 | 基于大数据的合格用户筛选方法、装置、介质和计算设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106021311A (zh) * | 2016-05-05 | 2016-10-12 | 北京邮电大学 | 网络社交活动推荐方法和装置 |
CN107248116A (zh) * | 2017-06-07 | 2017-10-13 | 维沃移动通信有限公司 | 一种活动推荐方法及移动终端 |
CN108052961A (zh) * | 2017-11-28 | 2018-05-18 | 淮海工学院 | 一种活动社交网络用户参加活动推荐的多因素决策方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130073422A1 (en) * | 2011-03-04 | 2013-03-21 | Justin Moore | System and method for providing recommendations with a location-based service |
-
2018
- 2018-10-16 CN CN201811200216.7A patent/CN111143700B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106021311A (zh) * | 2016-05-05 | 2016-10-12 | 北京邮电大学 | 网络社交活动推荐方法和装置 |
CN107248116A (zh) * | 2017-06-07 | 2017-10-13 | 维沃移动通信有限公司 | 一种活动推荐方法及移动终端 |
CN108052961A (zh) * | 2017-11-28 | 2018-05-18 | 淮海工学院 | 一种活动社交网络用户参加活动推荐的多因素决策方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111143700A (zh) | 2020-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11659050B2 (en) | Discovering signature of electronic social networks | |
CN112990972B (zh) | 一种基于异构图神经网络的推荐方法 | |
Cao et al. | Customer demand prediction of service-oriented manufacturing incorporating customer satisfaction | |
CN102426686A (zh) | 一种基于矩阵分解的互联网信息产品推荐方法 | |
CN112131480A (zh) | 基于多层异质属性网络表征学习的个性化商品推荐方法及系统 | |
CN113191838A (zh) | 一种基于异质图神经网络的购物推荐方法及系统 | |
CN111428127A (zh) | 融合主题匹配与双向偏好的个性化事件推荐方法及系统 | |
CN111143700B (zh) | 一种活动推荐方法、装置、服务器及计算机存储介质 | |
Li | Accurate digital marketing communication based on intelligent data analysis | |
Yucel et al. | Sequential hierarchical regression imputation | |
CN111125507B (zh) | 一种群组活动推荐方法、装置、服务器及计算机存储介质 | |
CN113836388A (zh) | 信息推荐方法、装置、服务器及存储介质 | |
Hoiles et al. | PAC algorithms for detecting Nash equilibrium play in social networks: from Twitter to energy markets | |
US10853820B2 (en) | Method and apparatus for recommending topic-cohesive and interactive implicit communities in social customer relationship management | |
US20230259575A1 (en) | Systems and methods for implementing session cookies for content selection | |
CN114090848A (zh) | 数据推荐及分类方法、特征融合模型及电子设备 | |
JP7117835B2 (ja) | 生成装置、モデル、生成方法及び生成プログラム | |
Hu | A multicriteria collaborative filtering approach using the indifference relation and its application to initiator recommendation for group-buying | |
Zuva et al. | Virtual group movie recommendation system using social network information | |
CN114596108A (zh) | 一种对象推荐方法、装置、电子设备及存储介质 | |
Ma | Modeling users for online advertising | |
Singhvi et al. | Online learning with sample selection bias | |
Wang et al. | Online Social Media Content Delivery: A Data-Driven Approach | |
Sneha et al. | International Journal of Trend in Scientific Research and Development (IJTSRD) | |
Schimit et al. | On estimating the impact of information spreading in a consumer market modeled by probabilistic cellular automata and ordinary differential equations |
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 |