一种用户意图的识别方法、装置、电子设备及存储介质与流程

文档序号:14837000发布日期:2018-06-30 12:50阅读:134来源:国知局
一种用户意图的识别方法、装置、电子设备及存储介质与流程

本发明涉及互联网技术领域,特别是涉及一种用户意图的识别方法、一种用户意图的识别装置、一种电子设备和一种存储介质。



背景技术:

随着移动互联网技术的日趋成熟,人们可以方便的在任意时间、地点通过移动设备访问互联网,而用户对于信息的需求也日趋个性化,准确预测用户此时此刻的信息需求,即实时用户意图,便是实现个性化的一个重要方面。

现有的O2O(Online To Offline,在线离线/线上到线下)场景下的综合搜索推荐系统一般都是将用户的意图通过点击、下单等历史行为作为特征加入学习排序模型,通过模型的训练得到所要向用户推荐的业务,但是上述推荐方法只能够反映出用户对于某一类业务的历史偏好。此外,搜索系统除了使用用户历史行为外还大多依赖用户的输入查询,通过匹配用户输入的文本,获得相应的推荐结果。但是,在无查询的情况下却不能很好地反映出用户的瞬时倾向,例如,用户在刚启动搜索系统时的意图或倾向。与此同时,多个系统对于用户历史行为特征的使用需要多次接入,增加了模型计算的复杂度,同时也增加了系统出错的几率。



技术实现要素:

鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种用户意图的识别方法、一种用户意图的识别装置、一种电子设备和相应的一种存储介质。

为了解决上述问题,本发明实施例公开了一种用户意图的识别装置,包括:

确定模块,用于确定多个用户意图和多个特征项;

提取模块,用于分别提取每个特征项对应于每个用户意图的特征数值;

第一获取模块,用于获取用户历史行为数据;

训练模块,用于根据所述特征数值和所述用户历史行为数据进行模型训练,以获得所述各个特征项的权重值;

第二获取模块,用于获取当前的多个特征项,所述当前的多个特征项分别具有实时的特征数值;

意图概率分布计算模块,用于依据所述权重值,对所述实时的特征数值进行加权求和,以获得所述多个用户意图当前的概率分布。

可选地,所述多个特征项包括时间特征项,所述时间特征项对应于每个用户意图的特征数值被转换为时间特征项哈希函数;和/或,

所述多个特征项包括类别特征项,所述类别特征项对应于每个用户意图的特征数值被转换为类别特征项哈希函数;和/或,

所述多个特征项包括时效-累积特征项,所述时效-累积特征项对应于每个用户意图的特征数值被转换为时效-累积特征项哈希函数。

可选地,当所述多个特征项包括时间特征项时,所述提取模块包括:

划分子模块,用于将单位时间周期划分为多个时间片;

第一统计子模块,用于分别统计每个时间片中每个用户意图发生的次数和全部时间片中每个用户意图发生的次数的最大值;

第一生成子模块,用于根据所述每个时间片中每个用户意图发生的次数和全部时间片中每个用户意图发生的次数的最大值,生成所述时间特征项哈希函数。

可选地,当所述多个特征项包括类别特征项时,所述提取模块包括:

第二统计子模块,用于分别统计任一类别下每个用户意图发生的次数;

第二生成子模块,用于对所述任一类别下每个用户意图发生的次数作归一化和平滑处理,生成所述类别特征项哈希函数。

可选地,当所述多个特征项包括时效-累积特征项时,所述提取模块包括:

获取子模块,用于获取当前用户的每个用户意图距离当前时间最近一次的发生时间,生成时效性参数;

第三统计子模块,用于分别统计每个用户意图在预设的时间周期内发生的次数的最大值,以及,当前用户在所述预设的时间周期内发生所述用户意图的次数;

第三生成子模块,用于根据所述每个用户意图在预设的时间周期内发生的次数的最大值以及当前用户在所述预设的时间周期内发生所述用户意图的次数,生成累积性参数;

第四生成子模块,用于采用所述时效性参数和累积性参数,生成所述时效-累积特征项哈希函数。

可选地,所述时效性参数通过对所述当前用户的每个用户意图距离当前时间最近一次的发生时间取对数并做平移而生成;和/或,

所述累积性参数通过对当前用户在所述预设的时间周期内发生所述用户意图的次数与所述每个用户意图在预设的时间周期内发生的次数的最大值的比值取双曲正切而生成。

可选地,所述训练模块包括:

训练子模块,用于根据所述用户历史行为数据,对时间特征项哈希函数、类别特征项哈希函数和/或时效-累积特征项哈希函数进行模型训练,以获得所述各个特征项的权重值。

可选地,还包括:

识别模块,用于识别所述概率分布中的最大概率值对应的用户意图为目标用户意图。

为了解决上述问题,本发明实施例公开了一种用户意图的识别方法,包括:

确定多个用户意图和多个特征项;

分别提取每个特征项对应于每个用户意图的特征数值;

获取用户历史行为数据;

根据所述特征数值和所述用户历史行为数据进行模型训练,以获得所述各个特征项的权重值;

获取当前的多个特征项,所述当前的多个特征项分别具有实时的特征数值;

依据所述权重值,对所述实时的特征数值进行加权求和,以获得所述多个用户意图当前的概率分布。

可选地,所述多个特征项包括时间特征项,所述时间特征项对应于每个用户意图的特征数值被转换为时间特征项哈希函数;和/或,

所述多个特征项包括类别特征项,所述类别特征项对应于每个用户意图的特征数值被转换为类别特征项哈希函数;和/或,

所述多个特征项包括时效-累积特征项,所述时效-累积特征项对应于每个用户意图的特征数值被转换为时效-累积特征项哈希函数。

可选地,当所述多个特征项包括时间特征项时,所述分别提取每个特征项对应于每个用户意图的特征数值的步骤包括:

将单位时间周期划分为多个时间片;

分别统计每个时间片中每个用户意图发生的次数和全部时间片中每个用户意图发生的次数的最大值;

根据所述每个时间片中每个用户意图发生的次数和全部时间片中每个用户意图发生的次数的最大值,生成所述时间特征项哈希函数。

可选地,当所述多个特征项包括类别特征项时,所述分别提取每个特征项对应于每个用户意图的特征数值的步骤包括:

分别统计任一类别下每个用户意图发生的次数;

对所述任一类别下每个用户意图发生的次数作归一化和平滑处理,生成所述类别特征项哈希函数。

可选地,当所述多个特征项包括时效-累积特征项时,所述分别提取每个特征项对应于每个用户意图的特征数值的步骤包括:

获取当前用户的每个用户意图距离当前时间最近一次的发生时间,生成时效性参数;

分别统计每个用户意图在预设的时间周期内发生的次数的最大值,以及,当前用户在所述预设的时间周期内发生所述用户意图的次数;

根据所述每个用户意图在预设的时间周期内发生的次数的最大值以及当前用户在所述预设的时间周期内发生所述用户意图的次数,生成累积性参数;

采用所述时效性参数和累积性参数,生成所述时效-累积特征项哈希函数。

可选地,所述时效性参数通过对所述当前用户的每个用户意图距离当前时间最近一次的发生时间取对数并做平移而生成;和/或,

所述累积性参数通过对当前用户在所述预设的时间周期内发生所述用户意图的次数与所述每个用户意图在预设的时间周期内发生的次数的最大值的比值取双曲正切而生成。

可选地,所述根据所述特征数值和所述用户历史行为数据进行模型训练,以获得所述各个特征项的权重值的步骤包括:

根据所述用户历史行为数据,对时间特征项哈希函数、类别特征项哈希函数和/或时效-累积特征项哈希函数进行模型训练,以获得所述各个特征项的权重值。

可选地,在所述获得所述多个用户意图当前的概率分布的步骤后,还包括:

识别所述概率分布中的最大概率值对应的用户意图为目标用户意图。

为了解决上述问题,本发明实施例公开了一种电子设备,包括:

处理器;以及,

存储器,用于存储所述处理器的可执行指令;

其中,所述处理器配置为通过执行所述可执行指令来执行上述用户意图的识别方法的步骤。

为了解决上述问题,本发明实施例公开了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述用户意图的识别方法的步骤。

与背景技术相比,本发明实施例包括以下优点:

