CN112231572A - 用户特征的提取方法、装置、设备及存储介质 - Google Patents
用户特征的提取方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN112231572A CN112231572A CN202011162452.1A CN202011162452A CN112231572A CN 112231572 A CN112231572 A CN 112231572A CN 202011162452 A CN202011162452 A CN 202011162452A CN 112231572 A CN112231572 A CN 112231572A
- Authority
- CN
- China
- Prior art keywords
- content
- user
- vector
- target user
- context
- 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.)
- Pending
Links
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/9535—Search customisation based on user profiles and personalisation
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种用户特征的提取方法、装置、设备及存储介质,涉及人工智能的机器学习技术领域。所述方法包括:获取目标用户的内容阅览序列,该目标用户的内容阅览序列中包括目标用户阅览过的n个内容,n为正整数;通过语义抽取模型对内容阅览序列进行基于上下文的特征提取处理,得到n个内容分别对应的基于上下文的内容向量;根据n个内容分别对应的基于上下文的内容向量,生成目标用户的用户向量。本申请在用户向量的提取过程中,充分考虑了内容在内容阅览序列中的上下文信息,使得最终得到的用户向量能够更加准确地反映出用户在阅览内容之间的相关性、顺序或偏好等维度的特征,提升了用户向量的准确度。
Description
技术领域
本申请实施例涉及人工智能的机器学习技术领域,特别涉及一种用户特征的提取方法、装置、设备及存储介质。
背景技术
目前,在一些内容推送场景(如文章推送、新闻推送等场景)下,会向目标用户推送其相似用户阅览过的内容,从而提升推送内容的点击率。
在相关技术中,运用机器学习技术基于目标用户的历史阅览内容,确定出能够反映该目标用户的用户特征的用户向量,然后基于不同用户的用户向量之间的相似度,确定出目标用户的相似用户,之后就可实现向目标用户推送其相似用户阅览过的内容。
因此,用户向量的提取至关重要,但目前方案提取得到的用户向量不够准确。
发明内容
本申请实施例提供了一种用户特征的提取方法、装置、设备及存储介质,能够提升提取得到的用户向量的准确度,更准确地反映出用户特征。所述技术方案如下:
根据本申请实施例的一个方面,提供了一种用户特征的提取方法,所述方法包括:
获取目标用户的内容阅览序列,所述目标用户的内容阅览序列中包括所述目标用户阅览过的n个内容,所述n为正整数;
通过语义抽取模型对所述内容阅览序列进行基于上下文的特征提取处理,得到所述n个内容分别对应的基于上下文的内容向量;其中,所述基于上下文的内容向量是指考虑所述内容在所述内容阅览序列中的上下文信息的特征向量表示;
根据所述n个内容分别对应的基于上下文的内容向量,生成所述目标用户的用户向量,所述目标用户的用户向量用于表征所述目标用户的用户特征。
根据本申请实施例的一个方面,提供了一种用户特征的提取装置,所述装置包括:
阅览序列获取模块,用于获取目标用户的内容阅览序列,所述目标用户的内容阅览序列中包括所述目标用户阅览过的n个内容,所述n为正整数;
内容向量提取模块,用于通过语义抽取模型对所述内容阅览序列进行基于上下文的特征提取处理,得到所述n个内容分别对应的基于上下文的内容向量;其中,所述基于上下文的内容向量是指考虑所述内容在所述内容阅览序列中的上下文信息的特征向量表示;
用户向量生成模块,用于根据所述n个内容分别对应的基于上下文的内容向量,生成所述目标用户的用户向量,所述目标用户的用户向量用于表征所述目标用户的用户特征。
根据本申请实施例的一个方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述用户特征的提取方法。
根据本申请实施例的一个方面,提供了一种计算机可读存储介质,所述可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现上述用户特征的提取方法。
根据本申请实施例的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述用户特征的提取方法。
本申请实施例提供的技术方案可以包括如下有益效果:
通过语义抽取模型对目标用户的内容阅览序列进行基于上下文的特征提取处理,得到该内容预览序列中各个内容分别对应的基于上下文的内容向量,然后由这些内容向量构造生成该目标用户的用户向量,使得在用户向量的提取过程中,充分考虑了内容在内容阅览序列中的上下文信息,使得最终得到的用户向量能够更加准确地反映出用户在阅览内容之间的相关性、顺序或偏好等维度的特征,提升了用户向量的准确度。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个实施例提供的方案实施环境的示意图;
图2是本申请一个实施例提供的用户特征的提取方法的流程图;
图3是本申请另一个实施例提供的用户特征的提取方法的流程图;
图4是本申请一个实施例提供的语义抽取模型的示意图;
图5是本申请一个实施例提供的语义抽取模型的训练过程的示意图;
图6是本申请一个实施例提供的用户特征的提取装置的框图;
图7是本申请另一个实施例提供的用户特征的提取装置的框图;
图8是本申请一个实施例提供的计算机设备的框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
本申请实施例提供的方案涉及人工智能的机器学习技术,利用机器学习技术训练语义抽取模型,通过该语义抽取模型基于目标用户的内容阅览序列,提取得到该目标用户的用户向量。
本申请实施例提供的方法,各步骤的执行主体可以是计算机设备,该计算机设备是指具备数据计算、处理和存储能力的电子设备。该计算机设备可以是诸如PC(PersonalComputer,个人计算机)、平板电脑、智能手机、可穿戴设备、智能机器人等终端;也可以是服务器。其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器。
本申请实施例提供的技术方案,通过语义抽取模型对目标用户的内容阅览序列进行基于上下文的特征提取处理,得到该内容预览序列中各个内容分别对应的基于上下文的内容向量,然后由这些内容向量构造生成该目标用户的用户向量,使得在用户向量的提取过程中,充分考虑了内容在内容阅览序列中的上下文信息,使得最终得到的用户向量能够更加准确地反映出用户在阅览内容之间的相关性、顺序或偏好等维度的特征,提升了用户向量的准确度。
在一个示例中,如图1所示,以内容推送系统为例,该系统可以包括终端10和服务器20。
终端10可以是诸如手机、平板电脑、PC、可穿戴设备等电子设备。用户可以通过终端10接入服务器20,并进行内容阅览操作。例如,终端10中可以安装目标应用程序的客户端,用户可以通过该客户端接入服务器20,并进行内容阅览操作。上述目标应用程序可以是任何提供内容阅览功能的应用程序,如读书类应用程序、视频类应用程序、新闻资讯类应用程序、社交类应用程序、即时通信类应用程序、生活服务类应用程序等,本申请实施例对此不作限定。
在不同的应用程序中,应用程序所提供的供用户阅览的内容也会有所不同。例如,内容可以包括书籍、文章、新闻、视频等不同类别的内容,本申请实施例对此不作限定。
服务器20可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器。服务器20用于为终端10中的目标应用程序的客户端提供后台服务。例如,服务器20可以是上述目标应用程序的后台服务器。
终端10和服务器20之间可以通过网络进行通信。
在示例性实施例中,服务器20可以采用下文实施例介绍的方法,生成目标用户的用户向量,然后根据目标用户的用户向量和其他用户的用户向量,确定目标用户的相似用户,之后就可实现向目标用户的终端10推送其相似用户阅览过的内容。
请参考图2,其示出了本申请一个实施例提供的用户特征的提取方法的流程图。该方法各步骤的执行主体可以是计算机设备,如服务器或终端等。该方法可以包括如下几个步骤(201~203):
步骤201,获取目标用户的内容阅览序列,该目标用户的内容阅览序列中包括目标用户阅览过的n个内容,n为正整数。
目标用户阅览过的内容是指该目标用户查看或者阅读过的内容。上述n个内容按照一定顺序进行排列,从而形成内容阅览序列。示例性地,内容阅览序列可表示为(t1,t2,t3,t4,…,tn),其中tk表示该内容阅览序列中的第k个内容(如从左往右数第k个位置的内容),k为小于等于n的正整数。
步骤202,通过语义抽取模型对内容阅览序列进行基于上下文的特征提取处理,得到n个内容分别对应的基于上下文的内容向量。
在本申请实施例中,所采用的特征提取方式是基于上下文的特征提取方式,也即在提取内容向量时,考虑了内容在内容阅览序列中的上下文信息。基于上下文的内容向量是指考虑内容在内容阅览序列中的上下文信息的特征向量表示。其中,内容的上下文信息是指该内容在内容阅览序列中之前和/或之后的其他内容。
另外,语义抽取模型是一个用于提取内容向量的机器学习模型。示例性地,该语义抽取模型可以是ALBERT模型。
步骤203,根据n个内容分别对应的基于上下文的内容向量,生成目标用户的用户向量。
目标用户的用户向量用于表征该目标用户的用户特征。在本申请实施例中,由于目标用户的用户向量是基于该目标用户的内容阅览序列中的内容向量决定的,因此该目标用户的用户向量能够表征该目标用户在内容阅览方面的特征,如阅览内容之间的相关性、顺序或偏好等维度的特征。
可选地,采用对n个内容分别对应的基于上下文的内容向量进行求和取平均或者加权求和等方式,生成目标用户的用户向量。
综上所述,本申请实施例提供的技术方案,通过语义抽取模型对目标用户的内容阅览序列进行基于上下文的特征提取处理,得到该内容预览序列中各个内容分别对应的基于上下文的内容向量,然后由这些内容向量构造生成该目标用户的用户向量,使得在用户向量的提取过程中,充分考虑了内容在内容阅览序列中的上下文信息,使得最终得到的用户向量能够更加准确地反映出用户在阅览内容之间的相关性、顺序或偏好等维度的特征,提升了用户向量的准确度。
请参考图3,其示出了本申请另一个实施例提供的用户特征的提取方法的流程图。该方法各步骤的执行主体可以是计算机设备,如服务器或终端等。该方法可以包括如下几个步骤(301~310):
步骤301,获取目标用户的内容阅览记录,该内容阅览记录包括目标用户阅览过的内容以及各个内容的阅览信息。
内容的阅览信息用于指示该内容的阅览情况。可选地,内容的阅览信息包括但不限于以下至少一项:每次阅览的时间戳、每次阅览的时长等信息。
可选地,目标用户的内容阅览记录可以是对目标用户在某一时间段内的内容阅览行为进行记录得到的。该时间段可以是任一历史时间段,也可以是从当前时刻起向前推设定时长的时间段,从而记录该目标用户在最近一段时间内的内容阅览行为。
步骤302,根据各个内容的阅览信息,确定各个内容分别对应的统计指标。
统计指标用于对内容进行排序。可选地,统计指标包括但不限于以下至少一项:阅览次数、阅览总时长等。其中,目标用户针对某一内容的阅览次数,是指该目标用户阅览过该内容多少次,例如阅览次数可以是1、2、3等。在一种可能的实现方式中,可以根据该内容的阅览信息中记录的每次阅览的时间戳的数量,确定阅览次数。目标用户针对某一内容的阅览总时长,是指该目标用户阅览该内容的累计时长,例如目标用户阅览过该内容2次,其中一次阅览时长为1分钟,另一次阅览时长为2分钟,那么该目标用户针对该目标内容的阅览总时长为3分钟。在一种可能的实现方式中,可以对该内容的阅览信息中记录的每次阅览的时长进行求和,得到阅览总时长。
步骤303,按照统计指标对各个内容进行排序,生成目标用户的内容阅览序列,该目标用户的内容阅览序列中包括目标用户阅览过的n个内容,n为正整数。
在统计指标的数量为1的情况下,可以直接按照该统计指标由大到小或由小到大的顺序,对各个内容进行排序,生成目标用户的内容阅览序列。
在统计指标的数量大于1的情况下,对于每一个内容,可以根据该内容的多项统计指标确定出排序指标,然后按照该排序指标由大到小或由小到大的顺序,对各个内容进行排序,生成目标用户的内容阅览序列。其中,内容的排序指标可以根据该内容的多项统计指标进行计算得到,如可以采用加权求和等计算方式,本申请实施例对此不作限定。
步骤304,获取内容阅览序列中的n个内容分别对应的原始内容向量。
原始内容向量是指与内容在内容阅览序列中的上下文信息无关的特征向量表示。在本申请实施例中,原始内容向量的概念与基于上下文的内容向量相对应。在上文已经介绍,基于上下文的内容向量是语义抽取模型提取的,能够体现内容的上下文信息的向量。此处原始内容向量即无法体现内容的上下文信息的向量。在本申请实施例中,以内容阅览序列中各个内容的原始内容向量作为语义抽取模型的输入,由该语义抽取模型提取各个内容在序列中的上下文关系,生成各个内容的基于上下文的内容向量。
可选地,对于上述n个内容中的第i个内容,获取该第i个内容的标识向量、类别向量和位置向量;基于第i个内容的标识向量、类别向量和位置向量,确定第i个内容的原始内容向量,i为小于等于n的正整数。其中,标识向量(token embedding)是指内容的标识对应的向量表示,分类向量(token class embedding)是指内容所属类别对应的向量表示,位置向量(position embedding)是指内容在内容阅览序列中的位置对应的向量表示。
内容的标识即为该内容的ID(Identity),用于对该内容起到唯一标识的作用,不同的内容具有不同的标识。内容所属类别是指该内容所属的分类,以内容为书籍为例,书籍的类别可以包括科幻、悬疑、言情、都市等。内容在内容阅览序列中的位置即为该内容在上述序列中的排序位置,如从左往右数第几个。
在本申请实施例中,基于第i个内容的标识向量、类别向量和位置向量,确定该第i个内容的原始内容向量。例如,将第i个内容的标识向量、类别向量和位置向量进行求和运算、求平均运算或者加权求和运算等,得到该第i个内容的原始内容向量。这样,内容的原始内容向量中就记录了该内容的标识、分类以及位置信息。
步骤305,将n个内容分别对应的原始内容向量输入至语义抽取模型。
步骤306,通过语义抽取模型执行基于上下文的特征提取处理,得到n个内容分别对应的基于上下文的内容向量。
示例性地,如图4所示,语义抽取模型包括输入层41、编码器层42、分类器层43和输出层44。其中,输入层41用于输入内容阅览序列中各个内容的原始内容向量。编码器层42用于对输入层41输入的各个内容的原始内容向量,执行基于上下文的特征提取处理,得到各个内容分别对应的基于上下文的内容向量。分类器层43用于执行从各个内容分别对应的基于上下文的内容向量到各个分类结果的映射处理。输出层44用于输出分类器层43得到的分类结果。有关分类器层43的介绍说明可参见下文模型训练实施例,此处不作赘述。编码器层42可以包括一个transformer结构的编码器,该结构的编码器在进行特征向量提取处理时,能够考虑内容的上下文信息。
步骤307,对n个内容分别对应的基于上下文的内容向量进行求和处理,得到求和向量。
步骤308,将求和向量中的各个元素分别与n相除,得到目标用户的用户向量。
示例性地,采用如下公式计算得到目标用户的用户向量U:
其中,Oi表示内容阅览序列中的第i个内容的基于上下文的内容向量,n即为内容阅览序列中包含的内容数量。
步骤309,根据目标用户的用户向量和其他用户的用户向量,确定目标用户的相似用户。
例如,可以计算目标用户的用户向量与其他用户的用户向量之间的相似度,若该相似度大于阈值则确定该其他用户为目标用户的相似用户,若该相似度小于阈值则确定该其他用户不是目标用户的相似用户。上述两个用户向量之间的相似度计算方式可以是欧氏距离、余弦距离等方式,本申请实施例对此不作限定。
步骤310,基于相似用户的内容阅览记录,确定向目标用户提供的推送内容。
例如,基于相似用户的内容阅览记录,获取该相似用户近期阅览过的内容,将该相似用户近期阅览过的内容作为推送内容提供给目标用户。由于两个用户是否相似是基于用户向量确定的,而用户向量反映了用户在阅览内容之间的相关性、顺序或偏好等维度的特征,因此相似用户之间往往具有相同或者相近的阅览习惯和偏好,通过上述方式进行内容推送,有助于提升推送内容的点击率。
综上所述,本申请实施例提供的技术方案,通过基于内容的标识向量、类别向量和位置向量,确定该内容的原始内容向量,使得该原始内容向量中就记录了该内容的标识、分类以及位置信息,从而为语义抽取模型的特征提取提供更多有价值信息,提升提取得到的基于上下文的内容向量的准确性和鲁棒性。
另外,还通过对内容阅览序列中各个内容的基于上下文的内容向量进行求和取平均处理,得到用户向量,提供了一种简单而又高效地计算用户向量的方式,节省了设备的计算处理开销。
下面,通过实施例对语义抽取模型的训练过程进行介绍说明。在示例性实施例中,语义抽取模型的训练过程可以如下:
1、获取样本用户的内容阅览序列,该样本用户的内容阅览序列中包括样本用户阅览过的至少一个内容。
可选地,获取样本用户的内容阅览记录,该内容阅览记录包括样本用户阅览过的内容以及各个内容的阅览信息;根据各个内容的阅览信息,确定各个内容分别对应的统计指标;按照统计指标对各个内容进行排序,生成样本用户的内容阅览序列。该过程与上文介绍的目标用户的内容阅览序列的获取方式相同或类似,具体可参见上文实施例中的介绍说明,此处不再赘述。
另外,样本用户的数量通常为多个,针对每一个样本用户,均可以根据该样本用户的内容阅览记录生成该样本用户的内容阅览序列。
2、基于样本用户的内容阅览序列,构建语义抽取模型的训练样本。
在本申请实施例中,训练样本的样本数据包括经部分内容项掩盖后的样本用户的内容阅览序列,训练样本的标签数据包括样本用户的内容阅览序列中被掩盖掉的内容项。
一个样本用户的内容阅览序列中,可以包括多个内容项(也即内容),通过对其中的部分内容项(如一个或多个内容项)进行掩盖处理,得到经部分内容项掩盖后的样本用户的内容阅览序列。例如,某一样本用户的内容阅览序列中包括5个内容,可以对其中的1个内容项进行掩盖处理,也可以对其中的p(p为小于5的正整数)个内容项进行掩盖处理,由语义抽取模型根据未被掩盖的内容项,对被掩盖的内容项进行预测。
另外,在生成训练样本的过程中,可以采用随机掩盖的方式,随机选择样本用户的内容阅览序列中的部分内容项进行掩盖,从而生成出更为丰富全面的训练样本。
3、采用训练样本对语义抽取模型进行训练。
示例性地,如图5所示,假设某一样本用户的内容阅览序列为(t1、t2、t3、t4、t5),该样本用户的内容阅览序列中各个内容的原始内容向量记为(w1、w2、w3、w4、w5),该样本用户的一个训练样本中,被随机掩盖掉第4个内容项,图5中以[mask]表示,即模型输入层41输入的样本数据包括(w1、w2、w3、[mask]、w5)。编码器层42对输入层41输入的各个内容的原始内容向量,执行基于上下文的特征提取处理,得到各个内容分别对应的基于上下文的内容向量。分类器层43用于执行从各个内容分别对应的基于上下文的内容向量到各个分类结果的映射处理。输出层44用于输出分类器层43得到的分类结果。其中,分类器层43可以包括全连接层、激活函数层和归一化处理层等。
在模型训练过程中,可以根据训练样本对应的预测结果和标签数据,计算该语义抽取模型的损失函数;其中,训练样本对应的预测结果是指语义抽取模型输出的样本用户的内容阅览序列中被掩盖掉的内容项的预测信息。之后,根据该损失函数对语义抽取模型的参数进行调整。例如,通过调整模型参数以最小化该损失函数的值,从而提升模型的表现性能。
在本申请实施例中,语义抽取模型可以采用ALBERT模型。ALBERT模型是自然语言处理领域常用的一种语言模型,在自然语言处理领域,ALBERT模型相比于BERT模型具有如下几点改进:
(1)因式分解嵌入参数化(factorized embedding parameterization)。BERT词表的词嵌入(或称为词向量)的尺寸(记为E)和transformer层的隐藏层节点数(hidden size,记为H)是等同的,所以E=H。但实际上词库的大小(对应到本申请中是阅览内容的数量)一般都很大,这就导致模型参数个数就会变得很大。为了解决这些问题ALBERT提出了一个基于因式分解(factorization)的方法。该方法没有直接把独热编码(one-hot)映射到隐藏层(hidden layer),而是先把one-hot映射到低维空间之后,再映射到隐藏层。这其实类似于做了矩阵的分解。
(2)跨层参数共享(cross-layer parameter sharing)。ALBERT提出模型的各层之间可以共享参数,这样一来参数的个数不会以层数的增加而增加。
(3)句间连贯损失(inter-sentence coherence loss)。在BERT的训练中提出了next sentence prediction loss(下一句预测损失),也就是给定两个sentence segments(句段),然后让BERT去预测它俩之间的先后顺序,但在ALBERT中提出这是有问题的,这种训练方式用处不是很大。ALBERT提出了sentence-order prediction loss(句序预测损失,SOP),其实是基于主题的关联去预测是否两个句子调换了顺序。
在本申请实施例中,对ALBERT模型的训练过程做了进一步改进,包括如下几点:
(1)对损失函数进行了简化,仅需计算针对被掩盖掉的内容项的预测损失即可。并且,在损失计算时引入了训练样本的权重信息。本申请采用的这种损失函数计算方式,不仅减少了模型的复杂度,并且最终效果也得到了提升。
在示例性实施例中,语义抽取模型的损失函数计算方式如下:
(a)确定训练样本对应的权重;
可选地,获取训练样本中被掩盖掉的内容项的阅览信息,根据训练样本中被掩盖掉的内容项的阅览信息,确定训练样本对应的权重。通过这种方式,对于同一个用户而言,不同的被掩盖掉的内容项对损失的贡献是不一样的。
(b)根据训练样本对应的预测结果、标签数据和权重,计算语义抽取模型的损失函数;
示例性地,损失函数Loss的计算公式如下:
其中,N表示训练样本的数量,Li表示第i个训练样本的损失,wi表示第i个训练样本对应的权重,M表示分类的数量,yic表示第i个训练样本的标签数据,该标签数据可以是一个由0和1组成的向量(0和1的总数量为M),1代表被掩盖掉的内容项,0代表不预测,pic表示第i个训练样本的预测结果,其可以是一个由M个概率值组成的向量。如果标签数据对应的向量和预测结果对应的向量越接近,那么表示模型的预测效果越佳。
(c)根据损失函数对语义抽取模型的参数进行调整。
例如,通过调整模型参数以最小化该损失函数的值,从而提升模型的表现性能。
在本申请实施例中,通过在计算模型损失函数时,考虑各个训练样本对应的权重,由于该权重是基于训练样本中被掩盖掉的内容项的阅览信息确定的,因此对于同一个用户而言,不同的被掩盖掉的内容项对损失的贡献是不一样的,从而能够有选择性地强化一部分内容项对损失的影响程度,并弱化另一部分内容项对损失的影响程度,提升损失计算的灵活性和准确性。
(2)由于阅览内容的数量较多(如百万级),直接采样多分类交叉熵作为损失函数,模型的复杂度会由于最后一层全连接的参数过多而导致训练陷入困难,所以采用负采样(negative sampling)的方案对损失函数进行了优化,可以使得模型快速的收敛。
(3)为了加速模型的训练速度,利用多GPU(Graphics Processing Unit,图形处理器)训练方案,使得模型训练耗时随着GPU数量的增加而减少。
在本申请实施例中,利用了ALBERT Transformer模型架构来构造一个强大的语义抽取模型,对比传统方案,本申请方案可以基于全局的上下文去预测某个内容项,使得最终得到的用户向量更加健壮。而对比BERT,ALBERT通过使用参数共享和输入的矩阵分解操作,降低了模型复杂度。另外还做了训练方案优化,采用负采样的方案进行训练,加速模型训练速度,使得模型最终保持周期更新。
以读书类应用程序中向用户推送书籍为例,读书类应用中存在大量的推送场景,如新书上架推送给可能感兴趣的用户、基于个性化的公众号文章推送、公众号文章点赞扩散等等。对于这些推送的书籍/文章,需要根据点击或者点赞的用户扩散给其他相似用户,提高推送量和目标用户的准确性。
经实验发现,采用本申请技术方案得到的相似用户包,无论是在新书上架推送给可能感兴趣的用户,还是基于个性化的公众号文章推送,亦或是公众号文章点赞扩散,推送内容的点击效果都得到了较大提升。
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
请参考图6,其示出了本申请一个实施例提供的用户特征的提取装置的框图。该装置具有实现上述方法示例的功能,所述功能可以由硬件实现,也可以由硬件执行相应的软件实现。该装置可以是上文介绍的计算机设备,也可以设置在计算机设备中。如图6所示,该装置600包括:阅览序列获取模块610、内容向量提取模块620和用户向量生成模块630。
阅览序列获取模块610,用于获取目标用户的内容阅览序列,所述目标用户的内容阅览序列中包括所述目标用户阅览过的n个内容,所述n为正整数。
内容向量提取模块620,用于通过语义抽取模型对所述内容阅览序列进行基于上下文的特征提取处理,得到所述n个内容分别对应的基于上下文的内容向量;其中,所述基于上下文的内容向量是指考虑所述内容在所述内容阅览序列中的上下文信息的特征向量表示。
用户向量生成模块630,用于根据所述n个内容分别对应的基于上下文的内容向量,生成所述目标用户的用户向量,所述目标用户的用户向量用于表征所述目标用户的用户特征。
在示例性实施例中,如图7所示,所述内容向量提取模块620,包括:向量获取单元621、向量输入单元622和特征提取单元623。
向量获取单元621,用于获取所述n个内容分别对应的原始内容向量,所述原始内容向量是指与所述内容在所述内容阅览序列中的上下文信息无关的特征向量表示。
向量输入单元622,用于将所述n个内容分别对应的原始内容向量输入至所述语义抽取模型。
特征提取单元623,用于通过所述语义抽取模型执行所述基于上下文的特征提取处理,得到所述n个内容分别对应的基于上下文的内容向量。
在示例性实施例中,所述向量获取单元621,用于:
对于所述n个内容中的第i个内容,获取所述第i个内容的标识向量、类别向量和位置向量;其中,所述标识向量是指所述内容的标识对应的向量表示,所述分类向量是指所述内容所属类别对应的向量表示,所述位置向量是指所述内容在所述内容阅览序列中的位置对应的向量表示;
基于所述第i个内容的标识向量、类别向量和位置向量,确定所述第i个内容的原始内容向量,所述i为小于等于所述n的正整数。
在示例性实施例中,所述用户向量生成模块630,用于:
对所述n个内容分别对应的基于上下文的内容向量进行求和处理,得到求和向量;
将所述求和向量中的各个元素分别与所述n相除,得到所述目标用户的用户向量。
在示例性实施例中,所述语义抽取模型的训练过程如下:
获取样本用户的内容阅览序列,所述样本用户的内容阅览序列中包括所述样本用户阅览过的至少一个内容;
基于所述样本用户的内容阅览序列,构建所述语义抽取模型的训练样本,所述训练样本的样本数据包括经部分内容项掩盖后的所述样本用户的内容阅览序列,所述训练样本的标签数据包括所述样本用户的内容阅览序列中被掩盖掉的内容项;
采用所述训练样本对所述语义抽取模型进行训练。
在示例性实施例中,所述采用所述训练样本对所述语义抽取模型进行训练,包括:
确定所述训练样本对应的权重;
根据所述训练样本对应的预测结果、标签数据和权重,计算所述语义抽取模型的损失函数;其中,所述训练样本对应的预测结果是指所述语义抽取模型输出的所述样本用户的内容阅览序列中被掩盖掉的内容项的预测信息;
基于所述损失函数对所述语义抽取模型的参数进行调整。
在示例性实施例中,所述确定所述训练样本对应的权重,包括:
获取所述训练样本中被掩盖掉的内容项的阅览信息;
根据所述训练样本中被掩盖掉的内容项的阅览信息,确定所述训练样本对应的权重。
在示例性实施例中,所述阅览序列获取模块610,用于:
获取所述目标用户的内容阅览记录,所述内容阅览记录包括所述目标用户阅览过的内容以及各个内容的阅览信息;
根据所述各个内容的阅览信息,确定所述各个内容分别对应的统计指标;
按照所述统计指标对所述各个内容进行排序,生成所述目标用户的内容阅览序列。
在示例性实施例中,如图7所示,所述装置600还包括:相似用户确定模块640和推送内容提供模块650。
相似用户确定模块640,用于根据所述目标用户的用户向量和其他用户的用户向量,确定所述目标用户的相似用户。
推送内容提供模块650,用于基于所述相似用户的内容阅览记录,确定向所述目标用户提供的推送内容。
综上所述,本申请实施例提供的技术方案,通过语义抽取模型对目标用户的内容阅览序列进行基于上下文的特征提取处理,得到该内容预览序列中各个内容分别对应的基于上下文的内容向量,然后由这些内容向量构造生成该目标用户的用户向量,使得在用户向量的提取过程中,充分考虑了内容在内容阅览序列中的上下文信息,使得最终得到的用户向量能够更加准确地反映出用户在阅览内容之间的相关性、顺序或偏好等维度的特征,提升了用户向量的准确度。
需要说明的是,上述实施例提供的装置,在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
请参考图8,其示出了本申请一个实施例提供的计算机设备的结构框图。该计算机设备可以用于实施上述实施例中提供的用户特征的提取方法。具体来讲:
该计算机设备800包括处理单元(如CPU(Central Processing Unit,中央处理器)、GPU(Graphics Processing Unit,图形处理器)和FPGA(Field Programmable GateArray,现场可编程逻辑门阵列)等)801、包括RAM(Random-Access Memory,随机存储器)802和ROM(Read-Only Memory,只读存储器)803的系统存储器804,以及连接系统存储器804和中央处理单元801的系统总线805。该计算机设备800还包括帮助服务器内的各个器件之间传输信息的基本输入/输出系统(Input Output System,I/O系统)806,和用于存储操作系统813、应用程序814和其他程序模块815的大容量存储设备807。
该基本输入/输出系统806包括有用于显示信息的显示器808和用于用户输入信息的诸如鼠标、键盘之类的输入设备809。其中,该显示器808和输入设备809都通过连接到系统总线805的输入输出控制器810连接到中央处理单元801。该基本输入/输出系统806还可以包括输入输出控制器810以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器810还提供输出到显示屏、打印机或其他类型的输出设备。
该大容量存储设备807通过连接到系统总线805的大容量存储控制器(未示出)连接到中央处理单元801。该大容量存储设备807及其相关联的计算机可读介质为计算机设备800提供非易失性存储。也就是说,该大容量存储设备807可以包括诸如硬盘或者CD-ROM(Compact Disc Read-Only Memory,只读光盘)驱动器之类的计算机可读介质(未示出)。
不失一般性,该计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、EPROM(Erasable Programmable Read-Only Memory,可擦写可编程只读存储器)、EEPROM(Electrically Erasable Programmable Read-Only Memory,电可擦写可编程只读存储器)、闪存或其他固态存储其技术,CD-ROM、DVD(Digital Video Disc,高密度数字视频光盘)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知该计算机存储介质不局限于上述几种。上述的系统存储器804和大容量存储设备807可以统称为存储器。
根据本申请实施例,该计算机设备800还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即计算机设备800可以通过连接在该系统总线805上的网络接口单元811连接到网络812,或者说,也可以使用网络接口单元811来连接到其他类型的网络或远程计算机系统(未示出)。
所述存储器还包括至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、至少一段程序、代码集或指令集存储于存储器中,且经配置以由一个或者一个以上处理器执行,以实现上述用户特征的提取方法。
在一个示例性实施例中,还提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集在被处理器执行时以实现上述用户特征的提取方法。
可选地,该计算机可读存储介质可以包括:ROM(Read-Only Memory,只读存储器)、RAM(Random-Access Memory,随机存储器)、SSD(Solid State Drives,固态硬盘)或光盘等。其中,随机存取记忆体可以包括ReRAM(Resistance Random Access Memory,电阻式随机存取记忆体)和DRAM(Dynamic Random Access Memory,动态随机存取存储器)。
在一个示例性实施例中,还提供了一种计算机程序产品或计算机程序,所述计算机程序产品或计算机程序包括计算机指令,所述计算机指令存储在计算机可读存储介质中。计算机设备的处理器从所述计算机可读存储介质中读取所述计算机指令,所述处理器执行所述计算机指令,使得所述计算机设备执行上述用户特征的提取方法。
应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。另外,本文中描述的步骤编号,仅示例性示出了步骤间的一种可能的执行先后顺序,在一些其它实施例中,上述步骤也可以不按照编号顺序来执行,如两个不同编号的步骤同时执行,或者两个不同编号的步骤按照与图示相反的顺序执行,本申请实施例对此不作限定。
以上所述仅为本申请的示例性实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (12)
1.一种用户特征的提取方法,其特征在于,所述方法包括:
获取目标用户的内容阅览序列,所述目标用户的内容阅览序列中包括所述目标用户阅览过的n个内容,所述n为正整数;
通过语义抽取模型对所述内容阅览序列进行基于上下文的特征提取处理,得到所述n个内容分别对应的基于上下文的内容向量;其中,所述基于上下文的内容向量是指考虑所述内容在所述内容阅览序列中的上下文信息的特征向量表示;
根据所述n个内容分别对应的基于上下文的内容向量,生成所述目标用户的用户向量,所述目标用户的用户向量用于表征所述目标用户的用户特征。
2.根据权利要求1所述的方法,其特征在于,所述通过语义抽取模型对所述内容阅览序列进行基于上下文的特征提取处理,得到所述n个内容分别对应的基于上下文的内容向量,包括:
获取所述n个内容分别对应的原始内容向量,所述原始内容向量是指与所述内容在所述内容阅览序列中的上下文信息无关的特征向量表示;
将所述n个内容分别对应的原始内容向量输入至所述语义抽取模型;
通过所述语义抽取模型执行所述基于上下文的特征提取处理,得到所述n个内容分别对应的基于上下文的内容向量。
3.根据权利要求2所述的方法,其特征在于,所述获取所述n个内容分别对应的原始内容向量,包括:
对于所述n个内容中的第i个内容,获取所述第i个内容的标识向量、类别向量和位置向量;其中,所述标识向量是指所述内容的标识对应的向量表示,所述分类向量是指所述内容所属类别对应的向量表示,所述位置向量是指所述内容在所述内容阅览序列中的位置对应的向量表示;
基于所述第i个内容的标识向量、类别向量和位置向量,确定所述第i个内容的原始内容向量,所述i为小于等于所述n的正整数。
4.根据权利要求1所述的方法,其特征在于,所述根据所述n个内容分别对应的基于上下文的内容向量,生成所述目标用户的用户向量,包括:
对所述n个内容分别对应的基于上下文的内容向量进行求和处理,得到求和向量;
将所述求和向量中的各个元素分别与所述n相除,得到所述目标用户的用户向量。
5.根据权利要求1所述的方法,其特征在于,所述语义抽取模型的训练过程如下:
获取样本用户的内容阅览序列,所述样本用户的内容阅览序列中包括所述样本用户阅览过的至少一个内容;
基于所述样本用户的内容阅览序列,构建所述语义抽取模型的训练样本,所述训练样本的样本数据包括经部分内容项掩盖后的所述样本用户的内容阅览序列,所述训练样本的标签数据包括所述样本用户的内容阅览序列中被掩盖掉的内容项;
采用所述训练样本对所述语义抽取模型进行训练。
6.根据权利要求5所述的方法,其特征在于,所述采用所述训练样本对所述语义抽取模型进行训练,包括:
确定所述训练样本对应的权重;
根据所述训练样本对应的预测结果、标签数据和权重,计算所述语义抽取模型的损失函数;其中,所述训练样本对应的预测结果是指所述语义抽取模型输出的所述样本用户的内容阅览序列中被掩盖掉的内容项的预测信息;
基于所述损失函数对所述语义抽取模型的参数进行调整。
7.根据权利要求6所述的方法,其特征在于,所述确定所述训练样本对应的权重,包括:
获取所述训练样本中被掩盖掉的内容项的阅览信息;
根据所述训练样本中被掩盖掉的内容项的阅览信息,确定所述训练样本对应的权重。
8.根据权利要求1所述的方法,其特征在于,所述获取目标用户的内容阅览序列,包括:
获取所述目标用户的内容阅览记录,所述内容阅览记录包括所述目标用户阅览过的内容以及各个内容的阅览信息;
根据所述各个内容的阅览信息,确定所述各个内容分别对应的统计指标;
按照所述统计指标对所述各个内容进行排序,生成所述目标用户的内容阅览序列。
9.根据权利要求1至8任一项所述的方法,其特征在于,所述根据所述n个内容分别对应的基于上下文的内容向量,生成所述目标用户的用户向量之后,还包括:
根据所述目标用户的用户向量和其他用户的用户向量,确定所述目标用户的相似用户;
基于所述相似用户的内容阅览记录,确定向所述目标用户提供的推送内容。
10.一种用户特征的提取装置,其特征在于,所述装置包括:
阅览序列获取模块,用于获取目标用户的内容阅览序列,所述目标用户的内容阅览序列中包括所述目标用户阅览过的n个内容,所述n为正整数;
内容向量提取模块,用于通过语义抽取模型对所述内容阅览序列进行基于上下文的特征提取处理,得到所述n个内容分别对应的基于上下文的内容向量;其中,所述基于上下文的内容向量是指考虑所述内容在所述内容阅览序列中的上下文信息的特征向量表示;
用户向量生成模块,用于根据所述n个内容分别对应的基于上下文的内容向量,生成所述目标用户的用户向量,所述目标用户的用户向量用于表征所述目标用户的用户特征。
11.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至9任一项所述的用户特征的提取方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1至9任一项所述的用户特征的提取方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011162452.1A CN112231572A (zh) | 2020-10-27 | 2020-10-27 | 用户特征的提取方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011162452.1A CN112231572A (zh) | 2020-10-27 | 2020-10-27 | 用户特征的提取方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112231572A true CN112231572A (zh) | 2021-01-15 |
Family
ID=74109479
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011162452.1A Pending CN112231572A (zh) | 2020-10-27 | 2020-10-27 | 用户特征的提取方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112231572A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114625876A (zh) * | 2022-03-17 | 2022-06-14 | 北京字节跳动网络技术有限公司 | 作者特征模型的生成方法、作者信息处理方法和装置 |
-
2020
- 2020-10-27 CN CN202011162452.1A patent/CN112231572A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114625876A (zh) * | 2022-03-17 | 2022-06-14 | 北京字节跳动网络技术有限公司 | 作者特征模型的生成方法、作者信息处理方法和装置 |
CN114625876B (zh) * | 2022-03-17 | 2024-04-16 | 北京字节跳动网络技术有限公司 | 作者特征模型的生成方法、作者信息处理方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111177575B (zh) | 一种内容推荐方法、装置、电子设备和存储介质 | |
CN111680217B (zh) | 内容推荐方法、装置、设备及存储介质 | |
CN112131350B (zh) | 文本标签确定方法、装置、终端及可读存储介质 | |
CN111667022A (zh) | 用户数据处理方法、装置、计算机设备和存储介质 | |
CN116935169B (zh) | 文生图模型训练方法以及文生图方法 | |
CN112819023B (zh) | 样本集的获取方法、装置、计算机设备和存储介质 | |
CN110390052B (zh) | 搜索推荐方法、ctr预估模型的训练方法、装置及设备 | |
CN111382361A (zh) | 信息推送方法、装置、存储介质和计算机设备 | |
CN111191092A (zh) | 画像数据处理方法和画像模型训练方法 | |
CN113392359A (zh) | 多目标预测方法、装置、设备及存储介质 | |
CN113822776B (zh) | 课程推荐方法、装置、设备及存储介质 | |
CN113722474A (zh) | 文本分类方法、装置、设备及存储介质 | |
CN112085120B (zh) | 多媒体数据的处理方法、装置、电子设备及存储介质 | |
CN113515669A (zh) | 基于人工智能的数据处理方法和相关设备 | |
CN114298122A (zh) | 数据分类方法、装置、设备、存储介质及计算机程序产品 | |
CN110457523B (zh) | 封面图片的选取方法、模型的训练方法、装置及介质 | |
CN114201516A (zh) | 一种用户画像构建的方法、信息推荐的方法以及相关装置 | |
CN113656699B (zh) | 用户特征向量确定方法、相关设备及介质 | |
CN114329004A (zh) | 数字指纹生成、数据推送方法、装置和存储介质 | |
CN116628345B (zh) | 一种内容推荐方法、装置、电子设备和存储介质 | |
CN115730125A (zh) | 对象识别方法、装置、计算机设备和存储介质 | |
CN112231572A (zh) | 用户特征的提取方法、装置、设备及存储介质 | |
CN115131052A (zh) | 一种数据处理方法、计算机设备和存储介质 | |
CN116955591A (zh) | 用于内容推荐的推荐语生成方法、相关装置和介质 | |
Esuli et al. | Traj2user: exploiting embeddings for computing similarity of users mobile behavior |
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 |