CN114492737A - 数据处理方法、装置及电子设备、存储介质及程序产品 - Google Patents

数据处理方法、装置及电子设备、存储介质及程序产品 Download PDF

Info

Publication number
CN114492737A
CN114492737A CN202111659099.2A CN202111659099A CN114492737A CN 114492737 A CN114492737 A CN 114492737A CN 202111659099 A CN202111659099 A CN 202111659099A CN 114492737 A CN114492737 A CN 114492737A
Authority
CN
China
Prior art keywords
operator
attribute information
performance evaluation
target
input data
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.)
Granted
Application number
CN202111659099.2A
Other languages
English (en)
Other versions
CN114492737B (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 Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and 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 Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202111659099.2A priority Critical patent/CN114492737B/zh
Publication of CN114492737A publication Critical patent/CN114492737A/zh
Priority to US17/989,644 priority patent/US11983086B2/en
Priority to EP22208202.6A priority patent/EP4113390A3/en
Priority to KR1020220162525A priority patent/KR20220166241A/ko
Application granted granted Critical
Publication of CN114492737B publication Critical patent/CN114492737B/zh
Priority to JP2022203468A priority patent/JP7545461B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2263Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/263Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • G06F11/3062Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations where the monitored property is the power consumption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/10Interfaces, programming languages or software development kits, e.g. for simulating neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/865Monitoring of software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Quality & Reliability (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computer Hardware Design (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Algebra (AREA)
  • Evolutionary Biology (AREA)
  • Operations Research (AREA)
  • Probability & Statistics with Applications (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Databases & Information Systems (AREA)
  • Neurology (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Complex Calculations (AREA)
  • Input From Keyboards Or The Like (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本公开提供了一种数据处理方法、装置及电子设备,涉及大数据、云计算、深度学习等人工智能技术领域。具体实现方案为:获取输入数据的第一属性信息,并获取算子对应的运算设备的第二属性信息;根据第一属性信息和第二属性信息,从候选算子实现方式中选取目标算子实现方式;基于目标算子实现方式,从算子库中确定输入数据所需算子包括的子算子,以生成算子;由运算设备按照算子对输入数据进行运算,得到运算结果。由此,针对不同的输入数据和运算设备的组合,能够调度到最优的算子实现方式,以便于提高运算设备的运算性能和输入数据的运算效率,由于不同的算子实现方式具有各自的优势,可以充分利用每一种算子实现方式生成最优的输入数据对应的算子。

Description

数据处理方法、装置及电子设备、存储介质及程序产品
技术领域
本公开涉及数据处理技术领域,并且更具体地涉及大数据、云计算、深度学习等人工智能技术领域。尤其涉及一种数据处理方法、装置及电子设备、存储介质及程序产品。
背景技术
深度学习框架是用于深度学习技术研发的基础软件工具,对上承接应用,对下承接硬件设备,能够提升深度学习任务的研发效率。深度学习框架用于屏蔽硬件的差异,为应用开发提供统一的接口。
然而,深度学习框架包含的算子数量非常多,相关技术中,尚未存在低成本的且能充分提高硬件性能的算子实现方式。因此,如何在确保准确地获取运算结果的同时,提高硬件性能,并降低成本,已成为了亟待解决的问题。
发明内容
本公开提供了一种数据处理方法、装置及电子设备、存储介质及程序产品。
根据本公开的一方面,提供了一种数据处理方法,包括:获取输入数据的第一属性信息,并获取所述输入数据对应的运算设备的第二属性信息;根据所述第一属性信息和所述第二属性信息,从候选算子实现方式中选取目标算子实现方式;基于所述目标算子实现方式,从算子库中确定所述输入数据所需算子包括的子算子,以生成所述算子;由所述运算设备按照所述算子对所述输入数据进行运算,得到运算结果。
根据本公开的另一方面,提供了一种数据处理装置,包括:获取模块,用于获取输入数据的第一属性信息,并获取所述输入数据算子对应的运算设备的第二属性信息;选取模块,用于根据所述第一属性信息和所述第二属性信息,从候选算子实现方式中选取目标算子实现方式;生成模块,用于基于所述目标算子实现方式,从算子库中确定所述输入数据所需算子包括的子算子,以生成所述算子;运算模块,用于由所述运算设备按照所述算子对所述输入数据进行运算,得到运算结果。
根据本公开的另一方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本公开的一方面所述的数据处理方法。
根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据本公开的一方面所述的数据处理方法。
根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据本公开的一方面所述的数据处理方法的步骤。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是根据本公开第一实施例的数据处理方法的流程示意图;
图2是根据本公开第二实施例的数据处理方法的流程示意图;
图3是根据本公开第三实施例的数据处理方法的流程示意图;
图4是根据本公开第四实施例的数据处理方法的流程示意图;
图5是根据本公开第五实施例的数据处理方法的流程示意图;
图6是根据本公开第六实施例的数据处理方法的流程示意图;
图7是根据本公开第七实施例的数据处理方法的流程示意图;
图8是根据本公开第八实施例的数据处理方法的流程示意图;
图9是根据本公开第九实施例的数据处理方法的流程示意图;
图10是根据本公开一种数据处理框架的示意图;
图11是根据本公开一种数据处理方法的应用示意图之一;
图12是根据本公开一种数据处理方法的应用示意图之一;
图13是根据本公开一种数据处理方法的应用示意图之一;
图14是用来实现本公开实施例的数据处理方法的数据处理装置的框图;
图15是用来实现本公开实施例的数据处理方法的电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
数据处理(Data Processing),包括对数据的采集、存储、检索、加工、变化和传输等处理,旨从大量的、可能是杂乱无章的、难以理解的数据中抽取并推导出对于某些特定的用户来说有价值、有意义的数据。
大数据(Big Data),或称巨量资料,指的是所涉及的资料量规模巨大到无法透过主流软件工具,在合理时间内达到撷取、管理、处理、并整理成为帮助企业经营决策更积极目的的资讯。
云计算(Cloud Computing),是分布式计算的一种,指的是通过网络“云”将巨大的数据计算处理程序分解成无数个小程序,然后,通过多部服务器组成的系统进行处理和分析这些小程序得到结果并返回给用户。
人工智能(Artificial Intelligence,简称AI)是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门技术科学。目前,AI技术具有自动化程度高、精确度高、成本低的优点,得到了广泛的应用。
深度学习(Deep Learning,简称DL),是机器学习(Machine Learning,简称ML)领域中一个新的研究方向,学习样本数据的内在规律和表示层次,这些学习过程中获得的信息对诸如文字,图像和声音等数据的解释有很大的帮助。它的最终目标是让机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据。就具体研究内容而言,主要包括基于卷积运算的神经网络系统,即卷积神经网络;基于多层神经元的自编码神经网络;以多层自编码神经网络的方式进行预训练,进而结合鉴别信息进一步优化神经网络权值的深度置信网络。深度学习在搜索技术,数据挖掘,机器学习,机器翻译,自然语言处理,多媒体学习,语音,推荐和个性化技术,以及其他相关领域都取得了很多成果。
下面结合附图描述本公开实施例的数据处理方法。
图1是根据本公开第一实施例的数据处理方法的流程示意图。其中,需要说明的是,本实施例的数据处理方法的执行主体为数据处理装置,数据处理装置具体可以为硬件设备,或者硬件设备中的软件等。其中,硬件设备例如终端设备、服务器等。
如图1所示,本公开实施例提供的数据处理方法,具体方法可包括以下步骤:
S101,获取输入数据的第一属性信息,并获取输入数据对应的运算设备的第二属性信息。
其中,算子,指的是一个函数空间到函数空间上的映射。
其中,输入数据,指的是需要进行运算的数据,主要包括张量(Tensor)。张量可以包括数据的类型、数据的形状、数据的存放位置等。
举例而言,数据类型可以包括float32、float64、int32、int64等类型的数据;数据的形状可以包括大数据、小数据、宽数据、深数据等;数据的存放位置可以包括图形处理器(Graphics Processing Unit,简称GPU)的内存、深度计算器(Deep Computing Unit,简称DCU)的显存以及特定用途集成电路(Application Specific Integrated Circuit,简称ASIC)内存中。
进一步地,输入数据的来源可以为图像、音频、文档等。输入数据对应的算子可以为一个或者多个。需要说明的是,输入数据对应的每个算子都可以采用本公开实施例提供的方式生成。
其中,运算设备,指的是对输入数据进行运算的设备。举例而言,运算设备可以包括GPU、CPU、专用人工智能芯片,例如:深度计算器DCU等。
需要说明的是,在相关技术中,算子实现方式的调度规则简单,无法充分发挥硬件的性能,一方面算子实现方式在调度时未考虑输入数据的形状和类型,不同的形状和类型采用相同的算子实现方式,然而不同的算子实现方式,给定不同的输入数据形状和类型,性能表现不一样。另一方面算子实现方式在调度时未区分运算设备的具体型号,例如:V100、A100和3090等不同的显卡型号,不同的算子实现方式实现在不同型号的显卡上,性能可能不一样;未考虑运算设备加速库版本,例如:相同算子实现方式,加速库(cudnn)不同版本,性能可能不同。再一方面算子实现方式在调度时未考虑运算设备的运算环境,例如:相同GPU的显卡,在不同的主板和CPU上,性能可能不同。
由此,本公开中,可以获取算子实现方式调度规则的信息,即输入数据的第一属性信息和运算设备的第二属性信息,进行算子实现方式调度,以充分发挥硬件的性能。
需要说明的是,数据的第一属性信息可以包括数据的形状、数据的类型等。
其中,数据的形状可以包括大、小、宽、深等,即大数据、小数据、宽数据、深数据等。
其中,数据的类型可以包括浮点型数据、定点型数据等,浮点型数据大小可以为32位、64位;定点型数据大小可以为32位、64位。
需要说明的是,运算设备的第二属性信息可以包括运算设备的型号、运算设备的加速库版本、运算设备的环境等。
S102,根据第一属性信息和第二属性信息,从候选算子实现方式中选取目标算子实现方式。
需要说明的是,候选算子实现方式可以包括两种及两种以上的算子实现方式,例如,可以包括算子组合实现方式、算子编译器实现方式。此处仅为示例,其他算子实现也可以作为候选算子实现。其中,算子组合实现方式,由于可以利用小算子组合计算得到,因此比较简单灵活。而算子编译器实现方式,由于可以不增加算子的数量,因此实现性能高。
需要说明的是,本公开中预先设定有候选算子实现方式,候选算子实现方式可以为算子组合实现方式或算子编译器实现方式。
其中,算子组合实现方式,指的是用其他更小的算子,组合出复杂的算子。
其中,算子编译器实现方式,指的是同样用指的是用其他更小的算子,组合出复杂的算子,但是会对小算子进行调优。
本公开中,可以根据第一属性信息和第二属性信息,以获取用户的需求信息,进而可以从候选算子实现方式中选取目标算子实现方式,实现了算子组合实现方式和算子编译器实现方式的在一个系统中共存,即算子库内部同时存在算子组合实现方式和算子编译器实现方式,形成优势互补。
S103,基于目标算子实现方式,从算子库中确定输入数据所需算子包括的子算子,以生成算子。
其中,算子库,指的是所有算子的集合。算子的集合中的算子可以包括复杂算子,也可以包括子算子,其中子算子可以用于形成复杂算子。算子的集合中可以包括归一化指数(softmax)、等;子算子可以包括指数(exponential,简称exp)、求和(summation,简称sum)、除法(divide)等。
本公开实施例中,在获取到目标算子实现方式后,可以基于目标算子实现方式,从算子库中确定输入数据所需算子(复杂算子),进而根据算子获取子算子,以根据子算子生成算子。
需要说明的是,针对算子组合实现方式,可以对子算子进行组合,以生成算子。
需要说明的是,针对算子编译器实现方式,可以对算子进行拆分,并自动调优生成执行代码,以获取调优后的子算子,进而可以生成算子。
举例而言,可以对算子进行拆分,并根据预先设定的调优规则或调优模板等进行调优,并生成执行代码,以生成算子。
需要说明的是,可以基于算子的输入数据的第一属性信息,即输入数据的类型、数据的形状和/或运算需求,确定输入数据对应的算子可能包括的子算子。其中,子算子为算子库中的算子。其中,一个输入数据可以对应一个或多个算子。
S104,由运算设备按照算子对输入数据进行运算,得到运算结果。
在本公开实施例中,在获取到算子后,可以加载或发布到运算设备中,进而由运算设备可以按照算子对输入数据进行运算,以得到运算结果。可以理解的是,运算设备可以作为算子的载体,将输入数据输入算子中进行相关函数运算,可以得到一个运算结果。
综上,本公开实施例的数据处理方法,可以获取输入数据的第一属性信息,并获取输入数据对应的运算设备的第二属性信息,并根据第一属性信息和第二属性信息,从候选算子实现方式中选取目标算子实现方式,然后,基于目标算子实现方式,从算子库中确定输入数据所需算子包括的子算子,以生成算子,最后,由运算设备按照算子对输入数据进行运算,得到运算结果。本公开实施例中,可以根据数据的第一属性信息和运算设备的第二属性信息,进行算子实现方式的自动调度,即可以针对不同的输入数据和运算设备的组合,能够调度到最优的算子实现方式,以便于提高运算设备的运算性能,以及输入数据的运算效率,由于不同的算子实现方式具有各自的优势,通过上述自动调度策略,可以充分利用每一种算子实现方式生成最优的输入数据对应的算子,进而可以充分发挥运算设备的硬件性能。
图2是根据本公开第二实施例的数据处理方法流程示意图。如图2所示,在上述实施例的基础上,本公开实施例的数据处理方法具体可包括以下步骤:
S201,获取输入数据的第一属性信息,并获取输入数据对应的运算设备的第二属性信息。
关于该步骤S201可采用本公开中各实施例中的任一实现方式实现,此处不再赘述。
S202,根据第一属性信息和第二属性信息,对候选算子实现方式进行性能评估,以得到对应的性能评估结果。
可选地,可以将第一属性信息和第二属性信息输入至性能评估模型中,以输出对应的评估结果
需要说明的是,本公开中对于根据第一属性信息和第二属性信息,对候选算子实现方式进行性能评估的具体方式不作限定,可以根据实际情况进行选取。
S203,根据性能评估结果,从候选算子实现方式中选取目标算子实现方式。
需要说明的是,候选算子实现方式与性能评估结果是一一对应的,性能评估结果中可以包括多个性能指标,例如运算耗时最少,运算时资源占用少等。因此,在获取到性能评估结果后,可以基于多个性能指标中一个或多个从候选算子实现方式中选取一个目标算子实现方式。举例而言,若试图选取耗时最短的算子实现方式,可以将每个的耗时指标进行比较,从中确定耗时最短的性能评估结果,将该耗时最短的性能评估结果对应的候选算子实现方式确定为目标算子实现方式。
S204,基于目标算子实现方式,从算子库中确定输入数据所需算子包括的子算子,以生成算子。
S205,由运算设备按照算子对输入数据进行运算,得到运算结果。
关于上述步骤S204~S205可采用本公开中各实施例中的任一实现方式实现,此处不再赘述。
综上,本公开实施例的数据处理方法,可以根据第一属性信息和第二属性信息,对候选算子实现方式进行性能评估,以得到对应的性能评估结果,并根据性能评估结果,从候选算子实现方式中选取目标算子实现方式,因此,可以针对不同的性能评估结果,选取与之相对应的目标算子实现方式,减少了硬件对接时算子开发的工作量,同时可以对算子实现方式进行自动调度,进一步地提高了获取算子运算结果的效率。
作为一种可能的实现方式,如图3所示,在上述实施例的基础上,根据第一属性信息和第二属性信息,对候选算子实现方式进行性能评估,以得到对应的性能评估结果的具体过程,包括以下步骤:
S301,获取算子的候选算子实现方式对应的历史性能评估结果。
需要说明的是,候选算子实现方式对应的历史性能评估结果即为算子组合实现方式对应的历史性能评估结果或算子编译器实现方式对应的历史性能评估结果。
需要说明的是,在获取到算子、输入数据以及固定的软硬件环境后,可以分别执行算子库后端的算子组合实现方式或算子编译器实现方式,以分别获取候选算子实现方式对应的历史性能评估结果
其中,历史性能评估结果包括候选实现方式对应的多个指标以及指标评估结果。
举例而言,历史性能评估结果包括的指标可以为时间指标、功耗指标以及显存指标等;历史性能评估结果包括的指标评估结果可以为耗时长短、功耗大小、以及显存占用大小等。
需要说明的是,本公开中对于获取算子的候选算子实现方式对应的历史性能评估结果的具体方式不作限定,可以根据实际情况进行选取。
可选地,可以通过查询缓存或查询服务器进行获取历史性能评估结果。
可选地,可以通过理论估算或性能评估模型预测进行获取历史性能评估结果。
S302,根据第一属性信息和第二属性信息,从历史性能评估结果中选取目标性能评估结果作为性能评估结果。
需要说明的是,历史性能评估结果与第一属性信息和第二属性信息是一一对应的,因此,可以根据第一属性信息和第二属性信息,从历史性能评估结果中选取目标性能评估结果作为性能评估结果。
需要说明的是,本公开中对于从历史性能评估结果中选取目标性能评估结果作为性能评估结果的具体方式不作限定,可以根据实际情况进行选取。
可选地,可以根据用户的实际需求,选取从历史性能评估结果中目标性能评估结果作为性能评估结果。例如,若用户的需求为耗时短,则可以从历史性能评估结果中选取耗时最短的性能评估结果作为性能评估结果;又例如,若用户的需求为功耗小,则可以从历史性能评估结果中选取功耗最小的性能评估结果作为性能评估结果。
综上,本公开提出的数据处理方法,可以获取算子的候选算子实现方式对应的历史性能评估结果,并根据第一属性信息和第二属性信息,从历史性能评估结果中选取目标性能评估结果作为性能评估结果。由此,可以根据第一属性信息和第二属性信息进行选取性能评估结果,提高了获取性能评估结果的准确性与可靠性。
进一步地,在获取到历史性能评估结果后,可以从历史性能评估结果中选取目标性能评估结果作为性能评估结果,进而以获取性能评估结果。
作为一种可能的实现方式,如图4所示,在上述实施例的基础上,具体包括以下步骤:
S401,根据历史性能评估结果,获取对应的历史输入数据和历史运行设备。
需要说明的是,历史性能评估结果中记录有历史输入数据和历史运行设备的信息,本公开实施例中,可以根据历史性能评估结果中的记录信息,确定该历史性能应该结果对应的历史输入数据和历史运行设备。
S402,基于历史性能评估结果中包括历史输入数据的第一属性信息和输入数据的第一属性信息,以及历史运算设备的第二属性信息与运算设备的第二属性信息,从历史性能评估结果中选取目标性能评估结果作为性能评估结果。
在本公开实施例中,为了降低获取性能评估结果的工作量,可以基于历史性能评估结果中包括历史输入数据的第一属性信息和输入数据的第一属性信息,以及历史运算设备的第二属性信息与运算设备的第二属性信息,可以从历史性能评估结果中选取目标性能评估结果作为性能评估结果。
作为一种可能的实现方式,
将历史输入数据的第一属性信息与输入数据的第一属性信息比较,以判断是否有与当前输入数据属性信息一致的历史输入数据。进一步地,将历史运算设备的第二属性信息与运算设备的第二属性信息比较,以判断是否有与当前运算设备属性信息一致的历史运算设备。
本公开实施例中,需要从历史性能评估结果中,选取与输入数据的第一属性信息一致且与运算设备的第二属性信息一致的目标性能评估结果,作为性能评估结果。
需要说明的是,历史输入数据的第一属性信息与当前输入数据的第一属性信息一致、以及历史运算设备的第二属性信息和当前运算设备的第二属性信息一致时,说明已经处理采用类似运算设备处理过类似输入数据,则可以直接将该历史性能评估结果作为性能评估结果。
进一步地,在确定目标性能评估结果后,可以确定该目标性能评估结果对应的候选算子实现方式,将该目标性能评估结果对应的候选算子实现方式,确定为目标算子实现方式。
举例而言,若算子A的历史输入数据第一属性信息为a1,历史运算设备第二属性信息为a2,历史评估结果为a3,当算子B的第一属性信息与a1一致,第二属性信息与a2一致,则算子B的性能评估结果为a3。例如,性能评估结果a3对应的候选算子实现方式为算子组合实现方式,则可以将a3所采用的算子组合实现方式,直接确定为目标算子实现方式。可选地,响应于历史性能评估结果中未包括目标性能评估结果,也就是说,不存在与当前输入数据的第一属性信息一致的历史输入数据,和/或不存在与当前运算设备的第二属性信息的历史运算设备,则根据第一属性信息、第二属性信息和输入数据所需算子,获取到候选算子实现方式的损失信息,并基于损失信息生成候选算子实现方式的性能评估结果。
可选地,预先构建性能评估模型,并对性能评估模型进行训练,将第一属性信息、第二属性信息和输入数据所需算子,输入性能评估模型中,可以输出候选算子实现方式的性能评估结果。
进一步地,在生成候选算子实现方式的性能评估结果后,需要基于性能评估结果从候选算子实现方式中输出目标算子实现方式。
由于输出的性能评估结果未存在对应的历史性能评估结果,在本公开实施例中,在获取性能评估结果后,可以确定出的目标算子实现方式的性能评估结果,与当前输入数据的第一属性信息、当前运算设备的第二属性信息进行绑定,并作为一个新的历史性能评估结果进行存储,以更新数据库,提高数据库的完整性,提高算子实现方式的调度效率。
综上,本公开实施例的数据处理方法,可以基于多种方式,获取性能评估结果,可选地,当历史性能评估结果中包括历史输入数据的第一属性信息与第一属性信息一致,且历史运算设备的第二属性信息与第二属性信息一致时,则可以直接获取性能评估结果;可选地,当历史性能评估结果中未包括目标性能评估结果时,可以利用获取到候选算子实现方式的损失信息,并基于损失信息生成候选算子实现方式的性能评估结果,并对性能评估结果作为一个新的历史性能评估结果进行存储。由此,本公开可以基于多种方式获取性能评估结果,提高了获取性能评估结果的准确性和可靠性,进一步可以基于性能评估结果选取对应的算子实现方式,进而减少了算子开发时的工作量。
作为一种可能的实现方式,如图5所示,在上述实施例的基础上,根据性能评估结果,从候选算子实现方式中选取目标算子实现方式的具体过程,包括以下步骤:
S501,确定用于选取目标算子实现方式的目标性能指标。
需要说明的是,目标性能指标可以为功耗、显存占用、耗时中至少一个。可以根据数据的运算需求,从多个性能指标中确定出用于目标性能指标。
S502,基于目标性能指标和性能评估结果,从候选算子实现方式中选取出目标算子实现方式。
在本公开实施例中,性能评估结果包括一个或多个性能指标的评估结果,在获取到目标性能指标后,可以确定性能评估结果中目标性能指标的指标评估结果,基于目标性能指标的指标评估结果,从候选算子实现方式中选取出目标算子实现方式,例如,目标性能指标为耗时,可以选取指标评估结果中耗时最小的性能评估结果对应的候选算子实现方式,作为目标算子实现方式。再例如,目标性能指标为显存占用,可以选取显存占用最低的性能评估结果对应的候选算子实现方式,作为目标算子实现方式。比方A候选算子实现方式和B候选算子实现方式,其中B候选算子实现方式的性能评估结果中未包括目标性能指标,而A候选算子实现方式的性能评估结果中包括目标性能指标,可以直接选取A候选算子实现方式。作为目标算子实现方式。
作为一种可能的实现方式,如图6所示,在上述实施例的基础上,基于目标性能指标和性能评估结果,从候选算子实现方式中选取出目标算子实现方式,的具体过程,包括以下步骤:
S601,获取性能偏好选取策略,并根据性能偏好选取策略,确定目标性能指标。
需要说明的是,性能偏好选取策略指的是根据运算需求预先确定出的选取目标算子实现方式的策略。
进一步地,在获取到性能偏好选取策略后,可以根据性能偏好选取策略中确定出选取性能评估结果的一个或者多个目标性能指标。
S602,获取性能评估结果中选取与目标性能指标匹配的指标评估结果。
在本公开实施例中,性能评估结果包括一个或多个性能指标的结果,例如,可以包括功耗、显存占用、耗时中一个或多个。在获取到目标性能指标后,可以从性能评估结果中确定与目标性能指标匹配的指标评估结果。
举例而言,若获取的目标指标为功耗,则可以从性能评估结果中选取功耗指标的评估结果。
S603,根据指标评估结果,从候选算子实现方式中选取目标算子实现方式。
在本公开实施例中,在获取到指标评估结果后,可以根据指标评估结果,从候选算子实现方式中选取目标算子实现方式。
举例而言,若性能偏好策略为功耗,当算子组合实现方式的功耗低于算子编译器实现方式时,即使算子组合实现方式的耗时高于算子编译器实现方式,则也将算子组合实现方式作为目标实现方式。
综上,本公开实施例的数据处理方法,可以获取性能偏好选取策略,并根据性能偏好选取策略,确定目标性能指标,并从性能评估结果中选取与目标性能指标匹配的指标评估结果,然后,根据指标评估结果,从候选算子实现方式中选取目标算子实现方式。由此,可以预先根据运算需求,获取性能偏好选取策略,并以根据指标评估结果选取目标算子实现方式,可以对算子实现方式进行统一调度,可以使算子实现过程,具备功耗更低或耗时更少或资源占用更少等优点。
作为一种可能的实现方式,如图7所示,在上述实施例的基础上,基于输入数据所需算子所包括的子算子,生成算子的具体过程,包括以下步骤:
下面针对目标算子实现方式为算子组合实现方式和算子编译器实现方式进行解释说明。
针对目标算子实现方式为算子组合实现方式。
S701,响应于目标算子实现方式为算子组合实现方式,则根据输入数据的第一属性信息,获取所需算子包括的至少一个第一子算子和第一子算子之间的组合顺序。
需要说明的是,算子组合实现方式即按照一定的组合顺序,对子算子进行组合以获取复杂的算子。
不同的输入数据的属性信息往往不同,不同的属性信息可以反应输入数据的运行需求,进而确定出输入数据对应的算子。本公开实施例中,可以基于输入数据的第一属性信息,确定输入数据的运算需求,基于运算需求能够确定出输入数据的算子,在获取算子后基于算子组合实现方式,可以确定出该算子所包括的第一子算子,以及第一子算子之间的组合顺序。
举例而言,针对算子A,获取的第一子算子为子算子1、子算子2、子算子3、子算子4、子算子5,获取到的第一子算子之间的组合顺序为:子算子4、子算子5、子算子2、子算子3、子算子1。
S702,基于组合顺序,对第一子算子进行顺序组合成输入数据对应的算子。
本公开实施例中,目标算子实现方式为算子组合实现方式,则可以按照第一子算子的组合顺序,对第一子算子进行顺序组合,得到输入数据对应的算子。
综上,本公开实施例的数据处理方法,响应于目标算子实现方式为算子组合实现方式,则根据输入数据的第一属性信息,获取算子包括的至少一个第一子算子和第一子算子之间的组合顺序,并基于组合顺序,对第一子算子进行顺序组合成输入数据对应的算子。由此,本公开可以利用子算子进行顺序组合成输入数据对应的算子,减少了硬件对接工作量级。
在获取到输入数据对应的算子之后,由运算设备根据算子对输入数据进行运算时,需要按照组合顺序执行算子中所包括的第一子算子,即执行顺序为:子算子4-子算子5-子算子2-子算子3-子算子1,最终输出运算结果。
针对目标算子实现方式为算子编译器实现方式。
S801,响应于目标算子实现方式为算子编译器实现方式,则根据输入数据的第一属性信息,获取所需算子和算子包括的至少一个第二子算子和第二子算子的编译顺序。
需要说明的是,算子编译器实现方式即按照一定的编译顺序,对子算子进行编译以获取复杂的算子。
不同的输入数据的属性信息往往不同,不同的属性信息可以反应输入数据的运行需求,进而确定出输入数据对应的算子。本公开实施例中,可以基于输入数据的第一属性信息,确定输入数据的运算需求,基于运算需求能够确定出输入数据的算子,在获取算子后基于算子编译器实现方式,可以确定出该算子所包括的第二子算子,以及第二子算子之间的组合顺序。
举例而言,针对算子B,获取的第二子算子为子算子6、子算子7、子算子8、子算子9、子算子10,获取到的第二子算子之间的编译顺序为:子算子9、子算子10、子算子7、子算子6、子算子8。
S802,对所有的第二子算子进行调优处理,以得到调优后的目标第二子算子。
作为一种可能的实现方式,获取目标调优策略,其中,目标调优策略中可以包括对第二子算子的融合策略,进一步地,根据目标调优策略对所有的第二子算子进行调优处理。
可选地,可以根据第一属性信息,确定输入数据的数据形状,并根据数据形状,获取对应的目标调优策略。
本公开中对于根据第一属性信息,确定输入数据的数据形状的具体方式不作限定,可以根据实际情况进行选取。
可选地,针对输入数据input1,可以查询输入数据input1与第一属性信息之间的映射关系,以确定输入数据的形状。
在本公开实施例中,在获取到数据形状后,可以获取对应的目标调优策略。例如,可以将算子进行编译优化成一个整体设备可执行代码。
进一步地,在获取到目标调优策略后,可以对所有的第二子算子进行调优处理。
需要说明的是,本公开中对所有的第二子算子进行调优处理的具体过程不作限定,可以根据实际情况进行选取。
可选地,可以自动或手动对所有的第二子算子进行调优处理,即可以根据预先设定的调优规则或调优模板对所有的第二算子进行调优处理,以得到调优后的目标第二子算子。
可选地,目标调优策略中可以包括对第二子算子的融合策略,可以对所有的第二子算子进行算子融合,进一步地,在获取对应的目标调优策略后,可以对根据目标调优策略对所有的第二子算子进行算子融合,得到融合子算子。
进一步地,对融合后的融合子算子进行算子分组以及算子调度,以得到目标第二子算子。
需要说明的是,在获取到融合后的第二算子后,可以根据第二算子对应的输入数据的形状和运算设备进行分组以及算子调度,以得到目标第二子算子。
S803,基于目标第二子算子之间的编译顺序,对目标第二子算子进行顺序编译,以生成输入数据对应的算子。
综上,本公开实施例的数据处理方法,可以根据性能偏好选取策略,选取算子组合实现方式或算子编译器实现方式,并根据算子组合实现方式和算子编译器实现方式,由运算设备按照算子对输入数据进行运算,由此,可以基于目标第二子算子之间的编译顺序,对目标第二子算子进行顺序编译,以生成输入数据对应的算子,可以避免算子启动设备执行命令时的开销。
进一步,在获取到算子后,可以由运算设备按照算子对输入数据进行运算,得到运算结果。
作为一种可能的实现方式,如图9所示,在上述实施例的基础上,由运算设备按照算子对输入数据进行运算,得到运算结果的具体过程,包括以下步骤:
S901,基于输入数据的算子,生成输入数据对应的深度神经网络的算子集合。
其中,深度神经网络(Deep Neural Networks,简称DNN),是机器学习(MachineLearning,简称ML)领域中的一种技术。
需要说明的是,在接收数据处理任务后,可以数据处理任务中提取输入数据,由于数据处理任务的多样性,进而输入数据也具有多样性,同样输入数据对应的算子也具有多样性,因此,可以基于输入数据的算子,生成输入数据对应的深度神经网络的算子集合。
S902,将算子集合分发至运算设备上构建深度神经网络,并由深度神经网络对输入数据进行运算,得到运算结果。
在本公开实施例中,在生成输入数据对应的深度神经网络的算子集合后,可以将算子集合分发至运算设备上构建深度神经网络。
举例而言,输入数据可以为图像数据,可以构建局部卷积-归一化-非线性化网络(Conv-IN-Relu);输入数据可以为音频数据,可以构建小波神经网络(Wavelet NeuralNetwork,简称WNN);输入数据可以为文本数据,可以构建卷积循环神经网络(Convolutional Recurrent Neural Network,简称CRNN)。
进一步地,在构建深度神经网络后,可以由深度神经网络对输入数据进行运算,以获取运算结果。不同的深度神经网络对输入数据进行运算,可以获取到不同的运算结果。例如,输入数据为图像数据时,构建的深度神经网络可以为用于目标检测、图像分割的神经网络,相应地,运算结果可以为输出的目标检测框、图像分割结果、检测出的目标类型等。又例如,输入数据为音频数据,构建的深度神经网络可以为用于说话人类型识别、音频识别等神经网络,相应地,运算结果可以为输出的说话人的类型、音频对应的文本等。再例如,输入数据可以为文本数据,构建的深度神经网络可以文本抽取网络、文本生成网络等,相应地,运算结果可以为输出抽取的实体信息、基于输入数据生成的文章等。
同时,为了能提高运算过程中的高效性和准确性,对运算过程进行监控,当运算过程发生异常时,可以停止运算并生成异常日志。其中,异常日志可以用来进行重新调度算子。
可选地,当运算过程发生异常时,可以基于运算设备的第二属性信息,调度新的第一运算设备,并由新的第一运算设备按照算子对输入数据进行运算,得到运算结果。
可选地,当运算过程发生异常时,可以基于输入数据的第一属性信息,调度新的第二运算设备,并获取第二运算设备的第二属性信息,返回执行根据第一属性信息和第二属性信息,从候选算子实现方式中选取目标算子实现方式及后续步骤。
综上,本公开实施例的数据处理方法,可以基于输入数据的算子,生成输入数据对应的深度神经网络的算子集合,将算子集合分发至运算设备上构建深度神经网络,并由深度神经网络对输入数据进行运算,得到运算结果,同时可以对运算过程进行异常监控,并在运算过程发生异常时,可以新的第一运算设备按照算子对输入数据进行运算,得到运算结果,也可以基于输入数据的第一属性信息,调度新的第二运算设备。由此,可以在运算设备上构建深度神经网络,对输入数据进行运算,以获取运算结果,可以提高输入数据运算过程中的高效性与准确性。
下面对本公开提出的数据处理的框架,进行解释说明。
如图10所示,本公开的数据处理框架中包括数据处理装置,该数据处理装置可以执行上述实施例中的数据处理方法,即可以根据输入数据的第一属性信息和运算设备的第二属性信息,从算子实现方式库中调度一种目标算子实现方式,其中,算子实现方式库中至少包括算子组合实现方式和算子编译器实现方式,针对输入数据对应的任意一个算子,调度出的目标算子实现方式为算子组合实现方式和算子编译器实现方式的一种。输入数据对应算子包括多个子算子,需要从算子库中选取算子对应的子算子,然后有目标算子实现方式对子算子进行处理,形成输入数据对应的算子。进一步地,在获取到算子实现方式后,可以将算子实现方式加载到运算设备中,由运算设备按照算子对输入数据进行运算。
下面对本公开提出的数据处理方法的流程,进行解释说明。
如图11所示,当输入数据为input1,选定运算设备的加速库版本为CUDNN,其中,input1对应的算子包括全连接层(Fully Cnection,FC)和归一化(softmax)算子,可以基于本地或远程获取性能测试结果,当性能测试结果可选,则直接调度到目标算子实现方式,然后生成FC算子和softmax算子,由运算设备按照这两个算子对input1进行输出运算结果output1。
如12图所示,当输入数据为input2,且input2的数据形状与input1的数据形状不同,则需要重新进行调度算子实现方式,选定运算设备的加速库版本为CUDA、input2对应的算子包括FC算子和softmax算子,可以基于本地或远程获取性能测试结果,当性能测试结果可选,则直接由运算设备进行输出运算结果output2。
如图13所示,当输入数据为input3,且input3的数据形状与input1的数据形状相同,选定运算设备的加速库版本为CUDA、input3对应的算子为FC算子和softmax算子,可以基于本地或远程获取性能测试结果,当性能测试结果可选,可以直接获取与input1相同的算子实现方式,并直接由运算设备进行输出运算结果output3。
图14是根据本公开提出的数据处理装置1400,包括:获取模块1501、选取模块1402、生成模块1403和运算模块1404。其中,
获取模块1401,用于获取算子对应的输入数据的第一属性信息,并获取所述输入数据对应的运算设备的第二属性信息;
选取模块1402,用于根据所述第一属性信息和所述第二属性信息,从候选算子实现方式中选取目标算子实现方式;
生成模块1403,用于基于所述目标算子实现方式,从算子库中确定输入数据所需算子包括的子算子,以生成所述算子;
运算模块1404,用于由所述运算设备按照所述算子对所述输入数据进行运算,得到运算结果。
进一步的,选取模块1402,还用于:
根据所述第一属性信息和所述第二属性信息,对所述候选算子实现方式进行性能评估,以得到对应的性能评估结果;
根据所述性能评估结果,从所述候选算子实现方式中选取所述目标算子实现方式。
进一步的,选取模块1402,还用于:
获取所述算子的所述候选算子实现方式对应的历史性能评估结果;
根据所述第一属性信息和所述第二属性信息,从所述历史性能评估结果中选取目标性能评估结果作为所述性能评估结果。
进一步的,选取模块1402,还用于:
根据所述历史性能评估结果,获取对应的历史输入数据和历史运行设备;
基于所述历史性能评估结果中包括所述历史输入数据的第一属性信息和所述输入数据的第一属性信息一致,以及所述历史运算设备的第二属性信息与所述运算设备的第二属性信息,从所述历史性能评估结果中选取目标性能评估结果作为所述性能评估结果。
进一步的,选取模块1402,还用于:
将所述历史输入数据的第一属性信息与所述输入数据的第一属性信息比较;
将所述历史运算设备的第二属性信息与所述运算设备的第二属性信息比较;
从所述历史性能评估结果中,选取与所述输入数据的第一属性信息一致且与所述运算设备的第二属性信息一致的目标性能评估结果,作为所述性能评估结果。
进一步的,选取模块1402,还用于:
将所述性能评估结果对应的候选算子实现方式,确定为所述目标算子实现方式。
进一步的,选取模块1402,还用于:
将所述目标算子实现方式对应的性能评估结果,与所述第一属性信息、所述第二属性信息进行绑定,并作为一个新的历史性能评估结果进行存储。
进一步的,选取模块1402,还用于:
获取性能偏好选取策略,并根据所述性能偏好选取策略,确定目标指标;
获取所述性能评估结果中选取与所述目标性能指标匹配的指标评估结果;
根据所述指标评估结果,从所述候选算子实现方式中选取所述目标算子实现方式。
进一步的,生成模块1403,还用于:
响应于所述目标算子实现方式为算子组合实现方式,则根据所述输入数据的第一属性信息,获取所需算子和所述算子包括的至少一个第一子算子和所述第一子算子之间的组合顺序;
基于所述组合顺序,对所述第一子算子进行顺序组合成所述算子。
进一步的,生成模块1403,还用于:
响应于所述目标算子实现方式为算子编译器实现方式,则根据所述输入数据的第一属性信息,获取所需算子和所述算子包括的至少一个第二子算子和所述第二子算子的编译顺序;
对所有的所述第二子算子进行调优处理,以得到调优后的目标第二子算子;
基于所述编译顺序,并对所述目标第二子算子进行顺序编译,以生成所述算子。
进一步的,生成模块1403,还用于:
获取目标调优策略,并根据所述目标调优策略对所有的所述第二子算子进行算子融合,得到融合子算子;
对所述融合子算子进行算子分组以及算子调度,以得到所述目标第二子算子。
进一步的,生成模块1403,还用于:
根据所述第一属性信息,确定所述输入数据的数据形状;
根据所述数据形状,获取对应的所述目标调优策略。
进一步的,运算模块1404,还用于:
基于所述输入数据的所述算子,生成所述输入数据对应的深度神经网络的算子集合;
将所述算子集合分发至所述运算设备上构建所述深度神经网络,并由所述深度神经网络对所述输入数据进行运算,得到所述运算结果。
进一步的,运算模块1404,还用于:
对所述运算过程进行监控,响应于所述运算过程异常,停止运算并生成异常日志。
进一步的,运算模块1404,还用于:
基于所述运算设备的第二属性信息,调度新的第一运算设备,并由所述新的第一运算设备按照所述算子对所述输入数据进行运算,得到运算结果。
进一步的,运算模块1404,还用于:
基于所述输入数据的第一属性信息,调度新的第二运算设备,并获取所述第二运算设备的第二属性信息,返回执行所述根据所述第一属性信息和所述第二属性信息,从候选算子实现方式中选取目标算子实现方式及后续步骤。
进一步的,获取模块1401,还用于:
接收数据处理任务,并从所述数据处理任务中提取所述输入数据,其中,所述输入数据为图像数据、音频数据、文本数据中的一类数据。
综上,本公开实施例的数据处理装置,可以获取输入数据的第一属性信息,并获取输入数据对应的运算设备的第二属性信息,并根据第一属性信息和第二属性信息,从候选算子实现方式中选取目标算子实现方式,然后,基于目标算子实现方式,从算子库中确定输入数据所需算子包括的子算子,以生成算子,最后,由运算设备按照算子对输入数据进行运算,得到运算结果。本公开实施例中,可以根据数据的第一属性信息和运算设备的第二属性信息,进行算子实现方式的自动调度,可以充分利用每一种算子实现方式的优势,进而充分发挥了硬件的性能。
本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图15示出了可以用来实施本公开的实施例的示例电子设备1300的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图15所示,电子设备1500包括计算单元1501,其可以根据存储在只读存储器(ROM)1502中的计算机程序或者从存储单元1508加载到随机访问存储器(RAM)1503中的计算机程序,来执行各种适当的动作和处理。在RAM 1503中,还可存储设备1500操作所需的各种程序和数据。计算单元1501、ROM 1502以及RAM 1503通过总线1504彼此相连。输入/输出(I/O)接口1505也连接至总线1504。
设备1500中的多个部件连接至I/O接口1505,包括:输入单元1306,例如键盘、鼠标等;输出单元1507,例如各种类型的显示器、扬声器等;存储单元1508,例如磁盘、光盘等;以及通信单元1509,例如网卡、调制解调器、无线通信收发机等。通信单元1509允许设备1500通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元1501可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1501的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元1501执行上文所描述的各个方法和处理,例如图1至图13所示的数据处理方法。例如,在一些实施例中,数据处理方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1508。在一些实施例中,计算机程序的部分或者全部可以经由ROM 1502和/或通信单元1509而被载入和/或安装到设备1500上。当计算机程序加载到RAM 1503并由计算单元1501执行时,可以执行上文描述的数据处理方法的一个或多个步骤。备选地,在其他实施例中,计算单元1501可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行数据处理方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、互联网以及区块链网络。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
根据本公开的实施例,本公开还提供了一种计算机程序产品,包括计算机程序,其中,计算机程序在被处理器执行时实现根据本公开上述实施例所示的数据处理方法的步骤。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。

Claims (41)

1.一种数据处理方法,包括:
获取输入数据的第一属性信息,并获取所述输入数据对应的运算设备的第二属性信息;
根据所述第一属性信息和所述第二属性信息,从候选算子实现方式中选取目标算子实现方式;
基于所述目标算子实现方式,从算子库中确定所述输入数据所需算子包括的子算子,以生成所述算子;
由所述运算设备按照所述算子对所述输入数据进行运算,得到运算结果。
2.根据权利要求1所述的数据处理方法,其中,所述根据所述第一属性信息和所述第二属性信息,从候选算子实现方式中选取目标算子实现方式,包括:
根据所述第一属性信息和所述第二属性信息,对所述候选算子实现方式进行性能评估,以得到对应的性能评估结果;
根据所述性能评估结果,从所述候选算子实现方式中选取所述目标算子实现方式。
3.根据权利要求2所述的数据处理方法,其中,所述根据所述第一属性信息和所述第二属性信息,对所述候选算子实现方式进行性能评估,以得到对应的性能评估结果,包括:
获取所述算子的所述候选算子实现方式对应的历史性能评估结果;
根据所述第一属性信息和所述第二属性信息,从所述历史性能评估结果中选取目标性能评估结果作为所述性能评估结果。
4.根据权利要求2所述的数据处理方法,其中,所述根据所述第一属性信息和所述第二属性信息,从所述历史性能评估结果中选取目标性能评估结果作为所述性能评估结果,包括:
根据所述历史性能评估结果,获取对应的历史输入数据和历史运行设备;
基于所述历史性能评估结果中所述历史输入数据的第一属性信息和所述输入数据的第一属性信息,以及所述历史运算设备的第二属性信息与所述运算设备的第二属性信息,从所述历史性能评估结果中选取目标性能评估结果作为所述性能评估结果。
5.根据权利要求4所述的数据处理方法,其中,所述基于所述历史性能评估结果中所述历史输入数据的第一属性信息和所述输入数据的第一属性信息,以及所述历史运算设备的第二属性信息与所述运算设备的第二属性信息,从所述历史性能评估结果中选取目标性能评估结果作为所述性能评估结果。,包括:
将所述历史输入数据的第一属性信息与所述输入数据的第一属性信息比较;
将所述历史运算设备的第二属性信息与所述运算设备的第二属性信息比较;
从所述历史性能评估结果中,选取与所述输入数据的第一属性信息一致且与所述运算设备的第二属性信息一致的目标性能评估结果,作为所述性能评估结果。
6.根据权利要求4或5所述的数据处理方法,其中,所述根据所述性能评估结果,从所述候选算子实现方式中选取所述目标算子实现方式,包括:
将所述性能评估结果对应的候选算子实现方式,确定为所述目标算子实现方式。
7.根据权利要求5所述的数据处理方法,其中,所述据所述第一属性信息和所述第二属性信息,对所述候选算子实现方式进行性能评估,以得到对应的性能评估结果包括:
响应于所述历史性能评估结果中未包括所述目标性能评估结果,则根据所述第一属性信息、所述第二属性信息和所述算子,获取到所述候选算子实现方式的损失信息,并基于所述损失信息生成所述候选算子实现方式的性能评估结果。
8.根据权利要求7所述的数据处理方法,其中,所述基于所述损失信息生成所述候选算子实现方式的性能评估结果之后,还包括:
将所述目标算子实现方式对应的性能评估结果,与所述第一属性信息、所述第二属性信息进行绑定,并作为一个新的历史性能评估结果进行存储。
9.根据权利要求7所述的数据处理方法,其中,所述性能评估结果中包括多个性能指标,其中,所述根据所述性能评估结果,从所述候选算子实现方式中选取目标算子实现方式,包括:
确定用于选取所述目标算子实现方式的目标性能指标;
基于所述目标性能指标和所述性能评估结果,从所述候选算子实现方式中选取出所述目标算子实现方式。
10.根据权利要求9所述的数据处理方法,其中,所述基于所述目标性能指标和所述性能评估结果,从所述候选算子实现方式中选取出所述目标算子实现方式,包括:
获取性能偏好选取策略,并根据所述性能偏好选取策略,确定目标性能指标;
获取所述性能评估结果中所述目标性能指标的指标评估结果;
根据所述指标评估结果,从所述候选算子实现方式中选取所述目标算子实现方式。
11.根据权利要求1-3任一项所述的数据处理方法,其中,所述基于所述目标算子实现方式,从算子库中确定所述输入数据所需算子包括的子算子,以生成所述算子,包括:
响应于所述目标算子实现方式为算子组合实现方式,则根据所述输入数据的第一属性信息,获取所需算子和所述算子包括的至少一个第一子算子和所述第一子算子之间的组合顺序;
基于所述组合顺序,对所述第一子算子进行顺序组合成所述算子。
12.根据权利要求1-3任一项所述的数据处理方法,其中,所述基于所述目标算子实现方式,从算子库中确定所述输入数据所需算子包括的子算子,以生成所述算子,包括:
响应于所述目标算子实现方式为算子编译器实现方式,则根据所述输入数据的第一属性信息,获取所需算子和所述算子包括的至少一个第二子算子和所述第二子算子的编译顺序;
对所有的所述第二子算子进行调优处理,以得到调优后的目标第二子算子;
基于所述编译顺序,并对所述目标第二子算子进行顺序编译,以生成所述算子。
13.根据权利要求12所述的数据处理方法,其中,所述对所有的所述第二子算子进行调优处理,以得到调优后的目标第二子算子,包括:
获取目标调优策略,并根据所述目标调优策略对所有的所述第二子算子进行算子融合,得到融合子算子;
对所述融合子算子进行算子分组以及算子调度,以得到所述目标第二子算子。
14.根据权利要求13所述的数据处理方法,其中,所述获取目标调优策略,包括:
根据所述第一属性信息,确定所述输入数据的数据形状;
根据所述数据形状,获取对应的所述目标调优策略。
15.根据权利要求1所述的数据处理方法,其中,所述由所述运算设备按照所述算子对所述输入数据进行运算,得到运算结果,包括:
基于所述输入数据的所述算子,生成所述输入数据对应的深度神经网络的算子集合;
将所述算子集合分发至所述运算设备上构建所述深度神经网络,并由所述深度神经网络对所述输入数据进行运算,得到所述运算结果。
16.根据权利要求1所述的数据处理方法,其中,所述由所述运算设备按照所述算子对所述输入数据进行运算,得到运算结果,包括:
对所述运算过程进行监控,响应于所述运算过程异常,停止运算并生成异常日志。
17.根据权利要求16所述的数据处理方法,其中,所述方法还包括:
响应于所述算子运算过程异常,基于所述运算设备的第二属性信息,调度新的第一运算设备,并由所述新的第一运算设备按照所述算子对所述输入数据进行运算,得到运算结果。
18.根据权利要求16所述的数据处理方法,其中,所述方法还包括:
响应于所述算子运算过程异常,基于所述输入数据的第一属性信息,调度新的第二运算设备,并获取所述第二运算设备的第二属性信息,返回执行所述根据所述第一属性信息和所述第二属性信息,从候选算子实现方式中选取目标算子实现方式及后续步骤。
19.根据权利要求1所述的数据处理方法,其中,所述获取输入数据的第一属性信息之前,还包括:
接收数据处理任务,并从所述数据处理任务中提取所述输入数据,其中,所述输入数据为图像数据、音频数据、文本数据中的一类数据。
20.一种数据处理装置,包括:
获取模块,用于获取输入数据的第一属性信息,并获取所述输入数据对应的运算设备的第二属性信息;
选取模块,用于根据所述第一属性信息和所述第二属性信息,从候选算子实现方式中选取目标算子实现方式;
生成模块,用于基于所述目标算子实现方式,从算子库中确定输入数据所需算子包括的子算子,以生成所述算子;
运算模块,用于由所述运算设备按照所述算子对所述输入数据进行运算,得到运算结果。
21.根据权利要求20所述的数据处理装置,其中,所述选取模块,还用于:
根据所述第一属性信息和所述第二属性信息,对所述候选算子实现方式进行性能评估,以得到对应的性能评估结果;
根据所述性能评估结果,从所述候选算子实现方式中选取所述目标算子实现方式。
22.根据权利要求21所述的数据处理装置,其中,所述选取模块,还用于:
获取所述算子的所述候选算子实现方式对应的历史性能评估结果;
根据所述第一属性信息和所述第二属性信息,从所述历史性能评估结果中选取目标性能评估结果作为所述性能评估结果。
23.根据权利要求21所述的数据处理装置,其中,所述选取模块,还用于:
根据所述历史性能评估结果,获取对应的历史输入数据和历史运行设备;
基于所述历史性能评估结果中包括所述历史输入数据的第一属性信息和所述输入数据的第一属性信息一致,以及所述历史运算设备的第二属性信息与所述运算设备的第二属性信息,从所述历史性能评估结果中选取目标性能评估结果作为所述性能评估结果。
24.根据权利要求23所述的数据处理装置,其中,所述选取模块,还用于:
将所述历史输入数据的第一属性信息与所述输入数据的第一属性信息比较;
将所述历史运算设备的第二属性信息与所述运算设备的第二属性信息比较;
从所述历史性能评估结果中,选取与所述输入数据的第一属性信息一致且与所述运算设备的第二属性信息一致的目标性能评估结果,作为所述性能评估结果。
25.根据权利要求23或24所述的数据处理装置,其中,所述选取模块还用于:
将所述性能评估结果对应的候选算子实现方式,确定为所述目标算子实现方式。
26.根据权利要求24所述的数据处理装置,其中,所述选取模块,还用于:
响应于所述历史性能评估结果中未包括目标性能评估结果,则根据所述第一属性信息、所述第二属性信息和所述算子,获取到所述候选算子实现方式的损失信息,并基于所述损失信息生成所述候选算子实现方式的性能评估结果。
27.根据权利要求26所述的数据处理装置,其中,所述选取模块,还用于:
将所述目标算子实现方式对应的性能评估结果,与所述第一属性信息、所述第二属性信息进行绑定,并作为一个新的历史性能评估结果进行存储。
28.根据权利要求26所述的数据处理装置,其中,所述选取模块,还用于:
确定用于选取所述目标算子实现方式的目标性能指标;
基于所述目标性能指标和所述性能评估结果,从所述候选算子实现方式中选取出所述目标算子实现方式。
29.根据权利要求28所述的数据处理装置,其中,所述选取模块,还用于:
获取性能偏好选取策略,并根据所述性能偏好选取策略,确定目标指标;
获取所述性能评估结果中选取与所述目标性能指标匹配的指标评估结果;
根据所述指标评估结果,从所述候选算子实现方式中选取所述目标算子实现方式。
30.根据权利要求20-22任一项所述的数据处理装置,其中,所述生成模块,还用于:
响应于所述目标算子实现方式为算子组合实现方式,则根据所述输入数据的第一属性信息,获取所需算子和所述算子包括的至少一个第一子算子和所述第一子算子之间的组合顺序;
基于所述组合顺序,对所述第一子算子进行顺序组合成所述算子。
31.根据权利要求20-22任一项所述的数据处理装置,其中,其中,所述生成模块,还用于:
响应于所述目标算子实现方式为算子编译器实现方式,则根据所述输入数据的第一属性信息,获取所需算子和所述算子包括的至少一个第二子算子和所述第二子算子的编译顺序;
对所有的所述第二子算子进行调优处理,以得到调优后的目标第二子算子;
基于所述编译顺序,并对所述目标第二子算子进行顺序编译,以生成所述算子。
32.根据权利要求31所述的数据处理方法,其中,所述生成模块,还用于:
获取目标调优策略,并根据所述目标调优策略对所有的所述第二子算子进行算子融合,得到融合子算子;
对所述融合子算子进行算子分组以及算子调度,以得到所述目标第二子算子。
33.根据权利要求32所述的数据处理装置,其中,所述生成模块,还用于:
根据所述第一属性信息,确定所述输入数据的数据形状;
根据所述数据形状,获取对应的所述目标调优策略。
34.根据权利要求20所述的数据处理装置,其中,所述运算模块,还用于:
基于所述输入数据的所述算子,生成所述输入数据对应的深度神经网络的算子集合;
将所述算子集合分发至所述运算设备上构建所述深度神经网络,并由所述深度神经网络对所述输入数据进行运算,得到所述运算结果。
35.根据权利要求20所述的数据处理装置,其中,所述运算模块,还用于:
对所述运算过程进行监控,响应于所述运算过程异常,停止运算并生成异常日志。
36.根据权利要求35所述的数据处理装置,其中,所述运算模块,还用于:
基于所述运算设备的第二属性信息,调度新的第一运算设备,并由所述新的第一运算设备按照所述算子对所述输入数据进行运算,得到运算结果。
37.根据权利要求35所述的数据处理装置,其中,所述运算模块,还用于:
基于所述输入数据的第一属性信息,调度新的第二运算设备,并获取所述第二运算设备的第二属性信息,返回执行所述根据所述第一属性信息和所述第二属性信息,从候选算子实现方式中选取目标算子实现方式及后续步骤。
38.根据权利要求20所述的数据处理装置,其中,所述获取模块,还用于:
接收数据处理任务,并从所述数据处理任务中提取所述输入数据,其中,所述输入数据为图像数据、音频数据、文本数据中的一类数据。
39.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-19中任一项所述的方法。
40.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-19中任一项所述的方法。
41.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-19中任一项所述的方法的步骤。
CN202111659099.2A 2021-12-31 2021-12-31 数据处理方法、装置及电子设备、存储介质及程序产品 Active CN114492737B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN202111659099.2A CN114492737B (zh) 2021-12-31 2021-12-31 数据处理方法、装置及电子设备、存储介质及程序产品
US17/989,644 US11983086B2 (en) 2021-12-31 2022-11-17 Method for processing data, and electronic device, storage medium and program product
EP22208202.6A EP4113390A3 (en) 2021-12-31 2022-11-18 Method for processing data, and electronic device
KR1020220162525A KR20220166241A (ko) 2021-12-31 2022-11-29 데이터 처리 방법, 장치, 전자기기, 저장매체 및 프로그램
JP2022203468A JP7545461B2 (ja) 2021-12-31 2022-12-20 データ処理方法、データ処理装置、電子機器、記憶媒体およびコンピュータプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111659099.2A CN114492737B (zh) 2021-12-31 2021-12-31 数据处理方法、装置及电子设备、存储介质及程序产品

Publications (2)

Publication Number Publication Date
CN114492737A true CN114492737A (zh) 2022-05-13
CN114492737B CN114492737B (zh) 2022-12-09

Family

ID=81497195

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111659099.2A Active CN114492737B (zh) 2021-12-31 2021-12-31 数据处理方法、装置及电子设备、存储介质及程序产品

Country Status (5)

Country Link
US (1) US11983086B2 (zh)
EP (1) EP4113390A3 (zh)
JP (1) JP7545461B2 (zh)
KR (1) KR20220166241A (zh)
CN (1) CN114492737B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115145965A (zh) * 2022-09-01 2022-10-04 浙江大华技术股份有限公司 数据流的生成方法、电子设备及计算机可读存储介质
CN116483482A (zh) * 2023-05-19 2023-07-25 北京百度网讯科技有限公司 深度学习任务处理方法、系统、装置、设备及介质
US11983086B2 (en) * 2021-12-31 2024-05-14 Beijing Baidu Netcom Science Technology Co., Ltd. Method for processing data, and electronic device, storage medium and program product

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117194991B (zh) * 2023-11-03 2024-02-13 四川并济科技有限公司 基于gpu集群的高维数据推荐系统及方法

Citations (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150033084A1 (en) * 2013-07-28 2015-01-29 OpsClarity Inc. Organizing network performance metrics into historical anomaly dependency data
CN105787619A (zh) * 2014-12-25 2016-07-20 阿里巴巴集团控股有限公司 一种数据处理方法、装置及系统
CN108764487A (zh) * 2018-05-29 2018-11-06 北京百度网讯科技有限公司 用于生成模型的方法和装置、用于识别信息的方法和装置
CN110210605A (zh) * 2019-05-31 2019-09-06 Oppo广东移动通信有限公司 硬件算子匹配方法及相关产品
CN110458294A (zh) * 2019-08-19 2019-11-15 Oppo广东移动通信有限公司 模型运行方法、装置、终端及存储介质
CN110766147A (zh) * 2018-07-25 2020-02-07 赛灵思公司 神经网络编译器架构及编译方法
CN110968404A (zh) * 2018-09-30 2020-04-07 阿里巴巴集团控股有限公司 一种设备数据处理方法及装置
CN111210005A (zh) * 2019-12-31 2020-05-29 Oppo广东移动通信有限公司 设备运行方法、装置、存储介质及电子设备
CN111340237A (zh) * 2020-03-05 2020-06-26 腾讯科技(深圳)有限公司 数据处理和模型运行方法、装置和计算机设备
CN111783952A (zh) * 2020-06-30 2020-10-16 北京百度网讯科技有限公司 配置方法、装置、系统、电子设备以及存储介质
CN111782402A (zh) * 2020-07-17 2020-10-16 Oppo广东移动通信有限公司 数据处理方法、装置以及电子设备
CN111899149A (zh) * 2020-07-09 2020-11-06 浙江大华技术股份有限公司 基于算子融合的图像处理方法和装置、存储介质
CN112069204A (zh) * 2020-09-30 2020-12-11 北京百度网讯科技有限公司 用于算子服务的处理方法、装置、智能工作站和电子设备
CN112084210A (zh) * 2020-09-28 2020-12-15 中国建设银行股份有限公司 数据处理方法、装置、电子设备及存储介质
CN112200310A (zh) * 2020-08-28 2021-01-08 厦门星宸科技有限公司 智能处理器、数据处理方法及存储介质
CN112269723A (zh) * 2020-10-16 2021-01-26 苏州浪潮智能科技有限公司 存储设备的性能分析方法、装置及可读存储介质
CN112328378A (zh) * 2020-11-05 2021-02-05 南京星环智能科技有限公司 任务调度方法、计算机设备及存储介质
CN112560985A (zh) * 2020-12-25 2021-03-26 北京百度网讯科技有限公司 神经网络的搜索方法、装置及电子设备
CN112799642A (zh) * 2021-01-18 2021-05-14 北京百度网讯科技有限公司 用于处理数据的方法、装置、设备以及存储介质
CN112860534A (zh) * 2021-03-17 2021-05-28 上海壁仞智能科技有限公司 硬件架构性能评估和性能优化方法及装置
CN112948079A (zh) * 2021-02-18 2021-06-11 北京百度网讯科技有限公司 任务调度方法、装置、设备和计算机存储介质
CN113031966A (zh) * 2021-05-20 2021-06-25 之江实验室 一种智能选择编译加速库的深度学习编译优化方法
CN113065639A (zh) * 2021-03-08 2021-07-02 深圳云天励飞技术股份有限公司 算子融合方法、系统、设备及存储介质
CN113128702A (zh) * 2021-04-15 2021-07-16 杭州电子科技大学 一种基于强化学习的神经网络自适应分布式并行训练方法
CN113128678A (zh) * 2020-01-15 2021-07-16 华为技术有限公司 神经网络的自适应搜索方法及装置
CN113159091A (zh) * 2021-01-20 2021-07-23 北京百度网讯科技有限公司 数据处理方法、装置、电子设备及存储介质
CN113312175A (zh) * 2021-04-27 2021-08-27 北京迈格威科技有限公司 一种算子确定、运行方法及装置
CN113378093A (zh) * 2021-06-25 2021-09-10 北京百度网讯科技有限公司 资源发布策略的确定方法、装置、电子设备及存储介质
CN113703741A (zh) * 2021-10-29 2021-11-26 深圳思谋信息科技有限公司 神经网络编译器配置方法、装置、计算机设备和存储介质
US20210398022A1 (en) * 2020-10-22 2021-12-23 Beijing Baidu Netcom Science Technology Co., Ltd. Method and apparatus of fusing operators, electronic device and storage medium

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6978174B2 (ja) * 2017-10-11 2021-12-08 アルパイン株式会社 評価情報生成システムおよび車載装置
US11841854B2 (en) * 2018-07-24 2023-12-12 MachEye, Inc. Differentiation of search results for accurate query output
CN110689121A (zh) * 2019-09-24 2020-01-14 上海寒武纪信息科技有限公司 一种用多核处理器实现神经网络模型拆分方法及相关产品
CN110956272B (zh) * 2019-11-01 2023-08-08 第四范式(北京)技术有限公司 实现数据处理的方法和系统
US20210174214A1 (en) * 2019-12-10 2021-06-10 The Mathworks, Inc. Systems and methods for quantizing a neural network
CN115599356A (zh) * 2021-07-12 2023-01-13 华为云计算技术有限公司(Cn) 一种数据处理方法、装置及相关设备
CN114492737B (zh) * 2021-12-31 2022-12-09 北京百度网讯科技有限公司 数据处理方法、装置及电子设备、存储介质及程序产品

Patent Citations (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150033084A1 (en) * 2013-07-28 2015-01-29 OpsClarity Inc. Organizing network performance metrics into historical anomaly dependency data
CN105787619A (zh) * 2014-12-25 2016-07-20 阿里巴巴集团控股有限公司 一种数据处理方法、装置及系统
CN108764487A (zh) * 2018-05-29 2018-11-06 北京百度网讯科技有限公司 用于生成模型的方法和装置、用于识别信息的方法和装置
CN110766147A (zh) * 2018-07-25 2020-02-07 赛灵思公司 神经网络编译器架构及编译方法
CN110968404A (zh) * 2018-09-30 2020-04-07 阿里巴巴集团控股有限公司 一种设备数据处理方法及装置
CN110210605A (zh) * 2019-05-31 2019-09-06 Oppo广东移动通信有限公司 硬件算子匹配方法及相关产品
CN110458294A (zh) * 2019-08-19 2019-11-15 Oppo广东移动通信有限公司 模型运行方法、装置、终端及存储介质
CN111210005A (zh) * 2019-12-31 2020-05-29 Oppo广东移动通信有限公司 设备运行方法、装置、存储介质及电子设备
CN113128678A (zh) * 2020-01-15 2021-07-16 华为技术有限公司 神经网络的自适应搜索方法及装置
CN111340237A (zh) * 2020-03-05 2020-06-26 腾讯科技(深圳)有限公司 数据处理和模型运行方法、装置和计算机设备
CN111783952A (zh) * 2020-06-30 2020-10-16 北京百度网讯科技有限公司 配置方法、装置、系统、电子设备以及存储介质
CN111899149A (zh) * 2020-07-09 2020-11-06 浙江大华技术股份有限公司 基于算子融合的图像处理方法和装置、存储介质
CN111782402A (zh) * 2020-07-17 2020-10-16 Oppo广东移动通信有限公司 数据处理方法、装置以及电子设备
CN112200310A (zh) * 2020-08-28 2021-01-08 厦门星宸科技有限公司 智能处理器、数据处理方法及存储介质
CN112084210A (zh) * 2020-09-28 2020-12-15 中国建设银行股份有限公司 数据处理方法、装置、电子设备及存储介质
CN112069204A (zh) * 2020-09-30 2020-12-11 北京百度网讯科技有限公司 用于算子服务的处理方法、装置、智能工作站和电子设备
CN112269723A (zh) * 2020-10-16 2021-01-26 苏州浪潮智能科技有限公司 存储设备的性能分析方法、装置及可读存储介质
US20210398022A1 (en) * 2020-10-22 2021-12-23 Beijing Baidu Netcom Science Technology Co., Ltd. Method and apparatus of fusing operators, electronic device and storage medium
CN112328378A (zh) * 2020-11-05 2021-02-05 南京星环智能科技有限公司 任务调度方法、计算机设备及存储介质
CN112560985A (zh) * 2020-12-25 2021-03-26 北京百度网讯科技有限公司 神经网络的搜索方法、装置及电子设备
CN112799642A (zh) * 2021-01-18 2021-05-14 北京百度网讯科技有限公司 用于处理数据的方法、装置、设备以及存储介质
CN113159091A (zh) * 2021-01-20 2021-07-23 北京百度网讯科技有限公司 数据处理方法、装置、电子设备及存储介质
CN112948079A (zh) * 2021-02-18 2021-06-11 北京百度网讯科技有限公司 任务调度方法、装置、设备和计算机存储介质
CN113065639A (zh) * 2021-03-08 2021-07-02 深圳云天励飞技术股份有限公司 算子融合方法、系统、设备及存储介质
CN112860534A (zh) * 2021-03-17 2021-05-28 上海壁仞智能科技有限公司 硬件架构性能评估和性能优化方法及装置
CN113128702A (zh) * 2021-04-15 2021-07-16 杭州电子科技大学 一种基于强化学习的神经网络自适应分布式并行训练方法
CN113312175A (zh) * 2021-04-27 2021-08-27 北京迈格威科技有限公司 一种算子确定、运行方法及装置
CN113031966A (zh) * 2021-05-20 2021-06-25 之江实验室 一种智能选择编译加速库的深度学习编译优化方法
CN113378093A (zh) * 2021-06-25 2021-09-10 北京百度网讯科技有限公司 资源发布策略的确定方法、装置、电子设备及存储介质
CN113703741A (zh) * 2021-10-29 2021-11-26 深圳思谋信息科技有限公司 神经网络编译器配置方法、装置、计算机设备和存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ZHANG YOUHUI等: "Employing intelligence in object-based storage devices to provide attribute-based file access", 《SCIENCE CHINA INFORMATION SCIENCES》 *
吴林阳等: "一种运算和数据协同优化的深度学习编译框架", 《高技术通讯》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11983086B2 (en) * 2021-12-31 2024-05-14 Beijing Baidu Netcom Science Technology Co., Ltd. Method for processing data, and electronic device, storage medium and program product
JP7545461B2 (ja) 2021-12-31 2024-09-04 ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド データ処理方法、データ処理装置、電子機器、記憶媒体およびコンピュータプログラム
CN115145965A (zh) * 2022-09-01 2022-10-04 浙江大华技术股份有限公司 数据流的生成方法、电子设备及计算机可读存储介质
CN116483482A (zh) * 2023-05-19 2023-07-25 北京百度网讯科技有限公司 深度学习任务处理方法、系统、装置、设备及介质
CN116483482B (zh) * 2023-05-19 2024-03-01 北京百度网讯科技有限公司 深度学习任务处理方法、系统、装置、设备及介质

Also Published As

Publication number Publication date
KR20220166241A (ko) 2022-12-16
JP7545461B2 (ja) 2024-09-04
JP2023036773A (ja) 2023-03-14
EP4113390A2 (en) 2023-01-04
US20230115163A1 (en) 2023-04-13
US11983086B2 (en) 2024-05-14
CN114492737B (zh) 2022-12-09
EP4113390A3 (en) 2023-05-03

Similar Documents

Publication Publication Date Title
CN114492737B (zh) 数据处理方法、装置及电子设备、存储介质及程序产品
US11455473B2 (en) Vector representation based on context
US11915123B2 (en) Fusing multimodal data using recurrent neural networks
AU2021273796B2 (en) Dynamic automation of selection of pipeline artifacts
KR20200098378A (ko) 설명 정보 확정 방법, 장치, 전자 기기 및 컴퓨터 저장 매체
CN108776696B (zh) 节点配置方法及装置、存储介质和电子设备
CN108021984A (zh) 确定机器学习样本的特征重要性的方法及系统
CN102736896B (zh) 运行前近似计算
CN114667507A (zh) 使用基于应用的剖析的机器学习工作负载的弹性执行
EP3701403B1 (en) Accelerated simulation setup process using prior knowledge extraction for problem matching
US20220391672A1 (en) Multi-task deployment method and electronic device
EP4080392A1 (en) Clustering software codes in scalable manner
WO2015055373A2 (en) Case-based reasoning
US10705810B2 (en) Automatic code generation
CN109783745B (zh) 对页面进行个性化排版的方法、装置和计算机设备
US20220122038A1 (en) Process Version Control for Business Process Management
CN114998649A (zh) 图像分类模型的训练方法、图像分类方法及装置
CN113010571A (zh) 数据检测方法、装置、电子设备、存储介质和程序产品
CN112906723A (zh) 一种特征选择的方法和装置
WO2023173964A1 (en) Intelligently optimized machine learning models
AU2020297181A1 (en) A data extraction method
CN114626546A (zh) 一种大气污染源数据分析方法、装置、设备及存储介质
CN115687141A (zh) 应用程序的测试方法、装置、电子设备和存储介质
CN117931991A (zh) 训练样本获取及大模型优化训练方法和装置
CN114546525A (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