本发明实施例,通过首先确定多个用户意图和多个特征项,并分别提取每个特征项对应于每个用户意图的特征数值,然后在获取用户历史行为数据的基础上,根据上述特征数值和用户历史行为数据进行模型训练,获得各个特征项的权重值,从而在获取当前的多个特征项后,可以依据上述权重值,对当前的多个特征项实时的特征数值进行加权求和,获得用户的多个意图当前的概率分布。本发明实施例通过对用户针对不同业务对象的意图分布进行实时预测,解决了现有技术中在无查询的情况下无法反映出用户瞬时倾向的问题,通过计算用户意图的概率分布,更好地反映了用户在请求瞬间的意图倾向,并使得各个用户意图间具有可比性,能够横向比较。

附图说明

图1是本发明一个实施例的一种用户意图的识别方法的步骤流程图;

图2是本发明一个实施例的另一种用户意图的识别方法的步骤流程图;

图3是本发明一个实施例的一种用户意图的识别装置的结构框图。

具体实施方式

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。

参照图1,示出了本发明一个实施例的一种用户意图的识别方法的步骤流程图,具体可以包括如下步骤:

步骤101,确定多个用户意图和多个特征项;

需要说明的是,本发明实施例可以应用于客户端中,该客户端可以与第三方的服务器或服务器集群相连,如分布式系统,其可以抓取网络平台中业务对象的业务数据,网络平台可以为独立的服务器或服务器集群,用于对业务对象进行业务处理。

在不同的业务领域中可以具有不同的业务对象,例如,在通信领域中,业务对象可以为通信数据;在新闻媒体领域中,业务对象可以为新闻数据;在搜索领域中,业务对象可以为网页;在电子商务领域,业务对象可以为商品或商品类型,等等。

在本发明实施例中,用户意图可以是用户针对各个业务对象的意图。例如,若业务对象包括到店餐饮和外卖,则用户意图可以是用户分别倾向于选择到店餐饮或外卖的意图。

在本发明实施例中,多个特征项可以包括客户条件特征或用户行为特征。例如,时间、天气、用户的点击、浏览,或者下单行为等等。本实施例对用户意图针对的业务对象和特征项不作限定。

步骤102,分别提取每个特征项对应于每个用户意图的特征数值;

在本发明实施例中,特征数值可以是指各个用户意图分别在各个特征项下的概率值。例如,对于用户意图为外卖,特征项为时间,则可以提取出外卖在一天24小时内每一小时的概率值。

在具体实现中,可以将多个特征项按照各自的特征进行分类。例如,对于仅与时间联系密切的特征项,可以将其划分为时间特征项;对于仅于类别联系密切的特征项,可以将其划分为类别特征项;而对于那些不仅需要考虑时效性,也需要考虑累积性的特征项,则可以将其划分为时效-累积特征项。

在本发明实施例中,各个时间特征项对应于每个用户意图的特征数值可以被转换为时间特征项哈希函数;各个类别特征项对应于每个用户意图的特征数值可以被转换为类别特征项哈希函数;而各个时效-累积特征项对应于每个用户意图的特征数值则可以被转换为时效-累积特征项哈希函数。

步骤103,获取用户历史行为数据;

在本发明实施例中,用户历史行为数据可以是指用户过往的操作行为数据。例如,用户对于各个用户意图针对的业务对象的点击、浏览或者下单等行为的数据。

步骤104,根据所述特征数值和所述用户历史行为数据进行模型训练,以获得所述各个特征项的权重值;

在具体实现中,在确定出各个特征项对应于各个用户意图的特征数值后,可以基于用户历史行为数据进行模型训练,得到各个特征项的权重值。

需要说明的是,计算得到的各个特征项的权重值在进行后续的用户意图预测时是不变的。

步骤105,获取当前的多个特征项,所述当前的多个特征项分别具有实时的特征数值;

当前的多个特征项可以是指当前所具有的全部特性。例如,当前的时间、地点、天气等等。当前的多个特征项可以分别具有实时的特征数值。

步骤106,依据所述权重值,对所述实时的特征数值进行加权求和,以获得所述多个用户意图当前的概率分布。

在本发明实施例中,在进行用户意图的识别时,可以依据各个特征项的权重值,对当前的多个特征项的实时的特征数据进行加权求和,加权求和的结果即是各个用户意图当前的概率分布。

各个用户意图当前的概率分布可以表示用户对于每个用户意图的倾向性的大小。例如,概率值越大,表示用户对于该意图的倾向性越强。

