CN113377720A - 一种数据处理的方法、装置、电子设备及存储介质 - Google Patents
一种数据处理的方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113377720A CN113377720A CN202110699823.8A CN202110699823A CN113377720A CN 113377720 A CN113377720 A CN 113377720A CN 202110699823 A CN202110699823 A CN 202110699823A CN 113377720 A CN113377720 A CN 113377720A
- Authority
- CN
- China
- Prior art keywords
- storage path
- training sample
- subfile
- training
- subfiles
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title abstract description 23
- 238000012549 training Methods 0.000 claims abstract description 248
- 230000005540 biological transmission Effects 0.000 claims abstract description 113
- 238000000034 method Methods 0.000 claims abstract description 52
- 230000015654 memory Effects 0.000 claims description 39
- 238000002372 labelling Methods 0.000 claims description 38
- 238000012545 processing Methods 0.000 claims description 30
- 238000013528 artificial neural network Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 10
- 238000013507 mapping Methods 0.000 claims description 5
- 238000012546 transfer Methods 0.000 claims description 5
- 230000006854 communication Effects 0.000 abstract description 16
- 238000004891 communication Methods 0.000 abstract description 13
- 239000000523 sample Substances 0.000 description 109
- 230000008569 process Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 238000013473 artificial intelligence Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/172—Caching, prefetching or hoarding of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computational Linguistics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本公开提供了一种数据处理的方法、装置、电子设备及存储介质,其中,该方法包括:获取训练样本集对应的存储路径文件;存储路径文件中包括训练样本集中每个训练样本的存储路径信息;将存储路径文件划分为多个存储路径子文件;每个存储路径子文件对应一个传输任务,该传输任务用于基于存储路径子文件包括的各条存储路径信息传输对应的训练样本;执行与每个存储路径子文件对应的传输任务,将每个存储路径子文件对应的训练样本上传至后台服务器。本公开传输任务数量显著降低,这降低了整体的通信时长,提升了传输效率和资源利用率。
Description
技术领域
本公开涉及人工智能技术领域,具体而言,涉及一种数据处理的方法、装置、电子设备及存储介质。
背景技术
随着人工智能(Artificial Intelligence,AI)的发展,AI技术通过训练的神经网络被广泛应用于各行各业。其中,神经网络的训练往往依赖于训练样本,需要先对训练样本进行人工标注之后再进行训练。
为了在确保标注数据的安全性的前提下,降低训练样本在本地服务器所占的存储空间,通常需要把标注数据上传到后台服务器以在后台服务器完成相应的标注操作。
目前的标注数据传输是采用串行方式,一个一个的传。每传输一个文件(对应一个训练样本)均需要一定的通信时间,例如,后台服务器需要在接收到本地服务器的传输请求的情况下准备文件接收,再如,本地服务器需要接收到服务器的已接受完成信息才准备下一个文件的传输。
然而,过多的训练样本量将导致整体通信时间过长,传输效率较低,且在整个通信过程中需要占用双方服务器的系统资源,导致资源利用不充分。
发明内容
本公开实施例至少提供一种数据处理的方法、装置、电子设备及存储介质,以提升整体传输效率以及资源利用率。
第一方面,本公开实施例提供了一种数据处理的方法,所述方法包括:
获取训练样本集对应的存储路径文件;所述存储路径文件中包括所述训练样本集中每个训练样本的存储路径信息;
将所述存储路径文件划分为多个存储路径子文件;每个所述存储路径子文件对应一个传输任务,该传输任务用于基于所述存储路径子文件包括的各条存储路径信息传输对应的训练样本;
执行与每个所述存储路径子文件对应的传输任务,将每个所述存储路径子文件对应的训练样本上传至后台服务器。
采用上述数据处理的方法,在获取到训练数据集对应的存储路径文件的情况下,可以将这一文件划分为多个存储路径子文件,这里的每个存储路径子文件可以对应一个传输任务,一个传输任务可以传输多条存储路径信息对应的训练样本,相比相关技术中单个训练数据单独传输所导致的整体通信时长过长,且由于系统资源的占用所导致的资源利用率低的问题而言,传输任务数量显著降低,这降低了整体的通信时长,提升了传输效率和资源利用率。
在一种可能的实施方式中,所述将所述存储路径文件划分为多个存储路径子文件,包括:
获取可执行任务数量;
基于所述可执行任务数量将所述存储路径文件划分为多个存储路径子文件。
这里,可执行任务数量越多,可以划分的存储路径子文件的个数也越多,进而可以执行对应的传输任务。在实际应用中,通过可执行任务数量可以最大化资源利用率。
在一种可能的实施方式中,所述基于所述可执行任务数量将所述存储路径文件划分为多个存储路径子文件,包括:
获取所述训练样本集中每个训练样本的数据量;
基于所述可执行任务数量以及所述每个训练样本的数据量,将所述存储路径文件划分为多个存储路径子文件。
这里,考虑到不同训练样本的数据量对于传输速度的影响,这里,这里结合训练样本的数据量以及可执行任务数量实现存储路径子文件的划分,以适应任务传输的需要。
在一种可能的实施方式中,所述执行与每个所述存储路径子文件对应的传输任务,包括:
按照如下步骤执行每次传输任务:
确定每次传输任务下,从每个存储路径子文件包括的各条存储路径信息中选取的目标存储路径信息,以及从系统硬盘中读取所述目标存储路径信息对应的训练样本并存储至系统内存;
从所述系统内存中提取每次传输任务下存储的训练样本,并将提取的训练样本上传至后台服务器。
在一种可能的实施方式中,所述从系统硬盘中读取所述目标存储路径信息对应的训练样本,包括:
确定本次传输任务下,从各个存储路径子文件选取的目标存储路径信息对应的训练样本的数据总量;
在确定所述数据总量大于系统内存的可存储量的情况下,针对各个存储路径子文件对应的训练样本中的至少一个训练样本,采用滑窗读取方式,从系统硬盘中读取所述至少一个训练样本中每个训练样本的部分数据。
这里,在确定每次传输任务需要上传的数据总量大于系统内存的可存储量的情况下,针对各个存储路径子文件选取的目标存储路径信息对应的训练样本中的部分或全部训练样本可以采用滑窗读取方式读取部分数据,从而可以按块上传,在尽可能的确保各传输任务的顺利进行的情况下,提升内存的执行性能。
第二方面,本公开实施例还提供了一种数据处理的方法,所述方法包括:
响应客户端的数据发送请求,接收所述客户端发送的各个存储路径子文件对应的训练样本;其中,每个所述存储路径子文件对应的训练样本是基于该存储路径子文件对应的传输任务的执行上传训练样本后得到的;
利用接收的所述训练样本训练用于执行目标任务的神经网络。
这里,可以利用接收的各个存储路径子文件对应的训练样本进行用于执行目标任务的神经网络,这里的目标任务可以是对象检测任务,还可以是其它符合实际应用场景的任务,以适应不同应用场景的需求。
在一种可能的实施方式中,所述接收所述客户端发送的各个存储路径子文件对应的训练样本,包括:
在接收到客户端发送的一个存储路径子文件对应的训练样本的情况下,将预设映射表中与该存储路径子文件对应的预设键值位设置为传输完成标志位;
在各个所述存储路径子文件对应的预设键值位均设置为传输完成标志位的情况下,将接收的所述各个存储路径子文件对应的训练样本存储至预设数据库。
这里,为了便于进行训练数据集的统一管理,可以在各个所述存储路径子文件对应的预设键值位均设置为传输完成标志位的情况下,才进行对应的训练样本的存储。
在一种可能的实施方式中,所述方法还包括:
在所述存储路径子文件对应的训练样本中存在具有初始标注信息的目标训练样本的情况下,基于所述初始标注信息对应的预设存储路径信息从各个训练样本中查找存储路径信息与所述预设存储路径信息匹配的目标训练样本,提取所述目标训练样本,并将提取的目标训练样本与所述初始标注信息对应存储至预设数据库。
这里,针对训练样本的初始标注信息可以建立预设存储路径信息,且该预设存储路径信息可以是基于对应的训练样本的存储路径信息而确定的,这样,基于存储路径信息的查找可以确定目标训练样本,并能够对应存储初始标注信息,以便于基于标注信息实现后续操作。
在一种可能的实施方式中,所述方法还包括:
响应所述客户端针对所述目标训练样本的数据标注请求,将所述目标训练样本以及对应的初始标注信息推送至所述客户端,以使所述客户端对所述初始标注信息进行更新,得到更新后标注信息。
第三方面,本公开实施例还提供了一种数据处理的装置,所述装置包括:
获取模块,用于获取训练样本集对应的存储路径文件;所述存储路径文件中包括所述训练样本集中每个训练样本的存储路径信息;
划分模块,用于将所述存储路径文件划分为多个存储路径子文件;每个所述存储路径子文件对应一个传输任务,该传输任务用于基于所述存储路径子文件包括的各条存储路径信息传输对应的训练样本;
执行模块,用于执行与每个所述存储路径子文件对应的传输任务,将每个所述存储路径子文件对应的训练样本上传至后台服务器。
第四方面,本公开实施例还提供了一种数据处理的装置,所述装置包括:
接收模块,用于响应客户端的数据发送请求,接收所述客户端发送的各个存储路径子文件对应的训练样本;其中,每个所述存储路径子文件对应的训练样本是基于该存储路径子文件对应的传输任务的执行上传训练样本后得到的;
训练模块,用于利用接收的所述训练样本训练用于执行目标任务的神经网络。
第五方面,本公开实施例还提供了一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如第一方面及其各种实施方式、第二方面及其各种实施方式任一所述的数据处理的方法的步骤。
第六方面,本公开实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如第一方面及其各种实施方式、第二方面及其各种实施方式任一所述的数据处理的方法的步骤。
关于上述数据处理的装置、电子设备、及计算机可读存储介质的效果描述参见上述数据处理的方法的说明,这里不再赘述。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本公开实施例所提供的一种数据处理的方法的流程图;
图2示出了本公开实施例所提供的另一种数据处理的方法的流程图;
图3示出了本公开实施例所提供的一种数据处理的装置的示意图;
图4示出了本公开实施例所提供的另一种数据处理的装置的示意图;
图5示出了本公开实施例所提供的一种电子设备的示意图;
图6示出了本公开实施例所提供的另一种电子设备的示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
本文中术语“和/或”,仅仅是描述一种关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。
经研究发现目前的标注数据传输是采用串行方式,一个一个的传。每传输一个文件(对应一个训练样本)均需要一定的通信时间,例如,后台服务器需要在接收到本地服务器的传输请求的情况下准备文件接收,再如,本地服务器需要接收到服务器的已接受完成信息才准备下一个文件的传输。
然而,过多的训练样本量将导致整体通信时间过长,传输效率较低,且在整个通信过程中需要占用双方服务器的系统资源,导致资源利用不充分。
基于上述研究,本公开提供了一种数据处理的方法、装置、电子设备及存储介质,以提升整体传输效率以及资源利用率。
为便于对本实施例进行理解,首先对本公开实施例所公开的一种数据处理的方法进行详细介绍,本公开实施例所提供的数据处理的方法的执行主体一般为具有一定计算能力的计算机设备,该计算机设备例如包括:终端设备或服务器或其它处理设备,终端设备可以为用户设备(User Equipment,UE)、移动设备、用户终端、终端、蜂窝电话、无绳电话、个人数字助理(Personal Digital Assistant,PDA)、手持设备、计算设备、车载设备、可穿戴设备等。在一些可能的实现方式中,该数据处理的方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。
参见图1所示,为本公开实施例提供的数据处理的方法的流程图,该方法可以是由客户端执行的,上述数据处理的方法包括步骤S101~S103,其中:
S101:获取训练样本集对应的存储路径文件;存储路径文件中包括训练样本集中每个训练样本的存储路径信息;
S102:将存储路径文件划分为多个存储路径子文件;每个存储路径子文件对应一个传输任务,该传输任务用于基于存储路径子文件包括的各条存储路径信息传输对应的训练样本;
S103:执行与每个存储路径子文件对应的传输任务,将每个存储路径子文件对应的训练样本上传至后台服务器。
为了便于理解本公开实施例提供的数据处理的方法,接下来首先对该方法的应用场景进行详细介绍。上述数据处理的方法主要可以应用于网络训练的准备阶段,在这一阶段,可以把训练样本上传到后台服务器以在后台服务器完成相应的训练操作,这里的训练操作可以指示的是针对训练样本的标注,例如通过部分训练样本的标注数据来监督其它训练样本的标注任务,也可以是针对训练样本的网络训练任务,在此不做具体的限制。接下来多以训练数据的标注场景为例进行实例说明。
考虑到在实际的标注场景下,每传输一个文件(对应一个训练样本)均需要一定的通信时间,例如,后台服务器需要在接收到本地服务器的传输请求的情况下准备文件接收,再如,本地服务器需要接收到服务器的已接受完成信息才准备下一个文件的传输。然而,过多的训练样本量将导致整体通信时间过长,传输效率较低,且在整个通信过程中需要占用双方服务器的系统资源,导致资源利用不充分。
正是为了解决上述问题,本公开实施例才提供了一种先进行文件整合,再进行文件切分的数据传输方案,以加快数据轮转的速度,让数据更快标注,更早投入训练,以实现尽快产出网络模型的目的。
这里,可以先获取训练样本集对应的存储路径文件。其中,训练样本集可以对应的是当前需要进行传输的各个训练样本的集合,存储路径文件则对应的是各个训练样本的存储路径信息,通过存储路径信息可以查找到对应的训练样本。
这里的训练样本可以是图片,也可以是视频,也可以是文字,还可以是其它形式的数据,本公开实施例中基于不同的应用需求所对应传输的训练样本也不同,在此不做具体的限制。
为了便于实现传输任务,本公开实施例提供的数据处理的方法可以先将存储路径文件进行子文件的划分,划分后的每个存储路径子文件可以对应一个传输任务,通过各个传输任务的执行,可以将每个存储路径子文件对应的训练样本上传到后台服务器以便于后台服务器进行更进一步的处理。
其中,各个传输任务可以是并行执行的,而并行执行的任务数量可以是基于不同的传输需求来确定的。例如,共计拆分了10个存储路径子文件,对应10个传输任务,在进行这10个传输任务的过程中,可以并行执行这10个传输任务,也即,10个传输任务同时开启,也可以并行执行3个传输任务,例如,前3个传输任务并行启动,在完成第1个传输任务的情况下,第4个传输任务承接第1个传输任务的线程继续开始传输,在完成第2个传输任务的情况下,第5个传输任务承接第2个传输任务的线程继续开始传输,依次类推,直至将10个传输任务全部完成。
需要说明的是,这里的并行任务数量不宜过多,也不宜过少,过多的并行数量将可能导致内存资源不够用,多少的并行数据可能导致系统资源无法得以充分利用,因而,本公开实施例可以结合具体的应用需求来选择对应的并行任务数量,在此不做具体的限制。
在每个传输任务执行的过程中,可以将该传输任务指向的存储路径子文件包括的各条存储路径信息对应的训练样本上传至服务器。在进行训练样本上传的过程中,也可以基于并行上传策略进行样本上传,从而进一步提升上传效率,与此同时,还可以解决在上传训练样本的过程中因为单个数据上传所导致的整体通信时间过长的问题,提升系统资源利用率。
本公开实施例中,可以基于可执行任务数量将存储路径文件划分为多个存储路径子文件。
这里的可执行任务数量可以是并行执行的任务数量。例如,获取的训练样本集中共计10000个训练样本,对应10000个存储路径信息,若确定并行任务数量为10,则可以将10000个存储路径信息所对应的存储路径文件划分为10个存储路径子文件,每个存储路径子文件对应1000个存储路径信息。
其中,第一个存储路径子文件可以对应的是10000个存储路径信息中的前1000个存储路径信息,第二个存储路径子文件可以对应的是10000个存储路径信息中的第1001个至第2000个存储路径信息,依此类推。
本公开实施例中,还可以是结合每个训练样本的数据量以及上述可执行任务数量实现存储路径子文件的划分。这主要是考虑到不同的训练样本所具备的数据量也不同,为了更好的实现各任务之间的均衡传输,这里可以结合训练样本的数据量进行存储路径子文件的划分。
在具体应用中,可以在尽量确保每个存储路径子文件中的训练数据的数据总量大体一致的情况下进行划分。
这里仍以获取的训练样本集中共计10000个训练样本,对应10000个存储路径信息为例,若确定并行任务数量为10,这里也可以将10000个存储路径信息所对应的存储路径文件划分为10个存储路径子文件。
在进行每个存储路径子文件划分的过程中,可以综合考虑每个存储路径信息对应的训练样本的数据量,这里,每个存储路径子文件可以对应的是10000个存储路径信息中的若干个存储路径信息,且各个存储路径信息之间没有顺序要求,确保各个存储路径子文件所对应的训练数据总量大体一致即可。
考虑到训练样本的上传任务是在系统内存中执行的,本公开实施例提供的数据处理的方法需要结合数据存取机制以及并行传输机制实现上传,具体可以通过如下步骤来执行每次传输任务:
步骤一、确定每次传输任务下,从每个存储路径子文件包括的各条存储路径信息中选取的目标存储路径信息,以及从系统硬盘中读取目标存储路径信息对应的训练样本并存储至系统内存;
步骤二、从系统内存中提取每次传输任务下存储的训练样本,并将提取的训练样本上传至后台服务器。
这里,考虑到各个传输任务之间的并行性,在每次传输任务下,可以先确定从各个存储路径子文件中选取的目标存储路径信息。在这种情况下,可以从系统硬盘中读取目标存储路径信息对应的训练样本,并存储至系统内存以便于在系统内存中执行上传程序的情况下,能够从系统内存中提取每次传输任务存储的训练样本并进行相应训练样本的上传。
可知的是,本公开实施例可以以一次传输任务为单元进行训练样本的存取操作,这一定程度上可以避免由于内存不够用而导致的程序崩溃问题。
为了进一步的降低程序崩溃问题的发生,本公开实施例提供的数据处理的方法还可以在每次传输任务下,确定从各个存储路径子文件选取的目标存储路径信息对应的训练样本的数据总量,数据总量越多,这次传输任务所需占用的系统内存容量也就越大,反之,数据总量越小,所需占用的系统内存容量也就越小。本公开实施例中,可以在确定数据总量大于系统内存的可存储量的情况下,针对从各个存储路径子文件选取的目标存储路径信息对应的训练样本中的部分或全部训练样本,采取滑窗读取方式进行部分数据的读取。也即,采用一点一点滑窗读取方式,并按块(对应部分数据)上传,这样每次在内存里只有一部分训练样本,节约了很多内存,从而可以有效的解决了由于内存占用超负荷所可能导致的程序崩溃的问题。
参见图2所示,为本公开实施例提供的另一种数据处理的方法的流程图,该方法可以是由后台服务器执行的,上述数据处理的方法包括步骤S201~S202,其中:
S201:响应客户端的数据发送请求,接收客户端发送的各个存储路径子文件对应的训练样本;其中,每个存储路径子文件对应的训练样本是基于该存储路径子文件对应的传输任务的执行上传训练样本后得到的;
S202:利用接收的训练样本训练用于执行目标任务的神经网络。
这里的后台服务器可以在响应客户端的数据发送请求的情况下,接收客户端发送的各个存储路径子文件对应的训练样本,以利用接收的训练样本训练用于执行目标任务的神经网络。
本公开实施例中的数据发送请求可以是在客户端和后台服务器之间完成双方握手协议后发送的。在完成握手协议的情况下,后台服务器做好了接收相应训练样本的准备。在接收相应的训练样本的情况下,可以执行相应的神经网络的训练。
其中,上述神经网络能够执行目标任务,该目标任务可以是基于不同的应用场景所确定的。例如,这里可以是针对训练样本的标注任务,还可以是针对训练样本中目标对象的识别任务等等,本公开实施例对此不做具体的限制。
为了便于进行训练数据集的管理,本公开实施例提供的数据处理的方法可以在接收到各个存储路径子文件对应的训练样本的情况下,才进行入库的操作。具体可以通过如下步骤来实现:
步骤一、在接收到客户端发送的一个存储路径子文件对应的训练样本的情况下,将预设映射表中与该存储路径子文件对应的预设键值位设置为传输完成标志位;
步骤二、在各个存储路径子文件对应的预设键值位均设置为传输完成标志位的情况下,将接收的各个存储路径子文件对应的训练样本存储至预设数据库。
这里,可以针对每个存储路径子文件预先设置一个对应的预设键值位,这样,在接收到客户端发送的一个训练样本的情况下,均可以将对应的预设键值位设置为传输完成标志位,直至所有的存储路径子文件均对应设置为传输完成标志位,可以确定全部训练数据传输完成,进行可以执行入库操作。
在具体应用中,可以采用redis控制任务同步,每一个任务对应预设映射表map中的一个预设键值位key,每个任务完成都检查其他的key是否都已经完成,例如,是否都设置为了1,在所有任务都完成之后将数据入库。
考虑到标注任务是本公开实施例提供的数据处理的方法的一个关键应用,而在实际应用中,存在着标注方存在多个等问题,为了便于对标注数据进行统一的管理和操作,上述数据处理的方法提供了一种基于存储路径信息对比实现数据入库的方案。具体的,在存储路径子文件对应的训练样本中存在具有初始标注信息的目标训练样本的情况下,基于初始标注信息对应的预设存储路径信息从各个训练样本中查找存储路径信息与预设存储路径信息匹配的目标训练样本,提取目标训练样本,并将提取的目标训练样本与初始标注信息对应存储至预设数据库。
在实际应用中,不管目标训练样本是在上传服务器之前就具备了初始标注信息,还是已经在服务器上执行了对应的标注任务后才得到的初始标注信息,这里,均可以针对不同的训练样本设置与该训练样本的初始标注信息对应的预设存储路径信息。例如,训练样本的存储路径信息是a/b/1.jpg,那么对应的初始标注信息可以是a/b/1.jpg.json,这样,在进行训练样本入库的情况下,可以将目标训练样本与初始标注信息对应存储到预设数据库。
这样,在客户端具有人工标注等需求的情况下,可以响应客户端针对目标训练样本的数据标注请求,将目标训练样本以及对应的初始标注信息推送至客户端,以使客户端对初始标注信息进行更新,得到更新后标注信息。这样所更新得到的标注信息更为准确。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
基于同一发明构思,本公开实施例中还提供了与数据处理的方法对应的数据处理的装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述数据处理的方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
参照图3所示,为本公开实施例提供的一种数据处理的装置的示意图,装置包括:获取模块301、划分模块302、执行模块303;其中,
获取模块301,用于获取训练样本集对应的存储路径文件;存储路径文件中包括训练样本集中每个训练样本的存储路径信息;
划分模块302,用于将存储路径文件划分为多个存储路径子文件;每个存储路径子文件对应一个传输任务,该传输任务用于基于存储路径子文件包括的各条存储路径信息传输对应的训练样本;
执行模块303,用于执行与每个存储路径子文件对应的传输任务,将每个存储路径子文件对应的训练样本上传至后台服务器。
采用上述数据处理的装置,在获取到训练数据集对应的存储路径文件的情况下,可以将这一文件划分为多个存储路径子文件,这里的每个存储路径子文件可以对应一个传输任务,一个传输任务可以传输多条存储路径信息对应的训练样本,相比相关技术中单个训练数据单独传输所导致的整体通信时长过长,且由于系统资源的占用所导致的资源利用率低的问题而言,传输任务数量显著降低,这降低了整体的通信时长,提升了传输效率和资源利用率。
在一种可能的实施方式中,划分模块302,用于按照如下步骤将存储路径文件划分为多个存储路径子文件:
获取可执行任务数量;
基于可执行任务数量将存储路径文件划分为多个存储路径子文件。
在一种可能的实施方式中,划分模块302,用于按照如下步骤基于可执行任务数量将存储路径文件划分为多个存储路径子文件:
获取训练样本集中每个训练样本的数据量;
基于可执行任务数量以及每个训练样本的数据量,将存储路径文件划分为多个存储路径子文件。
在一种可能的实施方式中,执行模块303,用于按照如下步骤执行与每个存储路径子文件对应的传输任务:
按照如下步骤执行每次传输任务:
确定每次传输任务下,从每个存储路径子文件包括的各条存储路径信息中选取的目标存储路径信息,以及从系统硬盘中读取目标存储路径信息对应的训练样本并存储至系统内存;
从系统内存中提取每次传输任务下存储的训练样本,并将提取的训练样本上传至后台服务器。
在一种可能的实施方式中,执行模块303,用于按照如下步骤从系统硬盘中读取目标存储路径信息对应的训练样本:
确定本次传输任务下,从各个存储路径子文件选取的目标存储路径信息对应的训练样本的数据总量;
在确定数据总量大于系统内存的可存储量的情况下,针对各个存储路径子文件对应的训练样本中的至少一个训练样本,采用滑窗读取方式,从系统硬盘中读取至少一个训练样本中每个训练样本的部分数据。
参照图4所示,为本公开实施例提供的一种数据处理的装置的示意图,装置包括:接收模块401和训练模块402;其中,
接收模块401,用于响应客户端的数据发送请求,接收客户端发送的各个存储路径子文件对应的训练样本;其中,每个存储路径子文件对应的训练样本是基于该存储路径子文件对应的传输任务的执行上传训练样本后得到的;
训练模块402,用于利用接收的训练样本训练用于执行目标任务的神经网络。
这里,可以利用接收的各个存储路径子文件对应的训练样本进行用于执行目标任务的神经网络,这里的目标任务可以是对象检测任务,还可以是其它符合实际应用场景的任务,以适应不同应用场景的需求。
在一种可能的实施方式中,接收模块401,用于按照如下步骤接收客户端发送的各个存储路径子文件对应的训练样本:
在接收到客户端发送的一个存储路径子文件对应的训练样本的情况下,将预设映射表中与该存储路径子文件对应的预设键值位设置为传输完成标志位;
在各个存储路径子文件对应的预设键值位均设置为传输完成标志位的情况下,将接收的各个存储路径子文件对应的训练样本存储至预设数据库。
在一种可能的实施方式中,上述装置还包括:
存储模块403,用于在存储路径子文件对应的训练样本中存在具有初始标注信息的目标训练样本的情况下,基于初始标注信息对应的预设存储路径信息从各个训练样本中查找存储路径信息与预设存储路径信息匹配的目标训练样本,提取目标训练样本,并将提取的目标训练样本与初始标注信息对应存储至预设数据库。
在一种可能的实施方式中,上述装置还包括:
更新模块404,用于响应客户端针对目标训练样本的数据标注请求,将目标训练样本以及对应的初始标注信息推送至客户端,以使客户端对初始标注信息进行更新,得到更新后标注信息。
关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。
本公开实施例还提供了一种电子设备,如图5所示,为本公开实施例提供的电子设备结构示意图,包括:处理器501、存储器502、和总线503。存储器502存储有处理器501可执行的机器可读指令(比如,图3中的装置中获取模块301、划分模块302、执行模块303对应的执行指令等),当电子设备运行时,处理器501与存储器502之间通过总线503通信,机器可读指令被处理器501执行时执行如下处理:
获取训练样本集对应的存储路径文件;存储路径文件中包括训练样本集中每个训练样本的存储路径信息;
将存储路径文件划分为多个存储路径子文件;每个存储路径子文件对应一个传输任务,该传输任务用于基于存储路径子文件包括的各条存储路径信息传输对应的训练样本;
执行与每个存储路径子文件对应的传输任务,将每个存储路径子文件对应的训练样本上传至后台服务器。
本公开实施例还提供了一种电子设备,如图6所示,为本公开实施例提供的电子设备结构示意图,包括:处理器601、存储器602、和总线603。存储器602存储有处理器601可执行的机器可读指令(比如,图4中的装置中接收401、训练模块402对应的执行指令等),当电子设备运行时,处理器601与存储器602之间通过总线603通信,机器可读指令被处理器601执行时执行如下处理:
响应客户端的数据发送请求,接收客户端发送的各个存储路径子文件对应的训练样本;其中,每个存储路径子文件对应的训练样本是基于该存储路径子文件对应的传输任务的执行上传训练样本后得到的;
利用接收的训练样本训练用于执行目标任务的神经网络。
本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中的数据处理的方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。
本公开实施例还提供一种计算机程序产品,该计算机程序产品承载有程序代码,所述程序代码包括的指令可用于执行上述方法实施例中所述的数据处理的方法的步骤,具体可参见上述方法实施例,在此不再赘述。
其中,上述计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。
Claims (13)
1.一种数据处理的方法,其特征在于,所述方法包括:
获取训练样本集对应的存储路径文件;所述存储路径文件中包括所述训练样本集中每个训练样本的存储路径信息;
将所述存储路径文件划分为多个存储路径子文件;每个所述存储路径子文件对应一个传输任务,该传输任务用于基于所述存储路径子文件包括的各条存储路径信息传输对应的训练样本;
执行与每个所述存储路径子文件对应的传输任务,将每个所述存储路径子文件对应的训练样本上传至后台服务器。
2.根据权利要求1所述的方法,其特征在于,所述将所述存储路径文件划分为多个存储路径子文件,包括:
获取可执行任务数量;
基于所述可执行任务数量将所述存储路径文件划分为多个存储路径子文件。
3.根据权利要求2所述的方法,其特征在于,所述基于所述可执行任务数量将所述存储路径文件划分为多个存储路径子文件,包括:
获取所述训练样本集中每个训练样本的数据量;
基于所述可执行任务数量以及所述每个训练样本的数据量,将所述存储路径文件划分为多个存储路径子文件。
4.根据权利要求1-3任一所述的方法,其特征在于,所述执行与每个所述存储路径子文件对应的传输任务,包括:
按照如下步骤执行每次传输任务:
确定每次传输任务下,从每个存储路径子文件包括的各条存储路径信息中选取的目标存储路径信息,以及从系统硬盘中读取所述目标存储路径信息对应的训练样本并存储至系统内存;
从所述系统内存中提取每次传输任务下存储的训练样本,并将提取的训练样本上传至后台服务器。
5.根据权利要求4所述的方法,其特征在于,所述从系统硬盘中读取所述目标存储路径信息对应的训练样本,包括:
确定本次传输任务下,从各个存储路径子文件选取的目标存储路径信息对应的训练样本的数据总量;
在确定所述数据总量大于系统内存的可存储量的情况下,针对各个存储路径子文件对应的训练样本中的至少一个训练样本,采用滑窗读取方式,从系统硬盘中读取所述至少一个训练样本中每个训练样本的部分数据。
6.一种数据处理的方法,其特征在于,所述方法包括:
响应客户端的数据发送请求,接收所述客户端发送的各个存储路径子文件对应的训练样本;其中,每个所述存储路径子文件对应的训练样本是基于该存储路径子文件对应的传输任务的执行上传训练样本后得到的;
利用接收的所述训练样本训练用于执行目标任务的神经网络。
7.根据权利要求6所述的方法,其特征在于,所述接收所述客户端发送的各个存储路径子文件对应的训练样本,包括:
在接收到客户端发送的一个存储路径子文件对应的训练样本的情况下,将预设映射表中与该存储路径子文件对应的预设键值位设置为传输完成标志位;
在各个所述存储路径子文件对应的预设键值位均设置为传输完成标志位的情况下,将接收的所述各个存储路径子文件对应的训练样本存储至预设数据库。
8.根据权利要求6或7所述的方法,其特征在于,所述方法还包括:
在所述存储路径子文件对应的训练样本中存在具有初始标注信息的目标训练样本的情况下,基于所述初始标注信息对应的预设存储路径信息从各个训练样本中查找存储路径信息与所述预设存储路径信息匹配的目标训练样本,提取所述目标训练样本,并将提取的目标训练样本与所述初始标注信息对应存储至预设数据库。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
响应所述客户端针对所述目标训练样本的数据标注请求,将所述目标训练样本以及对应的初始标注信息推送至所述客户端,以使所述客户端对所述初始标注信息进行更新,得到更新后标注信息。
10.一种数据处理的装置,其特征在于,所述装置包括:
获取模块,用于获取训练样本集对应的存储路径文件;所述存储路径文件中包括所述训练样本集中每个训练样本的存储路径信息;
划分模块,用于将所述存储路径文件划分为多个存储路径子文件;每个所述存储路径子文件对应一个传输任务,该传输任务用于基于所述存储路径子文件包括的各条存储路径信息传输对应的训练样本;
执行模块,用于执行与每个所述存储路径子文件对应的传输任务,将每个所述存储路径子文件对应的训练样本上传至后台服务器。
11.一种数据处理的装置,其特征在于,所述装置包括:
接收模块,用于响应客户端的数据发送请求,接收所述客户端发送的各个存储路径子文件对应的训练样本;其中,每个所述存储路径子文件对应的训练样本是基于该存储路径子文件对应的传输任务的执行上传训练样本后得到的;
训练模块,用于利用接收的所述训练样本训练用于执行目标任务的神经网络。
12.一种电子设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1至9任一所述的数据处理的方法的步骤。
13.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至9任一所述的数据处理的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110699823.8A CN113377720A (zh) | 2021-06-23 | 2021-06-23 | 一种数据处理的方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110699823.8A CN113377720A (zh) | 2021-06-23 | 2021-06-23 | 一种数据处理的方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113377720A true CN113377720A (zh) | 2021-09-10 |
Family
ID=77578830
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110699823.8A Pending CN113377720A (zh) | 2021-06-23 | 2021-06-23 | 一种数据处理的方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113377720A (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170331867A1 (en) * | 2015-06-17 | 2017-11-16 | Tencent Technology (Shenzhen) Company Limited | Method, device and system for pushing file |
CN110210566A (zh) * | 2019-06-06 | 2019-09-06 | 无锡火球普惠信息科技有限公司 | 基于Spark的一对多支持向量机框架及其并行化方法 |
WO2020029388A1 (zh) * | 2018-08-07 | 2020-02-13 | 平安科技(深圳)有限公司 | 文件传输方法、系统、计算机设备和存储介质 |
CN111125059A (zh) * | 2019-12-17 | 2020-05-08 | 南京甄视智能科技有限公司 | 数据迁移方法、装置、存储介质及服务器 |
CN111314339A (zh) * | 2020-02-12 | 2020-06-19 | 腾讯科技(深圳)有限公司 | 数据传输方法及装置 |
CN111901377A (zh) * | 2020-06-28 | 2020-11-06 | 苏州浪潮智能科技有限公司 | 一种基于ai训练平台的文件传输方法、装置、设备和介质 |
CN112035230A (zh) * | 2020-09-01 | 2020-12-04 | 中国银行股份有限公司 | 一种任务调度文件生成方法、装置及存储介质 |
CN112181662A (zh) * | 2020-10-13 | 2021-01-05 | 深圳壹账通智能科技有限公司 | 任务调度方法、装置、电子设备及存储介质 |
-
2021
- 2021-06-23 CN CN202110699823.8A patent/CN113377720A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170331867A1 (en) * | 2015-06-17 | 2017-11-16 | Tencent Technology (Shenzhen) Company Limited | Method, device and system for pushing file |
WO2020029388A1 (zh) * | 2018-08-07 | 2020-02-13 | 平安科技(深圳)有限公司 | 文件传输方法、系统、计算机设备和存储介质 |
CN110210566A (zh) * | 2019-06-06 | 2019-09-06 | 无锡火球普惠信息科技有限公司 | 基于Spark的一对多支持向量机框架及其并行化方法 |
CN111125059A (zh) * | 2019-12-17 | 2020-05-08 | 南京甄视智能科技有限公司 | 数据迁移方法、装置、存储介质及服务器 |
CN111314339A (zh) * | 2020-02-12 | 2020-06-19 | 腾讯科技(深圳)有限公司 | 数据传输方法及装置 |
CN111901377A (zh) * | 2020-06-28 | 2020-11-06 | 苏州浪潮智能科技有限公司 | 一种基于ai训练平台的文件传输方法、装置、设备和介质 |
CN112035230A (zh) * | 2020-09-01 | 2020-12-04 | 中国银行股份有限公司 | 一种任务调度文件生成方法、装置及存储介质 |
CN112181662A (zh) * | 2020-10-13 | 2021-01-05 | 深圳壹账通智能科技有限公司 | 任务调度方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106294798B (zh) | 一种基于缩略图的图像分享方法和终端 | |
CN107609056B (zh) | 一种基于图片识别的问答处理方法与设备 | |
US20200204688A1 (en) | Picture book sharing method and apparatus and system using the same | |
CN110851748A (zh) | 短链接的生成方法、服务器、存储介质及计算机设备 | |
CN111737443B (zh) | 答案文本的处理方法和装置、关键文本的确定方法 | |
CN109766422A (zh) | 信息处理方法、装置及系统、存储介质、终端 | |
CN111144402A (zh) | Ocr识别准确率的计算方法、装置、设备以及存储介质 | |
CN114817651B (zh) | 数据存储方法、数据查询方法、装置和设备 | |
CN115203159B (zh) | 一种数据存储方法、装置、计算机设备和存储介质 | |
US10938773B2 (en) | Method and apparatus for synchronizing contact information and medium | |
CN114579570A (zh) | 数据处理方法及装置 | |
CN113780556A (zh) | 神经网络训练及文字识别的方法、装置、设备及存储介质 | |
CN111292171B (zh) | 金融理财产品推送方法及装置 | |
CN113377720A (zh) | 一种数据处理的方法、装置、电子设备及存储介质 | |
CN111427917A (zh) | 搜索数据处理方法及相关产品 | |
CN104090878A (zh) | 一种多媒体查找方法、终端、服务器及系统 | |
CN110147531B (zh) | 一种相似文本内容的识别方法、装置及存储介质 | |
CN112184027A (zh) | 任务进度更新方法、装置及存储介质 | |
CN115794876A (zh) | 针对业务数据包的分片处理方法、装置、设备及存储介质 | |
CN113486025A (zh) | 数据存储方法、数据查询方法及装置 | |
CN108509478B (zh) | 规则引擎文件的拆分调用方法、电子装置及存储介质 | |
CN111597368A (zh) | 一种数据处理方法及装置 | |
CN110609766A (zh) | 一种基于Redis协议的KV数据存储方法及装置 | |
CN115454356B (zh) | 基于识别和聚合算法的数据文件处理方法、装置和设备 | |
CN117251351B (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 |