CN113704635A - 一种社交网络事件推荐方法及系统 - Google Patents
一种社交网络事件推荐方法及系统 Download PDFInfo
- Publication number
- CN113704635A CN113704635A CN202110876092.XA CN202110876092A CN113704635A CN 113704635 A CN113704635 A CN 113704635A CN 202110876092 A CN202110876092 A CN 202110876092A CN 113704635 A CN113704635 A CN 113704635A
- Authority
- CN
- China
- Prior art keywords
- event
- user
- data
- recommendation
- social network
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 60
- 238000012549 training Methods 0.000 claims abstract description 41
- 238000004140 cleaning Methods 0.000 claims abstract description 9
- 238000013135 deep learning Methods 0.000 claims abstract description 9
- 238000013075 data extraction Methods 0.000 claims abstract description 8
- 238000012163 sequencing technique Methods 0.000 claims abstract description 7
- 238000012360 testing method Methods 0.000 claims description 15
- 230000006870 function Effects 0.000 claims description 13
- 230000004913 activation Effects 0.000 claims description 7
- 230000009467 reduction Effects 0.000 claims description 6
- 238000012216 screening Methods 0.000 claims description 3
- 238000003860 storage Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 12
- 238000004590 computer program Methods 0.000 description 9
- 230000000694 effects Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 238000013136 deep learning model Methods 0.000 description 5
- 238000002474 experimental method Methods 0.000 description 5
- 230000003993 interaction Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000005304 joining Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical 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/9536—Search customisation based on social or collaborative filtering
-
- 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种社交网络事件推荐方法及系统,对社交网络数据集进行数据清洗及数据提取,得到社交网络中的用户数据、事件数据及用户参与事件的记录数据,作为实验数据集;采用特征编码方式,根据用户数据、事件数据及用户参与事件的记录数据生成用户特征和事件特征;使用深度学习方法,利用用户、事件特征对用户是否参加事件进行任务训练,学习用户对事件的评分;根据确定的用户评分大小进行排序,为用户推荐评分最高的事件。本发明对现有的社交网络事件推荐方法进行了改进,提高了向用户推荐事件的准确性和时间效率。
Description
技术领域
本发明属于数据挖掘技术领域,具体涉及一种社交网络事件推荐方法及系统。
背景技术
近年来,在线离线商业模式进入了高速发展阶段,在线社交网络在此背景下也产生了与线下服务相结合的新型社交网络,即基于事件的社交网络,简称社交事件网络。在该网络中用户通过加入群组、约定参与群组的事件实现在线交互,前往事件举办地参与此线下事件实现离线交互。社交网络事件推荐是社交事件网络的一个经典问题,目的是为用户推荐其喜爱的事件。与传统的电影、购物等推荐场景不同,社交网络事件推荐问题面临着严重的“冷启动”问题:由于社交事件网络中事件总是发生在未来,事件没有历史参加记录,即每个发布的事件都为新事件。因此在社交事件网络中,“冷启动”也是社交网络事件推荐方法必须解决的问题。
现有的社交网络事件推荐方法通常是计算事件与用户的时间偏好、社交偏好、内容偏好间的相似度,综合上述偏好信息计算用户对事件的评分,按照评分进行推荐。具体的推荐过程如下:
1)设计用户对于各个偏好的评分公式,如用户经常参与事件的区域范围;
2)确定目标用户;
3)根据(1)中设计的评分公式,计算这个用户针对各个偏好的评分;
4)给定某一天,获取这一天的所有事件信息;
5)根据(1)中设计的评分公式,计算各个事件对于各个用户偏好的评分;
6)计算用户评分与各个事件评分间的相似度,将相似度作为用户对事件的总评分;
7)按照总评分从大到小排序;
8)根据排序从前往后向用户推荐事件。
该方法主要有三个缺点:
(1)此推荐方法为用户推荐的是已加入群组的事件,而不是用户尚未加入的新群组的事件,推荐的意义不大;
(2)自行设计用户对各个因素的偏好评分这一做法较为主观,无法保证推荐效果,且难以穷举影响用户参加事件的各项因素;
(3)处理大规模社交事件网络效率低下。
发明内容
本发明所要解决的技术问题在于针对上述现有技术中的不足,提供一种社交网络事件推荐方法及系统,解决在大规模社交网络中根据用户参与事件的记录向用户推荐感兴趣事件的问题。
本发明采用以下技术方案:
一种社交网络事件推荐方法,包括以下步骤:
S1、对社交网络数据集进行数据清洗及数据提取,得到社交网络中的用户数据、事件数据及用户参与事件的记录数据,作为实验数据集;
S2、采用特征编码方式,根据步骤S1得到的用户数据、事件数据及用户参与事件的记录数据生成用户特征和事件特征;
S3、使用深度学习方法,利用步骤S2得到的用户、事件特征对用户是否参加事件进行任务训练,学习用户对事件的评分;
S4、根据步骤S3确定的用户评分大小进行排序,为用户推荐评分最高的事件。
具体的,步骤S1具体为:
以用户参与事件数大于10且事件参与人数大于10作为条件,对社交网络数据集数据进行筛选;选择用户新加入群组的事件及回复记录,得到用户信息为用户id,事件信息为事件id和事件类别,用户参与事件信息为用户id,事件id,用户是否参与事件记录。
具体的,步骤S2中,生成的用户特征包含用户id,生成的事件特征为用户参与的事件的特征,包含事件id及事件类别;将用户特征和事件特征转换为多位01编码,选择用户特征编码和事件特征编码中最长的编码长度作为最终用户特征和事件特征的编码长度。
进一步的,将用户特征转换为多位01编码具体为:
将映射后的int型用户id转换为多位01编码作为用户特征编码。
进一步的,将事件特征转换为多位01编码具体为:
具体的,步骤S3具体为:
将步骤S1得到的实验数据集分为训练集和测试集;构建预训练模型,将步骤S2得到的用户特征和事件特征通过预训练模型得到训练集中所有的用户稠密特征及所有的事件稠密特征;
构建推荐模型,根据用户参与事件的记录,将用户稠密特征和事件稠密特征作为推荐模型的输入,将用户对事件的回复作为推荐模型的输出,用户参与过事件时,输出为1,拒绝参与事件时,输出为0;
推荐模型训练阶段的输入为用户、事件特征,输出为0或1,推荐模型测试阶段的输入为用户特征和事件特征,输出作为用户对此事件的推荐评分。
进一步的,在推荐模型训练阶段,用户特征及事件特征分别经过两层线性层,将两个特征的维度降为原来的1/4,降维后的用户特征、事件特征进行点乘,点乘结果经过sigmoid激活函数得到推荐模型的输出评分。
进一步的,在推荐模型测试阶段,推荐模型的输入为测试集的用户、事件特征,经过两层线性层降维、点乘,并通过sigmoid激活函数后,推荐模型输出[0,1]之间的实数,作为用户针对此事件的推荐评分。
具体的,步骤S4中,采用用户尚未参加群组的事件作为候选事件集,目标为向用户推荐新群组的事件。
本发明的另一技术方案是,一种社交网络事件推荐系统,包括:
数据采集模块,对社交网络数据集进行数据清洗及数据提取,得到社交网络中的用户数据、事件数据及用户参与事件的记录数据;
特征生成模块,采用特征编码方式,根据数据采集模块得到的用户数据、事件数据及用户参与事件的记录数据生成用户、事件的特征;
评分生成模块,使用深度学习方法,利用特征生成模块得到的用户、事件特征对用户是否参加事件进行任务训练,学习用户对事件的评分;
事件推荐模块,根据评分生成模块确定的用户评分大小进行排序,为用户推荐评分最高的事件。
与现有技术相比,本发明至少具有以下有益效果:
本发明一种社交网络事件推荐方法,基于用户参与事件的记录、即用户行为进行推荐,更加贴合用户的兴趣;为用户推荐尚未加入群组的事件,这比向用户推荐其所在群组的事件更有推荐意义;不用自行设计用户参与事件的各个偏好,通过用户是否参加事件的实际行动能最直接地表明用户的喜好,从此产生的推荐原则更为合理、全面;采用的深度学习模型可处理大规模社交事件网络,且不需进行特征工程;本方法训练简单,执行快速,模型输出结果可以清晰地展现推荐评分;可以完成数据清洗、提取,特征编码,利用深度学习模型得到事件推荐评分,按推荐评分排序进行推荐的整个流程,此流程方法简单、清晰,按照用户参与事件记录进行建模更增加了推荐的信服度;使用的深度学习模型则规避了特征工程,使得数据处理更加简洁,同时善于处理大规模社交事件网络;深度学习模型中采用的点乘操作能够免训练、快捷地计算用户特征与事件特征间的相似程度,点乘后通过的sigmoid函数则可使推荐评分处于[0,1]之间,且对点乘结果没有限制。
进一步的,对原始社交网络数据集进行清洗、处理,可快捷完成数据提取,得到实验数据集:用户数据、事件数据及用户参与事件记录数据。
进一步的,用户特征由用户id、事件特征由事件id及事件类别构成,使用了简单的信息构成用户、事件特征,属于基础特征,后续可加入其他信息丰富特征;将用户特征和事件特征位数对齐,便于后续模型训练。
进一步的,采用的01特征编码使得编码过程快捷,对权利要求2所得数据可直接编码,不需要额外数据。并且01特征编码的位数可以随意变化,便于用户特征和事件特征位数对齐,便于后续模型训练。
进一步的,采用的01特征编码使得编码过程快捷,对所得数据可直接编码,不需要额外数据。并且01特征编码的位数可以随意变化,便于用户特征和事件特征位数对齐,便于后续模型训练。
进一步的,用户是否参加事件任务利用得到的用户参与事件记录,得到每组“用户-事件”的评分,以进行预训练模型、推荐模型的训练。设置预训练模型可进一步捕捉用户、事件特征,使得用户特征及事件特征变得稠密,同时提高后续推荐效果。
进一步的,推荐模型训练阶段通过“用户是否参与事件”设置模型输出,即模型输出为0或1,通过模型训练使得模型完成了对用户、事件特征的建模。
进一步的,经过推荐模型训练后,对推荐模型输入用户、事件特征后,模型输出针对此用户对事件的推荐评分,此时可以得到所有用户与所有事件间的推荐评分。
进一步的,推荐过程中,将采用用户尚未参加群组的事件作为候选事件集,目标为向用户推荐新群组的事件,而不是用户参加过群组的事件,使得推荐情况更具有现实意义、更加符合用户的想法。
综上所述,本发明对现有的社交网络事件推荐方法进行了改进,提高了向用户推荐事件的准确性和时间效率。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
图1为本发明社交网络事件推荐方法的流程图;
图2为本发明社交网络事件推荐装置的结构示意图;
图3为用户信息、事件信息、用户参与事件表示意图;
图4为评分生成模块的预训练模型示意图;
图5为评分生成模块的评分生成模型示意图;
图6为向用户推荐事件的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要理解的是,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
在附图中示出了根据本发明公开实施例的各种结构示意图。这些图并非是按比例绘制的,其中为了清楚表达的目的,放大了某些细节,并且可能省略了某些细节。图中所示出的各种区域、层的形状及它们之间的相对大小、位置关系仅是示例性的,实际中可能由于制造公差或技术限制而有所偏差,并且本领域技术人员根据实际所需可以另外设计具有不同形状、大小、相对位置的区域/层。
请参阅图1和图2,本发明一种社交网络事件推荐方法,包括以下步骤:
S1、从社交事件网络网站如meetup等数据库中获取用户数据、事件数据及用户参与事件记录数据;
通过“用户参与事件数大于10”且“事件参与人数大于10”条件,对数据进行筛选;由于要对用户推荐尚未参加过群组的事件,则选择用户新加入群组的事件及回复记录,最后得到:用户信息为用户id,事件信息为事件id和事件类别,用户参与事件信息为用户id,事件id,用户是否参与事件记录,如图3所示。
S2、采用特征编码方式,根据步骤S1得到的用户参与事件的信息,生成用户特征和事件特征;
用户特征包含用户id,事件特征为用户参与的事件的特征(如用户参加或拒绝参加此事件),包含事件id及事件类别,将用户特征和事件特征转换为多位01编码,选择用户特征编码和事件特征编码中最长的编码长度作为最终用户特征和事件特征的编码长度,此时用户特征编码位数与事件特征编码位数一样。
将用户特征和事件特征转换为多位01编码具体为:
首先将映射后的int型用户id转换为多位01编码作为用户特征编码,位数等于max(log2numuser,log2numevent+6),numuser表示数据集中用户个数,numevent表示数据集中事件个数,max(log2numuser,log2numevent+6)表示取用户特征位数和事件特征位数中的最大值。同时由于事件类别是1~36的int型数字,则直接将其转换为位01编码;将映射后的int型事件id转换为多位01编码,最后将事件id与事件类别对应的01编码进行拼接,得到最终的事件特征,位数等于max(log2numuser,log2numevent+6)-6,此时用户特征编码位数与事件特征编码位数一样。
S3、使用深度学习方法学习用户对事件的评分;
根据用户参与事件的记录,将用户特征、事件特征作为推荐模型的输入,将用户对此事件的回复作为推荐模型的输出,用户参与过此事件时,输出为1,拒绝参与此事件时,输出为0;将步骤S1得到的数据集分为训练集和测试集,训练集中推荐模型的输入为用户、事件特征,输出为0或1,测试集中推荐模型的输入为用户、事件特征,输出为0-1之间的实数,作为用户对此事件的推荐评分。具体实现过程如下:
S301、构建预训练模型
请参阅图4,用户特征及事件特征分别通过两层图卷积网络之后进行点乘,通过sigmoid激活函数输出[0,1]的推荐评分,模型的训练目标是:使用户与其参加过事件的评分尽可能大、与其拒绝参加事件的评分尽可能小。通过此预训练模型可以得到训练集中所有用户的嵌入及所有事件的嵌入。
S302、构建推荐模型
请参阅图5,在推荐模型训练阶段,推荐模型的输入为训练集的用户、事件的嵌入,用户嵌入及事件嵌入分别经过两层线性层,将两个嵌入的维度降为原来的1/4,降维后的用户嵌入、事件嵌入进行点乘,点乘结果经过sigmoid激活函数即可得到推荐模型的输出评分,训练过程中推荐模型的输出为用户对此事件的回复,即用户参与过此事件时,输出为1,拒绝参与此事件时,输出为0,模型的训练目标是:模型输出评分与训练集评分一致。
在推荐模型测试阶段,模型的输入为测试集的用户、事件嵌入,经过两层线性层降维、点乘,并通过sigmoid激活函数后,模型输出[0,1]之间的实数,作为用户针对此事件的推荐评分。
S4、根据步骤S3用户评分大小排序,为用户推荐评分最高的事件。
针对每位用户,将每位用户对当天所有事件的评分递减排序,为用户推荐排序在前几位的事件,排序越前的事件,推荐成功的可能性越高。
请参阅图6,根据步骤S3得到用户在某天评分前五的推荐事件集,在此推荐事件集中,事件按照评分从大到小排序,评分越高、用户参加的可能性越大,则要优先推荐给用户,如事件23将比事件4更可能获得用户的喜欢。
推荐过程中,将采用用户尚未参加群组的事件作为候选事件集,目标为向用户推荐新群组的事件,而不是用户参加过群组的事件,使得推荐情况更具有现实意义、更加符合用户的想法。
针对步骤S3中可能存在的“冷启动”事件问题,即测试集中的事件可能是没有历史用户参与信息的新发布事件,将提取该事件所在群组中有参与记录的事件的特征,通过平均这些事件特征来表示该“冷启动”事件,从而缓解新事件带来的“冷启动”问题。
本发明再一个实施例中,提供一种社交网络事件推荐系统,该系统能够用于实现上述社交网络事件推荐方法,具体的,该社交网络事件推荐系统包括数据采集模块、特征生成模块、评分生成模块以及事件推荐模块。
其中,数据采集模块,对社交网络数据集进行数据清洗及数据提取,得到社交网络中的用户数据、事件数据及用户参与事件的记录数据;
特征生成模块,采用特征编码方式,根据数据采集模块得到的用户数据、事件数据及用户参与事件的记录数据生成用户、事件的特征;
评分生成模块,使用深度学习方法,利用特征生成模块得到的用户、事件特征对用户是否参加事件进行任务训练,学习用户对事件的评分;
事件推荐模块,根据评分生成模块确定的用户评分大小进行排序,为用户推荐评分最高的事件。
本发明再一个实施例中,提供了一种终端设备,该终端设备包括处理器以及存储器,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器用于执行所述计算机存储介质存储的程序指令。处理器可能是中央处理单元(Central ProcessingUnit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor、DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其是终端的计算核心以及控制核心,其适于实现一条或一条以上指令,具体适于加载并执行一条或一条以上指令从而实现相应方法流程或相应功能;本发明实施例所述的处理器可以用于社交网络事件推荐方法的操作,包括:
对社交网络数据集进行数据清洗及数据提取,得到社交网络中的用户数据、事件数据及用户参与事件的记录数据,作为实验数据集;采用特征编码方式,根据用户数据、事件数据及用户参与事件的记录数据生成用户特征和事件特征;使用深度学习方法,利用用户、事件特征对用户是否参加事件进行任务训练,学习用户对事件的评分;根据确定的用户评分大小进行排序,为用户推荐评分最高的事件。
本发明再一个实施例中,本发明还提供了一种存储介质,具体为计算机可读存储介质(Memory),所述计算机可读存储介质是终端设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机可读存储介质既可以包括终端设备中的内置存储介质,当然也可以包括终端设备所支持的扩展存储介质。计算机可读存储介质提供存储空间,该存储空间存储了终端的操作系统。并且,在该存储空间中还存放了适于被处理器加载并执行的一条或一条以上的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是,此处的计算机可读存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。
可由处理器加载并执行计算机可读存储介质中存放的一条或一条以上指令,以实现上述实施例中有关社交网络事件推荐方法的相应步骤;计算机可读存储介质中的一条或一条以上指令由处理器加载并执行如下步骤:
对社交网络数据集进行数据清洗及数据提取,得到社交网络中的用户数据、事件数据及用户参与事件的记录数据,作为实验数据集;采用特征编码方式,根据用户数据、事件数据及用户参与事件的记录数据生成用户特征和事件特征;使用深度学习方法,利用用户、事件特征对用户是否参加事件进行任务训练,学习用户对事件的评分;根据确定的用户评分大小进行排序,为用户推荐评分最高的事件。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中的描述和所示的本发明实施例的组件可以通过各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
采用一个社交事件网络网站Meetup在纽约市2018年1月到2019年1月的数据,具体数据集内容如下:
Meetup-纽约市 | |
用户数量 | 183553 |
事件数量 | 127741 |
用户参与事件记录数 | 968089 |
p@k通过计算前k个推荐事件中,用户实际参加的比例,以衡量推荐的准确性。
HR@k是一种常用的衡量召回率的指标。
NDCGu@k作为排序结果的评价指标,将用来评价排序的准确性。推荐系统通常为某用户返回一个item列表,假设列表长度为K,这时可以用NDCGu@k评价该排序列表与用户真实交互列表的差距。
每次实验以1个月数据作为训练测试集,以7:3比例划分训练集和测试集,并按这个月后某一天所有用户是否参加本发明推荐的所有事件作为推荐效果指标(注:推荐事件都为新群组事件)。对本发明模型及一些经典社交事件推荐算法进行若干次实验后,实验效果如下:
从实验效果中可以看出,本发明提出模型在各项推荐指标上都优于其他经典社交事件推荐模型,在推荐准确度、推荐召回率、推荐排序准确性上都比之前的方法有了不少提升。
综上所述,本发明一种社交网络事件推荐方法及系统,基于用户参与事件的记录、即用户行为进行推荐,更加贴合用户的兴趣;为用户推荐尚未加入群组的事件,这比向用户推荐其所在群组的事件更有推荐意义;不用自行设计用户参与事件的各个偏好,通过用户是否参加事件的实际行动能最直接地表明用户的喜好,从此产生的推荐原则更为合理、全面;采用的深度学习模型可处理大规模社交事件网络,且不需进行特征工程;本方法训练简单,执行快速,模型输出结果可以清晰地展现推荐评分,并且能够从各种推荐指标上提升社交网络事件推荐效果。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上内容仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明权利要求书的保护范围之内。
Claims (10)
1.一种社交网络事件推荐方法,其特征在于,包括以下步骤:
S1、对社交网络数据集进行数据清洗及数据提取,得到社交网络中的用户数据、事件数据及用户参与事件的记录数据,作为实验数据集;
S2、采用特征编码方式,根据步骤S1得到的用户数据、事件数据及用户参与事件的记录数据生成用户特征和事件特征;
S3、使用深度学习方法,利用步骤S2得到的用户、事件特征对用户是否参加事件进行任务训练,学习用户对事件的评分;
S4、根据步骤S3确定的用户评分大小进行排序,为用户推荐评分最高的事件。
2.根据权利要求1所述的方法,其特征在于,步骤S1具体为:
以用户参与事件数大于10且事件参与人数大于10作为条件,对社交网络数据集数据进行筛选;选择用户新加入群组的事件及回复记录,得到用户信息为用户id,事件信息为事件id和事件类别,用户参与事件信息为用户id,事件id,用户是否参与事件记录。
3.根据权利要求1所述的方法,其特征在于,步骤S2中,生成的用户特征包含用户id,生成的事件特征为用户参与的事件的特征,包含事件id及事件类别;将用户特征和事件特征转换为多位01编码,选择用户特征编码和事件特征编码中最长的编码长度作为最终用户特征和事件特征的编码长度。
4.根据权利要求3所述的方法,其特征在于,将用户特征转换为多位01编码具体为:
将映射后的int型用户id转换为多位01编码作为用户特征编码。
6.根据权利要求1所述的方法,其特征在于,步骤S3具体为:
将步骤S1得到的实验数据集分为训练集和测试集;构建预训练模型,将步骤S2得到的用户特征和事件特征通过预训练模型得到训练集中所有的用户稠密特征及所有的事件稠密特征;
构建推荐模型,根据用户参与事件的记录,将用户稠密特征和事件稠密特征作为推荐模型的输入,将用户对事件的回复作为推荐模型的输出,用户参与过事件时,输出为1,拒绝参与事件时,输出为0;
推荐模型训练阶段的输入为用户、事件特征,输出为0或1,推荐模型测试阶段的输入为用户特征和事件特征,输出作为用户对此事件的推荐评分。
7.根据权利要求6所述的方法,其特征在于,在推荐模型训练阶段,用户特征及事件特征分别经过两层线性层,将两个特征的维度降为原来的1/4,降维后的用户特征、事件特征进行点乘,点乘结果经过sigmoid激活函数得到推荐模型的输出评分。
8.根据权利要求6所述的方法,其特征在于,在推荐模型测试阶段,推荐模型的输入为测试集的用户、事件特征,经过两层线性层降维、点乘,并通过sigmoid激活函数后,推荐模型输出[0,1]之间的实数,作为用户针对此事件的推荐评分。
9.根据权利要求1所述的方法,其特征在于,步骤S4中,采用用户尚未参加群组的事件作为候选事件集,目标为向用户推荐新群组的事件。
10.一种社交网络事件推荐系统,其特征在于,包括:
数据采集模块,对社交网络数据集进行数据清洗及数据提取,得到社交网络中的用户数据、事件数据及用户参与事件的记录数据;
特征生成模块,采用特征编码方式,根据数据采集模块得到的用户数据、事件数据及用户参与事件的记录数据生成用户、事件的特征;
评分生成模块,使用深度学习方法,利用特征生成模块得到的用户、事件特征对用户是否参加事件进行任务训练,学习用户对事件的评分;
事件推荐模块,根据评分生成模块确定的用户评分大小进行排序,为用户推荐评分最高的事件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110876092.XA CN113704635B (zh) | 2021-07-30 | 2021-07-30 | 一种社交网络事件推荐方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110876092.XA CN113704635B (zh) | 2021-07-30 | 2021-07-30 | 一种社交网络事件推荐方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113704635A true CN113704635A (zh) | 2021-11-26 |
CN113704635B CN113704635B (zh) | 2024-05-24 |
Family
ID=78651079
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110876092.XA Active CN113704635B (zh) | 2021-07-30 | 2021-07-30 | 一种社交网络事件推荐方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113704635B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130297688A1 (en) * | 2010-08-24 | 2013-11-07 | Yahoo! Inc. | Mobile-based realtime location-sensitive social event engine |
CN107657034A (zh) * | 2017-09-28 | 2018-02-02 | 武汉大学 | 一种社交信息增强的事件社交网络推荐算法 |
CN109784395A (zh) * | 2019-01-07 | 2019-05-21 | 西安交通大学 | 一种针对不均衡数据的算法推荐方法 |
CN110020921A (zh) * | 2019-04-09 | 2019-07-16 | 浩鲸云计算科技股份有限公司 | 一种ai推荐引擎赋能商品营销方法 |
US20190392531A1 (en) * | 2018-06-26 | 2019-12-26 | International Business Machines Corporation | Social connection recommendation based on similar life events |
CN111784081A (zh) * | 2020-07-30 | 2020-10-16 | 南昌航空大学 | 一种采用知识图谱嵌入和时间卷积网络的社交网络链路预测方法 |
CN112529750A (zh) * | 2020-12-23 | 2021-03-19 | 上海松鼠课堂人工智能科技有限公司 | 基于图神经网络模型的学习事件推荐方法及系统 |
CN113094593A (zh) * | 2021-03-11 | 2021-07-09 | 西安交通大学 | 社交网络事件推荐方法、系统、设备及存储介质 |
-
2021
- 2021-07-30 CN CN202110876092.XA patent/CN113704635B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130297688A1 (en) * | 2010-08-24 | 2013-11-07 | Yahoo! Inc. | Mobile-based realtime location-sensitive social event engine |
CN107657034A (zh) * | 2017-09-28 | 2018-02-02 | 武汉大学 | 一种社交信息增强的事件社交网络推荐算法 |
US20190392531A1 (en) * | 2018-06-26 | 2019-12-26 | International Business Machines Corporation | Social connection recommendation based on similar life events |
CN109784395A (zh) * | 2019-01-07 | 2019-05-21 | 西安交通大学 | 一种针对不均衡数据的算法推荐方法 |
CN110020921A (zh) * | 2019-04-09 | 2019-07-16 | 浩鲸云计算科技股份有限公司 | 一种ai推荐引擎赋能商品营销方法 |
CN111784081A (zh) * | 2020-07-30 | 2020-10-16 | 南昌航空大学 | 一种采用知识图谱嵌入和时间卷积网络的社交网络链路预测方法 |
CN112529750A (zh) * | 2020-12-23 | 2021-03-19 | 上海松鼠课堂人工智能科技有限公司 | 基于图神经网络模型的学习事件推荐方法及系统 |
CN113094593A (zh) * | 2021-03-11 | 2021-07-09 | 西安交通大学 | 社交网络事件推荐方法、系统、设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
孙鹤立: "融合用户历史行为与社交关系的个性化社交事件推荐方法", 《计算机应用》, vol. 41, no. 2, 28 February 2021 (2021-02-28), pages 324 - 330 * |
Also Published As
Publication number | Publication date |
---|---|
CN113704635B (zh) | 2024-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020082865A1 (zh) | 用于构建机器学习模型的特征选取方法、装置以及设备 | |
CN106557558B (zh) | 一种数据分析方法及装置 | |
CN111275491A (zh) | 一种数据处理方法及装置 | |
CN113094593B (zh) | 社交网络事件推荐方法、系统、设备及存储介质 | |
CN111339427A (zh) | 一种图书信息推荐方法、装置、系统及存储介质 | |
CN107220902A (zh) | 在线社会网络的级联规模预测方法 | |
CN109615504A (zh) | 产品推荐方法、装置、电子设备和计算机可读存储介质 | |
Vilakone et al. | Movie recommendation system based on users’ personal information and movies rated using the method of k-clique and normalized discounted cumulative gain | |
CN115618101A (zh) | 基于负反馈的流媒体内容推荐方法、装置及电子设备 | |
Franco-Riquelme et al. | Indicator proposal for measuring regional political support for the electoral process on Twitter: The case of Spain’s 2015 and 2016 general elections | |
CN113656699B (zh) | 用户特征向量确定方法、相关设备及介质 | |
CN111639230A (zh) | 一种相似视频的筛选方法、装置、设备和存储介质 | |
CN104572915A (zh) | 一种基于内容环境增强的用户事件相关度计算方法 | |
Vaz de Melo | How many political parties should brazil have? a data-driven method to assess and reduce fragmentation in multi-party political systems | |
Saitov et al. | Analysis of the relationship between the users personality traits and the images they post on social media | |
CN116501979A (zh) | 信息推荐方法、装置、计算机设备及计算机可读存储介质 | |
CN106446696B (zh) | 一种信息处理方法及电子设备 | |
CN113704635B (zh) | 一种社交网络事件推荐方法及系统 | |
CN110827078A (zh) | 一种信息推荐方法、装置、设备及存储介质 | |
CN113254788B (zh) | 一种基于大数据的推荐方法、系统及可读存储介质 | |
CN114547294A (zh) | 一种基于传播过程综合信息的谣言检测方法及系统 | |
CN115311001A (zh) | 一种基于多重投票算法的预测用户换机倾向的方法及系统 | |
CN117033751A (zh) | 推荐信息处理方法、装置、存储介质及设备 | |
CN104503959B (zh) | 预测用户情感倾向的方法和设备 | |
CN111859146A (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 |