在本发明实施例中,通过首先确定多个用户意图和多个特征项,并分别提取每个特征项对应于每个用户意图的特征数值,然后在获取用户历史行为数据的基础上,根据上述特征数值和用户历史行为数据进行模型训练,获得各个特征项的权重值,从而在获取当前的多个特征项后,可以依据上述权重值,对当前的多个特征项实时的特征数值进行加权求和,获得用户的多个意图当前的概率分布。本发明实施例通过对用户针对不同业务对象的意图分布进行实时预测,解决了现有技术中在无查询的情况下无法反映出用户瞬时倾向的问题,通过计算用户意图的概率分布,更好地反映了用户在请求瞬间的意图倾向,并使得各个用户意图间具有可比性,能够横向比较。

参照图2,示出了本发明一个实施例的另一种用户意图的识别方法的步骤流程图,具体可以包括如下步骤:

步骤201,确定多个用户意图和多个特征项;

在本发明实施例中,用户意图可以是指用户针对各个业务对象的意图或倾向性,通过确定用户的意图,可以向用户推荐相应的业务对象。

在本发明实施例中,为了向用户推荐业务对象,可以首先确定出待推荐的多个业务对象和用于对上述多个业务对象进行分析的特征项,以确定用户在打开某个应用程序APP的瞬时对于某个业务对象的概率。

在具体实现中,多个用户意图可以是由用户的多个意图所构成的一个意图集合{P1,P2,P3,…PN},例如{到店餐饮,外卖,电影,酒店,旅游,KTV,娱乐}等等。同时,可以给定一个二值变量y∈{0,1},如果用户具有某个意图,则y的取值为1;如果用户不具有某个意图,则y的取值为0。从而用户对某一个意图的强度即可以表示为y为1时的概率:P{y=1}。

当用户打开某个APP的瞬时,该意图的强度可以表示为P{y=1|open},其中open表示用户打开APP的事件。

在本发明实施例中,多个特征项既可以包括客观条件特征,也可以包括用户行为特征。其中,客观条件特征可以是指环境因素、时间因素等客观条件。例如,时间、天气、地点等等。用户行为特征可以是指用户针对各个业务对象所发生的如浏览、点击、下单等主观行为。

在具体实现中地,多个特征项也可以以特征项集合的形式存在。例如,{时间,天气,地点,个人历史下单,个人历史查询}等等。

步骤202,分别提取每个特征项对应于每个用户意图的特征数值,所述特征数值包括时间特征项哈希函数、类别特征项哈希函数和/或时效-累积特征项哈希函数;

在本发明实施例中,在引入客观条件特征和用户行为特征后,用户针对某一意图的强度P{y=1|open}可以进一步表示为:

P{y=1|open}=∑C∈{Context,User}P{y=1|C,open}P{C|open}……(1)

其中,C∈{Context,User}可以理解为C是客观条件特征和用户行为特征集合中的一个。

因此,计算用户打开APP瞬时对于某个意图的概率,可以转化为计算用户打开APP的瞬时,所有特征项下用户具有该意图的概率之和。

在具体实现中,可以引入一个独立性假设:设用户打开APP的瞬时具有某个特征与该特征下用户具有某个意图的概率是独立的,从而可以用概率乘积的方式来计算。实际上,用户打开APP的瞬时具有某个特征与某个意图未必是独立的,但是,这种独立性假设从统计意义上是合理的,并且能够简化模型计算。

在本发明实施例中,假设用户打开APP时具有某个特征的概率为θ,而在该特征下用户具有某个意图的概率为x,则上述式(1)可以转化为一元逻辑回归问题:

P{y=1|open}=sigmoid(∑iθi*xi),xi∈[0,1]……(2)

因此,计算用户意图的分布即是计算所有的{P1,P2,P3,…,PN},其中Pi∈[0,1],∑Pi=1。

结合上述推导,则求解用户意图的概率分布的问题可以转化为求解Softmax回归问题,其公式如下所示:

其中j∈{1,2,…,N}表示N个意图,xi是特征向量,包括了客观条件特征和用户行为特征。

对于上述公式(4),θ可以通过机器学习算法对样本的学习而得到,因此,当需要预测一个用户打开APP的瞬时的意图时,只需要获取当前的多个特征,再带入到已经求得θ的公式(4)中,就可以计算出用户针对各个用户意图的概率分布了。

