CN111259229A - 一种问题推荐方法及装置 - Google Patents
一种问题推荐方法及装置 Download PDFInfo
- Publication number
- CN111259229A CN111259229A CN201811459854.0A CN201811459854A CN111259229A CN 111259229 A CN111259229 A CN 111259229A CN 201811459854 A CN201811459854 A CN 201811459854A CN 111259229 A CN111259229 A CN 111259229A
- Authority
- CN
- China
- Prior art keywords
- candidate
- training
- question
- request
- historical
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0281—Customer communication at a business location, e.g. providing product or service information, consulting
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Strategic Management (AREA)
- Finance (AREA)
- Game Theory and Decision Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- Marketing (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供了一种问题推荐方法及装置,其中,该方法包括:在检测到请求端发起会话请求后,基于请求端的特征信息和不同种候选问题通用的第一预测模型,确定将候选问题集合中的每种候选问题推荐给请求端的第一被接受概率;基于请求端的特征信息和候选问题集合中每种候选问题匹配的第二预测模型,确定候选问题集合中每种候选问题是否被请求端接受的第二被接受概率;根据每种候选问题对应的第一被接受概率和第二被接受概率,确定每种候选问题被请求端接受的第三被接受概率;根据每种候选问题对应的第三被接受概率,从候选问题集合中选择推荐给请求端的问题。由此可以个性化为每个请求端推荐问题,从而更好地满足不同请求端的用户的咨询需求。
Description
技术领域
本申请涉及互联网技术领域,具体而言,涉及一种问题推荐方法及装置。
背景技术
随着互联网的快速发展和普及,各类互联网应用也层出不穷,例如网上购物应用、网上打车应用等。用户在使用互联网应用时可能会遇到一些问题需要咨询客服,故这些互联网应用一般都配置有咨询功能,以便向用户提供咨询服务。
用户咨询问题时,咨询***通常会向用户推荐一些候选问题,以便用户选择所要咨询的问题。目前咨询***推荐问题的形式采用的是静态配置方式,即预先配置好可供用户选择的候选问题。但是,这种静态配置的方式很难满足不同用户的咨询需求,例如,有些用户所要咨询的问题可能未在候选问题中,使得用户还需要花费时间来查阅或收听这些候选问题,导致问题咨询的效率较低。
发明内容
有鉴于此,本申请实施例的目的在于提供一种问题推荐方法及装置,以更好地满足不同用户的咨询需求,提升问题咨询的效率。
第一方面,本申请提供一种问题推荐方法,包括:
在检测到请求端发起会话请求后,基于所述请求端的特征信息和预先训练的不同种候选问题通用的第一预测模型,确定将候选问题集合中的每种候选问题推荐给所述请求端的第一被接受概率;
基于所述请求端的特征信息和所述候选问题集合中每种候选问题匹配的预先训练的第二预测模型,确定所述候选问题集合中每种候选问题被请求端接受的第二被接受概率;
根据每种候选问题对应的第一被接受概率和第二被接受概率,确定每种候选问题被请求端接受的第三被接受概率;
根据每种候选问题对应的第三被接受概率,从所述候选问题集合中选择推荐给所述请求端的问题。
一种可能的实施方式中,所述根据每种候选问题对应的第一被接受概率和第二被接受概率,确定每种候选问题被请求端接受的第三被接受概率,包括:
针对所述候选问题集合中第i种候选问题,将所述第i种候选问题对应的第一被接受概率以及对应的第二被接受概率进行加权求和,得到所述第i种候选问题对应的第三被接受概率。
一种可能的实施方式中,所述根据每种候选问题对应的第三被接受概率,从所述候选问题集合中选择推荐给所述请求端的问题,包括:
将所述候选问题集合中第三被接受概率高于预设概率值的候选问题作为推荐给所述请求端的问题。
一种可能的实施方式中,所述根据每种候选问题对应的第三被接受概率,从所述候选问题集合中选择推荐给所述请求端的问题,包括:
将所述候选问题集合中每种候选问题按照第三被接受概率由大到小的顺序进行排列;
将所述候选问题集合中第三被接受概率排列在前k位的候选问题作为推荐给所述请求端的问题,k为正整数。
一种可能的实施方式中,所述基于所述请求端的特征信息和预先训练的不同种候选问题通用的第一预测模型,确定将候选问题集合中每一种候选问题推荐给所述请求端的第一被接受概率,包括:
对所述特征信息进行特征提取后得到特征向量;
将所述特征向量输入至预先训练的不同种候选问题通用的第一预测模型中,输出所述候选问题集合中每一种候选问题推荐给所述请求端的第一被接受概率。
一种可能的实施方式中,所述基于所述请求端的特征信息和所述候选问题集合中每种候选问题匹配的预先训练的第二预测模型,确定所述候选问题集合中每种候选问题被请求端接受的第二被接受概率,包括:
对所述特征信息进行特征提取后得到特征向量;
将从所述特征信息中提取出的特征向量输入至与所述候选问题集合中每种候选问题匹配的预先训练的第二预测模型中,输出所述候选问题集合中每种候选问题被请求端接受的第二被接受概率。
一种可能的实施方式中,所述为所述请求端推荐的问题还包括预设提示问题,所述预设提示问题用于提示所述请求端是否需要请求回应其它问题。
一种可能的实施方式中,在检测到请求端发起会话请求之前,所述方法还包括:
统计第二历史时间段内不同请求端请求回应的每种问题的总次数;
将统计出的总次数满足预设条件的问题作为候选问题,构成所述候选问题集合。
一种可能的实施方式中,当所述请求端为服务提供方终端时,所述特征信息包括以下信息中的至少一种:
所述服务提供方的人物描述信息;
所述服务提供方最近一次处理的订单的订单描述信息;
所述最近一次处理的订单的服务请求方的人物描述信息;
所述服务提供方发起所述会话请求时的订单状态信息;
所述服务提供方发起所述会话请求时所处的位置以及时间;
所述服务提供方在第一历史时间段内的订单汇总信息。
一种可能的实施方式中,所述方法还包括:
获取在第三历史时间段内的历史会话记录信息,所述历史会话记录信息中包括每个请求端每次发起会话请求时的历史特征信息、以及每个请求端每次发起会话请求时请求回应的历史问题;
提取每个历史特征信息对应的历史特征向量;
将提取的每个所述历史特征向量作为训练样本,构成第一样本训练集,其中,每个训练样本对应一个问题标签,不同问题标签用于标识不同历史特征向量分别对应的历史问题;
基于所述第一样本训练集对所述第一预测模型进行训练,直至确定所述第一预测模型训练完成。
一种可能的实施方式中,所述基于所述第一样本训练集对所述第一预测模型进行训练,直至确定所述第一预测模型训练完成,包括:
将所述第一样本训练集中预设个数的所述训练样本输入至所述第一预测模型中,针对输入的每个所述训练样本,分别输出所述候选问题集合中每一种候选问题推荐给所述请求端的第一历史被接受概率,并确定每个所述训练样本对应的所述第一历史被接受概率最高的候选问题;
通过对比每个所述训练样本对应的所述第一历史被接受概率最高的候选问题、以及每个所述训练样本对应的问题标签,确定本轮训练过程的第一损失值;
当所述第一损失值大于第一设定值时,对所述第一预测模型的模型参数进行调整,并利用调整后的所述第一预测模型进行下一轮训练过程,直至确定出的第一损失值小于或等于所述第一设定值时,确定所述第一预测模型训练完成。
一种可能的实施方式中,所述方法还包括:
针对所述候选问题集合中的每一种候选问题,生成与每一种候选问题匹配的第二预测模型,以及,生成每一种候选问题对应的第二样本训练集;
基于每一种候选问题对应的第二样本训练集,对每一种候选问题匹配的第二预测模型进行训练,直至确定每一种候选问题匹配的第二预测模型训练完成。
一种可能的实施方式中,所述生成每一种候选问题对应的第二样本训练集,包括:
针对所述候选样本集合中的第一候选问题,所述第一候选问题为所述候选样本集合中的任意一个候选问题,执行如下操作:
从所述历史会话记录信息中筛选出第一请求端的第一历史特征信息、以及第二请求端的第二历史特征信息;其中,所述第一请求端表示请求回应的历史问题为所述第一候选问题的请求端,所述第二请求端表示请求回应的历史问题不为所述第一候选问题的请求端;
提取每个第一历史特征信息对应的第一历史特征向量,以及,提取每个第二历史特征信息对应的第二历史特征向量;
将提取的每个所述第一历史特征向量作为正训练样本,构成正样本训练集,以及,将提取的每个所述第二历史特征向量作为负训练样本,构成负样本训练集;
将所述正样本训练集、以及所述负样本训练集构成所述第一候选问题对应的第二样本训练集;
其中,每个正训练样本对应一个正标签,每个负训练样本对应一个负标签,所述正标签表示所述请求端请求回应的问题为所述第一候选问题,所述负标签表示所述请求端请求回应的问题不为所述第一候选问题。
一种可能的实施方式中,所述基于每一种候选问题对应的第二样本训练集,对每一种候选问题匹配的第二预测模型进行训练,直至确定每一种候选问题匹配的第二预测模型训练完成,包括:
针对所述第一候选问题匹配的第二预测模型,执行如下训练过程:
从所述第一候选问题对应第二样本训练集中获取第一预设个数的所述正训练样本、以及第二预设个数的所述负训练样本;
将所述第一预设个数的所述正训练样本、以及所述第二预设个数的所述负训练样本输入至所述第一候选问题匹配的第二预测模型中,输出每个所述正训练样本对应的分类结果、以及每个所述负训练样本对应的分类结果;其中,所述分类结果表示所述请求端请求回应的问题是否为所述第一候选问题;
通过对比每个所述正训练样本对应的分类结果和所述正标签、以及对比每个所述负训练样本对应的分类结果和所述负标签,确定本轮训练过程的第二损失值;
当所述第二损失值大于第二设定值时,对所述第一候选问题匹配的第二预测模型的模型参数进行调整,并利用调整后的所述第一候选问题匹配的第二预测模型进行下一轮训练过程,直至确定出的第二损失值小于或等于所述第二设定值时,确定所述第一候选问题匹配的第二预测模型训练完成。
第二方面,本申请提供一种问题推荐装置,包括:
第一预测模块,用于在检测到请求端发起会话请求后,基于所述请求端的特征信息和预先训练的不同种候选问题通用的第一预测模型,确定将候选问题集合中的每种候选问题推荐给所述请求端的第一被接受概率;
第二预测模块,用于基于所述请求端的特征信息和所述候选问题集合中每种候选问题匹配的预先训练的第二预测模型,确定所述候选问题集合中每种候选问题被请求端接受的第二被接受概率;
确定模块,用于根据每种候选问题对应的第一被接受概率和第二被接受概率,确定每种候选问题被请求端接受的第三被接受概率;
筛选模块,用于根据每种候选问题对应的第三被接受概率,从所述候选问题集合中选择推荐给所述请求端的问题。
一种可能的设计中,所述确定模块,在根据每种候选问题对应的第一被接受概率和第二被接受概率,确定每种候选问题被请求端接受的第三被接受概率时,具体用于:
针对所述候选问题集合中第i种候选问题,将所述第i种候选问题对应的第一被接受概率以及对应的第二被接受概率进行加权求和,得到所述第i种候选问题对应的第三被接受概率。
一种可能的设计中,所述筛选模块,在根据每种候选问题对应的第三被接受概率,从所述候选问题集合中选择推荐给所述请求端的问题时,具体用于:
将所述候选问题集合中第三被接受概率高于预设概率值的候选问题作为推荐给所述请求端的问题。
一种可能的设计中,所述筛选模块,在根据每种候选问题对应的第三被接受概率,从所述候选问题集合中选择推荐给所述请求端的问题时,具体用于:
将所述候选问题集合中每种候选问题按照第三被接受概率由大到小的顺序进行排列;
将所述候选问题集合中第三被接受概率排列在前k位的候选问题作为推荐给所述请求端的问题,k为正整数。
一种可能的设计中,所述第一预测模块,在基于所述请求端的特征信息和预先训练的不同种候选问题通用的第一预测模型,确定将候选问题集合中每一种候选问题推荐给所述请求端的第一被接受概率时,具体用于:
对所述特征信息进行特征提取后得到特征向量;
将所述特征向量输入至预先训练的不同种候选问题通用的第一预测模型中,输出所述候选问题集合中每一种候选问题推荐给所述请求端的第一被接受概率。
一种可能的设计中,所述第二预测模块,在基于所述请求端的特征信息和所述候选问题集合中每种候选问题匹配的预先训练的第二预测模型,确定所述候选问题集合中每种候选问题是否被请求端接受的第二被接受概率时,具体用于:
对所述特征信息进行特征提取后得到特征向量;
将从所述特征信息中提取出的特征向量输入至与所述候选问题集合中每种候选问题匹配的预先训练的第二预测模型中,输出所述候选问题集合中每种候选问题被请求端接受的第二被接受概率。
一种可能的设计中,所述为所述请求端推荐的问题还包括预设提示问题,所述预设提示问题用于提示所述请求端是否需要请求回应其它问题。
一种可能的设计中,所述确定模块,还用于:
统计第二历史时间段内不同请求端请求回应的每种问题的总次数;将统计出的总次数满足预设条件的问题作为候选问题,构成所述候选问题集合。
一种可能的设计中,当所述请求端为服务提供方终端时,所述特征信息包括以下信息中的至少一种:
所述服务提供方的人物描述信息;
所述服务提供方最近一次处理的订单的订单描述信息;
所述最近一次处理的订单的服务请求方的人物描述信息;
所述服务提供方发起所述会话请求时的订单状态信息;
所述服务提供方发起所述会话请求时所处的位置以及时间;
所述服务提供方在第一历史时间段内的订单汇总信息。
一种可能的设计中,所述装置还包括:
第一模型训练模块,用于获取在第三历史时间段内的历史会话记录信息,所述历史会话记录信息中包括每个请求端每次发起会话请求时的历史特征信息、以及每个请求端每次发起会话请求时请求回应的历史问题;
提取每个历史特征信息对应的历史特征向量;
将提取的每个所述历史特征向量作为训练样本,构成第一样本训练集,其中,每个训练样本对应一个问题标签,不同问题标签用于标识不同历史特征向量分别对应的历史问题;
基于所述第一样本训练集对所述第一预测模型进行训练,直至确定所述第一预测模型训练完成。
一种可能的设计中,所述第一模型训练模块,在基于所述第一样本训练集对所述第一预测模型进行训练,直至确定所述第一预测模型训练完成时,具体用于:
将所述第一样本训练集中预设个数的所述训练样本输入至所述第一预测模型中,针对输入的每个所述训练样本,分别输出所述候选问题集合中每一种候选问题推荐给所述请求端的第一历史被接受概率,并确定每个所述训练样本对应的所述第一历史被接受概率最高的候选问题;
通过对比每个所述训练样本对应的所述第一历史被接受概率最高的候选问题、以及每个所述训练样本对应的问题标签,确定本轮训练过程的第一损失值;
当所述第一损失值大于第一设定值时,对所述第一预测模型的模型参数进行调整,并利用调整后的所述第一预测模型进行下一轮训练过程,直至确定出的第一损失值小于或等于所述第一设定值时,确定所述第一预测模型训练完成。
一种可能的设计中,所述装置还包括:
第二模型训练模块,用于针对所述候选问题集合中的每一种候选问题,生成与每一种候选问题匹配的第二预测模型,以及,生成每一种候选问题对应的第二样本训练集;
基于每一种候选问题对应的第二样本训练集,对每一种候选问题匹配的第二预测模型进行训练,直至确定每一种候选问题匹配的第二预测模型训练完成。
一种可能的设计中,所述第二模型训练模块,在生成每一种候选问题对应的第二样本训练集时,具体用于:
针对所述候选样本集合中的第一候选问题,所述第一候选问题为所述候选样本集合中的任意一个候选问题,执行如下操作:
从所述历史会话记录信息中筛选出第一请求端的第一历史特征信息、以及第二请求端的第二历史特征信息;其中,所述第一请求端表示请求回应的历史问题为所述第一候选问题的请求端,所述第二请求端表示请求回应的历史问题不为所述第一候选问题的请求端;
提取每个第一历史特征信息对应的第一历史特征向量,以及,提取每个第二历史特征信息对应的第二历史特征向量;
将提取的每个所述第一历史特征向量作为正训练样本,构成正样本训练集,以及,将提取的每个所述第二历史特征向量作为负训练样本,构成负样本训练集;
将所述正样本训练集、以及所述负样本训练集构成所述第一候选问题对应的第二样本训练集;
其中,每个正训练样本对应一个正标签,每个负训练样本对应一个负标签,所述正标签表示所述请求端请求回应的问题为所述第一候选问题,所述负标签表示所述请求端请求回应的问题不为所述第一候选问题。
一种可能的设计中,所述第二模型训练模块,在基于每一种候选问题对应的第二样本训练集,对每一种候选问题匹配的第二预测模型进行训练,直至确定每一种候选问题匹配的第二预测模型训练完成时,具体用于:
针对所述第一候选问题匹配的第二预测模型,执行如下训练过程:
从所述第一候选问题对应第二样本训练集中获取第一预设个数的所述正训练样本、以及第二预设个数的所述负训练样本;
将所述第一预设个数的所述正训练样本、以及所述第二预设个数的所述负训练样本输入至所述第一候选问题匹配的第二预测模型中,输出每个所述正训练样本对应的分类结果、以及每个所述负训练样本对应的分类结果;其中,所述分类结果表示所述请求端请求回应的问题是否为所述第一候选问题;
通过对比每个所述正训练样本对应的分类结果和所述正标签、以及对比每个所述负训练样本对应的分类结果和所述负标签,确定本轮训练过程的第二损失值;
当所述第二损失值大于第二设定值时,对所述第一候选问题匹配的第二预测模型的模型参数进行调整,并利用调整后的所述第一候选问题匹配的第二预测模型进行下一轮训练过程,直至确定出的第二损失值小于或等于所述第二设定值时,确定所述第一候选问题匹配的第二预测模型训练完成。
其中,上述各模块的功能可以参照上述第一方面中所涉及的说明,这里不再展开说明。
第三方面,本申请实施例还提供一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行上述第一方面所述的问题推荐方法的步骤。
第四方面,本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述第一方面所述的问题推荐方法的步骤。
本申请实施例中,服务器可以在请求端发起会话请求后,获取请求端的特征信息,然后可以分别利用不同种候选问题通用的第一预测模型、以及与候选问题集合中每种候选问题匹配的第二预测模型,来分别预测出候选问题集合中每个候选问题推荐给请求端的第一被接受概率、以及每种候选问题被请求端接受的第二被接受概率。进一步地,可以根据每种候选问题对应的第一被接受概率和第二被接受概率,确定每种候选问题被请求端接受的第三被接受概率,然后根据每种候选问题对应的第三被接受概率,确定最终向用户推荐的问题。相比预先配置好候选问题的方案,上述方案能够基于每个请求端的特征信息、以及两类预测模型,从候选问题集合中筛选出请求端最有可能接受的问题并推荐给请求端,这种方式能够有针对性的进行问题推荐,满足不同请求端的个性化的咨询需求,提升问题咨询的效率。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请的一些实施例的服务***100的框图;
图2示出了本申请的一些实施例的电子设备200的示例性硬件和软件组件的示意图;
图3示出了本申请实施例提供的一种问题推荐方法的流程示意图;
图4示出了本申请实施例提供的DNN模型的示例性说明图;
图5示出了本申请实施例提供的具体应用场景下问题推荐方法的流程示意图;
图6示出了本申请实施例提供的训练第一预测模型的流程示意图;
图7示出了本申请实施例提供的生成第二样本训练集的流程示意图;
图8示出了本申请实施例提供的训练第二预测模型的流程示意图;
图9示出了本申请实施例提供的一种问题推荐装置的结构示意图;
图10示出了本申请实施例提供的电子设备100的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,应当理解,本申请中附图仅起到说明和描述的目的,并不用于限定本申请的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本申请中使用的流程图示出了根据本申请的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本申请内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
另外,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了使得本领域技术人员能够使用本申请内容,结合特定应用场景“用户向服务***咨询问题”,给出以下实施方式。对于本领域技术人员来说,在不脱离本申请的精神和范围的情况下,可以将这里定义的一般原理应用于其他实施例和应用场景。虽然本申请主要围绕打车服务***进行描述,但是应该理解,这仅是一个示例性实施例。本申请可以应用于任何其他交通运输类型的服务***。例如,本申请可以应用于不同的运输***环境,包括陆地,海洋,或航空等,或其任意组合。运输***的交通工具可以包括出租车、私家车、顺风车、公共汽车、火车、子弹头列车、高速铁路、地铁、船只、飞机、宇宙飞船、热气球、或无人驾驶车辆等,或其任意组合。本申请还可以包括能够提供咨询服务的任何服务***,例如,网上购物平台中向用户提供咨询服务的***、网上订餐平台中向用户提供咨询服务的***。并且,本申请中咨询服务的提供方式包括但不限于以下两类:一类是在线咨询,即通过网络在线咨询问题,另一类是热线咨询,即通过拨打客服热线咨询问题。本申请的***或方法的应用可以包括网页、浏览器的插件、客户端终端、定制***、内部分析***、或人工智能机器人等,或其任意组合。
需要说明的是,本申请实施例中将会用到术语“包括”,用于指出其后所声明的特征的存在,但并不排除增加其它的特征。
本申请中的术语“乘客”、“请求方”、“服务请求方”可互换使用,以指代可以请求或订购服务的个人、实体或工具。本申请中的术语“司机”、“提供方”、“服务提供方”可互换使用,以指代可以提供服务的个人、实体或工具。本申请中的术语“用户”可以指代请求服务、订购服务、提供服务或促成服务的提供的个人、实体或工具。本申请实施例中,用户例如可以是作为服务请求方的乘客、作为服务提供方的司机等,或其任意组合。
本申请的一个方面涉及一种服务***。该***在处理咨询服务时,可以根据不同请求端的特征信息、以及通过深度学习算法预先训练好的预测模型,来对每个请求端即将请求回应的问题进行预测,并基于每个请求端对应的预测结果来个性化地为每个请求端推荐相匹配的问题。
值得注意的是,在本申请提出之前,目前咨询***多采用静态配置的方式来预先配置好候选问题,当有请求端咨询问题时,咨询***会将预先配置好的候选问题推荐给请求端,这种推荐方式很难适应不同用户的咨询需求,很容易出现用户需要花费时间来查看或收听咨询***推荐的问题,但是却找不到想要咨询的问题的情况,使得问题咨询效率较低,且用户体验较差。然而,本申请提供的问题推荐方法可以根据不同请求端的特征信息,通过深度学习的方式来个性化为每个请求端推荐问题,通过这种个性化推荐的方式,可以更好地满足不同请求端的用户的咨询需求,减少用户在咨询问题时的等待时长,提高咨询问题的效率,进一步提升用户体验。
图1是本申请一些实施例的服务***100的框图。例如,服务***100可以是用于诸如出租车、代驾服务、快车、拼车、公共汽车服务、驾驶员租赁、或班车服务之类的运输服务、或其任意组合的在线运输服务平台。服务***100可以包括服务器110、网络120、服务请求方终端130、服务提供方终端140和数据库150中的一种或多种,服务器110中可以包括执行指令操作的处理器。
在一些实施例中,服务器110可以是单个服务器,也可以是服务器组。服务器组可以是集中式的,也可以是分布式的(例如,服务器110可以是分布式***)。在一些实施例中,服务器110相对于终端,可以是本地的、也可以是远程的。例如,服务器110可以经由网络120访问存储在服务请求方终端130、服务提供方终端140、或数据库150、或其任意组合中的信息和/或数据。作为另一示例,服务器110可以直接连接到服务请求方终端130、服务提供方终端140和数据库150中至少一个,以访问存储的信息和/或数据。在一些实施例中,服务器110可以在云平台上实现;仅作为示例,云平台可以包括私有云、公有云、混合云、社区云(community cloud)、分布式云、跨云(inter-cloud)、多云(multi-cloud)等,或者它们的任意组合。在一些实施例中,服务器110可以在具有本申请中图2所示的一个或多个组件的电子设备200上实现。
在一些实施例中,电子设备200可以包括处理器220。处理器220可以处理与服务请求(本申请中服务请求包括请求端在咨询问题时发送的会话请求、以及问题咨询请求等)有关的信息和/或数据,以执行本申请中描述的一个或多个功能。例如,处理器220可以基于从服务请求方终端130获得的会话请求,与服务请求方终端130建立会话连接等。在一些实施例中,处理器220可以包括一个或多个处理核(例如,单核处理器(S)或多核处理器(S))。仅作为举例,处理器220可以包括中央处理单元(Central Processing Unit,CPU)、专用集成电路(Application Specific Integrated Circuit,ASIC)、专用指令集处理器(Application Specific Instruction-set Processor,ASIP)、图形处理单元(GraphicsProcessing Unit,GPU)、物理处理单元(Physics Processing Unit,PPU)、数字信号处理器(Digital Signal Processor,DSP)、现场可编程门阵列(Field Programmable GateArray,FPGA)、可编程逻辑器件(Programmable Logic Device,PLD)、控制器、微控制器单元、简化指令集计算机(Reduced Instruction Set Computing,RISC)、或微处理器等,或其任意组合。
网络120可以用于信息和/或数据的交换。在一些实施例中,服务***100中的一个或多个组件(例如,服务器110,服务请求方终端130,服务提供方终端140和数据库150)可以向其他组件发送信息和/或数据。例如,服务器110可以经由网络120从服务请求方终端130获取服务请求。在一些实施例中,网络120可以是任何类型的有线或者无线网络,或者是他们的结合。仅作为示例,网络130可以包括有线网络、无线网络、光纤网络、远程通信网络、内联网、因特网、局域网(Local Area Network,LAN)、广域网(Wide Area Network,WAN)、无线局域网(Wireless Local Area Networks,WLAN)、城域网(Metropolitan Area Network,MAN)、广域网(Wide Area Network,WAN)、公共电话交换网(Public Switched TelephoneNetwork,PSTN)、蓝牙网络、ZigBee网络、或近场通信(Near Field Communication,NFC)网络等,或其任意组合。在一些实施例中,网络120可以包括一个或多个网络接入点。例如,网络120可以包括有线或无线网络接入点,例如基站和/或网络交换节点,服务***100的一个或多个组件可以通过该接入点连接到网络120以交换数据和/或信息。
在一些实施例中,服务请求方终端130的用户可以是服务实际需求者,也可以是除服务实际需求者之外的其他人。例如,服务请求方终端130的用户A可以使用服务请求方终端130来为服务实际需求者B发起服务请求(比如,用户A可以为自己的朋友B叫车),或者从服务器110接收服务信息或指令等。在一些实施例中,服务提供方终端140的用户可以是服务实际提供者,也可以是除服务实际提供者之外的其他人。例如,服务提供方终端140的用户C可以使用服务提供方终端140接收由服务实际提供者D提供服务的服务请求(比如用户C可以为自己雇用的司机D接单),和/或来自服务器110的信息或指令。在一些实施例中,“服务请求方”和“服务请求方终端”可以互换使用,“服务提供方”和“服务提供方终端”可以互换使用。
在一些实施例中,服务请求方终端130可以包括移动设备、平板计算机、膝上型计算机、或机动车辆中的内置设备等,或其任意组合。在一些实施例中,移动设备可以包括智能家居设备、可穿戴设备、智能移动设备、虚拟现实设备、或增强现实设备等,或其任意组合。在一些实施例中,智能家居设备可以包括智能照明设备、智能电器设备的控制设备、智能监控设备、智能电视、智能摄像机、或对讲机等,或其任意组合。在一些实施例中,可穿戴设备可包括智能手环、智能鞋带、智能玻璃、智能头盔、智能手表、智能服装、智能背包、智能配件等、或其任何组合。在一些实施例中,智能移动设备可以包括智能手机、个人数字助理(Personal Digital Assistant,PDA)、游戏设备、导航设备、或销售点(point of sale,POS)设备等,或其任意组合。在一些实施例中,虚拟现实设备和/或增强现实设备可以包括虚拟现实头盔、虚拟现实玻璃、虚拟现实贴片、增强现实头盔、增强现实玻璃、或增强现实贴片等,或其任意组合。例如,虚拟现实设备和/或增强现实设备可以包括各种虚拟现实产品等。在一些实施例中,机动车辆中的内置设备可以包括车载计算机、车载电视等。在一些实施例中,服务请求方终端130可以是具有用于定位服务请求方和/或服务请求方终端的位置的定位技术的设备。
在一些实施例中,服务提供方终端140可以是与服务请求方终端130类似或相同的设备。在一些实施例中,服务提供方终端140可以是具有定位技术的设备,用于定位服务提供方和/或服务提供方终端的位置。在一些实施例中,服务请求方终端130和/或服务提供方终端140可以与其他定位设备通信以确定服务请求方、服务请求方终端130、服务提供方、或服务提供方终端140、或其任意组合的位置。在一些实施例中,服务请求方终端130和/或服务提供方终端140可以将定位信息发送给服务器110。
数据库150可以存储数据和/或指令。在一些实施例中,数据库150可以存储从服务请求方终端130和/或服务提供方终端140获得的数据。在一些实施例中,数据库150可以存储在本申请中描述的示例性方法的数据和/或指令。在一些实施例中,数据库150可以包括大容量存储器、可移动存储器、易失性读写存储器、或只读存储器(Read-Only Memory,ROM)等,或其任意组合。作为举例,大容量存储器可以包括磁盘、光盘、固态驱动器等;可移动存储器可包括闪存驱动器、软盘、光盘、存储卡、zip磁盘、磁带等;易失性读写存储器可以包括随机存取存储器(Random Access Memory,RAM);RAM可以包括动态RAM(Dynamic RandomAccess Memory,DRAM),双倍数据速率同步动态RAM(Double Date-Rate Synchronous RAM,DDR SDRAM);静态RAM(Static Random-Access Memory,SRAM),晶闸管RAM(Thyristor-Based Random Access Memory,T-RAM)和零电容器RAM(Zero-RAM)等。作为举例,ROM可以包括掩模ROM(Mask Read-Only Memory,MROM)、可编程ROM(Programmable Read-OnlyMemory,PROM)、可擦除可编程ROM(Programmable Erasable Read-only Memory,PEROM)、电可擦除可编程ROM(Electrically Erasable Programmable read only memory,EEPROM)、光盘ROM(CD-ROM)、以及数字通用磁盘ROM等。在一些实施例中,数据库150可以在云平台上实现。仅作为示例,云平台可以包括私有云、公有云、混合云、社区云、分布式云、跨云、多云或者其它类似的等,或其任意组合。
在一些实施例中,数据库150可以连接到网络120以与服务***100(例如,服务器110,服务请求方终端130,服务提供方终端140等)中的一个或多个组件通信。服务***100中的一个或多个组件可以经由网络120访问存储在数据库150中的数据或指令。在一些实施例中,数据库150可以直接连接到服务***100中的一个或多个组件(例如,服务器110,服务请求方终端130,服务提供方终端140等);或者,在一些实施例中,数据库150也可以是服务器110的一部分。
在一些实施例中,服务***100中的一个或多个组件(例如,服务器110,服务请求方终端130,服务提供方终端140等)可以具有访问数据库150的权限。在一些实施例中,当满足一定条件时,服务***100中的一个或多个组件可以读取和/或修改与服务请求方、服务提供方、或公众、或其任意组合有关的信息。例如,服务器110可以在接收服务请求之后读取和/或修改一个或多个用户的信息。作为另一示例,服务提供方终端140可以在从服务请求方终端130接收服务请求时访问与服务请求方有关的信息,但是服务提供方终端140可以不修改服务请求方的相关信息。
在一些实施例中,可以通过请求服务来实现服务***100中的一个或多个组件的信息交换。服务请求的对象可以是任何产品。在一些实施方案中,产品可以是有形产品或非物质产品。有形产品可包括食品、药品、商品、化学产品、电器、服装、汽车、房屋、或奢侈品等,或其任意组合。非物质产品可以包括服务产品、金融产品、知识产品、或互联网产品等,或其任意组合。互联网产品可以包括单独的主机产品、网络产品、移动互联网产品、商业主机产品、或嵌入式产品等,或其任意组合。互联网产品可以用在移动终端的软件、程序、或***等,或者它们的任意组合中。移动终端可以包括平板电脑、笔记本电脑、移动电话、个人数字助理(Personal Digital Assistant,PDA)、智能手表、销售点(Point of sales,POS)设备、车载电脑、车载电视、或可穿戴设备等,或其任意组合。例如,互联网产品可以是计算机或移动电话中使用的任何软件和/或应用程序。软件和/或应用程序可以涉及社交、购物、运输、娱乐时间、学习、或投资等,或其任意组合。在一些实施例中,与运输有关的软件和/或应用程序可以包括旅行软件和/或应用程序、车辆调度软件和/或应用程序、绘图软件和/或应用程序等。在车辆调度软件和/或应用程序中,车辆可包括马、马车、人力车(例如,独轮车、自行车、三轮车等)、汽车(例如,出租车、公共汽车、私家车等)、火车、地铁、船只、飞机(例如,飞机、直升机、航天飞机、火箭、热气球等)等,或其任意组合。
图2示出根据本申请的一些实施例的可以实现本申请思想的服务器110、服务请求方终端130、服务提供方终端140的电子设备200的示例性硬件和软件组件的示意图。例如,处理器220可以用于电子设备200上,并且用于执行本申请中的功能。
电子设备200可以是通用计算机或特殊用途的计算机,两者都可以用于实现本申请的问题推荐方法。本申请尽管仅示出了一个计算机,但是为了方便起见,可以在多个类似平台上以分布式方式实现本申请描述的功能,以均衡处理负载。
例如,电子设备200可以包括连接到网络的网络端口210、用于执行程序指令的一个或多个处理器220、通信总线230、和不同形式的存储介质240,例如,磁盘、ROM、或RAM,或其任意组合。示例性地,计算机平台还可以包括存储在ROM、RAM、或其他类型的非暂时性存储介质、或其任意组合中的程序指令。根据这些程序指令可以实现本申请的方法。电子设备200还包括计算机与其他输入输出设备(例如键盘、显示屏)之间的输入/输出(Input/Output,I/O)接口250。
为了便于说明,在电子设备200中仅描述了一个处理器。然而,应当注意,本申请中的电子设备200还可以包括多个处理器,因此本申请中描述的一个处理器执行的步骤也可以由多个处理器联合执行或单独执行。例如,若电子设备200的处理器执行步骤A和步骤B,则应该理解,步骤A和步骤B也可以由两个不同的处理器共同执行或者在一个处理器中单独执行。例如,第一处理器执行步骤A,第二处理器执行步骤B,或者第一处理器和第二处理器共同执行步骤A和B。
结合上述对服务***以及服务***中各电子设备的描述,下面结合具体实施例,对本申请提供的问题推荐方法进行详细说明。
参照图3所示,为本申请实施例提供的一种问题推荐方法的流程示意图,该问题推荐方法可以由图1所述的服务***中的服务器来执行,具体执行过程包括如下步骤:
步骤301、在检测到请求端发起会话请求后,基于请求端的特征信息和预先训练的不同种候选问题通用的第一预测模型,确定将候选问题集合中的每种候选问题推荐给请求端的第一被接受概率。
步骤302、基于请求端的特征信息和候选问题集合中每种候选问题匹配的预先训练的第二预测模型,确定候选问题集合中每种候选问题被请求端接受的第二被接受概率。
步骤303、根据每种候选问题对应的第一被接受概率和第二被接受概率,确定每种候选问题被请求端接受的第三被接受概率。
步骤304、根据每种候选问题对应的第三被接受概率,从候选问题集合中选择推荐给请求端的问题。
本申请实施例中,请求端既可以是服务请求方终端,也可以是服务提供方终端。其中,在不同的应用场景下,服务请求方和服务提供方也有所区别,例如,在打车服务***中,服务请求方例如为乘客,服务提供方例如为司机。在网上购物服务***中,服务请求方例如为购买商品的买家,服务提供方例如为售卖商品的卖家。本申请对此并不限定。
本申请的一实施例中,服务器可以在检测到请求端发起会话请求之后,获取请求端的特征信息。其中,会话请求用于请求与服务器之间建立会话,以便进行问题咨询。例如,请求端的使用者,即用户可以通过触发请求端中在线咨询功能的触发控件来发起会话请求,或者,用户也可以通过触发请求端中热线咨询功能的触发控件,进而拨打热线电话来发起会话请求。
本申请的一实施例中,当请求端为服务提供方终端时,请求端的特征信息例如可以包括但不限于以下信息中的至少一种:
(1)服务提供方的人物描述信息。
一示例中,当服务提供方为司机时,服务提供方的人物描述信息例如可以包括以下信息中的一种或多种:司机年龄,性别,注册时间,预设时间段内的出车时间段、常用出发地点、出车时长,以及预设时间段内的收入流水平均值、历史被投诉情况、历史投诉情况、订单支付情况等。
(2)服务提供方最近一次处理的订单的订单描述信息。
一示例中,服务提供方最近一次处理的订单的订单描述信息例如可以包括以下信息中的一种或多种:司机最近一笔订单的金额、运行时长、接驾时长、支付状态、订单是否有附加费,费用是否异常、订单开始时间、结束时间等。
(3)最近一次处理的订单的服务请求方的人物描述信息。
一示例中,最近一次处理的订单的服务请求方的人物描述信息例如可以包括以下信息中的一种或多种:乘客的年龄,性别,职业,预设时间段内的打车次数、常用出发地点和目的地点、打车时段、打车费用最大值,打车费用平均值、历史被投诉情况、账单支付情况等。
(4)服务提供方发起会话请求时的订单状态信息。
一示例中,服务提供方发起会话请求时的订单状态信息例如可以包括以下信息中的一种或多种:司机是否在等待分配订单、司机是否已经受理订单、司机已经受理订单的时长、上次结束订单距离发起会话请求的时长、司机是否当天第一次受理订单等。
(5)服务提供方发起会话请求时所处的位置以及时间。
一示例中,服务提供方发起会话请求时所处的位置以及时间例如可以包括司机拨打热线电话或者在线咨询时所处的地理位置、以及对应的时间点。
(6)服务提供方在第一历史时间段内的订单汇总信息。
一示例中,服务提供方在第一历史时间段内的订单汇总信息例如包括以下信息中的一种或多种:第一历史时间段内受理订单总量、受理订单总时长、总收入、实际到账收入、未收到的支付金额、被投诉量、被投诉问题分布、投诉量、以及投诉问题集合等。
上述第一历史时间段可以理解为距离当前时间之前的预设时间段。上述预设时间段可以根据实际需求来配置,例如可以为一周或一个月等。
结合上述示例中给出的特征信息可以看出,请求端的特征信息分为三类:静态特征、动态特征、以及统计特征。一种可能的实施方式中,静态特征可以预先存储在图1所示的服务***的数据库中,动态特征可以由服务器通过图1所示的服务***中的网络从请求端或其它设备处获取,统计特征可以由服务器基于服务***的数据库中记录的数据来统计得到。
当然,上述请求端的特征信息也可以为服务请求方终端的特征信息,关于服务请求方终端的特征信息包含的内容以及获取方式、与服务提供方终端的特征信息包含的内容以及获取方式都是基于同一技术构思,具体内容在此不再展开说明。
本申请实施例中,服务器在执行步骤301时,在基于请求端的特征信息和预先训练的不同种候选问题通用的第一预测模型,确定将候选问题集合中每一种候选问题推荐给请求端的第一被接受概率的过程中,可以首先对特征信息进行特征提取后得到特征向量。由于特征信息中包含了不同类型的数据,为便于识别,可以对特征信息进行预处理,将每一类数据数字化表示,以便将特征信息转换为多维度的特征向量,每个维度可以表示特征信息中的一类数据。一示例中,对于特征信息中包括的司机的年龄可以转换为18至60这类数值表示,发起会话请求时的时间点例如可以由“2018-01-01 08:01:30”表示等。
进一步地,可以将提取出的特征向量输入至预先训练的不同种候选问题通用的第一预测模型中,输出候选问题集合中每一种候选问题推荐给请求端的第一被接受概率。这里,第一被接受概率也可以理解为候选问题是否为请求端想要咨询的问题的概率。
其中,第一预测模型例如可以为深度神经网络(Deep Neural Networks,DNN)模型。参照图4所示,为本申请实施例对DNN模型的示例性说明,该DNN模型中包括输入层(input layer)、隐藏层(hidden layer)、输出层(output layer),其中:输入层即DNN模型的第一层,输入层可以包括多个输入节点,例如,当提取出的特征向量包括200维特征时,输入节点可以为200个;输出层即DNN模型的最后一层,输出层包括的输出节点的个数取决于候选问题集合中包括的问题的种类,例如,当候选问题集合中包括10种候选问题时,那么输出层可以包括10个输出节点;隐藏层位于输入层和输出层之间,隐藏层可以有多层,图4中仅简单列举了其中一层隐藏层,隐藏层越多、每个隐藏层包含的节点越多,第一预测模型的表达能力越强。本申请实施例中,关于第一训练模型的训练过程将在下文中详细说明,这里暂不介绍。
其中,候选问题集合可以基于之前记录的各个请求端在会话过程中请求回应的问题来得到。一种可能的实施方式中,可以统计第二历史时间段内不同请求端请求回应的每种问题的总次数,之后将统计出的总次数满足预设条件的问题作为候选问题,构成候选问题集合。例如,将统计出的总次数超出预设阈值的各个问题作为候选问题,或者,将每种问题对应的总次数按照从大到小的顺序排列,将总次数排列在前M个的各个问题作为候选问题,其中,M为正整数。
本申请实施例中,为了提高问题推荐预测的准确性,还可以执行步骤302,将请求端的特征信息分别输入到与候选问题集合中每种候选问题匹配的预先训练的第二预测模型,以预测出候选问题集合中每种候选问题被请求端接受的第二被接受概率。其中,候选问题集合中每一个候选问题均与一个第二预测模型匹配,每个第二预测模型用于预测请求端请求回应的问题是否为相匹配的候选问题。
一种可能的实施方式中,可以先将从特征信息中提取出的特征向量输入至与每种候选问题匹配的预先训练的第二预测模型中,针对每种候选问题匹配的第二预测模型中可以输出用于指示请求端请求回应的问题是否为相匹配的候选问题的预测结果。其中,预测结果包括请求端请求回应的问题是相匹配的候选问题的预测概率,也可以理解为本申请中所述的候选问题被请求端接受的第二被接受概率。预测结果中还包括请求端请求回应的问题不是相匹配的候选问题的预测概率,也可以理解为候选问题不被请求端接受的不被接受概率。
本申请的一实施例中,第二预测模型例如可以采用梯度提升决策树(GradientBoosting Decision Tree,GBDT),GBDT可以理解为是一种迭代的决策树算法,该算法由多棵决策树组成,所有树的分类结果累加起来可以得到最终的分类结果。本申请实施例中,最终的分类结果是一个二分类的结果,即输出两个预测概率,一个预测概率为上述候选问题被请求端接受的第二被接受概率,另一个预测概率为上述候选问题不被请求端接受的不被接受概率。本申请实施例中,由于每一个候选问题与一个第二预测模型匹配,故在每个第二预测模型投入使用之前,都可以基于每个候选问题对应的训练样本集对第二预测模型进行训练,关于训练过程将在下文中进行详细说明,这里暂不说明。
本申请实施例中,在利用上述第一预测模型和上述第二预测模型,预测出每种候选问题对应的第一被接受概率和第二被接受概率之后,可以根据每种候选问题对应的第一被接受概率和第二被接受概率,确定每种候选问题被请求端接受的第三被接受概率,进而根据每种候选问题对应的第三被接受概率,从候选问题集合中选择推荐给请求端的问题。
一种可能的实施方式中,根据每种候选问题对应的第一被接受概率和第二被接受概率,确定每种候选问题被请求端接受的第三被接受概率时,针对候选问题集合中第i种候选问题,可以将第i种候选问题对应的第一被接受概率以及对应的第二被接受概率进行加权求和,得到第i种候选问题对应的第三被接受概率。
进一步地,在根据每种候选问题对应的第三被接受概率,从候选问题集合中选择推荐给请求端的问题时,可以采用如下至少一种实施方式:
一种可能的实施方式中,可以将候选问题集合中第三被接受概率高于预设概率值的候选问题作为推荐给请求端的问题。
另一种可能的实施方式中,可以将候选问题集合中每种候选问题按照第三被接受概率由大到小的顺序进行排列,将候选问题集合中第三被接受概率排列在前k位的候选问题作为推荐给请求端的问题,k为正整数。
当然,实际应用中,上述两种实施方式也可以相结合,例如可以将第三被接受概率高于预设概率值、且排列在前k位的候选问题作为推荐给请求端的问题。
采用上述两种实施方式,通过结合两类预测模型预测出的第一被接受概率和第二被接受概率来确定最终推荐给请求端的问题,可以使得推荐给请求端的问题被接受的可信度较高,预测较为准确。
又一种可能的实施方式中,为请求端推荐的问题还可以包括预设提示问题,预设提示问题可以用于提示请求端是否需要请求回应其它问题,以便能够满足请求端额外的咨询需求。
另外,由于考虑到请求端咨询问题的过程中,大部分都是想咨询一个问题,所以推荐给请求端的第一个问题的准确率直接影响着请求端咨询问题的效率、以及请求端的用户体验。本申请实施例中,可以将第三被接受概率最高的候选问题,放在服务器所推荐的问题的首位,之后,可以将预设提示问题置于服务器所推荐的问题的第二位。
下面参照图5所示,结合具体应用场景对本申请实施例上述问题推荐的过程进行示例性说明。
参照图5所示,假设应用场景为请求端通过拨打热线电话的方式向服务器发起会话请求,以咨询问题,假设请求端为司机使用的终端、候选问题集合包括10种类型的候选问题。那么,服务器可以执行如下步骤:
第一步、检测到司机发起会话请求。
第二步、获取司机的特征信息,从特征信息中提取出特征向量。
第三步、将特征向量输入至第一预测模型(即图5所示的DNN模型)中,输出得到10种候选问题分别对应的被接受概率。
第四步、将特征向量输入至候选问题集合中每种候选问题匹配的第二预测模型中,输出每种候选问题被请求端接受的第二被接受概率。
第五步、根据每种候选问题对应的第一被接受概率和第二被接受概率,确定每种候选问题被请求端接受的第三被接受概率。
第六步、根据每种候选问题对应的第三被接受概率,从目标候选问题中选择被接受概率高于预设值,和/或,排列在前k位的问题,作为推荐给司机的问题。
另外,还可以将预设提示问题也作为推荐给司机的问题,排列在推荐的问题的最后位置。
例如,可以选择被接受概率高于预设值、且排列在前3位的top1至top3的候选问题,作为推荐给司机的问题。另外,还可以设置预设提示问题,用于提示司机是否需要询问除top1至top3之外的其它候选问题。
下面,结合具体实施例对本申请实施例中提出的两类预测模型的训练过程进行说明。
(一)第一预测模型
本申请实施例中,为了训练第一预测模型,首先需要生成用于训练第一预测模型的第一样本训练集。一种可能的实施方式中,可以获取在第三历史时间段内的历史会话记录信息,历史会话记录信息中包括每个请求端每次发起会话请求时的历史特征信息、以及每个请求端每次发起会话请求时请求回应的历史问题。之后,可以提取每个历史特征信息对应的历史特征向量,将提取的每个历史特征向量作为训练样本,构成第一样本训练集。其中,每个训练样本对应一个问题标签,不同问题标签用于标识不同历史特征向量分别对应的历史问题。一示例中,问题标签可以用1/2/3…这类数字来标识。
在得到第一样本训练集后,可以基于第一样本训练集对第一预测模型进行训练,直至确定第一预测模型训练完成。
参照图6所示,为本申请实施例提供的训练第一预测模型的流程示意图,包括如下步骤:
步骤601、将第一样本训练集中预设个数的训练样本输入至第一预测模型中,针对输入的每个训练样本,分别输出候选问题集合中每一种候选问题推荐给请求端的历史被接受概率。
步骤602、确定每个训练样本对应的历史被接受概率最高的候选问题。
步骤603、通过对比每个训练样本对应的历史被接受概率最高的候选问题、以及每个训练样本对应的问题标签,确定本轮训练过程的第一损失值。
具体实施中,针对每个训练样本,可以对比该训练样本对应的历史被接受概率最高的候选问题与该训练样本对应的问题标签所标识的问题是否一致,若一致,则确定对该训练样本的预测准确,若不一致,则确定对该训练样本的预测不准确。通过遍历全部的训练样本,可以计算出本轮训练过程的第一损失值,第一损失值能够反映出第一预测模型预测的准确度。
步骤604、判断本轮训练过程的第一损失值是否大于第一设定值。
若判断结果为是,则执行步骤605;若判断结果为否,则执行步骤606.
步骤606、对第一预测模型的模型参数进行调整,并返回步骤601,利用调整后的第一预测模型进行下一轮训练过程。
步骤605、确定第一预测模型训练完成。
(二)第二预测模型
本申请实施例中,由于候选问题集合中的每一种候选问题都与一个第二预测模型匹配,故在训练第二预测模型时,可以分别对每一种候选问题匹配的第二预测模型进行训练。为了训练第一预测模型,首先需要生成每一种候选问题对应的第二样本训练集,然后,基于每一种候选问题对应的第二样本训练集,对每一种候选问题匹配的第二预测模型进行训练,直至确定每一种候选问题匹配的第二预测模型训练完成。
参照图7所示,为本申请实施例提供的生成第二样本训练集的流程示意图,针对候选样本集合中的第一候选问题,第一候选问题为候选样本集合中的任意一个候选问题,执行如下操作:
步骤701、从历史会话记录信息中筛选出第一请求端的第一历史特征信息、以及第二请求端的第二历史特征信息。
其中,第一请求端表示请求回应的历史问题为第一候选问题的请求端,第二请求端表示请求回应的历史问题不为所述第一候选问题的请求端;
提取每个第一历史特征信息对应的第一历史特征向量,以及,提取每个第二历史特征信息对应的第二历史特征向量。
步骤702、将提取的每个第一历史特征向量作为正训练样本,构成正样本训练集,以及,将提取的每个第二历史特征向量作为负训练样本,构成负样本训练集。
其中,每个正训练样本对应一个正标签,每个负训练样本对应一个负标签,正标签表示请求端请求回应的问题为第一候选问题,负标签表示请求端请求回应的问题不为第一候选问题。
步骤703、将正样本训练集、以及负样本训练集构成第一候选问题对应的第二样本训练集。
在生成每一种候选问题对应的第二样本训练集,可以对每一种候选问题匹配的第二预测模型进行训练。其中,针对上述第一候选问题匹配的第二预测模型,可以参照图8所示,执行如下训练过程:
步骤801、从第一候选问题对应第二样本训练集中获取第一预设个数的正训练样本、以及第二预设个数的负训练样本。
其中,第一预设个数和第二预设个数既可以相同也可以不同,如果不相同时,第一预设个数和第二预设个数之间的差距较小,以使样本均衡。
步骤802、将第一预设个数的正训练样本、以及第二预设个数的负训练样本输入至第一候选问题匹配的第二预测模型中,输出每个正训练样本对应的分类结果、以及每个负训练样本对应的分类结果。
其中,第二预测模型输出的分类结果表示请求端请求回应的问题是否为第一候选问题。
步骤803、通过对比每个正训练样本对应的分类结果和正标签、以及对比每个负训练样本对应的分类结果和负标签,确定本轮训练过程的第二损失值。
具体实施中,针对每个正训练样本,可以对比该正训练样本对应的分类结果与该正训练样本对应的正标签所标识的结果是否一致,若一致,则确定对该正训练样本的预测准确,若不一致,则确定对该正训练样本的预测不准确。针对每个负训练样本,也可以参照上述过程确定对每个负训练样本的预测是否准确。通过遍历全部的正训练样本和负训练样本,可以计算出本轮训练过程的第二损失值,第二损失值能够反映出第二预测模型预测的准确度。
步骤804、判断本轮训练过程的第二损失值是否大于第二设定值。
若判断结果为是,则执行步骤805;若判断结果为否,则执行步骤806。
步骤805、对第一候选问题匹配的第二预测模型的模型参数进行调整,并返回步骤801,利用调整后的第一候选问题匹配的第二预测模型进行下一轮训练过程。
步骤806、确定第一候选问题匹配的第二预测模型训练完成。
本申请实施例中,服务器可以在请求端发起会话请求后,获取请求端的特征信息,然后可以分别利用不同种候选问题通用的第一预测模型、以及与候选问题集合中每种候选问题匹配的第二预测模型,来分别预测出候选问题集合中每个候选问题推荐给请求端的第一被接受概率、以及每种候选问题被请求端接受的第二被接受概率。进一步地,可以根据每种候选问题对应的第一被接受概率和第二被接受概率,确定每种候选问题被请求端接受的第三被接受概率,然后根据每种候选问题对应的第三被接受概率,确定最终向用户推荐的问题。相比预先配置好候选问题的方案,上述方案能够基于每个请求端的特征信息、以及两类预测模型,从候选问题集合中筛选出请求端最有可能接受的问题并推荐给请求端,这种方式能够有针对性的进行问题推荐,满足不同请求端的个性化的咨询需求,提升问题咨询的效率。
基于同一技术构思,本申请实施例中还提供了与问题推荐方法对应的问题推荐装置,由于本申请实施例中的装置解决问题的原理与本申请实施例上述问题推荐方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
参照图9所示,为本申请实施例提供的一种问题推荐装置的结构示意图,所述装置90包括:
第一预测模块91,用于在检测到请求端发起会话请求后,基于所述请求端的特征信息和预先训练的不同种候选问题通用的第一预测模型,确定将候选问题集合中的每种候选问题推荐给所述请求端的第一被接受概率;
第二预测模块92,用于基于所述请求端的特征信息和所述候选问题集合中每种候选问题匹配的预先训练的第二预测模型,确定所述候选问题集合中每种候选问题被请求端接受的第二被接受概率;
确定模块93,用于根据每种候选问题对应的第一被接受概率和第二被接受概率,确定每种候选问题被请求端接受的第三被接受概率;
筛选模块94,用于根据每种候选问题对应的第三被接受概率,从所述候选问题集合中选择推荐给所述请求端的问题。
一种可能的设计中,所述确定模块93,在根据每种候选问题对应的第一被接受概率和第二被接受概率,确定每种候选问题被请求端接受的第三被接受概率时,具体用于:
针对所述候选问题集合中第i种候选问题,将所述第i种候选问题对应的第一被接受概率以及对应的第二被接受概率进行加权求和,得到所述第i种候选问题对应的第三被接受概率。
一种可能的设计中,所述筛选模块94,在根据每种候选问题对应的第三被接受概率,从所述候选问题集合中选择推荐给所述请求端的问题时,具体用于:
将所述候选问题集合中第三被接受概率高于预设概率值的候选问题作为推荐给所述请求端的问题。
一种可能的设计中,所述筛选模块94,在根据每种候选问题对应的第三被接受概率,从所述候选问题集合中选择推荐给所述请求端的问题时,具体用于:
将所述候选问题集合中每种候选问题按照第三被接受概率由大到小的顺序进行排列;
将所述候选问题集合中第三被接受概率排列在前k位的候选问题作为推荐给所述请求端的问题,k为正整数。
一种可能的设计中,所述第一预测模块91,在基于所述请求端的特征信息和预先训练的不同种候选问题通用的第一预测模型,确定将候选问题集合中每一种候选问题推荐给所述请求端的第一被接受概率时,具体用于:
对所述特征信息进行特征提取后得到特征向量;
将所述特征向量输入至预先训练的不同种候选问题通用的第一预测模型中,输出所述候选问题集合中每一种候选问题推荐给所述请求端的第一被接受概率。
一种可能的设计中,所述第二预测模块92,在基于所述请求端的特征信息和所述候选问题集合中每种候选问题匹配的预先训练的第二预测模型,确定所述候选问题集合中每种候选问题是否被请求端接受的第二被接受概率时,具体用于:
对所述特征信息进行特征提取后得到特征向量;
将从所述特征信息中提取出的特征向量输入至与所述候选问题集合中每种候选问题匹配的预先训练的第二预测模型中,输出所述候选问题集合中每种候选问题被请求端接受的第二被接受概率。
一种可能的设计中,所述为所述请求端推荐的问题还包括预设提示问题,所述预设提示问题用于提示所述请求端是否需要请求回应其它问题。
一种可能的设计中,所述确定模块93,还用于统计第二历史时间段内不同请求端请求回应的每种问题的总次数;将统计出的总次数满足预设条件的问题作为候选问题,构成所述候选问题集合。
一种可能的设计中,当所述请求端为服务提供方终端时,所述特征信息包括以下信息中的至少一种:
所述服务提供方的人物描述信息;
所述服务提供方最近一次处理的订单的订单描述信息;
所述最近一次处理的订单的服务请求方的人物描述信息;
所述服务提供方发起所述会话请求时的订单状态信息;
所述服务提供方发起所述会话请求时所处的位置以及时间;
所述服务提供方在第一历史时间段内的订单汇总信息。
一种可能的设计中,所述装置还包括:
第一模型训练模块95,用于获取在第三历史时间段内的历史会话记录信息,所述历史会话记录信息中包括每个请求端每次发起会话请求时的历史特征信息、以及每个请求端每次发起会话请求时请求回应的历史问题;
提取每个历史特征信息对应的历史特征向量;
将提取的每个所述历史特征向量作为训练样本,构成第一样本训练集,其中,每个训练样本对应一个问题标签,不同问题标签用于标识不同历史特征向量分别对应的历史问题;
基于所述第一样本训练集对所述第一预测模型进行训练,直至确定所述第一预测模型训练完成。
一种可能的设计中,所述第一模型训练模块95,在基于所述第一样本训练集对所述第一预测模型进行训练,直至确定所述第一预测模型训练完成时,具体用于:
将所述第一样本训练集中预设个数的所述训练样本输入至所述第一预测模型中,针对输入的每个所述训练样本,分别输出所述候选问题集合中每一种候选问题推荐给所述请求端的第一历史被接受概率,并确定每个所述训练样本对应的所述第一历史被接受概率最高的候选问题;
通过对比每个所述训练样本对应的所述第一历史被接受概率最高的候选问题、以及每个所述训练样本对应的问题标签,确定本轮训练过程的第一损失值;
当所述第一损失值大于第一设定值时,对所述第一预测模型的模型参数进行调整,并利用调整后的所述第一预测模型进行下一轮训练过程,直至确定出的第一损失值小于或等于所述第一设定值时,确定所述第一预测模型训练完成。
一种可能的设计中,所述装置还包括:
第二模型训练模块96,用于针对所述候选问题集合中的每一种候选问题,生成与每一种候选问题匹配的第二预测模型,以及,生成每一种候选问题对应的第二样本训练集;
基于每一种候选问题对应的第二样本训练集,对每一种候选问题匹配的第二预测模型进行训练,直至确定每一种候选问题匹配的第二预测模型训练完成。
一种可能的设计中,所述第二模型训练模块96,在生成每一种候选问题对应的第二样本训练集时,具体用于:
针对所述候选样本集合中的第一候选问题,所述第一候选问题为所述候选样本集合中的任意一个候选问题,执行如下操作:
从所述历史会话记录信息中筛选出第一请求端的第一历史特征信息、以及第二请求端的第二历史特征信息;其中,所述第一请求端表示请求回应的历史问题为所述第一候选问题的请求端,所述第二请求端表示请求回应的历史问题不为所述第一候选问题的请求端;
提取每个第一历史特征信息对应的第一历史特征向量,以及,提取每个第二历史特征信息对应的第二历史特征向量;
将提取的每个所述第一历史特征向量作为正训练样本,构成正样本训练集,以及,将提取的每个所述第二历史特征向量作为负训练样本,构成负样本训练集;
将所述正样本训练集、以及所述负样本训练集构成所述第一候选问题对应的第二样本训练集;
其中,每个正训练样本对应一个正标签,每个负训练样本对应一个负标签,所述正标签表示所述请求端请求回应的问题为所述第一候选问题,所述负标签表示所述请求端请求回应的问题不为所述第一候选问题。
一种可能的设计中,所述第二模型训练模块96,在基于每一种候选问题对应的第二样本训练集,对每一种候选问题匹配的第二预测模型进行训练,直至确定每一种候选问题匹配的第二预测模型训练完成时,具体用于:
针对所述第一候选问题匹配的第二预测模型,执行如下训练过程:
从所述第一候选问题对应第二样本训练集中获取第一预设个数的所述正训练样本、以及第二预设个数的所述负训练样本;
将所述第一预设个数的所述正训练样本、以及所述第二预设个数的所述负训练样本输入至所述第一候选问题匹配的第二预测模型中,输出每个所述正训练样本对应的分类结果、以及每个所述负训练样本对应的分类结果;其中,所述分类结果表示所述请求端请求回应的问题是否为所述第一候选问题;
通过对比每个所述正训练样本对应的分类结果和所述正标签、以及对比每个所述负训练样本对应的分类结果和所述负标签,确定本轮训练过程的第二损失值;
当所述第二损失值大于第二设定值时,对所述第一候选问题匹配的第二预测模型的模型参数进行调整,并利用调整后的所述第一候选问题匹配的第二预测模型进行下一轮训练过程,直至确定出的第二损失值小于或等于所述第二设定值时,确定所述第一候选问题匹配的第二预测模型训练完成。
本申请实施例中,上述各模块的具体功能和交互方式,可参见上述方法实施例中的记载,在此不再赘述。
基于相同的技术构思,本申请实施例还提供了一种电子设备。参照图10所示,为本申请实施例提供的电子设备100的结构示意图,包括处理器101、存储器102、和总线103。其中,存储器102用于存储执行指令,包括内存1021和外部存储器1022;这里的内存1021也称内存储器,用于暂时存放处理器101中的运算数据,以及与硬盘等外部存储器1022交换的数据,处理器101通过内存1021与外部存储器1022进行数据交换,当计算机设备100运行时,处理器101与存储器102之间通过总线103通信,使得处理器101在执行以下指令:
在检测到请求端发起会话请求后,基于所述请求端的特征信息和预先训练的不同种候选问题通用的第一预测模型,确定将候选问题集合中的每种候选问题推荐给所述请求端的第一被接受概率;
基于所述请求端的特征信息和所述候选问题集合中每种候选问题匹配的预先训练的第二预测模型,确定所述候选问题集合中每种候选问题被请求端接受的第二被接受概率;
根据每种候选问题对应的第一被接受概率和第二被接受概率,确定每种候选问题被请求端接受的第三被接受概率;
根据每种候选问题对应的第三被接受概率,从所述候选问题集合中选择推荐给所述请求端的问题。
其中,处理器101的具体处理流程可以参照上述方法实施例的记载,这里不再赘述。
基于相同的技术构思,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述问题推荐方法的步骤。
具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述问题推荐方法,以更好地满足不同请求端的用户的咨询需求,减少用户在咨询问题时的等待时长,提高咨询问题的效率。
基于相同的技术构思,本申请实施例还提供了一种计算机程序产品,包括存储了程序代码的计算机可读存储介质,程序代码包括的指令可用于执行上述问题推荐方法的步骤,具体实现可参见上述方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***和装置的具体工作过程,可以参考方法实施例中的对应过程,本申请中不再赘述。在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个模块或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (30)
1.一种问题推荐方法,其特征在于,包括:
在检测到请求端发起会话请求后,基于所述请求端的特征信息和预先训练的不同种候选问题通用的第一预测模型,确定将候选问题集合中的每种候选问题推荐给所述请求端的第一被接受概率;
基于所述请求端的特征信息和所述候选问题集合中每种候选问题匹配的预先训练的第二预测模型,确定所述候选问题集合中每种候选问题被请求端接受的第二被接受概率;
根据每种候选问题对应的第一被接受概率和第二被接受概率,确定每种候选问题被请求端接受的第三被接受概率;
根据每种候选问题对应的第三被接受概率,从所述候选问题集合中选择推荐给所述请求端的问题。
2.如权利要求1所述的方法,其特征在于,所述根据每种候选问题对应的第一被接受概率和第二被接受概率,确定每种候选问题被请求端接受的第三被接受概率,包括:
针对所述候选问题集合中第i种候选问题,将所述第i种候选问题对应的第一被接受概率以及对应的第二被接受概率进行加权求和,得到所述第i种候选问题对应的第三被接受概率。
3.如权利要求1所述的方法,其特征在于,所述根据每种候选问题对应的第三被接受概率,从所述候选问题集合中选择推荐给所述请求端的问题,包括:
将所述候选问题集合中第三被接受概率高于预设概率值的候选问题作为推荐给所述请求端的问题。
4.如权利要求1所述的方法,其特征在于,所述根据每种候选问题对应的第三被接受概率,从所述候选问题集合中选择推荐给所述请求端的问题,包括:
将所述候选问题集合中每种候选问题按照第三被接受概率由大到小的顺序进行排列;
将所述候选问题集合中第三被接受概率排列在前k位的候选问题作为推荐给所述请求端的问题,k为正整数。
5.如权利要求1所述的方法,其特征在于,所述基于所述请求端的特征信息和预先训练的不同种候选问题通用的第一预测模型,确定将候选问题集合中每一种候选问题推荐给所述请求端的第一被接受概率,包括:
对所述特征信息进行特征提取后得到特征向量;
将所述特征向量输入至预先训练的不同种候选问题通用的第一预测模型中,输出所述候选问题集合中每一种候选问题推荐给所述请求端的第一被接受概率。
6.如权利要求1的方法,其特征在于,所述基于所述请求端的特征信息和所述候选问题集合中每种候选问题匹配的预先训练的第二预测模型,确定所述候选问题集合中每种候选问题被请求端接受的第二被接受概率,包括:
对所述特征信息进行特征提取后得到特征向量;
将从所述特征信息中提取出的特征向量输入至与所述候选问题集合中每种候选问题匹配的预先训练的第二预测模型中,输出所述候选问题集合中每种候选问题被请求端接受的第二被接受概率。
7.如权利要求2所述的方法,其特征在于,所述为所述请求端推荐的问题还包括预设提示问题,所述预设提示问题用于提示所述请求端是否需要请求回应其它问题。
8.根据权利要求1所述的方法,其特征在于,在检测到请求端发起会话请求之前,所述方法还包括:
统计第二历史时间段内不同请求端请求回应的每种问题的总次数;
将统计出的总次数满足预设条件的问题作为候选问题,构成所述候选问题集合。
9.根据权利要求1所述的方法,其特征在于,当所述请求端为服务提供方终端时,所述特征信息包括以下信息中的至少一种:
所述服务提供方的人物描述信息;
所述服务提供方最近一次处理的订单的订单描述信息;
所述最近一次处理的订单的服务请求方的人物描述信息;
所述服务提供方发起所述会话请求时的订单状态信息;
所述服务提供方发起所述会话请求时所处的位置以及时间;
所述服务提供方在第一历史时间段内的订单汇总信息。
10.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取在第三历史时间段内的历史会话记录信息,所述历史会话记录信息中包括每个请求端每次发起会话请求时的历史特征信息、以及每个请求端每次发起会话请求时请求回应的历史问题;
提取每个历史特征信息对应的历史特征向量;
将提取的每个所述历史特征向量作为训练样本,构成第一样本训练集,其中,每个训练样本对应一个问题标签,不同问题标签用于标识不同历史特征向量分别对应的历史问题;
基于所述第一样本训练集对所述第一预测模型进行训练,直至确定所述第一预测模型训练完成。
11.如权利要求10所述的方法,其特征在于,所述基于所述第一样本训练集对所述第一预测模型进行训练,直至确定所述第一预测模型训练完成,包括:
将所述第一样本训练集中预设个数的所述训练样本输入至所述第一预测模型中,针对输入的每个所述训练样本,分别输出所述候选问题集合中每一种候选问题推荐给所述请求端的第一历史被接受概率,并确定每个所述训练样本对应的所述第一历史被接受概率最高的候选问题;
通过对比每个所述训练样本对应的所述第一历史被接受概率最高的候选问题、以及每个所述训练样本对应的问题标签,确定本轮训练过程的第一损失值;
当所述第一损失值大于第一设定值时,对所述第一预测模型的模型参数进行调整,并利用调整后的所述第一预测模型进行下一轮训练过程,直至确定出的第一损失值小于或等于所述第一设定值时,确定所述第一预测模型训练完成。
12.如权利要求1所述的方法,其特征在于,所述方法还包括:
针对所述候选问题集合中的每一种候选问题,生成与每一种候选问题匹配的第二预测模型,以及,生成每一种候选问题对应的第二样本训练集;
基于每一种候选问题对应的第二样本训练集,对每一种候选问题匹配的第二预测模型进行训练,直至确定每一种候选问题匹配的第二预测模型训练完成。
13.如权利要求12所述的方法,其特征在于,所述生成每一种候选问题对应的第二样本训练集,包括:
针对所述候选样本集合中的第一候选问题,所述第一候选问题为所述候选样本集合中的任意一个候选问题,执行如下操作:
从所述历史会话记录信息中筛选出第一请求端的第一历史特征信息、以及第二请求端的第二历史特征信息;其中,所述第一请求端表示请求回应的历史问题为所述第一候选问题的请求端,所述第二请求端表示请求回应的历史问题不为所述第一候选问题的请求端;
提取每个第一历史特征信息对应的第一历史特征向量,以及,提取每个第二历史特征信息对应的第二历史特征向量;
将提取的每个所述第一历史特征向量作为正训练样本,构成正样本训练集,以及,将提取的每个所述第二历史特征向量作为负训练样本,构成负样本训练集;
将所述正样本训练集、以及所述负样本训练集构成所述第一候选问题对应的第二样本训练集;
其中,每个正训练样本对应一个正标签,每个负训练样本对应一个负标签,所述正标签表示所述请求端请求回应的问题为所述第一候选问题,所述负标签表示所述请求端请求回应的问题不为所述第一候选问题。
14.如权利要求13所述的方法,其特征在于,所述基于每一种候选问题对应的第二样本训练集,对每一种候选问题匹配的第二预测模型进行训练,直至确定每一种候选问题匹配的第二预测模型训练完成,包括:
针对所述第一候选问题匹配的第二预测模型,执行如下训练过程:
从所述第一候选问题对应第二样本训练集中获取第一预设个数的所述正训练样本、以及第二预设个数的所述负训练样本;
将所述第一预设个数的所述正训练样本、以及所述第二预设个数的所述负训练样本输入至所述第一候选问题匹配的第二预测模型中,输出每个所述正训练样本对应的分类结果、以及每个所述负训练样本对应的分类结果;其中,所述分类结果表示所述请求端请求回应的问题是否为所述第一候选问题;
通过对比每个所述正训练样本对应的分类结果和所述正标签、以及对比每个所述负训练样本对应的分类结果和所述负标签,确定本轮训练过程的第二损失值;
当所述第二损失值大于第二设定值时,对所述第一候选问题匹配的第二预测模型的模型参数进行调整,并利用调整后的所述第一候选问题匹配的第二预测模型进行下一轮训练过程,直至确定出的第二损失值小于或等于所述第二设定值时,确定所述第一候选问题匹配的第二预测模型训练完成。
15.一种问题推荐装置,其特征在于,包括:
第一预测模块,用于在检测到请求端发起会话请求后,基于所述请求端的特征信息和预先训练的不同种候选问题通用的第一预测模型,确定将候选问题集合中的每种候选问题推荐给所述请求端的第一被接受概率;
第二预测模块,用于基于所述请求端的特征信息和所述候选问题集合中每种候选问题匹配的预先训练的第二预测模型,确定所述候选问题集合中每种候选问题被请求端接受的第二被接受概率;
确定模块,用于根据每种候选问题对应的第一被接受概率和第二被接受概率,确定每种候选问题被请求端接受的第三被接受概率;
筛选模块,用于根据每种候选问题对应的第三被接受概率,从所述候选问题集合中选择推荐给所述请求端的问题。
16.如权利要求15所述的装置,其特征在于,所述确定模块,在根据每种候选问题对应的第一被接受概率和第二被接受概率,确定每种候选问题被请求端接受的第三被接受概率时,具体用于:
针对所述候选问题集合中第i种候选问题,将所述第i种候选问题对应的第一被接受概率以及对应的第二被接受概率进行加权求和,得到所述第i种候选问题对应的第三被接受概率。
17.如权利要求15所述的装置,其特征在于,所述筛选模块,在根据每种候选问题对应的第三被接受概率,从所述候选问题集合中选择推荐给所述请求端的问题时,具体用于:
将所述候选问题集合中第三被接受概率高于预设概率值的候选问题作为推荐给所述请求端的问题。
18.如权利要求15所述的装置,其特征在于,所述筛选模块,在根据每种候选问题对应的第三被接受概率,从所述候选问题集合中选择推荐给所述请求端的问题时,具体用于:
将所述候选问题集合中每种候选问题按照第三被接受概率由大到小的顺序进行排列;
将所述候选问题集合中第三被接受概率排列在前k位的候选问题作为推荐给所述请求端的问题,k为正整数。
19.如权利要求15所述的装置,其特征在于,所述第一预测模块,在基于所述请求端的特征信息和预先训练的不同种候选问题通用的第一预测模型,确定将候选问题集合中每一种候选问题推荐给所述请求端的第一被接受概率时,具体用于:
对所述特征信息进行特征提取后得到特征向量;
将所述特征向量输入至预先训练的不同种候选问题通用的第一预测模型中,输出所述候选问题集合中每一种候选问题推荐给所述请求端的第一被接受概率。
20.如权利要求15的装置,其特征在于,所述第二预测模块,在基于所述请求端的特征信息和所述候选问题集合中每种候选问题匹配的预先训练的第二预测模型,确定所述候选问题集合中每种候选问题是否被请求端接受的第二被接受概率时,具体用于:
对所述特征信息进行特征提取后得到特征向量;
将从所述特征信息中提取出的特征向量输入至与所述候选问题集合中每种候选问题匹配的预先训练的第二预测模型中,输出所述候选问题集合中每种候选问题被请求端接受的第二被接受概率。
21.如权利要求16所述的装置,其特征在于,所述为所述请求端推荐的问题还包括预设提示问题,所述预设提示问题用于提示所述请求端是否需要请求回应其它问题。
22.根据权利要求15所述的装置,其特征在于,所述确定模块,还用于:
统计第二历史时间段内不同请求端请求回应的每种问题的总次数;将统计出的总次数满足预设条件的问题作为候选问题,构成所述候选问题集合。
23.根据权利要求15所述的装置,其特征在于,当所述请求端为服务提供方终端时,所述特征信息包括以下信息中的至少一种:
所述服务提供方的人物描述信息;
所述服务提供方最近一次处理的订单的订单描述信息;
所述最近一次处理的订单的服务请求方的人物描述信息;
所述服务提供方发起所述会话请求时的订单状态信息;
所述服务提供方发起所述会话请求时所处的位置以及时间;
所述服务提供方在第一历史时间段内的订单汇总信息。
24.根据权利要求15所述的装置,其特征在于,所述装置还包括:
第一模型训练模块,用于获取在第三历史时间段内的历史会话记录信息,所述历史会话记录信息中包括每个请求端每次发起会话请求时的历史特征信息、以及每个请求端每次发起会话请求时请求回应的历史问题;
提取每个历史特征信息对应的历史特征向量;
将提取的每个所述历史特征向量作为训练样本,构成第一样本训练集,其中,每个训练样本对应一个问题标签,不同问题标签用于标识不同历史特征向量分别对应的历史问题;
基于所述第一样本训练集对所述第一预测模型进行训练,直至确定所述第一预测模型训练完成。
25.如权利要求24所述的装置,其特征在于,所述第一模型训练模块,在基于所述第一样本训练集对所述第一预测模型进行训练,直至确定所述第一预测模型训练完成时,具体用于:
将所述第一样本训练集中预设个数的所述训练样本输入至所述第一预测模型中,针对输入的每个所述训练样本,分别输出所述候选问题集合中每一种候选问题推荐给所述请求端的第一历史被接受概率,并确定每个所述训练样本对应的所述第一历史被接受概率最高的候选问题;
通过对比每个所述训练样本对应的所述第一历史被接受概率最高的候选问题、以及每个所述训练样本对应的问题标签,确定本轮训练过程的第一损失值;
当所述第一损失值大于第一设定值时,对所述第一预测模型的模型参数进行调整,并利用调整后的所述第一预测模型进行下一轮训练过程,直至确定出的第一损失值小于或等于所述第一设定值时,确定所述第一预测模型训练完成。
26.如权利要求15所述的装置,其特征在于,所述装置还包括:
第二模型训练模块,用于针对所述候选问题集合中的每一种候选问题,生成与每一种候选问题匹配的第二预测模型,以及,生成每一种候选问题对应的第二样本训练集;
基于每一种候选问题对应的第二样本训练集,对每一种候选问题匹配的第二预测模型进行训练,直至确定每一种候选问题匹配的第二预测模型训练完成。
27.如权利要求26所述的装置,其特征在于,所述第二模型训练模块,在生成每一种候选问题对应的第二样本训练集时,具体用于:
针对所述候选样本集合中的第一候选问题,所述第一候选问题为所述候选样本集合中的任意一个候选问题,执行如下操作:
从所述历史会话记录信息中筛选出第一请求端的第一历史特征信息、以及第二请求端的第二历史特征信息;其中,所述第一请求端表示请求回应的历史问题为所述第一候选问题的请求端,所述第二请求端表示请求回应的历史问题不为所述第一候选问题的请求端;
提取每个第一历史特征信息对应的第一历史特征向量,以及,提取每个第二历史特征信息对应的第二历史特征向量;
将提取的每个所述第一历史特征向量作为正训练样本,构成正样本训练集,以及,将提取的每个所述第二历史特征向量作为负训练样本,构成负样本训练集;
将所述正样本训练集、以及所述负样本训练集构成所述第一候选问题对应的第二样本训练集;
其中,每个正训练样本对应一个正标签,每个负训练样本对应一个负标签,所述正标签表示所述请求端请求回应的问题为所述第一候选问题,所述负标签表示所述请求端请求回应的问题不为所述第一候选问题。
28.如权利要求27所述的装置,其特征在于,所述第二模型训练模块,在基于每一种候选问题对应的第二样本训练集,对每一种候选问题匹配的第二预测模型进行训练,直至确定每一种候选问题匹配的第二预测模型训练完成时,具体用于:
针对所述第一候选问题匹配的第二预测模型,执行如下训练过程:
从所述第一候选问题对应第二样本训练集中获取第一预设个数的所述正训练样本、以及第二预设个数的所述负训练样本;
将所述第一预设个数的所述正训练样本、以及所述第二预设个数的所述负训练样本输入至所述第一候选问题匹配的第二预测模型中,输出每个所述正训练样本对应的分类结果、以及每个所述负训练样本对应的分类结果;其中,所述分类结果表示所述请求端请求回应的问题是否为所述第一候选问题;
通过对比每个所述正训练样本对应的分类结果和所述正标签、以及对比每个所述负训练样本对应的分类结果和所述负标签,确定本轮训练过程的第二损失值;
当所述第二损失值大于第二设定值时,对所述第一候选问题匹配的第二预测模型的模型参数进行调整,并利用调整后的所述第一候选问题匹配的第二预测模型进行下一轮训练过程,直至确定出的第二损失值小于或等于所述第二设定值时,确定所述第一候选问题匹配的第二预测模型训练完成。
29.一种电子设备,其特征在于,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行时执行如权利要求1至14任一所述的问题推荐方法的步骤。
30.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至14任一所述的问题推荐方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811459854.0A CN111259229B (zh) | 2018-11-30 | 2018-11-30 | 一种问题推荐方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811459854.0A CN111259229B (zh) | 2018-11-30 | 2018-11-30 | 一种问题推荐方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111259229A true CN111259229A (zh) | 2020-06-09 |
CN111259229B CN111259229B (zh) | 2023-06-20 |
Family
ID=70948426
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811459854.0A Active CN111259229B (zh) | 2018-11-30 | 2018-11-30 | 一种问题推荐方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111259229B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113722614A (zh) * | 2021-08-05 | 2021-11-30 | 上海钧正网络科技有限公司 | 上车位置的确定方法、装置和服务器 |
CN113886563A (zh) * | 2021-10-25 | 2022-01-04 | 北京达佳互联信息技术有限公司 | 问题推荐方法、装置、电子设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002084430A2 (en) * | 2001-04-10 | 2002-10-24 | Paul Keller | Voter advisory service |
CN103229223A (zh) * | 2010-09-28 | 2013-07-31 | 国际商业机器公司 | 使用多个候选答案评分模型提供问题答案 |
CN104077288A (zh) * | 2013-03-26 | 2014-10-01 | 富士通株式会社 | 网页内容推荐方法和网页内容推荐设备 |
CN104965890A (zh) * | 2015-06-17 | 2015-10-07 | 深圳市腾讯计算机***有限公司 | 广告推荐的方法和装置 |
CN106485562A (zh) * | 2015-09-01 | 2017-03-08 | 苏宁云商集团股份有限公司 | 一种基于用户历史行为的商品信息推荐方法及*** |
CN108922608A (zh) * | 2018-06-13 | 2018-11-30 | 平安医疗科技有限公司 | 智能导诊方法、装置、计算机设备和存储介质 |
-
2018
- 2018-11-30 CN CN201811459854.0A patent/CN111259229B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002084430A2 (en) * | 2001-04-10 | 2002-10-24 | Paul Keller | Voter advisory service |
CN103229223A (zh) * | 2010-09-28 | 2013-07-31 | 国际商业机器公司 | 使用多个候选答案评分模型提供问题答案 |
CN104077288A (zh) * | 2013-03-26 | 2014-10-01 | 富士通株式会社 | 网页内容推荐方法和网页内容推荐设备 |
CN104965890A (zh) * | 2015-06-17 | 2015-10-07 | 深圳市腾讯计算机***有限公司 | 广告推荐的方法和装置 |
CN106485562A (zh) * | 2015-09-01 | 2017-03-08 | 苏宁云商集团股份有限公司 | 一种基于用户历史行为的商品信息推荐方法及*** |
CN108922608A (zh) * | 2018-06-13 | 2018-11-30 | 平安医疗科技有限公司 | 智能导诊方法、装置、计算机设备和存储介质 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113722614A (zh) * | 2021-08-05 | 2021-11-30 | 上海钧正网络科技有限公司 | 上车位置的确定方法、装置和服务器 |
CN113722614B (zh) * | 2021-08-05 | 2024-05-07 | 上海钧正网络科技有限公司 | 上车位置的确定方法、装置和服务器 |
CN113886563A (zh) * | 2021-10-25 | 2022-01-04 | 北京达佳互联信息技术有限公司 | 问题推荐方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111259229B (zh) | 2023-06-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI676783B (zh) | 用於預估到達時間之方法及系統 | |
US20200051193A1 (en) | Systems and methods for allocating orders | |
CN111104585B (zh) | 一种问题推荐方法及装置 | |
CN112236787B (zh) | 用于生成个性化目的地推荐的***和方法 | |
CN111353092B (zh) | 服务推送方法、装置、服务器及可读存储介质 | |
JP2021504850A (ja) | 電動乗り物の充電のためのシステムおよび方法 | |
CN109791731B (zh) | 一种预估到达时间的方法和*** | |
TWI724958B (zh) | 用於線上到線下服務的系統、方法和電腦可讀取媒體 | |
CN111105120B (zh) | 一种工单处理方法及装置 | |
CN111367575B (zh) | 一种用户行为预测方法、装置、电子设备及存储介质 | |
CN110910180B (zh) | 信息推送方法、装置、电子设备和存储介质 | |
CN111105251A (zh) | 一种信息推送方法及装置 | |
CN111259119B (zh) | 一种问题推荐方法及装置 | |
CN111316308A (zh) | 用于识别错误订单请求的***及方法 | |
CN111259229B (zh) | 一种问题推荐方法及装置 | |
CN111831967A (zh) | 一种到店识别方法、装置、电子设备及介质 | |
CN111489214A (zh) | 订单分配方法、条件设置方法、装置及电子设备 | |
CN111353093B (zh) | 问题推荐方法、装置、服务器及可读存储介质 | |
CN111274471B (zh) | 信息推送方法、装置、服务器及可读存储介质 | |
CN111291253A (zh) | 模型训练方法、咨询推荐方法、装置及电子设备 | |
CN111222900A (zh) | 信息推送方法、装置、电子设备及计算机存储介质 | |
CN111695919B (zh) | 评价数据处理方法、装置、电子设备及存储介质 | |
CN111192071B (zh) | 发单量预估方法及装置、训练发单概率模型的方法及装置 | |
CN111401030A (zh) | 服务异常识别方法、装置、服务器及可读存储介质 | |
CN111353090B (zh) | 服务分流方法、装置、服务器及可读存储介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |