产品推荐方法、装置、计算机设备和存储介质与流程

文档序号:17069594发布日期:2019-03-08 23:12阅读:152来源:国知局
产品推荐方法、装置、计算机设备和存储介质与流程

本申请涉及到计算机领域,特别是涉及到产品推荐方法、装置、计算机设备和存储介质。



背景技术:

保险、投资理财的时候,会有相关的系统进行统计与计算,以生成推荐信息给客户买哪些保险或理财产品等。

现有的推荐系统或是基于内容推荐、或是基于用户推荐,但是当新的保险或理财等产品推出时,不能有效进行推荐,而有些热门产品会被过度推荐。



技术实现要素:

本申请的主要目的为提供一种产品推荐方法、装置、计算机设备和存储介质,旨在有效地将产品推荐给客户。

为了实现上述发明目的,本申请提出一种产品推荐方法,包括:

获取客户的第一检索信息,在预设的第一语料字典中查找所述第一检索信息中每一个字对应的词向量,得到对应所述第一检索信息的第一词向量矩阵;

将所述第一词向量矩阵输入到基于lstm模型训练得到的第一推荐模型中学习,输出对应所述第一词向量矩阵的产品信息的第一表示层向量;

到训练好的对应产品的产品表示层向量矩阵中查找与所述第一表示层向量相似度最高的第二表示层向量;

将所述第二表示层向量对应的产品输出,并推荐给所述客户。

进一步地,所述将所述第二表示层向量对应的产品输出,并推荐给所述客户的步骤之后,包括:

记录所述客户购买的产品,以及所述第一检索信息;

将所述客户购买的产品的第一产品信息进行向量化得第一产品向量矩阵;

将所述第一检索信息对应的第一词向量矩阵和用户购买的产品的第一产品信息对应的第一产品向量矩阵关联地保存到指定的数据库中;

当所述数据库中的数据量达到预设的阈值,利用数据库中的全部第一产品向量矩阵和第一词向量矩阵对所述第一推荐模型进行继续训练,得到新的第一推荐模型。

进一步地,所述将所述第二表示层向量对应的产品输出,并推荐给所述客户的步骤之后,包括:

将所述客户的信息与所述第一词向量矩阵关联地存储到客户数据库中,其中,客户的信息包括指定的联系方式;

将新的产品信息向量化得到第二产品向量矩阵,并输入到基于lstm模型训练得到的反向推荐模型中,以输出对应第二产品特征向量矩阵的第三表示层向量,该第三表示层向量是对应客户检索信息的向量;

到所述客户数据库中查找与所述第三表示层向量相似度达到指定要求的第一词向量矩阵;

将查找到的达到要求的第一词向量矩阵对应的客户的信息提取出来;

根据提取出的用户的联系方式将所述新的产品推荐给客户。

进一步地,所述获取客户的第一检索信息,在预设的第一语料字典中查找所述第一检索信息中每一个字对应的词向量,得到对应所述第一检索信息的第一词向量矩阵的步骤之前,包括:

抓取指定网站上的全部产品的相关信息,形成各产品对应的产品信息;

将各产品信息中重复出现的字提取出来,每一个重复的字只保留一个;

将剩余的字输入到dssm模型中计算,得出每一个字的词向量矩阵,以得到所述第一语料字典,所述剩余的字为所述产品信息中没有重复出现的字,以及每一个重复的字只保留一个后的字的集合。

进一步地,所述将所述第二表示层向量对应的产品输出,并推荐给所述客户的步骤之后,包括:

获取客户购买的产品,并判断该产品与推荐的产品是否相同;

若不相同,则在购买不同产品的计数的基础上加一,得到第一计数;若相同,则在购买相同产品的计数的基础上加一,得到的第二计数;

在指定时间长度的时间节点处,使用第一计数比上第二计数,若比值大于预设阈值,则停用所述第一推荐模型。

进一步地,所述将所述第二表示层向量对应的产品输出,并推荐给所述客户的步骤,包括:

将所述第二表示层向量对应的产品输出;

根据输出的产品,查找所述输出的介绍信息、产品的售卖数据,以及购买所述输出的产品的客户分布;

将所述输出的产品的介绍信息、售卖数据和客户分布形成推荐信息给所述客户。

进一步地,所述将所述输出的产品的介绍信息、售卖数据和客户分布形成推荐信息给所述客户的步骤,包括:

将所述售卖数据和所述客户分布制作成可视化附图;

将所述可视化附图以及所述输出的产品的介绍信息封装到一篇文档中形成所述推荐信息给所述客户。

本申请还提供一种产品推荐装置,包括:

获取单元,用于获取客户的第一检索信息,在预设的第一语料字典中查找所述第一检索信息中每一个字对应的词向量,得到对应所述第一检索信息的第一词向量矩阵;

深度学习单元,用于将所述第一词向量矩阵输入到基于lstm模型训练得到的第一推荐模型中学习,输出对应所述第一词向量矩阵的产品信息的第一表示层向量;

相似度计算单元,用于到训练好的对应产品的产品表示层向量矩阵中查找与所述第一表示层向量相似度最高的第二表示层向量;

推荐单元,用于将所述第二表示层向量对应的产品输出,并推荐给所述客户。

本申请还提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述方法的步骤。

本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述中任一项所述的方法的步骤。

本申请的产品推荐方法、装置、计算机设备和存储介质,将历史数据中的客户检索信息和其购买的产品的产品信息向量化,然后输入到lstm模型中进行训练,以得到第一推荐模型,然后利用第一推荐模型计算客户的检索词对应的产品,以推荐给客户合适的产品,既可以有效给客户推荐产品,又不会将热门产品过度推荐。

附图说明

图1为本发明一实施例的产品推荐方法的流程示意图;

图2为本发明一实施例的产品推荐装置的结构示意框图;

图3为本发明一实施例的产品推荐装置的结构示意框图;

图4为本发明一实施例的产品推荐装置的结构示意框图;

图5为本发明一实施例的产品推荐装置的结构示意框图;

图6为本发明一实施例的产品推荐装置的结构示意框图;

图7为本发明一实施例的推荐单元的结构示意框图;

图8为本发明一实施例的推荐模块的结构示意框图;

图9为本发明一实施例的计算机设备的结构示意框图。

本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

参照图1,本申请提供一种产品推荐方法,包括步骤:

s1、获取客户的第一检索信息,在预设的第一语料字典中查找所述第一检索信息中每一个字对应的词向量,得到对应所述第一检索信息的第一词向量矩阵;

s2、将所述第一词向量矩阵输入到基于lstm模型训练得到的第一推荐模型中学习,输出对应所述第一词向量矩阵的产品信息的第一表示层向量;

s3、到训练好的对应产品的产品表示层向量矩阵中查找与所述第一表示层向量相似度最高的第二表示层向量;

s4、将所述第二表示层向量对应的产品输出,并推荐给所述客户。

如上述步骤s1所述,上述第一检索信息是指客户输入的检索信息,其包括客户根据自身购买欲望而提炼出的关键词,比如客户想要了解儿童保险,那么其输入的关键词一般包括儿童、意外、医疗等,将这些关键词提取出来之后,在上述第一语料字典中查找每一个字的词向量,然后将每一个字的词向量按照关键词的顺序排列,形成上述的第一词向量矩阵。上述的第一语料字典是售卖上述产品的公司等制作的词向量与文字一一映射的字典,其中包含的文字和词向量是其对应领域中常见的字。第一语料词典的制作过程包括:将待形成词向量的文字输入到dssm(deepstructuredsemanticmodels,深层结构化语义模型)模型中,通过dssm模型计算出文字的词向量,然后将文字及其对应的词向量放入到第一语料字典中。本步骤中,关键词的提取可以是售卖产品的工作人员根据客户的口述内容,人为提取出来的,然后手动输入计算机设备中,以完成上述步骤s1;也可以是将客户的要求形成文本信息,并将文本信息输入到关键词提取模型中提取关键词,然后将提取出的关键词完成上述步骤s1;还可以是利用语音识别技术将客户的语音转化成文本信息,然后将文本信息输入到关键词提取模型中提取关键词等。

如上述步骤s2所述,上述基于lstm(longshort-termmemory,长短期记忆网络)模型训练得到的第一推荐模型,是指第一推荐模型通过lstm模型训练而得,具体的训练过程为:①将历史的客户检索信息通过上述第一语料字典形成多个词向量矩阵,以及将客户购买的产品的产品信息通过第一语料字典形成对应的多个词向量矩阵,形成得到的词向量矩阵的集合,其中,每一位客户的检索信息对应的词向量矩阵与该客户购买的产品的产品信息对应的词向量矩阵相互关联;②将词向量矩阵的集合分成训练集和测试集;③将测试集的样本数据输入到lstm模型中进行训练,然后将测试集对训练后的lstm模型进行验证,如果验证通过,则得到上述的第一推荐模型。上述训练的过程属于监督训练,即历史的客户检索信息和客户购买的产品信息是带有关联标记的信息,训练出的第一推荐模型,当输入客户检索信息的第一词向量矩阵后,会输出一个关于产品信息对应的第一表示层向量。

如上述步骤s3所述,因为上述第一推荐模型中输出的第一表示层向量是推算出来的,所以需要计算与训练好的对应产品(例如保险产品)的产品表示层向量矩阵中的每一个表示层向量的相似度,寻找相似度最高的第二表示层向量,相似度的计算可以使用欧几里得距离(euclediandistance)、曼哈顿距离(manhattandistance)、明可夫斯基距离(minkowskidistance)或者余弦相似度中一种算法进行计算。本实施例中,具体的相似度计算公式如下:

其中,yq为检索信息的表示层向量,yd为产品信息的表示层向量,td/tq为对应句子的长度,r为相似度。在其它的实施例中,无论有没有与第一表示层向量相同的第二表示层向量,都会进行上述的相似度计算,并将计算结果进行由高到低的排名。

如上述步骤s4所述,因为上述第二表示层向量与第一推荐模型输出的第一表示层向量的相似度最高,所以,第二表示层向量对应的产品是最适合上述客户购买的产品,因此将该第二表示层向量对应的产品输出,作为推荐给新客户的产品。在其它实施例中,还可以将与第一表示层向量相似度较高的几个第二表示层向量选取出来,并将各第二表示层向量对应的产品输出,按照其相似度由高到低的顺序,给出不同购买强度的建议。比如,输入的第一检索信息时“儿童、保险、意外”,那么上述第一推荐模型输出的第一表示层向量与预设的产品表示层向量矩阵中的一个第二表示层向量最接近,该第二表示层向量对应的保险产品为儿童意外保险,而与上述“儿童、保险、意外”对应的第一表示层向量相似度略低一点的第二表层向量对应的儿童医疗保险同样会形成推荐的保险产品推出,以提高客户的选择性。

在一个实施例中,上述将所述第二表示层向量对应的产品输出,并推荐给所述客户的步骤s4之后,包括:

s401、记录所述客户购买的产品,以及所述第一检索信息;

s402、将所述客户购买的产品的第一产品信息进行向量化得第一产品向量矩阵;

s403、将所述第一检索信息对应的第一词向量矩阵和用户购买的产品的第一产品信息对应的第一产品向量矩阵关联地保存到指定的数据库中;

s404、当所述数据库中的数据量达到预设的阈值,利用数据库中的全部第一产品向量矩阵和第一词向量矩阵对所述第一推荐模型进行继续训练,得到新的第一推荐模型。

如上述步骤s401至s404所述,虽然给客户推荐了产品,但是客户并不一定会购买推荐的产品,所以记录该客户购买的产品,将客户购买的产品的产品信息向量化得到第一产品向量矩阵,然后将第一产品向量矩阵与第一词向量矩阵(客户的第一检索信息对应的向量矩阵)关联存储到指定的数据库中,以便后期作为训练样本使用。上述指定数据量是指存储上述第一产品向量矩阵与第一词向量矩阵的总的数据量。当数据量达到指定阈值,则说明样本数量达到要求,然后对上述的第一推荐模型进行训练,使用数据库中的样本数据继续对第一推荐模型进行训练,得到新的第一推荐模型,可以提高上述第一推荐模型的准确性。其训练方法与上述训练第一推荐模型的方法相同,在此不在赘述。本实施例中,通过不断地优化第一推荐模型,使得推荐结果更加准确。

在另一个实施例中,上述将所述第二表示层向量对应的产品输出,并推荐给所述客户的步骤s4之后,包括:

s411、将所述客户的信息与所述第一词向量矩阵关联地存储到客户数据库中,其中,客户的信息包括指定的联系方式;

s412、将新的产品信息向量化得到第二产品向量矩阵,并输入到基于lstm模型训练得到的反向推荐模型中,以输出对应第二产品特征向量矩阵的第三表示层向量,该第三表示层向量是对应客户检索信息的向量;

s413、到所述客户数据库中查找与所述第三表示层向量相似度达到指定要求的第一词向量矩阵;

s414、将查找到的达到要求的第一词向量矩阵对应的客户的信息提取出来;

s415、根据提取出的用户的联系方式将所述新的产品推荐给客户。

如上述步骤s411所述,上述指定的联系方式一般包括手机号码、邮箱等无需添加好友,既可以接收他人发送的消息的联系方式,比如,通过手机号码可以直接发送短信给客户,邮箱同样如此。将客户的信息与第一词向量关联,是为了可以通过词向量反向查找到客户,第一词向量矩阵与客户的信息是一对一的映射关系。

如上述步骤s412所述,上述基于lstm模型训练得到的反向推荐模型是指通过lstm模型训练而得,具体的训练过程为:①将历史的客户检索信息和客户购买的产品信息通过上述的第一语料字典进行向量化,并得到对应的词向量矩阵的集合;②将该词向量矩阵的集合分成训练集和测试集;③将测试集的样本数据输入到lstm模型中进行训练,然后将测试集对训练后的lstm模型进行验证,如果验证通过,则得到上述的反向推荐模型。上述训练的过程属于监督训练,即历史的客户检索信息和客户购买的产品信息是带有关联标记的信息,训练出的反向推荐模型,当输入产品信息的第二产品向量矩阵到反向推荐模型后,反向推荐模型会输出一个与客户检索信息对应的第五表示层向量。

如上述步骤s413所述,即为将第三表示层向量分别与客户数据库中的各第一词向量矩阵进行像似度计算,然后将与第三表示层向量相似度达到指定要求的第一词向量矩阵提取出来的过程。上述指定要求是指与第三表示层向量相似度达到指定阈值的第一词向量矩阵,其可能是一个,也可能是多个。本实施例中,上述指定阈值会适当设定,以便于查找到大量的客户群体,如只查找一个相似度最高的,显然不符合查找客户以推荐产品的初衷。

如上述步骤s414和s415所述,上述提取出的第一词向量矩阵是与反向推荐模型输出的第三表示层向量相似度较高的词向量矩阵,所以其对应的客户应该具有相对较高的购买欲望,以及相应的购买能力,所以将新的产品发送给对应的客户,推荐转销售的效率更高。

在一个实时中,上述获取客户的第一检索信息,在预设的第一语料字典中查找所述第一检索信息中每一个字对应的词向量,得到对应所述第一检索信息的第一词向量矩阵的步骤s1之前,包括:

s101、抓取指定网站上的全部产品的相关信息,形成各产品对应的产品信息;

s102、将各产品信息中重复出现的字提取出来,每一个重复的字只保留一个;

s103、将剩余的字输入到dssm模型中计算,得出每一个字的词向量矩阵,以得到所述第一语料字典,所述剩余的字为所述产品信息中没有重复出现的字,以及每一个重复的字只保留一个后的字的集合。

如上述步骤s101所述,上述指定网站一般为售卖上述产品的网站,而该网站上售卖的产品的类型近似,比如,售卖产品均为保险产品,但是保险的种类各不相同,如人身意外险产品、儿童医疗保险产品、重大疾病保险产品等。网站上会对其售卖的产品进行介绍,该介绍既可以作为产品信息。

如上述步骤s102所述,因为产品的类型近似,所以其产品信息中会重复出现相同的字,因此需要将相同的字提取出来,并将各重复出现的字,分别保留一个即可,将其它的删除掉,防止后期对同一个重复的字进行多次的向量化工作。

如上述步骤s103所述,上述剩余的字即为没有重复出现的字,以及每一个重复的字只保留一个后的字的集合。将该集合内的文字输入到dssm模型中,通过dssm模型计算出文字的词向量,然后将文字及其对应的词向量放入到一起,即形成上述第一语料字典。本实施例中,因为提炼出的字的集合是网站内所有的产品介绍中出现过的字,并将重复的字只保留一个的字的集合,所以,既可以满足字的向量化使用,也可以降低第一语料字典的形成难度和工作量。

在一个实施例中,上述将所述第二表示层向量对应的产品输出,并推荐给所述客户的步骤s4之后,包括:

s421、获取客户购买的产品,并判断该产品与推荐的产品是否相同;

s422、若不相同,则在购买不同产品的计数的基础上加一,得到第一计数;若相同,则在购买相同产品的计数的基础上加一,得到的第二计数

s423、在指定时间长度的时间节点处,使用第一计数比上第二计数,若比值大于预设阈值,则停用所述第一推荐模型。

如上述步骤s421至s423所述,客户购买产品后会进行电子存档,可以从电子存档中自动获取客户的购买情况,即了解客户是否购买了与推荐相同的产品。也就是说,虽然推荐给客户购买建议,但是客户并不一定会根据推荐来购买产品。记录每一次客户的购买情况,并进行计数,当购买与推荐不同的产品时,计数一次,购买与推荐相同的产品时计数一次,即得到上述的第一计数和第二计数。然后计算第一计数比上第二计数的比值,如果比值较大,说明推荐系统的推荐效果较差,比如,比值大于1,即不安推荐系统购买的次数大于按照推荐购买的次数,显然,上述推荐模型并不理想,所以停止使用。在其它实施例中,还可以记录在指定时间长度内的全部客户购买的第三计数,然后将第一计数或第二计数比上第三计数,根据比值结果,判断是否需要停用上述第一推荐模型。上述的指定时间长度是指一个季度或者一个月等较长时间,以便于得到较多的数据样本,得出的比值的可用性更高。

在一个实施例中,上述将所述第二表示层向量对应的产品输出,并推荐给所述客户的步骤s4,包括:

s41、将所述第二表示层向量对应的产品输出;

s42、根据输出的产品,查找所述输出的介绍信息、产品的售卖数据以及购买所述输出的产品的客户分布;

s43、将所述输出的产品的介绍信息、售卖数据和客户分布形成推荐信息给所述客户。

如上述步骤s41至s43所述,上述的介绍信息即为产品的相关介绍;上述的售卖数据一般包括该产品售卖的数量等;上述客户分布是指购买该产品的客户的年龄分布、区域分布等,即通过该客户分布,可以知道购买该产品的客户的情况,如,儿童人身保险等,其购买的客户中,20-30岁的女性客户较多,而50-70岁的老人客户略少,男性客户更少等,可以使客户了解购买该保险产品的人群是什么样的人群,以便于客户结合自身选择是否购买。又比如,人身意外险,其购买的客户在北方冬天的时候较多,其与北方天寒地冻容易滑倒相关,得到此地域分布和时间分布,也有利于帮助新客户选择是否购买等。将上述的保险产品的介绍信息、售卖数据和客户分布一起呈现给新客户,方便新客户的进行客观的判断,也减少产品的售卖人员的工作量。

在一个实施例中,上述将所述输出的产品的介绍信息、售卖数据和客户分布形成推荐信息给所述客户的步骤s43,包括:

s431、将所述售卖数据和所述客户分布制作成可视化附图;

s432、将所述可视化附图以及所述输出的产品的介绍信息封装到一篇文档中形成所述推荐信息给所述客户。

如上述步骤s431和s432所述,将售卖数据和客户分布制成可视化附图,更方便新客户查看,比如客户分布中的地域分布是体现在一张地图上,使客户可以一目了然地知道地域差异等。而售卖数据可以以曲线的形式体现,如从产品开始售卖开始至今的售卖走势曲线,或者每个月的售卖量等,大大地提高客户查看推荐信息的速度。

本申请实施例中,上述产品可以包括保险产品、金融产品等虚拟的产品,也可以是其它实物产品等。

本申请实施例的产品推荐方法,将历史数据中的客户检索信息和其购买的产品的产品信息向量化,然后输入到lstm模型中进行训练,以得到第一推荐模型,然后利用第一推荐模型计算客户的检索词对应的产品,以推荐给客户合适的产品,既可以有效给客户推荐产品,又不会将热门产品过度推荐。

参照图2,本申请还提供一种产品推荐装置,包括步骤:

获取单元10,用于获取客户的第一检索信息,在预设的第一语料字典中查找所述第一检索信息中每一个字对应的词向量,得到对应所述第一检索信息的第一词向量矩阵;

深度学习单元20,用于将所述第一词向量矩阵输入到基于lstm模型训练得到的第一推荐模型中学习,输出对应所述第一词向量矩阵的产品信息的第一表示层向量;

相似度计算单元30,用于到训练好的对应产品的产品表示层向量矩阵中查找与所述第一表示层向量相似度最高的第二表示层向量;

推荐单元40,用于将所述第二表示层向量对应的产品输出,并推荐给所述客户。

在上述获取单元10中,上述第一检索信息是指客户输入的检索信息,其包括客户根据自身购买欲望而提炼出的关键词,比如客户想要了解儿童保险,那么其输入的关键词一般包括儿童、意外、医疗等,将这些关键词提取出来之后,在上述第一语料字典中查找每一个字的词向量,然后将每一个字的词向量按照关键词的顺序排列,形成上述的第一词向量矩阵。上述的第一语料字典是售卖上述产品的公司等制作的词向量与文字一一映射的字典,其中包含的文字和词向量是其对应领域中常见的字。第一语料词典的制作过程包括:将待形成词向量的文字输入到dssm(deepstructuredsemanticmodels,深层结构化语义模型)模型中,通过dssm模型计算出文字的词向量,然后将文字及其对应的词向量放入到第一语料字典中。本实施例中,关键词的提取可以是售卖产品的工作人员根据客户的口述内容,人为提取出来的,然后手动输入计算机设备中,以完成第一检索信息的向量化;也可以是将客户的要求形成文本信息,并将文本信息输入到关键词提取模型中提取关键词,然后将提取出的关键词完成向量化;还可以是利用语音识别技术将客户的语音转化成文本信息,然后将文本信息输入到关键词提取模型中提取关键词等,以完成第一检索信息的向量化。

在上述深度学习单元20中,上述基于lstm(longshort-termmemory,长短期记忆网络)模型训练得到的第一推荐模型,是指第一推荐模型通过lstm模型训练而得,具体的训练过程为:①将历史的客户检索信息通过上述第一语料字典形成多个词向量矩阵,以及将客户购买的产品的产品信息通过第一语料字典形成对应的多个词向量矩阵,形成得到的词向量矩阵的集合,其中,每一位客户的检索信息对应的词向量矩阵与该客户购买的产品的产品信息对应的词向量矩阵相互关联;②将词向量矩阵的集合分成训练集和测试集;③将测试集的样本数据输入到lstm模型中进行训练,然后将测试集对训练后的lstm模型进行验证,如果验证通过,则得到上述的第一推荐模型。上述训练的过程属于监督训练,即历史的客户检索信息和客户购买的产品信息是带有关联标记的信息,训练出的第一推荐模型,当输入客户检索信息的第一词向量矩阵后,会输出一个关于产品信息对应的第一表示层向量。

在上述相似度计算单元30中,因为上述第一推荐模型中输出的第一表示层向量是推算出来的,所以需要计算与训练好的对应产品(例如保险产品)的产品表示层向量矩阵中的每一个表示层向量的相似度,寻找相似度最高的第二表示层向量,相似度的计算可以使用欧几里得距离(euclediandistance)、曼哈顿距离(manhattandistance)、明可夫斯基距离(minkowskidistance)或者余弦相似度中一种算法进行计算。本实施例中,具体的相似度计算公式如下:

其中,yq为检索信息的表示层向量,yd为产品信息的表示层向量,td/tq为对应句子的长度,r为相似度。在其它的实施例中,无论有没有与第一表示层向量相同的第二表示层向量,都会进行上述的相似度计算,并将计算结果进行由高到低的排名。

在上述推荐单元40中,因为上述第二表示层向量与第一推荐模型输出的第一表示层向量的相似度最高,所以,第二表示层向量对应的产品是最适合上述客户购买的产品,因此将该第二表示层向量对应的产品输出,作为推荐给新客户的产品。在其它实施例中,还可以将与第一表示层向量相似度较高的几个第二表示层向量选取出来,并将各第二表示层向量对应的产品输出,按照其相似度由高到低的顺序,给出不同购买强度的建议。比如,输入的第一检索信息时“儿童、保险、意外”,那么上述第一推荐模型输出的第一表示层向量与预设的产品表示层向量矩阵中的一个第二表示层向量最接近,该第二表示层向量对应的保险产品为儿童意外保险,而与上述“儿童、保险、意外”对应的第一表示层向量相似度略低一点的第二表层向量对应的儿童医疗保险同样会形成推荐的保险产品推出,以提高客户的选择性。

参照图3,在一个实施例中,上述产品推荐装置还包括:

记录单元401,用于记录所述客户购买的产品,以及所述第一检索信息;

向量化单元402,用于将所述客户购买的产品的第一产品信息进行向量化得第一产品向量矩阵;

关联存储单元403,用于将所述第一检索信息对应的第一词向量矩阵和用户购买的产品的第一产品信息对应的第一产品向量矩阵关联地保存到指定的数据库中;

训练单元404,用于当所述数据库中的数据量达到预设的阈值,利用数据库中的全部第一产品向量矩阵和第一词向量矩阵对所述第一推荐模型进行继续训练,得到新的第一推荐模型。

在上述记录单元401、向量化单元402、关联存储单元403和训练单元404中,上述产品推荐装置虽然给客户推荐了产品,但是客户并不一定会购买推荐的产品,所以记录该客户购买的产品,将客户购买的产品的产品信息向量化得到第一产品向量矩阵,然后将第一产品向量矩阵与第一词向量矩阵(客户的第一检索信息对应的向量矩阵)关联存储到指定的数据库中,以便后期作为训练样本使用。上述指定数据量是指存储上述第一产品向量矩阵与第一词向量矩阵的总的数据量。当数据量达到指定阈值,则说明样本数量达到要求,然后对上述的第一推荐模型进行训练,使用数据库中的样本数据继续对第一推荐模型进行训练,得到新的第一推荐模型,可以提高上述第一推荐模型的准确性。其训练方法与上述训练第一推荐模型的方法相同,在此不在赘述。本实施例中,通过不断地优化第一推荐模型,使得推荐结果更加准确。

参照图4,在另一个实施例中,上述产品推荐装置还包括:

关联单元411,用于将所述客户的信息与所述第一词向量矩阵关联地存储到客户数据库中,其中,客户的信息包括指定的联系方式;

计算单元412,用于将新的产品信息向量化得到第二产品向量矩阵,并输入到基于lstm模型训练得到的反向推荐模型中,以输出对应第二产品特征向量矩阵的第三表示层向量,该第三表示层向量是对应客户检索信息的向量;

查找单元413,用于到所述客户数据库中查找与所述第三表示层向量相似度达到指定要求的第一词向量矩阵;

提取单元414,用于将查找到的达到要求的第一词向量矩阵对应的客户的信息提取出来;

反推荐单元415,用于根据提取出的用户的联系方式将所述新的产品推荐给客户。

在上述关联单元411中,上述指定的联系方式一般包括手机号码、邮箱等无需添加好友,既可以接收他人发送的消息的联系方式,比如,通过手机号码可以直接发送短信给客户,邮箱同样如此。将客户的信息与第一词向量关联,是为了可以通过词向量反向查找到客户,第一词向量矩阵与客户的信息是一对一的映射关系。

在上述计算单元412中,上述基于lstm模型训练得到的反向推荐模型是指通过lstm模型训练而得,具体的训练过程为:①将历史的客户检索信息和客户购买的产品信息通过上述的第一语料字典进行向量化,并得到对应的词向量矩阵的集合;②将该词向量矩阵的集合分成训练集和测试集;③将测试集的样本数据输入到lstm模型中进行训练,然后将测试集对训练后的lstm模型进行验证,如果验证通过,则得到上述的反向推荐模型。上述训练的过程属于监督训练,即历史的客户检索信息和客户购买的产品信息是带有关联标记的信息,训练出的反向推荐模型,当输入产品信息的第二产品向量矩阵到反向推荐模型后,反向推荐模型会输出一个与客户检索信息对应的第五表示层向量。

在上述查找单元413中,即为将第三表示层向量分别与客户数据库中的各第一词向量矩阵进行像似度计算,然后将与第三表示层向量相似度达到指定要求的第一词向量矩阵提取出来的过程。上述指定要求是指与第三表示层向量相似度达到指定阈值的第一词向量矩阵,其可能是一个,也可能是多个。本实施例中,上述指定阈值会适当设定,以便于查找到大量的客户群体,如只查找一个相似度最高的,显然不符合查找客户以推荐产品的初衷。

在上述提取单元414和反推荐单元中,上述提取出的第一词向量矩阵是与反向推荐模型输出的第三表示层向量相似度较高的词向量矩阵,所以其对应的客户应该具有相对较高的购买欲望,以及相应的购买能力,所以将新的产品发送给对应的客户,推荐转销售的效率更高。

参照图5,在一个实时中,上述产品推荐装置还包括:

抓取单元101,用于抓取指定网站上的全部产品的相关信息,形成各产品对应的产品信息;

保留单元102,用于将各产品信息中重复出现的字提取出来,每一个重复的字只保留一个;

向量化单元103,用于将剩余的字输入到dssm模型中计算,得出每一个字的词向量矩阵,以得到所述第一语料字典,所述剩余的字为所述产品信息中没有重复出现的字,以及每一个重复的字只保留一个后的字的集合。

在上述抓取单元101中,上述指定网站一般为售卖上述产品的网站,而该网站上售卖的产品的类型近似,比如,售卖产品均为保险产品,但是保险的种类各不相同,如人身意外险产品、儿童医疗保险产品、重大疾病保险产品等。网站上会对其售卖的产品进行介绍,该介绍既可以作为产品信息。

在上述保留单元102中,因为产品的类型近似,所以其产品信息中会重复出现相同的字,因此需要将相同的字提取出来,并将各重复出现的字,分别保留一个即可,将其它的删除掉,防止后期对同一个重复的字进行多次的向量化工作。

在上述向量化单元103中,上述剩余的字即为没有重复出现的字,以及每一个重复的字只保留一个后的字的集合。将该集合内的文字输入到dssm模型中,通过dssm模型计算出文字的词向量,然后将文字及其对应的词向量放入到一起,即形成上述第一语料字典。本实施例中,因为提炼出的字的集合是网站内所有的产品介绍中出现过的字,并将重复的字只保留一个的字的集合,所以,既可以满足字的向量化使用,也可以降低第一语料字典的形成难度和工作量。

参照图6,在一个实施例中,上述产品推荐装置还包括:

判断单元421,用于获取客户购买的产品,并判断该产品与推荐的产品是否相同;

计数单元422,用于若客户购买的产品与推荐的产品不相同,则在购买不同产品的计数的基础上加一,得到第一计数;若客户购买的产品与推荐的产品相同,则在购买相同产品的计数的基础上加一,得到的第二计数

比较单元423,用于在指定时间长度的时间节点处,使用第一计数比上第二计数,若比值大于预设阈值,则停用所述第一推荐模型。

本实施例中,客户购买产品后会进行电子存档,可以从电子存档中自动获取客户的购买情况,即了解客户是否购买了与推荐相同的产品。也就是说,虽然推荐给客户购买建议,但是客户并不一定会根据推荐来购买产品。记录每一次客户的购买情况,并进行计数,当购买与推荐不同的产品时,计数一次,购买与推荐相同的产品时计数一次,即得到上述的第一计数和第二计数。然后计算第一计数比上第二计数的比值,如果比值较大,说明推荐系统的推荐效果较差,比如,比值大于1,即不安推荐系统购买的次数大于按照推荐购买的次数,显然,上述推荐模型并不理想,所以停止使用。在其它实施例中,还可以记录在指定时间长度内的全部客户购买的第三计数,然后将第一计数或第二计数比上第三计数,根据比值结果,判断是否需要停用上述第一推荐模型。上述的指定时间长度是指一个季度或者一个月等较长时间,以便于得到较多的数据样本,得出的比值的可用性更高。