在本发明实施例中,在进行上述求解前,可以首先分别提取每个特征项对应于每个用户意图的特征数值。

在具体实现中,可以将多个特征项按照各自的特征进行分类。例如,时间特征项、类别特征项和时效-累积特征项。上述时间特征项可以包括时间;上述类别特征项可以包括天气、地点等特征;而时效-累积特征项则可以包括个人历史下单、个人历史查询等特征。

在本发明实施例中,各个时间特征项对应于每个用户意图的特征数值可以被转换为时间特征项哈希函数;各个类别特征项对应于每个用户意图的特征数值可以被转换为类别特征项哈希函数;而各个时效-累积特征项对应于每个用户意图的特征数值则可以被转换为时效-累积特征项哈希函数。

在具体实现中,对于时间特征项,可以首先将单位时间周期划分为多个时间片,每一个时间片记可以为Ti,然后分别统计每个时间片Ti中每个用户意图发生的次数count(e,Ti)和全部时间片中每个用户意图发生的次数的最大值max{count(e,Ti)};从而可以根据上述每个时间片Ti中每个用户意图发生的次数count(e,Ti)和全部时间片中每个用户意图发生的次数的最大值max{count(e,Ti)},生成时间特征项哈希函数,其公式如下所示:

具体地,可以以一天24小时为单位时间周期,考察在一天中不同时段的某一用户意图发生的次数。例如,可以以每5分钟为一个时间间隔,将一天内的24小时设置为288个时间片,则每个时间片为5分钟,然后通过统计近三个月内的数值,对得到的哈希函数值做平均,该平均值则是最终的取值。

在实际应用时,当用户在一天的任一时刻打开APP时,均可以通过这一组哈希函数得到该时间对应的用户意图的特征数值。

例如,对于外卖下单这一用户意图,可以通过哈希函数获知在每天的11~13点是一天中该特征最强的时刻。

对于天气、地点等类别特征项,其对应的特征数值可以通过统计各个用户意图在各个类别内发生的次数得到。

在具体实现中,可以分别统计任一类别下每个用户意图发生的次数count(e,Ci),然后对上述任一类别下每个用户意图发生的次数count(e,Ci)作归一化和平滑处理,生成类别特征项哈希函数,其中,在作平滑处理时可以采用tanh函数进行。相应的公式可以表示如下:

采用上述公式可以获得一组与类别特征项对应的哈希函数,从而可以获得在用户打开APP时,用户在某一类别场景下对应的用户意图发生的强度,也就是该类别下用户对某个业务对象的意图的强度。

此外,对于某些类型的特征项,不仅需要考虑时效性,还要考虑累积性。例如,对于用户购买外卖的行为,如果用户A在一周内有过外卖下单记录,而用户B在三周前有过外卖下单记录,那么用户A和用户B对外卖意图的强度可能是不同的,这是时效性的体现。另外,在一个周期内,如三个月内,如果用户A下单外卖30单,而用户B仅下了5单,那么用户A和B对外卖的意图强度也应该是不同的,这是积累性的体现。个人历史下单和个人历史查询等特征项便是需要同时考虑时效性和积累性的特征项。

在本发明实施例中,对于时效-累积特征项,可以将时效性记为x1,累积累记为x2,则相应的特征的强度可以表示:

y=α*x1+(1-α)*x2,α∈[0,1]……(8)

其中,α是时效性和累积性的权重参数,值域为[0,1],α的大小可以根据实际需要具体确定,本发明实施例对此不作限定。

在本发明实施例中,可以获取当前用户的每个用户意图距离当前时间最近一次的发生时间,生成时效性参数。

在具体实现中,时效性参数可以通过对上述当前用户的每个用户意图距离当前时间最近一次的发生时间取对数并做平移而生成。

例如,可以使用时间衰减函数,记录某一用户意图最近一次发生时间对应的数值,作为x1的值。其中时间衰减函数可以为采用log函数对原点做平移得到。

然后可以分别统计每个用户意图在预设的时间周期内发生的次数的最大值,以及,当前用户在上述预设的时间周期内发生该用户意图的次数。从而可以根据每个用户意图在预设的时间周期内发生的次数的最大值,以及,当前用户在上述预设的时间周期内发生该用户意图的次数,生成累积性参数。

在具体实现中,累积性参数可以通过对当前用户在预设的时间周期内发生用户意图的次数与每个用户意图在预设的时间周期内发生的次数的最大值的比值取双曲正切(tanh)而生成。

例如,可以首先统计所有用户在预设的时间周期内发生各个用户意图的次数的最大值,记为max=max{count(u,e,T)},并以此为分段点建立函数:

其中,u(e)是当前用户在相同的时间周期内发生某一用户意图的次数。

然后,采用tanh函数对u(e)和max作归一化处理,即可获得x2的值:

在分别获得时效性参数和累积性参数后,可以采用时效性参数和累积性参数,生成时效-累积特征项哈希函数。

步骤203,获取用户历史行为数据;

在本发明实施例中,用户历史行为数据可以是指用户过往的操作行为数据。例如,用户对于各个用户意图针对的业务对象的点击、浏览或者下单等行为的数据。

在本发明实施例中,可以根据提取的用户历史行为数据,生成训练样本集。训练样本集可以包括正样本集和负样本集。

在具体实现中,当用户打开APP后,对于该APP展现的多个业务对象,如果用户点击了某个业务对象,则可以将该业务对象对应的分类作为正样本集,而用户未点击的其他业务对象对应的分类则可以作为负样本集。

或者,APP默认展示的搜索关键词如果被用户直接搜索,则可以认为该搜索关键词推荐准确,从而可以将该关键词对应的分类作为正样本集。反之,如果用户未搜索默认展示的关键词,则可以作为负样本集。当然,本领域技术人员可以根据实际需要具体调整样本集的数据来源,本实施例对此不作限定。

步骤204,根据所述用户历史行为数据,对时间特征项哈希函数、类别特征项哈希函数和/或时效-累积特征项哈希函数进行模型训练,以获得所述各个特征项的权重值;

在本发明实施例中,当获得训练样本集后,可以对步骤202中获得的时间特征项哈希函数、类别特征项哈希函数和时效-累积特征项哈希函数进行模型训练,从而得到每个特征项的权重值。

在具体实现中,可以将提取的特征项的特征数值带入公式(4)中,获得对应的特征项的权重值,即公式(4)中的θ的值。

步骤205,获取当前的多个特征项,所述当前的多个特征项分别具有实时的特征数值;

在本发明实施例中,用户针对每个用户意图的概率可以是多个特征项与相应的权重值共同作用的结果,因此,在确定多个用户意图的概率分布时,可以首先获取当前的多个特征项。

当前的多个特征项可以是指当前所具有的全部特性。例如,当前的时间、地点、天气等等。当前的多个特征项可以分别具有实时的特征数值。

在具体实现中,当前的多个特征项对应的实时的特征数值可以按照步骤202进行确定,本实施例对此不再赘述。

步骤206,依据所述权重值,对所述实时的特征数值进行加权求和,以获得所述多个用户意图当前的概率分布;

在本发明实施例中,在获取当前的多个特征项,并确定出每个特征项对应的实时的特征数值后,可以采用步骤204计算得到的权重值,对当前的多个特征项实时的特征数值进行加权求和,获得多个用户意图当前的概率分布。

在具体实现中,可以将当前的多个特征项实时的特征数值带入公式(4)中进行求解,直接输出多个用户意图当前的概率分布。

步骤207,识别所述概率分布中的最大概率值对应的用户意图为目标用户意图。

在本发明实施例中,用户针对每个用户意图的概率分布反映了用户对每个业务对象的意图的强弱情况。因此,在获得多个用户意图的概率分布后,可以进一步从多个用户意图中提取出目标用户意图。

例如,可以提取概率分布中的最大概率值对应的用户意图为目标用户意图,目标用户意图对应的业务对象即为用户意图最强的目标业务对象。

在本发明实施例中,在确定目标用户意图后,可以将目标用户意图对应的目标业务对象推荐给用户。

具体地,可以将目标业务对象展现在搜索框中,以方便用户直接采用目标业务对象进行搜索;还可以在用户的搜索结果页中优先展现目标业务对象,以实现搜索结果的个性化排序。当然,本领域技术人员还可以根据实际需要,选择其他的推荐方式,本实施例对此不作限定。

在本发明实施例中,通过计算用户对多个用户意图的概率分布,并从多个用户意图中识别出目标用户意图,解决了现有技术中在无查询的情况下无法反映出用户瞬时倾向的问题,通过计算用户意图的概率分布,更好地反映了用户在请求瞬间的意图倾向,并使得各个用户意图间具有可比性,能够横向比较。其次,本发明实施例在进行业务对象的推荐时,可以不依赖于用户的查询或其他操作,可以在某一瞬时对用户的意图进行预测,提高了业务对象推荐的有效性。

为了便于理解,下面以一个完整的示例对本发明的用户意图的识别方法作一介绍。

S1,在O2O场景下,用户可以使用应用程序APP进行消费。为了在用户打开APP时,快速地对用户的意图进行预测,从而更好地向用户推荐符合其意图的消费类型(即业务对象),可以首先确定意图集合和特征项集合,例如意图集合可以是P∈{到店餐饮,外卖,电影,酒店,旅游,KTV,娱乐},特征项集合可以是C∈{时间,天气,地点,个人历史下单,个人历史查询},其中,时间,天气,地点属于客观条件特征,个人历史下单和个人历史查询属于用户行为特征,共五维特征。

S2,根据确定的特征项选择合适的特征模型进行特征数值的抽取。

例如,对于时间维度,可以采用时间特征项模型,对以上每一种意图分类下的所有用户衡量下单事件,并计算出用户群体在一天中的不同时段的数值特征哈希函数,从而可以得到餐饮类的意图在午间具有较高权重,而电影的强意图出现在晚间黄金时间,酒店的强意图则在晚间22点之后。

针对天气和地点特征项,适合使用类别特征项模型。进一步地,由于恶劣的天气情况将影响跟生活服务相关的消费行为,因此,可以将天气分类为{低温,大雨,中雨,小雨,大风,重霾,大雾,雷电,降雪,其他},而将正常范围内的天气因素放在其他分类中,认为该分类对用户的消费行为影响不大;同时,还可以将一天分为{上午,下午,晚间},一周分为{工作日,休息日}。然后,分别对以上分类进行组合,采用类别特征项模型计算哈希函数,这一组哈希函数可以用于离线训练模型和在线预测时的天气特征计算。与天气特征项类似,还可以进一步将地点特征项分类为{工作地,居住地,商户,路途,其他},并将一周分为{工作日,休息日},然后将各个分类进行组合,得到地点特征项的哈希函数。

针对个人历史下单和个人历史查询特征项,可以采用时效-累积特征项模型,从时效性和累积性两个方面综合计算其数值得分。对于个人历史下单,可以衡量每一个用户最近的三个月内在各个意图分类下的下单情况;而时效性可以使用函数(4+log0.5(t+1))/4,它的数值特点是横轴t接近0时y趋近于1,而随着t的增大,y逐步接近横轴,即0值,该函数刻画出了下单时间越近,越是趋向于对某个意图类别的兴趣,时间越远,则兴趣衰减。在具体计算时,可以采用最近的一次下单来更新时效性数值,累积性则可以使用三个月内用户的最大下单值做分段函数,从而对每一个用户的三个月内对于各个意图类别的下单做出归一化的数值得分。从而可以看到,下单越多,得分越高。针对个人历史查询特征项,与前述下单类似,可以选择4周内的数据计算。该特征项依赖查询分类器对每一个搜索查询进行分类,通过计算可以得到用户对于每个意图类别查询数量的统计,从而获得得分。可以看到查询次数越多,查询时间越近,则得分越高。

需要说明的是,在以上特征项集合中,时间、地点、天气等客观条件特征项考察的是用户群体的行为,个人历史下单和个人历史查询等用户行为特征项则考察的是用户个体的行为。在获得上述特征数值后,便可以开始进行模型训练了。

S3,具体地,可以采用Softmax回归模型进行训练,从而可以获得公式(4)中的θ的值。在具体实现中,对于意图集合是P∈{到店餐饮,外卖,电影,酒店,旅游,KTV,娱乐},特征项集合是C∈{时间,天气,地点,个人历史下单,个人历史查询}而言,模型训练时是该示例可以表示为一个7*5的矩阵,从而可以使用L-BFGS算法求得θ参数。

