CN117785441A - 处理数据的方法和数据处理装置 - Google Patents

处理数据的方法和数据处理装置 Download PDF

Info

Publication number
CN117785441A
CN117785441A CN202311614611.0A CN202311614611A CN117785441A CN 117785441 A CN117785441 A CN 117785441A CN 202311614611 A CN202311614611 A CN 202311614611A CN 117785441 A CN117785441 A CN 117785441A
Authority
CN
China
Prior art keywords
tensor
blocks
tensor block
block index
processing units
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
Application number
CN202311614611.0A
Other languages
English (en)
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202311614611.0A priority Critical patent/CN117785441A/zh
Publication of CN117785441A publication Critical patent/CN117785441A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/46Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9017Indexing; Data structures therefor; Storage structures using directory or table look-up
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9032Query formulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/50Extraction of image or video features by performing operations within image blocks; by using histograms, e.g. histogram of oriented gradients [HoG]; by summing image-intensity values; Projection analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/94Hardware or software architectures specially adapted for image or video understanding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/28Quantising the image, e.g. histogram thresholding for discrimination between background and foreground patterns
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供一种处理数据的方法和数据处理装置,该方法包括:数据处理装置获取对应于输入数据的输入张量;该数据处理装置确定M1个第一类张量块和M2个第二类张量块;该数据处理装置中的P个处理单元并行处理该M个张量块,其中在第一时间段内,该P个运算单元并行处理的张量块均为第一类张量块;在第二时间段内,该P个运算单元并行处理的张量块均为第二类张量块。上述技术方案中,数据处理装置根据张量块的属性,从M个张量块内确定出了属性相同的张量块,数据处理装置内的处理单元可以根据张量块的属性,对属性相同的张量块进行并行处理,这样,可以提高该数据处理装置处理数据的速度。

Description

处理数据的方法和数据处理装置
本申请是分案申请,原申请的申请号是201811489176.2,原申请日是2018年12月6日,原申请的全部内容通过引用结合在本申请中。
技术领域
本申请涉及信息技术领域,更具体地,涉及处理数据的方法和数据处理装置。
背景技术
目前,在处理例如视频数据的张量时,可以使用包括多个处理单元的处理器来实现。张量可以被划分为多个张量块,多个处理器会分批对该多个张量块进行处理。例如,假设将张量划分为60个张量块,处理器中共包括20个处理单元。这20个处理单元会先处理前20个张量块,然后处理第21至第40个张量块,最后处理第41至第60个张量块。然而,不同的张量块因为包含的元素不同,所以处理的难度可能并不相同。这就导致了不同处理单元处理不同张量块的速度不同。先完成张量块处理的处理单元只能等到其他处理单元完成处理后,才可以继续对下一批张量块进行处理。这样就降低了处理单元的利用效率,从而降低处理张量的速度。
发明内容
本申请提供一种处理数据的方法和数据处理装置,能够提高处理数据的速度。
第一方面,本申请实施例提供一种处理数据的方法,该方法包括:数据处理装置获取对应于输入数据的输入张量,该输入张量为N维张量,N为大于或等于1的正整数,该输入张量由M个张量块组成,M为大于或等于2的正整数;该数据处理装置中的P个处理单元并行处理该M个张量块,其中:在第一时间段内,该P个处理单元并行处理的张量块均为第一类张量块,该第一类张量块为该M个张量块中张量块属性为第一属性的张量块;在第二时间段内,该P个处理单元并行处理的张量块均为第二类张量块,该第二类张量块为该M个张量块中张量块属性为第二属性的张量块;该第一时间段与该第二时间段不重合,P为大于或等于2的正整数。
上述技术方案中,数据处理装置根据张量块的属性,从M个张量块内确定出了属性相同的张量块,数据处理装置内的处理单元可以根据张量块的属性,对属性相同的张量块进行并行处理。具有相同属性的张量块的处理难度是近似的,因此处理时间差异不大。不同属性的张量块的处理难度差距较大,因此处理时间差异较大。因此,上述技术方案可以有效避免了混编属性不同的张量块导致的并行处理空闲等待时间,有效提高对张量的处理速度,从而提高该数据处理装置处理海量数据的速度。
需要说明的是,M1和M2的和小于或等于M。所述M个张量块按照属性不同可以分为两种类型或更多种类型的张量块,所述P个处理单元在不同的时间段内分别并行处理这多种张量块。
结合第一方面,在第一方面的一种可能的实现方式中,在该数据处理装置中的P个处理单元并行处理该M个张量块之前,该方法还包括:该数据处理装置确定M1个第一张量块索引和M2个第二张量块索引,其中该M1个第一张量块索引分别用于指示M1个该第一类张量块,该M2个第二张量块索引分别用于指示M2个该第二类张量块,M1和M2为大于或等于1的正整数;该数据处理装置将该M1个第一张量块索引保存在第一存储空间中,将该M2个第二类张量块索引保存在第二存储空间中;该P个处理单元从该第一存储空间中获取该M1个第一张量块索引,从该第二存储空间中获取该M2个第二张量块索引;该数据处理装置中的P个处理单元并行处理该M个张量块,包括:该P个处理单元根据该M1个第一张量块索引和该M2个第二张量块索引,并行处理该M个张量块,其中该P个处理单元在该第一时间段内并行处理的该第一类张量块是根据该第一张量块索引从该M个张量块中确定的,该P个处理单元在该第二时间段内并行处理的该第二类张量块是根据该第二张量块索引从该M个张量块中确定的。上述技术方案中,张量块索引保存在一个特定的存储空间中,那么该数据处理装置可以直接从该特定的存储空间内获取张量块索引,从而尽快获取对应的张量块,进而加快对张量块的处理速度。
结合第一方面,在第一方面的一种可能的实现方式中,该M1个第一张量块索引连续地存储在该第一存储空间中,该M2个第二张量块索引连续地存储在该第二存储空间中。上述技术方案中,由于个M1个第一张量块索引和M2个第二张量块索引是连续存储的,这样可以更进一步提高该数据处理装置获取该M1个第一张量块索引和M2个第二张量块索引的速度。
结合第一方面,在第一方面的一种可能的实现方式中,该M1个第一张量块索引中的每个第一张量块索引在该第一存储空间内的先后顺序与该每个第一张量块索引所指示的第一类张量块在该M个张量块内的先后顺序相同;该M2个第二张量块索引中的每个第二张量块索引在该第二存储空间内的先后顺序与该每个第二张量块索引所指示的第二类张量块在该M个张量块内的先后顺序相同。上述技术方案中,由于M1个第一张量块索引和M2个第二张量块索引的保存顺序没有发生变化,这样该数据处理装置可以按顺序获取该M1个第一张量块索引和M2个第二张量块索引。换句话说,该数据处理装置需在对该M1个第一张量块索引和M2个第二张量块索引进行排序,这样可以进一步提高该数据处理装置处理M1个第一张量块索引和M2个第二张量块索引的速度。
结合第一方面,在第一方面的一种可能的实现方式中,在该数据处理装置中的P个处理单元并行处理该M个张量块之前,该方法还包括:该数据处理装置确定第一对应关系,该第一对应关系为该P个处理单元与该第一类张量块的对应关系;该数据处理装置确定第二对应关系,该第二对应关系为该P个处理单元与该第二类张量块的对应关系;该数据处理装置中的P个处理单元并行处理该M个张量块,包括:该P个处理单元根据该第一对应关系和该第二对应关系并行处理该M个张量块。基于上述技术方案,该P个处理单元可以根据与张量块的对应关系,直接确定各自需要处理的张量块。这样,可以提高该P个处理单元处理该张量块的速度。
结合第一方面,在第一方面的一种可能的实现方式中,该方法还包括:该数据处理装置确定张量块属性指示信息,该张量块属性指示信息包括M个指示信息,该M个指示信息分别用于表示该M个张量块的该张量块属性;该数据处理装置确定M个张量块索引,该M个张量块索引分别用于指示该M个张量块;该数据处理装置确定M1个第一张量块索引和M2个第二张量块索引,包括:该数据处理装置根据该M个指示信息,从该M个张量块索引中确定该M1个第一张量块索引和该M2个第二张量块索引。通过上述技术方案,该数据处理装置可以利用属性指示信息,快速确定出相同属性的张量块索引。
结合第一方面,在第一方面的一种可能的实现方式中,该数据处理装置根据该M个指示信息,从该M个张量块索引中确定该M1个第一张量块索引和该M2个第二张量块索引,包括:该数据处理装置根据该M个指示信息,确定第一位置信息,该第一位置信息用于表示该M个指示信息中的每个第一指示信息在该M1个第一指示信息中的位置,其中,该M1个第一指示信息所表示的该张量块属性为该第一属性;该数据处理装置根据该M个指示信息,确定第二位置信息,该第二位置信息用于表示该M个指示信息中的每个第二指示信息在该M2个第二指示信息中的位置,其中,该M2个第二指示信息表示该张量块属性为该第二属性;该数据处理装置根据该第一位置信息,确定该M1个第一张量块索引;该数据处理装置根据该第二位置信息,确定该M2个第二张量块索引。通过上述技术方案,该数据处理装置可以利用属性指示信息,快速确定出相同属性的张量块索引。
第二方面,本申请实施例提供一种数据处理装置,该数据处理装置包括存储单元和P个运算单元,该P个运算单元可以结合该存储单元实现第一方面或第一方面的任一种可能的实现方式。
第三方面,本申请实施例提供一种数据处理装置,该装置包括处理器和存储器,该存储器存储用于实现第一方面或第一方面的任一种可能的实现方式所述的方法的指令,该处理器可以基于该存储器中存储的指令,实现第一方面或第一方面任一种可能的实现方式。
第四方面,本申请实施例提供一种存储介质,该存储介质存储用于实现第一方面或第一方面的任一种可能的实现方式所述的方法的指令。
第五方面,本申请提供了一种包含指令的计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述第一方面或第一方面的任一种可能的实现方式所述的方法。
附图说明
图1是根据本申请实施例提供的一种处理数据的方法的示意性流程图。
图2是根据本申请实施例提供的处理图片的方法的示意性流程图。
图3是前背景标记结果的示意图。
图4是张量块属性标记结果的示意图。
图5是12×12个张量块索引的示意图。
图6是第一位置信息的示意图。
图7是第二位置信息的示意图。
图8是整理后的张量块索引的示意图。
图9是根据本发明实施例提供的数据处理装置的结构框图。
图10是根据本申请实施例提供的一种数据处理装置的结构框图。
具体实施方式
下面将结合附图,对本申请中的技术方案进行描述。
本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下中的至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a、b、c、a-b、a-c、b-c、或a-b-c,其中a、b、c可以是单个,也可以是多个。另外,在本申请的实施例中,“第一”、“第二”等字样并不对数量和执行次序进行限定。
需要说明的是,本申请中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
本申请实施例中所称的数据处理装置可以是能处理张量的任何装置,例如计算机(包括个人计算机、笔记本电脑、台式计算机等)、服务器、网络设备或者能够处理张量的专用计算机设备等。
图1是根据本申请实施例提供的一种处理数据的方法的示意性流程图。
101,数据处理装置获取对应于输入数据的输入张量,该输入张量是N维张量,N为大于或等于1的正整数。所述输入张量由M个张量块组成,M为大于或等于2的正整数。
本申请实施例对输入数据的类型并不限定,例如,输入数据可以是视频图像、音频、图片等。对应于输入数据的输入张量可以是该输入数据本身,也可以是该输入数据的一部分数据。例如,假设输入数据是一段视频图像,该段视频图像总长度为10秒。但是该段视频图像的前3秒只是静态画面,从第4秒开始才有运动的物体出现。因此,对应于这段视频图像的输入张量可以是从第4秒开始至视频结束的张量。又如,假设输入数据是一张图片,将这张图片分割后得到的一部分图片的张量就是对应于该图片的输入张量。
102,该数据处理装置确定M1个第一类张量块和M2个第二类张量块,其中该第一类张量块为该M个张量中张量块属性为第一属性的张量块,该第二类张量块为该M个张量中张量块属性为第二属性的张量块,M1和M2为大于或等于1的正整数。
输入张量可以划分为M个张量块,该M个张量块中的每个张量块可以由m1×m2×…×mn个元素组成,其中m1,m2,……,mn和n均为大于或等于1的正整数,n为张量维度。本申请实施例对如何划分张量块并不限定。
假设该输入张量是一张图片。这个图片可以被划分为多个图像块,并以图像块为基本单元进行各种类型的操作。例如基于块的预测、变换、熵编码等等。这里的图像块就相当于是张量块。图像块指一个长宽二维采样的长宽色彩通道三维点阵列,其中长宽二维可以是正方形,也可以是矩形。图像块内元素指图像块内元素的采样值。元素也可以称为采样点、子像素点或者子像素等。相应的,元素的值也可以称为子像素值。
假设该输入张量是一张图片。这个图片可以被划分为多个图像块,并以图像块为基本单元进行各种类型的操作。例如基于块的预测、变换、熵编码等等。这里的图像块就相当于是张量块。图像块指一个二维采样点阵列,可以是正方形阵列,也可以是矩形阵列。图像块内元素指图像块内元素的采样值。元素也可以称为、采样点、像素点或者像素等。相应的,元素的值也可以称为像素值。
该M个张量块中的每个张量块可以根据该每个张量块包括的元素的属性划分为不同属性的张量块。为了便于描述,以下将张量块的属性称为张量块属性,将元素的属性称为元素属性。具体地,张量块属性可以包括第一属性和第二属性。例如,假设输入张量是图片,该图片可以被划分前景和背景。该第一属性可以是前景,该第二属性可以是背景。又如,假设输入张量是音频,该音频可以被划分为语音和噪音。该第一属性可以是语音,该第二属性可以是噪声。为便于描述,将张量块属性为第一属性的张量块称为第一类张量块,将张量块属性为第二属性的张量块称为第二类张量块。
上述例子中是假设第一属性是前景,第二属性是背景,或者第一属性是语音,第二属性是噪音是为了帮助更好地理解第一属性和第二属性,而并非是对第一属性和第二属性对应的内容的限制。例如,在另一些实施例中,第一属性可以是背景,第二属性可以是前景。第一属性可以是噪音,第二属性可以是语音。
假设M表示该输入张量包括的全部张量块的数量。换句话说,该输入张量中由M个张量块组成。M1表示该M个张量块中的第一类张量块的数量,M2表示该M个张量块中的第二类张量块的数量。在本实施例中,M1与M2的和为M。。
可选的,在一些实施例中,该M个张量块可以由第一类张量块和第二类张量块组成。M1与M2均为大于或等于1的正整数,且M1与M2的和为M。
可选的,在一些实施例中,该M个张量块中的全部张量块可以都是第一类张量块。换句话说,该M个张量块都是第一类张量块。在此情况下,M等于M1,M2等于0。
可选的,在一些实施例中,该M个张量块中的全部张量块可以都是第二类张量块。换句话说,M个张量块都是第二类张量块,在此情况下,M1等于0,M2等于M。
如上所述,该M个张量块中的每个张量块可以根据该每个张量块包括的元素的属性划分为不同属性的张量块。具体地,该每个张量块中的每个元素的元素属性也可以被划分为该第一属性和该第二属性。以图片为例,每个元素的元素属性可以是前景或者是背景。
本申请实施例对如何根据每个张量块包括的元素的属性来确定张量块的属性的实现并不限定。
例如,在一些实施例中,若一个张量块中只要有一个元素属性为第一属性的元素,则该张量块的张量块属性就是该第一属性。若一个张量块中所有的元素的元素属性均为第二属性,则该张量块的张量块属性为该第二属性。换句话说,张量块中包含的所有元素的元素属性均为第二属性的张量块被划为第二类张量块;而其他的张量块被划为第一类张量块。
又如,在一些实施例中,若一个张量块中只要有一个元素属性为第二属性的元素,则该张量块的张量块属性就是该第二属性。若一个张量块中所有的元素的元素属性均为第一属性,则该张量块的张量块属性为该第一属性。换句话说,张量块中包含的所有元素的元素属性均为第一属性的张量块被划为第一类张量块;而其他的张量块被划为第二类张量块。
又如,在一些实施例中,若一个张量块中元素属性为第一属性的元素的数目大于一个预设值,则该张量块的张量块属性为该第一属性。若一个张量块中元素属性为第一属性的元素数目不大于该预设值,则该张量块的张量块属性为该第二属性。该预设值是一个预先设定的值,该预设值可以是大于或等于1且小于或等于张量块包括的元素数目的任意值。可选的,在一些实施例中,该预设值可以是1。可选的,在另一些实施例中,该预设值可以是张量块包括的元素数目的一半。若一个张量块包括的元素数目为奇数,则该预设值可以是该张量块包括的元素数目除以2之后向上取整或者向下取整后得到的整数。可选的,在另一些实施例中,该预设值可以等于一个张量块包括的元素数目。
又如,在一些实施例中,若一个张量块中元素属性为第一属性的元素的比例大于一个预设百分比,则该张量块的张量块属性为该第一属性。该预设百分比可以是大于或等于0且小于或等于100的任一值。可选的,在一些实施例中,该预设百分比可以是0。可选的,在一些实施例中,该预设百分比可以是50%。可选的,在另一些实施例中,该预设百分比可以是100%。
本申请实施例对确定每个元素的元素属性的方式并不限定。可以利用现有技术确定每个元素的元素属性。例如,若该输入数据是视频数据,则可以利用帧间差分法、背景差分法、ViBe背景提取算法等算法来确定图片中的前景和背景,从而确定出每个元素是前景还是背景,进而确定每个张量块的张量块属性是第一属性还是第二属性。
以上只描述了张量块属性包括第一属性和第二属性的情况下如何确定张量块属性。在另一些实施例中,张量块属性还可以包括第三属性,甚至是第四属性。在此情况下如何确定一个张量块的张量块属性的实现方式可以参考上述方式,在此就不必赘述。
103,该数据处理装置可以确定M1个第一张量块索引,该M1个第一张量块索引分别用于指示该M1个第一类张量块。该数据处理装置还可以确定M2个第二张量块索引,该M2个第二张量块索引分别用于指示M2个第二类张量块。换句话说,该数据处理装置共确定出M个张量块索引,该M个张量块索引分别用于指示M个张量块。该M个张量块索引中指示的张量块的张量块属性为该第一属性的张量块索引是该第一张量块索引,该M个张量块索引中指示的张量块的张量块属性为第二属性的张量块信息是该第二张量块索引。
可选的,在一些实施例中,该数据处理装置可以先确定张量块属性指示信息,该张量块属性指示信息包括M个指示信息,该M个指示信息分别用于表示该M个张量块的张量块属性。
该M个指示信息中每个指示信息的大小可以根据属性的数目来确定。
例如,若张量块属性只包括第一属性和第二属性,则该M个指示信息中的每个指示信息的大小可以为1比特(bit),若指示信息的值为1,则表示该指示信息所表示的张量块的张量块属性为第一属性,若指示信息的值为0,则表示该指示信息所表示的张量块的张量块属性为第二属性。
又如,若张量块属性包括第一属性、第二属性、第三属性和第四属性,则该M个指示信息中的每个指示信息的大小可以为2比特(bit),若指示信息的值为00,则表示该指示信息所表示的张量块的张量块属性为第一属性,若指示信息的值为01,则表示该指示信息所表示的张量块的张量块属性为第二属性,若指示信息的值为10,则表示该指示信息所表示的张量块的张量块属性为第三属性,若指示信息的值为11,则表示该指示信息所表示的张量块的张量块属性为第四属性。
进一步,假设M等于5,则该张量块属性指示信息的长度为5比特,该5比特中的第1个比特用于表示5个张量块中的第一个张量块的张量块属性,第2个比特用于表示该5个张量块中的第2个张量块的张量块属性,以此类推。假设该张量块属性指示信息为11000,则表明该5个张量块中的前两个张量块的张量块属性为该第一属性,后三个张量块的张量块属性为该第二属性。
该数据处理装置可以确定M个张量块索引,该M个张量块索引分别用于指示该M个张量块。
可选的,在一些实施例中,该张量块索引可以是所指示的张量块的坐标。例如,假设输入张量是一个二维张量,则该二维张量可以被划分为X×Y个张量块。假设一个张量块索引是(1,3),该张量块索引所指示的张量块是该输入张量的第1行第3个张量块。
可选的,在一些实施例中,张量块索引可以是所指示的张量块在M个张量块中的顺序。例如,假设一个张量块索引是3,则表示该张量块索引所指示的张量块是该M个张量块中的第3个张量块。该数据处理装置可以根据该张量块在该M个张量块中的顺序,确定该张量块的坐标。例如,假设输入张量是一个二维张量,则该二维张量可以被划分为2×3个张量块且张量块索引为3,则该数据处理装置可以确定该张量块索引所指示的张量块是第1行第3个张量块。
可以看出,该M个张量块索引中的每个张量块索引用于指示相应的张量块是该M个张量块中的哪个张量块。因此,该数据处理装置可以根据该M个指示信息,从该M个张量块索引中确定该M1个第一张量块索引。
可选的,该数据处理装置根据该M个指示信息,从该M个张量块索引中确定该M1个第一张量块索引,包括:该数据处理装置根据该M个指示信息,确定第一位置信息,该第一位置信息用于表示该M个指示信息中的每个第一指示信息在该M1个第一指示信息中的位置,其中,该M1个第一指示信息所表示的该张量块属性为该第一属性;该数据处理装置根据该第一位置信息,确定该M1个第一张量块索引。
假设8个指示信息分别为1、1、0、0、1、0、1、1(其中1表示所表示的张量块的张量块属性为第一属性,0表示所表示的张量块的张量块属性为第二属性),则第一位置信息为12223345,其中12223345中的1表示位于该位置的指示信息是第一指示信息且该第一指示信息是第一个第一指示信息,12223345中的第一个2表示位于该位置的指示信息是第一指示信息且该第一指示信息是第二个第一指示信息,12223345的第二个和第三个2表示位于该位置的指示信息是第二指示信息(第二指示信息所表示的张量块属性为第二属性),12223345中的第一个3表示位于该位置的指示信息是第一指示信息且该第一指示信息是第三个第一指示信息,12223345的第二个3表示位于该位置的指示信息是第二指示信息,12223345中的4表示位于该位置的指示信息是第一指示信息且该第一指示信息是第四个第一指示信息,12223345中的5表示位于该位置的指示信息是第一指示信息且该第一指示信息是第五个第一指示信息。由此可见,该第一位置指示信息可表示出每个第一指示信息在该M1个第一指示信息中的位置,即是该M1个第一指示信息中的第几个第一指示信息。该第一位置指示信息还可以表示出每个指示信息是否是第一指示信息。在确定出了该第一位置信息后,该数据处理装置可以根据该第一位置信息确定出五个指示信息中的第一个指示信息、第二个指示信息和第五个指示信息对应的张量块的张量块索引为第一张量块索引。
第一个第一指示信息在表示表明8个张量块中的第1、2、5、7、8个张量块的张量块属性为该第一属性,第3、4、6个张量块的张量块属性为该第二属性,相应的用于表示该8个张量块的8个张量块索引中的第1、2、5、7、8个张量块索引为第一张量块索引,第3、4、6个张量块索引为第二张量块索引。
该第一位置信息可以通过对指示信息进行前缀和(prefix sum)运算得到。可选的,在一些实施例中,该数据处理装置中可以包括多个处理单元。在此情况下,该多个处理单元中的部分或全部处理单元可以并行处理该指示信息(即使用该多个处理单元中的部分或全部处理单元进行前缀和运算),得到该前缀和运算的运算结果,该前缀和运算的运算结果就是该第一位置信息。
可选的,该数据处理装置还可以根据该M个指示信息,确定第二位置信息,该第二位置信息用于指示该M个指示信息中的每个第二指示信息在该M2个第二指示信息中的位置,其中,该M2个第二指示信息所表示的该张量块属性为该第二属性;该数据处理装置根据该第二位置信息,确定该M2个第二张量块索引。。
还假设8个指示信息分别为1、1、0、0、1、0、1、1(其中1表示所表示的张量块的张量块属性为第一属性,0表示所表示的张量块的张量块属性为第二属性),则第二位置信息为00122333。该第二位置信息中的每个数字的具体含义可以参考第一位置信息,在此就不必赘述。
该第二位置信息也可以使用前缀和的方式确定。具体地,在确定该第二位置信息之前,先将该指示信息取反,得到00110100,然后进行前缀和计算,得到00122333。
当然,在另一些实施例中,该数据处理装置可以根据张量块的张量块属性来确定出该M1个第一张量块索引。换句话说,该数据处理装置可以不需要先确定该M个指示信息。该数据处理装置可以直接确定出每个第一类张量块在该M个张量块中的位置,然后确定出用于表示该每个第一类张量块的第一张量块索引。例如,该数据处理装置确定出一个第一类张量块是该M个张量块中的第1行第3个张量块,则该数据处理装置可以直接确定出一个第一张量块索引为(1,3)。
104,该数据处理装置组织该M1个第一张量块索引和该M2个第二张量块索引。
105,该数据处理装置中的P个处理单元并行处理该M个张量块,其中在第一时间段内,该P个处理单元并行处理的张量块均为该第一类张量块,在第二时间段内,该P个处理单元并行处理的张量块均为该第二类张量块,该第一时间段与该第二时间段不重合,P为大于或等于2的正整数。
可选的,在一些实施例中,该数据处理装置组织该M1个第一张量块索引可以包括:该数据处理装置将该M1个第一张量块索引保存在第一存储空间中。在此情况下,数据处理装置可以从该第一存储空间中获取该M1个第一张量块索引,并对该M1个第一张量块索引所指示的M1个第一类张量块进行处理。换句话说,该M1个第一地址张量块索引可以被存储在一个特定的存储空间中。只要该数据处理装置需要获取该M1个第一张量块索引,该数据处理装置就可以直接读取该特定的存储空间来获取该M1个第一张量块索引。换句话说,该数据处理装置无需搜索就可以直接确定保存该M1个第一张量块索引的存储空间并从该存储空间中读取该M1个第一张量块索引。这样,可以提高该数据处理装置获取该M1个第一张量块索引的速度,从而提高处理该输入张量的速度。
相应的,该数据处理装置组织该M2个第二张量块索引可以包括:该数据处理装置将该M2个第二张量块索引保存在第二存储空间中。在此情况下,数据处理装置可以从该第二存储空间中获取该M2个第二张量块索引,并对该M2个第二张量块索引所指示的M2个第二类张量块进行处理。换句话说,该M2个第二地址张量块索引可以被存储在一个特定的存储空间中。只要该数据处理装置需要获取该M2个第二张量块索引,该数据处理装置就可以直接读取该特定的存储空间来获取该M2个第二张量块索引。换句话说,该数据处理装置无需搜索就可以直接确定保存该M2个第二张量块索引的存储空间并从该存储空间中读取该M2个第二张量块索引。这样,可以提高该数据处理装置获取该M2个第二张量块索引的速度,从而提高处理该输入张量的速度。
可选的,在一些实施例中,该M1个第一张量块索引可以连续地存储在该第一存储空间中,该M2个第二张量块索引可以连续地存储在该第二存储空间中。这样,可以更进一步提高该数据处理装置获取该M1个第一张量块索引的速度,从而进一步提高处理该输入张量的速度。
可选的,在一些实施例中,连续地存储可以是指用于存储张量块索引的存储单元是连续的。该第一存储空间可以包括多个存储单元,该M1个第一张量块索引可以被存储在该多个存储单元中的连续的存储单元中。类似的,该第二存储空间也可以包括多个存储单元,该M2个第二张量块索引可以被存储在该多个存储单元中的连续的存储单元中。
本申请实施例对存储单元存储张量块索引的方式并不限定。
例如,在一些实施例中,一个存储单元可以存储一个张量块索引。以第一张量块索引为例,该M1个第一张量块索引可以存储在该第一存储空间中的连续的M1个存储单元中。这样,该P个处理单元可以从连续的M1个存储单元中快速地获取需要处理的张量块索引。
又如,在另一些实施例中,一个存储单元可以存储多个张量块索引。假设一个存储单元可以存储两个张量块索引。还以第一张量块索引为例,该M1个第一张量块索引可以存储在该第一存储空间中的M1/2个存储单元中。这样,该P个处理单元可以从连续的M1/2个存储单元中快速地获取需要处理的张量块索引。
可选的,在另一些实施例中,连续地存储可以是指用于指向存储单元的存储地址是连续的。换句话说,用于存储张量块索引的存储单元不一定是连续的,但是对应的存储地址是连续的。
例如,假设一个存储单元可以存储一个张量块索引。以第一张量块索引为例,该M1个第一张量块索引可以存储在该第一存储空间中的M1个存储单元中。每个存储单元有一个存储地址。该M1个存储单元对应的M1个存储地址是连续的。这样,该P个处理单元可以根据连续的存储地址快速地获取需要处理的张量块索引。
当然,在另一些实施例中,该M1个第一张量块索引也可以是不连续地存储在该第一存储空间中的,该M2个第二张量块索引也可以是不连续地存储在该第二存储空间中。例如,该第一存储空间中的某些地址中并没有保存该第一张量块索引。这样,该数据处理装置需要从该第一存储空间中找到保存有该M1个第一张量块索引的地址。与连续存储该M1个第一张量块索引相比,不连续存储该M1个第一张量块索引会一定程度上降低该数据处理装置获取到该M1个第一张量块索引的速度。
该数据处理装置中可以包括P个处理单元,其中P为大于或等于2的正整数。P个处理单元可以并行获取该M1个第一张量块索引,并对该M1个第一张量块索引所指示的M1个第一类张量块进行并行处理。由于该P个处理单元并行对M1个第一类张量块进行处理,这样该P个处理单元可以同时对P个第一类张量块进行处理。换句话说,在同一时刻,该M1个第一类张量块中的P个第一类张量块同时被处理。显然,这样比在一个时刻只有一个第一类张量块被处理的速度快。类似的,该P个处理单元也可以并行获取该M2个第二张量块索引并对该M2个第二张量块索引所指示的M2个第二类张量块进行并行处理。由于该P个处理单元并行对M2个第二类张量块进行处理,这样该P个处理单元可以同时对P个第二类张量块进行处理。换句话说,在同一时刻,该M2个第二类张量块中的P个第二类张量块同时被处理。显然,这样比在一个时刻只有一个第一类张量块被处理的速度快。
可选的,在一些实施例中,该M1个第一张量块索引中的每个第一张量块索引在该第一存储空间内的先后顺序与该每个第一张量块索引所指示的第一类张量块在该M个张量块内的先后顺序相同。例如,假设M等于10,该10个张量块中共包括3个第一类张量块(也就说M1等于3),分别为第1、6、8个张量块。总共有3个第一张量块索引分别指示该3个第一类张量块。3个第一张量块索引分别称为张量块索引1、张量块索引2和张量块索引3,其中张量块索引1用于指示第1个张量块、张量块索引2用于指示第6个张量块、张量块索引3用于指示第8个张量块。张量块索引1、张量块索引2和张量块索引3在该第一存储空间内的顺序依次为:张量块索引1、张量块索引2和张量块索引3。可以看出,张量块索引1位于张量块索引2和张量块索引3之前,张量块索引1所指示的第1个张量块位于张量块索引2和张量块索引3所指示的张量块之前。类似的,张量块索引2位于张量块索引1之后和张量块索引3之前,张量块索引2所指示的第6个张量块位于张量块索引1所指示的张量块之后且位于张量块索引3所指示的张量块之前。类似的,该M2个第二张量块索引中的每个第二张量块索引在该第二存储空间内的先后顺序与该每个第二张量块索引所指示的第二类张量块在该M个张量块内的先后顺序相同。具体实现方式与第一类张量块索引类似,在此就不必赘述。
可选的,在一些实施例中,该数据处理装置中可以包括P个处理单元,其中P为大于或等于2的正整数。该数据处理装置组织该M1个第一张量块索引和M2个第二张量块索引,可以包括:该数据处理装置确定第一对应关系和第二对应关系,该第一对应关系为该P个处理单元与该M1个第一张量块索引的对应关系,该第二对应关系为该P个处理单元和该M2个第二张量块索引的对应关系。该P个处理单元中的每个处理单元根据该对应关系获取该每个处理单元对应的第一张量块索引并处理获取到的第一张量块索引指示的第一类张量块,根据该对应关系获取每个处理单元对应的第二张量块索引并处理获取到的第二张量块索引所指示的第二类张量块。
例如,假设P等于2、M1等于10。两个处理单元分别为处理单元1和处理单元2。该数据处理装置可以确定处理单元1对应于10个第一张量块索引中的第1、3、5、7、9个第一张量块索引,处理单元2对应于10个第一张量块索引中的第2、4、6、8、10个第一张量块索引。处理单元1可以根据上述对应关系,获取第10个第一张量块索引中的第1、3、5、7、9个第一张量块索引;处理单元2可以根据上述对应关系获取10个第一张量块索引中的第2、4、6、8、10个第一张量块索引。这样,该P个处理单元中的每个处理单元可以直接根据张量块索引与处理单元的对应关系获取该每个处理单元需要处理的第一张量块索引。与基于轮询的方式获取第一张量块索引相比,上述方案可以提高处理该第一张量块索引的速度。例如,若该P个处理单元采用轮询的方式获取该M1个第一张量块索引,则P个处理单元中的每个处理单元需要等待上一个处理单元获取到第一张量块索引后才能知道要获取的第一张量块索引是哪一个第一张量块索引。但是如果上一个处理单元暂时无法获取第一张量块索引,则相邻的下一个处理单元也无法获取第一张量块索引。而上述技术方案中,每个处理单元可以预先知晓要获取的是哪些第一张量块索引。该每个处理单元在获取第一张量块索引前不需要先等待其他处理单元获取到要处理的第一张量块索引,可以直接获取需要处理的第一张量块索引,这样可以加快该P个处理单元获取该第一张量块索引的速度,从而提高处理该输入张量的速度。该P个处理单元处理第二类张量块的方式类似,在此就不必赘述。
可选的,在另一些实施例中,该数据处理装置可以直接确定该P个处理单元与该M1个第一类张量块的对应关系和该M2个第二类张量块的对应关系。具体地,该数据处理装置可以确定第一对应关系,该第一对应关系为该P个处理单元与该第一类张量块的对应关系。该数据处理装置还可以确定第二对应关系,该第二对应关系为该P个处理单元与该第二类张量块的对应关系。这样,该P个处理单元中的每个处理单元可以直接根据张量块与处理单元的对应关系获取该每个处理单元需要处理的张量块。与基于轮询的方式获取张量块相比,上述方案可以提高处理该张量块的速度。例如,若该P个处理单元采用轮询的方式获取该M1个第一类张量块,则P个处理单元中的每个处理单元需要等待上一个处理单元获取到第一类张量块后才能知道要获取的第一类张量块是哪一个第一类张量块。但是如果上一个处理单元暂时无法获取第一类张量块,则相邻的下一个处理单元也无法获取第一类张量块。而上述技术方案中,每个处理单元可以预先知晓要获取的是哪些张量块。该每个处理单元在获取张量块前不需要先等待其他处理单元获取到要处理的张量块,可以直接获取需要处理的张量块,这样可以加快该P个处理单元获取该张量块的速度,从而提高处理该输入张量的速度。
可选的,在另一些实施例中,该数据处理装置在确定了该M1个第一类张量块和该M2个第二类张量块后,可以直接并行处理该M个张量块。换句话说,该数据处理装置在执行完步骤102后可以直接执行步骤105。
可选的,在另一些实施例中,该数据处理装置在确定出了能够由该P个处理单元进行并行处理的第一类张量块后,可以直接对确定出的第一类张量块进行并行处理,而无需等待全部第一类张量块确定完成后,再对第一类张量块进行并行处理。类似的,该数据处理装置在确定出了能够由该P个处理单元进行并行处理的第二类张量块后,可以直接对确定出的第二类张量块进行并行处理,而无需等待全部第二类张量块确定完成后,再对第二类张量块进行并行处理。换句话说,步骤105可以无需等待步骤102完成后再执行。
例如,假设输入张量可以划分为20个张量块,第1个张量块至5个张量块、第11至第15个张量块为第一类张量块,第6至第10个张量块、第16至第20个张量块为第二类张量块。假设P等于5。该数据处理装置可以依次确定这20个张量块的类型是第一类张量块还是第二类张量块。该数据处理装置在确定了该20个张量块中的前5个张量块为第一类张量块后,5个处理单元就可以并行对该五个张量块进行并行处理;该数据处理装置在确定了第6个张量块至第10个张量块为第二类张量块后,若该5个处理单元已完成对前五个张量块的并行处理,则该5个处理单元就可以开始并行处理第6个张量块至第10个张量块,以此类推。
另外,在一些实施例中,该P个处理单元在并行处理该M个张量块时,可以先确定要处理的张量块的类型是第一类张量块还是第二类张量块。P个处理单元确定出要处理的张量块均为该第一类张量块,则该P个处理单元可以并行处理第一类张量块。若该P个处理单元中的一个或多个处理单元确定出要处理的张量块为第二类张量块,则该一个或多个处理单元可以继续确定待处理的张量块类型直到确定出要处理的张量块也为第一类张量块后,该P个处理单元可以并行对该第一类张量块进行处理。可以看出,在此情况下,步骤102也可以无需执行。换句话说,在步骤101后可以直接执行步骤105。
本申请实施例对处理器如何处理张量块并不进行限定。例如,可以对张量块中的元素进行卷积和、外代数、转置变维、协变微商等张量运算。
下面将以图片为例,结合图1所示的方法,对如何处理图片进行的描述。
图2是根据本申请实施例提供的处理图片的方法的示意性流程图。
201,摄像头获取图片。
图片典型有三个维度:高度、宽度和颜色深度。灰度图片仅有一个颜色通道,因此可以存储为二维张量,但是习惯上图片张量都是三维的,因此灰度图片只用一维颜色管道表示。128张大小为256×256的灰度图片存储成形状为(128,256,256,1)的张量,其中,128表示图片数目、第一个256表示图片的高度,第二个256表示为图片的宽度,1表示图片的颜色管道数目。128张彩色图片存储成形状为(128,256,256,3)的张量。为便于描述,以下实施例假设处理的张量是一张大小为26×26的灰度图片,并且假设所处理的灰度图片的批(batch)为0。
202,摄像头将获取到的图片发送至分析系统。
203,该分析系统对该图片进行前背景标注处理。
具体地,该分析系统可以确定该图片中的前景和背景,并记录确定结果。该分析系统可以利用帧间差分法、背景差分法、ViBe背景提取算法等算法来确定该图片中的前景和背景,从而确定出该图片中的每个元素是前景还是背景,并将确定结果记录下来。
图3是该分析系统记录的前背景标注结果。如图3所示,图3中共包括26×26个方框,每个方框代表图片的一个元素。换句话说,该图片共包括26×26个元素。方框中的值表示该方框代表的元素的元素属性是前景还是背景。具体地,值为0则表示该方框代表的元素是背景,值为1则表示该方框代表的元素是前景。
204,该分析系统对该图片进行处理。
图1所示的方法就是步骤204中的分析系统对该图片进行处理的方法。具体地,该图片相当于图1所示实施例中的输入数据。该输入数据对应的输入张量就是该图片本身。该分析系统中用于对该图片进行处理的装置可以是如图1所示的数据处理装置。
下面结合图3至图8对该分析系统对该图片进行处理的方法进行描述。
根据图3所示的前背景标记结果,确定出每个张量块的张量块属性,得到如图4所示的张量块属性标记结果。假设每个张量块大小为4×4,步长为2。也就是说,第一个张量块由该图片的第一列至第四列的前四行元素组成,第二个张量块由该图片的第三列元素至第六列的前四行元素组成,以此类推。假设每个张量块中如果有一个元素的元素属性为前景,则该张量块的张量块属性就是前景。因此,根据上述规则和如图3所示的前背景标记结果,可以得到如图4所示的张量块属性标记结果。如图4所示的张量块属性标记结果共包括12×12个方框。每个方框对应于一个张量块。也就是说,该分析系统所处理的大小为26×26的图片被划分为12×12(即144)个张量块。方框中的值表示该方框对应的张量块的张量块属性。具体地,值为0则表示该方框对应的张量块的属性是背景,值为1则表示该方框对应的张量块的属性是前景。如图4所示的张量块属性标记结果就是用于表示张量块属性的张量块属性指示信息。换句话说,张量块属性标记结果就是如图1所示实施例中所称的指示信息。
在确定张量块时,还可以确定张量块索引,共包括144个张量块索引,每个张量块索引用于指示一个张量块。该张量块索引可以呈现为如图5所示的张量块索引。如图5所示的张量块索引共包括12×12个方框。每个方框中的数值表示一个张量块索引。例如,最左上角的张量块索引为(0,1,1),该张量块索引表示该张量块索引所指示的张量块是12×12个张量块中的第1行第1个张量块,且批为0。
可以看出,图5所示的12×12个张量块索引与图4所示的12×12个指示信息一一对应。例如,如图4所示的第一行的第一个指示信息为例,该指示信息的值为0,因此该指示信息表示的张量块的张量块属性为背景。该指示信息与图5所示的第一行第一个张量块索引对应。因此如图5所示的第一行第一个张量块索引所表示的张量块的张量块属性为背景。因此,基于指示信息与张量块索引的对应关系,可以确定出张量块索引中表示的张量块的张量属性为前景的第一张量块索引(假设前景为第一属性,背景为第二属性)。
根据如图4所示的指示信息,还可以使用多个处理单元并行确定出第一位置信息。具体地,可以采用前缀和的方式确定该第一位置信息。确定出的第一位置信息可以如图6所示。
相应的,根据图4所示的指示信息,还可以确定出第二位置信息,第二位置信息可以如图7所示。
根据如图6所示的第一位置信息和图7所示的第二位置信息可以从该12×12个张量块索引中确定出第一张量块索引和第二张量块索引,并对该第一张量块索引和该第二张量块索引进行整理,到如图8所示的整理后的张量块索引。
如图8所示,整理后的张量块索引中,前74个张量块索引为第一张量块索引,后70个张量块索引为第二张量块索引。可选的,在一些实施例中,144个张量块索引(即74个第一张量块索引和70个第二张量块索引)可以按照图8所示的顺序保存在特定的存储空间中。可以看出,如图8所示的张量块索引中每个第一张量块索引在74个第一张量块索引中的先后顺序与在图5中的先后顺序相同。例如,在图5和图8中,内容为(1,3)的第一张量块索引均位于内容(1,4)的第一张量块索引之前,内容为(2,2)的第一张量块索引均位于内容(2,3)的第一张量块索引之前。
假设用于处理张量块的处理单元共有36个,这36个处理单元可以并行对第一张量块索引所指示的第一类张量块进行处理和第二张量块索引所指示的第二类张量块进行处理。
可选的,在一些实施例中,该36个处理单元可以先并行处理该第一类张量块,然后再并行处理该第二类张量块。可选的,在另一些实施例中,该36个处理单元可以先并行处理该第二类张量块,然后在并行处理该第一类张量块。下面,以先并行处理该第一类张量块,然后再并行处理该第二类张量块为例,介绍该36个处理单元如何并行对该第一类张量块和该第二类张量块进行处理。
可选的,在一些实施例中,该36个处理单元可以先处理前72个第一类张量块,然后处理最后两个第一类张量块以及70个第二类张量块。具体地,36个处理单元中的第1个处理单元处理第1个第一类张量块,第2个处理单元处理第2个第一类张量块,……,第36个处理单元处理第36个第一类张量块。然后,36个处理单元中的第1个处理单元处理第37个第一类张量块,第2个处理单元处理第38个第一类张量块,……,第36个处理单元处理第72个第一类张量块。然后,36个处理单元中的第1个处理单元处理第71个第一类张量块,第2个处理单元处理第72个第一类张量块,第3个处理单元处理第1个第二类张量块,第4个处理单元处理第2个第二类张量块,……,第36个处理单元处理第34个第二类张量块。然后,36个处理单元中的第1个处理单元处理第35个第二类张量块,第2个处理单元处理第36个第二类张量块,……,第36个处理单元处理第70个第二类张量块。可以看出,上述处理方式中,在一个时间段内,该36个处理单元只处理第一类张量块。在另一个时间段内,该36个处理单元只处理第二类张量块。
可选的,在另一些实施例中,该36个处理单元可以先处理前72个第一类张量块,然后处理最后两个第一类张量块以及70个第二类张量块。具体地,36个处理单元中的第1个处理单元处理第1个第一类张量块,第2个处理单元处理第2个第一类张量块,……,第36个处理单元处理第36个第一类张量块。然后,36个处理单元中的第1个处理单元处理第37个第一类张量块,第2个处理单元处理第38个第一类张量块,……,第36个处理单元处理第72个第一类张量块。然后,36个处理单元中的第1个处理单元处理第71个第一类张量块,第2个处理单元处理第72个第一类张量块。然后,36个处理单元中的第1个处理单元处理第1个第二类张量块,第2个处理单元处理第2个第二类张量块,……,第36个处理单元处理第36个第二类张量块。然后,36个处理单元中的第1个处理单元处理第37个第二类张量块,第2个处理单元处理第36个第二类张量块,……,第34个处理单元处理第70个第二类张量块。可以看出,上述处理方式中,在一个时间段内,该36个处理单元只处理第一类张量块。在另一个时间段内,该36个处理单元只处理第二类张量块。205,该分析系统保存处理单元的处理结果。
若对处理单元对张量块进行卷积运算,则该分析系统可以根据该处理结果得出输入图片在对应卷积网络的特征图,提供给用户需要的功能模块(如分类、检测、分割等)做进一步处理。
图9是根据本发明实施例提供的数据处理装置的结构框图。如图9所示,数据处理装置包括处理器901和存储器902。处理器901中可以包括P个处理单元,P为大于或等于1的正整数。处理单元也可以称为核(core)。在一些情况下,处理器可以是一个芯片,这个芯片内包括多个处理单元,该处理器内的处理单元可以称为该处理器内的核。换句话说,该P个处理单元可以是在一个芯片上。在另一些情况下,处理器901可以由多个处理器组成运算电路实现,每个处理器可以包括一个或多个处理单元。该多个处理器共同组成如图9所示的处理器901。
应理解,图9中仅示出了数据处理装置中与处理张量有关的元件。数据处理装置中除了如图9所示的元件外,还可以包括未在图9中示出的元件。例如,数据处理装置还可以包括收发器,用于接收待处理的输入数据。收发器还可以用于将处理后的数据发送至其他装置。
为便于说明,图9中仅示出了一个存储器。在实际的产品中,可以存在一个或多个存储器。存储器也可以称为存储介质或者存储设备等。存储器可以是独立于处理器设置,也可以是与处理器集成在一起,本申请实施例对此不做限制。
处理器901和存储器902之间通过内部连接通路互相通信,传递控制和/或数据信号
上述本发明实施例揭示的方法可以应用于处理器901中,或者由处理器901实现。处理器901,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器901中的硬件的集成逻辑电路或者软件形式的指令完成。
本申请各实施例所述的处理器可以是通用处理器、数字信号处理器(digitalsignal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存取存储器(random access memory,RAM)、闪存、只读存储器(read-only memory,ROM)、可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的指令,结合其硬件完成上述方法的步骤。
可选的,在一些实施例中,存储器902可以存储用于执行如图1和/或图2所示方法中数据处理装置执行的方法的指令。处理器901可以执行存储器902中存储的指令结合其他硬件(例如存储器902)完成如图1和/或图2所示方法。
例如,存储器902用于存储对应于输入数据的输入张量,该输入张量为N维张量,该输入张量由M个张量块组成,N为大于或等于1的正整数,M为大于或等于2的正整数。处理器901用于并行处理该M个张量块,其中在第一时间段内,该P个运算单元并行处理的张量块均为第一类张量块,该第一类张量块为该M个张量块中张量块属性为第一属性的张量块;在第二时间段内,该P个运算单元并行处理的张量块均为第二类张量块,该第二类张量块为该M个张量块中张量块属性为第二属性的张量块;该第一时间段与该第二时间段不重合,P为大于或等于2的正整数。
处理器901的具体工作过程和有益效果可以参见图1和图2所示实施例中的描述。
本申请实施例对该处理器如何对M个张量块进行并行处理的P个处理单元外的处理操作并不限定。例如,本申请实施例对处理器中哪些处理单元用于确定M1个第一张量块索引和M2个第二张量块索引、组织该M1个第一张量块索引和该M2个第二张量块索引等并不限定,这些处理单元可以是该P个处理单元,也可以是该P个处理单元中的部分处理单元,或者也可以是该处理器中处该P个处理单元以外的处理单元。。以确定M1个第一张量块索引和M2个第二张量块索引的操作为例,假设Q个处理单元用于确定M1个第一类张量块和M2个第二类张量块。
例如,假设该处理器中共包括K个处理单元,K为大于或等于P的正整数。
可选的,在一些实施例中,该Q个处理单元可以是该K个处理单元中的部分处理单元。例如,该处理器中共包括80个处理单元,分别为处理单元1至处理单元80。该Q个处理单元包括处理单元1至处理单元72。
可选的,在另一些实施例中,该Q个处理单元可以是个K个处理单元的全部处理单元。例如,该处理器中共包括80个处理单元,分别为处理单元1至处理单元80。该Q个处理单元包括处理单元1至处理单元80。
可选的,在一些实施例中,该P个处理单元可以是该K个处理单元中的部分处理单元。例如,该处理器中共包括80个处理单元,分别为处理单元1至处理单元80。该P个处理单元包括处理单元1至处理单元72。
可选的,在另一些实施例中,该P个处理单元也可以是该K个处理单元中的全部处理单元。例如,该处理器中共包括80个处理单元,分别为处理单元1至处理单元80。该P个处理单元包括处理单元1至处理单元80。
可选的,在一些实施例中,该Q个处理单元与该P个处理单元可以相同。换句话说,P的取值与Q的取值相同,该P个处理单元就是该Q个处理单元。例如,该处理器中共包括80个处理单元,分别为处理单元1至处理单元80。该Q个处理单元包括处理单元1至处理单元72。该P个处理单元包括处理单元1至处理单元72。
可选的,在另一些实施例中,该Q个处理单元可以是该P个处理单元中的部分处理单元。例如,该处理器中共包括80个处理单元,分别为处理单元1至处理单元80。该Q个处理单元包括处理单元1至处理单元50。该P个处理单元包括处理单元1至处理单元72。
可选的,在另一些实施例中,该P个处理单元可以是该Q个处理单元中的部分处理单元。例如,该处理器中共包括80个处理单元,分别为处理单元1至处理单元80。该Q个处理单元包括处理单元1至处理单元72。该P个处理单元包括处理单元1至处理单元50。
可选的,在另一些实施例中,该P个处理单元与该Q个处理单元可以存在交集。例如,该处理器中共包括80个处理单元,分别为处理单元1至处理单元80。该P个处理单元包括处理单元1至处理单元72,该Q个处理单元可以包括处理单元58至处理单元80。
可选的,在另一些实施例中,该P个处理单元与该Q个处理单元可以不存在交集。例如,例如,该运算电路中共包括80个处理单元,分别为处理单元1至处理单元80。该P个处理单元包括处理单元1至处理单元50,该Q个处理单元可以包括处理单元58至处理单元80。
此外,如上所述,处理器901可以是一个芯片(处理器)也可以由多个处理器芯片(处理器)。还假设处理器中共包括K个处理单元。可选的,在一些实施例中,该K个处理单元可以位于同一个芯片内。在此情况下,该P个处理单元和该Q个处理单元也位于同一个芯片内。例如,一个数据处理装置中总共包括80个处理单元,该80个处理单元可以位于同一个芯片内。
可选的,在一些实施例中,该K个处理单元可以位于不同的芯片内。在此情况下,该P个处理单元和该Q个处理单元可以位于同一个芯片内,也可以位于不同的芯片内,或者可以该P个处理单元和该Q个处理单元中的部分处理单元位于同一个芯片内。
假设一个数据处理装置中总共包括80个处理单元,该80个处理单元分别为处理单元1至处理单元80。该数据处理单元中可以包括四个芯片,芯片1中包括处理单元1至处理单元20,芯片2中包括处理单元21至处理单元40,芯片3中包括处理单元41至处理单元60,芯片4中包括处理单元61至处理单元80。
在一些实施例中,该P个处理单元可以为处理单元1至处理单元20,该Q个处理单元可以为处理单元21至处理单元40。可见,芯片1包括该P个处理单元,芯片2包括该Q个处理单元。该P个处理单元和该Q个处理单元位于不同的芯片中。
在一些实施例中,该P个处理单元可以为处理单元1至处理单元40,该Q个处理单元可以为处理单元41至处理单元80。可见,芯片1和芯片2包括该P个处理单元,芯片3和芯片4包括该Q个处理单元。该P个处理单元和该Q个处理单元位于不同的芯片中,且该P个处理单元由两个芯片所包括的处理单元组成,该Q个处理单元也由两个芯片所包括的处理单元组成。
在一些实施例中,该P个处理单元可以为处理单元1至处理单元10,该Q个处理单元可以为处理单元11至处理单元20。可见,芯片1包括该P个处理单元和该Q该处理单元。该P个处理单元和该Q个处理单元位于相同的芯片中。
在一些实施例中,该P个处理单元可以为处理单元1至处理单元30,该Q个处理单元可以为处理单元31至处理单元60。可见,芯片1和芯片2包括该P个处理单元,芯片2和芯片3包括该Q个处理单元。换句话说,该P个处理单元和该Q个处理单元的一部分位于相同的处理单元中,另一部分位于不同的处理单元中。
在一些实施例中,该P个处理单元可以为处理单元1至处理单元30,该Q个处理单元可以为处理单元21至处理单元40。可见,芯片1和芯片2包括该P个处理单元,芯片2和芯片3包括该Q个处理单元。换句话说,该P个处理单元和该Q个处理单元的一部分位于相同的处理单元中,另一部分位于不同的处理单元中,且该P个处理单元中的部分处理单元与该Q个处理单元中的部分处理单元相同。本申请实施例还提供一种计算机可读存储介质,其上存储有指令,该指令被执行时执行上述方法实施例中的方法。
图10是根据本申请实施例提供的一种数据处理装置的结构框图。如图10所示,数据处理装置1000包括P个运算单元1001和存储单元1002。图10所示的数据处理装置可以执行如图1或图2所示实施例中数据处理装置执行的各个步骤。例如,存储单元1002可以用于存储对应于输入数据的输入张量,该输入张量为N维张量,该输入张量由M个张量块组成,N为大于或等于1的正整数,M为大于或等于2的正整数。该P个运算单元可以用于并行处理该M个张量块,其中在第一时间段内,该P个运算单元并行处理的张量块均为第一类张量块,该第一类张量块为该M个张量块中张量块属性为第一属性的张量块;在第二时间段内,该P个运算单元并行处理的张量块均为第二类张量块,该第二类张量块为该M个张量块中张量块属性为第二属性的张量块;该第一时间段与该第二时间段不重合,P为大于或等于2的正整数。
可选的,在一些实施例中,数据处理装置1000还可以包括调度单元(图中未示出)。该调度单元可以用于确定M1个第一类张量块和M2个第二类张量块。该调度单元还可以用于组织该M1个第一张量块索引和该M2个第二张量块索引。该调度单元还可以用于确定第一对应关系和第二对应关系,该第一对应关系为该P个运算单元与该第一类张量块的对应关系;该第二对应关系为该P个运算单元与该第二类张量块的对应关系。
该调度单元与运算单元可以由处理器实现,该存储单元可以由存储器实现。调度单元、存储单元和运算单元的具体功能和有益效果可以参见图1或图2所示的实施例,在此就不必赘述。
本申请实施例还提供一种包含指令的计算机程序产品,该指令被执行时执行上述方法实施例中的方法。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (19)

1.一种处理数据的方法,其特征在于,所述方法包括:
数据处理装置获取输入张量,所述输入张量为N维张量,N为大于或等于1的正整数,所述输入张量由M个张量块组成,M为大于或等于2的正整数;
在第一时间段内,所述数据处理装置中的P个处理单元并行处理的张量块均为第一类张量块,所述第一类张量块为所述M个张量块中张量块属性为第一属性的张量块;
在第二时间段内,所述数据处理装置中的P个处理单元并行处理的张量块均为第二类张量块,所述第二类张量块为所述M个张量块中张量块属性为第二属性的张量块;
其中,处理所述第一类张量块的时长与处理所述第二类张量块的时长不同,P为大于或等于2的正整数。
2.如权利要求1所述的方法,其特征在于,在所述数据处理装置中的P个处理单元并行处理所述M个张量块之前,所述方法还包括:
所述数据处理装置确定M1个第一张量块索引和M2个第二张量块索引,其中所述M1个第一张量块索引分别用于指示M1个所述第一类张量块,所述M2个第二张量块索引分别用于指示M2个所述第二类张量块,M1和M2为大于或等于1的正整数;
所述数据处理装置将所述M1个第一张量块索引保存在第一存储空间中,将所述M2个第二张量块索引保存在第二存储空间中。
3.如权利要求2所述的方法,其特征在于,所述方法还包括:
所述P个处理单元从所述第一存储空间中获取所述M1个第一张量块索引,从所述第二存储空间中获取所述M2个第二张量块索引;所述数据处理装置中的P个处理单元并行处理所述M个张量块,包括:
所述P个处理单元根据所述M1个第一张量块索引和所述M2个第二张量块索引,并行处理所述M个张量块,其中所述P个处理单元在所述第一时间段内并行处理的所述第一类张量块是根据所述第一张量块索引从所述M个张量块中确定的,所述P个处理单元在所述第二时间段内并行处理的所述第二类张量块是根据所述第二张量块索引从所述M个张量块中确定的。
4.如权利要求2或3所述的方法,其特征在于,所述M1个第一张量块索引连续地存储在所述第一存储空间中,所述M2个第二张量块索引连续地存储在所述第二存储空间中。
5.如权利要求2至4中任一项所述的方法,其特征在于,所述M1个第一张量块索引中的每个第一张量块索引在所述第一存储空间内的先后顺序与所述每个第一张量块索引所指示的第一类张量块在所述M个张量块内的先后顺序相同;
所述M2个第二张量块索引中的每个第二张量块索引在所述第二存储空间内的先后顺序与所述每个第二张量块索引所指示的第二类张量块在所述M个张量块内的先后顺序相同。
6.如权利要求1所述的方法,其特征在于,在所述数据处理装置中的P个处理单元并行处理所述M个张量块之前,所述方法还包括:
所述数据处理装置确定第一对应关系,所述第一对应关系为所述P个处理单元与所述第一类张量块的对应关系;
所述数据处理装置确定第二对应关系,所述第二对应关系为所述P个处理单元与所述第二类张量块的对应关系;
所述数据处理装置中的P个处理单元并行处理所述M个张量块,包括:
所述P个处理单元根据所述第一对应关系和所述第二对应关系并行处理所述M个张量块。
7.如权利要求2至5中任一项所述的方法,其特征在于,所述方法还包括:
所述数据处理装置确定张量块属性指示信息,所述张量块属性指示信息包括M个指示信息,所述M个指示信息分别用于表示所述M个张量块的所述张量块属性;
所述数据处理装置确定M个张量块索引,所述M个张量块索引分别用于指示所述M个张量块;
所述数据处理装置确定M1个第一张量块索引和M2个第二张量块索引,包括:
所述数据处理装置根据所述M个指示信息,从所述M个张量块索引中确定所述M1个第一张量块索引和所述M2个第二张量块索引。
8.如权利要求7所述的方法,其特征在于,所述数据处理装置根据所述M个指示信息,从所述M个张量块索引中确定所述M1个第一张量块索引和所述M2个第二张量块索引,包括:
所述数据处理装置根据所述M个指示信息,确定第一位置信息,所述第一位置信息用于表示所述M个指示信息中的每个第一指示信息在M1个第一指示信息中的位置,其中,所述M1个第一指示信息所表示的所述张量块属性为所述第一属性;
所述数据处理装置根据所述M个指示信息,确定第二位置信息,所述第二位置信息用于表示所述M个指示信息中的每个第二指示信息在M2个第二指示信息中的位置,其中,所述M2个第二指示信息表示所述张量块属性为所述第二属性;
所述数据处理装置根据所述第一位置信息,确定所述M1个第一张量块索引;
所述数据处理装置根据所述第二位置信息,确定所述M2个第二张量块索引。
9.一种数据处理装置,其特征在于,所述数据处理装置包括存储器和处理器,所述处理器包括P个处理单元,P为大于或等于2的正整数,
所述存储器,用于存储输入张量,所述输入张量为N维张量,所述输入张量由M个张量块组成,N为大于或等于1的正整数,M为大于或等于2的正整数;
所述P个处理单元,用于:
在第一时间段内,并行处理的张量块均为第一类张量块,所述第一类张量块为所述M个张量块中张量块属性为第一属性的张量块;
在第二时间段内,并行处理的张量块均为第二类张量块,所述第二类张量块为所述M个张量块中张量块属性为第二属性的张量块;
其中,处理所述第一类张量块的时长与处理所述第二类张量块的时长不同,P为大于或等于2的正整数。
10.如权利要求9所述的数据处理装置,其特征在于,
所述处理器,用于确定M1个第一张量块索引和M2个第二张量块索引,其中所述M1个第一张量块索引分别用于指示M1个所述第一类张量块,所述M2个第二张量块索引分别用于指示M2个所述第二类张量块,M1和M2为大于或等于1的正整数;
所述存储器,还用于保存所述M1个第一张量块索引和M2个第二张量块索引,其中所述M1个第一张量块索引保存在所述存储器的第一存储空间中,所述M2个第二张量块索引保存在所述存储器的第二存储空间中。
11.如权利要求10所述的数据处理装置,其特征在于,
所述P个处理单元,具体用于从所述第一存储空间中获取所述M1个第一张量块索引,从所述第二存储空间中获取所述M2个第二张量块索引,根据所述M1个第一张量块索引和所述M2个第二张量块索引,并行处理所述M个张量块,其中所述P个处理单元在所述第一时间段内并行处理的所述第一类张量块是根据所述第一张量块索引从所述M个张量块中确定的,所述P个处理单元在所述第二时间段内并行处理的所述第二类张量块是根据所述第二张量块索引从所述M个张量块中确定的。
12.如权利要求10或11所述的数据处理装置,其特征在于,所述M1个第一张量块索引连续地存储在所述第一存储空间中,所述M2个第二张量块索引连续地存储在所述第二存储空间中。
13.如权利要求10至12中任一项所述的数据处理装置,其特征在于,所述M1个第一张量块索引中的每个第一张量块索引在所述第一存储空间内的先后顺序与所述每个第一张量块索引所指示的第一类张量块在所述M个张量块内的先后顺序相同;
所述M2个第二张量块索引中的每个第二张量块索引在所述第二存储空间内的先后顺序与所述每个第二张量块索引所指示的第二类张量块在所述M个张量块内的先后顺序相同。
14.如权利要求9所述的数据处理装置,其特征在于,
所述处理器,还用于第一对应关系和第二对应关系,其中所述第一对应关系为所述P个处理单元与所述第一类张量块的对应关系,所述第二对应关系为所述P个处理单元与所述第二类张量块的对应关系;
所述P个处理单元,具体用于根据所述第一对应关系和所述第二对应关系并行处理所述M个张量块。
15.如权利要求10至13中任一项所述的数据处理装置,其特征在于,
所述处理器,还用于确定张量块属性指示信息,所述张量块属性指示信息包括M个指示信息,所述M个指示信息分别用于表示所述M个张量块的所述张量块属性;
所述处理器,还用于确定M个张量块索引,所述M个张量块索引分别用于指示所述M个张量块;
所述处理器,具体用于根据所述M个指示信息,从所述M个张量块索引中确定所述M1个第一张量块索引和所述M2个第二张量块索引。
16.如权利要求15所述的数据处理装置,其特征在于,
所述处理器,具体用于根据所述M个指示信息,确定第一位置信息,所述第一位置信息用于表示所述M个指示信息中的每个第一指示信息在M1个第一指示信息中的位置,其中,所述M1个第一指示信息所表示的所述张量块属性为所述第一属性;
根据所述M个指示信息,确定第二位置信息,所述第二位置信息用于表示所述M个指示信息中的每个第二指示信息在M2个第二指示信息中的位置,其中,所述M2个第二指示信息表示所述张量块属性为所述第二属性;
根据所述第一位置信息,确定所述M1个第一张量块索引;
根据所述第二位置信息,确定所述M2个第二张量块索引。
17.一种存储介质,其特征在于,所述存储介质存储用于执行如权利要求1至8中任一项所述的方法的指令。
18.一种芯片,其特征在于,所述芯片用于获取输入张量,所述输入张量为N维张量,N为大于或等于1的正整数,所述输入张量由M个张量块组成,M为大于或等于2的正整数;
所述芯片包括P个处理单元,所述P个处理单元用于执行如权利要求1至8中任一项所述的P个处理单元所执行的方法。
19.一种包含指令的计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如权利要求1至8中任一项所述的方法。
CN202311614611.0A 2018-12-06 2018-12-06 处理数据的方法和数据处理装置 Pending CN117785441A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311614611.0A CN117785441A (zh) 2018-12-06 2018-12-06 处理数据的方法和数据处理装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201811489176.2A CN111291240B (zh) 2018-12-06 2018-12-06 处理数据的方法和数据处理装置
CN202311614611.0A CN117785441A (zh) 2018-12-06 2018-12-06 处理数据的方法和数据处理装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201811489176.2A Division CN111291240B (zh) 2018-12-06 2018-12-06 处理数据的方法和数据处理装置

Publications (1)

Publication Number Publication Date
CN117785441A true CN117785441A (zh) 2024-03-29

Family

ID=70974514

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202311614611.0A Pending CN117785441A (zh) 2018-12-06 2018-12-06 处理数据的方法和数据处理装置
CN201811489176.2A Active CN111291240B (zh) 2018-12-06 2018-12-06 处理数据的方法和数据处理装置

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201811489176.2A Active CN111291240B (zh) 2018-12-06 2018-12-06 处理数据的方法和数据处理装置

Country Status (3)

Country Link
US (1) US11995890B2 (zh)
CN (2) CN117785441A (zh)
WO (1) WO2020114422A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112507173B (zh) * 2020-12-15 2024-05-31 无锡灵汐类脑科技有限公司 张量切分方法、装置、芯片及介质
CN116127259A (zh) * 2021-01-13 2023-05-16 华为技术有限公司 张量处理方法、装置、设备及计算机可读存储介质

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2750411B2 (ja) * 1992-12-02 1998-05-13 大日本スクリーン製造株式会社 製版処理装置
US6775417B2 (en) * 1997-10-02 2004-08-10 S3 Graphics Co., Ltd. Fixed-rate block-based image compression with inferred pixel values
US5956431A (en) * 1997-10-02 1999-09-21 S3 Incorporated System and method for fixed-rate block-based image compression with inferred pixel values
GB2395778A (en) * 2002-11-29 2004-06-02 Sony Uk Ltd Face detection
JP5506273B2 (ja) * 2009-07-31 2014-05-28 富士フイルム株式会社 画像処理装置及び方法、データ処理装置及び方法、並びにプログラム
US8204988B2 (en) * 2009-09-02 2012-06-19 International Business Machines Corporation Content-based and time-evolving social network analysis
US8442821B1 (en) * 2012-07-27 2013-05-14 Google Inc. Multi-frame prediction for hybrid neural network/hidden Markov models
US20140181171A1 (en) * 2012-12-24 2014-06-26 Pavel Dourbal Method and system for fast tensor-vector multiplication
US9769365B1 (en) * 2013-02-15 2017-09-19 Red.Com, Inc. Dense field imaging
CN104166538A (zh) * 2013-05-16 2014-11-26 北大方正集团有限公司 一种数据任务处理方法及系统
US9471377B2 (en) * 2013-11-13 2016-10-18 Reservoir Labs, Inc. Systems and methods for parallelizing and optimizing sparse tensor computations
US9436890B2 (en) * 2014-01-23 2016-09-06 Samsung Electronics Co., Ltd. Method of generating feature vector, generating histogram, and learning classifier for recognition of behavior
CN104035751B (zh) * 2014-06-20 2016-10-12 深圳市腾讯计算机系统有限公司 基于多图形处理器的数据并行处理方法及装置
JP6058065B2 (ja) * 2015-01-23 2017-01-11 日本電信電話株式会社 テンソルデータ計算装置、テンソルデータ計算方法、及びプログラム
US20170316311A1 (en) 2015-03-24 2017-11-02 Hrl Laboratories, Llc Sparse inference modules for deep learning
JP2017068608A (ja) * 2015-09-30 2017-04-06 株式会社東芝 演算装置、方法及びプログラム
CN107015946A (zh) * 2016-01-27 2017-08-04 常州普适信息科技有限公司 一种分布式高阶svd及其增量计算的方法
US9875104B2 (en) * 2016-02-03 2018-01-23 Google Llc Accessing data in multi-dimensional tensors
US11504038B2 (en) * 2016-02-12 2022-11-22 Newton Howard Early detection of neurodegenerative disease
US11055063B2 (en) * 2016-05-02 2021-07-06 Marvell Asia Pte, Ltd. Systems and methods for deep learning processor
CN106023098B (zh) * 2016-05-12 2018-11-16 西安电子科技大学 基于张量结构多字典学习与稀疏编码的图像修补方法
CN106203321B (zh) * 2016-07-06 2019-11-05 深圳先进技术研究院 一种步态识别方法及系统
US9959498B1 (en) * 2016-10-27 2018-05-01 Google Llc Neural network instruction set architecture
CN107239824A (zh) 2016-12-05 2017-10-10 北京深鉴智能科技有限公司 用于实现稀疏卷积神经网络加速器的装置和方法
US20190392297A1 (en) * 2016-12-30 2019-12-26 Intel Corporation Deep learning hardware
US10956500B2 (en) * 2017-01-19 2021-03-23 Google Llc Dynamic-length stateful tensor array
CN108364327B (zh) * 2017-01-26 2021-09-17 华为技术有限公司 一种图数据处理的方法及装置
US9875167B1 (en) * 2017-03-29 2018-01-23 Google Inc. Distributed hardware tracing
CN107169922B (zh) * 2017-05-16 2020-04-14 山东知微智成电子科技有限公司 基于张量稀疏表示的拓扑结构维持的图像配准方法
US11086968B1 (en) * 2017-06-05 2021-08-10 Reservoir Labs, Inc. Systems and methods for memory efficient parallel tensor decompositions
US10776110B2 (en) * 2018-09-29 2020-09-15 Intel Corporation Apparatus and method for adaptable and efficient lane-wise tensor processing
US20200117981A1 (en) * 2018-10-11 2020-04-16 International Business Machines Corporation Data representation for dynamic precision in neural network cores
US11531902B2 (en) * 2018-11-13 2022-12-20 International Business Machines Corporation Generating and managing deep tensor neural networks
US11301546B2 (en) * 2018-11-19 2022-04-12 Groq, Inc. Spatial locality transform of matrices
US10878173B2 (en) * 2018-11-29 2020-12-29 Adobe Inc. Object recognition and tagging based on fusion deep learning models
US20230217028A1 (en) * 2020-06-16 2023-07-06 Nokia Technologies Oy Guided probability model for compressed representation of neural networks
US20230205489A1 (en) * 2021-12-24 2023-06-29 Intel Corporation Processing in floating point fused multiply-add operations
KR20230102461A (ko) * 2021-12-30 2023-07-07 리벨리온 주식회사 오더북 데이터를 기계학습 모델을 위한 2d 데이터로 변환하는 방법 및 시스템

Also Published As

Publication number Publication date
US11995890B2 (en) 2024-05-28
CN111291240B (zh) 2023-12-08
CN111291240A (zh) 2020-06-16
US20210294852A1 (en) 2021-09-23
WO2020114422A1 (zh) 2020-06-11

Similar Documents

Publication Publication Date Title
US9582726B2 (en) Systems and methods for image processing in a deep convolution network
US11995890B2 (en) Method and apparatus for tensor processing
EP3093757A2 (en) Multi-dimensional sliding window operation for a vector processor
CN105612535A (zh) 高效的基于内容的视频检索
EP3217289A2 (en) System and method for preventing cache contention
CN115424053B (zh) 小样本图像识别方法、装置、设备及存储介质
AU2013273768A1 (en) Parallel rendering of region-based graphics representations
CN108876701B (zh) 一种基于游程的单次扫描连通域标记方法及其硬件结构
CN114758145A (zh) 一种图像脱敏方法、装置、电子设备及存储介质
CN114170582A (zh) 路牌角点识别方法、装置、设备及存储介质
US20130343655A1 (en) Apparatus and method extracting feature information of a source image
AU2009347563A1 (en) Detection of objects represented in images
CN116977336A (zh) 摄像头缺陷检测方法、装置、计算机设备及存储介质
CN112102338A (zh) 基于深度学习的影像样本数据的获取方法及装置
CN116091297A (zh) 一种图像连通域标记硬件实现算法
CN110059563B (zh) 一种文本处理方法和装置
CN114565086A (zh) 一种模型训练方法、装置、设备及存储介质
CN111783876B (zh) 自适应智能检测电路及图像智能检测方法
CN115004245A (zh) 目标检测方法、装置、电子设备和计算机存储介质
CN114359048A (zh) 图像的数据增强方法、装置、终端设备及存储介质
CN107766863B (zh) 图像表征方法和服务器
CN115456858B (zh) 图像处理方法、装置、计算机设备及计算机可读存储介质
CN109948392B (zh) 二维码边界检测方法、分割方法、存储介质和电子设备
Davalle et al. Hardware accelerator for fast image/video thinning
WO2019203839A1 (en) Querying images for discrete patterns using regular expressions

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