深度学习模型特征数据调用方法、装置、设备及介质与流程
未命名
08-12
阅读:99
评论:0
1.本技术涉及数据处理领域,尤其涉及一种深度学习模型特征数据调用方法、相应的装置、电子设备及计算机可读存储介质。
背景技术:
2.深度学习,是指基于深层次神经网络算法的机器学习技术,其主要是使用多重非线性变换结构的模型对数据进行处理和分析,该模型通常称之为深度学习模型,并且在人工智能领域、决策等场景存在诸多应用,例如图像识别、语音识别、数据挖掘、自然语言翻译、计算机博弈等。通常情况下,由一个或者多个不同的深度学习模型可以构建得到模型库。
3.目前,在深度学习模型在进行在线推理服务过程中,所述深度学习模型推理需要一次性拉取大批量的特征数据,而大量离线特征数据一般加载在外部中间件中,将离线特征数据加载至外部中间件会导致拉取深度学习模型所需的特征数据耗时过长,影响深度学习模型推理的速度和性能。
4.综上,为了解决深度学习模型在进行在线推理服务过程中,拉取深度学习模型所需的特征数据耗时过长,影响深度学习模型推理的速度和性能等问题,本技术人出于解决该问题的考虑做出相应的探索。
技术实现要素:
5.本技术的目的在于提供一种深度学习模型特征数据调用方法、相应的装置、电子设备及计算机可读存储介质。
6.为满足本技术的各个目的,本技术采用如下技术方案:
7.适应本技术的目的之一而提出的一种深度学习模型特征数据调用方法,包括如下步骤:
8.响应深度学习模型推理的特征数据请求事件;
9.基于所述特征数据请求事件确定控制节点,所述控制节点基于预设数量的分区将所述分区相对应的特征数据平均分配至各个节点,基于所述各个节点与各个节点相对应的分区之间的映射关系确定节点分区映射表并推送至所有节点;
10.基于哈希算法确定所述特征数据请求事件中的所述特征数据标识集合中的每个所述特征数据标识相对应的分区编号,基于所述分区编号在所述节点分区映射表中查询确定所述特征数据相对应的节点;
11.基于所述特征数据相对应的节点调用所述深度学习模型推理所请求的特征数据,以所述特征数据驱动所述深度学习模型实施在线推理。
12.可选的,基于所述特征数据请求事件确定控制节点的步骤之前,还包括如下步骤:
13.当前节点响应定时触发事件而获取各个节点的节点信息,所述节点信息包括表征ip地址以及节点编号;
14.检测当前节点列表中是否存在所述节点信息,若当前节点列表中不存在所述节点信息,则将所述节点信息添加至所述当前节点列表中。
15.可选的,所述控制节点基于预设数量的分区将所述分区相对应的特征数据平均分配至各个节点的步骤,包括如下步骤:
16.将所述特征数据的特征数据标识基于特殊标识符进行组合拼接确定同类特征数据;
17.将携带相同特殊标识符的所述同类特征数据分配至同一个分区以及与所述分区相对应的节点。
18.可选的,基于所述各个节点与各个节点相对应的分区之间的映射关系确定节点分区映射表并推送至所有节点的步骤之前,包括如下步骤:
19.所述控制节点响应定时监控事件,检测预设时间阈值内是否有新的节点加入,若预设时间阈值内没有新的节点加入,则确认完成所有节点的启动而继续执行后续步骤;
20.基于各个节点相对应的分区编号在特征数据索引表中查询确定当前节点相对应的特征数据,所述特征数据索引表包括表征分区编号与特征数据之间的映射关系;
21.将所述当前节点相对应的特征数据加载至所述当前节点的本地内存,并推送至其他节点进行备份。
22.可选的,基于哈希算法确定所述特征数据请求事件中的所述特征数据标识集合中的每个所述特征数据标识相对应的分区编号的步骤,包括如下步骤:
23.计算所述特征数据请求事件中的所述特征数据标识集合中的每个所述特征数据标识的哈希值;
24.基于所述特征数据标识的哈希值在所述特征数据索引表匹配确定所述特征数据标识相对应的分区编号。
25.可选的,基于所述特征数据相对应的节点调用所述深度学习模型推理所请求的特征数据的步骤,包括如下步骤:
26.所述特征数据出现调用故障而对所有节点进行平滑升级,执行基于所述特征数据请求事件确定控制节点之后的所有步骤;
27.滚动更新每一个节点,若当前节点重新加载完成所述当前节点相对应的特征数据后,对剩余节点进行逐一更新。
28.可选的,基于所述特征数据相对应的节点调用所述深度学习模型推理所请求的特征数据的步骤,包括如下步骤:
29.响应定时触发事件获取本地内存中所述各个节点的负载信息;
30.根据所述负载信息确定所述各个节点的权重,若所述节点的权重超过预设阈值,则在预设时间阈值内不再调用所述节点的特征数据。
31.适应本技术的另一目的而提供的一种深度学习模型特征数据调用装置,包括:
32.响应模块,设置为响应深度学习模型推理的特征数据请求事件;
33.控制模块,设置为基于所述特征数据请求事件确定控制节点,所述控制节点基于预设数量的分区将所述分区相对应的特征数据平均分配至各个节点,基于所述各个节点与各个节点相对应的分区之间的映射关系确定节点分区映射表并推送至所有节点;
34.节点确定模块,设置为基于哈希算法确定所述特征数据请求事件中的所述特征数
据标识集合中的每个所述特征数据标识相对应的分区编号,基于所述分区编号在所述节点分区映射表中查询确定所述特征数据相对应的节点;
35.调用模块,设置为基于所述特征数据相对应的节点调用所述深度学习模型推理所请求的特征数据,以所述特征数据驱动所述深度学习模型实施在线推理。
36.适应本技术的另一目的而提供的一种电子设备,包括中央处理器和存储器,所述中央处理器用于调用运行存储于所述存储器中的计算机程序以执行本技术所述深度学习模型特征数据调用方法的步骤。
37.适应本技术的另一目的而提供的一种计算机可读存储介质,其以计算机可读指令的形式存储有依据所述深度学习模型特征数据调用方法所实现的计算机程序,该计算机程序被计算机调用运行时,执行相应的方法所包括的步骤。
38.相对于现有技术,本技术针对深度学习模型在进行在线推理服务过程中,拉取深度学习模型所需的特征数据耗时过长,影响深度学习模型推理的速度和性能等问题,基于深度学习模型的特征数据请求事件确定一个控制节点,控制节点将各个分区以及分区相对应的特征数据平均分配至各个服务节点,基于各个服务节点与各个服务节点相对应的分区之间的映射关系确定节点分区映射表并推送至所有服务节点,并将所有特征数据加载至各个服务节点的本地内存中,任意一个服务节点都能够查询并获取其他服务节点的分区以及所述分区的特征数据,能够使各个服务节点之间能够互为发现,当某个服务节点重启或者发生故障时,其他服务节点能够快速响应并提供特征数据拉取服务,显著提高了拉取特征数据故障的排查效率和处理效率,保证了线上服务的实时性和低时延性,保证业务的正常进行,避免因无法及时排查和处理拉取特征数据故障而造成业务损失,由于所有特征数据都加载至各个服务节点的本地内存并进行分布式存储,对于需要大批量特征数据获取的深度学习模型推理服务,能够大大减少拉取特征数据的耗时,提高深度学习模型的特征数据请求的响应速度,同时,极大地提高了深度学习模型推理的速度和性能,增强用户体验。
附图说明
39.本技术上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
40.图1为本技术实施例中深度学习模型特征数据调用方法的流程示意图;
41.图2为本技术实施例中深度学习模型调用特征数据的注册中心所采用的示例性架构;
42.图3为本技术实施例中使各个服务节点之间能够互为发现的流程示意图;
43.图4为本技术实施例中将同类特征数据分配至同一个分区以及与分区相对应的节点的流程示意图;
44.图5为本技术实施例中将当前节点相对应的特征数据加载至当前节点的本地内存并推送至其他节点进行备份的流程示意图;
45.图6为本技术实施例中确定特征数据请求事件中的特征数据标识集合中的每个特征数据标识相对应的分区编号的流程示意图;
46.图7为本技术实施例中处理深度学习模型推理所需的特征数据调用故障的流程示意图;
47.图8为本技术实施例中基于各个服务节点的负载信息调用深度学习模型推理所需的特征数据的流程示意图;
48.图9为本技术实施例中深度学习模型特征数据调用装置的原理框图;
49.图10为本技术实施例中的计算机设备的结构示意图。
具体实施方式
50.下面详细描述本技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本技术,而不能解释为对本技术的限制。
51.本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本技术的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
52.本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本技术所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
53.本技术领域技术人员可以理解,这里所使用的“客户端”、“终端”、“终端设备”既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通信链路上,进行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他诸如个人计算机、平板电脑之类的通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备;pcs(personal communications service,个人通信系统),其可以组合语音、数据处理、传真和/或数据通信能力;pda(personal digital assistant,个人数字助理),其可以包括射频接收器、寻呼机、互联网/内联网访问、网络浏览器、记事本、日历和/或gps(global positioning system,全球定位系统)接收器;常规膝上型和/或掌上型计算机或其他设备,其具有和/或包括射频接收器的常规膝上型和/或掌上型计算机或其他设备。这里所使用的“客户端”、“终端”、“终端设备”可以是便携式、可运输、安装在交通工具(航空、海运和/或陆地)中的,或者适合于和/或配置为在本地运行,和/或以分布形式,运行在地球和/或空间的任何其他位置运行。这里所使用的“客户端”、“终端”、“终端设备”还可以是通信终端、上网终端、音乐/视频播放终端,例如可以是pda、mid(mobile internet device,移动互联网设备)和/或具有音乐/视频播放功能的移动电话,也可以是智能电视、机顶盒等设备。
54.本技术所称的“服务器”、“客户端”、“服务节点”等名称所指向的硬件,本质上是具备个人计算机等效能力的电子设备,为具有中央处理器(包括运算器和控制器)、存储器、输入设备以及输出设备等冯诺依曼原理所揭示的必要构件的硬件装置,计算机程序存储于其
存储器中,中央处理器将存储在外存中的程序调入内存中运行,执行程序中的指令,与输入输出设备交互,借此完成特定的功能。
55.需要指出的是,本技术所称的“服务器”这一概念,同理也可扩展到适用于服务器机群的情况。依据本领域技术人员所理解的网络部署原理,所述各服务器应是逻辑上的划分,在物理空间上,这些服务器既可以是互相独立但可通过接口调用的,也可以是集成到一台物理计算机或一套计算机机群的。本领域技术人员应当理解这一变通,而不应以此约束本技术的网络部署方式的实施方式。
56.本技术的一个或数个技术特征,除非明文指定,既可部署于服务器实施而由客户端远程调用获取服务器提供的在线服务接口来实施访问,也可直接部署并运行于客户端来实施访问。
57.本技术中所引用或可能引用到的神经网络模型,除非明文指定,既可部署于远程服务器且在客户端实施远程调用,也可部署于设备能力胜任的客户端直接调用,某些实施例中,当其运行于客户端时,其相应的智能可通过迁移学习来获得,以便降低对客户端硬件运行资源的要求,避免过度占用客户端硬件运行资源。
58.本技术所涉及的各种数据,除非明文指定,既可远程存储于服务器,也可存储于本地终端设备,只要其适于被本技术的技术方案所调用即可。
59.本领域技术人员对此应当知晓:本技术的各种方法,虽然基于相同的概念而进行描述而使其彼此间呈现共通性,但是,除非特别说明,否则这些方法都是可以独立执行的。同理,对于本技术所揭示的各个实施例而言,均基于同一发明构思而提出,因此,对于相同表述的概念,以及尽管概念表述不同但仅是为了方便而适当变换的概念,应被等同理解。
60.本技术即将揭示的各个实施例,除非明文指出彼此之间的相互排斥关系,否则,各个实施例所涉的相关技术特征可以交叉结合而灵活构造出新的实施例,只要这种结合不背离本技术的创造精神且可满足现有技术中的需求或解决现有技术中的某方面的不足即可。对此变通,本领域技术人员应当知晓。
61.本技术的一种深度学习模型特征数据调用方法,可被编程为计算机程序产品,部署于客户端或服务器中运行而实现,例如在本技术的电商平台应用场景中,一般部署在服务器中实施,藉此可以通过访问该计算机程序产品运行后开放的接口,通过图形用户界面与该计算机程序产品的进程进行人机交互而执行该方法。
62.请参阅图1,本技术的深度学习模型特征数据调用方法在其一个实施例中,包括如下步骤:
63.步骤s10、响应深度学习模型推理的特征数据请求事件;
64.所述深度学习模型为基于机器学习采用大量样本数据训练得到的模型,所述机器学习以及深度学习可以包含人工神经网络、置信网络、强化学习、迁移学习或归纳学习等技术,所述深度学习模型可以预先被训练至收敛状态并投入生产阶段,使对目标对象具有一定的推理能力。当然,各种深度学习模型基于模型结构不同以及训练样本不同,对目标对象的推理能力可能各不相同,一般体现为各个深度学习模型对同一目标对象的推理结果的可信度的不同。所述深度学习模型可以是图像识别模型或目标检测模型等等,当请求方发起深度学习模型推理的请求时,此时,处理方响应所述深度学习模型推理请求事件,需要在各个服务节点中调用所述深度学习模型推理所需的特征数据,调用所述特征数据以驱动所述
深度学习模型进行在线推理。
65.在一些实施例中,基于独立站的电商平台应用场景,消费者用户在电商平台客户端输入心仪或被推荐的商品的图片至搜索框并点击搜索按钮,所述消费者用户触发所述搜索按钮后,此时,所述电商平台客户端发起图像识别模型对所述目标商品图像进行识别的请求,服务器端响应所述图像识别模型识别所述目标商品图像的请求事件,在各个服务节点的本地内存中调用所述图像识别模识别所述目标商品图像所需的商品图像特征数据,调用所述商品图像特征数据以驱动所述图像识别模型进行在线推理,对所述目标商品图像进行识别得到所述目标商品图像的相同或相似商品,并将所述目标商品图像的相同或相似商品展示在所述电商平台客户端页面以供消费者用户按照个人喜好进行选择。
66.在一些实施例中,消费者用户在浏览电商平台中的商品对象时,通过在消费者用户的终端设备中的该站点的网页或者访问该站点的客户端中预置埋点代码,或者在后台服务器分析消费者用户所访问的网页,可以获得所述消费者用户的用户行为消息而获得所述消费者用户的行为事件,基于所述行为事件获知所述消费者用户已访问的商品对象时,电商平台的后台服务器可以调用图像识别模型识别所述商品对象,并响应所述图像识别模型识别所述商品对象的特征数据请求事件,在各个服务节点的本地内存中调用所述图像识别模型识别所述商品对象所需的商品图像特征数据,调用所述商品图像特征数据以驱动所述图像识别模型进行在线推理,为所述商品对象匹配推荐其相对应的相同或相似商品对象,当然,也可以是消费者用户进入电商平台独立站的商品浏览界面,在商品浏览界面中可以点击“找相似”等按钮,触发图像识别模型基于所述消费者用户当前访问的一个商品对象来进行相同或相似商品的匹配推荐。
67.步骤s20、基于所述特征数据请求事件确定控制节点,所述控制节点基于预设数量的分区将所述分区相对应的特征数据平均分配至各个节点,基于所述各个节点与各个节点相对应的分区之间的映射关系确定节点分区映射表并推送至所有节点;
68.响应深度学习模型推理的特征数据请求事件,响应方可以将第一个启动的服务节点作为控制节点,在所述控制节点启动之后,各个服务节点进行启动时,所述控制节点基于预设数量的分区将所述分区以及所述分区相对应的特征数据平均分配至各个服务节点,所述分区作为所述特征数据存储的最小逻辑单元,所述特征数据相对应的分区可以基于所述特征数据标识计算得出所述分区的分区编号,基于所述分区编号确定所述特征数据相对应的分区,在确定各个服务节点相对应的分区之后,基于所述各个服务节点与各个服务节点相对应的分区之间的映射关系确定节点分区映射表,并将所述节点分区映射表推送至所有服务节点。
69.在一些实施例中,消费者用户进入基于独立站的电商平台的商品浏览界面,在商品浏览界面中点击“找相似”按钮,电商平台的后台服务器端调用图像识别模型识别所述商品对象,并响应所述图像识别模型识别所述商品对象的商品图像特征数据请求事件之后,可以将第一个启动的服务节点作为控制节点,在所述控制节点启动之后,各个服务节点进行启动时,所述控制节点基于预设数量的分区将所述分区以及所述分区相对应的商品图像特征数据平均分配至各个节点,所述商品图像特征数据相对应的分区可以基于所述商品图像特征数据标识key计算确定所述分区的分区编号partitionid,例如:partitionid=hash(key)%271,基于所述分区编号partitionid确定所述商品图像特征数据相对应的分区,将
预设数量的分区以及所述分区相对应的商品图像特征数据平均分配到电商平台中的每个服务节点,确定各个服务节点相对应的分区,例如:电商平台的后台服务器端中可以有3个服务节点以及271个分区,那么,可以将1~90号分区分配至服务节点1,将91~180号分区分配至服务节点2,181~271号分区分配至服务节点3等等,在确定电商平台中的各个服务节点相对应的分区之后,基于电商平台中的各个服务节点与各个服务节点相对应的分区之间的映射关系确定节点分区映射表,并将所述节点分区映射表推送至所有服务节点。
70.步骤s30、基于哈希算法确定所述特征数据请求事件中的所述特征数据标识集合中的每个所述特征数据标识相对应的分区编号,基于所述分区编号在所述节点分区映射表中查询确定所述特征数据相对应的节点;
71.将所述节点分区映射表推送至所有服务节点之后,基于哈希算法确定所述特征数据请求事件中的所述特征数据标识集合中的每个所述特征数据标识相对应的分区编号,基于深度学习模型推理过程所需的特征数据的特征数据标识集合,可以通过哈希算法基于每个特征数据标识确定所述特征数据请求事件中的所述特征数据对应的分区编号,基于所述特征数据相对应的分区编号在所述节点分区映射表中查询确定所述特征数据相对应的服务节点。
72.在一些实施例中,将所述节点分区映射表推送至基于独立站的电商平台中所有服务节点之后,可以基于哈希算法确定所述商品图像特征数据请求事件中的所述商品图像特征数据标识集合中的每个所述商品图像特征数据标识相对应的分区编号,基于所述图像识别模型识别所述商品对象过程中所需的商品图像特征数据标识集合,可以基于哈希算法通过每个商品图像特征数据标识确定所述商品图像特征数据请求事件中的所述商品图像特征数据对应的分区编号,基于所述商品图像特征数据相对应的分区编号在所述节点分区映射表中查询,确定所述图像识别模型识别所述商品对象过程中所需的所述商品图像特征数据相对应的服务节点。
73.步骤s40、基于所述特征数据相对应的节点调用所述深度学习模型推理所请求的特征数据,以所述特征数据驱动所述深度学习模型实施在线推理。
74.基于所述特征数据相对应的分区编号在所述节点分区映射表中查询确定所述特征数据相对应的服务节点之后,若查询到所述特征数据在当前服务节点,则在当前服务节点的本地内存中直接调用所述特征数据,若查询到所述特征数据在其他服务节点,则在其他服务节点中远程调用所述特征数据,直至所述深度学习模型推理所需的所有特征数据调用完毕,以所述特征数据驱动所述深度学习模型实施在线推理。
75.在一些实施例中,确定所述图像识别模型识别所述商品对象过程中所需的所述商品图像特征数据相对应的服务节点之后,若查询到所述商品图像特征数据在电商平台中的当前服务节点,则在电商平台中的当前服务节点的本地内存中直接调用所述商品图像特征数据,若查询到所述商品图像特征数据在电商平台中的其他服务节点,则在电商平台中的其他服务节点中远程调用所述商品图像特征数据,直至所述图像识别模型识别所述商品对象所需的所有商品图像特征数据调用完成,以所述商品图像特征数据驱动所述图像识别模型识别所述商品对象,所述图像识别模型基于所述消费者用户当前访问的一个商品对象来进行相同或相似商品的匹配推荐,将所述商品对象的相同或相似商品展示在所述基于独立站的电商平台客户端页面以供消费者用户按照个人喜好进行选择。
76.由上述实施例可知,本技术针对深度学习模型在进行在线推理服务过程中,拉取深度学习模型所需的特征数据耗时过长,影响深度学习模型推理的速度和性能等问题,基于深度学习模型的特征数据请求事件确定一个控制节点,控制节点将各个分区以及分区相对应的特征数据平均分配至各个服务节点,基于各个服务节点与各个服务节点相对应的分区之间的映射关系确定节点分区映射表并推送至所有服务节点,并将所有特征数据加载至各个服务节点的本地内存中,任意一个服务节点都能够查询并获取其他服务节点的分区以及所述分区的特征数据,能够使各个服务节点之间能够互为发现,当某个服务节点重启或者发生故障时,其他服务节点能够快速响应并提供特征数据拉取服务,显著提高了拉取特征数据故障的排查效率和处理效率,保证了线上服务的实时性和低时延性,保证业务的正常进行,避免因无法及时排查和处理拉取特征数据故障而造成业务损失,由于所有特征数据都加载至各个服务节点的本地内存并进行分布式存储,对于需要大批量特征数据获取的深度学习模型推理服务,能够大大减少拉取特征数据的耗时,提高深度学习模型的特征数据请求的响应速度,同时,极大地提高了深度学习模型推理的速度和性能,增强用户体验。
77.在本技术任意实施例的基础上,请参阅图2和图3,基于所述特征数据请求事件确定控制节点的步骤之前,还包括如下步骤:
78.步骤s201、当前节点响应定时触发事件而获取各个节点的节点信息,所述节点信息包括表征ip地址以及节点编号;
79.基于独立站的电商平台可以基于电商平台的注册中心以实现各个服务节点之间的互为发现,也即,所述电商平台中任意一个服务节点都能够查询并获取其他服务节点的分区以及所述分区的特征数据,所述注册中心可以是nacos或zookeeper等,在电商平台的注册中心中当前服务节点可以响应定时触发事件而获取电商平台中各个服务节点的服务节点信息,所述节点信息包括表征ip地址以及节点编号等等,在此不作限定。
80.步骤s203、检测当前节点列表中是否存在所述节点信息,若当前服务节点列表中不存在所述节点信息,则将所述节点信息添加至所述当前节点列表中。
81.电商平台中的当前服务节点检测所述当前服务节点列表中是否存在各个服务节点的所述节点信息,若电商平台的当前服务节点列表中不存在某个服务节点的所述节点信息,则将某个服务节点的所述节点信息中的ip地址以及节点编号等信息添加至所述当前服务节点列表中。
82.在本技术任意实施例的基础上,请参阅图4,所述控制节点基于预设数量的分区将所述分区相对应的特征数据平均分配至各个节点的步骤,包括如下步骤:
83.步骤s205、将所述特征数据的特征数据标识基于特殊标识符进行组合拼接确定同类特征数据;
84.为了减少从当前服务节点之外的其他服务节点调用特征数据进行推理服务,需要使所述深度学习模型进行推理服务过程中所需的特征数据具有亲和性,将所述特征数据的特征数据标识基于特殊标识符进行组合拼接确定同类特征数据,例如:可以在所述特征数据的特征数据标识key中组合拼接相同的特殊标识符pre,以得到字符串“${pre}key”,将同样携带特殊标识符pre的特征数据确定为所述同类特征数据,此时,所述字符串“${pre}key”可以基于哈希算法确定所述同类特征数据相对应的分区编号,基于所述同类特征数据相对应的分区编号确定所述同类特征数据相对应的分区以及服务节点。
85.具体而言,基于所述消费者用户当前访问的一个商品对象来进行相同或相似商品的匹配推荐,以所述商品图像特征数据驱动所述图像识别模型识别所述商品对象,由于一些商品图像具有独特的特征,例如:米老鼠上衣、工装裤等等,可以在商品图像特征数据的特征数据标识“上衣”中组合拼接相同的特殊标识“米老鼠”,以得到字符串“${米老鼠}上衣”,将同样携带特殊标识符“米老鼠”的商品图像特征数据确定为同类商品图像特征数据,此时,所述字符串“${米老鼠}上衣”可以基于哈希算法确定所述同类商品图像特征数据相对应的分区编号,基于所述同类商品图像特征数据相对应的分区编号确定所述同类商品图像特征数据相对应的分区以及服务节点。
86.步骤s207、将携带相同特殊标识符的所述同类特征数据分配至同一个分区以及与所述分区相对应的节点。
87.基于所述同类特征数据相对应的分区编号确定所述同类特征数据相对应的分区以及服务节点之后,将同样携带特殊标识符的所述同类特征数据分配至同一个分区以及与所述分区相对应的服务节点。
88.具体而言,基于所述同类商品图像特征数据相对应的分区编号确定所述同类商品图像特征数据相对应的分区以及服务节点之后,将同样携带特殊标识符“米老鼠”的所述同类商品图像特征数据分配至同一个分区以及与所述分区相对应的服务节点,以供所述图像识别模型进行识别电商平台中的商品对象调用。
89.由上述实施例可知,由于所述同类特征数据具有亲和力,且被分配至同一分区以及服务节点,所述深度学习模型可以在同一服务节点中调用深度学习模型推理所需的特征数据,能够大大减少从当前服务节点之外的其他服务节点调用特征数据进行推理服务,极大地缩减了调用深度学习模型推理所需的特征数据的时间,提高特征数据的调用效率。
90.在本技术任意实施例的基础上,请参阅图5,基于所述各个节点与各个节点相对应的分区之间的映射关系确定节点分区映射表并推送至所有节点的步骤之前,包括如下步骤:
91.步骤s2001、所述控制节点响应定时监控事件,检测预设时间阈值内是否有新的节点加入,若预设时间阈值内没有新的节点加入,则确认完成所有节点的启动而继续执行后续步骤;
92.电商平台中的所述控制节点响应定时监控事件,检测预设时间阈值内是否有新的服务节点加入,所述控制节点基于预设时间阈值来判断各个服务节点是否都完成启动,若预设时间阈值内没有新的服务节点加入,则确认完成所有服务节点的启动而继续执行后续步骤,所述预设时间阈值可以是3秒、5秒或7秒等,本领域技术人员可以根据实际情况按需确定所述预设时间阈值,在此不作限定,例如:所述预设时间阈值可以设置为5秒,如果所述控制节点在5秒内没有检测到新的服务节点加入,则确认完成所有服务节点都已经完成启动。
93.步骤s2003、基于各个节点相对应的分区编号在特征数据索引表中查询确定当前节点相对应的特征数据,所述特征数据索引表包括表征分区编号与特征数据之间的映射关系;
94.由于各个服务节点相对应的分区的分区编号与所述特征数据一一对应,也即各个节点相对应的分区与所述特征数据一一对应,可以基于各个节点相对应的分区编号在特征
数据索引表中查询确定当前节点相对应的特征数据,所述特征数据索引表包括表征分区编号与特征数据之间的映射关系。
95.步骤s2005、将所述当前节点相对应的特征数据加载至所述当前节点的本地内存,并推送至其他节点进行备份。
96.在获取所述深度学习模型推理服务所需的特征数据过程中,所述深度学习模型推理需要一次性拉取大批量的特征数据,而大量离线特征数据一般加载在外部中间件中,所述外部中间件可以包含redis或hbase等数据库,将离线特征数据加载至外部中间件会导致获取所述深度学习模型所需的特征数据耗时过长,影响深度学习模型推理的性能,因此,将所述当前节点相对应的特征数据加载至所述当前节点的本地内存,由于所述特征数据如果只存储在一个服务节点中,那么,当所述服务节点重启或者发生故障后,当前服务节点本地内存中的特征数据将会丢失,因此将每个服务节点相对应的分区以及所述分区相对应的特征数据推送至其他服务节点进行备份,例如:在获取所述深度学习模型推理服务所需的特征数据过程中,若服务节点a发生故障,备份了服务节点a相对应分区以及所述分区相对应的特征数据的其他服务节点将继续提供服务,直至服务节点a恢复正常。
97.由上述实施例可知,能够使各个服务节点之间能够互为发现,当某个服务节点重启或者发生故障时,其他服务节点能够快速响应并提供特征数据拉取服务,显著提高了拉取特征数据故障的排查效率和处理效率,保证了线上服务的实时性和低时延性。
98.在本技术任意实施例的基础上,请参阅图6,基于哈希算法确定所述特征数据请求事件中的所述特征数据标识集合中的每个所述特征数据标识相对应的分区编号的步骤,包括如下步骤:
99.步骤s301、计算所述特征数据请求事件中的所述特征数据标识集合中的每个所述特征数据标识的哈希值;
100.响应深度学习模型推理的特征数据请求事件,所述深度学习模型进行推理所需的每个特征数据都包含有一个特征数据标识,因此,深度学习模型进行推理所需的每个特征数据构成特征数据集合,也即,深度学习模型进行推理所需的每个特征数据标识构成特征数据标识集合,计算所述特征数据请求事件中的所述特征数据标识集合中的每个所述特征数据标识的哈希值。
101.具体而言,基于所述消费者用户当前访问的一个商品对象来进行相同或相似商品的匹配推荐,消费者用户进入基于独立站的电商平台的商品浏览界面,在商品浏览界面中点击“找相似”按钮,触发所述图像识别模型识别商品对象的所述商品图像特征数据请求事件,以所述商品图像特征数据驱动所述图像识别模型识别所述商品对象,由于所述图像识别模型识别所述商品对象所需的商品图像特征数据都包含有一个特征数据标识,计算所述特征数据标识集合中的每个所述商品图像特征数据标识的哈希值。
102.步骤s303、基于所述特征数据标识的哈希值在所述特征数据索引表匹配确定所述特征数据标识相对应的分区编号。
103.在确定所述特征数据请求事件中的所述特征数据标识集合中的每个所述特征数据标识的哈希值之后,由于各个服务节点相对应的分区的分区编号与所述特征数据一一对应,也即各个服务节点相对应的分区与所述特征数据一一对应,基于所述特征数据标识的哈希值在所述特征数据索引表匹配确定所述特征数据标识相对应的分区编号。
104.在本技术任意实施例的基础上,请参阅图7,基于所述特征数据相对应的节点调用所述深度学习模型推理所请求的特征数据的步骤,包括如下步骤:
105.步骤s401、所述特征数据出现调用故障而对所有节点进行平滑升级,执行基于所述特征数据请求事件确定控制节点之后的所有步骤;
106.所述深度学习模型所需的特征数据进行调用过程中,所述特征数据调用可能出现调用故障或重启,因此,需要对所有服务节点进行平滑升级,保证所述深度学习模型所需的特征数据调用正常进行,执行基于所述特征数据请求事件确定控制节点之后的所有步骤。
107.步骤s403、滚动更新每一个节点,若当前节点重新加载完成所述当前节点相对应的特征数据后,对剩余节点进行逐一更新。
108.为保证每一个服务节点都能正常地为所述深度学习模型所需的特征数据提供调用服务,需要对每一个服务节点进行滚动更新,若当前服务节点重新加载完成所述当前服务节点相对应的特征数据后,代表所述当前节点已经更新完毕,对剩余节点进行逐一更新,直至所有服务节点能够正常为所述深度学习模型所需的特征数据提供调用服务。
109.由上述实施例可知,当某个服务节点重启或者发生故障时,其他服务节点能够自动进行滚动更新,节省人力成本,显著提高业务故障处理效率,保证业务的正常进行,避免造成业务损失。
110.在本技术任意实施例的基础上,请参阅图8,基于所述特征数据相对应的节点调用所述深度学习模型推理所请求的特征数据的步骤,包括如下步骤:
111.步骤s405、响应定时触发事件获取本地内存中所述各个节点的负载信息;
112.在基于独立站的电商平台应用场景中,消费者用户进入基于独立站的电商平台的商品浏览界面,在商品浏览界面中点击“找相似”按钮,触发所述图像识别模型识别商品对象的所述商品图像特征数据请求事件,以所述商品图像特征数据驱动所述图像识别模型识别所述商品对象,将所述商品对象的相同或相似商品展示在所述基于独立站的电商平台客户端页面以供消费者用户按照个人喜好进行选择,其所述商品图像特征数据的请求事件是千变万化的,因此各个服务节点的负载信息也是实时变化的,为了保证各个服务节点负载均衡,需要定时获取本地内存中所述各个服务器节点的负载信息,合理地在各个服务器节点拉取所述图像识别模型识别商品对象的所述商品图像特征数据,所述负载信息可以包含网络传输时延、丢包率、带宽等。
113.步骤s407、根据所述负载信息确定所述各个节点的权重,若所述节点的权重超过预设阈值,则在预设时间阈值内不再调用所述节点的特征数据。
114.根据网络传输时延、丢包率、带宽等负载信息评估本地内存中各个服务器节点的数据请求处理能力,基于所述负载信息确定本地内存中所述各个服务节点的权重,若某个服务节点的权重超过预设阈值,则在预设时间阈值内不再调用所述节点的特征数据,由于本地内存中的各个服务节点,一旦其负载较高,在一定的时长范围内,会忙于处理其当前特征数据的调用请求事件,因而,设定在一个预设时长范围内,该服务节点均处于繁忙状态,应尽量避免对这种处于繁忙状态的服务节点的运行进行干扰,可以判断一个服务节点的权重是否超过预设阈值,若所述服务节点的权重超过预设阈值,也即正处于繁忙状态的情况下,保持在预设时长范围内,不再从这个服务节点中调用所述图像识别模型中所需的商品图像特征数据,等到预设时长范围结束时,再从这个服务节点中调用所述图像识别模型中
所需的商品图像特征数据即可。
115.由上述实施例可知,对于超过预设阈值的服务器节点,在所述预设时长范围内,不再从这个服务节点中调用深度学习模型中所需的特征数据,这样既可以避免干扰这个服务节点的运行,也可以大大减少从各个服务节点中调用深度学习模型中所需的特征数据的计算量。
116.请参阅图9适应本技术的目的之一而提供的一种深度学习模型特征数据调用装置,包括:响应模块1100、控制模块1200、节点确定模块1300以及调用模块1400。其中,响应模块1100,设置为响应深度学习模型推理的特征数据请求事件;控制模块1200,设置为基于所述特征数据请求事件确定控制节点,所述控制节点基于预设数量的分区将所述分区相对应的特征数据平均分配至各个节点,基于所述各个节点与各个节点相对应的分区之间的映射关系确定节点分区映射表并推送至所有节点;节点确定模块1300,设置为基于哈希算法确定所述特征数据请求事件中的所述特征数据标识集合中的每个所述特征数据标识相对应的分区编号,基于所述分区编号在所述节点分区映射表中查询确定所述特征数据相对应的节点;调用模块1400,设置为基于所述特征数据相对应的节点调用所述深度学习模型推理所请求的特征数据,以所述特征数据驱动所述深度学习模型实施在线推理。
117.在本技术任意实施例的基础上,本技术的深度学习模型特征数据调用装置,还包括:
118.节点信息获取单元,设置为当前节点响应定时触发事件而获取各个节点的节点信息,所述节点信息包括表征ip地址以及节点编号;
119.检测单元,设置为检测当前节点列表中是否存在所述节点信息,若当前节点列表中不存在所述节点信息,则将所述节点信息添加至所述当前节点列表中。
120.在本技术任意实施例的基础上,所述控制模块1200,还包括:。
121.组合拼接单元,设置为将所述特征数据的特征数据标识基于特殊标识符进行组合拼接确定同类特征数据;
122.分配单元,设置为将携带相同特殊标识符的所述同类特征数据分配至同一个分区以及与所述分区相对应的节点。
123.在本技术任意实施例的基础上,所述控制模块1200,包括:
124.定时监控单元,设置为所述控制节点响应定时监控事件,检测预设时间阈值内是否有新的节点加入,若预设时间阈值内没有新的节点加入,则确认完成所有节点的启动而继续执行后续步骤;
125.查询确定单元,设置为基于各个节点相对应的分区编号在特征数据索引表中查询确定当前节点相对应的特征数据,所述特征数据索引表包括表征分区编号与特征数据之间的映射关系;
126.加载备份单元,设置为将所述当前节点相对应的特征数据加载至所述当前节点的本地内存,并推送至其他节点进行备份。
127.在本技术任意实施例的基础上,所述节点确定模块1300,包括:
128.计算单元,设置为计算所述特征数据请求事件中的所述特征数据标识集合中的每个所述特征数据标识的哈希值;
129.分区编号确定单元,设置为基于所述特征数据标识的哈希值在所述特征数据索引
表匹配确定所述特征数据标识相对应的分区编号。
130.在本技术任意实施例的基础上,所述调用模块1400,包括:
131.平滑升级单元,设置为所述特征数据出现调用故障而对所有节点进行平滑升级,执行基于所述特征数据请求事件确定控制节点之后的所有步骤;
132.滚动更新单元,设置为滚动更新每一个节点,若当前节点重新加载完成所述当前节点相对应的特征数据后,对剩余节点进行逐一更新。
133.在本技术任意实施例的基础上,所述调用模块1400,包括:。
134.负载信息获取单元,设置为响应定时触发事件获取本地内存中所述各个节点的负载信息;
135.节点权重确定单元,设置为根据所述负载信息确定所述各个节点的权重,若所述节点的权重超过预设阈值,则在预设时间阈值内不再调用所述节点的特征数据。
136.在本技术任意实施例的基础上,请参阅图10,本技术的另一实施例还提供一种电子设备,所述电子设备可由计算机设备实现,如图10所示,计算机设备的内部结构示意图。该计算机设备包括通过系统总线连接的处理器、计算机可读存储介质、存储器和网络接口。其中,该计算机设备的计算机可读存储介质存储有操作系统、数据库和计算机可读指令,数据库中可存储有控件信息序列,该计算机可读指令被处理器执行时,可使得处理器实现一种深度学习模型特征数据调用方法。该计算机设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。该计算机设备的存储器中可存储有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行本技术的深度学习模型特征数据调用方法。该计算机设备的网络接口用于与终端连接通信。本领域技术人员可以理解,图10中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
137.本实施方式中处理器用于执行图9中的各个模块及其子模块的具体功能,存储器存储有执行上述模块或子模块所需的程序代码和各类数据。网络接口用于向用户终端或服务器之间的数据传输。本实施方式中的存储器存储有本技术的深度学习模型特征数据调用装置中执行所有模块/子模块所需的程序代码及数据,服务器能够调用服务器的程序代码及数据执行所有子模块的功能。
138.本技术还提供一种存储有计算机可读指令的存储介质,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行本技术任一实施例所述深度学习模型特征数据调用方法的步骤。
139.本技术还提供一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被一个或多个处理器执行时实现本技术任一实施例所述深度学习模型特征数据调用方法的步骤。
140.本领域普通技术人员可以理解实现本技术上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)等计算机可读存储介质,或随机存储记忆体(random access memory,ram)等。
141.以上所述仅是本技术的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本技术的保护范围。
142.综上所述,本技术对于需要大批量特征数据获取的深度学习模型推理服务的业务场景,能够大大减少拉取特征数据的耗时,提高深度学习模型的特征数据请求的响应速度,同时,极大地提高了深度学习模型推理的速度和性能,保证了线上服务的实时性和低时延性,保证业务的正常进行,增强用户体验。
技术特征:
1.一种深度学习模型特征数据调用方法,其特征在于,包括如下步骤:响应深度学习模型推理的特征数据请求事件;基于所述特征数据请求事件确定控制节点,所述控制节点基于预设数量的分区将所述分区相对应的特征数据平均分配至各个节点,基于所述各个节点与各个节点相对应的分区之间的映射关系确定节点分区映射表并推送至所有节点;基于哈希算法确定所述特征数据请求事件中的所述特征数据标识集合中的每个所述特征数据标识相对应的分区编号,基于所述分区编号在所述节点分区映射表中查询确定所述特征数据相对应的节点;基于所述特征数据相对应的节点调用所述深度学习模型推理所请求的特征数据,以所述特征数据驱动所述深度学习模型实施在线推理。2.根据权利要求1所述的深度学习模型特征数据调用方法,其特征在于,基于所述特征数据请求事件确定控制节点的步骤之前,还包括如下步骤:当前节点响应定时触发事件而获取各个节点的节点信息,所述节点信息包括表征ip地址以及节点编号;检测当前节点列表中是否存在所述节点信息,若当前节点列表中不存在所述节点信息,则将所述节点信息添加至所述当前节点列表中。3.根据权利要求1所述的深度学习模型特征数据调用方法,其特征在于,所述控制节点基于预设数量的分区将所述分区相对应的特征数据平均分配至各个节点的步骤,包括如下步骤:将所述特征数据的特征数据标识基于特殊标识符进行组合拼接确定同类特征数据;将携带相同特殊标识符的所述同类特征数据分配至同一个分区以及与所述分区相对应的节点。4.根据权利要求1所述的深度学习模型特征数据调用方法,其特征在于,基于所述各个节点与各个节点相对应的分区之间的映射关系确定节点分区映射表并推送至所有节点的步骤之前,包括如下步骤:所述控制节点响应定时监控事件,检测预设时间阈值内是否有新的节点加入,若预设时间阈值内没有新的节点加入,则确认完成所有节点的启动而继续执行后续步骤;基于各个节点相对应的分区编号在特征数据索引表中查询确定当前节点相对应的特征数据,所述特征数据索引表包括表征分区编号与特征数据之间的映射关系;将所述当前节点相对应的特征数据加载至所述当前节点的本地内存,并推送至其他节点进行备份。5.根据权利要求1所述的深度学习模型特征数据调用方法,其特征在于,基于哈希算法确定所述特征数据请求事件中的所述特征数据标识集合中的每个所述特征数据标识相对应的分区编号的步骤,包括如下步骤:计算所述特征数据请求事件中的所述特征数据标识集合中的每个所述特征数据标识的哈希值;基于所述特征数据标识的哈希值在所述特征数据索引表匹配确定所述特征数据标识相对应的分区编号。6.根据权利要求1至5所述的深度学习模型特征数据调用方法,其特征在于,基于所述
特征数据相对应的节点调用所述深度学习模型推理所请求的特征数据的步骤,包括如下步骤:所述特征数据出现调用故障而对所有节点进行平滑升级,执行基于所述特征数据请求事件确定控制节点之后的所有步骤;滚动更新每一个节点,若当前节点重新加载完成所述当前节点相对应的特征数据后,对剩余节点进行逐一更新。7.根据权利要求1至5所述的深度学习模型特征数据调用方法,其特征在于,基于所述特征数据相对应的节点调用所述深度学习模型推理所请求的特征数据的步骤,包括如下步骤:响应定时触发事件获取本地内存中所述各个节点的负载信息;根据所述负载信息确定所述各个节点的权重,若所述节点的权重超过预设阈值,则在预设时间阈值内不再调用所述节点的特征数据。8.一种深度学习模型特征数据调用装置,其特征在于,包括:响应模块,设置为响应深度学习模型推理的特征数据请求事件;控制模块,设置为基于所述特征数据请求事件确定控制节点,所述控制节点基于预设数量的分区将所述分区相对应的特征数据平均分配至各个节点,基于所述各个节点与各个节点相对应的分区之间的映射关系确定节点分区映射表并推送至所有节点;节点确定模块,设置为基于哈希算法确定所述特征数据请求事件中的所述特征数据标识集合中的每个所述特征数据标识相对应的分区编号,基于所述分区编号在所述节点分区映射表中查询确定所述特征数据相对应的节点;调用模块,设置为基于所述特征数据相对应的节点调用所述深度学习模型推理所请求的特征数据,以所述特征数据驱动所述深度学习模型实施在线推理。9.一种电子设备,包括中央处理器和存储器,其特征在于,所述中央处理器用于调用运行存储于所述存储器中的计算机程序以执行如权利要求1至7中任意一项所述的方法的步骤。10.一种计算机可读存储介质,其特征在于,其以计算机可读指令的形式存储有依据权利要求1至7中任意一项所述的方法所实现的计算机程序,该计算机程序被计算机调用运行时,执行相应的方法所包括的步骤。
技术总结
本申请涉及深度学习模型特征数据调用方法、装置、设备及介质,所述方法包括:响应深度学习模型推理的特征数据请求事件;基于特征数据请求事件确定控制节点,控制节点基于预设数量的分区将分区相对应的特征数据平均分配至各个节点,基于各个节点与各个节点相对应的分区之间的映射关系确定节点分区映射表并推送至所有节点;基于哈希算法确定特征数据请求事件中的特征数据标识集合中的每个特征数据标识相对应的分区编号,基于分区编号在节点分区映射表中查询确定特征数据相对应的节点;基于特征数据相对应的节点调用深度学习模型推理所请求的特征数据,以特征数据驱动深度学习模型实施在线推理。本申请能够减少拉取特征数据的耗时,提高响应速度。提高响应速度。提高响应速度。
技术研发人员:陈轶
受保护的技术使用者:广州欢聚时代信息科技有限公司
技术研发日:2023.04.27
技术公布日:2023/8/9
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
