充电站推荐模型训练方法、装置、设备及存储介质与流程

文档序号:32048105发布日期:2022-11-03 07:57阅读:35来源:国知局
1.本技术涉及车辆技术,尤其涉及一种充电站推荐模型训练方法、装置、设备及存储介质。
背景技术
::2.作为全球碳减排、碳中和的重要抓手,新能源汽车的高速发展在交通领域优化能源结构,降低石化能源的消耗做出极其重要的贡献。3.新能源汽车的电量主要来源于市电电网。许多的城市为了方便人们日常出行,开始加大力度的建设公共的新能源汽车充电站。用户在想要使用充电站时,通过智能终端查询可以进行充电的新能源充电站,此时可以进行新能源汽车充电站的推荐。目前国内对于新能源汽车充电站推荐方法较为简单,往往是按照需要充电的新能源汽车到目标充电站的距离从近到远进行排序。但是影响用户选择充电站的因素除了距离,还有例如充电站的运营商和充电价格等。4.现有技术没有考虑影响用户选择充电站的不同因素,没有针对用户的不同需求进行推荐,并且忽略了用户的历史充电行为中的有用信息。技术实现要素:5.本技术提供一种充电站推荐模型训练方法、装置、设备及存储介质,用以解决现有技术因为不考虑用户历史信息和充电站辅助信息的充电站推荐方法,导致的推荐充电站不符合用户需求的问题。6.一方面,本技术提供一种充电站推荐模型训练方法,包括:7.获取充电站有向图以及充电站辅助信息有向图;8.通过图神经网络node2vec算法,分别对所述充电站有向图以及所述充电站辅助信息有向图进行采样,获得训练数据,所述训练数据包括充电站序列和充电站辅助信息序列;9.根据所述训练数据,对充电站推荐模型进行训练,得到训练完成的充电站推荐模型。10.可选地,所述获取充电站有向图以及充电站辅助信息有向图,包括:11.获取多个用户的充电信息,每个所述充电信息包括所述用户在不同充电站的充电顺序以及每个所述充电站对应的充电站辅助信息;12.根据每个用户在不同充电站的充电顺序,得到所述充电站有向图;13.根据每个充电站对应的充电站辅助信息及所述充电顺序,得到所述充电站辅助信息有向图;14.其中,所述充电站有向图和所述充电站辅助信息有向图的边的权重是根据充电次数决定的。15.可选地,所述通过图神经网络node2vec算法,分别对所述充电站有向图以及所述充电站辅助信息有向图进行采样,获得训练数据,包括:16.针对所述充电站有向图或所述充电站辅助信息有向图,确定路径长度k;17.随机选择有向图中的任一节点为初始节点,执行节点选择流程以获取下一节点,并重复执行节点选择流程,直至达到路径长度k,得到充电站序列或充电站辅助信息序列;18.其中,所述节点选择流程具体为:根据有向图的同质结构性参数和有向图的边的权重,通过图神经网络node2vec算法,选择下一节点。19.可选地,所述根据所述训练数据,对充电站推荐模型进行训练,得到训练完成的充电站推荐模型,包括:20.根据所述充电站序列,对所述充电站推荐模型进行训练,得到第一隐向量矩阵;21.根据所述充电站辅助信息序列,对所述充电站推荐模型进行训练,得到第二隐向量矩阵;22.根据所述第一隐向量矩阵和所述第二隐向量矩阵的融合处理结果,得到训练完成的充电站推荐模型。23.可选地,所述根据所述充电站序列,对所述充电站推荐模型进行训练,得到第一隐向量矩阵,包括:24.根据所述充电站序列,获取中心输入输出样本对,所述中心输入输出样本对为所述充电站序列中相邻的两个节点;25.初始化隐向量矩阵,根据所述中心输入输出样本对的编码向量,提取所述隐向量矩阵的第一隐向量和第二隐向量,所述第一隐向量为中心输入对应的隐向量,所述第二隐向量为除了中心输入以外输入对应的隐向量;26.根据所述第一隐向量和所述第二隐向量,得到所述第一隐向量矩阵;27.其中,所述第二隐向量矩阵与所述第一隐向量矩阵获取方式相同。28.可选地,所述根据所述第一隐向量和所述第二隐向量,得到所述第一隐向量矩阵,包括:29.根据所述第一隐向量和所述第二隐向量,获得相似度矩阵;30.根据相似度矩阵和激活函数获得概率分布矩阵;31.根据损失函数和所述概率分布矩阵更新所述隐向量矩阵,直至损失函数的损失值达到预设值。32.可选地,所述充电站推荐模型为skip-gram模型。33.另一方面,本技术提供一种充电站推荐方法,包括:34.获取终端设备发送的充电请求;35.获取所述终端设备对应的用户在预设时间内使用过的充电站;36.将所述充电站输入至充电站推荐模型,得到所述充电站推荐模型输出的推荐充电站,其中,所述充电站推荐模型采用如权利要求1至7任一项所述的方法训练得到的。37.第三方面,本技术提供一种充电站推荐模型训练装置,包括:38.获取模块,用于获取充电站有向图以及充电站辅助信息有向图;39.采样模块,用于通过图神经网络node2vec算法,分别对所述充电站有向图以及所述充电站辅助信息有向图进行采样,获得训练数据,所述训练数据包括充电站序列和充电站辅助信息序列;40.训练模块,用于根据所述训练数据,对充电站推荐模型进行训练,得到训练完成的充电站推荐模型。41.可选地,获取模块还具体用于:42.获取多个用户的充电信息,每个所述充电信息包括所述用户在不同充电站的充电顺序以及每个所述充电站对应的充电站辅助信息;43.根据每个用户在不同充电站的充电顺序,得到所述充电站有向图;44.根据每个充电站对应的充电站辅助信息及所述充电顺序,得到所述充电站辅助信息有向图;45.其中,所述充电站有向图和所述充电站辅助信息有向图的边的权重是根据充电次数决定的。46.可选地,采样模块还具体用于:47.针对所述充电站有向图或所述充电站辅助信息有向图,确定路径长度k;48.随机选择有向图中的任一节点为初始节点,执行节点选择流程以获取下一节点,并重复执行节点选择流程,直至达到路径长度k,得到充电站序列或充电站辅助信息序列;49.其中,所述节点选择流程具体为:根据有向图的同质结构性参数和有向图的边的权重,通过图神经网络node2vec算法,选择下一节点。50.可选地,训练模块还具体用于:51.根据所述充电站序列,对所述充电站推荐模型进行训练,得到第一隐向量矩阵;52.根据所述充电站辅助信息序列,对所述充电站推荐模型进行训练,得到第二隐向量矩阵;53.根据所述第一隐向量矩阵和所述第二隐向量矩阵的融合处理结果,得到训练完成的充电站推荐模型。54.可选地,训练模块还具体用于:55.根据所述充电站序列,获取中心输入输出样本对,所述中心输入输出样本对为所述充电站序列中相邻的两个节点;56.初始化隐向量矩阵,根据所述中心输入输出样本对的编码向量,提取所述隐向量矩阵的第一隐向量和第二隐向量,所述第一隐向量为中心输入对应的隐向量,所述第二隐向量为除了中心输入以外输入对应的隐向量;57.根据所述第一隐向量和所述第二隐向量,得到所述第一隐向量矩阵;58.其中,所述第二隐向量矩阵与所述第一隐向量矩阵获取方式相同。59.可选地,训练模块还具体用于:60.根据所述第一隐向量和所述第二隐向量,获得相似度矩阵;61.根据相似度矩阵和激活函数获得概率分布矩阵;62.根据损失函数和所述概率分布矩阵更新所述隐向量矩阵,直至损失函数的损失值达到预设值。63.可选地,训练模块中,所述充电站推荐模型为skip-gram模型。64.本技术的第四方面,本技术提供一种充电站推荐装置,包括:65.接收模块,用于获取终端设备发送的充电请求;66.获取模块,用于获取所述终端设备对应的用户在预设时间内使用过的充电站;67.输出模块,用于将所述充电站输入至充电站推荐模型,得到所述充电站推荐模型输出的推荐充电站,其中,所述充电站推荐模型采用如上述方法训练得到的。68.本技术的第五方面,提供了一种电子设备,包括:69.处理器和存储器;70.存储器存储计算机执行指令;71.处理器执行存储器存储的计算机执行指令,使得电子设备执行第一方面中任一项的方法。72.本技术的第六方面,提供了一种电子设备,包括:73.处理器和存储器;74.存储器存储计算机执行指令;75.处理器执行存储器存储的计算机执行指令,使得电子设备执行第二方面中任一项的方法。76.本技术的第七方面,提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现如第一方面任一项的硬件外设的驱动程序的确定方法。77.本技术的第八方面,提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现如第二方面任一项的硬件外设的驱动程序的确定方法。78.本实施例提供了一种充电站推荐模型训练方法、装置、设备及存储介质,该方法通过获取充电站有向图以及充电站辅助信息有向图,通过图神经网络node2vec算法,分别对充电站有向图以及充电站辅助信息有向图进行采样,获得训练数据;根据训练数据,对充电站推荐模型进行训练,得到训练完成的充电站推荐模型。该方法通过使用图神经网络node2vec算法采样并建立充电站推荐模型并训练,获得了考虑用户历史信息和充电站辅助信息的充电站推荐模型,解决了现有技术不能充分利用历史信息并针对用户不同需求的推荐充电站的问题。附图说明79.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。80.图1是本技术提供的充电站推荐方法的具体的应用场景图;81.图2为本技术实施例提供的充电站推荐模型训练方法流程图一;82.图3a为本技术实施例提供的充电站推荐模型训练方法流程图二;83.图3b是本技术实施例提供的node2vec算法采样示例图;84.图4a为本技术实施例提供的充电站推荐模型训练方法流程图三;85.图4b为本技术实施例提供的skip-gram模型网络结构图;86.图5为本技术实施例提供的充电站推荐方法流程图一;87.图6为本技术实施例提供的一种充电站推荐模型训练装置的结构示意图;88.图7为本技术实施例提供的一种充电站推荐装置的结构示意图;89.图8为本技术实施例提供的充电站推荐模型训练设备的硬件结构图;90.图9为本技术实施例提供的充电站推荐设备的硬件结构图。91.通过上述附图,已示出本技术明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本技术构思的范围,而是通过参考特定实施例为本领域技术人员说明本技术的概念。具体实施方式92.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。93.图1是本技术提供的充电站推荐方法的具体的应用场景图。如图1所示,该应用场景包括:智能终端101和服务器102。示例性的,用户在需要给新能源汽车充电时,使用智能终端101搜索新能源充电站,智能终端101向服务器102发出请求,请求服务器102给出推荐的新能源充电站。服务器102根据新能源汽车的位置,为其推送了距离新能源汽车最近的三个充电站。这里服务器102只考虑了新能源汽车与目标充电站之间的距离,没有考虑到用户的选择受到不同运营商,充电功率以及价格的等因素的影响,导致用户可能不会选择推荐的三个充电站。94.本技术提供了一种充电站推荐模型训练方法,通过图神经网络node2vec算法对充电站有向图以及充电站辅助信息有向图进行采样,获得训练数据,并根据训练数据,对充电站推荐模型进行训练,得到训练完成的充电站推荐模型。解决了现有技术因为不考虑用户历史信息和充电站辅助信息的充电站推荐方法,导致的推荐充电站不符合用户需求的问题。95.本技术提供的一种充电站推荐模型训练方法,旨在解决现有技术的如上技术问题。96.下面以具体地实施例对本技术的技术方案以及本技术的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本技术的实施例进行描述。97.图2为本技术实施例提供的充电站推荐模型训练方法流程图一。如图2所示,本实施例的方法,包括:98.s201、获取充电站有向图以及充电站辅助信息有向图;99.本实施例中,充电站是指用户历史充过电的不同充电站,有向图是一副具有方向性的图,是由一组顶点和一组有方向的边组成的,每条方向的边都连着一对有序的顶点。有向图中的边表示权重,例如,在充电站有向图中,边的权重表示为充电次数,充电次数越多,权重越大。100.充电站有向图是指将充电站分散表示成节点,按照充电顺序用有方向的边连接起来。充电站辅助信息包括充电站的运营商,充电价格,充电功率等信息。充电站辅助信息有向图是指将充电站辅助信息中的一项如运营商分散表示成节点,按照充电顺序用有方向的线段连接起来。如果充电站辅助信息包括多种信息,要分别建立对应的有向图。101.获取充电站有向图以及充电站辅助信息有向图,可以由服务器查询用户历史充电数据,首先获取用户在不同充电站的充电序列,经过处理,获取充电站的运营商,充电价格,充电功率等信息,再按照时间顺序将以上信息表示成独立的有向图。102.s202、通过图神经网络node2vec算法,分别对充电站有向图以及充电站辅助信息有向图进行采样,获得训练数据,训练数据包括充电站序列和充电站辅助信息序列;103.node2vec算法是一种用于网络中可扩展特征学习的半监督算法框架。node2vec算法来源于word2vec算法,一种自然语言处理技术,将语料样本中的每一个词,都通过向量的形式进行表示,然后建立浅而双层的神经网络,用来训练以重新建构语言学中的词文本,训练完成之后,word2vec模型可用来映射每个词到一个向量,可用来表示词对词之间的关系。node2vec算法是依据word2vec思想提出的一种网络表示方法,用以解决网络结构高维、稀疏性所带来的复杂问题,其核心就是引入潜在变量建模全局关系结构模式,将网络信息转化为低维、稠密的实数向量。不同于deepwalk的均匀随机游走,node2vec算法引入了跳转概率参数p和参数q来控制随机序列生成过程中的广度优先采样和深度优先采样策略。单纯的深度优先或单纯的广度优先都只是网络中的极端现象,可以在广度优先和深度优先之间可以找到一种平衡达到最优。node2vec算法提出通过半监督网络形式学习并获得最优的参数p值和q值,使广度优先和深度优先达到一个较好的平衡,均衡网络的局部信息和全局信息。104.本实施例中,使用node2vec算法对充电站有向图以及充电站辅助信息有向图进行采样,即为随机选择有向图中的节点,考虑有向图中的边的权重和跳转概率参数p和参数q,选择下一个节点,最后获得训练数据。105.s203、根据训练数据,对充电站推荐模型进行训练,得到训练完成的充电站推荐模型。106.本实施例中,根据训练数据,对充电站推荐模型进行训练,是将训练数据输入到模型中,将训练数据作为标准样本,不断优化模型中的隐向量矩阵,直至目标函数达到预设值才结束优化,得到满意的,每个充电站对应的隐向量。107.可选地,充电站推荐模型为skip-gram模型。108.word2vec算法由两个模型共同组成,一个是根据词在文本内部的前后语句关系信息预测中间词的cbow(continuousbag‑‑of-wordsmodel,连续词袋模型)模型,另一种是与前者相反,利用中间词来预测文本上下文的skip-gram(continuousskip-grammodel,连续跳字模型)模型。作为word2vec算法中的常用模型,skip-gram模型就是计算在给定单词的条件下,其他单词出现的概率。109.本实施例中,在使用skip-gram模型时,基本思想是求取中心样本和其他样本的相似度,并转换成概率。110.本实施例提供了一种充电站推荐模型训练方法,该方法通过获取充电站有向图以及充电站辅助信息有向图,通过图神经网络node2vec算法,分别对充电站有向图以及充电站辅助信息有向图进行采样,获得训练数据;根据训练数据,对充电站推荐模型进行训练,得到训练完成的充电站推荐模型。该方法通过使用图神经网络node2vec算法采样并建立充电站推荐模型并训练,获得了考虑用户历史信息和充电站辅助信息的充电站推荐模型,解决了现有技术不能充分利用历史信息并针对用户不同需求的推荐充电站的问题。111.图3a为本技术实施例提供的充电站推荐模型训练方法流程图二,图3b是本技术实施例提供的node2vec算法采样示例图。本实施例在上述图2实施例的基础上,详细给出获得训练数据的实现方式。如图3a和图3b所示,本实施例的方法,包括:112.s301、获取多个用户的充电信息,每个充电信息包括用户在不同充电站的充电顺序以及每个充电站对应的充电站辅助信息;113.本实施例中,用户的充电信息包括用户过去一段时间内在不同充电站的充电顺序以及每个充电站对应的充电站辅助信息。例如一用户在一个月内在某地先后在充电站a,充电站b和充电站c充过电,则充电信息包括充电站a,充电站b和充电站c,充电站辅助信息包括充电站a,充电站b和充电站c对应的运营商,充电价格,充电功率等信息。这些信息按照时间顺序排列。获取多个用户的充电信息,即服务器或终端设备查询数据库获得用户历史充电信息。114.s302、根据每个用户在不同充电站的充电顺序,得到充电站有向图;115.本实施例中,服务器或终端设备据每个用户在不同充电站的充电顺序,将充电站分散表示成节点,按照充电顺序用有方向的边连接起来。如图3b所示,如果用户在一个月内在某地先后在充电站c,充电站b和充电站a充过电,则在画面中有三个节点分别代表充电站c,充电站b和充电站a,并且有向边从节点c指向节点b,并从节点b指向节点a。116.s303、根据每个充电站对应的充电站辅助信息及充电顺序,得到充电站辅助信息有向图;117.本实施例中,服务器或终端设备据每个用户在不同充电站的充电顺序,分别将充电站对应的运营商,充电价格,充电功率等信息,分散表示成节点,按照充电顺序用有方向的边连接起来。118.s304、针对充电站有向图或充电站辅助信息有向图,确定路径长度k;119.本实施例中,路径长度k是采样后充电站序列或充电站辅助信息序列的长度,可以自行设定。120.s305、随机选择有向图中的任一节点为初始节点,根据有向图的同质结构性参数和有向图的边的权重,通过图神经网络node2vec算法,选择下一节点,并重复执行节点选择流程,直至达到路径长度k,得到充电站序列或充电站辅助信息序列。121.本实施例中,同质结构性参数是指跳转概率参数p和参数q,可以事先自行设置。同质结构性是指同质性和结构相似性。其中网络的同质性指的是距离相近的节点的隐向量应尽量近似,结构相似性是指网络中的两个节点与周边节点的联系结构相似。参数p和参数q影响着随机序列生成过程中的广度优先采样和深度优先采样策略。深度优先遍历主要思路是从图中一个未访问的顶点开始,沿着一条路一直走到底,然后从这条路尽头的节点回退到上一个节点,再从另一条路开始走到底,不断递归重复此过程,直到所有的顶点都遍历完成。广度优先遍历,指的是从图的一个未遍历的节点出发,先遍历这个节点的相邻节点,再依次遍历每个相邻节点的相邻节点。当q小于1时,节点选择会更倾向于更深层次的访问,类似深度优先遍历;而当p小于1时,节点选择会更倾向于回溯,类似广度优先遍历。122.本实施例中,还同时将边的权重考虑到选择下一个节点的概率p计算之中,概率p公式为[0123][0124]其中z为归一化系数,wedge表示边的权重,α的取值如图3b所示,当上一个节点到下一个候选节点的距离为0时(即为回溯),α=1/p;当上个节点到下一个候选节点的距离为1时,α=1;当上个节点到下一个候选节点的距离为2时,α=1/q。[0125]采样的具体步骤如下:服务器或终端设备首先确定路径长度k,定义训练序列样本集;随机选择起始点充电站节点或者充电站辅助信息节点,并根据上述公式求得的概率选择一下节点,直到充电站序列或充电站辅助信息序列满足路径长度k;将充电站序列或充电站辅助信息序列加入到训练序列样本集之中;重复上一步骤,直到训练序列样本集的样本数量达到事先设定的阈值。[0126]本实施例提供了一种充电站推荐模型训练方法,该方法通过获取多个用户的充电信息;根据每个用户在不同充电站的充电顺序,得到充电站有向图根据每个用户在不同充电站的充电顺序,得到充电站有向图;根据每个充电站对应的充电站辅助信息及充电顺序,得到充电站辅助信息有向图;针对充电站有向图或充电站辅助信息有向图,确定路径长度k;随机选择有向图中的任一节点为初始节点,根据有向图的同质结构性参数和有向图的边的权重,通过图神经网络node2vec算法,选择下一节点,并重复执行节点选择流程,直至达到路径长度k,得到充电站序列或充电站辅助信息序列。该方法通过将充电信息和充电站辅助信息转换成有向图,并采用node2vec算法采样,使用参数,平衡了同质结构性以及边的权重,得到了较为科学的训练数据。[0127]图4a为本技术实施例提供的充电站推荐模型训练方法流程图三,图4b为本技术实施例提供的skip-gram模型网络结构图。本实施例在上述图2实施例的基础上,详细给出训练模型的具体过程。如图4a和图4b所示,本实施例的方法,包括:[0128]s401、根据充电站序列,获取中心输入输出样本对,中心输入输出样本对为充电站序列中相邻的两个节点;[0129]本实施例中,服务器或终端设备在上述实施例中获取的充电站序列中任意一个充电站作为中心输入,则中心输出为与之相邻的两个节点中的一个,如果中心输入是充电站序列的第一个或者最后一个,则中心输入输出样本对只有一个,若中心输入不是充电站序列的第一个或者最后一个,则中心输入输出样本对有两个。举例来说若充电站序列为充电站a—》充电站b—》充电站c,如果选择充电站b为中心输入,则中心输出可以为充电站a和充电站c,这样中心输入输出样本对是(充电站b,充电站a)和(充电站b,充电站c)。如果中心输入是充电站a,则中心输入输出样本只能是(充电站a,充电站b)。[0130]在skip-gram模型中,获取中心输入前后词的个数作为中心输出是可以设置的。这个参数即为窗口参数,本实施例中,此参数设置为1。[0131]s402、初始化隐向量矩阵,根据中心输入输出样本对的编码向量,提取隐向量矩阵的第一隐向量和第二隐向量,第一隐向量为中心输入对应的隐向量,第二隐向量为除了中心输入以外输入对应的隐向量;[0132]本实施例中,skip-gram模型如图4b所示是一个三层的浅层神经网络,从图中由左到右分别代表输入层、映射层以及输出层。数据按顺序从输入层进入,进入映射层的操作,最后通过输出层输出词出现的概率向量。进入输入层的必然是数据,即需要将中心输入输出样本对转化为数字,即进行编码。通常采用one-hot向量进行这一操作,获得的结果即为第一隐向量。[0133]服务器或终端设备训练skip-gram模型的目的即为获得每个充电站对应的一个向量,用以计算充电站之间的相似度。这个向量即为隐向量。所有充电站对应的隐向量合在一起即为隐向量矩阵。在初始搭建模型的时候,隐向量矩阵需要初始化。one-hot向量承担将自己对应充电站的隐向量从隐向量矩阵中提取出来的任务。为了计算充电站之间的相似度,求取除了中心输入以外输入对应的隐向量,即第二隐向量是必要的。[0134]在实际计算中,one-hot向量是一个稀疏的矩阵,不会进行矩阵乘法计算,矩阵的计算的结果实际上是矩阵对应的向量中值为1的索引,这样模型中的隐向量矩阵便成了一个“查找表”(lookuptable)。[0135]s403、根据第一隐向量和第二隐向量,获得相似度矩阵;[0136]本实施例中,相似度矩阵即为第一隐向量和第二隐向量的内积。本领域技术人员可以理解,本技术中的相似度矩阵可以通过求矩阵内积以外的方式获得。[0137]s404、根据相似度矩阵和激活函数获得概率分布矩阵;[0138]本实施例中,激活函数是softmax函数,即输出层是一个softmax回归分类器,它的每个结点将会输出一个0-1之间的值(概率),这些所有输出层神经元节点的概率之和为1。服务器或终端设备将相似度矩阵经过处理,输入softmax函数,即可得到概率分布矩阵,每一行对应一个充电站。即中心输入经过skip-gram模型,输出了预测相邻节点的概率。如图4b所示,输入w(t),则输出w(t-2)、w(t-1)、w(t+1)、w(t+2)四个充电站,图中窗口大小为2。[0139]s405、根据损失函数和概率分布矩阵更新隐向量矩阵,直至损失函数的损失值达到预设值,得到第一隐向量矩阵;[0140]本实施例中,第一隐向量矩阵为训练数据为充电站序列对应的隐向量矩阵。服务器或终端设备通过中心输入输出样本对作为标准,通过调整隐向量矩阵使损失函数的损失值达到预设值,即获得第一隐向量矩阵。[0141]s406、根据充电站辅助信息序列,对充电站推荐模型进行训练,使用与第一隐向量矩阵相同方式获取第二隐向量矩阵;[0142]本实施例中,第二隐向量矩阵是为训练数据为充电站辅助信息序列对应的隐向量矩阵。在获取第二隐向量矩阵时,服务器或终端设备应分别对充电站对应的运营商,充电价格,充电功率等信息建立skip-gram模型,进行训练。[0143]s407、根据第一隐向量矩阵和第二隐向量矩阵的融合处理结果,得到训练完成的充电站推荐模型。[0144]本实施例中,服务器或终端设备对第一隐向量矩阵和第二隐向量矩阵的融合处理,可以采用包括但不限于求和或者求平均值的方式进行。得到的隐向量矩阵即为同时考虑到用户历史使用充电站以及充电站对应的运营商,充电价格,充电功率等因素的权重矩阵。[0145]下面以一个具体的实施例,对本技术的技术方案进行详细说明。[0146]假设训练数据中一个充电序列为充电站a—》充电站b—》充电站c—》充电站d—》充电站e,首先选取中心输入充电站c,窗口参数设置为1,则中心输入输出样本对为(充电站c,充电站b)和(充电站c,充电站a)。假设用6个特征表示一个充电站,现在一共5个充电站,因此单个充电站的隐向量即为一个1*6的向量,本充电序列对应的隐向量矩阵为5*6的矩阵,该矩阵需要初始化。充电站c充电站在序列中是第三个,因此它对应的one-hot向量为[0,0,1,0,0],用one-hot向量从5*6的矩阵提取1*6的隐向量,再求取除充电站c以外的充电站对应的隐向量,此时该隐向量为4*6的矩阵,为了求两个矩阵的相似度,对此矩阵求转置,该隐向量为6*4的矩阵。求充电站c对应的隐向量与除了充电站c以外的隐向量的内积,得到相似度矩阵。再将该相似度矩阵输入softmax函数,即可得到概率分布矩阵,每一行对应一个充电站,输出即为充电站c的之前或者出现充电站b和充电站a的概率。重复根据充电站序列,获取中心输入输出样本对这一操作,并持续得到分别以充电站a、充电站b、充电站d以及充电站e为中心输入时,中心输出作为中心输入上下位出现的概率,此时概率矩阵为5*1的矩阵。将此概率矩阵输入至损失函数,根据损失函数的值调节该5*6的隐向量矩阵,直至损失函数到达预设值。[0147]本实施例提供了一种充电站推荐模型训练方法,该方法通过根据充电站序列,获取中心输入输出样本对;初始化隐向量矩阵,根据中心输入输出样本对的编码向量,提取隐向量矩阵的第一隐向量和第二隐向量,第一隐向量为中心输入对应的隐向量,第二隐向量为除了中心输入以外输入对应的隐向量;根据第一隐向量和第二隐向量,获得相似度矩阵;根据相似度矩阵和激活函数获得概率分布矩阵;根据损失函数和概率分布矩阵更新隐向量矩阵,直至损失函数的损失值达到预设值,得到第一隐向量矩阵;根据充电站辅助信息序列,对充电站推荐模型进行训练,使用与第一隐向量矩阵相同方式获取第二隐向量矩阵;根据第一隐向量矩阵和第二隐向量矩阵的融合处理结果,得到训练完成的充电站推荐模型。该方法通过根据充电站序列和充电站辅助信息序列求取更新隐向量矩阵,考虑到了用户使用充电站的历史充电顺序以及充电站辅助信息,获得表示不同充电站权重的隐向量矩阵。为后续根据隐向量矩阵,提供个性化充电站推荐服务打好基础。[0148]图5为本技术实施例提供的充电站推荐方法流程图一。本实施例在上述图2实施例的基础上,详细给出基于训练完成的充电站推荐模型的充电站推荐方法的实现方式。如图5所示,本实施例的方法,包括:[0149]s501、获取终端设备发送的充电请求;[0150]本实施例中,终端设备可以是智能终端如用户的智能手机,或者车载电脑。当终端设备发送充电请求,服务器接收这一请求,并根据请求内容做出响应。[0151]s502、获取终端设备对应的用户在预设时间内使用过的充电站;[0152]本实施例中,服务器通过查询用户历史充电信息,获取终端设备对应的用户在预设时间内使用过的充电站。预设时间可以自行设置,如一个月等。[0153]s503、将充电站输入至充电站推荐模型,得到充电站推荐模型输出的推荐充电站,其中,充电站推荐模型采用如上述方法训练得到的。[0154]本实施例中,终端设备或者服务器将获取的充电站序列输入充电站推荐模型,实际操作为在根据多名用户历史充电信息训练好的隐向量矩阵中,根据充电站序列查询与充电站序列中充电站相似度最高的几个充电站,并通过终端设备推荐给用户。[0155]本实施例提供了一种充电站推荐方法,该方法通过获取终端设备发送的充电请求;获取终端设备对应的用户在预设时间内使用过的充电站;将充电站输入至充电站推荐模型,得到充电站推荐模型输出的推荐充电站。该方法通过使用上述方法训练得到充电站推荐模型,为用户提供充电站推荐服务,解决了现有技术只考虑新能源汽车与目标充电站之间的距离,没有考虑到用户的选择受到不同运营商,充电功率以及价格的等因素的影响,不能提供根据不同用户定制不同充电站推荐服务的问题。[0156]图6为本技术实施例提供的一种充电站推荐模型训练装置的结构示意图。本实施例的装置可以为软件和/或硬件的形式。如图6所示,本技术实施例提供的一种充电站推荐模型训练装置600,包括获取模块601、采样模块602以及训练模块603,[0157]获取模块,用于获取充电站有向图以及充电站辅助信息有向图;[0158]采样模块,用于通过图神经网络node2vec算法,分别对充电站有向图以及充电站辅助信息有向图进行采样,获得训练数据,训练数据包括充电站序列和充电站辅助信息序列;[0159]训练模块,用于根据训练数据,对充电站推荐模型进行训练,得到训练完成的充电站推荐模型。[0160]一种可能的实现方式中,获取模块还具体用于:[0161]获取多个用户的充电信息,每个充电信息包括用户在不同充电站的充电顺序以及每个充电站对应的充电站辅助信息;[0162]根据每个用户在不同充电站的充电顺序,得到充电站有向图;[0163]根据每个充电站对应的充电站辅助信息及充电顺序,得到充电站辅助信息有向图;[0164]其中,充电站有向图和充电站辅助信息有向图的边的权重是根据充电次数决定的。[0165]一种可能的实现方式中,采样模块还具体用于:[0166]针对充电站有向图或充电站辅助信息有向图,确定路径长度k;[0167]随机选择有向图中的任一节点为初始节点,执行节点选择流程以获取下一节点,并重复执行节点选择流程,直至达到路径长度k,得到充电站序列或充电站辅助信息序列;[0168]其中,节点选择流程具体为:根据有向图的同质结构性参数和有向图的边的权重,通过图神经网络node2vec算法,选择下一节点。[0169]一种可能的实现方式中,训练模块还具体用于:[0170]根据充电站序列,对充电站推荐模型进行训练,得到第一隐向量矩阵;[0171]根据充电站辅助信息序列,对充电站推荐模型进行训练,得到第二隐向量矩阵;[0172]根据第一隐向量矩阵和第二隐向量矩阵的融合处理结果,得到训练完成的充电站推荐模型。[0173]一种可能的实现方式中,训练模块还具体用于:[0174]根据充电站序列,获取中心输入输出样本对,中心输入输出样本对为充电站序列中相邻的两个节点;[0175]初始化隐向量矩阵,根据中心输入输出样本对的编码向量,提取隐向量矩阵的第一隐向量和第二隐向量,第一隐向量为中心输入对应的隐向量,第二隐向量为除了中心输入以外输入对应的隐向量;[0176]根据第一隐向量和第二隐向量,得到第一隐向量矩阵;[0177]其中,第二隐向量矩阵与第一隐向量矩阵获取方式相同。[0178]一种可能的实现方式中,训练模块还具体用于:[0179]根据第一隐向量和第二隐向量,获得相似度矩阵;[0180]根据相似度矩阵和激活函数获得概率分布矩阵;[0181]根据损失函数和概率分布矩阵更新隐向量矩阵,直至损失函数的损失值达到预设值。[0182]一种可能的实现方式中,训练模块中,充电站推荐模型为skip-gram模型。[0183]图7为本技术实施例提供的一种充电站推荐装置的结构示意图。本实施例的装置可以为软件和/或硬件的形式。如图7所示,本技术实施例提供的一种充电站推荐装置700,包括接收模块701、获取模块702以及输出模块703,[0184]接收模块701,用于获取终端设备发送的充电请求;[0185]获取模块702,用于获取终端设备对应的用户在预设时间内使用过的充电站;[0186]输出模块703,用于将充电站输入至充电站推荐模型,得到充电站推荐模型输出的推荐充电站,其中,充电站推荐模型采用如上述方法训练得到的。[0187]图8为本技术实施例提供的充电站推荐模型训练设备的硬件结构图。如图8所示,该充电站推荐模型训练设备800包括:[0188]处理器801和存储器802;[0189]存储器存储计算机执行指令;[0190]处理器执行存储器802存储的计算机执行指令,使得电子设备执行如上述的充电站推荐模型训练方法。[0191]应理解,上述处理器801可以是中央处理单元(英文:centralprocessingunit,简称:cpu),还可以是其他通用处理器、数字信号处理器(英文:digitalsignalprocessor,简称:dsp)、专用集成电路(英文:applicationspecificintegratedcircuit,简称:asic)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。存储器802可能包含高速随机存取存储器(英文:randomaccessmemory,简称:ram),也可能还包括非易失性存储器(英文:non-volatilememory,简称:nvm),例如至少一个磁盘存储器,还可以为u盘、移动硬盘、只读存储器、磁盘或光盘等。[0192]本技术实施例相应还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现的充电站推荐模型训练方法。[0193]图9为本技术实施例提供的充电站推荐设备的硬件结构图。如图9所示,该充电站推荐模型训练设备900包括:[0194]处理器901和存储器902;[0195]存储器存储计算机执行指令;[0196]处理器执行存储器902存储的计算机执行指令,使得电子设备执行如上述的充电站推荐模型训练方法。[0197]应理解,上述处理器901可以是中央处理单元(英文:centralprocessingunit,简称:cpu),还可以是其他通用处理器、数字信号处理器(英文:digitalsignalprocessor,简称:dsp)、专用集成电路(英文:applicationspecificintegratedcircuit,简称:asic)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。存储器902可能包含高速随机存取存储器(英文:randomaccessmemory,简称:ram),也可能还包括非易失性存储器(英文:non-volatilememory,简称:nvm),例如至少一个磁盘存储器,还可以为u盘、移动硬盘、只读存储器、磁盘或光盘等。[0198]本技术实施例相应还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现的充电站推荐方法。[0199]本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本技术的其它实施方案。本技术旨在涵盖本技术的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术的一般性原理并包括本技术未公开的本
技术领域
:中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本技术的真正范围和精神由下面的权利要求书指出。[0200]应当理解的是,本技术并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本技术的范围仅由所附的权利要求书来限制。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1