用户对象分类方法及装置、计算机可读介质和电子设备与流程

文档序号:33622012发布日期:2023-03-25 12:31阅读:18来源:国知局
用户对象分类方法及装置、计算机可读介质和电子设备与流程

1.本公开涉及数据处理技术领域,具体涉及一种用户对象分类方法、用户对象分类装置、计算机可读介质和电子设备。


背景技术:

2.随着数据存储资源和计算资源的飞速发展,大数据技术领域得到越来越多的人的关注,其中,得到最广泛应用的就是用户画像。基于用户画像技术的很多应用已经被引入到了学术和工业中,如个性化推荐、广告系统等。
3.目前,相关的人群分类方案中,一般是通过用户的兴趣或偏好(用户经常浏览、关注的信息或者历史点击记录等)构建用户画像,并基于用户画像实现对人群的分类。但是,这种技术方案中,只能从有限的数据中估计用户的兴趣或爱好,无法保证用户兴趣、偏好中的动态性、实时性,并且不能很好地解决用户行为数据中的数据稀疏性和数据异质性对分类结果造成的影响,导致分类结果的准确性以及时效性较差。


技术实现要素:

4.本公开的目的在于提供一种用户对象分类方法、用户对象分类装置、计算机可读介质和电子设备,进而至少在一定程度上提高人群分类结果的准确性以及时效性。
5.根据本公开的第一方面,提供一种用户对象分类方法,包括:
6.实时监测用户对象的应用程序切换行为,并基于所述应用程序切换行为生成应用程序标识序列;
7.通过预训练语言模型对所述应用程序标识序列进行编码处理,得到应用程序标识词向量;
8.根据所述应用程序标识词向量确定所述用户对象对应的行为特征向量;
9.对所述行为特征向量进行聚类分类,确定所述用户对象的分类结果。
10.根据本公开的第二方面,提供一种用户对象分类装置,包括:
11.序列生成模块,用于实时监测用户对象的应用程序切换行为,并基于所述应用程序切换行为生成应用程序标识序列;
12.词向量生成模块,用于通过预训练语言模型对所述应用程序标识序列进行编码处理,得到应用程序标识词向量;
13.特征向量确定模块,用于根据所述应用程序标识词向量确定所述用户对象对应的行为特征向量;
14.分类结果确定模块,用于对所述行为特征向量进行聚类分类,确定所述用户对象的分类结果。
15.根据本公开的第三方面,提供一种计算机可读介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述的方法。
16.根据本公开的第四方面,提供一种电子设备,其特征在于,包括:
17.处理器;以及
18.存储器,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器实现上述的方法。
19.本公开的一种实施例所提供的用户对象分类方法,首先实时监测用户对象的应用程序切换行为,基于该应用程序切换行为生成应用程序标识序列,然后通过预训练语言模型对应用程序标识序列进行编码处理,得到应用程序标识词向量,并根据应用程序标识词向量确定用户对象对应的行为特征向量,最后对行为特征向量进行聚类分类,确定用户对象的分类结果。一方面,根据实时监测到的应用程序切换行为生成的应用程序标识序列实现对用户对象的聚类分类,从而实现处理用户兴趣、偏好中的动态性、实时性,提高分类结果的准确性以及时效性;另一方面,通过预训练语言模型对应用程序标识序列进行编码处理,基于预训练语言模型的特性,降低了应用程序标识序列数据中低概率的稀疏性和异质性,进一步保证分类结果的鲁棒性以及准确性;再一方面,仅有预训练语言模型和自编码聚类网络参与整个分类过程,避免了相关方案中在刻画用户画像时使用较多的深度学习模型从而降低分类结果的可解释性的问题,提高分类结果的可用性,提升分类结果的适用范围。
20.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
21.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
22.图1示出了可以应用本公开实施例的一种示例性系统架构的示意图;
23.图2示出了可以应用本公开实施例的一种电子设备的示意图;
24.图3示意性示出本公开示例性实施例中一种用户对象分类方法的流程示意图;
25.图4示意性示出本公开示例性实施例中一种生成应用程序标识序列的流程示意图;
26.图5示意性示出本公开示例性实施例中一种对应用程序切换数据进行清洗处理多种处理过程的流程示意图;
27.图6示意性示出本公开示例性实施例中一种生成应用程序标识词向量的流程示意图;
28.图7示意性示出本公开示例性实施例中一种基于应用程序标识词向量生成行为特征向量的流程示意图;
29.图8示意性示出本公开示例性实施例中用户对象分类装置的组成示意图。
具体实施方式
30.现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结
构或特性可以以任何合适的方式结合在一个或更多实施方式中。
31.此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
32.图1示出了可以应用本公开实施例的一种用户对象分类方法及装置的示例性应用环境的系统架构的示意图。
33.如图1所示,系统架构100可以包括终端设备101、102、103中的一个或多个,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。终端设备101、102、103可以是各种具有图像处理功能的电子设备,包括但不限于台式计算机、便携式计算机、智能手机和平板电脑等等。应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。比如服务器105可以是多个服务器组成的服务器集群等。
34.本公开实施例所提供的用户对象分类方法一般由终端设备101、102、103中执行,相应地,用户对象分类装置一般设置于终端设备101、102、103中。但本领域技术人员容易理解的是,本公开实施例所提供的用户对象分类方法也可以由服务器105执行,相应的,用户对象分类装置也可以设置于服务器105中,本示例性实施例中对此不做特殊限定。举例而言,在一种示例性实施例中,可以是用户通过终端设备101、102、103实时获取用户对象的应用程序切换行为,并将应用程序切换行为上传至服务器105,服务器通过本公开实施例所提供的用户对象分类方法生成分类结果后,将分类结果传输给终端设备101、102、103等进行下游的分类任务或者推荐任务。
35.本公开的示例性实施方式提供一种用于实现用户对象分类方法的电子设备,其可以是图1中的终端设备101、102、103或服务器105。该电子设备至少包括处理器和存储器,存储器用于存储处理器的可执行指令,处理器配置为经由执行可执行指令来执行用户对象分类方法。
36.下面参照图2来描述根据本公开的这种实施例的电子设备200。图2所示的电子设备200仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
37.如图2所示,电子设备200以通用计算设备的形式表现。电子设备200的组件可以包括但不限于:上述至少一个处理单元210、上述至少一个存储单元220、连接不同系统组件(包括存储单元220和处理单元210)的总线230、显示单元240。其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元210执行,使得所述处理单元210执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施例的步骤。例如,所述处理单元210可以执行如图3中所示的步骤s310,实时监测用户对象的应用程序切换行为,并基于所述应用程序切换行为生成应用程序标识序列;步骤s320,通过预训练语言模型对所述应用程序标识序列进行编码处理,得到应用程序标识词向量;步骤s330,根据所述应用程序标识词向量确定所述用户对象对应的行为特征向量;步骤s340,对所述行为特征向量进行聚类分类,确定所述用户对象的分类结果。
38.存储单元220可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(ram)221和或高速缓存存储单元222,还可以进一步包括只读存储单元(rom)223。存储单元220还可以包括具有一组(至少一个)程序模块225的程序实用工具224,这样的程序模块225包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
39.总线230可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
40.电子设备200也可以与一个或多个外部设备270(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备200交互的设备通信,和或与使得该电子设备200能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入输出(io)接口250进行。并且,电子设备200还可以通过网络适配器260与一个或者多个网络(例如局域网(lan),广域网(wan)和或公共网络,例如因特网)通信。如图所示,网络适配器260通过总线230与电子设备200的其它模块通信。
41.应当明白,尽管图中未示出,可以结合电子设备200使用其它硬件和或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施例的方法。
42.首先,从学术界和工业界对于用户画像的描述来看,用户画像的内涵包含三个因素,即用户属性、用户特征和用户标签。其中,用户属性分为静态属性和动态属性,静态属性指用户的基本信息(姓名、性别、职业等),动态属性指用户的行为信息(访问频次、访问时长、浏览记录等),用户属性可以根据研究目的有针对性的进行划分;用户特征是指通过一定的方法从用户属性中提取得到的特性或共性;用户标签是根据用户特征进一步提炼出来的标签化文本,可以精炼准确的表达用户特征,易于理解和应用。用户画像的研究分为两部分,基于单个用户的画像研究和基于群体用户的画像研究。单个用户画像研究通过针对某场景下的每个用户抽取用户特征、提炼用户标签数据构建用户画像,可以直接反映出用户的具体行为、需求、兴趣、偏好等特点,能全面描述单个用户的用户特征,较深入的全面了解用户需求,结合相关技术还能实现个性化搜索、推荐和用户行为预测等功能。群体用户画像通过对某场景下的多个用户抽取用户特征,提炼用户标签构建用户画像,不仅能够具有不同用户特征的用户构建不同类型对的用户画像,而且能够从多个维度对用户做出细分并提供相应的产品服务。
43.目前,最主流的用户画像的建模方法是基于用户的兴趣或偏好(用户经常浏览或关注的信息)和行为或日志(丰富的行为、日志和点击历史记录数据),结合相关的机器学习方法或深度学习模型从中挖掘相关的用户画像信息从而对其进行刻画。当前应用比较多的是在互联网领域的个性化推荐方面。其利用用户在应用上的行为信息对用户进行画像的刻
画。对于人群的分类,基本是在上述刻画的画像基础上,添加一些后处理分类任务模块对人群进行分类。
44.但是,在基于用户画像的人群分类的技术方案中,无法很好的处理用户兴趣、偏好中的动态性、实时性,智能从有限的历史行为中估计用户的兴趣和偏好;同时,不能很好地解决用户行为数据中的数据稀疏性和数据异质性,从而导致海量数据中的稀疏性数据对最终的分群结果造成影响;此外,过多的深度学习模型的参与导致分类结果的可解释性变差,进而导致最终的分类结果的可用性不强。
45.基于相关技术方案中的一种或者多种问题,本示例实施例首先提供了一种用户对象分类方法,下面以服务器执行该方法为例,对本公开示例性实施方式的用户对象分类方法进行具体说明。
46.图3示出了本示例性实施方式中一种用户对象分类方法的流程示意图,可以包括步骤s310至步骤s340:
47.在步骤s310中,实时监测用户对象的应用程序切换行为,并基于所述应用程序切换行为生成应用程序标识序列。
48.在一示例性实施例中,应用程序切换行为是指用户对象在安装有至少两个应用程序(application,app)的终端设备上触发行为操作,例如,应用程序切换行为可以是用户在终端设备的前台关闭应用程序a并启动应用程序b的操作行为,,还可以是从将当前运行的应用程序a切换到终端设备的后台运行,并从终端设备后台运行的多个应用程序中启动应用程序b的操作行为,当然,应用程序切换行为还可以是其他类型的能够实现应用程序切换的操作行为,本示例实施例对此不做特殊限定。
49.应用程序标识序列是指由于应用程序切换行为生成的多个应用程序的标识构成的序列,应用程序的标识可以是应用程序对应的文本名称,即用户使用终端设备的过程中使用的所有应用程序的名称序列,例如,假设在一段时间内应用程序切换行为按顺序在应用程序a、应用程序c、应用程序b之间进行了切换,那么生成的应用程序标识序列可以是“应用程序a标识-应用程序c标识-应用程序b标识”,当然,此处仅是是异性举例说明,并不应对本示例实施例造成任何特殊限定。
50.可以通过在终端设备中设置相应的设备接口实时监测用户对象的应用程序切换行为,当然,也可以通过终端设备中的设备日志实时监测用户对象的应用程序切换行为,本示例实施例不以此为限。
51.在步骤s320中,通过预训练语言模型对所述应用程序标识序列进行编码处理,得到应用程序标识词向量。
52.在一示例性实施例中,预训练语言模型(bidirectional encoder representations from transformers,bert)能够进一步增加词向量模型泛化能力,充分描述字符级、词级、句子级甚至句间关系特征。预训练语言模型bert是一种处理文本信息的方法,其最大的特点是抛弃了传统的循环神经网络(recurrent neural network,rnn)和卷积神经网络(convolutional neural networks,cnn),通过注意力机制(attention)将任意位置的两个单词的距离转换成1,有效的解决了自然语言处理(natural language processing,nlp)中棘手的长期依赖问题。
53.通过预训练语言模型对应用程序标识序列进行编码处理,使得应用程序标识词向
量能够充分描述应用程序标识序列中字符级、词级、句子级甚至句间的关系特征,并作为后续的分类任务的输入数据。
54.在步骤s330中,根据所述应用程序标识词向量确定所述用户对象对应的行为特征向量。
55.在一示例性实施例中,行为特征向量是指对应用程序标识词向量赋予用户对象的个人特征后生成的向量,例如,可以将用户对象在每个应用程序中的停留时间作为个人特征赋予到应用程序标识词向量中构成的向量,也可以将用户对象在每个应用程序中的交互次数作为个人特征赋予到应用程序标识词向量中构成的向量,当然,行为特征向量还可以是将其他类型的与应用程序相关的个人特征赋予到应用程序标识词向量中构成的向量,本示例实施例对此不做任何特殊限定。
56.在步骤s340中,对所述行为特征向量进行聚类分类,确定所述用户对象的分类结果。
57.在一示例性实施例中,分类结果是指对行为特征向量进行聚类分类得到的用户对象的所属人群结果,例如,如果行为特征向量中显示用户对象多次切换到了游戏类app,并且停留的时间较长,则该用户对象的分类结果可以为游戏人群,当然,此处仅是示意性举例说明,还可以是其他类型的分类结果,本示例实施例对此不做特殊限定。
58.下面对步骤s310至步骤s340进行详细说明。
59.在一示例性实施例中,步骤s310可以包括图4中的步骤s410和步骤s420,以实现基于应用程序切换行为生成应用程序标识序列,参考图4所示,具体可以包括:
60.步骤s410,基于所述应用程序切换行为获取应用程序切换数据,所述应用程序切换数据包括终端标识数据、应用程序标识数据以及应用程序切换时间戳;
61.步骤s420,对所述应用程序切换数据进行清洗处理,并根据清洗处理后的应用程序切换数据生成应用程序标识序列。
62.其中,应用程序切换数据是指在监测到应用程序切换行为时采集的与应用程序切换行为相关的数据,例如,应用程序切换数据可以包括终端标识数据、应用程序标识数据以及应用程序切换时间戳,当然,应用程序切换数据还可以是其他类型的、与应用程序切换行为相关的数据,本示例实施例对此不做特殊限定。
63.终端标识数据是指唯一标识终端设备或者用户对象的标识信息,例如,终端标识数据可以是国际移动设备识别码(international mobile equipment identity,imei),也可以是用户对象对应的账号数据,当然,还可以是其他能够唯一标识终端设备或者用户对象的标识信息,本示例实施例不以此为限。
64.应用程序切换时间戳是指应用程序切换行为在启动新的应用程序时的时间戳数据。应用程序标识数据可以是应用程序对应的文本名称,也可以是应用程序对应的唯一标识编码,当然,还可以是其他的能够唯一标识应用程序的数据,本示例实施例对此不做任何特殊限定。
65.清洗处理是指清除所述应用程序切换数据中包含的脏数据的处理过程,通过对应用程序切换数据进行清洗处理,并根据清洗处理后的应用程序切换数据生成应用程序标识序列,能够保证应用程序标识序列的数据准确性,避免脏数据对分类结果的影响,从数据源头上保证分类结果的准确性与精确性。
66.具体的,步骤s420中的清洗处理可以包括图5中多个处理过程中的至少一种或者多种处理过程的组合,参考图5所示,多个处理过程可以包括:
67.步骤s510,将检测到所述应用程序切换时间戳出现错误的应用程序切换数据进行过滤处理;
68.步骤s520,将所述应用程序切换时间戳和所述应用程序标识数据重复上报的应用程序切换数据进行重复项合并处理;
69.步骤s530,将同一所述终端标识数据下的错误数据进行删除处理。
70.其中,应用程序切换时间戳出现错误可以是由于终端设备的时间发生更改,从而导致传回服务端的时间戳错误的事件,也可以是由于网络时延而导致的传回服务端的时间戳错误的事件,当然,还可以是其他错误而导致的时间戳错误的事件,本示例实施例不以此为限。
71.重复上报是指因为网络问题或其他原因导致的同一份数据多次上报的问题,重复项合并处理是指将多份相同的数据(即应用程序切换时间戳和应用程序标识数据相同的应用程序切换数据)进行删除,仅保留一份数据的处理过程。
72.同一终端标识数据下的错误数据是指在某一终端标识数据对应的终端设备可能出现的数据乱码或app指向不明等问题。
73.通过以上多个处理过程中的至少一种或者多种处理过程的组合,能够有效对应用程序切换数据中的脏数据进行清洗,避免脏数据对分类结果的影响,提升数据有效性和准确性。
74.在一示例性实施例中,预训练语言模型bert可以由多个基于注意力机制的编码网络构成,例如,预训练语言模型可以由12个基于注意力机制的编码网络构成,当然,也可以由24个基于注意力机制的编码网络构成,本示例实施例对此不做特殊限定。其中,基于注意力机制的编码网络是指transformer网络结构,具体的,可以是transformer网络结构中的编码器encoder部分,由于本示例实施例中仅需要将应用程序标识序列转换成词向量,并不需要进行后续的翻译等解码任务,因此,并不需要transformer网络结构中的解码器decoder部分。
75.具体的,基于注意力机制的编码网络至少可以包括多头自注意力网络和前馈神经网络,其中,多头自注意力网络multi-head self attention是指将输入向量映射到不同的子空间,这可以让模型从不同角度理解输入的序列,即同时计算多个attention,多个attention的组合效果可能会优于单个attenion。前馈神经网络(feed forward neural network,fnn)采用一种单向多层结构,其中每一层包含若干个神经元,在前馈神经网络中,各神经元可以接收前一层神经元的信号,并产生输出到下一层,第0层叫输入层,最后一层叫输出层,其他中间层叫做隐含层(或隐藏层、隐层),隐层可以是一层,也可以是多层,整个网络中无反馈,信号从输入层向输出层单向传播,实现隐向量的传递。
76.预训练语言模型bert中每层的基于注意力机制的编码网络transformer将上一层的隐变量作为输入,并经过multi-head self attention、fnn和layer norm等网络层的转换,最后输出交互更高的隐变量,即应用程序标识词向量,能够更准确、更泛化地表示应用程序标识序列中所包含的语义信息,提高应用程序标识词向量的准确性,更深入挖掘用户对象的应用程序切换行为中所包含的兴趣或者爱好,提升分类结果的可用性以及适用范
围。
77.在一示例性实施例中,步骤s320可以包括步骤s610和步骤s620,实现通过预训练语言模型得到应用程序标识词向量,参考图6所示,具体可以包括:
78.步骤s610,对所述应用程序标识序列进行转换处理,得到所述应用程序标识序列对应的字向量序列、段向量序列和位置向量序列;
79.步骤s620,将所述字向量序列、所述段向量序列和所述位置向量序列的和输入到所述预训练语言模型中进行编码处理,得到应用程序标识词向量。
80.其中,字向量序列(token embedding)是指将应用程序标识序列中的单词划分成一组有限的公共子词单元,能在单词的有效性和字符的灵活性之间取得一个折中的平衡;段向量序列(segment embedding)是指用于区分不同的两个语句;位置向量序列(position embedding)是指将应用程序标识序列中的单词的位置信息编码成特征向量,位置表征向量是向模型中引入单词位置关系的至关重要的一环。
81.具体的,可以通过word2vec、glove等算法对应用程序标识序列进行转换得到字向量序列,当然,也可以在transformer中训练得到应用程序标识序列对应的字向量序列,本示例实施例对此不做特殊限定。段向量序列用来区分不同的两个语句,一般只包括两个向量,将一个向量赋予上一个语句,将另一个向量赋予下一个语句,实现对两个语句的区分。位置向量序列用于标注应用程序标识序列中每个单词的所处的位置。
82.举例而言,假设应用程序标识序列为“[cls]应用程序a[sep]应用程序b[sep]”,其中“[cls]”表示该应用程序标识序列用于预训练语言模型,一般放置在语句的首位,“[sep]”表示分句(段)符号,用于断开输入应用程序标识序列中的两个应用程序标识。那么对于该应用程序标识序列而言,对应的字向量序列可以表示为“e
[cls]e应e用e程e序ea e
[sep]e应e用e程e序eb e
[sep]”,对应的段向量序列可以表示为“e
a e
a e
a e
a e
a e
a e
a e
b e
b e
b e
b e
b e
b”,对应的位置向量序列可以表示为“e
0 e
1 e
2 e
3 e
4 e
5 e
6 e
7 e
8 e
9 e
10 e
11 e
12 e
13”。当然,以上仅是示意性举例说明,并不对本示例实施例造成任何特殊限定。
[0083]
可以将字向量序列、段向量序列和位置向量序列进行相加,并将相加得到的向量作为预训练语言模型的输入数据,将该输入数据输入到预训练语言模型中,实现对应用程序标识序列的编码处理,得到应用程序标识词向量。
[0084]
通过将应用程序标识序列转化为字向量序列、段向量序列和位置向量序列,并将字向量序列、段向量序列和位置向量序列的和作为预训练语言模型的输入数据,能够有效增加预训练语言模型的泛化能力,充分描述应用程序标识序列中字符级、词级、句子级甚至句间的关系特征,保证应用程序标识词向量所表征的语义的完整性,实现对应用程序切换行为的深入挖掘,从有限的数据中估计用户对象的兴趣爱好信息,进一步保证分类结果的准确性。
[0085]
在一示例性实施例中,在将应用程序标识序列对应的字向量序列、段向量序列和位置向量序列输入到预训练语言模型之前,可以基于预构建的掩码语言模型对应用程序标识序列进行随机掩码处理。
[0086]
其中,掩码语言模型(maskd language modeling,mlm)能够将应用程序标识序列中一些单词随机的遮盖掉,遮盖掉的单词加入特殊符号,如符号[mask],将任务转换成输入带特殊符号[mask]的语句,预测出那些被去掉的单词,使用交叉熵计算loss进行优化,能够
有效降低低概率app token的比例,缩小了词表,降低了应用程序标识序列的稀疏性和异质性对分群结果的影响,进一步保证分类结果的准确性,提升分类结果的鲁棒性。
[0087]
具体的,本示例实施例中的随机掩码处理可以包括按照预设比例对应用程序标识序列进行随机替换处理和随机遮掩处理。例如,随机替换处理、随机遮掩处理和不处理的预设比例可以是“10%、10%、80%”,即可以表示将应用程序标识序列中10%的单词随机替换成其他的单词,将应用程序标识序列中10%的单词随机替换成特殊符号[mask],应用程序标识序列中剩余80%的单词不做任何处理;当然,随机替换处理、随机遮掩处理和不处理的预设比例也可以是“15%、15%、70%”,具体可以根据实际使用场景进行自定义设置,本示例实施例对此不做特殊限定。
[0088]
一般在通过掩码语言模型对数据进行随机掩码处理时,仅对输入数据中的部分单词进行随机遮掩处理,而本示例实施例中,除了对部分单词进行随机遮掩处理之外,还可以对部分单词进行随机替换处理,通过这种改进的mlm,能够有效降低应用程序标识序列中的稀疏性数据和异质性数据对分群结果的影响,提升分类结果的鲁棒性。
[0089]
在一示例性实施例中,步骤s330可以包括步骤s710至步骤s740,实现根据应用程序标识词向量确定用户对象对应的行为特征向量,参考图7所示,具体可以包括:
[0090]
步骤s710,获取所述应用程序标识词向量对应的应用程序切换时间戳;
[0091]
步骤s720,根据所述应用程序切换时间戳计算所述应用程序标识序列中各应用程序的使用时间;
[0092]
步骤s730,对所述使用时间进行归一化处理以确定各应用程序的权重数据;
[0093]
步骤s740,基于所述应用程序标识词向量以及所述权重数据确定所述用户对象对应的行为特征向量。
[0094]
其中,使用时间是指应用程序标识序列中各应用程序从启动到另一个应用程序启动之间的时间间隔,具体是根据各应用程序对应的应用程序切换时间戳计算应用程序标识序列中各应用程序的使用时间,例如,应用程序a的应用程序切换时间戳(即应用程序切换行为启动应用程序a时的时间戳)为08:10:00,而应用程序切换行为启动的下一个应用程序b的时间戳为09:10:00,则可以认为应用程序a的使用时间为1个小时。当然,此处仅是示意性举例说明,并不应对本示例实施例造成任何特殊限定。
[0095]
对使用时间进行归一化处理是指计算应用程序标识序列中各应用程序的使用时间与应用程序标识序列对应的总时间的比值的计算过程,举例而言,应用程序标识序列为“应用程序a、应用程序c、应用程序b”,其中,应用程序a的使用时间为2个小时,应用程序c的使用时间为1个小时,应用程序b的使用时间为2个小时,那么应用程序标识序列对应的总时间为5个小时,那么对各应用程序的使用时间进行归一化处理之后可以得到数据为0.4、0.2、0.4,并这些数据作为应用程序的权重数据,即应用程序a的权重数据为0.4、应用程序c的权重数据为0.2以及应用程序b的权重数据为0.4。当然,此处仅是示意性举例说明,并不应对本示例实施例造成任何特殊限定。
[0096]
可以将各应用程序对应的权重数据赋予到应用程序标识词向量中每个应用程序对应的词向量,进而可以得到用户对象对应的行为特征向量。
[0097]
通过将各应用程序的权重数据添加到应用程序标识词向量中,得到更加能够体现每个用户对象的兴趣爱好特征的行为特征向量,进一步挖掘应用程序切换行为中所包含的
用户对象的兴趣爱好特征,进一步提高分类结果的准确性以及可用性。
[0098]
在一示例性实施例中,步骤s340中还可以选择将自编码聚类网络(deep embedded cluster,dec)作为聚类分类的分类器,具体可以将行为特征向量输入到自编码聚类网络中,输出用户对象的分类结果。
[0099]
其中,自编码聚类网络dec相比k-means和gmm等常用的聚类算法,尽管这些方法速度快,适用于各种各样的问题,但k-means和gmm等聚类算法的距离度量仅限于原始数据空间,当输入的特征维度较高时往往无效。而自编码聚类网络dec可以同时使用深度神经网络的特征表示和聚类分配,从数据空间学习映射到低维特征空间,在该特征空间中迭代的优化聚类目标。dec可以通过同时学习特征空间z中的k个聚类中心和将数据点映射到z的dnn参数来聚类数据,在本示例实施例中,设计的聚类参数可以为20,当然,设计的聚类参数还可以是其他数值,具体可以根据实际情况进行自定义设置,本示例实施例对此不做特殊限定。
[0100]
综上所述,本示例性实施方式中,首先实时监测用户对象的应用程序切换行为,基于该应用程序切换行为生成应用程序标识序列,然后通过预训练语言模型对应用程序标识序列进行编码处理,得到应用程序标识词向量,并根据应用程序标识词向量确定用户对象对应的行为特征向量,最后对行为特征向量进行聚类分类,确定用户对象的分类结果。一方面,根据实时监测到的应用程序切换行为生成的应用程序标识序列实现对用户对象的聚类分类,从而实现处理用户兴趣、偏好中的动态性、实时性,提高分类结果的准确性以及时效性;另一方面,通过预训练语言模型对应用程序标识序列进行编码处理,基于预训练语言模型的特性,降低了应用程序标识序列数据中低概率的稀疏性和异质性,进一步保证分类结果的鲁棒性以及准确性;再一方面,仅有预训练语言模型和自编码聚类网络参与整个分类过程,避免了相关方案中在刻画用户画像时使用较多的深度学习模型从而降低分类结果的可解释性的问题,提高分类结果的可用性,提升分类结果的适用范围。
[0101]
本示例实施例中提出的用户对象分类方法,通过研究用户对应使用终端设备如智能手机过程中的应用程序切换行为序列,可以很好地表征用户身份信息,能够很好的处理用户兴趣、偏好中的动态性和实时性,并从有限的数据中估计得到用户的兴趣和偏好。其次,通过对bert模型中的mlm进行改进,随机mask掉一定比例的token,降低了低概率apptoken的比例,缩小了词表,降低了数据的稀疏性和异质性对分群结果的影响,同时,随机替换掉一定比例的token,有效保证bert模型的鲁棒性。
[0102]
需要注意的是,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
[0103]
进一步的,参考图8所示,本示例的实施方式中还提供一种用户对象分类装置800,可以包括序列生成模块810、词向量生成模块820、特征向量确定模块830和分类结果确定模块840。其中:
[0104]
序列生成模块810用于实时监测用户对象的应用程序切换行为,并基于所述应用程序切换行为生成应用程序标识序列;
[0105]
词向量生成模块820用于通过预训练语言模型对所述应用程序标识序列进行编码处理,得到应用程序标识词向量;
[0106]
特征向量确定模块830用于根据所述应用程序标识词向量确定所述用户对象对应的行为特征向量;
[0107]
分类结果确定模块840用于对所述行为特征向量进行聚类分类,确定所述用户对象的分类结果。
[0108]
在一示例性实施例中,所述预训练语言模型由多个基于注意力机制的编码网络构成,所述编码网络包括多头自注意力网络和前馈神经网络;词向量生成模块820可以用于:
[0109]
对所述应用程序标识序列进行转换处理,得到所述应用程序标识序列对应的字向量序列、段向量序列和位置向量序列;
[0110]
将所述字向量序列、所述段向量序列和所述位置向量序列的和输入到所述预训练语言模型中进行编码处理,得到应用程序标识词向量。
[0111]
在一示例性实施例中,用户对象分类装置800还可以包括随机掩码单元,该随机掩码单元可以用于:
[0112]
基于预构建的掩码语言模型对所述应用程序标识序列进行随机掩码处理,所述随机掩码处理包括按照预设比例对应用程序标识序列进行随机替换处理和随机遮掩处理。
[0113]
在一示例性实施例中,序列生成模块810可以用于:
[0114]
基于所述应用程序切换行为获取应用程序切换数据,所述应用程序切换数据包括终端标识数据、应用程序标识数据以及应用程序切换时间戳;
[0115]
对所述应用程序切换数据进行清洗处理,并根据清洗处理后的应用程序切换数据生成应用程序标识序列。
[0116]
在一示例性实施例中,所述清洗处理包括以下至少一种或者多种处理过程的组合:
[0117]
将检测到所述应用程序切换时间戳出现错误的应用程序切换数据进行过滤处理;
[0118]
将所述应用程序切换时间戳或者所述应用程序标识数据重复上报的应用程序切换数据进行重复项合并处理;
[0119]
将同一所述终端标识数据下的错误数据进行删除处理。
[0120]
在一示例性实施例中,特征向量确定模块830可以用于:
[0121]
获取所述应用程序标识词向量对应的应用程序切换时间戳;
[0122]
根据所述应用程序切换时间戳计算所述应用程序标识序列中各应用程序的使用时间;
[0123]
对所述使用时间进行归一化处理以确定各应用程序的权重数据;
[0124]
基于所述应用程序标识词向量以及所述权重数据确定所述用户对象对应的行为特征向量。
[0125]
在一示例性实施例中,分类结果确定模块840可以用于:
[0126]
将所述行为特征向量输入到自编码聚类网络中,输出所述用户对象的分类结果。
[0127]
上述装置中各模块的具体细节在方法部分实施方式中已经详细说明,未披露的细节内容可以参见方法部分的实施方式内容,因而不再赘述。
[0128]
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统
称为“电路”、“模块”或“系统”。
[0129]
本公开的示例性实施方式还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤,例如可以执行图3至图7中任意一个或多个步骤。
[0130]
需要说明的是,本公开所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
[0131]
在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。
[0132]
此外,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如java、c++等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
[0133]
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本技术旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
[0134]
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1