CN111240843B - 一种数据获取方法、装置、电子设备及存储介质 - Google Patents

一种数据获取方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN111240843B
CN111240843B CN202010030599.9A CN202010030599A CN111240843B CN 111240843 B CN111240843 B CN 111240843B CN 202010030599 A CN202010030599 A CN 202010030599A CN 111240843 B CN111240843 B CN 111240843B
Authority
CN
China
Prior art keywords
file
data
target
training
target file
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.)
Active
Application number
CN202010030599.9A
Other languages
English (en)
Other versions
CN111240843A (zh
Inventor
余虹建
李锦丰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Juyuncube Technology Co ltd
Original Assignee
Beijing Juyuncube Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Juyuncube Technology Co ltd filed Critical Beijing Juyuncube Technology Co ltd
Priority to CN202010030599.9A priority Critical patent/CN111240843B/zh
Publication of CN111240843A publication Critical patent/CN111240843A/zh
Application granted granted Critical
Publication of CN111240843B publication Critical patent/CN111240843B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • G06F12/0871Allocation or management of cache space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • G06F2212/1021Hit rate improvement

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例公开一种数据获取方法、装置、电子设备及存储介质,涉及计算机技术领域,能够有效提高模型训练中训练数据的获取速度。所述数据获取方法,包括:确定训练数据集所需的数据存储空间与内存剩余空间的大小关系;在所述数据存储空间大于所述内存剩余空间的情况下,根据预设策略,在所述训练数据集中选择至少一个文件为目标文件;将所述目标文件存储在预先建立的数据变量中,以便从所述数据变量中获取所述目标文件。本发明适用于机器学习的模型训练中。

Description

一种数据获取方法、装置、电子设备及存储介质
技术领域
本发明涉及计算机技术领域,尤其涉及一种数据获取方法、装置、电子设备及存储介质。
背景技术
近年来,人工智能技术在产业和生活中得到了越来越广泛的应用。机器学习作为人工智能领域的一个重要分支,能够通过大量的训练数据,得到较为理想的数学模型,从而模拟人的思维。
然而,由于模型训练所需的数据量巨大,常常是千万级的文件数量,训练数据的读取速度成为影响模型训练效率的重要因素。
对于模型训练中,训练数据的读取速度较慢的问题,相关领域尚无有效的解决方案。
发明内容
有鉴于此,本发明实施例提供一种数据获取方法、装置、电子设备及存储介质,能够有效提高模型训练中训练数据的获取速度。
第一方面,本发明实施例提供一种数据获取方法,包括:
确定训练数据集所需的数据存储空间与内存剩余空间的大小关系;
在所述数据存储空间大于所述内存剩余空间的情况下,根据预设策略,在所述训练数据集中选择至少一个文件为目标文件;
将所述目标文件存储在预先建立的数据变量中,以便从所述数据变量中获取所述目标文件。
可选的,所述预设策略包括:
将所述训练数据集中文件大小小于第一阈值的文件作为目标文件;
或者,
根据所述训练数据集中各文件的文件大小以及所述内存剩余空间,确定所述目标文件,以使所述目标文件的数量大于第二阈值,和/或所述目标文件存储在所述数据变量中后,所述内存剩余空间小于第三阈值。
可选的,所述将所述目标文件存储在预先建立的数据变量中包括:
在首次读取所述目标文件后,将所述目标文件存储在所述数据变量中;
或者,
在读取所述目标文件前,先将所述目标文件加载在所述数据变量中。
可选的,所述在首次读取所述目标文件后,将所述目标文件存储在所述数据变量中包括:
从所述训练数据集中读取第一文件;
确定所述第一文件是否为首次读取的所述目标文件;
在所述第一文件为首次读取的所述目标文件的情况下,将所述第一文件中的数据保存在所述数据变量中。
可选的,所述将所述目标文件存储在预先建立的数据变量中之后,所述方法还包括:
接收从所述训练数据集中读取第二文件的指令;
在所述数据变量中查找所述第二文件;
在查找到所述第二文件的情况下,利用所述数据变量中保存的所述第二文件进行模型训练;
在未查找到所述第二文件的情况下,从远端服务器获取所述第二文件。
可选的,所述数据获取方法还包括:
将所述训练数据集缓存在本地硬盘;
在未查找到所述第二文件的情况下,从本地硬盘获取所述第二文件。
第二方面,本发明的实施例还提供一种数据获取装置,包括:
确定单元,用于确定训练数据集所需的数据存储空间与内存剩余空间的大小关系;
选择单元,用于在所述数据存储空间大于所述内存剩余空间的情况下,根据预设策略,在所述训练数据集中选择至少一个文件为目标文件;
存储单元,用于将所述目标文件存储在预先建立的数据变量中,以便从所述数据变量中获取所述目标文件。
可选的,所述预设策略包括:
将所述训练数据集中文件大小小于第一阈值的文件作为目标文件;
或者,
根据所述训练数据集中各文件的文件大小以及所述内存剩余空间,确定所述目标文件,以使所述目标文件的数量大于第二阈值,和/或所述目标文件存储在所述数据变量中后,所述内存剩余空间小于第三阈值。
可选的,所述存储单元包括:
第一存储模块,用于在首次读取所述目标文件后,将所述目标文件存储在所述数据变量中;
或者,
第二存储模块,用于在读取所述目标文件前,先将所述目标文件加载在所述数据变量中。
可选的,所述第一存储模块具体用于:
从所述训练数据集中读取第一文件;
确定所述第一文件是否为首次读取的所述目标文件;
在所述第一文件为首次读取的所述目标文件的情况下,将所述第一文件中的数据保存在所述数据变量中。
可选的,所述数据获取装置还包括:
接收单元,用于在将所述目标文件存储在预先建立的数据变量中之后,接收从所述训练数据集中读取第二文件的指令;
查找单元,用于在所述数据变量中查找所述第二文件;
获取单元,用于在查找到所述第二文件的情况下,从所述数据变量中获取所述第二文件,以利用所述第二文件进行模型训练;在未查找到所述第二文件的情况下,从远端服务器获取所述第二文件,以利用所述第二文件进行模型训练。
可选的,所述数据获取装置还包括:
硬盘缓存单元,用于将所述训练数据集缓存在本地硬盘;
所述获取单元,还用于在未查找到所述第二文件的情况下,从本地硬盘获取所述第二文件,以利用所述第二文件进行模型训练。
第三方面,本发明的实施例还提供一种电子设备,所述电子设备包括:壳体、处理器、存储器、电路板和电源电路,其中,电路板安置在壳体围成的空间内部,处理器和存储器设置在电路板上;电源电路,用于为上述电子设备的各个电路或器件供电;存储器用于存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行本发明的实施例提供的任一种数据获取方法。
第四方面,本发明的实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现本发明的实施例提供的任一种数据获取方法。
本发明的实施例提供的数据获取方法、装置、电子设备及存储介质,能够确定训练数据集所需的数据存储空间与内存剩余空间的大小关系,在所述数据存储空间大于所述内存剩余空间的情况下,根据预设策略,在所述训练数据集中选择至少一个文件为目标文件,将所述目标文件存储在预先建立的数据变量中,以便从所述数据变量中获取所述目标文件。这样,当内存剩余空间无法容纳下训练数据集的全部数据时,即使每次读取文件都由于该文件之前的读取频率过低而无法实现缓存文件的命中,也能够将一部分文件以数据变量的形式在内存中保留下来,从而有效减少了访问外部存储设备进行数据读取的频率,因此也有效提高了模型训练中训练数据的获取速度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本发明的实施例提供的数据获取方法的一种流程图;
图2为本发明的实施例提供的数据获取装置的一种结构示意图;
图3为本发明的实施例提供的数据获取装置中存储单元的一种结构示意图;
图4为本发明的实施例提供的数据获取装置的另一种结构示意图;
图5为本发明的实施例提供的数据获取装置的又一种结构示意图;
图6为本发明的实施例提供的电子设备的一种结构示意图。
具体实施方式
下面结合附图对本发明实施例进行详细描述。
应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在机器学***。这就使得计算机中,根据文件读取频率来缓存文件的机制无法有效发挥缓存的优势,在多轮的数据读取和模型训练中,常常要频繁访问外部存储设备来获取训练数据,因此,数据获取速度较慢。
为此,本发明的实施例提供一种数据获取方法、装置、电子设备及存储介质,能够有效提高模型训练中训练数据的获取速度。
第一方面,本发明的实施例提供一种数据获取方法,能够有效提高模型训练中训练数据的获取速度。
如图1所示,本发明的实施例提供的数据获取方法可以包括:
S11,确定训练数据集所需的数据存储空间与内存剩余空间的大小关系;
具体而言,模型训练服务器可以以读取文件的方式读取训练数据。一项模型训练任务所需的所有训练数据可以形成一个数据集(data set)。模型训练所需的数据量巨大,可选的,一个数据集常常可以包括千万级别的文件数,而一个数据集所占据的存储空间也相当巨大。
可选的,模型训练服务器在读取训练数据前,可以通过读取文件头信息或通过其他交互信息获知此次训练的数据集的数据量大小(size),也即是该数据集需要占据的数据存储空间的大小,例如132G、60G等。获知了训练数据集所需的数据存储空间之后,可以将数据存储空间与计算机当前的内存剩余空间相比较。例如,如果当前内存剩余空间为20G,训练数据集所需的数据存储空间为35G,则训练数据集所需的数据存储空间大于当前内存可以提供的剩余空间,即,该训练数据集无法被完全存入内存。
S12,在所述数据存储空间大于所述内存剩余空间的情况下,根据预设策略,在所述训练数据集中选择至少一个文件为目标文件;
本步骤中,在数据存储空间大于内存剩余空间的情况下,对默认的、按照读取频率进行文件缓存策略进行主动干预,可以按照预设策略,在训练数据集中选择一个文件或多个文件为目标文件。
可选的,预设策略可以根据具体需要进行设置。例如,预设策略可以为将训练数据集中预设路径下的文件选为目标文件,或者将预设文件名的文件选为目标文件,或者将文件大小处于预设区间的文件选为目标文件等。
S13,将所述目标文件存储在预先建立的数据变量中,以便从所述数据变量中获取所述目标文件。
本步骤中,在数据存储空间大于内存剩余空间的情况下,将根据预设策略选中的目标文件以数据变量的形式主动保存在内存中。可选的,数据变量的具体类型不限,例如可以为整型变量、字符串型变量、一维数组变量、多维数组变量、结构体变量等。例如对于图片类型的文件,可以建立数组变量,将文件中的各像素点对应的像素值分别保存在各个数据元素中。
本发明的实施例提供的数据获取方法,能够确定训练数据集所需的数据存储空间与内存剩余空间的大小关系,在所述数据存储空间大于所述内存剩余空间的情况下,根据预设策略,在所述训练数据集中选择至少一个文件为目标文件,将所述目标文件存储在预先建立的数据变量中,以便从所述数据变量中获取所述目标文件。这样,当内存剩余空间无法容纳下训练数据集的全部数据时,即使每次读取文件都由于该文件之前的读取频率过低而无法实现缓存文件的命中,也能够将一部分文件以数据变量的形式在内存中保留下来,从而有效减少了访问外部存储设备进行数据读取的频率,因此也有效提高了模型训练中训练数据的获取速度。
可选的,在步骤S11中,训练数据集所需的数据存储空间与内存剩余空间的大小关系可以包括两种情况:第一种情况是,数据存储空间小于或等于内存剩余空间,此时训练数据集能够被完整载入内存,每次读取训练数据时,只需从内存中读取即可,此时不会触发缓存调度操作;第二种情况是,数据存储空间大于内存剩余空间,此时内存中只能缓存训练数据集的部分数据,因此会触发缓存调度操作。
当数据存储空间大于内存剩余空间时,为了避免出现按照文件被读取的频率缓存文件的情况,在本发明的实施例中,可以建立一个与缓存调度并列的数据存留机制。具体而言,可以在步骤S12中根据预设策略,在所述训练数据集中选择至少一个文件为目标文件,以便在步骤S13中将目标文件以数据变量的形式保存在内存中。
在本发明的实施例中,当进行模型训练时,需要对数据集中的数据进行N轮的读取操作,也就是说,数据集中的所有数据都至少要被读取N次。为了尽量减少读取数据所花费的通信时间,在本发明的一个实施例中,所述预设策略可以包括将所述训练数据集中文件大小小于第一阈值的文件作为所述目标文件。这样,通过将文件大小比较小文件都选为目标文件作为数据变量保存,一方面不会占用太多的缓存空间,另一方面,可以缓存较多数量的文件,从而有效减少了从外部存储器读取文件的概率,有效提升了数据的获取速度。第一阈值的大小可以根据需要进行灵活设置和调整,例如可以为10M,50M等。
可选的,在本发明的另一个实施例中,所述预设策略也可以包括:根据所述训练数据集中各文件的文件大小以及所述内存剩余空间,确定所述目标文件,以使所述目标文件的数量大于第二阈值,和/或以使所述目标文件存储在数据变量中后,所述内存剩余空间小于第三阈值。也即是说,本实施例中,可以提前获知训练数据集中各文件的大小,以及内存剩余空间的大小,将尽量多的文件选择为目标文件进行主动保存,和/或让目标文件存储在数据变量中后内存剩余空间尽量小。
举例而言,在本发明的一个实施例中,如果内存剩余空间为9.5G,训练数据集中文件大小为50M的文件有100个,文件大小为200M的文件有20个,文件大小为1G的文件有30个,则可以选择缓存100个50M的文件(5G)、20个200M的文件(4G),这样,共缓存了120个文件,缓存了上述文件后,内存剩余空间为9.5G-5G-4G=0.5G。可选的,在本发明的另一个实施例中,也可以选择缓存90个50M的文件(4.5G),20个200M的文件(4G),一个1G的文件(1G),这样,总共缓存了111个文件,内存剩余空间为9.5G-4.5G-4G-1G=0G。
需要说明的是,在本发明的实施例中,由于通过数据变量保存目标文件与缓存调度是两个并行的方案,也即是说,在通过数据变量保存目标文件的同时,缓存也会按照其原本的调度策略,将读取频率高的文件保留在缓存中,因此,对于内存剩余空间的利用可以权衡进行。
本发明的实施例中,尽可能利用有限的内存剩余空间保存更多数量的文件,对于每次的数据读取操作,如果数据没有被在内存中通过数据变量保存,则需要花费额外的通信时间,去外部存储设备中读数据,而如果数据已经通过数据变量保存,则可以节省掉上述通信时间,直接从缓存中将数据读出,从而提高数据的获取速度。
选择了目标文件后,可以在步骤S13中对目标文件进行保存。可选的,在步骤S13中,将所述目标文件存储在预先建立的数据变量中具体可以包括:
在首次读取所述目标文件后,将所述目标文件存储在所述数据变量中;或者在读取所述目标文件前,先将所述目标文件加载在所述数据变量中。
可选的,在首次读取所述目标文件后,将所述目标文件存储在所述数据变量中具体可以包括:
从所述训练数据集中读取第一文件;
确定所述第一文件是否为首次读取的所述目标文件;
在所述第一文件为首次读取的所述目标文件的情况下,将所述第一文件中的数据保存在所述数据变量中。
进一步的,将所述目标文件存储在预先建立的数据变量中之后,本发明的实施例提供的数据获取方法还可以包括:
接收从所述训练数据集中读取第二文件的指令;
在所述数据变量中查找所述第二文件;
在查找到所述第二文件的情况下,利用所述数据变量中保存的所述第二文件进行模型训练;
在未查找到所述第二文件的情况下,从远端服务器获取所述第二文件。
举例而言,在本发明的一个实施例中,假设一个数据集有一千五百万张图片,各张图片需要循环100轮进行数据输入和模型训练,即数据集重复输入了100轮。每轮训练中,图片数据可以分批读入。可选的,每批读入的数据量可以根据需要进行设定。第一轮读取这一千五百万张图片时,每批数据都是第一次读入,如果内存中预先没有保存该图片文件,则需要确定是否将该文件确定为目标文件,以便为之后的99轮训练进行数据准备。即,第一轮读入文件时,可以按照预设策略将数据量最小的一批图片以数据变量的形式保存在内存中。从第二轮读取这一千五百万张图开始,先去上述数据变量中查找,如果数据变量中没有,再去远端服务器中读取。
可选的,在本发明的一个实施例中,为了进一步节省数据读取的通信时间,本发明的实施例提供的数据获取方法还可以包括:
将所述训练数据集缓存在本地硬盘;
在未查找到所述第二文件的情况下,从本地硬盘获取所述第二文件,以利用所述第二文件进行模型训练。
第二方面,本发明的实施例还提供数据获取装置,能够有效提高模型训练中训练数据的获取速度。
如图2所示,本发明的实施例提供的数据获取装置可以包括:
确定单元21,用于确定训练数据集所需的数据存储空间与内存剩余空间的大小关系;
选择单元22,用于在所述数据存储空间大于所述内存剩余空间的情况下,根据预设策略,在所述训练数据集中选择至少一个文件为目标文件;
存储单元23,用于将所述目标文件存储在预先建立的数据变量中,以便从所述数据变量中获取所述目标文件。
本发明的实施例提供的数据获取装置,能够确定训练数据集所需的数据存储空间与内存剩余空间的大小关系,在所述数据存储空间大于所述内存剩余空间的情况下,根据预设策略,在所述训练数据集中选择至少一个文件为目标文件,将所述目标文件存储在预先建立的数据变量中,以便从所述数据变量中获取所述目标文件。这样,当内存剩余空间无法容纳下训练数据集的全部数据时,即使每次读取文件都由于该文件之前的读取频率过低而无法实现缓存文件的命中,也能够将一部分文件以数据变量的形式在内存中保留下来,从而有效减少了访问外部存储设备进行数据读取的频率,因此也有效提高了模型训练中训练数据的获取速度。
可选的,所述预设策略可以包括:
将所述训练数据集中文件大小小于第一阈值的文件作为目标文件;
或者,
根据所述训练数据集中各文件的文件大小以及所述内存剩余空间,确定所述目标文件,以使所述目标文件的数量大于第二阈值,和/或所述目标文件存储在所述数据变量中后,所述内存剩余空间小于第三阈值。
可选的,如图3所示,存储单元23具体可以包括:
第一存储模块231,用于在首次读取所述目标文件后,将所述目标文件存储在所述数据变量中;
或者
第二存储模块232,用于在读取所述目标文件前,先将所述目标文件加载在所述数据变量中。
可选的,第一存储模块231具体可以用于:
从所述训练数据集中读取第一文件;
确定所述第一文件是否为首次读取的所述目标文件;
在所述第一文件为首次读取的所述目标文件的情况下,将所述第一文件中的数据保存在所述数据变量中。
可选的,如图4所示,所述数据获取装置还可以包括:
接收单元24,用于在将所述目标文件存储在预先建立的数据变量中之后,接收从所述训练数据集中读取第二文件的指令;
查找单元25,用于在所述数据变量中查找所述第二文件;
获取单元26,用于在查找到所述第二文件的情况下,从所述数据变量中获取所述第二文件,以利用所述第二文件进行模型训练;在未查找到所述第二文件的情况下,从远端服务器获取所述第二文件,以利用所述第二文件进行模型训练。
可选的,如图5所示,所述数据获取装置还可以包括:
硬盘缓存单元27,用于将所述训练数据集缓存在本地硬盘;
获取单元26,还用于在未查找到所述第二文件的情况下,从本地硬盘获取所述第二文件,以利用所述第二文件进行模型训练。
第三方面,本发明的实施例还提供一种电子设备,能够有效提高模型训练中训练数据的获取速度。
如图6所示,本发明的实施例提供的电子设备,可以包括:壳体51、处理器52、存储器53、电路板54和电源电路55,其中,电路板54安置在壳体51围成的空间内部,处理器52和存储器53设置在电路板54上;电源电路55,用于为上述电子设备的各个电路或器件供电;存储器53用于存储可执行程序代码;处理器52通过读取存储器53中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述任一实施例提供的数据获取方法。
处理器52对上述步骤的具体执行过程以及处理器52通过运行可执行程序代码来进一步执行的步骤,可以参见前述实施例的描述,在此不再赘述。
上述电子设备以多种形式存在,包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、***总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
(5)其他具有数据交互功能的电子设备。
相应的,本发明的实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现前述实施例提供的任一种数据获取方法,因此也能实现相应的技术效果,前文已经进行了详细说明,此处不再赘述。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
为了描述的方便,描述以上装置是以功能分为各种单元/模块分别描述。当然,在实施本发明时可以把各单元/模块的功能在同一个或多个软件和/或硬件中实现。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (10)

1.一种数据获取方法,其特征在于,包括:
确定训练数据集所需的数据存储空间与内存剩余空间的大小关系;
在所述数据存储空间大于所述内存剩余空间的情况下,根据预设策略,在所述训练数据集中选择至少一个文件为目标文件;所述预设策略包括:将所述训练数据集中文件大小小于第一阈值的文件作为目标文件;或者,根据所述训练数据集中各文件的文件大小以及所述内存剩余空间,确定所述目标文件,以使所述目标文件的数量大于第二阈值,和/或所述目标文件存储在所述数据变量中后,所述内存剩余空间小于第三阈值;
将所述目标文件存储在预先建立的数据变量中,以便从所述数据变量中获取所述目标文件;所述将所述目标文件存储在预先建立的数据变量中包括:在首次读取所述目标文件后,将所述目标文件存储在所述数据变量中;所述在首次读取所述目标文件后,将所述目标文件存储在所述数据变量中包括:从所述训练数据集中读取第一文件;确定所述第一文件是否为首次读取的所述目标文件;在所述第一文件为首次读取的所述目标文件的情况下,将所述第一文件中的数据保存在所述数据变量中。
2.根据权利要求1所述的方法,其特征在于,所述将所述目标文件存储在预先建立的数据变量中包括:
在读取所述目标文件前,先将所述目标文件加载在所述数据变量中。
3.根据权利要求1所述的方法,其特征在于,所述将所述目标文件存储在预先建立的数据变量中之后,所述方法还包括:
接收从所述训练数据集中读取第二文件的指令;
在所述数据变量中查找所述第二文件;
在查找到所述第二文件的情况下,利用所述数据变量中保存的所述第二文件进行模型训练;
在未查找到所述第二文件的情况下,从远端服务器获取所述第二文件。
4.根据权利要求3所述的方法,其特征在于,还包括:
将所述训练数据集缓存在本地硬盘;
在未查找到所述第二文件的情况下,从本地硬盘获取所述第二文件。
5.一种数据获取装置,其特征在于,包括:
确定单元,用于确定训练数据集所需的数据存储空间与内存剩余空间的大小关系;
选择单元,用于在所述数据存储空间大于所述内存剩余空间的情况下,根据预设策略,在所述训练数据集中选择至少一个文件为目标文件;所述预设策略包括:将所述训练数据集中文件大小小于第一阈值的文件作为目标文件;或者,根据所述训练数据集中各文件的文件大小以及所述内存剩余空间,确定所述目标文件,以使所述目标文件的数量大于第二阈值,和/或所述目标文件存储在所述数据变量中后,所述内存剩余空间小于第三阈值;
存储单元,用于将所述目标文件存储在预先建立的数据变量中,以便从所述数据变量中获取所述目标文件;所述存储单元包括:第一存储模块,用于在首次读取所述目标文件后,将所述目标文件存储在所述数据变量中;所述第一存储模块具体用于:从所述训练数据集中读取第一文件;确定所述第一文件是否为首次读取的所述目标文件;在所述第一文件为首次读取的所述目标文件的情况下,将所述第一文件中的数据保存在所述数据变量中。
6.根据权利要求5所述的装置,其特征在于,所述存储单元包括:
第二存储模块,用于在读取所述目标文件前,先将所述目标文件加载在所述数据变量中。
7.根据权利要求5所述的装置,其特征在于,还包括:
接收单元,用于在将所述目标文件存储在预先建立的数据变量中之后,接收从所述训练数据集中读取第二文件的指令;
查找单元,用于在所述数据变量中查找所述第二文件;
获取单元,用于在查找到所述第二文件的情况下,从所述数据变量中获取所述第二文件,以利用所述第二文件进行模型训练;在未查找到所述第二文件的情况下,从远端服务器获取所述第二文件,以利用所述第二文件进行模型训练。
8.根据权利要求7所述的装置,其特征在于,还包括:
硬盘缓存单元,用于将所述训练数据集缓存在本地硬盘;
所述获取单元,还用于在未查找到所述第二文件的情况下,从本地硬盘获取所述第二文件,以利用所述第二文件进行模型训练。
9.一种电子设备,其特征在于,所述电子设备包括:壳体、处理器、存储器、电路板和电源电路,其中,电路板安置在壳体围成的空间内部,处理器和存储器设置在电路板上;电源电路,用于为上述电子设备的各个电路或器件供电;存储器用于存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述权利要求1-4中任一项所述的数据获取方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现前述权利要求1至4中任一项所述的数据获取方法。
CN202010030599.9A 2020-01-10 2020-01-10 一种数据获取方法、装置、电子设备及存储介质 Active CN111240843B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010030599.9A CN111240843B (zh) 2020-01-10 2020-01-10 一种数据获取方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010030599.9A CN111240843B (zh) 2020-01-10 2020-01-10 一种数据获取方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN111240843A CN111240843A (zh) 2020-06-05
CN111240843B true CN111240843B (zh) 2024-05-14

Family

ID=70870992

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010030599.9A Active CN111240843B (zh) 2020-01-10 2020-01-10 一种数据获取方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN111240843B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113377998A (zh) * 2021-06-28 2021-09-10 北京百度网讯科技有限公司 数据加载的方法、装置、电子设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017185579A1 (zh) * 2016-04-26 2017-11-02 杭州海康威视数字技术股份有限公司 一种数据存储方法及装置
CN110008184A (zh) * 2019-03-29 2019-07-12 维沃移动通信有限公司 一种文件处理方法及电子设备
CN110502487A (zh) * 2019-08-09 2019-11-26 苏州浪潮智能科技有限公司 一种缓存管理方法与装置
CN110516817A (zh) * 2019-09-03 2019-11-29 北京华捷艾米科技有限公司 一种模型训练数据加载方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3076283B1 (en) * 2015-03-31 2019-08-14 Advanced Digital Broadcast S.A. System and method for managing content deletion

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017185579A1 (zh) * 2016-04-26 2017-11-02 杭州海康威视数字技术股份有限公司 一种数据存储方法及装置
CN110008184A (zh) * 2019-03-29 2019-07-12 维沃移动通信有限公司 一种文件处理方法及电子设备
CN110502487A (zh) * 2019-08-09 2019-11-26 苏州浪潮智能科技有限公司 一种缓存管理方法与装置
CN110516817A (zh) * 2019-09-03 2019-11-29 北京华捷艾米科技有限公司 一种模型训练数据加载方法及装置

Also Published As

Publication number Publication date
CN111240843A (zh) 2020-06-05

Similar Documents

Publication Publication Date Title
CN111258965B (zh) 一种数据获取方法、装置、电子设备及存储介质
US20170262545A1 (en) Method and electronic device for crawling webpage
CN112087487B (zh) 模型训练任务的调度方法、装置、电子设备及存储介质
US20170308546A1 (en) File storage method and electronic device
CN112084017B (zh) 一种内存管理方法、装置、电子设备及存储介质
CN109978139B (zh) 图片自动生成描述的方法、***、电子装置及存储介质
CN111898380A (zh) 文本匹配方法、装置、电子设备及存储介质
CN111240843B (zh) 一种数据获取方法、装置、电子设备及存储介质
CN110652728A (zh) 一种游戏资源管理方法、装置、电子设备及存储介质
CN108470043A (zh) 一种业务结果的获取方法及装置
CN110688223B (zh) 数据处理方法及相关产品
CN111258959A (zh) 一种数据获取方法、数据提供方法及装置
CN112667847A (zh) 数据缓存方法、数据缓存装置和电子设备
CN114338102B (zh) 安全检测方法、装置、电子设备及存储介质
CN112612830B (zh) 一种压缩数据批量导出方法、***及电子设备
CN112036133B (zh) 一种文件保存方法、装置、电子设备及存储介质
CN113887719A (zh) 一种模型压缩方法及装置
CN113238821A (zh) 数据处理的加速方法、装置、电子设备及存储介质
CN114625338A (zh) 随机数的获取方法、存储方法、装置、电子设备及介质
CN111813711B (zh) 训练样本数据的读取方法和装置、存储介质及电子设备
CN112733892B (zh) 一种用于模型训练的数据交互方法及装置
CN111680170B (zh) 周期结构的物理特性预测方法、装置及相关产品
CN112714339B (zh) 无序的视频采样方法、可读存储介质及计算机设备
CN111797392B (zh) 一种控制衍生文件无限分析的方法、装置及存储介质
CN118261208A (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
TA01 Transfer of patent application right

Effective date of registration: 20201022

Address after: Room 91, 5 / F, building 5, yard 30, Shixing street, Shijingshan District, Beijing 100041

Applicant after: Beijing juyuncube Technology Co.,Ltd.

Address before: 100041 Beijing, Shijingshan District Xing Xing street, building 30, No. 3, building 2, A-0071

Applicant before: Beijing Cheetah Mobile Technology Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant