1.本发明涉及数据处理技术领域,特别是涉及一种用户画像生成方法、装置及电子设备。
背景技术:2.随着web3.0(下一代互联网,用来概括互联网发展过程中某一阶段可能出现的各种不 同的方向和特征,包括将互联网本身转化为一个泛型数据库)的发展,越来越多的用户在 区块链上从事社交、分布式金融、元宇宙、游戏等活动,由此在区块链上沉淀了大量的用 户数据,针对该用户数据如何生成对应的用户画像成为了亟待解决的问题。
技术实现要素:3.本发明实施例的目的在于提供一种用户画像生成方法、装置及电子设备,以实现用户 画像的生成。具体技术方案如下:
4.第一方面,本发明实施例提供了一种用户画像生成方法,所述方法包括:
5.获取多个用户的用户数据;
6.针对每一用户,确定该用户的用户数据中每条数据的特征词向量,其中,一条数据对 应于用户完成一次业务活动的数据;
7.对该用户对应的所有特征词向量进行聚类,得到特征向量簇;
8.针对该用户的每一特征向量簇,基于该特征向量簇中每一特征词向量与该特征向量簇 的中心特征向量之间的距离,确定该特征向量簇的选定特征向量;
9.对该用户对应的所有特征向量簇的选定特征向量进行聚类,得到选定特征向量簇;
10.选择包含选定特征向量数量最多的选定特征向量簇中的一个选定特征向量,作为该用 户的画像维度;
11.基于该用户的用户数据以及画像维度,生成该用户的用户画像。
12.可选地,所述确定该用户的用户数据中每条数据的特征词向量,包括:
13.确定该用户对应的用户数据,所述用户数据包括至少一条数据,每一条数据中包括: 业务区块链标识,区块标识,活动时间,活动内容以及活动结果;
14.针对该用户的用户数据中每一条数据,将所述业务区块链标识作为所述业务区块链标 识对应的特征词,将所述区块标识作为所述区块标识对应的特征词,以及将所述活动时间 作为所述活动时间对应的特征词;
15.对所述活动结果进行语义识别,将语义识别的结果作为所述活动结果对应的特征词;
16.对所述活动内容进行特征词提取,得到所述活动内容对应的特征词;
17.基于所述业务区块链标识对应的特征词,所述区块标识对应的特征词,所述活动时间 对应的特征词,所述活动结果对应的特征词以及所述活动内容对应的特征词,确定该
条数 据的特征词向量。
18.可选地,所述对所述活动内容进行特征词提取,得到所述活动内容对应的特征词,包 括:
19.对所述活动内容进行分词,得到多个第一词语;
20.确定每一所述第一词语的词性;
21.对所述活动内容进行语义识别,得到所述活动内容对应的目标语义;
22.针对每一第一词语,基于该第一词语的词性以及所述目标语义,确定该第一词语与所 述目标语义的相似度值,其中,所述相似度值标识了所述第一词语表征所述目标语义的程 度;
23.基于各第一词语与所述目标语义的相似度值,对各所述第一词语进行排序,得到活动 词序列,将所述活动词序列确定为所述活动内容对应的特征词。
24.可选地,所述针对每一第一词语,基于该第一词语的词性以及所述目标语义,确定该 第一词语与所述目标语义的相似度值,包括:
25.对所述目标语义进行分词,得到多个第二词语;
26.从所述多个第二词语中确定重点词;
27.确定所述重点词的词性;
28.针对每一第一词语,确定该第一词语的词性是否与所述重点词的词性相同;
29.如果该第一词语的词性与所述重点词的词性相同,则确定该第一词语的权重为1;
30.如果该第一词语的词性与所述重点词的词性不相同,则确定所述多个第二词语中是否 存在与该第一词语的词性相同的第二词语;
31.如果所述多个第二词语中存在与该第一词语的词性相同的第二词语,则确定该第一词 语的权重为:与该第一词语的词性相同的第二词语的数量/第二词语的总数量;
32.如果所述多个第二词语中不存在与该第一词语的词性相同的第二词语,则确定该第一 词语的权重为:1/(n
×
第二词语的总数量),n为大于1的数;
33.针对每一第一词语,基于该第一词语的权重以及该第一词语与所述目标语义之间的距 离,确定该第一词语与所述目标语义的相似度值。
34.可选地,所述针对该用户的每一特征向量簇,基于该特征向量簇中每一特征词向量与 该特征向量簇的中心特征向量之间的距离,确定该特征向量簇的选定特征向量,包括:
35.针对该用户的每一特征向量簇,确定该特征向量簇的中心特征向量;
36.确定该特征向量簇中的每一特征词向量与该特征向量簇的中心特征向量之间的距离;
37.根据该特征向量簇中的每一特征词向量与该特征向量簇的中心特征向量之间的距离, 计算该特征向量簇的距离均值和均方差;
38.将与该特征向量簇的中心特征向量之间的距离不大于目标阈值的特征词向量,确定为 该特征向量簇的选定特征向量,其中,所述目标阈值根据所述特征向量簇的距离均值、均 方差,所述特征向量簇中特征词向量的个数以及特征词向量的总个数确定。
39.可选地,所述选择包含选定特征向量数量最多的选定特征向量簇中的一个选定特征向 量,作为该用户的画像维度,包括:
40.选择包含选定特征向量数量最多的选定特征向量簇中的一个选定特征向量,作为目标 特征向量;
41.将所述目标特征向量中全部的特征词,作为该用户的画像维度;
42.或者,按照预设规则在所述目标特征向量中选择部分特征词,作为该用户的画像维度。
43.可选地,所述方法还包括:
44.根据用户的用户标识,查询画像区块链中用户节点与用户标识关系表,确定所述用户 节点与用户标识关系表中是否存在所述用户标识;
45.在所述用户节点与用户标识关系表中存在所述用户标识的情况下,确定所述用户标识 对应的目标用户节点;
46.在所述目标用户节点的链表中创建一个新的链表节点,并将所述用户的用户画像存储 至所述新的链表节点中;
47.在所述用户节点与用户标识关系表中不存在所述用户标识的情况下,在所述画像区块 链中创建一个新的用户节点,并将所述新的用户节点与所述用户标识的对应关系更新至所 述用户节点与用户标识关系表中;
48.在所述新的用户节点中建立一个链表,并将所述用户的用户画像存储至该链表的新链 表节点中。
49.可选地,所述方法还包括:
50.获取第一用户针对目标用户画像的使用请求,所述使用请求中包括:所述目标用户画 像对应第二用户的第二用户标识;
51.根据所述第二用户标识,查询画像区块链中用户节点与用户标识关系表,确定所述第 二用户标识对应的第二用户节点,所述第二用户节点中包含第二用户的信息;
52.根据所述第二用户的信息,向所述第二用户发送目标用户画像被使用的请求;
53.在接收到所述第二用户反馈的授权消息时,读取所述目标用户画像,并将所述目标用 户画像反馈给所述第一用户;
54.在接收到所述第二用户反馈的不授权消息时,向所述第一用户反馈未经授权使用的信 息。
55.可选地,所述方法还包括:
56.获取指定用户的用户画像,基于该用户画像预测所述指定用户的偏好信息;
57.基于所述偏好信息,向所述指定用户推荐目标产品。
58.第二方面,本发明实施例提供了一种用户画像生成装置,所述装置包括:
59.数据获取模块,用于获取多个用户的用户数据;
60.特征确定模块,用于针对每一用户,确定该用户的用户数据中每条数据的特征词向量, 其中,一条数据对应于用户完成一次业务活动的数据;
61.第一聚类模块,用于对该用户对应的所有特征词向量进行聚类,得到特征向量簇;
62.特征选定模块,用于针对该用户的每一特征向量簇,基于该特征向量簇中每一特征词 向量与该特征向量簇的中心特征向量之间的距离,确定该特征向量簇的选定特征向量;
63.第二聚类模块,用于对该用户对应的所有特征向量簇的选定特征向量进行聚类,
得到 选定特征向量簇;
64.维度确定模块,用于选择包含选定特征向量数量最多的选定特征向量簇中的一个选定 特征向量,作为该用户的画像维度;
65.画像生成模块,用于基于该用户的用户数据以及画像维度,生成该用户的用户画像。
66.可选地,所述特征确定模块,包括:
67.第一确定子模块,用于确定该用户对应的用户数据,所述用户数据包括至少一条数据, 每一条数据中包括:业务区块链标识,区块标识,活动时间,活动内容以及活动结果;
68.第二确定子模块,用于针对该用户的用户数据中每一条数据,将所述业务区块链标识 作为所述业务区块链标识对应的特征词,将所述区块标识作为所述区块标识对应的特征词, 以及将所述活动时间作为所述活动时间对应的特征词;
69.第三确定子模块,用于对所述活动结果进行语义识别,将语义识别的结果作为所述活 动结果对应的特征词;
70.第四确定子模块,用于对所述活动内容进行特征词提取,得到所述活动内容对应的特 征词;
71.第五确定子模块,用于基于所述业务区块链标识对应的特征词,所述区块标识对应的 特征词,所述活动时间对应的特征词,所述活动结果对应的特征词以及所述活动内容对应 的特征词,确定该条数据的特征词向量。
72.可选地,所述第四确定子模块,包括:
73.第一分词单元,用于对所述活动内容进行分词,得到多个第一词语;
74.第一确定单元,用于确定每一所述第一词语的词性;
75.语义识别单元,用于对所述活动内容进行语义识别,得到所述活动内容对应的目标语 义;
76.相似度确定单元,用于针对每一第一词语,基于该第一词语的词性以及所述目标语义, 确定该第一词语与所述目标语义的相似度值,其中,所述相似度值标识了所述第一词语表 征所述目标语义的程度;
77.第二确定单元,用于基于各第一词语与所述目标语义的相似度值,对各所述第一词语 进行排序,得到活动词序列,将所述活动词序列确定为所述活动内容对应的特征词。
78.可选地,所述相似度确定单元,具体用于:
79.对所述目标语义进行分词,得到多个第二词语;
80.从所述多个第二词语中确定重点词;
81.确定所述重点词的词性;
82.针对每一第一词语,确定该第一词语的词性是否与所述重点词的词性相同;
83.如果该第一词语的词性与所述重点词的词性相同,则确定该第一词语的权重为1;
84.如果该第一词语的词性与所述重点词的词性不相同,则确定所述多个第二词语中是否 存在与该第一词语的词性相同的第二词语;
85.如果所述多个第二词语中存在与该第一词语的词性相同的第二词语,则确定该第一词 语的权重为:与该第一词语的词性相同的第二词语的数量/第二词语的总数量;
86.如果所述多个第二词语中不存在与该第一词语的词性相同的第二词语,则确定该
第一 词语的权重为:1/(n
×
第二词语的总数量),n为大于1的数;
87.针对每一第一词语,基于该第一词语的权重以及该第一词语与所述目标语义之间的距 离,确定该第一词语与所述目标语义的相似度值。
88.可选地,所述特征选定模块,具体用于:
89.针对该用户的每一特征向量簇,确定该特征向量簇的中心特征向量;
90.确定该特征向量簇中的每一特征词向量与该特征向量簇的中心特征向量之间的距离;
91.根据该特征向量簇中的每一特征词向量与该特征向量簇的中心特征向量之间的距离, 计算该特征向量簇的距离均值和均方差;
92.将与该特征向量簇的中心特征向量之间的距离不大于目标阈值的特征词向量,确定为 该特征向量簇的选定特征向量,其中,所述目标阈值根据所述特征向量簇的距离均值、均 方差,所述特征向量簇中特征词向量的个数以及特征词向量的总个数确定。
93.可选地,所述维度确定模块,包括:
94.特征选择子模块,用于选择包含选定特征向量数量最多的选定特征向量簇中的一个选 定特征向量,作为目标特征向量;
95.第一维度确定子模块,用于将所述目标特征向量中全部的特征词,作为该用户的画像 维度;
96.第二维度确定子模块,用于按照预设规则在所述目标特征向量中选择部分特征词,作 为该用户的画像维度。
97.可选地,所述装置还包括:
98.第一查询模块,用于根据用户的用户标识,查询画像区块链中用户节点与用户标识关 系表,确定所述用户节点与用户标识关系表中是否存在所述用户标识;
99.节点确定模块,用于在所述用户节点与用户标识关系表中存在所述用户标识的情况下, 确定所述用户标识对应的目标用户节点;
100.第一画像存储模块,用于在所述目标用户节点的链表中创建一个新的链表节点,并将 所述用户的用户画像存储至所述新的链表节点中;
101.节点创建模块,用于在所述用户节点与用户标识关系表中不存在所述用户标识的情况 下,在所述画像区块链中创建一个新的用户节点,并将所述新的用户节点与所述用户标识 的对应关系更新至所述用户节点与用户标识关系表中;
102.第二画像存储模块,用于在所述新的用户节点中建立一个链表,并将所述用户的用户 画像存储至该链表的新链表节点中。
103.可选地,所述装置还包括:
104.请求获取模块,用于获取第一用户针对目标用户画像的使用请求,所述使用请求中包 括:所述目标用户画像对应第二用户的第二用户标识;
105.第二查询模块,用于根据所述第二用户标识,查询画像区块链中用户节点与用户标识 关系表,确定所述第二用户标识对应的第二用户节点,所述第二用户节点中包含第二用户 的信息;
106.请求发送模块,用于根据所述第二用户的信息,向所述第二用户发送目标用户画像被 使用的请求;
107.画像反馈模块,用于在接收到所述第二用户反馈的授权消息时,读取所述目标用户画 像,并将所述目标用户画像反馈给所述第一用户;
108.信息反馈模块,用于在接收到所述第二用户反馈的不授权消息时,向所述第一用户反 馈未经授权使用的信息。
109.可选地,所述装置还包括:
110.偏好预测模块,用于获取指定用户的用户画像,基于该用户画像预测所述指定用户的 偏好信息;
111.产品推荐模块,用于基于所述偏好信息,向所述指定用户推荐目标产品。
112.第三方面,本发明实施例提供了一种电子设备,包括处理器、通信接口、存储器和通 信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
113.存储器,用于存放计算机程序;
114.处理器,用于执行存储器上所存放的程序时,实现上述任一所述的方法步骤。
115.第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质 内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述的方法步骤。
116.本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使 得计算机执行上述任一所述的方法步骤。
117.本发明实施例提供的一种用户画像生成方法、装置及电子设备,实现了个性化维度的 用户画像生成。
118.当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
119.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技 术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明 的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的实施例。
120.图1为本发明实施例提供的一种用户画像生成方法的流程示意图;
121.图2为本发明实施例提供的一种分析方法展示示意图;
122.图3为本发明实施例提供的一种用户画像展示示意图;
123.图4为本发明实施例提供的一种确定特征词向量实施方式示意图;
124.图5为本发明实施例提供的一种确定活动内容特征词实施方式示意图;
125.图6为本发明实施例提供的一种确定相似度实施方式示意图;
126.图7为本发明实施例提供的一种用户画像存储实施方式示意图;
127.图8为本发明实施例提供的一种使用用户画像的实施方式示意图;
128.图9为本发明实施例提供的一种用户画像使用实施方式示意图;图10为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
129.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地 描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本 发明中的实施例,本领域普通技术人员基于本技术所获得的所有其他实施例,都属于本发 明保护的范围。
130.现有技术在生成用户画像的过程中,先针对所有用户确定用户画像的画像维度,比如 年龄、姓名以及行为特点等,进一步采集所确定画像维度下的用户数据,为用户生成相应 的用户画像。在该方法中,每一用户对应的用户画像维度相同,且是在确定的固定维度下 对用户特征进行区分的,无法体现用户的个性化差异。
131.为解决上述问题,本发明实施例提供了一种用户画像生成方法,在获取多个用户的用 户数据之后,针对每一用户,确定该用户的用户数据中每条数据的特征词向量,对该用户 对应的所有特征词向量进行聚类,得到特征向量簇,以及针对该用户的每一特征向量簇, 基于该特征向量簇中每一特征词向量与该特征向量簇的中心特征向量之间的距离,确定该 特征向量簇的选定特征向量,对该用户对应的所有特征向量簇的选定特征向量进行聚类, 得到选定特征向量簇,选择包含选定特征向量数量最多的选定特征向量簇中的一个选定特 征向量,作为该用户的画像维度,进而基于该用户的用户数据以及画像维度,生成该用户 的用户画像,以实现个性化维度的用户画像生成。
132.下面通过具体实施例对本发明提供的用户画像生成方法进行详细说明。
133.本发明实施例提供的用户画像生成方法可以应用于电子设备,如终端、服务器等设备。 本发明实施例提供的用户画像生成方法可以应用于区块链场景中,为区块链上沉淀的用户 数据生成个性化维度的用户画像。
134.参见图1,图1为本发明实施例提供的一种用户画像生成方法,包括:
135.s101,获取多个用户的用户数据。
136.随着web3.0的发展,越来越多的用户在区块链上从事社交、分布式金融、元宇宙、游 戏等活动,由此在区块链上沉淀了大量的用户数据。本发明实施例中,可以读取用户在区 块链上沉淀的各种行为数据,比如太坊、solana(集购物、娱乐、休闲、旅游,文化于一身 的一站式体验消费场所)、bsc(balanced score card,平衡计分卡)等主流公链上沉淀的数 据,涉及分布式金融、net(non-fungible token,非同质化代币)数字藏品以及元宇宙等 活动。
137.一个例子中,可以通过爬虫等方式获取多个用户在区块链上的用户数据,每一用户对 应的用户数据包括至少一条数据,每一条数据中包含该用户在区块链上活动所产生的各个 维度的行为数据,比如活动时间、活动内容等等。针对获取的多个用户的用户数据,可以 将用户数据以数据宽表的方式存储于数据仓库中,以便于后续对该用户数据的使用。宽表 即字段比较多的数据库表,通常是指业务主题相关的指标、维度、属性关联在一起的一张 数据库表。
138.s102,针对每一用户,确定该用户的用户数据中每条数据的特征词向量。
139.每一用户对应的用户数据包括至少一条数据,一条数据对应于用户完成一次业务活动 的数据。针对每一用户的用户数据中每条数据,可以根据该条数据中包含的各维度数据, 确定该条数据对应的特征词向量,得到该用户的用户数据中每条数据的特征词向量,
该特 征词向量中即包含该用户的用户数据中每条数据的特征词。示例性的,一条数据中包含的 各维度数据可以包括活动时间,活动内容以及活动结果等等。
140.s103,对该用户对应的所有特征词向量进行聚类,得到特征向量簇。
141.在确定该用户的用户数据中每条数据的特征词向量后,可以采用k-means(k-meansclustering algorithm,k均值聚类算法)聚类算法,均值偏移聚类算法,dbscan(density-basedspatial clustering of applications with noise,具有噪声的基于密度的聚类方法)聚类算法, 使用gmm(gaussian mixture model,高斯混合模型)的em(expectation-maximization,期 望最大化)聚类算法或者层次聚类算法等各聚类算法中的任一种,对该用户对应的所有特 征词向量进行聚类,将具有相似特征词的特征词向量聚为一类,得到特征向量簇。具体的, 对该用户对应的所有特征词向量进行聚类,得到特征向量簇的详细实施过程,可参见现有 技术的实现。
142.s104,针对该用户的每一特征向量簇,基于该特征向量簇中每一特征词向量与该特征 向量簇的中心特征向量之间的距离,确定该特征向量簇的选定特征向量。
143.针对该用户的每一特征向量簇,计算该特征向量簇中每一特征词向量与该特征向量簇 的中心特征向量之间的距离,再根据每一特征词向量与该特征向量簇的中心特征向量之间 的距离,判定是否将该特征词向量确定为该特征向量簇的选定特征向量。其中,在上述对 该用户对应的所有特征词向量进行聚类的过程中,已确定每一特征向量簇的中心特征向量。
144.在一些实施例中,针对该用户的每一特征向量簇,基于该特征向量簇中每一特征词向 量与该特征向量簇的中心特征向量之间的距离,确定该特征向量簇的选定特征向量的实施 过程可以包括:
145.针对该用户的每一特征向量簇,确定该特征向量簇的中心特征向量;
146.确定该特征向量簇中的每一特征词向量与该特征向量簇的中心特征向量之间的距离;
147.根据该特征向量簇中的每一特征词向量与该特征向量簇的中心特征向量之间的距离, 计算该特征向量簇的距离均值和均方差;
148.将与该特征向量簇的中心特征向量之间的距离不大于目标阈值的特征词向量,确定为 该特征向量簇的选定特征向量,其中,目标阈值根据特征向量簇的距离均值、均方差,特 征向量簇中特征词向量的个数以及特征词向量的总个数确定。
149.在上述对该用户对应的所有特征词向量进行聚类的过程中,已确定每一特征向量簇的 中心特征向量,进而可以直接获取每一特征向量簇的中心特征向量。因在聚类时是根据每 一特征词向量与该特征向量簇的中心特征向量之间的距离实现的,故而,在聚类的过程中 每一特征词向量与该特征向量簇的中心特征向量之间的距离已确定,进而针对该用户的每 一特征向量簇,可以直接获取该特征向量簇中每一特征词向量与该特征向量簇的中心特征 向量之间的距离。
150.进一步,根据该特征向量簇中的每一特征词向量与该特征向量簇的中心特征向量之间 的距离,计算各距离对应的距离均值和均方差,得到该特征向量簇的距离均值和均方差, 再将与该特征向量簇的中心特征向量之间的距离不大于目标阈值的特征词向量,确定为该 特征向量簇的选定特征向量,该目标阈值根据特征向量簇的距离均值、均方差,特征
向量 簇中特征词向量的个数以及特征词向量的总个数确定,其中,特征词向量的总个数是相当 于一个用户的。
151.一个例子中,该目标阈值可以表示为:距离均值+均方差
×
(1+特征向量簇中特征词向 量的个数/特征词向量的总个数)。
152.采用上述方式确定特征向量簇的选定特征向量,不管特征向量簇的大小(即特征向量 簇中特征词向量数量的多少),均能够确定该特征向量簇的选定特征向量,保证了选定特征 向量可以全面的描述用户特征,尽量避免由于特征词向量数量不足而忽略某一特征向量簇, 造成用户画像维度的丢失。
153.另外,在体现特征对用户特性的反应程度上,特征词向量数量多的特征向量簇比特征 词向量数量少的特征向量簇更能体现用户整体特性,采用上述方式确定特征向量簇的选定 特征向量,使得特征词向量数量多的特征向量簇的选定特征向量,多于特征词向量数量少 的特征向量簇的选定特征向量,这样即保证了用户画像维度的全面性,又能够保证核心维 度的重点性。
154.参见图1,s105,对该用户对应的所有特征向量簇的选定特征向量进行聚类,得到选定 特征向量簇。
155.该步骤的实现过程,可参见上述步骤s103对该用户对应的所有特征词向量进行聚类, 得到特征向量簇的实现过程,本发明实施例在此不再赘述。
156.s106,选择包含选定特征向量数量最多的选定特征向量簇中的一个选定特征向量,作 为该用户的画像维度。
157.在得到选定特征向量簇之后,先确定包含选定特征向量数量最多的选定特征向量簇, 将其作为目标选定特征向量簇,进一步可以选择目标选定特征向量簇的中心特征向量作为 该用户的画像维度,或者选择目标选定特征向量簇中包含特征词最多的一个选定特征向量 作为该用户的画像维度,还可以在目标选定特征向量簇中随机选择一个选定特征向量作为 该用户的画像维度等。
158.在一些实施例中,选择包含选定特征向量数量最多的选定特征向量簇中的一个选定特 征向量,作为该用户的画像维度,可以包括:
159.选择包含选定特征向量数量最多的选定特征向量簇中的一个选定特征向量,作为目标 特征向量;
160.将目标特征向量中全部的特征词,作为该用户的画像维度;
161.或者,按照预设规则在目标特征向量中选择部分特征词,作为该用户的画像维度。
162.可以选择包含选定特征向量数量最多的选定特征向量簇的中心特征向量,包含特征词 最多的一个选定特征向量或者随机选择的一个选定特征向量,作为目标特征向量,进一步 将目标特征向量中全部的特征词作为该用户的画像维度,或者按照预设规则在目标特征向 量中选择部分特征词,作为该用户的画像维度。其中,预设规则可以是出现频率最高,或 者出现频率最高且权重最高等。
163.将包含选定特征向量数量最多的选定特征向量簇的目标特征向量中全部的特征词,作 为该用户的画像维度,或者选择目标特征向量中出现频率最高的部分特征词,作为该用户 的画像维度,使得所确定的用户的画像维度能够满足维度丰富性的同时满足重点维度的全 面性。
164.s107,基于该用户的用户数据以及画像维度,生成该用户的用户画像。
165.在确定用户的画像维度后,可以针对该用户的用户数据中每条数据,采集该条数据在 画像维度上的数据值,采用目标分析方法对所有画像维度上的数据值进行分析,以生成该 用户的用户画像。其中,采用目标分析方法对所有画像维度上的数据值进行分析,以生成 该用户的用户画像的详细实现过程可以与现有技术相同,本发明实施例在此不再赘述。
166.示例性的,目标分析方法可以是多种分析方法中的任一种方法,该多种分析方法如图2 所示,可以包括有监督学习方法,无监督学习方法或者自适应学习方法等,其中,有监督 学习方法比如回归分析方法以及cnn(convolutional neural network,卷积神经网络)深度 学习等,无监督学习方法比如聚类分析法,自适应学习方法比如gan(generative adversarialnetwork,生成对抗网络)网络预测方法等。
167.示例性的,生成用户的用户画像如图3所示,图3中表示用户alice的用户画像,其中包 含了金融方面的普通交易者、流动性提供者以及做市商等维度的画像数据(具体画像数据 未显示),社交方面的dao(data access object,数据访问对象)参与者以及stepn(solana 区块链上的“移动出行”应用程序)参与者等维度的画像数据,藏品方面的蚂蚁数字产品拥有 者以及数字藏品钻石手等维度的画像数据,元宇宙方面的元宇宙初级分析、roblox(多人在 线创作游戏)深度参与者以及sandbox(虚拟类软件)土地建设人等维度的画像数据,以及 游戏方面的dcl游戏高手以及某gamefi的初级入门者等维度的画像数据,图3中具体维度的 画像数据未显示。
168.本发明实施例中,针对每一用户,对该用户的用户数据中每条数据进行分析,确定该 用户的用户数据中每条数据的特征词向量,对该用户对应的所有特征词向量进行聚类得到 特征向量簇,针对该用户的每一特征向量簇,基于该特征向量簇中每一特征词向量与该特 征向量簇的中心特征向量之间的距离,确定该特征向量簇的选定特征向量,进一步对该用 户对应的所有特征向量簇的选定特征向量进行聚类得到选定特征向量簇,选择包含选定特 征向量数量最多的选定特征向量簇中的一个选定特征向量作为该用户的画像维度,得到的 画像维度能够更全面的表征用户的行为特征,进而使得根据该画像维度所生成的用户画像 能够更准确的反应用户的特点,实现千人千维度的个性化维度用户画像。
169.在一些实施例中,参见图4,上述步骤s102中确定该用户的用户数据中每条数据的特征 词向量,可以包括:
170.s401,确定该用户对应的用户数据。
171.本发明实施例中,在获取上述多个用户的用户数据之后,可以针对每一用户,确定该 用户对应的用户数据,每一用户的用户数据中包括至少一条数据,每一条数据中可以包括: 业务区块链标识,区块标识,活动时间,活动内容以及活动结果等多个维度的数据。其中, 业务区块链标识表示产生该条数据的业务区块链的标识信息,区块标识表示产生该条数据 的业务区块链中区块的标识信息。
172.一个例子中,用户在业务区块链上进行活动,完成一次活动,将该活动的所有信息(比 如用户标识,业务区块链标识,区块标识,活动时间,活动内容以及活动结果等)形成数 据包,该数据包对应于一条数据,即一条数据对应于用户完成一次业务活动的数据,对每 条数据进行解析,可以获得该条数据包含的用户标识,业务区块链标识,区块标识,活动 时
间,活动内容以及活动结果等信息。
173.在确定该用户对应的用户数据时,可以确定该用户对应的所有用户数据,该所有用户 数据可以是包含用户在区块链上活动开始至当前的所有数据,如果用户对应的所有用户数 据的数据量相对很大,也可以将该用户在预设时间段内的数据确定为该用户对应的用户数 据,其中,预设时间段比如可以是最近一年,最近半年等等,具体可根据实际情况进行设 置,只要保证所确定的用户数据的数据量丰富,且产生该用户数据的时间距离当前时间最 近即可。
174.因用户行为特点会随着时间的推移而产生变化,对距离当前时间最近的用户数据进行 分析,才能保证画像维度与用户当前行为特点相匹配,进而保证最终生成的用户画像能够 更准确的反应用户当前最真实的行为特点。
175.s402,针对该用户的用户数据中每一条数据,将业务区块链标识作为业务区块链标识 对应的特征词,将区块标识作为区块标识对应的特征词,以及将活动时间作为活动时间对 应的特征词。
176.s403,对活动结果进行语义识别,将语义识别的结果作为活动结果对应的特征词。
177.一个例子中,可以利用语义识别模型对每条数据中的活动结果进行语义识别,将语义 识别的结果作为活动结果对应的特征词。其中,语义识别模型可以是预先根据样本文本以 及样本文本对应的语义识别结果训练得到的。当然,能够对活动结果进行语义识别,得到 语义识别结果的方式均属于本发明的保护范围内。
178.s404,对活动内容进行特征词提取,得到活动内容对应的特征词。
179.s405,基于业务区块链标识对应的特征词,区块标识对应的特征词,活动时间对应的 特征词,活动结果对应的特征词以及活动内容对应的特征词,确定该条数据的特征词向量。
180.针对每条数据中的活动内容进行特征词提取,以得到活动内容对应的特征词,进一步 将业务区块链标识对应的特征词,区块标识对应的特征词,活动时间对应的特征词,活动 结果对应的特征词以及活动内容对应的特征词组成特征词向量,以得到该条数据的特征词 向量。
181.本发明实施例中,针对每一用户对应的用户数据中的每条数据,分别确定该条数据中 包含的业务区块链标识,区块标识,活动时间,活动内容以及活动结果对应的特征词,将 各特征词组成的特征词向量确定为该条数据的特征词向量,以便于更准确全面的确定用户 的画像维度。
182.在一些实施例中,参见图5,上述步骤s404中对活动内容进行特征词提取,得到活动内 容对应的特征词,可以包括:
183.s501,对活动内容进行分词,得到多个第一词语;
184.s502,确定每一第一词语的词性;
185.s503,对活动内容进行语义识别,得到活动内容对应的目标语义;
186.s504,针对每一第一词语,基于该第一词语的词性以及目标语义,确定该第一词语与 目标语义的相似度值。其中,相似度值标识了第一词语表征目标语义的程度。
187.s505,基于各第一词语与目标语义的相似度值,对各第一词语进行排序,得到活动词 序列,将活动词序列确定为活动内容对应的特征词。
188.针对每条数据的活动内容,先对该活动内容进行分词,得到多个第一词语,再确定每 一第一词语的词性,该词性例如可以是名词、动词以及形容词等。
189.对活动内容进行语义识别,得到活动内容对应的目标语义的方式,可以与上述对活动 结果进行语义识别,得到语义识别的结果的方式相同。
190.在确定活动内容对应的每一第一词语的词性以及活动内容对应的目标语义后,可以计 算每一第一词语与目标语义的相似度值,以确定各第一词语表征目标语义的程度。进一步 的,可以按照各第一词语与目标语义的相似度值从高到低的顺序,对各第一词语进行排序 得到活动词序列,将该活动词序列确定为活动内容对应的特征词。
191.在一些实施例中,参见图6,上述步骤s504中针对每一第一词语,基于该第一词语的词 性以及目标语义,确定该第一词语与目标语义的相似度值,包括:
192.s601,对目标语义进行分词,得到多个第二词语;
193.s602,从多个第二词语中确定重点词;
194.s603,确定重点词的词性;
195.s604,针对每一第一词语,确定该第一词语的词性是否与重点词的词性相同;
196.s605,如果该第一词语的词性与重点词的词性相同,则确定该第一词语的权重为1;
197.s606,如果该第一词语的词性与重点词的词性不相同,则确定多个第二词语中是否存 在与该第一词语的词性相同的第二词语;
198.s607,如果多个第二词语中存在与该第一词语的词性相同的第二词语,则确定该第一 词语的权重为:与该第一词语的词性相同的第二词语的数量/第二词语的总数量;
199.s608,如果多个第二词语中不存在与该第一词语的词性相同的第二词语,则确定该第 一词语的权重为:1/(n
×
第二词语的总数量),n为大于1的数;
200.s609,针对每一第一词语,基于该第一词语的权重以及该第一词语与所目标语义之间 的距离,确定该第一词语与目标语义的相似度值。
201.在确定活动内容对应的每一第一词语的词性以及活动内容对应的目标语义后,可以进 一步对目标语义进行分词,得到多个第二词语,从多个第二词语中确定出重点词。示例性 的,目标语义为购买产品,经过分词后得到的第二词语为“购买”和“产品”,分别计算“购 买”和“产品”对目标语义的贡献程度,在“购买”对目标语义的贡献程度高于“产品
”ꢀ
对目标语义的贡献程度时,得到该目标语义的重点词为“购买”;目标语义为搜索男装产品, 经过分词后得到的第二词语为“搜索”、“男装”和“产品”,分别计算“搜索”、“男装”和
ꢀ“
产品”对目标语义的贡献程度,在“男装”对目标语义的贡献程度高于“搜索”和“产 品”对目标语义的贡献程度时,得到该目标语义的重点词为“男装”等等。其中,计算分 词对语义的贡献程度以及如何确定重点词的具体实现方式可以参见现有技术的实现。
202.本发明实施例一个例子中,对每一第一词语的词义进行识别,进一步计算该第一词语 的词义与上述目标语义之间的距离,得到该第一词语与目标语义之间的距离。在确定每一 第一词语的权重的情况下,可以针对每一第一词语,将该第一词语的权重和该第一词语与 目标语义之间的距离的乘积,确定为该第一词语与目标语义的相似度值。示例性的,可以 通过计算第一词语的词义与目标语义之间的余弦距离或欧式距离等方式,来计算第一词语 的词义与目标语义之间的距离。
203.本发明实施例中,根据活动内容第一词语的词性以及活动内容的目标语义,确定每一 第一词语与目标语义的相似度值,能够更准确的确定各第一词语表征目标语义的程度。
204.在生成用户的用户画像之后,为了将用户画像的所有权归还给用户,即该用户的用户 画像被使用时,该用户是有所感知的,在一些实施例中,在上述实施例的基础上,还可以 将所生成的用户画像存储于画像区块链中,并为用户画像配置对应用户的身份信息,使得 用户基于该身份信息对用户画像享有行为权利。其中,画像区块链中可以包含头节点和非 头节点,该头节点也可以称为画像节点,画像节点中维护一张用户节点与用户标识的对应 关系表,画像区块链中的非头节点可以为用户节点,每一用户节点对应一个用户,每一用 户节点对应一个链表,在该链表中存储该用户的用户画像。基于此,在一些实施例中,在 上述实施例的基础上,参见图7,上述方法还可以包括以下步骤:
205.s701,根据用户的用户标识,查询画像区块链中用户节点与用户标识关系表,确定用 户节点与用户标识关系表中是否存在用户标识。
206.在需要对用户画像进行存储时,接收用户画像存储请求,该用户画像存储请求中可以 包含用户画像以及其对应用户的用户标识,查询画像区块链中画像节点维护的用户节点与 用户标识关系表,以确定用户节点与用户标识关系表中是否存在需要存储用户画像对应的 用户标识。如果存在,表明已经存储过该用户的用户画像,则执行步骤702和步骤703的操 作;如果不存在,表明未存储过该用户的用户画像,则执行步骤704和步骤705的操作.
207.s702,在用户节点与用户标识关系表中存在用户标识的情况下,确定用户标识对应的 目标用户节点。
208.s703,在目标用户节点的链表中创建一个新的链表节点,并将用户的用户画像存储至 新的链表节点中。
209.在用户节点与用户标识关系表中存在用户标识的情况下,表明已经存储过该用户的用 户画像,则可以通过该用户节点与用户标识关系表确定用户标识对应的目标用户节点,该 目标用户节点还可以存储有该用户的信息(比如身份信息等),以将用户身份与用户画像进 行绑定,进一步在目标用户节点的链表中创建一个新的链表节点,并将用户的用户画像存 储至新的链表节点中。
210.一个例子中,用户画像可以以二维数组的形式进行存储,该二维数组中一个维度表示 用户画像的生成时间,另一个维度表示用户画像。将用户的用户画像存储至新的链表节点 中,可以是将用户画像以及该用户画像的生成时间形成一个二维数组,然后将该二维数组 存储至新的链表节点中。
211.s704,在用户节点与用户标识关系表中不存在用户标识的情况下,在画像区块链中创 建一个新的用户节点,并将新的用户节点与用户标识的对应关系更新至用户节点与用户标 识关系表中。
212.s705,在新的用户节点中建立一个链表,并将用户的用户画像存储至该链表的新链表 节点中。
213.在用户节点与用户标识关系表中不存在用户标识的情况下,表明未存储过该用户的用 户画像,可以在画像区块链的最后创建一个新的用户节点,该新的用户节点对应需要
存储 用户画像的该用户,可以将该用户的信息也存储至该新的用户节点中,并将新的用户节点 与用户标识的对应关系更新至画像节点维护的用户节点与用户标识关系表中。进一步在新 的用户节点中建立一个链表,该链表中包含一个新链表节点,将用户的用户画像存储至该 链表的新链表节点中。
214.本发明实施例中,在画像区块链上存储用户画像,画像区块链上每一用户节点对应一 个用户,进而用户画像能够与画像区块链上唯一表征用户的用户节点连接(或绑定),通过 用户节点赋予用户画像对应的用户身份,以保护用户画像的安全和隐私。
215.在对用户画像存储之后,每当需要使用用户画像时,通过表征用户身份的用户节点找 到对应的用户画像,同时确定用户的身份信息,进而可以根据该用户身份通知对应的用户 其用户画像被使用,以保护用户的权利和隐私。基于此,在一些实施例中,在上述实施例 的基础上,参见图8,上述方法还可以包括以下步骤:
216.s801,获取第一用户针对目标用户画像的使用请求。
217.其中,使用请求中包括:目标用户画像对应第二用户的第二用户标识。
218.s802,根据第二用户标识,查询画像区块链中用户节点与用户标识关系表,确定第二 用户标识对应的第二用户节点。
219.在获取到第一用户针对目标用户画像的使用请求时,表示第一用户需要使用目标用户 画像,查询画像区块链中画像节点维护的用户节点与用户标识关系表,通过该用户节点与 用户标识关系表,确定第二用户标识对应的第二用户节点,该第二用户节点中包含第二用 户的信息。示例性的,第二用户的信息可以是第二用户的身份信息,通过该身份信息可以 向第二用户发送消息。
220.s803,根据第二用户的信息,向第二用户发送目标用户画像被使用的请求。
221.其中,目标用户画像被使用的请求中可以包含:使用目标用户画像的第一用户的用户 信息,以及目标用户画像被使用的目的等。
222.s804,在接收到第二用户反馈的授权消息时,读取目标用户画像,并将目标用户画像 反馈给第一用户。
223.s805,在接收到第二用户反馈的不授权消息时,向第一用户反馈未经授权使用的信息。
224.第二用户在接收到目标用户画像被使用的请求后,根据请求中包含的使用目标用户画 像的第一用户的用户信息,以及目标用户画像被使用的目的等,确定是否授权第一用户使 用目标用户画像。在接收到第二用户反馈的授权消息时,表示第二用户授权第一用户使用 目标用户画像,此时读取目标用户画像,并将目标用户画像反馈给第一用户。在接收到第 二用户反馈的不授权消息时,表示第二用户不授权第一用户使用目标用户画像,则向第一 用户反馈未经授权使用的信息。
225.本发明实施例中,在使用用户画像时,通过用户画像所存储的用户节点中包含的用户 的信息,通知该用户其用户画像将被使用事宜,当获取到用户授权的情况下才允许对用户 画像进行读取使用,保证了用户的权利和隐私不受侵犯。
226.示例性的,本发明实施例中,可以通过爬虫的方式获取用户a在区块链上沉淀的各种行 为数据,将所获取的数据以数据宽表的方式存储于数据仓库中,对用户a的数据进行分析, 确定适合用户a的画像维度,再根据所确定的画像维度以及用户a的数据生成用户a
的用户 画像。进一步将用户a的用户画像存储于画像区块链中,用户b使用用户a的用户画像时, 接收用户b针对用户a用户画像的使用请求,通过画像区块链的画像节点确定存储用户a用 户画像的用户节点a,根据用户节点a中存储的用户a的信息,向用户a发送其用户画像被使 用的通知,该通知中表明用户b的信息以及使用目的等,用户a根据通知中包含的用户b的 信息以及使用目的,确定是否授权用户b使用用户a的用户画像,并反馈是否授权的响应信 息,在接收到授权消息的情况下,读取用户a的用户画像,并将所读取的用户画像反馈给用 户b,在接收到不授权消息的情况下,直接向用户b反馈未经授权使用的信息。
227.在生成并存储用户画像的基础上,还可以对该用户画像进行使用,具体的,所生成的 用户画像可以应用于精准推荐、个性化推荐系统,广告等产品的精准投放或者行业分析等 场景中。本发明实施例中,以个性化推荐场景为例进行说明,在一些实施例中,在上述实 施例的基础上,上述方法还可以包括以下步骤:
228.获取指定用户的用户画像,基于该用户画像预测指定用户的偏好信息;
229.基于偏好信息,向指定用户推荐目标产品。
230.在生成并存储用户画像的基础上,指定用户通过访问端口访问产品页面的数据时,可 以从所生成并存储的用户画像中获取指定用户的用户画像,进一步将该指定用户的用户画 像,输入用户偏好预测模型中对该指定用户的偏好信息进行预测,根据预测得到的指定用 户的偏好信息,向该指定用户推荐相应的目标产品。其中,用户偏好预测模型可以是预先 根据用户的用户画像以及用户的偏好信息进行训练得到的。指定用户的偏好信息例如可以 是稳定型、健壮型或者成长型等,相应的目标产品可以是稳定型理财产品、健壮型理财产 品或者成长型理财产品;或者指定用户的偏好信息例如可以是文本类型、长视频类型或者 短视频类型等等,相应的目标产品可以是文本类型、长视频类型或者短视频类型对应的影 视节目等。
231.对应于上述实施例提供的用户画像生成方法,本发明实施例还提供了一种用户画像生 成装置,如图9所示,该装置包括:
232.数据获取模块901,用于获取多个用户的用户数据;
233.特征确定模块902,用于针对每一用户,确定该用户的用户数据中每条数据的特征词向 量,其中,一条数据对应于用户完成一次业务活动的数据;
234.第一聚类模块903,用于对该用户对应的所有特征词向量进行聚类,得到特征向量簇;
235.特征选定模块904,用于针对该用户的每一特征向量簇,基于该特征向量簇中每一特征 词向量与该特征向量簇的中心特征向量之间的距离,确定该特征向量簇的选定特征向量;
236.第二聚类模块905,用于对该用户对应的所有特征向量簇的选定特征向量进行聚类,得 到选定特征向量簇;
237.维度确定模块906,用于选择包含选定特征向量数量最多的选定特征向量簇中的一个选 定特征向量,作为该用户的画像维度;
238.画像生成模块907,用于基于该用户的用户数据以及画像维度,生成该用户的用户画像。
239.本发明实施例中,针对每一用户,对该用户的用户数据中每条数据进行分析,确定
该 用户的用户数据中每条数据的特征词向量,对该用户对应的所有特征词向量进行聚类得到 特征向量簇,针对该用户的每一特征向量簇,基于该特征向量簇中每一特征词向量与该特 征向量簇的中心特征向量之间的距离,确定该特征向量簇的选定特征向量,进一步对该用 户对应的所有特征向量簇的选定特征向量进行聚类得到选定特征向量簇,选择包含选定特 征向量数量最多的选定特征向量簇中的一个选定特征向量作为该用户的画像维度,得到的 画像维度能够更全面的表征用户的行为特征,进而使得根据该画像维度所生成的用户画像 能够更准确的反应用户的特点,实现千人千维度的个性化维度用户画像。
240.在一些实施例中,上述特征确定模块902,包括:
241.第一确定子模块,用于确定该用户对应的用户数据,用户数据包括至少一条数据,每 一条数据中包括:业务区块链标识,区块标识,活动时间,活动内容以及活动结果;
242.第二确定子模块,用于针对该用户的用户数据中每一条数据,将业务区块链标识作为 业务区块链标识对应的特征词,将区块标识作为区块标识对应的特征词,以及将活动时间 作为活动时间对应的特征词;
243.第三确定子模块,用于对活动结果进行语义识别,将语义识别的结果作为活动结果对 应的特征词;
244.第四确定子模块,用于对活动内容进行特征词提取,得到活动内容对应的特征词;
245.第五确定子模块,用于基于业务区块链标识对应的特征词,区块标识对应的特征词, 活动时间对应的特征词,活动结果对应的特征词以及活动内容对应的特征词,确定该条数 据的特征词向量。
246.在一些实施例中,上述第四确定子模块,包括:
247.第一分词单元,用于对活动内容进行分词,得到多个第一词语;
248.第一确定单元,用于确定每一第一词语的词性;
249.语义识别单元,用于对活动内容进行语义识别,得到活动内容对应的目标语义;
250.相似度确定单元,用于针对每一第一词语,基于该第一词语的词性以及目标语义,确 定该第一词语与目标语义的相似度值,其中,相似度值标识了第一词语表征目标语义的程 度;
251.第二确定单元,用于基于各第一词语与目标语义的相似度值,对各第一词语进行排序, 得到活动词序列,将活动词序列确定为活动内容对应的特征词。
252.在一些实施例中,上述相似度确定单元,具体用于:
253.对目标语义进行分词,得到多个第二词语;
254.从多个第二词语中确定重点词;
255.确定重点词的词性;
256.针对每一第一词语,确定该第一词语的词性是否与重点词的词性相同;
257.如果该第一词语的词性与重点词的词性相同,则确定该第一词语的权重为1;
258.如果该第一词语的词性与重点词的词性不相同,则确定多个第二词语中是否存在与该 第一词语的词性相同的第二词语;
259.如果多个第二词语中存在与该第一词语的词性相同的第二词语,则确定该第一词语的 权重为:与该第一词语的词性相同的第二词语的数量/第二词语的总数量;
260.如果多个第二词语中不存在与该第一词语的词性相同的第二词语,则确定该第一
词语 的权重为:1/(n
×
第二词语的总数量),n为大于1的数;
261.针对每一第一词语,基于该第一词语的权重以及该第一词语与所目标语义之间的距离, 确定该第一词语与目标语义的相似度值。
262.在一些实施例中,上述特征选定模块904,具体用于:
263.针对该用户的每一特征向量簇,确定该特征向量簇的中心特征向量;
264.确定该特征向量簇中的每一特征词向量与该特征向量簇的中心特征向量之间的距离;
265.根据该特征向量簇中的每一特征词向量与该特征向量簇的中心特征向量之间的距离, 计算该特征向量簇的距离均值和均方差;
266.将与该特征向量簇的中心特征向量之间的距离不大于目标阈值的特征词向量,确定为 该特征向量簇的选定特征向量,其中,目标阈值根据特征向量簇的距离均值、均方差,特 征向量簇中特征词向量的个数以及特征词向量的总个数确定。
267.在一些实施例中,上述维度确定模块906,包括:
268.特征选择子模块,用于选择包含选定特征向量数量最多的选定特征向量簇中的一个选 定特征向量,作为目标特征向量;
269.第一维度确定子模块,用于将目标特征向量中全部的特征词,作为该用户的画像维度;
270.第二维度确定子模块,用于按照预设规则在目标特征向量中选择部分特征词,作为该 用户的画像维度。
271.在一些实施例中,上述装置还包括:
272.第一查询模块,用于根据用户的用户标识,查询画像区块链中用户节点与用户标识关 系表,确定用户节点与用户标识关系表中是否存在用户标识;
273.节点确定模块,用于在用户节点与用户标识关系表中存在用户标识的情况下,确定用 户标识对应的目标用户节点;
274.第一画像存储模块,用于在目标用户节点的链表中创建一个新的链表节点,并将用户 的用户画像存储至新的链表节点中;
275.节点创建模块,用于在用户节点与用户标识关系表中不存在用户标识的情况下,在画 像区块链中创建一个新的用户节点,并将新的用户节点与用户标识的对应关系更新至用户 节点与用户标识关系表中;
276.第二画像存储模块,用于在新的用户节点中建立一个链表,并将用户的用户画像存储 至该链表的新链表节点中。
277.在一些实施例中,上述装置还包括:
278.请求获取模块,用于获取第一用户针对目标用户画像的使用请求,使用请求中包括: 目标用户画像对应第二用户的第二用户标识;
279.第二查询模块,用于根据第二用户标识,查询画像区块链中用户节点与用户标识关系 表,确定第二用户标识对应的第二用户节点,第二用户节点中包含第二用户的信息;
280.请求发送模块,用于根据第二用户的信息,向第二用户发送目标用户画像被使用的请 求;
281.画像反馈模块,用于在接收到第二用户反馈的授权消息时,读取目标用户画像,并
将 目标用户画像反馈给第一用户;
282.信息反馈模块,用于在接收到第二用户反馈的不授权消息时,向第一用户反馈未经授 权使用的信息。
283.在一些实施例中,上述装置还包括:
284.偏好预测模块,用于获取指定用户的用户画像,基于该用户画像预测所述指定用户的 偏好信息;
285.产品推荐模块,用于基于所述偏好信息,向所述指定用户推荐目标产品。
286.本发明实施例还提供了一种电子设备,如图10所示,包括处理器111、通信接口112、存 储器113和通信总线114,其中,处理器111,通信接口112,存储器113通过通信总线114完成 相互间的通信,
287.存储器113,用于存放计算机程序;
288.处理器111,用于执行存储器113上所存放的程序时,实现上述任一一种用户画像生成方 法的步骤,以达到相同的技术效果。
289.上述电子设备提到的通信总线可以是外设部件互连标准(peripheral componentinterconnect,pci)总线或扩展工业标准结构(extended industry standard architecture,eisa) 总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用 一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
290.通信接口用于上述电子设备与其他设备之间的通信。
291.存储器可以包括随机存取存储器(random access memory,ram),也可以包括非易失 性存储器(non-volatile memory,nvm),例如至少一个磁盘存储器。可选的,存储器还 可以是至少一个位于远离前述处理器的存储装置。
292.上述的处理器可以是通用处理器,包括中央处理器(central processing unit,cpu)、 网络处理器(network processor,np)等;还可以是数字信号处理器(digital signal processor, dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列 (field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻 辑器件、分立硬件组件。
293.在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存 储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一一种用户画像 生成方法的步骤,以达到相同的技术效果。
294.在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计 算机上运行时,使得计算机执行上述实施例中任一一种用户画像生成方法的步骤,以达到 相同的技术效果。
295.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。 当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产 品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部 分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算 机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质 中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算 机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光
纤、 数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、 服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用 介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用 介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质 (例如固态硬盘solid state disk(ssd))等。
296.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或 者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任 何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排 他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素, 而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所 固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在 包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
297.本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互 相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置/电子 设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方 法实施例的部分说明即可。
298.以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的 精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
技术特征:1.一种用户画像生成方法,其特征在于,所述方法包括:获取多个用户的用户数据;针对每一用户,确定该用户的用户数据中每条数据的特征词向量,其中,一条数据对应于用户完成一次业务活动的数据;对该用户对应的所有特征词向量进行聚类,得到特征向量簇;针对该用户的每一特征向量簇,基于该特征向量簇中每一特征词向量与该特征向量簇的中心特征向量之间的距离,确定该特征向量簇的选定特征向量;对该用户对应的所有特征向量簇的选定特征向量进行聚类,得到选定特征向量簇;选择包含选定特征向量数量最多的选定特征向量簇中的一个选定特征向量,作为该用户的画像维度;基于该用户的用户数据以及画像维度,生成该用户的用户画像。2.根据权利要求1所述的方法,其特征在于,所述确定该用户的用户数据中每条数据的特征词向量,包括:确定该用户对应的用户数据,所述用户数据包括至少一条数据,每一条数据中包括:业务区块链标识,区块标识,活动时间,活动内容以及活动结果;针对该用户的用户数据中每一条数据,将所述业务区块链标识作为所述业务区块链标识对应的特征词,将所述区块标识作为所述区块标识对应的特征词,以及将所述活动时间作为所述活动时间对应的特征词;对所述活动结果进行语义识别,将语义识别的结果作为所述活动结果对应的特征词;对所述活动内容进行特征词提取,得到所述活动内容对应的特征词;基于所述业务区块链标识对应的特征词,所述区块标识对应的特征词,所述活动时间对应的特征词,所述活动结果对应的特征词以及所述活动内容对应的特征词,确定该条数据的特征词向量。3.根据权利要求2所述的方法,其特征在于,所述对所述活动内容进行特征词提取,得到所述活动内容对应的特征词,包括:对所述活动内容进行分词,得到多个第一词语;确定每一所述第一词语的词性;对所述活动内容进行语义识别,得到所述活动内容对应的目标语义;针对每一第一词语,基于该第一词语的词性以及所述目标语义,确定该第一词语与所述目标语义的相似度值,其中,所述相似度值标识了所述第一词语表征所述目标语义的程度;基于各第一词语与所述目标语义的相似度值,对各所述第一词语进行排序,得到活动词序列,将所述活动词序列确定为所述活动内容对应的特征词。4.根据权利要求3所述的方法,其特征在于,所述针对每一第一词语,基于该第一词语的词性以及所述目标语义,确定该第一词语与所述目标语义的相似度值,包括:对所述目标语义进行分词,得到多个第二词语;从所述多个第二词语中确定重点词;确定所述重点词的词性;针对每一第一词语,确定该第一词语的词性是否与所述重点词的词性相同;
如果该第一词语的词性与所述重点词的词性相同,则确定该第一词语的权重为1;如果该第一词语的词性与所述重点词的词性不相同,则确定所述多个第二词语中是否存在与该第一词语的词性相同的第二词语;如果所述多个第二词语中存在与该第一词语的词性相同的第二词语,则确定该第一词语的权重为:与该第一词语的词性相同的第二词语的数量/第二词语的总数量;如果所述多个第二词语中不存在与该第一词语的词性相同的第二词语,则确定该第一词语的权重为:1/(n
×
第二词语的总数量),n为大于1的数;针对每一第一词语,基于该第一词语的权重以及该第一词语与所述目标语义之间的距离,确定该第一词语与所述目标语义的相似度值。5.根据权利要求1所述的方法,其特征在于,所述针对该用户的每一特征向量簇,基于该特征向量簇中每一特征词向量与该特征向量簇的中心特征向量之间的距离,确定该特征向量簇的选定特征向量,包括:针对该用户的每一特征向量簇,确定该特征向量簇的中心特征向量;确定该特征向量簇中的每一特征词向量与该特征向量簇的中心特征向量之间的距离;根据该特征向量簇中的每一特征词向量与该特征向量簇的中心特征向量之间的距离,计算该特征向量簇的距离均值和均方差;将与该特征向量簇的中心特征向量之间的距离不大于目标阈值的特征词向量,确定为该特征向量簇的选定特征向量,其中,所述目标阈值根据所述特征向量簇的距离均值、均方差,所述特征向量簇中特征词向量的个数以及特征词向量的总个数确定。6.根据权利要求1所述的方法,其特征在于,所述选择包含选定特征向量数量最多的选定特征向量簇中的一个选定特征向量,作为该用户的画像维度,包括:选择包含选定特征向量数量最多的选定特征向量簇中的一个选定特征向量,作为目标特征向量;将所述目标特征向量中全部的特征词,作为该用户的画像维度;或者,按照预设规则在所述目标特征向量中选择部分特征词,作为该用户的画像维度。7.根据权利要求1所述的方法,其特征在于,所述方法还包括:根据用户的用户标识,查询画像区块链中用户节点与用户标识关系表,确定所述用户节点与用户标识关系表中是否存在所述用户标识;在所述用户节点与用户标识关系表中存在所述用户标识的情况下,确定所述用户标识对应的目标用户节点;在所述目标用户节点的链表中创建一个新的链表节点,并将所述用户的用户画像存储至所述新的链表节点中;在所述用户节点与用户标识关系表中不存在所述用户标识的情况下,在所述画像区块链中创建一个新的用户节点,并将所述新的用户节点与所述用户标识的对应关系更新至所述用户节点与用户标识关系表中;在所述新的用户节点中建立一个链表,并将所述用户的用户画像存储至该链表的新链表节点中。8.根据权利要求7所述的方法,其特征在于,所述方法还包括:获取第一用户针对目标用户画像的使用请求,所述使用请求中包括:所述目标用户画
像对应第二用户的第二用户标识;根据所述第二用户标识,查询画像区块链中用户节点与用户标识关系表,确定所述第二用户标识对应的第二用户节点,所述第二用户节点中包含第二用户的信息;根据所述第二用户的信息,向所述第二用户发送目标用户画像被使用的请求;在接收到所述第二用户反馈的授权消息时,读取所述目标用户画像,并将所述目标用户画像反馈给所述第一用户;在接收到所述第二用户反馈的不授权消息时,向所述第一用户反馈未经授权使用的信息。9.根据权利要求1所述的方法,其特征在于,所述方法还包括:获取指定用户的用户画像,基于该用户画像预测所述指定用户的偏好信息;基于所述偏好信息,向所述指定用户推荐目标产品。10.一种用户画像生成装置,其特征在于,所述装置包括:数据获取模块,用于获取多个用户的用户数据;特征确定模块,用于针对每一用户,确定该用户的用户数据中每条数据的特征词向量,其中,一条数据对应于用户完成一次业务活动的数据;第一聚类模块,用于对该用户对应的所有特征词向量进行聚类,得到特征向量簇;特征选定模块,用于针对该用户的每一特征向量簇,基于该特征向量簇中每一特征词向量与该特征向量簇的中心特征向量之间的距离,确定该特征向量簇的选定特征向量;第二聚类模块,用于对该用户对应的所有特征向量簇的选定特征向量进行聚类,得到选定特征向量簇;维度确定模块,用于选择包含选定特征向量数量最多的选定特征向量簇中的一个选定特征向量,作为该用户的画像维度;画像生成模块,用于基于该用户的用户数据以及画像维度,生成该用户的用户画像。11.根据权利要求10所述的装置,其特征在于,所述特征确定模块,包括:第一确定子模块,用于确定该用户对应的用户数据,所述用户数据包括至少一条数据,每一条数据中包括:业务区块链标识,区块标识,活动时间,活动内容以及活动结果;第二确定子模块,用于针对该用户的用户数据中每一条数据,将所述业务区块链标识作为所述业务区块链标识对应的特征词,将所述区块标识作为所述区块标识对应的特征词,以及将所述活动时间作为所述活动时间对应的特征词;第三确定子模块,用于对所述活动结果进行语义识别,将语义识别的结果作为所述活动结果对应的特征词;第四确定子模块,用于对所述活动内容进行特征词提取,得到所述活动内容对应的特征词;第五确定子模块,用于基于所述业务区块链标识对应的特征词,所述区块标识对应的特征词,所述活动时间对应的特征词,所述活动结果对应的特征词以及所述活动内容对应的特征词,确定该条数据的特征词向量。12.根据权利要求11所述的装置,其特征在于,所述第四确定子模块,包括:第一分词单元,用于对所述活动内容进行分词,得到多个第一词语;第一确定单元,用于确定每一所述第一词语的词性;
语义识别单元,用于对所述活动内容进行语义识别,得到所述活动内容对应的目标语义;相似度确定单元,用于针对每一第一词语,基于该第一词语的词性以及所述目标语义,确定该第一词语与所述目标语义的相似度值,其中,所述相似度值标识了所述第一词语表征所述目标语义的程度;第二确定单元,用于基于各第一词语与所述目标语义的相似度值,对各所述第一词语进行排序,得到活动词序列,将所述活动词序列确定为所述活动内容对应的特征词。13.根据权利要求12所述的装置,其特征在于,所述相似度确定单元,具体用于:对所述目标语义进行分词,得到多个第二词语;从所述多个第二词语中确定重点词;确定所述重点词的词性;针对每一第一词语,确定该第一词语的词性是否与所述重点词的词性相同;如果该第一词语的词性与所述重点词的词性相同,则确定该第一词语的权重为1;如果该第一词语的词性与所述重点词的词性不相同,则确定所述多个第二词语中是否存在与该第一词语的词性相同的第二词语;如果所述多个第二词语中存在与该第一词语的词性相同的第二词语,则确定该第一词语的权重为:与该第一词语的词性相同的第二词语的数量/第二词语的总数量;如果所述多个第二词语中不存在与该第一词语的词性相同的第二词语,则确定该第一词语的权重为:1/(n
×
第二词语的总数量),n为大于1的数;针对每一第一词语,基于该第一词语的权重以及该第一词语与所述目标语义之间的距离,确定该第一词语与所述目标语义的相似度值。14.根据权利要求10所述的装置,其特征在于,所述特征选定模块,具体用于:针对该用户的每一特征向量簇,确定该特征向量簇的中心特征向量;确定该特征向量簇中的每一特征词向量与该特征向量簇的中心特征向量之间的距离;根据该特征向量簇中的每一特征词向量与该特征向量簇的中心特征向量之间的距离,计算该特征向量簇的距离均值和均方差;将与该特征向量簇的中心特征向量之间的距离不大于目标阈值的特征词向量,确定为该特征向量簇的选定特征向量,其中,所述目标阈值根据所述特征向量簇的距离均值、均方差,所述特征向量簇中特征词向量的个数以及特征词向量的总个数确定。15.根据权利要求10所述的装置,其特征在于,所述维度确定模块,包括:特征选择子模块,用于选择包含选定特征向量数量最多的选定特征向量簇中的一个选定特征向量,作为目标特征向量;第一维度确定子模块,用于将所述目标特征向量中全部的特征词,作为该用户的画像维度;第二维度确定子模块,用于按照预设规则在所述目标特征向量中选择部分特征词,作为该用户的画像维度。16.根据权利要求10所述的装置,其特征在于,所述装置还包括:第一查询模块,用于根据用户的用户标识,查询画像区块链中用户节点与用户标识关系表,确定所述用户节点与用户标识关系表中是否存在所述用户标识;
节点确定模块,用于在所述用户节点与用户标识关系表中存在所述用户标识的情况下,确定所述用户标识对应的目标用户节点;第一画像存储模块,用于在所述目标用户节点的链表中创建一个新的链表节点,并将所述用户的用户画像存储至所述新的链表节点中;节点创建模块,用于在所述用户节点与用户标识关系表中不存在所述用户标识的情况下,在所述画像区块链中创建一个新的用户节点,并将所述新的用户节点与所述用户标识的对应关系更新至所述用户节点与用户标识关系表中;第二画像存储模块,用于在所述新的用户节点中建立一个链表,并将所述用户的用户画像存储至该链表的新链表节点中。17.根据权利要求16所述的装置,其特征在于,所述装置还包括:请求获取模块,用于获取第一用户针对目标用户画像的使用请求,所述使用请求中包括:所述目标用户画像对应第二用户的第二用户标识;第二查询模块,用于根据所述第二用户标识,查询画像区块链中用户节点与用户标识关系表,确定所述第二用户标识对应的第二用户节点,所述第二用户节点中包含第二用户的信息;请求发送模块,用于根据所述第二用户的信息,向所述第二用户发送目标用户画像被使用的请求;画像反馈模块,用于在接收到所述第二用户反馈的授权消息时,读取所述目标用户画像,并将所述目标用户画像反馈给所述第一用户;信息反馈模块,用于在接收到所述第二用户反馈的不授权消息时,向所述第一用户反馈未经授权使用的信息。18.根据权利要求10所述的装置,其特征在于,所述装置还包括:偏好预测模块,用于获取指定用户的用户画像,基于该用户画像预测所述指定用户的偏好信息;产品推荐模块,用于基于所述偏好信息,向所述指定用户推荐目标产品。19.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现权利要求1-9任一所述的方法步骤。20.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-9任一所述的方法步骤。
技术总结本发明实施例提供了一种用户画像生成方法、装置及电子设备,其中,所述方法包括:获取多个用户的用户数据;针对每一用户,确定该用户的用户数据中每条数据的特征词向量;对该用户对应的所有特征词向量进行聚类,得到特征向量簇;针对该用户的每一特征向量簇,基于该特征向量簇中每一特征词向量与该特征向量簇的中心特征向量之间的距离,确定该特征向量簇的选定特征向量;对该用户对应的所有特征向量簇的选定特征向量进行聚类,得到选定特征向量簇;选择包含选定特征向量数量最多的选定特征向量簇中的一个选定特征向量,作为该用户的画像维度;基于该用户的用户数据以及画像维度,生成该用户的用户画像实现了个性化维度的用户画像生成。户画像生成。户画像生成。
技术研发人员:梁伟 卢毅 李馨迟
受保护的技术使用者:中国电信股份有限公司
技术研发日:2022.06.24
技术公布日:2022/11/1