S4,当用户在打开APP瞬时,可以获取各个特征项当前对应的特征信息,例如,当前的时间、天气等等,从而继续按照上述描述的特征抽取方法计算当前的特征项对应的特征数值,输入已经训练好的Softmax回归模型,从而可以获得用户对于意图集合的概率分布,该概率分布即体现了用户对于每一个业务对象的意图的强弱情况。

S5,在获得用户的实时的意图分布后,可以在默认搜索词推荐的应用中,选择意图最强的一个类别下的推荐查询,将最大概率值对应的业务对象推荐给用户。

需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。

参照图3,示出了本发明的一种业务对象的推荐装置实施例的结构框图,具体可以包括如下模块:

确定模块301,用于确定多个用户意图和多个特征项;

提取模块302,用于分别提取每个特征项对应于每个用户意图的特征数值;

第一获取模块303,用于获取用户历史行为数据;

训练模块304,用于根据所述特征数值和所述用户历史行为数据进行模型训练,以获得所述各个特征项的权重值;

第二获取模块305,用于获取当前的多个特征项,所述当前的多个特征项分别具有实时的特征数值;

意图概率分布计算模块306,用于依据所述权重值,对所述实时的特征数值进行加权求和,以获得所述多个用户意图当前的概率分布。

在本发明实施例中,所述多个特征项包括时间特征项,所述时间特征项对应于每个用户意图的特征数值被转换为时间特征项哈希函数;和/或,

所述多个特征项包括类别特征项,所述类别特征项对应于每个用户意图的特征数值被转换为类别特征项哈希函数;和/或,

所述多个特征项包括时效-累积特征项,所述时效-累积特征项对应于每个用户意图的特征数值被转换为时效-累积特征项哈希函数。

在本发明实施例中,当所述多个特征项包括时间特征项时,所述提取模块302具体可以包括如下子模块:

划分子模块,用于将单位时间周期划分为多个时间片;

第一统计子模块,用于分别统计每个时间片中每个用户意图发生的次数和全部时间片中每个用户意图发生的次数的最大值;

第一生成子模块,用于根据所述每个时间片中每个用户意图发生的次数和全部时间片中每个用户意图发生的次数的最大值,生成所述时间特征项哈希函数。

在本发明实施例中,当所述多个特征项包括类别特征项时,所述提取模块302具体可以包括如下子模块:

第二统计子模块,用于分别统计任一类别下每个用户意图发生的次数;

第二生成子模块,用于对所述任一类别下每个用户意图发生的次数作归一化和平滑处理,生成所述类别特征项哈希函数。

在本发明实施例中,当所述多个特征项包括时效-累积特征项时,所述提取模块302具体可以包括如下子模块:

获取子模块,用于获取当前用户的每个用户意图距离当前时间最近一次的发生时间,生成时效性参数;

第三统计子模块,用于分别统计每个用户意图在预设的时间周期内发生的次数的最大值,以及,当前用户在所述预设的时间周期内发生所述用户意图的次数;

第三生成子模块,用于根据所述每个用户意图在预设的时间周期内发生的次数的最大值以及当前用户在所述预设的时间周期内发生所述用户意图的次数,生成累积性参数;

第四生成子模块,用于采用所述时效性参数和累积性参数,生成所述时效-累积特征项哈希函数。

在本发明实施例中,所述时效性参数通过对所述当前用户的每个用户意图距离当前时间最近一次的发生时间取对数并做平移而生成;和/或,

所述累积性参数通过对当前用户在所述预设的时间周期内发生所述用户意图的次数与所述每个用户意图在预设的时间周期内发生的次数的最大值的比值取双曲正切而生成。

在本发明实施例中,所述训练模块304具体可以包括如下子模块:

训练子模块,用于根据所述用户历史行为数据,对时间特征项哈希函数、类别特征项哈希函数和/或时效-累积特征项哈希函数进行模型训练,以获得所述各个特征项的权重值。

在本发明实施例中,所述装置还可以包括如下模块:

识别模块,用于识别所述概率分布中的最大概率值对应的用户意图为目标用户意图。

对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本发明实施例还提供一种电子,包括处理器;以及,

存储器,用于存储上述处理器的可执行指令;

其中,该处理器配置为通过执行上述可执行指令来执行上述用户意图的识别方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。

本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述用户意图的识别方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等。

本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。

本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。

以上对本发明所提供的一种用户意图的识别方法、一种用户意图的识别装置、一种电子设备和一种存储介质,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1