参照图7,在一个实施例中,上述推荐单元40,包括:

输出模块41,用于将所述第二表示层向量对应的产品输出;

查找模块42,用于根据输出的产品,查找所述输出的介绍信息、产品的售卖数据以及购买所述输出的产品的客户分布;

推荐模块43,用于将所述输出的产品的介绍信息、售卖数据和客户分布形成推荐信息给所述客户。

上述的介绍信息即为产品的相关介绍;上述的售卖数据一般包括该产品售卖的数量等;上述客户分布是指购买该产品的客户的年龄分布、区域分布等,即通过该客户分布,可以知道购买该产品的客户的情况,如,儿童人身保险等,其购买的客户中,20-30岁的女性客户较多,而50-70岁的老人客户略少,男性客户更少等,可以使客户了解购买该保险产品的人群是什么样的人群,以便于客户结合自身选择是否购买。又比如,人身意外险,其购买的客户在北方冬天的时候较多,其与北方天寒地冻容易滑倒相关,得到此地域分布和时间分布,也有利于帮助新客户选择是否购买等。将上述的保险产品的介绍信息、售卖数据和客户分布一起呈现给新客户,方便新客户的进行客观的判断,也减少产品的售卖人员的工作量。

参照图8,在一个实施例中,上述推荐模块43,包括:

可视化子模块431,用于将所述售卖数据和所述客户分布制作成可视化附图;

封装子模块432,用于将所述可视化附图以及所述输出的产品的介绍信息封装到一篇文档中形成所述推荐信息给所述客户。

在上述可视化子模块431和封装子模块432中,将售卖数据和客户分布制成可视化附图,更方便新客户查看,比如客户分布中的地域分布是体现在一张地图上,使客户可以一目了然地知道地域差异等。而售卖数据可以以曲线的形式体现,如从产品开始售卖开始至今的售卖走势曲线,或者每个月的售卖量等,大大地提高客户查看推荐信息的速度。

本申请实施例中,上述产品可以包括保险产品、金融产品等虚拟的产品,也可以是其它实物产品等。

本申请实施例的产品推荐装置,将历史数据中的客户检索信息和其购买的产品的产品信息向量化,然后输入到lstm模型中进行训练,以得到第一推荐模型,然后利用第一推荐模型计算客户的检索词对应的产品,以推荐给客户合适的产品,既可以有效给客户推荐产品,又不会将热门产品过度推荐。

参照图9,本申请实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图9所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储客户信息、第一推荐模型、语料字典等。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种产品推荐方法。

上述处理器执行上述产品推荐方法的步骤为:获取客户的第一检索信息,在预设的第一语料字典中查找所述第一检索信息中每一个字对应的词向量,得到对应所述第一检索信息的第一词向量矩阵;将所述第一词向量矩阵输入到基于lstm模型训练得到的第一推荐模型中学习,输出对应所述第一词向量矩阵的产品信息的第一表示层向量;到训练好的对应产品的产品表示层向量矩阵中查找与所述第一表示层向量相似度最高的第二表示层向量;将所述第二表示层向量对应的产品输出,并推荐给所述客户。

在一个实施例中,上述将所述第二表示层向量对应的产品输出,并推荐给所述客户的步骤之后,包括:记录所述客户购买的产品,以及所述第一检索信息;将所述客户购买的产品的第一产品信息进行向量化得第一产品向量矩阵;将所述第一检索信息对应的第一词向量矩阵和用户购买的产品的第一产品信息对应的第一产品向量矩阵关联地保存到指定的数据库中;当所述数据库中的数据量达到预设的阈值,利用数据库中的全部第一产品向量矩阵和第一词向量矩阵对所述第一推荐模型进行继续训练,得到新的第一推荐模型。

在一个实施例中,上述将所述第二表示层向量对应的产品输出,并推荐给所述客户的步骤之后,包括:将所述客户的信息与所述第一词向量矩阵关联地存储到客户数据库中,其中,客户的信息包括指定的联系方式;将新的产品信息向量化得到第二产品向量矩阵,并输入到基于lstm模型训练得到的反向推荐模型中,以输出对应第二产品特征向量矩阵的第三表示层向量,该第三表示层向量是对应客户检索信息的向量;到所述客户数据库中查找与所述第三表示层向量相似度达到指定要求的第一词向量矩阵;将查找到的达到要求的第一词向量矩阵对应的客户的信息提取出来;根据提取出的用户的联系方式将所述新的产品推荐给客户。

在一个实施例中,上述获取客户的第一检索信息,在预设的第一语料字典中查找所述第一检索信息中每一个字对应的词向量,得到对应所述第一检索信息的第一词向量矩阵的步骤之前,包括:抓取指定网站上的全部产品的相关信息,形成各产品对应的产品信息;将各产品信息中重复出现的字提取出来,每一个重复的字只保留一个;将剩余的字输入到dssm模型中计算,得出每一个字的词向量矩阵,以得到所述第一语料字典,所述剩余的字为所述产品信息中没有重复出现的字,以及每一个重复的字只保留一个后的字的集合。

在一个实施例中,上述将所述第二表示层向量对应的产品输出,并推荐给所述客户的步骤之后,包括:获取客户购买的产品,并判断该产品与推荐的产品是否相同;若不相同,则在购买不同产品的计数的基础上加一,得到第一计数;若相同,则在购买相同产品的计数的基础上加一,得到的第二计数;在指定时间长度的时间节点处,使用第一计数比上第二计数,若比值大于预设阈值,则停用所述第一推荐模型。

在一个实施例中,上述将所述第二表示层向量对应的产品输出,并推荐给所述客户的步骤,包括:将所述第二表示层向量对应的产品输出;根据输出的产品,查找所述输出的介绍信息、产品的售卖数据以及购买该产品的客户分布;将所述输出的产品的介绍信息、售卖数据和客户分布形成推荐信息给所述客户。

在一个实施例中,上述将所述输出的产品的介绍信息、售卖数据和客户分布形成推荐信息给所述客户的步骤,包括:将所述售卖数据和所述客户分布制作成可视化附图;将所述可视化附图以及所述输出的产品的介绍信息封装到一篇文档中形成所述推荐信息给所述客户。

本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定。

本申请实施例的计算机设备,将历史数据中的客户检索信息和其购买的产品的产品信息向量化,然后输入到lstm模型中进行训练,以得到第一推荐模型,然后利用第一推荐模型计算客户的检索词对应的产品,以推荐给客户合适的产品,既可以有效给客户推荐产品,又不会将热门产品过度推荐。

本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现一种产品推荐方法,具体为:获取客户的第一检索信息,在预设的第一语料字典中查找所述第一检索信息中每一个字对应的词向量,得到对应所述第一检索信息的第一词向量矩阵;将所述第一词向量矩阵输入到基于lstm模型训练得到的第一推荐模型中学习,输出对应所述第一词向量矩阵的产品信息的第一表示层向量;到训练好的对应产品的产品表示层向量矩阵中查找与所述第一表示层向量相似度最高的第二表示层向量;将所述第二表示层向量对应的产品输出,并推荐给所述客户。

上述产品推荐方法,将历史数据中的客户检索信息和其购买的产品的产品信息向量化,然后输入到lstm模型中进行训练,以得到第一推荐模型,然后利用第一推荐模型计算客户的检索词对应的产品,以推荐给客户合适的产品,既可以有效给客户推荐产品,又不会将热门产品过度推荐。

在一个实施例中,上述处理器将所述第二表示层向量对应的产品输出,并推荐给所述客户的步骤之后,包括:记录所述客户购买的产品,以及所述第一检索信息;将所述客户购买的产品的第一产品信息进行向量化得第一产品向量矩阵;将所述第一检索信息对应的第一词向量矩阵和用户购买的产品的第一产品信息对应的第一产品向量矩阵关联地保存到指定的数据库中;当所述数据库中的数据量达到预设的阈值,利用数据库中的全部第一产品向量矩阵和第一词向量矩阵对所述第一推荐模型进行继续训练,得到新的第一推荐模型。

在一个实施例中,上述处理器将所述第二表示层向量对应的产品输出,并推荐给所述客户的步骤之后,包括:将所述客户的信息与所述第一词向量矩阵关联地存储到客户数据库中,其中,客户的信息包括指定的联系方式;将新的产品信息向量化得到第二产品向量矩阵,并输入到基于lstm模型训练得到的反向推荐模型中,以输出对应第二产品特征向量矩阵的第三表示层向量,该第三表示层向量是对应客户检索信息的向量;到所述客户数据库中查找与所述第三表示层向量相似度达到指定要求的第一词向量矩阵;将查找到的达到要求的第一词向量矩阵对应的客户的信息提取出来;根据提取出的用户的联系方式将所述新的产品推荐给客户。

在一个实施例中,上述处理器获取客户的第一检索信息,在预设的第一语料字典中查找所述第一检索信息中每一个字对应的词向量,得到对应所述第一检索信息的第一词向量矩阵的步骤之前,包括:抓取指定网站上的全部产品的相关信息,形成各产品对应的产品信息;将各产品信息中重复出现的字提取出来,每一个重复的字只保留一个;将剩余的字输入到dssm模型中计算,得出每一个字的词向量矩阵,以得到所述第一语料字典,所述剩余的字为所述产品信息中没有重复出现的字,以及每一个重复的字只保留一个后的字的集合。

在一个实施例中,上述处理器将所述第二表示层向量对应的产品输出,并推荐给所述客户的步骤之后,包括:获取客户购买的产品,并判断该产品与推荐的产品是否相同;若不相同,则在购买不同产品的计数的基础上加一,得到第一计数;若相同,则在购买相同产品的计数的基础上加一,得到的第二计数;在指定时间长度的时间节点处,使用第一计数比上第二计数,若比值大于预设阈值,则停用所述第一推荐模型。

在一个实施例中,上述处理器将所述第二表示层向量对应的产品输出,并推荐给所述客户的步骤,包括:将所述第二表示层向量对应的产品输出;根据输出的产品,查找所述输出的介绍信息、产品的售卖数据以及购买所述输出的产品的客户分布;将所述输出的产品的介绍信息、售卖数据和客户分布形成推荐信息给所述客户。

在一个实施例中,上述处理器将所述输出的产品的介绍信息、售卖数据和客户分布形成推荐信息给所述客户的步骤,包括:将所述售卖数据和所述客户分布制作成可视化附图;将所述可视化附图以及所述输出的产品的介绍信息封装到一篇文档中形成所述推荐信息给所述客户。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双速据率sdram(ssrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

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