CN109165097B - 一种数据处理方法以及数据处理装置 - Google Patents

一种数据处理方法以及数据处理装置 Download PDF

Info

Publication number
CN109165097B
CN109165097B CN201810968716.9A CN201810968716A CN109165097B CN 109165097 B CN109165097 B CN 109165097B CN 201810968716 A CN201810968716 A CN 201810968716A CN 109165097 B CN109165097 B CN 109165097B
Authority
CN
China
Prior art keywords
data
processed
group
groups
memory
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
CN201810968716.9A
Other languages
English (en)
Other versions
CN109165097A (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 Jiuhu Times Intelligent Technology Co ltd
Original Assignee
Beijing Jiuhu Times Intelligent 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 Jiuhu Times Intelligent Technology Co ltd filed Critical Beijing Jiuhu Times Intelligent Technology Co ltd
Priority to CN201810968716.9A priority Critical patent/CN109165097B/zh
Publication of CN109165097A publication Critical patent/CN109165097A/zh
Application granted granted Critical
Publication of CN109165097B publication Critical patent/CN109165097B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供了一种数据处理方法以及数据处理装置,包括:将待处理数据分组,生成多个数据组;针对每个数据组,将该数据组中的所有待处理数据读入到内存中,并基于该数据组中的所有数据执行数据组内的双数据任务,待组内双数据任务完成后释放该组数据所占据内存;以及,针对每两个数据组,将该两个数据组的数据读入到内存中,并基于该两个数据组中的数据执行组间的双数据任务,待组间所有双数据任务完成后释放数据所占据内存。本申请算法通过增加I/O次数,减少单次读入内存的数据量,避免由于内存不足或者任务量过大造成系统或软件崩溃,同时在保证效率基本不变的前提下,保证了任务完成的完整性。

Description

一种数据处理方法以及数据处理装置
技术领域
本申请涉及计算机应用技术领域,具体而言,涉及一种数据处理方法以及数据处理装置。
背景技术
计算机在对数据进行处理的时候,首先要将待处理数据读入到内存中,然后按照预设的处理方式对读入内存中的数据进行处理。
在某些场景下,计算机需要将大量数据读入到内存中,并按照预设的处理方法将读入到内存中的数据进行双数据任务。双数据任务是指针对每一个数据,按照预设的处理方式将除该数据以外的其它数据依次与该数据进行处理。例如在根据二维图像生成三维图像的时候,计算机需要将大量的二维图像读入到内存,然后针对其中的每一张二维图像,将除该二维图像外的其它图像依次与该二维图像进行特征点的匹配处理,以获得二维图像中每一个特征点的三维坐标,从而根据特征点的三维坐标生成三维图像。
为了实现对对数据进行双数据任务的目的,当前的处理方法是将所有需要进行双数据任务的数据一次性读入到内存中,并在内存中对这些数据进行双数据处理。但计算机设备的内存本身是比较有限的,当数据的规模较大时,会导致计算机内存不足,甚至造成计算机崩溃,计算终止而无法得到正确的结果。
发明内容
有鉴于此,本申请实施例的目的在于提供一种数据处理方法以及装置,能够利用有限的内存,解决大规模数据的双数据任务时内存不足的问题。
第一方面,本申请实施例提供了一种数据处理方法,包括:
将待处理数据分组分成多个数据组;
针对每个数据组,将该数据组中的所有待处理数据读入到内存中,并基于该数据组中的所有数据执行数据组内的双数据任务;当该数据组内的双数据任务执行完毕后,将读入内存的该数据组内的所有数据释放;
以及,针对每两个数据组,将该两个数据组的数据读入到内存中,并基于该两个数据组中的数据执行组间的双数据任务;当组间的双数据任务执行完毕后,将读入内存的两个数据组的所有数据释放。
可选地,所述基于该数据组中的所有数据执行数据组内的双数据任务,具体包括:
针对该数据组中的每个数据,将除该数据以外的其它数据依次与该数据进行双数据任务;
所述基于该两个数据组中的数据执行组间的双数据任务,具体包括:
针对其中一个数据组中的每个待处理数据,将另一数据组中的待处理数据依次与该待处理数据进行所述双数据任务。
可选地,所述将待处理数据分组,生成多个数据组,具体包括:
按照待处理数据之间的相似度,对所述待处理数据进行聚类操作,生成多个数据组。
可选地,所述按照待处理数据之间的相似度,对所述待处理数据进行聚类操作,具体包括:
获得每条待处理数据的特征向量;
将当前未完成聚类的待处理数据中任意一条待处理数据作为聚类中心,并基于该聚类中心的特征向量和其它当前未完成聚类的特征向量,依次计算其它当前未完成聚类的待处理数据与该聚类中心之间的相似度;
将相似度满足预设相似度要求的待处理数据划分到与该聚类中心同一分组中,并将该分组中的所有待处理数据作为完成聚类的待处理数据;
返回至将当前未完成聚类的待处理数据中任意一条待处理数据作为聚类中心的步骤,直至所有待处理数据完成聚类。
可选地,所述将相似度满足预设相似度要求的待处理数据划分到与该聚类中心同一分组中之后,还包括:
检测该分组中所有待处理数据的条数是否大于预设的条数阈值;
如果大于,则从该分组中所有待处理数据中选择预设数量的待处理数据,构成新的分组,并将该分组中未被划分到新的分组中的所有待处理数据重新作为未完成聚类的待处理数据。
可选地,所述从该分组中所有待处理数据中选择预设数量的待处理数据,构成新的分组,具体包括:
根据该分组中所有待处理数据的特征向量,计算该分组的中心;
依次计算该分组中所有待处理数据与该分组的中心之间的相似度;
按照该分组中所有待处理数据与该分组的中心之间的相似度大小,从该分组中所有待处理数据中选择预设数量的待处理数据,构成新的分组。
第二方面,本申请实施例还提供一种数据处理装置,该装置包括:
分组模块,用于将待处理数据分组,生成多个数据组;
组内处理模块,用于针对每个数据组,将该数据组中的所有数据读入到内存中,并基于该数据组中的所有数据执行组内的双数据任务;当该数据组内的双数据任务执行完毕后,将读入内存的该数据组内的所有数据释放;
组间处理模块,用于针对每两个数据组,将该两个数据组的数据读入到内存中,并基于该两个数据组中的数据执行组间的双数据任务;当组间的双数据任务执行完毕后,将读入内存的两个数据组的所有数据释放。
可选地,所述组内处理模块,用于:
针对该数据组中的每个数据,将除该数据以外的其它数据依次与该数据进行双数据任务;
所述组间处理模块,用于:
针对其中一个数据组中的每个待处理数据,将另一数据组中的待处理数据依次与该待处理数据进行所述双数据任务。
第三方面,本申请实施例还提供一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如第一方面任一所述的数据处理的方法的步骤。
第四方面,本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如第一方面任意一项所述的数据处理的方法的步骤。
本申请实施例提供的数据处理方法中,在对待处理数据执行双数据任务的时候,首先要对待处理数据进行分组,生成多个数据组,然后针对每个数据组将该数据组中的所有待处理数据读入到内存中,并基于该数据组中的所有数据执行数据组内的双数据任务;在处理完该数据组中所有数据的组内双数据内务后,会将该数据组中的所有数据从内存中释放;以及,针对每两个数据组,将该两个数据组的数据读入到内存中,并基于该两个数据组中的数据执行组间的双数据任务,并在执行完两个数据组的组间的双数据任务后,将两个数据组中的所有数据从内存中释放,从而通过增加I/O次数,减少单次读入内存的数据量,避免由于内存不足或者任务量过大造成系统或软件崩溃,同时在保证效率基本不变的前提下,保证了任务完成的完整性。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例所提供的一种数据处理方法的流程图;
图2示出了本申请实施例所提供的数据处理方法中,按照待处理数据之间的相似度,对所述待处理数据进行聚类操作的具体方法的流程图;
图3示出了本申请实施例所提供的一种数据处理装置的结构示意图;
图4示出了本申请实施例所提供的一种计算机设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组间可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
目前在针对大规模数据执行双数据任务的时候,首先要将所有的数据都读入到内存中,然后针对读入内存中的所有数据,针对每个数据,使用除该数据以外的各个数据与该数据进行处理。但是内存本身比较有限,如果读入到内存的数据量过大,会造成读入内存中的数据由于数据量过大而导致无法得到需要的处理结果。基于此,本申请提供的一种数据处理方法和数据处理装置,能够通过对待处理数据进行分组,并基于分组对数据进行组内双数据任务和组间双数据任务,从而实现数据的分步处理,减少对内存的占用。
为便于对本实施例进行理解,首先对本申请实施例所公开的一种数据处理方法进行详细介绍。
参见图1所示,本申请实施例提供的数据处理方法包括:
S101:将待处理数据分组,生成多个数据组。
在具体实现的时候,在对待处理数据进行分组的时候,可以根据待处理数据的存储顺序,依次将待处理数据分成多个数据组,也可以按照实际的应用场景,将相似度较大的数据划分的同一组,或者将相似度较大的数据划分到同一组。
这里的待处理数据可以是文字数据,也可以是图像数据。
例如在自然语言处理领域,在执行语言处理任务的时候,要从百万级别的词汇表或者实体集合中预测概率最高的选项。为了实现预测,需要基于百万级别的词汇构建分类树。而分类树在构建的时候,需要计算两两词语之间的关系矩阵,并基于关系矩阵确定两两词语之间的相似度,然后根据相似度来构建分类树,保证相似度较高的词语尽量被划分到分类树的相同分支下。如果能够提前将相似度较高的待处理数据划分到同一数据组中,并基于同一数据组中的数据进行关系矩阵的计算,能够将基于百万级别词汇构建分类树的过程,转化为基于多个数据组的相似数据构建子分类树,然后基于子分类树构建整个分类树的问题,从而降低分类树构建过程中计算的复杂程度。
又例如,在数据关系分析领域,为了能够得到跨领域的数据之间的相互关系,挖掘数据更深层次的价值,例如获取进金融数据与销售数据之间的更深层次的关系,为了能够让跨领域的数据之间的关系更加的突出,可以首先将相似度较高的数据划分到不同的数据组中,针对每个数据组中数据首先进行跨领域数据之间关系的分析,然后再基于所有数据组对跨领域数据进行整体分析,从而得到更加准确的数据分析结果。
又例如,在图像处理领域,在根据二维图像生成三维图像的时候,需要将二维图像进行两两匹配,得到具有相似特征点的二维图像,然后基于具有相似特征点的二维图像,获取每一个特征点的三维坐标。为了能够更快速的定位到具有相似特征点的二维图像,可以先根据二维图像之间的相似度,将可能具有相同特征点的二维图像划分到同一个数据组中,基于每个数据组先定位部分相似特征点,将这些特征点作为基准点,再基于相似度较小的图像对基准点进行提高精度的处理,以及其它特征点的补充,能够提升生成三维图像的效率和精度。
在将待处理数据进行分组,生成多个数据组的时候,可以根据待处理数据之间的相似度,对待处理数据进行聚类操作,生成多个数据组。
参见图2所示,本申请实施例还提供一种按照待处理数据之间的相似度,对所述待处理数据进行聚类操作的具体方法,包括:
S201:获得每条待处理数据的特征向量。
第一,针对待处理数据包括文字数据的情况,可以采用下述方法获得文字数据的特征向量:
对每条文字数据进行切词处理,获取构成每条所述文字数据的词语;
获取构成每条所述文字数据的词语的词向量;
根据构成每条所述文字数据的词语的词向量,构成所述文字数据的特征向量。
在具体实现的时候,将文字数据进行切词处理,获得组成该文字的各个词语,并采用word2vec算法获取每个词语的向量。使用该文字数据中每个词语的向量,构成该文字数据的特征向量。
其中,word2vec即为词向量映射,是将词语映射到一个新的空间中,通过在大量语料中进行计算统计,在神经网络中训练,以多维的连续实数向量进行表示每个词语,word2vec模型是一个大矩阵,存放有所有词语的表示向量。
此处,需要注意的是,由于不同的文字数据在进行切词处理后所得到的词语的数量是不同的,为了计算方便,可以将文字数据的特征向量采取补0的措施,将所有文字数据的特征向量调整为维度相同。
其二,针对图像数据,可以采用下述方法获得文字数据的特征向量:
将每张所述图像数据输入至预先训练的神经网络模型,使用所述神经网络模型为所述图像数据提取特征向量。
具体地,可以通过下述步骤获取预先训练的神经网络模型:
使用深度卷积神经网络对样本图像进行特征学习,获取所述样本图像的中间特征向量,并将所述中间特征向量输入至分类器,获得所述样本图像的分类结果;
根据所述样本图像的分类结果以及所述样本图像的标签,获取分类损失;
针对所述分类损失大于预设的分类损失阈值的情况,对所述深度卷积神经网络以及所述分类器的参数进行调整,并使用进行了参数调整的深度卷积神经网络和所述分类器获得所述样本图像的新的分类结果;返回根据所述样本图像的分类结果以及所述样本图像的标签,获取分类损失的步骤;
直至所述分类损失不大于预设的分类损失阈值,获取对所述深度卷积神经网络的本轮训练结果;
通过对所述深度卷积神经网络的多轮训练,获取训练好的所述神经网络模型。
S202:将当前未完成聚类的待处理数据中任意一条待处理数据作为聚类中心,并基于该聚类中心的特征向量和其它当前未完成聚类的特征向量,依次计算其它当前未完成聚类的待处理数据与该聚类中心之间的相似度。
具体地,在根据待处理数据之间的相似度对待处理数据进行聚类操作的时候,可以基于用于表征待处理数据的特征向量之间的距离来进行。用于表征待处理数据的特征向量之间的距离越近,则待处理数据之间的相似度越高;用于表征待处理数据的特征向量之间距离越远,则待处理数据之间的相似度也就越低。
特征向量之间的距离可以为欧氏距离、曼哈顿距离、切比雪夫距离、闵可夫斯基距离、标准化欧氏距离、马氏距离、夹角余弦、汉明距离、杰卡德距离、相关系数、信息熵中任意一种。
S203:将相似度满足预设相似度要求的待处理数据划分到与该聚类中心同一分组中,并将该分组中的所有待处理数据作为完成聚类的待处理数据。
此处,针对不同的情况,预设相似度要求有所区别。
针对要将相似度较高的待处理划分到同一个数据组的情况,预设相似度要求为:大于预设的第一相似度阈值,也即,将相似度大于预设相似度阈值的待处理数据划分到同一个数据组中。
针对要将相似度较高的待处理数据划分到不同分组的情况,预设相似度要求为:小于预设的第二相似度阈值,并且,同一数据组中除中心的待处理数据以外,其它任意两个待处理数据之间的相似度也满足大于预设的相似度阈值。
S204:检测当前是否存在未完成聚类的待处理数据。如果是,则跳至S202,如果否,则跳转至S205。
S205:将划分到与聚类中心同一分组中的待处理数据作为一个数据组。
通过上述聚类过程,能够将待处理数据划分到多个数据组中。
另外,在聚类过程中,可能存在某些数据组中的待处理数据数量过多,导致将该数据组读入到内存中,会占据过多存储空间的问题,因此将相似度满足预设相似度要求的待处理数据划分到与该聚类中心同一分组中之后,还包括:
检测该分组中所有待处理数据的条数是否大于预设的条数阈值;
如果大于,则从该分组中所有待处理数据中选择预设数量的待处理数据,构成新的分组,并将该分组中未被划分到新的分组中的所有待处理数据重新作为未完成聚类的待处理数据。
基于上述步骤,能够将各个数据组中的待处理数据的数量被控制在一定数量范围内,避免部分数据组中待处理数据的数量过多,导致读入到内存中的待处理数据的数量过多造成内存无法满足计算需求。
此处,可以采用下述方式从该分组中所有待处理数据中选择预设数量的待处理数据,构成新的分组:
根据该分组中所有待处理数据的特征向量,计算该分组的中心;
依次计算该分组中所有待处理数据与该分组的中心之间的相似度;
按照该分组中所有待处理数据与该分组的中心之间的相似度大小,从该分组中所有待处理数据中选择预设数量的待处理数据,构成新的分组。
在将待处理数据分组,生成多个数据组后,还包括:
S102:针对每个数据组,将该数据组中的所有待处理数据读入到内存中,并基于该数据组中的所有数据执行数据组内的双数据任务;当该数据组内的双数据任务执行完毕后,将读入内存的该数据组内的所有数据释放。
在具体实现的时候,在针对每个数据组进行双数据任务的时候,会将该数据组中所包括的所有待处理数据读入到内从中,然后针对该数据组中包括的所有待处理数据进行组内双数据任务。
针对该数据组中包括的所有待处理数据执行组内双数据任务,即针对该数据组汇总的每个数据,将除该数据意外的其它数据依次与该数据进行双数据任务。
在基于该数据组中的所有待处理数据执行数据组内的双数据任务完毕之后,可以将读入到内存中的该数据组中所有的数据释放,以释放内存空间。也可以直接将另一组数据组中所有的待处理数据读入到与该数据组相同的内存空间中,将该数据组中所待处理数据覆盖。
S103:针对每两个数据组,将该两个数据组的数据读入到内存中,并基于该两个数据组中的数据执行组间的双数据任务;当组间的双数据任务执行完毕后,将读入内存的两个数据组的所有数据释放。
在具体实现的时候,在针对两个数据组执行组间的双数据任务时,会将两个数据组中的所有数据读入到内存中,然后针对读入内存的嗲处理数据进行组间双数据任务。
针对两个数据组执行组间的双数据任务,即针对其中一个数据组中的每个待处理数据,将另一数据组中的待处理数据依次与该待处理数据进行所述双数据任务。
在执行完组间的双数据任务后,可以将两个读入到内存的数据组中的所有待处理数据都释放掉,以释放内存空间。可以直接将其中一个数据组中的待处理数据释放,读入下一个数据组,并基于当前内存中的两个数据组中的待处理数据进行组间的双数据任务。也可以不释放内存空间,而是直接读入两个数据组的待处理数据,覆盖内存中原有的两个数据组的待处理数据,并基于新读入的两个数据组的待处理数据,进行组间的双数据任务。或者,也可以不释放内存空间,而是直接读入另一数据组的待处理数据,覆盖内存中原有的一个数据组的待处理数据,并基于新读入的数据组的待处理数据和内存中未被覆盖的数据组的待处理数据进行组间双数据任务。
本申请实施例提供的数据处理方法中,在对待处理数据执行双数据任务的时候,首先要对待处理数据进行分组,生成多个数据组,然后针对每个数据组将该数据组中的所有待处理数据读入到内存中,并基于该数据组中的所有数据执行数据组内的双数据任务;在处理完该数据组中所有数据的组内双数据内务后,会将该数据组中的所有数据从内存中释放;以及,针对每两个数据组,将该两个数据组的数据读入到内存中,并基于该两个数据组中的数据执行组间的双数据任务,并在执行完两个数据组的组间的双数据任务后,将两个数据组中的所有数据从内存中释放,从而通过增加I/O次数,减少单次读入内存的数据量,避免由于内存不足或者任务量过大造成系统或软件崩溃,同时在保证效率基本不变的前提下,保证了任务完成的完整性。
基于同一发明构思,本申请实施例中还提供了与数据处理方法对应的数据处理装置,由于本申请实施例中的装置解决问题的原理与本申请实施例上述数据处理方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
参见图3所示,本申请实施例提供的一种数据处理装置,包括:
分组模块31,用于将待处理数据分组,生成多个数据组;
组内处理模块32,用于针对每个数据组,将该数据组中的所有待处理数据读入到内存中,并基于该数据组中的所有数据执行数据组内的双数据任务;当该数据组内的双数据任务执行完毕后,将读入内存的该数据组内的所有数据释放;
组间处理模块33,用于针对每两个数据组,将该两个数据组的数据读入到内存中,并基于该两个数据组中的数据执行组间的双数据任务;当组间的双数据任务执行完毕后,将读入内存的两个数据组的所有数据释放。
本申请实施例提供的数据处理装置在对待处理数据执行双数据任务的时候,首先要对待处理数据进行分组,生成多个数据组,然后针对每个数据组将该数据组中的所有待处理数据读入到内存中,并基于该数据组中的所有数据执行数据组内的双数据任务;在处理完该数据组中所有数据的组内双数据内务后,会将该数据组中的所有数据从内存中释放;以及,针对每两个数据组,将该两个数据组的数据读入到内存中,并基于该两个数据组中的数据执行组间的双数据任务,并在执行完两个数据组的组间的双数据任务后,将两个数据组中的所有数据从内存中释放,从而通过增加I/O次数,减少单次读入内存的数据量,避免由于内存不足或者任务量过大造成系统或软件崩溃,同时在保证效率基本不变的前提下,保证了任务完成的完整性。
可选地,组内处理模块32具体用于采用下述步骤基于该数据组中的所有数据执行数据组内的双数据任务:
针对该数据组中的每个数据,将除该数据以外的其它数据依次与该数据进行双数据任务;
组间处理模块33具体用于采用下述步骤基于该两个数据组中的数据执行组间的双数据任务:
针对其中一个数据组中的每个待处理数据,将另一数据组中的待处理数据依次与该待处理数据进行所述双数据任务。
可选地,所述分组模块31用于通过下述步骤将待处理数据分组,生成多个数据组,具体包括:
按照待处理数据之间的相似度,对所述待处理数据进行聚类操作,生成多个数据组。
可选地,所述分组模块31用于通过下述步骤按照待处理数据之间的相似度,对所述待处理数据进行聚类操作:
获得每条待处理数据的特征向量;
将当前未完成聚类的待处理数据中任意一条待处理数据作为聚类中心,并基于该聚类中心的特征向量和其它当前未完成聚类的特征向量,依次计算其它当前未完成聚类的待处理数据与该聚类中心之间的相似度;
将相似度满足预设相似度要求的待处理数据划分到与该聚类中心同一分组中,并将该分组中的所有待处理数据作为完成聚类的待处理数据;
返回至将当前未完成聚类的待处理数据中任意一条待处理数据作为聚类中心的步骤,直至所有待处理数据完成聚类。
可选地,所述分组模块31用于通过下述步骤将相似度满足预设相似度要求的待处理数据划分到与该聚类中心同一分组中之后:
检测该分组中所有待处理数据的条数是否大于预设的条数阈值;
如果大于,则从该分组中所有待处理数据中选择预设数量的待处理数据,构成新的分组,并将该分组中未被划分到新的分组中的所有待处理数据重新作为未完成聚类的待处理数据。
可选地,所述分组模块31用于通过下述步骤从该分组中所有待处理数据中选择预设数量的待处理数据,构成新的分组:
根据该分组中所有待处理数据的特征向量,计算该分组的中心;
依次计算该分组中所有待处理数据与该分组的中心之间的相似度;
按照该分组中所有待处理数据与该分组的中心之间的相似度大小,从该分组中所有待处理数据中选择预设数量的待处理数据,构成新的分组。
对应于图1中的数据处理方法,本申请实施例还提供了一种计算机设备,如图4示,该设备包括存储器1000、处理器2000及存储在该存储器1000上并可在该处理器2000上运行的计算机程序,其中,上述处理器2000执行上述计算机程序时实现上述数据处理方法的步骤。
具体地,上述存储器1000和处理器2000能够为通用的存储器和处理器,这里不做具体限定,当处理器2000运行存储器1000存储的计算机程序时,能够执行上述数据处理方法,从而解决将大量待处理数据读入内存导致内存不足,造成计算机崩溃无法得到正确结果的问题,进而达到通过增加I/O次数,减少单次读入内存的数据量,避免由于内存不足或者任务量过大造成系统或软件崩溃,同时在保证效率基本不变的前提下,保证了任务完成的完整性的效果。
对应于图1中的数据处理方法,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述数据处理方法的步骤。
具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述数据处理方法,从而解决将大量待处理数据读入内存导致内存不足,造成计算机崩溃无法得到正确结果的问题,进而达到通过增加I/O次数,减少单次读入内存的数据量,避免由于内存不足或者任务量过大造成系统或软件崩溃,同时在保证效率基本不变的前提下,保证了任务完成的完整性的效果。
本申请实施例所提供的数据处理方法以及数据处理装置的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。

Claims (10)

1.一种数据处理方法,其特征在于,包括:
将待处理数据分组分成多个数据组;
针对每个数据组,将该数据组中的所有待处理数据读入到内存中,并基于该数据组中的所有数据执行数据组内的双数据任务;当该数据组内的双数据任务执行完毕后,将读入内存的该数据组内的所有数据释放;
以及,针对每两个数据组,将该两个数据组的数据读入到内存中,并基于该两个数据组中的数据执行组间的双数据任务;当组间的双数据任务执行完毕后,将读入内存的两个数据组的所有数据释放。
2.根据权利要求1所述的方法,其特征在于,所述基于该数据组中的所有数据执行数据组内的双数据任务,具体包括:
针对该数据组中的每个数据,将除该数据以外的其它数据依次与该数据进行双数据任务;
所述基于该两个数据组中的数据执行组间的双数据任务,具体包括:
针对其中一个数据组中的每个待处理数据,将另一数据组中的待处理数据依次与该待处理数据进行所述双数据任务。
3.根据权利要求1所述的方法,其特征在于,所述将待处理数据分组,生成多个数据组,具体包括:
按照待处理数据之间的相似度,对所述待处理数据进行聚类操作,生成多个数据组。
4.根据权利要求3所述的方法,其特征在于,所述按照待处理数据之间的相似度,对所述待处理数据进行聚类操作,具体包括:
获得每条待处理数据的特征向量;
将当前未完成聚类的待处理数据中任意一条待处理数据作为聚类中心,并基于该聚类中心的特征向量和其它当前未完成聚类的特征向量,依次计算其它当前未完成聚类的待处理数据与该聚类中心之间的相似度;
将相似度满足预设相似度要求的待处理数据划分到与该聚类中心同一分组中,并将该分组中的所有待处理数据作为完成聚类的待处理数据;
返回至将当前未完成聚类的待处理数据中任意一条待处理数据作为聚类中心的步骤,直至所有待处理数据完成聚类。
5.根据权利要求4所述的方法,其特征在于,所述将相似度满足预设相似度要求的待处理数据划分到与该聚类中心同一分组中之后,还包括:
检测该分组中所有待处理数据的条数是否大于预设的条数阈值;
如果大于,则从该分组中所有待处理数据中选择预设数量的待处理数据,构成新的分组,并将该分组中未被划分到新的分组中的所有待处理数据重新作为未完成聚类的待处理数据。
6.根据权利要求5所述的方法,其特征在于,所述从该分组中所有待处理数据中选择预设数量的待处理数据,构成新的分组,具体包括:
根据该分组中所有待处理数据的特征向量,计算该分组的中心;
依次计算该分组中所有待处理数据与该分组的中心之间的相似度;
按照该分组中所有待处理数据与该分组的中心之间的相似度大小,从该分组中所有待处理数据中选择预设数量的待处理数据,构成新的分组。
7.一种数据处理装置,其特征在于,该装置包括:
分组模块,用于将待处理数据分组,生成多个数据组;
组内处理模块,用于针对每个数据组,将该数据组中的所有数据读入到内存中,并基于该数据组中的所有数据执行组内的双数据任务;当该数据组内的双数据任务执行完毕后,将读入内存的该数据组内的所有数据释放;
组间处理模块,用于针对每两个数据组,将该两个数据组的数据读入到内存中,并基于该两个数据组中的数据执行组间的双数据任务;当组间的双数据任务执行完毕后,将读入内存的两个数据组的所有数据释放。
8.根据权利要求7所述的装置,其特征在于,所述组内处理模块,用于:
针对该数据组中的每个数据,将除该数据以外的其它数据依次与该数据进行双数据任务;
所述组间处理模块,用于:
针对其中一个数据组中的每个待处理数据,将另一数据组中的待处理数据依次与该待处理数据进行所述双数据任务。
9.一种电子设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1至6任一所述的数据处理的方法的步骤。
10.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至6任意一项所述的数据处理的方法的步骤。
CN201810968716.9A 2018-08-23 2018-08-23 一种数据处理方法以及数据处理装置 Active CN109165097B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810968716.9A CN109165097B (zh) 2018-08-23 2018-08-23 一种数据处理方法以及数据处理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810968716.9A CN109165097B (zh) 2018-08-23 2018-08-23 一种数据处理方法以及数据处理装置

Publications (2)

Publication Number Publication Date
CN109165097A CN109165097A (zh) 2019-01-08
CN109165097B true CN109165097B (zh) 2021-06-08

Family

ID=64896548

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810968716.9A Active CN109165097B (zh) 2018-08-23 2018-08-23 一种数据处理方法以及数据处理装置

Country Status (1)

Country Link
CN (1) CN109165097B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112217940B (zh) * 2020-08-28 2021-12-24 波克科技股份有限公司 一种内存释放方法及相关装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007312653A (ja) * 2006-05-24 2007-12-06 Nec Soft Ltd 時系列遺伝子発現量データの特徴抽出と比較分類を目的とする解析方法、および該解析方法に基づく解析装置
WO2012159320A1 (zh) * 2011-07-07 2012-11-29 华为技术有限公司 一种大规模图像数据的聚类方法及装置
CN103455518A (zh) * 2012-06-04 2013-12-18 中兴通讯股份有限公司 一种数据处理方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0150522B1 (en) * 1980-04-25 1989-08-30 Data General Corporation Data processing system with hierarchical memory protection
KR100584351B1 (ko) * 2003-09-08 2006-05-26 삼성전자주식회사 듀오바이너리 인코더 및 이를 이용한 광 듀오바이너리전송장치
US8935508B1 (en) * 2010-08-30 2015-01-13 Qualcomm Incorporated Implementing pseudo content access memory
CN105573843B (zh) * 2015-12-22 2019-02-12 北京兆易创新科技股份有限公司 一种数据处理方法和系统
US9992232B2 (en) * 2016-01-14 2018-06-05 Cisco Technology, Inc. Policy block creation with context-sensitive policy line classification

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007312653A (ja) * 2006-05-24 2007-12-06 Nec Soft Ltd 時系列遺伝子発現量データの特徴抽出と比較分類を目的とする解析方法、および該解析方法に基づく解析装置
WO2012159320A1 (zh) * 2011-07-07 2012-11-29 华为技术有限公司 一种大规模图像数据的聚类方法及装置
CN103119606A (zh) * 2011-07-07 2013-05-22 华为技术有限公司 一种大规模图像数据的聚类方法及装置
CN103455518A (zh) * 2012-06-04 2013-12-18 中兴通讯股份有限公司 一种数据处理方法及装置

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
"基于聚类分组和属性综合权值的SNM改进算法;杨巧巧等;《工业控制计算机》;20170930;第30卷(第9期);第27页 *
AN EXTERNAL SORTING METHOD;F.D.Kozhurin;《Cybernetics》;19701231;第6卷(第3期);第295-299页 *
一种新的外部排序算法的设计与实现;王岁花等;《许昌学院学报》;20050331;第24卷(第2期);第80页 *
基于连通分量的分类变量聚类算法;周红芳等;《控制与决策》;20150131;第30卷(第1期);第39、41页 *

Also Published As

Publication number Publication date
CN109165097A (zh) 2019-01-08

Similar Documents

Publication Publication Date Title
CN109271521B (zh) 一种文本分类方法及装置
CN108491817B (zh) 一种事件检测模型训练方法、装置以及事件检测方法
CN107944020B (zh) 人脸图像查找方法及装置、计算机装置和存储介质
CN108920654B (zh) 一种问答文本语义匹配的方法和装置
CN110046634B (zh) 聚类结果的解释方法和装置
CN111858843B (zh) 一种文本分类方法及装置
CN109948735B (zh) 一种多标签分类方法、系统、装置及存储介质
CN111260220B (zh) 群控设备识别方法、装置、电子设备和存储介质
CN109918498B (zh) 一种问题入库方法和装置
CN113706502B (zh) 一种人脸图像质量评估方法及装置
CN109033084B (zh) 一种语义层次树构建方法以及装置
CN112733545A (zh) 文本分块方法、装置、计算机设备和存储介质
US20230177251A1 (en) Method, device, and system for analyzing unstructured document
CN112070506A (zh) 风险用户识别方法、装置、服务器及存储介质
CN114610881A (zh) 应用日志分析方法、装置、设备和存储介质
CN114332500A (zh) 图像处理模型训练方法、装置、计算机设备和存储介质
CN114861531B (zh) 针对用户重复购买预测的模型参数优化方法及设备
CN109902167B (zh) 嵌入结果的解释方法和装置
CN109165097B (zh) 一种数据处理方法以及数据处理装置
US20220374655A1 (en) Data summarization for training machine learning models
CN113869332A (zh) 一种特征选择方法、装置、存储介质和设备
CN113159211A (zh) 用于相似图像检索的方法、计算设备和计算机存储介质
CN110968702B (zh) 一种事理关系提取方法及装置
CN112988699B (zh) 模型训练方法、数据标签的生成方法及装置
CN114443843A (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
GR01 Patent grant
GR01 Patent grant