CN110874206A - 基于光芯片的数据处理方法、装置、存储介质及电子设备 - Google Patents
基于光芯片的数据处理方法、装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN110874206A CN110874206A CN202010057542.8A CN202010057542A CN110874206A CN 110874206 A CN110874206 A CN 110874206A CN 202010057542 A CN202010057542 A CN 202010057542A CN 110874206 A CN110874206 A CN 110874206A
- Authority
- CN
- China
- Prior art keywords
- matrix
- sub
- target matrix
- negative number
- matrices
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/4824—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices using signed-digit representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/067—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using optical means
- G06N3/0675—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using optical means using electro-optical, acousto-optical or opto-electronic means
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Neurology (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Complex Calculations (AREA)
Abstract
本发明提供了一种基于光芯片的数据处理方法、装置、存储介质及电子设备,该数据处理方法用于计算输入光芯片的目标矩阵,首先判断目标矩阵中的各元素是否包含负数,如果是,获取目标矩阵中负数的属性信息,然后基于目标矩阵中负数的属性信息,将目标矩阵拆分成至少两个子矩阵,子矩阵中各元素均为非负数,且子矩阵的差值等于目标矩阵。之后将目标矩阵的权重参数以及子矩阵输入光子芯片进行矩阵计算,由光子芯片输出计算结果;如果否,将目标矩阵以及权重参数输入光子芯片,由光子芯片输出计算结果。可见在本方案中,首先将包括负数的目标矩阵拆分成至少两个非负数的矩阵,使得负数矩阵的计算转换成常规的非负数的矩阵计算,进而实现了负号运算。
Description
技术领域
本发明涉及数据计算技术领域,具体涉及一种基于光芯片的数据处理方法、装置、存储介质及电子设备。
背景技术
随着大数据的快速发展,电子芯片在性能提升和功耗降低等方面均遇到了瓶颈。例如,无论是传统的中央处理器CPU还是后续开发的图形处理器GPU,均将受到摩尔定律失效,使得电子芯片无法支持更大规模的大数据计算。
而光子芯片比电子芯片在深度学习具体应用算法处理上,具备更高的计算能力,能耗更低,但,随着深度学习的应用领域越来越广泛,其会涉及负号处理,而目前光子芯片不能直接进行负号运算。
因此,如何提供一种基于光芯片的数据处理方法,能够进行负号运算,是本领域技术人员亟待解决的一大技术难题。
发明内容
有鉴于此,本发明实施例提供了一种基于光芯片的数据处理方法,能够进行负号运算。
为实现上述目的,本发明实施例提供如下技术方案:
一种基于光芯片的数据处理方法,用于计算输入所述光芯片的目标矩阵,所述数据处理方法包括:
判断所述目标矩阵中的各元素是否包含负数;
如果是,获取所述目标矩阵中负数的属性信息;
基于所述目标矩阵中负数的属性信息,将所述目标矩阵拆分成至少两个子矩阵,所述子矩阵中各元素均为非负数,且所述子矩阵的差值等于所述目标矩阵;
将所述目标矩阵的所述权重参数以及所述子矩阵输入所述光子芯片进行矩阵计算,由所述光子芯片输出计算结果;;
如果否,将所述目标矩阵以及所述权重参数输入所述光子芯片,由所述光子芯片输出计算结果。
可选的,所述属性信息至少包括所述负数在所述目标矩阵中的位置信息以及所述负数的数值,相应的,所述基于所述目标矩阵中负数的属性信息,将所述目标矩阵拆分成至少两个子矩阵,包括:
基于所述负数在所述目标矩阵中的位置信息,将所述目标矩阵中的负数替换成第一预设非负值,所述目标矩阵中的其他元素不变,生成第一子矩阵;
将所述目标矩阵中的正数替换成所述第一预设非负值,所述目标矩阵中的其他元素取绝对值,生成第二子矩阵,其中,所述第一子矩阵与所述第二子矩阵的差值等于所述目标矩阵,所述第一预设非负值为零。
可选的,所述基于所述目标矩阵中负数的属性信息,将所述目标矩阵拆分成至少两个子矩阵,包括:
将所述第一子矩阵和/或所述第二子矩阵拆分成至少两个分矩阵,所述分矩阵中各元素均为非负数。
可选的,所述将所述目标矩阵的权重参数以及所述子矩阵输入所述光子芯片进行矩阵计算,由所述光子芯片输出计算结果,包括:
获取所述第一子矩阵与所述权重参数的乘积,确定为第一运算结果;
获取所述第二子矩阵与所述权重参数的乘积,确定为第二运算结果;
确定所述第一运算结果与所述第二运算结果的差值为所述光子芯片输出的计算结果。
可选的,所述将所述目标矩阵的权重参数以及所述子矩阵输入所述光子芯片进行矩阵计算,由所述光子芯片输出计算结果,包括:
确定所述第一子矩阵中各所述分矩阵与所述权重参数的乘积的分运算结果之和为第一分运算结果;
确定所述第二子矩阵中各所述分矩阵与所述权重参数的乘积的分运算结果之和为第二分运算结果;
确定所述第一分运算结果与所述第二分运算结果的差值为所述光子芯片输出的计算结果。
一种基于光芯片的数据处理装置,用于计算输入所述光芯片的目标矩阵,所述数据处理装置包括:
判断模块,用于判断所述目标矩阵中的各元素是否包含负数;
第一获取模块,用于当所述目标矩阵中的各元素包含负数时,获取所述目标矩阵中负数的属性信息,所述属性信息至少包括所述负数在所述目标矩阵中的位置信息以及所述负数的数值;
拆分模块,用于基于所述目标矩阵中负数的属性信息,将所述目标矩阵拆分成至少两个子矩阵,所述子矩阵中各元素均为非负数,且所述子矩阵的差值等于所述目标矩阵;
第一处理模块,用于将所述目标矩阵的权重参数以及所述子矩阵输入所述光子芯片进行矩阵计算,由所述光子芯片输出计算结果;;
第二处理模块,用于当所述目标矩阵中的各元素不包含负数时,将所述目标矩阵以及所述权重参数输入所述光子芯片,由所述光子芯片输出计算结果。
可选的,所述拆分模块包括:
第一生成单元,用于基于所述负数在所述目标矩阵中的位置信息,将所述目标矩阵中的负数替换成第一预设非负值,所述目标矩阵中的其他元素不变,生成第一子矩阵;
第二生成单元,用于将所述目标矩阵中的正数替换成所述第一预设非负值,所述目标矩阵中的其他元素取绝对值,生成第二子矩阵,其中,所述第一子矩阵与所述第二子矩阵的差值等于所述目标矩阵,所述第一预设非负值为零;
拆分单元,用于将所述第一子矩阵和/或所述第二子矩阵拆分成至少两个分矩阵,所述分矩阵中各元素均为非负数。
可选的,所述第一处理模块包括:
第一获取单元,用于获取所述第一子矩阵与所述权重参数的乘积,确定为第一运算结果;
第二获取单元,用于获取所述第二子矩阵与所述权重参数的乘积,确定为第二运算结果;
第一确定单元,用于确定所述第一运算结果与所述第二运算结果的差值为所述光子芯片输出的计算结果;
和/或,
第二确定单元,用于确定所述第一子矩阵中各所述分矩阵与所述权重参数的乘积的分运算结果之和为第一分运算结果;
第三确定单元,用于确定所述第二子矩阵中各所述分矩阵与所述权重参数的乘积的分运算结果之和为第二分运算结果;
第四确定单元,用于确定所述第一分运算结果与所述第二分运算结果的差值为所述光子芯片输出的计算结果。
一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行任意一项上述的基于光芯片的数据处理方法。
一种电子设备,设备包括至少一个处理器、以及与处理器连接的至少一个存储器、总线;其中,所述处理器、所述存储器通过所述总线完成相互间的通信;所述处理器用于调用所述存储器中的程序指令,以执行任意一项上述的基于光芯片的数据处理方法。
基于上述技术方案,本发明提供了一种基于光芯片的数据处理方法、装置、存储介质及电子设备,该数据处理方法用于计算输入所述光芯片的目标矩阵,首先判断所述目标矩阵中的各元素是否包含负数,如果是,获取所述目标矩阵中负数的属性信息,然后基于所述目标矩阵中负数的属性信息,将所述目标矩阵拆分成至少两个子矩阵,所述子矩阵中各元素均为非负数,且所述子矩阵的差值等于所述目标矩阵。之后将所述目标矩阵的权重参数以及所述子矩阵输入所述光子芯片进行矩阵计算,由所述光子芯片输出计算结果;如果否,将所述目标矩阵以及所述权重参数输入所述光子芯片,由所述光子芯片输出计算结果。可见在本方案中,首先将包括负数的目标矩阵拆分成至少两个非负数的矩阵,使得负数矩阵的计算转换成常规的非负数的矩阵计算,进而实现了负号运算。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种基于光芯片的数据处理方法的流程示意图;
图2为本发明实施例提供的一种基于光芯片的数据处理方法的又一流程示意图;
图3为本发明实施例提供的一种基于光芯片的数据处理方法的又一流程示意图;
图4为本发明实施例提供的一种基于光芯片的数据处理方法的又一流程示意图;
图5为本发明实施例提供的一种基于光芯片的数据处理方法的又一流程示意图;
图6为本发明实施例提供的一种基于光芯片的数据处理装置的结构示意图;
图7为本发明实施例提供的一种电子设备的硬件示意图。
具体实施方式
正如背景技术所述,在深度学习等技术领域上,光子人工智能芯片比电子人工智能芯片的计算能力更强,能耗更低。但发明人发现,目前的光子人工智能芯片不能直接进行负号运算,因为光芯片的本质是模拟计算,而光域的加法可以通过两个光波直接叠加得到,但光域的减法则无法直接通过两个光波的处理实现。
值得一提的是,模拟信号实现减法的原理是通过运算放大器,而光芯片的放大器结构复杂且成本较高。
基于此,请参阅图1,图1为本发明实施例提供的一种基于光芯片的数据处理方法的流程示意图,使得光子芯片能够处理包含负数的矩阵。具体的,该数据处理方法用于计算输入所述光芯片的目标矩阵,包括步骤:
S11、判断所述目标矩阵中的各元素是否包含负数;
S12、如果是,获取所述目标矩阵中负数的属性信息,基于所述目标矩阵中负数的属性信息,将所述目标矩阵拆分成至少两个子矩阵,所述子矩阵中各元素均为非负数,且所述子矩阵的差值等于所述目标矩阵;将所述目标矩阵的权重参数以及所述子矩阵输入所述光子芯片进行矩阵计算,由所述光子芯片输出计算结果。
具体的,在本实施例中,属性信息至少包括所述负数在所述目标矩阵中的位置信息以及所述负数的数值。结合上述矩阵X,可知,负数-2的属性信息为位置信息为第一行第一列以及数值为-2。同样,负数-4的属性信息为位置信息为第三行第三列以及数值为-4。
结合背景技术可知,光芯片在对包含有负数的矩阵进行计算时,不能直接通过两个光波的处理实现,而是需要通过成本较高、结构较复杂的运算放大器实现,因此,在本实施例中,发明人将包含有负数的目标矩阵拆分成至少两个非负数的子矩阵,使得拆分后的子矩阵的差值等于目标矩阵。
值得一提的是,在本实施例中,只需保证将矩阵X拆分成至少两个非负数的子矩阵即可,例如,-2可以拆分为0与2的差,还可以拆分为1与3的差,还可以拆分成4与6的差,等。
可见,本方案中,将目标矩阵拆分成多个非负数的子矩阵,由于子矩阵中的各元素不包含负数,那么子矩阵的计算则为常规的矩阵计算,无需使用运算放大器,进而降低了整体成本以及电路的复杂度。
发明人考虑到,假设k为列向量,X1、X2、Y1、Y2为N阶矩阵,若k*X1=Y1,k*X2=Y2,则有k*(X1-X2)=(Y1-Y2)。其中,将X1-X2看作具有负数的矩阵X,那么k*X=(Y1-Y2)=k*X1-k*X2。因此,即便k*X不能通过直接运算得到目标答案,但是,本发明实施例可以通过将X拆分成两个矩阵X1及X2,然后分别求解k*X1以及k*X2,之后再将Y1与Y2相减,进而得到目标数据。
基于此,首先获取目标矩阵X的权重参数k,然后将所述目标矩阵的权重参数以及所述子矩阵输入所述光子芯片进行矩阵计算,由所述光子芯片输出计算结果。即,基于权重参数k以及子矩阵X1、X2,计算出k*X1以及k*X2,之后再将k*X1与k*X2相减,进而得到目标数据,作为本方案提供的基于光芯片的数据处理方法的输出数据。
S13、如果否,将所述目标矩阵以及所述权重参数输入所述光子芯片,由所述光子芯片输出计算结果。
即,如果目标矩阵不包含负数,则直接输入光子芯片进行矩阵计算。
综上,本发明实施例将包含有负数的输入数据分解为两个或两个以上的非负的输入数据,将拆分后的输入数据分别与原权重参数进行运算,将运算后的结果进行融合,生成最终的输出数据,实现了负号运算。
在上述实施例的基础上,本发明实施例提供了几种基于所述目标矩阵中负数的属性信息,将所述目标矩阵拆分成至少两个子矩阵的具体实现方式,如下:
方式一
如图2所示,步骤S12可以通过如下步骤实现,包括:
S21、基于所述负数在所述目标矩阵中的位置信息,将所述目标矩阵中的负数替换成第一预设非负值,所述目标矩阵中的其他元素不变,生成第一子矩阵;
S22、将所述目标矩阵中的正数替换成所述第一预设非负值,所述目标矩阵中的其他元素取绝对值,生成第二子矩阵。
需要说明的是,在本实施例中,所述第一子矩阵与所述第二子矩阵的差值等于所述目标矩阵且所述第一预设非负值为零。
示意性的,
则有X1-X2=X。
方式二
当将目标矩阵拆分成两个子矩阵时,除上述方式一外,还可以将目标矩阵X拆分成任意两个不包含负数的子矩阵,只需满足X1-X2=X即可。
方式三
如图3所示,步骤S12可以通过如下步骤实现,包括:
S31、将所述第一子矩阵和/或所述第二子矩阵拆分成至少两个分矩阵,所述分矩阵中各元素均为非负数。
具体的,本实施例中,在上述将矩阵X拆分成第一子矩阵X1以及第二子矩阵X2之后,还可以进一步将第一子矩阵X1以及第二子矩阵X2拆分成多个分矩阵,例如,将第一子矩阵X1拆分成分矩阵D、分矩阵E以及分矩阵F,即,X1=D+E+F。
同样,将第二子矩阵X2拆分成分矩阵G、分矩阵H、分矩阵I以及分矩阵J,即,X2=G+H+I+J。
其中,分矩阵D、分矩阵E、分矩阵F、分矩阵G、分矩阵H、分矩阵I以及分矩阵J中的各元素均为非负数。
在上述实施例的基础上,本发明实施例还提供了几种将所述目标矩阵的权重参数以及所述子矩阵输入所述光子芯片进行矩阵计算,由所述光子芯片输出计算结果的具体实现方式,如下:
当将目标矩阵拆分成至少两个子矩阵时,如图4所示,包括步骤:
S41、获取所述第一子矩阵与所述权重参数的乘积,确定为第一运算结果;
S42、获取所述第二子矩阵与所述权重参数的乘积,确定为第二运算结果;
S43、确定所述第一运算结果与所述第二运算结果的差值为所述输出数据。
例如,原有输入数据A=B-C,那么A、B、C分别计算后,按照A*k=B*k-C*k方式融合。
除此,当将子矩阵拆分成多个分矩阵时,如图5所示,包括步骤:
S51、确定所述第一子矩阵中各所述分矩阵与所述权重参数的乘积的分运算结果之和为第一分运算结果;
S52、确定所述第二子矩阵中各所述分矩阵与所述权重参数的乘积的分运算结果之和为第二分运算结果;
S53、确定所述第一分运算结果与所述第二分运算结果的差值为所述输出数据。
例如,原有输入数据A=(D+E+F)-(G+H+I+J),那么分别计算后,按照A*k=(D*k+E*k+F*k)- (G*k+H*k+I*k+J*k)方式融合。
在上述实施例的基础上,如图6所示,本发明实施例还提供了一种基于光芯片的数据处理装置,用于计算目标矩阵,所述目标矩阵至少包括一个负数,该数据处理装置包括:
第一获取模块61,用于获取所述目标矩阵中负数的属性信息,所述属性信息至少包括所述负数在所述目标矩阵中的位置信息以及所述负数的数值;
拆分模块62,用于基于所述目标矩阵中负数的属性信息,将所述目标矩阵拆分成至少两个子矩阵,所述子矩阵中各元素均为非负数,且所述子矩阵的差值等于所述目标矩阵;
第二获取模块63,用于获取所述目标矩阵的权重参数;
确定模块64,用于基于所述权重参数以及所述子矩阵,确定出输出数据。
其中,所述拆分模块可以包括:
第一生成单元,用于将所述目标矩阵中的负数替换成第一预设非负值,所述目标矩阵中的其他元素不变,生成第一子矩阵;
第二生成单元,用于将所述目标矩阵中的正数替换成所述第一预设非负值,所述目标矩阵中的其他元素取绝对值,生成第二子矩阵,其中,所述第一子矩阵与所述第二子矩阵的差值等于所述目标矩阵,所述第一预设非负值为零;
拆分单元,用于将所述第一子矩阵和/或所述第二子矩阵拆分成至少两个分矩阵,所述分矩阵中各元素均为非负数。
除此,本实施例提供的数据处理装置中,所述确定模块可以包括:
第一获取单元,用于获取所述第一子矩阵与所述权重参数的乘积,确定为第一运算结果;
第二获取单元,用于获取所述第二子矩阵与所述权重参数的乘积,确定为第二运算结果;
第一确定单元,用于确定所述第一运算结果与所述第二运算结果的差值为所述输出数据;
和/或,
第二确定单元,用于确定所述第一子矩阵中各所述分矩阵与所述权重参数的乘积的分运算结果之和为第一分运算结果;
第三确定单元,用于确定所述第二子矩阵中各所述分矩阵与所述权重参数的乘积的分运算结果之和为第二分运算结果;
第四确定单元,用于确定所述第一分运算结果与所述第二分运算结果的差值为所述输出数据。
该装置的工作原理请参见上述方法实施例,在此不重复叙述。
基于光芯片的数据处理装置包括处理器和存储器,上述第一获取模块、拆分模块、第二获取模块以及确定模块等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来实现负号运算。
本发明实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现所述基于光芯片的数据处理的方法。
本发明实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行所述基于光芯片的数据处理的方法。
本发明实施例提供了一种设备,如图7所示,设备包括至少一个处理器71、以及与处理器连接的至少一个存储器72、总线73;其中,处理器、存储器通过总线完成相互间的通信;处理器用于调用存储器中的程序指令,以执行上述的基于光芯片的数据处理的方法。本文中的设备可以是服务器、PC、PAD、手机等。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:
一种基于光芯片的数据处理方法,用于计算目标矩阵,所述目标矩阵至少包括一个负数,所述数据处理方法包括:
获取所述目标矩阵中负数的属性信息,所述属性信息至少包括所述负数在所述目标矩阵中的位置信息以及所述负数的数值;
基于所述目标矩阵中负数的属性信息,将所述目标矩阵拆分成至少两个子矩阵,所述子矩阵中各元素均为非负数,且所述子矩阵的差值等于所述目标矩阵;
获取所述目标矩阵的权重参数;
基于所述权重参数以及所述子矩阵,确定出输出数据。
可选的,所述基于所述目标矩阵中负数的属性信息,将所述目标矩阵拆分成至少两个子矩阵,包括:
将所述目标矩阵中的负数替换成第一预设非负值,所述目标矩阵中的其他元素不变,生成第一子矩阵;
将所述目标矩阵中的正数替换成所述第一预设非负值,所述目标矩阵中的其他元素取绝对值,生成第二子矩阵,其中,所述第一子矩阵与所述第二子矩阵的差值等于所述目标矩阵,所述第一预设非负值为零。
可选的,所述基于所述目标矩阵中负数的属性信息,将所述目标矩阵拆分成至少两个子矩阵,包括:
将所述第一子矩阵和/或所述第二子矩阵拆分成至少两个分矩阵,所述分矩阵中各元素均为非负数。
可选的,所述基于所述权重参数以及所述子矩阵,确定出输出数据,包括:
获取所述第一子矩阵与所述权重参数的乘积,确定为第一运算结果;
获取所述第二子矩阵与所述权重参数的乘积,确定为第二运算结果;
确定所述第一运算结果与所述第二运算结果的差值为所述输出数据。
可选的,所述基于所述权重参数以及所述子矩阵,确定出输出数据,包括:
确定所述第一子矩阵中各所述分矩阵与所述权重参数的乘积的分运算结果之和为第一分运算结果;
确定所述第二子矩阵中各所述分矩阵与所述权重参数的乘积的分运算结果之和为第二分运算结果;
确定所述第一分运算结果与所述第二分运算结果的差值为所述输出数据。
综上,本发明提供了一种基于光芯片的数据处理方法、装置、存储介质及电子设备,该数据处理方法用于计算目标矩阵,其中,目标矩阵至少包括一个负数,该数据处理方法首先获取目标矩阵中负数的属性信息,其中,属性信息至少包括负数在目标矩阵中的位置信息以及负数的数值,然后基于目标矩阵中负数的属性信息,将目标矩阵拆分成至少两个子矩阵,子矩阵中各元素均为非负数,且子矩阵的差值等于目标矩阵。之后获取目标矩阵的权重参数,基于权重参数以及子矩阵,确定出输出数据。可见在本方案中,首先将包括负数的目标矩阵拆分成至少两个非负数的矩阵,使得负数矩阵的计算转换成常规的非负数的矩阵计算,进而实现了负号运算。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种基于光芯片的数据处理方法,其特征在于,用于计算输入所述光芯片的目标矩阵,所述数据处理方法包括:
判断所述目标矩阵中的各元素是否包含负数;
如果是,获取所述目标矩阵中负数的属性信息;基于所述目标矩阵中负数的属性信息,将所述目标矩阵拆分成至少两个子矩阵,所述子矩阵中各元素均为非负数,且所述子矩阵的差值等于所述目标矩阵;将所述目标矩阵的权重参数以及所述子矩阵输入所述光子芯片进行矩阵计算,由所述光子芯片输出计算结果;
如果否,将所述目标矩阵以及所述权重参数输入所述光子芯片,由所述光子芯片输出计算结果。
2.根据权利要求1所述的基于光芯片的数据处理方法,其特征在于,所述属性信息至少包括所述负数在所述目标矩阵中的位置信息以及所述负数的数值,相应的,所述基于所述目标矩阵中负数的属性信息,将所述目标矩阵拆分成至少两个子矩阵,包括:
基于所述负数在所述目标矩阵中的位置信息,将所述目标矩阵中的负数替换成第一预设非负值,所述目标矩阵中的其他元素不变,生成第一子矩阵;
将所述目标矩阵中的正数替换成所述第一预设非负值,所述目标矩阵中的其他元素取绝对值,生成第二子矩阵,其中,所述第一子矩阵与所述第二子矩阵的差值等于所述目标矩阵,所述第一预设非负值为零。
3.根据权利要求2所述的基于光芯片的数据处理方法,其特征在于,所述基于所述目标矩阵中负数的属性信息,将所述目标矩阵拆分成至少两个子矩阵,包括:
将所述第一子矩阵和/或所述第二子矩阵拆分成至少两个分矩阵,所述分矩阵中各元素均为非负数。
4.根据权利要求2所述的基于光芯片的数据处理方法,其特征在于,所述将所述目标矩阵的权重参数以及所述子矩阵输入所述光子芯片进行矩阵计算,由所述光子芯片输出计算结果,包括:
获取所述第一子矩阵与所述权重参数的乘积,确定为第一运算结果;
获取所述第二子矩阵与所述权重参数的乘积,确定为第二运算结果;
确定所述第一运算结果与所述第二运算结果的差值为所述光子芯片输出的计算结果。
5.根据权利要求3所述的基于光芯片的数据处理方法,其特征在于,所述将所述目标矩阵的权重参数以及所述子矩阵输入所述光子芯片进行矩阵计算,由所述光子芯片输出计算结果,包括:
确定所述第一子矩阵中各所述分矩阵与所述权重参数的乘积的分运算结果之和为第一分运算结果;
确定所述第二子矩阵中各所述分矩阵与所述权重参数的乘积的分运算结果之和为第二分运算结果;
确定所述第一分运算结果与所述第二分运算结果的差值为所述光子芯片输出的计算结果。
6.一种基于光芯片的数据处理装置,其特征在于,用于计算输入所述光芯片的目标矩阵,所述数据处理装置包括:
判断模块,用于判断所述目标矩阵中的各元素是否包含负数;
第一获取模块,用于当所述目标矩阵中的各元素包含负数时,获取所述目标矩阵中负数的属性信息,所述属性信息至少包括所述负数在所述目标矩阵中的位置信息以及所述负数的数值;
拆分模块,用于基于所述目标矩阵中负数的属性信息,将所述目标矩阵拆分成至少两个子矩阵,所述子矩阵中各元素均为非负数,且所述子矩阵的差值等于所述目标矩阵;
第一处理模块,用于将所述目标矩阵的权重参数以及所述子矩阵输入所述光子芯片进行矩阵计算,由所述光子芯片输出计算结果;
第二处理模块,用于当所述目标矩阵中的各元素不包含负数时,将所述目标矩阵以及所述权重参数输入所述光子芯片,由所述光子芯片输出计算结果。
7.根据权利要求6所述的基于光芯片的数据处理装置,其特征在于,所述拆分模块包括:
第一生成单元,用于基于所述负数在所述目标矩阵中的位置信息,将所述目标矩阵中的负数替换成第一预设非负值,所述目标矩阵中的其他元素不变,生成第一子矩阵;
第二生成单元,用于将所述目标矩阵中的正数替换成所述第一预设非负值,所述目标矩阵中的其他元素取绝对值,生成第二子矩阵,其中,所述第一子矩阵与所述第二子矩阵的差值等于所述目标矩阵,所述第一预设非负值为零;
拆分单元,用于将所述第一子矩阵和/或所述第二子矩阵拆分成至少两个分矩阵,所述分矩阵中各元素均为非负数。
8.根据权利要求7所述的基于光芯片的数据处理装置,其特征在于,所述第一处理模块包括:
第一获取单元,用于获取所述第一子矩阵与所述权重参数的乘积,确定为第一运算结果;
第二获取单元,用于获取所述第二子矩阵与所述权重参数的乘积,确定为第二运算结果;
第一确定单元,用于确定所述第一运算结果与所述第二运算结果的差值为所述光子芯片输出的计算结果;
和/或,
第二确定单元,用于确定所述第一子矩阵中各所述分矩阵与所述权重参数的乘积的分运算结果之和为第一分运算结果;
第三确定单元,用于确定所述第二子矩阵中各所述分矩阵与所述权重参数的乘积的分运算结果之和为第二分运算结果;
第四确定单元,用于确定所述第一分运算结果与所述第二分运算结果的差值为所述光子芯片输出的计算结果。
9.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至5中任意一项所述的基于光芯片的数据处理方法。
10.一种电子设备,设备包括至少一个处理器、以及与处理器连接的至少一个存储器、总线;其中,所述处理器、所述存储器通过所述总线完成相互间的通信;所述处理器用于调用所述存储器中的程序指令,以执行如权利要求1至5中任意一项所述的基于光芯片的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010057542.8A CN110874206A (zh) | 2020-01-19 | 2020-01-19 | 基于光芯片的数据处理方法、装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010057542.8A CN110874206A (zh) | 2020-01-19 | 2020-01-19 | 基于光芯片的数据处理方法、装置、存储介质及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110874206A true CN110874206A (zh) | 2020-03-10 |
Family
ID=69717671
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010057542.8A Pending CN110874206A (zh) | 2020-01-19 | 2020-01-19 | 基于光芯片的数据处理方法、装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110874206A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112379725A (zh) * | 2020-11-24 | 2021-02-19 | 浏阳市仁杰电子科技有限公司 | 一种光芯片的输入输出设备 |
WO2022115935A1 (en) * | 2020-12-02 | 2022-06-09 | Huawei Technologies Canada Co., Ltd. | Photonic computing system and method for wireless communication signal processing |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103679715A (zh) * | 2013-12-05 | 2014-03-26 | 宁波大学 | 一种基于非负矩阵分解的手机图像特征提取方法 |
CN108599865A (zh) * | 2018-04-13 | 2018-09-28 | 北京邮电大学 | 基于光子神经网络的信号调制格式识别方法、装置 |
US20180307901A1 (en) * | 2016-03-30 | 2018-10-25 | Shenzhen University | Non-negative matrix factorization face recognition method and system based on kernel machine learning |
-
2020
- 2020-01-19 CN CN202010057542.8A patent/CN110874206A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103679715A (zh) * | 2013-12-05 | 2014-03-26 | 宁波大学 | 一种基于非负矩阵分解的手机图像特征提取方法 |
US20180307901A1 (en) * | 2016-03-30 | 2018-10-25 | Shenzhen University | Non-negative matrix factorization face recognition method and system based on kernel machine learning |
CN108599865A (zh) * | 2018-04-13 | 2018-09-28 | 北京邮电大学 | 基于光子神经网络的信号调制格式识别方法、装置 |
Non-Patent Citations (2)
Title |
---|
侯杰: "硅基可重构全光运算芯片研究", 《万方数据库》 * |
杨永超: "基于集成光子芯片的可见光三维通信研究", 《万方数据库》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112379725A (zh) * | 2020-11-24 | 2021-02-19 | 浏阳市仁杰电子科技有限公司 | 一种光芯片的输入输出设备 |
WO2022115935A1 (en) * | 2020-12-02 | 2022-06-09 | Huawei Technologies Canada Co., Ltd. | Photonic computing system and method for wireless communication signal processing |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112074806B (zh) | 用于块浮点计算的系统、方法和计算机存储介质 | |
US11741362B2 (en) | Training neural networks using mixed precision computations | |
CN107944545B (zh) | 应用于神经网络的计算方法及计算装置 | |
US11651198B2 (en) | Data processing method and apparatus for neural network | |
CN110874206A (zh) | 基于光芯片的数据处理方法、装置、存储介质及电子设备 | |
CN113222813B (zh) | 图像超分辨率重建方法、装置、电子设备及存储介质 | |
CN113222132A (zh) | 乘法器、数据处理方法、芯片、计算机设备及存储介质 | |
CN109697083B (zh) | 数据的定点化加速方法、装置、电子设备及存储介质 | |
US11989956B2 (en) | Dynamic head for object detection | |
JP2006154992A (ja) | ニューロプロセッサ | |
JP2022092827A (ja) | 計算機システム及びデータ処理方法 | |
CN112307477A (zh) | 代码检测方法、装置、存储介质以及终端 | |
CN110874207A (zh) | 基于光芯片的数据处理方法、装置、存储介质及电子设备 | |
CN111667046A (zh) | 深度学习加速方法及用户终端 | |
JP2020067897A (ja) | 演算処理装置、学習プログラム及び学習方法 | |
CN111930670B (zh) | 异构智能处理量化装置、量化方法、电子设备及存储介质 | |
CN114329330A (zh) | 数据处理装置、方法、芯片、计算机设备及存储介质 | |
CN114548407A (zh) | 层级目标定向因果发现方法、装置及电子设备 | |
CN108229668B (zh) | 基于深度学习的运算实现方法、装置和电子设备 | |
CN113313253A (zh) | 神经网络压缩方法、数据处理方法、装置及计算机设备 | |
CN114021729B (zh) | 量子电路操作方法及系统、电子设备和介质 | |
CN117521737B (zh) | 网络模型的转换方法、装置、终端及计算机可读存储介质 | |
US20240013065A1 (en) | Information processing device, method, and program | |
CN114912544B (zh) | 自动化特征工程模型的训练方法及自动化特征工程方法 | |
CN114997388B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200310 |