一种基于用户App数据的个性化地点推荐方法及系统
文献发布时间:2023-06-19 11:44:10
技术领域
本发明涉及大数据领域,尤其涉及一种基于用户App数据的个性化地点推荐方法及系统。
背景技术
随着城市化进程的加快,用户活动和地点功能越来越多元化,个性化地点推荐变得尤为重要。然而,由于地点繁多,单个用户的地点访问行为有限,个性化地点推荐面临严重的数据稀疏问题,难以挖掘用户兴趣。为了解决这个问题,常引入外部数据源作为辅助信息。但是,现有的技术方案不能利用外部数据源同时辅助学习用户兴趣和地点功能,它们通常使用矩阵协同分解方法辅助学习其中一种信息,从而导致推荐效果欠佳。
发明内容
为了解决上述技术问题,本发明的目的是提供一种基于用户App数据的个性化地点推荐方法及系统,同时促进用户兴趣挖掘和地点功能挖掘,进而提升个性化地点推荐性能。
本发明所采用的第一技术方案是:一种基于用户App数据的个性化地点推荐方法,包括以下步骤:
S1、获取带有地点信息的App使用记录,得到数据集;
S2、从数据集中提取用户对地点的历史访问行为、用户特征和地点特征;
S3、根据用户对地点的历史访问行为、用户特征和地点特征得到用户兴趣表征和地点功能表征;
S4、根据用户兴趣表征和地点功能表征计算用户对未访问地点的兴趣分数,并按照预设规则将地点推荐给用户。
进一步,所述从数据集中提取用户对地点的历史访问行为、用户特征和地点特征这一步骤,其具体包括:
S21、从数据集中提取用户对地点的历史访问行为并统计每个用户对每个地点的访问次数,得到每个用户对地点的访问偏好;
S22、从数据集中统计每个用户对每个App的使用次数,得到用户特征;
S23、从数据集中统计每个地点下聚合的每个App的使用次数,得到地点特征。
进一步,所述从数据集中提取用户对地点的历史访问行为并统计每个用户对每个地点的访问次数,得到每个用户对地点的访问偏好这一步骤还包括将访问次数为0的地点划分为未访问地点。
进一步,所述根据用户对地点的历史访问行为、用户特征和地点特征得到用户兴趣表征和地点功能表征这一步骤,其具体包括:
S31、将用户对地点的历史访问行为按照指定比例划分为训练集和测试集;
S32、基于图卷积神经网络,将用户特征、地点特征作为输入,将训练集中的历史访问行为作为输出真值,训练得到用户兴趣表征和地点功能表征。
进一步,所述将用户对地点的历史访问行为按照指定比例划分为训练集和测试集这一步骤具体包括:
对于每个用户,随机选择该用户访问地点中70%的地点,将这些地点的访问行为作为训练集,设其余30%的地点用户未访问过,构成测试集。
进一步,所述基于图卷积神经网络,将用户特征、地点特征作为输入,将训练集中的历史访问行为作为输出真值,训练得到用户兴趣表征和地点功能表征这一步骤,图卷积神经网络的训练步骤具体包括:
S321、根据训练集中的历史访问行为构造二部图;
S322、将用户特征和地点特征分别作为二部图的节点属性;
S323、将图卷积神经网络的层数设置为N;
S324、将二部图中的每个节点的属性信息作为图神经网络的输入,输出对应的用户兴趣表征向量和地点功能表征向量;
S325、根据用户兴趣表征向量和地点功能表征向量,基于内积计算法计算用户对地点的兴趣分数,得到用户访问行为的估计值;
S326、将用户访问行为的估计值与真实值相比较,得到估计误差;
S327、根据估计误差对图卷积神经网络进行梯度下降并返回步骤S324,直至估计误差小于理想阈值。
进一步,所述根据用户兴趣表征和地点功能表征计算用户对未访问地点的兴趣分数,并按照预设规则将地点推荐给用户这一步骤,其具体包括:
基于内积计算法,根据用户兴趣表征和地点功能表征计算用户对未访问地点的兴趣分数;
根据兴趣分数从高到低对未访问地点进行排序,并选择前K个地点推荐给用户。
本发明所采用的第二技术方案是:一种基于用户App数据的个性化地点推荐系统,包括:
记录获取模块,用于获取带有地点信息的App使用记录,得到数据集;
数据提取模块,用于从数据集中提取用户对地点的历史访问行为、用户特征和地点特征;
表征模块,用于根据用户对地点的历史访问行为、用户特征和地点特征得到用户兴趣表征和地点功能表征;
推荐模块,用于根据用户兴趣表征和地点功能表征计算用户对未访问地点的兴趣分数,并按照预设规则将地点推荐给用户。
本发明方法及系统的有益效果是:本发明通过将基于App行为的用户属性信息和地点属性信息同时按照用户地点访问行为二部图的结构进行传播,可同时促进用户兴趣挖掘和地点功能挖掘,进而提升个性化地点推荐性能。
附图说明
图1是本发明一种基于用户App数据的个性化地点推荐方法的步骤流程图;
图2是本发明一种基于用户App数据的个性化地点推荐系统的结构框图;
图3是本发明具体实施例图卷积神经网络数据处理流程的示意图。
具体实施方式
下面结合附图和具体实施例对本发明做进一步的详细说明。对于以下实施例中的步骤编号,其仅为了便于阐述说明而设置,对步骤之间的顺序不做任何限定,实施例中的各步骤的执行顺序均可根据本领域技术人员的理解来进行适应性调整。
参照图1,本发明提供了一种基于用户App数据的个性化地点推荐方法,该方法包括以下步骤:
S1、获取带有地点信息的App使用记录,得到数据集;
具体地,获取运营商提供的带有地点信息的App使用记录数据集。一共包括10000个用户在11584个地点下的App使用记录,共涉及1327个APP。
S2、从数据集中提取用户对地点的历史访问行为、用户特征和地点特征;
具体地,从App使用记录数据集中,统计每个用户对每个地点的访问次数,使用最大最小归一化算法得到每个用户对每个地点的访问频率,作为用户对地点的访问偏好,其中访问次数为0的地点代表未访问地点。
S3、根据用户对地点的历史访问行为、用户特征和地点特征得到用户兴趣表征和地点功能表征;
S4、根据用户兴趣表征和地点功能表征计算用户对未访问地点的兴趣分数,并按照预设规则将地点推荐给用户。
进一步作为本方法的优选实施例,所述从数据集中提取用户对地点的历史访问行为、用户特征和地点特征这一步骤,其具体包括:
S21、从数据集中提取用户对地点的历史访问行为并统计每个用户对每个地点的访问次数,得到每个用户对地点的访问偏好;
S22、从数据集中统计每个用户对每个App的使用次数,得到用户特征;
具体地,从App使用记录数据集中,统计每个用户对每个App的使用次数,进而使用最大最小归一化算法得到使用频率,作为每个用户基于App使用行为的用户特征。
S23、从数据集中统计每个地点下聚合的每个App的使用次数,得到地点特征。
具体地,从App使用记录数据集中,统计每个地点下聚合的每个App的使用次数,使用最大最小归一化算法得到使用频率,作为每个地点基于App使用行为的地点特征。
进一步作为本方法的优选实施例,所述从数据集中提取用户对地点的历史访问行为并统计每个用户对每个地点的访问次数,得到每个用户对地点的访问偏好这一步骤还包括将访问次数为0的地点划分为未访问地点。
进一步作为本方法的优选实施例,所述根据用户对地点的历史访问行为、用户特征和地点特征得到用户兴趣表征和地点功能表征这一步骤,其具体包括:
S31、将用户对地点的历史访问行为按照指定比例划分为训练集和测试集;
S32、基于图卷积神经网络,将用户特征、地点特征作为输入,将训练集中的历史访问行为作为输出真值,训练得到用户兴趣表征和地点功能表征。
进一步作为本方法优选实施例,所述将用户对地点的历史访问行为按照指定比例划分为训练集和测试集这一步骤具体包括:
对于每个用户,随机选择该用户访问地点中70%的地点,将这些地点的访问行为作为训练集,设其余30%的地点用户未访问过,构成测试集。
进一步作为本方法优选实施例,所述基于图卷积神经网络,将用户特征、地点特征作为输入,将训练集中的历史访问行为作为输出真值,训练得到用户兴趣表征和地点功能表征这一步骤,图卷积神经网络的训练步骤具体包括:
S321、根据训练集中的历史访问行为构造二部图;
S322、将用户特征和地点特征分别作为二部图的节点属性;
具体地,二部图图中包含两种节点,分别是用户节点和地点节点,节点之间的边根据访问行为构建,边的权重为S21中的访问频率,将S22中提取的基于App使用行为的用户特征作为用户节点的属性,将S23中提取的基于App使用行为的地点特征作为地点节点的属性。
S323、将图卷积神经网络的层数设置为N;
具体地,将图卷积神经网络的层数设置为2,使用小批量梯度下降算法作为优化算法,学习率设置为0.000001。
S324、将二部图中的每个节点的属性信息作为图神经网络的输入,输出对应的用户兴趣表征向量和地点功能表征向量;
具体地,对于二部图中的每个节点,将其属性信息作为图神经网络的输入,输出其表征向量,其中用户节点得到用户兴趣表征向量,地点节点得到地点功能表征向量,表征向量的维度均设置为32。
S325、根据用户兴趣表征向量和地点功能表征向量,基于内积计算法计算用户对地点的兴趣分数,得到用户访问行为的估计值;
S326、将用户访问行为的估计值与真实值相比较,得到估计误差;
S327、根据估计误差对图卷积神经网络进行梯度下降并返回步骤S324,直至估计误差小于理想阈值。
具体地,为了防止过拟合,采用神经元丢弃机制,丢弃概率设置为0.4。训练步骤参照图3。
进一步作为本方法优选实施例,所述根据用户兴趣表征和地点功能表征计算用户对未访问地点的兴趣分数,并按照预设规则将地点推荐给用户这一步骤,其具体包括:
基于内积计算法,根据用户兴趣表征和地点功能表征计算用户对未访问地点的兴趣分数;
根据兴趣分数从高到低对未访问地点进行排序,并选择前K个地点推荐给用户。
具体地,本实施例中,当K为3时,推荐命中率达到了73%,相比传统的矩阵协同分解方法提高了4.3%;当K为5时,推荐命中率达到93%。
如图2所示,一种基于用户App数据的个性化地点推荐系统,包括:
记录获取模块,用于获取带有地点信息的App使用记录,得到数据集;
数据提取模块,用于从数据集中提取用户对地点的历史访问行为、用户特征和地点特征;
表征模块,用于根据用户对地点的历史访问行为、用户特征和地点特征得到用户兴趣表征和地点功能表征;
推荐模块,用于根据用户兴趣表征和地点功能表征计算用户对未访问地点的兴趣分数,并按照预设规则将地点推荐给用户。
上述方法实施例中的内容均适用于本系统实施例中,本系统实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法实施例所达到的有益效果也相同。
以上是对本发明的较佳实施进行了具体说明,但本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。
- 一种基于用户App数据的个性化地点推荐方法及系统
- 一种基于用户在线英语单词交互数据的个性化推荐方法及系统