CN112231134A - 神经网络处理器的故障处理方法及装置、设备、存储介质 - Google Patents

神经网络处理器的故障处理方法及装置、设备、存储介质 Download PDF

Info

Publication number
CN112231134A
CN112231134A CN202011171665.0A CN202011171665A CN112231134A CN 112231134 A CN112231134 A CN 112231134A CN 202011171665 A CN202011171665 A CN 202011171665A CN 112231134 A CN112231134 A CN 112231134A
Authority
CN
China
Prior art keywords
neural network
fault
network processor
processor
accuracy
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
CN202011171665.0A
Other languages
English (en)
Other versions
CN112231134B (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.)
Horizon Shanghai Artificial Intelligence Technology Co Ltd
Original Assignee
Horizon Shanghai Artificial Intelligence 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 Horizon Shanghai Artificial Intelligence Technology Co Ltd filed Critical Horizon Shanghai Artificial Intelligence Technology Co Ltd
Priority to CN202011171665.0A priority Critical patent/CN112231134B/zh
Publication of CN112231134A publication Critical patent/CN112231134A/zh
Application granted granted Critical
Publication of CN112231134B publication Critical patent/CN112231134B/zh
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/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0721Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Retry When Errors Occur (AREA)

Abstract

公开了一种神经网络处理器的故障处理方法及装置。该方法包括:检测神经网络处理器的工作状态;若所述工作状态表示所述神经网络处理器发生故障,确定所述神经网络处理器执行神经网络运算所得结果的精度;以及根据所述精度,确定所述神经网络处理器响应所述故障的方式。当发生的故障引起的精度影响在可接受范围内时,可以依旧使用神经网络处理器的计算结果而不需要丢弃该计算结果或重启处理器,从而可以提高处理器的处理效率。

Description

神经网络处理器的故障处理方法及装置、设备、存储介质
技术领域
本公开涉及人工智能技术领域,尤其涉及一种神经网络处理器的故障处理方法及装置、设备、存储介质。
背景技术
基于卷积神经网络的深度学习技术能够以较高的准确率进行图像识别和检测、语音识别等任务,因此被广泛地应用于安全监控、辅助驾驶、智能机器人、智能医疗等领域。例如,在自动驾驶系统里,需要使用神经网络处理器或加速器来完成目标识别、图像分类等任务。对安全性能有要求的系统中,都会存在故障检测机制,以检测到神经网络处理器的故障,然后进行相应处理。
发明内容
现有技术中,在检测到神经网络处理器故障或者收到关于神经网络处理器的故障信号指示时,可能会重启神经网络处理器,这就会导致神经网络处理器上的系统任务频繁被中断,影响了神经网络处理的效率。为解决这些技术问题,本公开实施例期望提供一种新的神经网络处理器的故障处理方法及装置、电子设备、存储介质。
根据本公开的一个方面,提供了一种神经网络处理器的故障处理方法,包括:
检测神经网络处理器的工作状态;
若所述工作状态表示所述神经网络处理器发生故障,确定所述神经网络处理器执行神经网络运算所得结果的精度;以及
根据所述精度,确定所述神经网络处理器响应所述故障的方式。
根据本公开的另一方面,提供了一种神经网络处理器的故障处理装置,包括:
检测模块,配置为检测神经网络处理器的工作状态;
分析模块,配置为若所述工作状态表示所述神经网络处理器发生故障,确定所述神经网络处理器执行神经网络运算所得结果的精度;以及
控制模块,配置为根据所述精度,确定所述神经网络处理器响应所述故障的方式。
根据本公开的另一方面,提供了一种电子设备,包括:一个或多个处理器;以及存储器,其存储有计算机程序,所述计算机程序在被所述处理器运行时使所述处理器执行上述故障处理方法。
另外,本公开还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序在被处理器运行时使得所述处理器执行上述故障处理方法。
通过根据本公开的示例的方法和装置,在神经网络处理器发生故障时,先评估故障对神经网络运算结果造成的精度影响,并根据该精度来确定响应故障的方式。当精度影响在可接受范围内时,可以依旧使用神经网络处理器的计算结果而不需要丢弃该计算结果或重启处理器,从而可以提高处理器的处理效率。
附图说明
通过结合附图对本公开实施例进行更详细的描述,本公开的上述以及其他目的、特征和优势将变得更加明显。附图用来提供对本公开实施例的进一步理解,并且构成说明书的一部分,与本公开实施例一起用于解释本公开,并不构成对本公开的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
图1是本公开一示例性实施例的应用神经网络处理器的示意框图。
图2是本公开一示例性实施例的神经网络处理器的故障处理法方法的流程图。
图3是本公开一示例性实施例提供的确定神经网络处理器执行神经网络运算所得结果的精度的流程图。
图4是本公开一示例性实施例提供的确定故障对神经网络处理器运算精度的精度偏差数值的流程图。
图5是本公开一示例性实施例提供的确定神经网络处理器响应发生故障的处理方式的示意图。
图6是本公开一示例性实施例提供的神经网络处理器的故障处理方法的示意流程图。
图7是本公开一示例性实施例提供的故障处理装置的结构示意图。
图8是本公开一示例性实施例提供的故障检测模块的结构示意图。
图9是本公开一示例性实施例提供的电子设备的结构图。
具体实施方式
下面,将参考附图详细地描述根据本公开的示例实施例。显然,所描述的实施例仅仅是本公开的一部分实施例,而不是本公开的全部实施例,应理解,本公开不受这里描述的示例实施例的限制。
申请概述
神经网络已成功地应用于图像处理、语音分析等领域。例如,卷积神经网络(CNN)已被广泛地应用于辅助驾驶、安全监控、机器翻译、疾病诊断等领域。
在训练得到神经网络模型之后,可借助于神经网络处理器或加速器来完成目标识别、图像分类等具体任务。例如,卷积神经网络处理器或加速器可通过处理元件(PE)来配置,处理元件(PE)主要执行用于执行卷积运算的乘法和累积(MAC)功能,并且包括用于在相邻PE的数据传输期间数据的临时存储和累加的中间值的存储的内部缓冲器。
图1是本公开一示例性实施例的应用神经网络处理器的示意框图,以自动驾驶系统为例,车载传感器(摄像机、红外传感器、麦克风阵列、LIDAR等)获取声音、图像等传感器数据作为输入数据,神经网络处理器100运行编译后的神经网络模型对这些传感器数据进行处理,执行各种任务(例如,目标检测、目标分类、目标识别、图像分割等),并获得输出数据。例如在目标检测任务中,神经网络的输出数据可以为一些坐标框,标识出可能有目标对象的位置;在目标分类任务中,神经网络的输出数据可以为一个检测到的对象在某个分类或某些分类上的打分值,标识该对象属于某个分类的可能性。
如果神经网络处理器或者加速器在计算过程中发生故障(例如,神经网络处理器中PE所涉及到的乘法器出现故障,或者内置缓冲存储器的地址存储出现故障),有可能导致运算结果与预期结果的不一致。例如,在目标分类任务中,计算故障的发生可能会导致打分结果与预期结果存在偏差。再例如,在目标识别任务中,运算结果与预期结果之间的不一致可体现在神经网络输出的坐标框的数值与预期结果有偏差。在神经网络处理器发生故障时,现有方案一般是放弃当前计算结果而重启神经网络处理器,这会导致神经网络处理器上的系统任务被中断,影响了神经网络处理器的执行效率。
针对上述技术问题,本公开的基本构思是提出一种故障处理方法、装置、电子设备及计算机可读存储介质,在神经网络处理器执行运算时,检测神经网络处理器的工作状态;若所述工作状态表示所述神经网络处理器发生故障,确定所述神经网络处理器执行神经网络运算所得结果的精度;以及根据所述精度,确定所述神经网络处理器响应所述故障的方式。本公开的实施例通过对神经网络处理器配置故障检测机制,并在神经网络处理器发生故障时确定神经网络处理器执行神经网络运算所得结果的精度,并决定对故障的响应方式,而非直接中断神经网络运算,从而能够提高神经网络处理器的处理效率。
需要说明的是,尽管上文以特定的神经网络以及应用场景为例进行说明,但本公开实施例的适用范围不限于此。本公开的神经网络处理器可以是用于执行卷积神经网络(CNN)、循环神经网络(RNN)、人工神经网络(ANN)等各种神经网络运算的处理器,并可应用于自动驾驶、安全监控、自动化工厂等各种场景。
示例性方法
图2是本公开一示例性实施例提供的神经网络处理器的故障处理方法200,其可以开始于步骤S210,检测神经网络处理器的工作状态。
本文中的神经网络处理器指的是具有数据处理能力和/或指令执行能力的任何形式的处理单元,例如通用处理器CPU、图形处理器GPU、专用集成电路ASIC、现场可编程门阵列FPGA等,也可以是专用的神经网络处理器或加速器等。神经网络处理器可以被配置为在启动(例如,通电)后其工作状态便受到检测和监控。
参见图1,神经网络处理器100可以通过外部接口(例如,AXI接口)接收输入数据和/或指令,并生成特征数据以及对特征数据执行卷积、池化、激活等运算,并将获得的结果进行存储和输出。相应地,检测神经网络处理器的工作状态可以包括对外部接口、神经网络计算逻辑、内部缓冲存储器等各部分的工作状态进行检测,例如,可在神经网络处理器中设置与外部接口、计算逻辑、内部缓冲存储器等相关联的多个检测单元或集成的单个检测单元以确定处理器各模块的工作状态处于正常状态或发生故障。神经网络处理器的工作状态既可以包括神经网络处理器内的硬件工作状态,也可以包括神经网络运算相关的逻辑状态。
在一实施例中,可检测神经网络处理器是否发生了指令故障。例如,可以检测神经网络处理器是否通过外部接口接收到正确的指令(例如,是否接收到不完整指令或指令集之外的未知指令),所接收的指令是否可执行(例如,指令是否因与其他指令或规则例如时序规则相矛盾而不可执行)等等。当接收到不完整指令、未知指令或者不可执行的指令时,可以指示出现了指令故障。
在一实施例中,可检测神经网络处理器在执行运算时是否出现无响应或响应时间过长的情形。例如,可通过定时器以监测神经网络处理器执行卷积操作、数据搬移操作等各种指令操作的执行情况,并在出现挂起或响应超时的情况下生成信号以指示出现超时故障。
在一实施例中,可检测神经网络处理器的外部接口是否发生通信协议相关的故障。例如,在检测到不符合AXI协议的读/写数据通道信号时,可生成信号以指示出现接口协议故障。
在一实施例中,可检测神经网络处理器的内部计算电路是否发生神经网络运算相关的故障。例如,在检测到卷积引擎的处理单元PE阵列(例如,乘加器阵列)中的某个单元发生故障,或者用于平均池化操作的一个或多个平均池化计算单元发生故障时,可生成信号以指示出现计算逻辑故障。
在一实施例中,可检测数据在神经网络处理器的内部传输过程中是否发生故障。例如,在输入/输出特征图、权重等数据在向存储缓冲器传输的通道上发生寄存器故障时,可生成信号以指示出现数据传输故障。
在一实施例中,可检测数据在神经网络处理器的内部存储过程中是否发生故障。例如,在将卷积运算的中间结果存储在内部SRAM存储器时同时增加ECC编码以对数据进行纠错操作,在检测到ECC校验错误时,可生成信号以指示出现数据存储故障。
以上示例性地例举了神经网络处理器在操作过程中发生的故障类型以及具体的故障信息,可以理解的是,神经网络处理器还可包括其它的故障类型检测单元或故障检测方式,本发明并不做具体限制。
然后,示例方法200可以继续到步骤S220,响应于所述工作状态表示所述神经网络处理器发生故障,确定所述神经网络处理器执行神经网络运算所得结果的精度。
在没有检测到故障时,神经网络处理器将对输入数据进行神经网络运算并输出运算结果,例如识别或分类等结果,而当神经网络处理器检测到异常故障时,可能导致神经网络处理器不能工作或者输出结果偏离预期值,即神经网络运算的精度发生改变。
精度是评价神经网络处理器所执行的神经网络模型的一个指标,例如,其可为神经网络处理器执行任务(分类任务、识别任务等)的准确率,影响神经网络模型精度的因素主要有模型结构以及权重、激活函数等参数选择。不同的神经网络模型,在处理相同任务的时候,精度可能会有所不同。例如,神经网络模型A在分类任务上的训练精度可能为85%,神经网络模型B在分类任务上的训练精度可能为90%。
当运行神经网络模型的神经网络处理器出现故障时,可能会导致神经网络处理器运行神经网络模型以执行任务时获得的实际运行精度偏离神经网络模型的训练精度。一般而言,神经网络处理器故障将导致神经网络模型的实际运行精度相对于训练精度下降,但也存在可能性,一些故障对神经网络模型的精度不产生实质性负面影响,或者甚至能在一定程度上提高神经网络模型的精度。
在本公开的一些实施例中,可以根据所检测到的神经网络处理器的故障,来确定该神经网络处理器在执行神经网络模型时能获得的精度。例如,在车辆类型检测等对实时性要求不高的应用场合下,可通过对预设的数据集进行检测以获得发生故障的神经网络处理器执行神经网络模型时能获得的实际运行精度,举例而言,神经网络处理器执行神经网络模型用于通过图像识别自动驾驶车辆前方车辆的类型,用于检测实际运行精度的预设数据集包括1000张标注为各种类型的车辆图片,假设发生故障的神经网络处理器对上述1000张图片的识别结果为其中800张图片识别为正确结果,则可计算出实际运行精度为800/1000=80%;而对于交通信号灯等对实时性要求较高的场合,可通过对故障信号和/或所收集的故障的相关信息等进行分析来定性或者定量地确定故障神经网络处理器执行神经网络模型时能获得的实际运行精度,这将在后面进行具体描述。
例如,在神经网络处理器中的卷积层、池化层或全连接层的计算电路出现故障时,可能导致神经网络模型A在分类任务上的实际运行精度变为75%,低于其训练精度80%,导致神经网络模型B在分类任务上的实际运行精度变为85%,低于其训练精度90%。虽然神经网络处理器的故障导致其运行神经网络模型时能实现的精度降低,但是应注意,出现故障的神经网络处理器运行模型B的精度依然比没有出现故障的神经网络处理器运行模型A的精度高。就是说,虽然神经网络处理器故障导致神经网络模型的实际运行精度低于训练精度,但是有可能并不会导致神经网络模型变得不可在该处理器上执行。例如,如果执行一任务的可接受的最低精度为80%,那么神经网络处理器故障导致上述模型A变得不可使用,但是模型B仍可以在该发生故障的神经网络处理器上运行以执行相关任务,其执行精度是可接受的。
之后,在示例方法200的步骤S230中,根据所述精度,确定所述神经网络处理器响应所述故障的方式。
在一实施例中,可根据确定的精度的等级来确定相应的响应故障的方式。例如,在神经网络处理器发生一种故障时,如果在例如通过预设数据集而检测神经网络模型A在分类任务上的精度变为80%,这表明神经网络处理器的运算结果尚在允许的范围内,此时可不终止神经网络运算或重启神经网络处理器,而如果在神经网络处理器发生另一种故障时,如果神经网络模型A在分类任务上的精度下降为70%,这表明神经网络处理器的运算结果不能被认定为有效数据,此时可终止当前运算并重启神经网络处理器。在该实施例中,当故障对神经网络处理器的精度影响在可接受范围内时,可以依旧使用神经网络处理器的计算结果而不需要丢弃该计算结果或重启处理器,从而可以提高处理器的处理效率。
在本公开的一实施例中,可根据检测获得的故障信息来确定其对神经网络处理器执行运算操作的影响,根据该影响来确定发生故障的神经网络处理器执行运算所得结果的精度,而不需要在线通过数据集的方式来确定精度,从而提高神经网络处理器响应故障的执行效率。图3示出了根据本公开一实施例提供的确定神经网络处理器执行神经网络运算所得结果的精度的流程图。
如图3所示,确定执行神经网络运算所得结果的精度的步骤S220可以包括:
在步骤S221中,若所述工作状态表示所述神经网络处理器发生故障,收集并记录所述故障的相关信息。
例如,可对检测到的故障相关信息进行收集并记录,故障的相关信息可包括故障的类型信息、故障相关的硬件信息、以及故障相关的神经网络运算信息等各种信息。
如前所述,故障的类型信息可包括指令故障、接口协议故障、超时故障、数据传输/存储故障等故障类型。在此基础上,还可将故障分为与神经网络精度无关的故障和影响神经网络精度的故障。例如,与神经网络精度无关的故障类型可包括指令故障、接口协议故障、超时故障等,而影响神经网络精度的故障可包括神经网络处理器计算电路等硬件故障、神经网络模型执行过程中发生的运算故障。
故障相关的硬件信息可包括故障器件的类型信息(例如,乘法器、加法器、插值器、比较器等)及其位置信息。例如,在神经网络处理器的计算单元发生故障时,位置信息可包括发生故障的该计算单元(例如,乘法器)在整个计算阵列中的位置,其可通过该计算单元的编号来进行标识。在将神经网络运算结果存储过程中发生故障时,位置信息可包括相应数据在例如SRAM存储器中的存储地址。
故障相关的神经网络运算信息可包括发生故障时神经网络处理器所执行的操作的类型及其位置信息。例如,对于卷积神经网络,操作的类型可包括卷积操作、池化操作、维度变换、激活函数的计算、以及数据搬移或传输操作等,位置信息包括出错运算所在神经网络层的索引(例如,故障发生在第一个卷积层或最后一个全连接层)、出错运算的结果在后续运算结果中的对应位置(例如,第一个卷积层中出错的数据对应到第二个卷积层特征图中的位置)。
在一具体实施例中,收集并记录所述故障的相关信息可包括确定前述故障的类型信息、故障相关的硬件信息、故障相关的神经网络运算信息中的至少一个,并将确定的故障相关信息进行保存。例如,可将故障相关信息保存到寄存器或SRAM存储器中,以方便后续评估分析发生的故障对执行神经网络运算所得结果的精度的影响。
在步骤S222中,根据所述故障的相关信息确定由所述故障引起的神经网络的精度偏差数值。
不同类型的故障、故障发生的硬件位置、及故障所参与的神经网络运算均会对神经网络处理器运算造成不同的影响,故障的各种信息可线性或非线性地影响神经网络处理器执行神经网络运算所得结果的精度,因此,可将收集得到的故障的类型信息、故障相关的硬件信息、神经网络运算信息中的一项或多项后,通过对这些相关信息进行评估、分析来确定发生的故障对神经网络处理器运算所产生的影响而引起的精度偏差数值。
在一实施例中,可通过确定的精度偏差数值来确定发生故障的影响等级,一般可认为精度偏差数值越大,故障的影响等级越高。例如,在影响等级较高的情况下,可以认为神经网络处理器的运算所得结果的精度将下降至很低水平导致运算结果不能被认定为有效数据,该运算结果可被忽略或丢弃。而在影响等级较低的情况下,则可认为神经网络处理器的运算结果仍在可接受范围而作为有效数据使用。
在步骤S223中,根据所述精度偏差数值确定所述神经网络处理器执行神经网络运算所得结果的精度。
在神经网络处理器正常运行时,其执行神经网络运算的精度可预先通过对预设数据集进行检测而得到,其一般为神经网络模型的训练精度。在一实施例中,可通过将训练精度与上述精度偏差数值的差值作为发生故障后的神经网络处理器执行神经网络运算所得结果的精度。
在一具体实施例中,如图3所示,根据所述故障的相关信息确定由所述故障引起的的精度偏差数值包括:
在步骤S2221中,根据所述故障的相关信息,判断所述故障是否属于影响神经网络精度的故障。
例如,在所述故障的相关信息指示所述故障与所述神经网络运算相关时,确定所述故障属于影响神经网络精度的故障,比如,计算单元(乘法器、加法器等)硬件发生故障或者执行神经网络模型的操作(卷积操作、池化操作等)发生故障时,可以确定该故障与神经网络运算相关,其将影响神经网络运算所得结果的精度。
而在所述故障的相关信息指示所述故障与所述神经网络运算不相关时,确定所述故障属于与神经网络精度无关的故障,比如,故障的类型信息指示故障为指令故障、超时故障、接口协议故障等故障时,可以确定该故障与运算结果精度无关,其不影响神经网络的运算结果本身的精度,但可能会造成神经网络处理器无法正常运行。
在一实施方式中,在确定所述故障属于与神经网络精度无关的故障时,由于其可能造成神经网络处理器无法正常运行,因此响应于所述故障属于与神经网络精度无关的故障,可指示神经网络处理器终止当前运算,并可重启神经网络处理器。
在步骤S2222中,响应于所述故障属于影响神经网络精度的故障,利用所述故障的相关信息确定由所述故障引起的神经网络的精度偏差数值。
如前所述,故障的各种信息可线性或非线性地影响神经网络处理器执行神经网络运算的精度,因此,可通过在收集得到故障的类型信息、故障相关的硬件信息、神经网络运算信息等信息后,通过对这些相关信息进行评估、分析来确定发生的故障对神经网络处理器运算所产生的影响而引起的精度偏差数值,这将在下面对确定精度偏差数值的非限制性实施方式进行具体描述。
在一实施方式中,在确定所述故障属于影响神经网络精度的故障时,可进一步定位出现的故障是永久故障还是瞬态故障。其中,永久故障是不可恢复故障,一旦出现就会保持故障状态,而瞬态故障是一种可以恢复的故障,其只存在于一段时间内,可以随着电路的更新而消失。
多种原因可能导致永久故障,例如神经网络处理器的IC生产制造工艺出现偏差、处理器内部的电路器件发生老化、处理器遭受外力作用等。出现永久故障的电路器件会一直处于故障的状态,无法恢复正常功能。例如,电路器件中的晶体管出现永久故障,可能一直保持为高电平(例如,PMOS晶体管击穿而与VDD短路),也可能一直保持为低电平(例如,NMOS晶体管击穿而与地短路),即可通过对电路器件的电位监测确定是否发生硬件永久故障。
瞬态故障可能是由宇宙射线、阿尔法粒子或者电磁辐射等原因引起的,瞬间的能量干扰可以暂时性地改变某个电路器件的状态,但不会持续对电路产生破坏。例如,在寄存器中出现瞬态故障时,寄存器内保存的bit位数据可能出错,从而会对后面依赖该寄存器值的逻辑计算产生影响,导致计算得到不正确的结果。但是,当下一时刻电路对该寄存器进行更新,寄存器所保存的数据就会更新为正确的值,后面依赖该寄存器的逻辑计算也就会计算得到预期结果。
一般而言,永久故障对神经网络处理器的运算精度的影响等级较高,而瞬态故障对神经网络处理器的运算精度的影响等级较低。因此,可以结合故障的类别信息(例如,永久故障、瞬态故障)和故障的相关信息(例如,故障相关的硬件信息、故障相关的神经网络运算信息等)而确定故障对神经网络处理器运算所得结果精度的偏差数值。
图4示出了根据本公开一实施例提供的确定故障引起的神经网络处理器运算所得结果精度的偏差数值的流程图。在例如根据故障的类型确定其会影响神经网络精度后,根据所收集的信息进一步判断该故障属于瞬态故障还是永久故障。例如,收集的信息显示故障发生在神经网络的全连接层(例如最后一层全连接层)的计算过程中,并且是某个乘法器出现了瞬态故障,可以对参与运算的神经网络模型的权重参数进行记录,并根据该乘法器所执行的计算追溯参与运算的神经网络中的相应权重。如果此权重值较小(例如,小于一阈值),可以认为乘法器执行的乘法计算结果对最终累加结果的影响较低。类似地,如果故障发生在激活函数(例如softmax函数)的计算过程中,可以确定故障在该激活函数计算过程中的归一化比重,进而确定该故障对于神经网络处理器运算结果的影响。而如果收集的信息显示一个在计算电路中多次使用的乘法器发生永久故障,初步可认为该故障带来的影响很大,此时可进一步根据发生永久故障的乘法器在神经网络计算过程中的使用次数以及该乘法器参与的逻辑运算的占比等数据来分析该故障对神经网络运算结果的影响。在获得上述权重、使用次数等数据后,例如可通过预设的对照表或模型确定故障所引起的精度偏差数值,这将在下面进行具体描述。
下面以一具体实施方式来对图4所示的确定故障对于神经网络处理器运算所得结果的偏差数值进行描述。例如,神经网络处理器使用带有冗余存储和修复功能的静态随机存取存储器(SRAM)控制电路,当检测到SRAM的存储数据的ECC校验错误时而确定发生数据存储故障,可以记录发生故障的SRAM的地址信息。通过故障的类型信息可以确定该故障属于影响神经网络精度的故障,如果是可以纠正的单bit数据出错,那么ECC电路会将该数据自动纠正。如果是不可以纠正的多bit数据出错,还需要根据情况进行进一步分析是瞬态故障还是永久故障。如果通过进一步的检测,确定该数据存储故障是瞬态故障,只是临时出现这次的多bit数据出错,那么可以根据出错时记录的地址信息,追溯到当前故障数据参与的神经网络运算的环节及该数据参与的逻辑运算的占比等信息。如果通过进一步的检测,确定该故障是永久故障,可以根据当前地址在执行神经网络运算过程中被访问的次数进行分析。如果该地址信息在执行神经网络运算过程中被多次进行读/写访问,那么判断其将造成较大的精度偏差。如果该地址信息在神经网络计算过程中只被读/写访问一次,那么可以根据该地址信息具体参与的计算,追溯到当前故障数据参与的神经网络运算的环节及该数据参与的逻辑运算的占比等信息。在获得上述占比、访问次数、数据量等数据后,例如可通过预设的对照表或模型确定故障所引起的精度偏差数值。
在一实施例中,可以预先编制一查找表,该查找表包含有故障的相关信息和神经网络的精度偏差数值之间的对应关系,例如可通过神经网络处理器执行的神经网络模型的训练精度作为参照,记录在各种故障条件下的神经网络处理器执行神经网络模型所得结果的实际精度与上述训练精度的偏差数值,将该偏差数值与相应的故障信息作为一组数据进行记录并存储在数据库中。
神经网络处理器在实际运算过程中发生故障时,可从该预先配置的查找表中查找与所述故障的相关信息对应的精度偏差数值,并以查找到的精度偏差数值作为由所述故障引起的神经网络的精度偏差数值。通过查找表的方式可以快速确定发生的故障对于神经网络运算的影响,从而可及时确定应对该故障的响应方式。
在另一实施例中,可以通过预先训练的计算模型来计算由故障引起的神经网络运算的精度偏差数值,其包括利用故障的相关信息确定以下故障分析数据中的一项或多项:发生故障的故障器件在神经网络运算过程中的使用次数;所述故障器件对应的计算逻辑在神经网络运算中的占比;发生故障的神经网络所使用的运算的数据量。之后,可根据上述故障分析数据通过预先训练的计算模型来计算由所述故障引起的神经网络的精度偏差数值。
例如,参见前面描述,故障器件在神经网络运算过程中的使用次数可根据该故障器件的类型信息及其在整个计算单元中的位置信息进行估算,故障器件对应的计算逻辑在神经网络运算中的占比可根据故障器件在整个计算单元中的位置信息及所述故障器件所参与的神经网络运算中的权重进行估算,发生故障的神经网络所使用的运算的数据量可根据故障操作的位置信息及执行神经网络操作所使用的运算参数等数据来进行估算。
在一实施方式中,预先训练的计算模型可以采用基于学习的方式通过使用离线训练的网络而获得。例如,其可通过以下方式训练获得计算模型,首先,可以在神经网络模型中引入单点故障(即计算噪声),并评估其对神经网络运算的精度偏差。之后,可以将引入的单点故障映射到神经网络处理器的实际运算的硬件逻辑中,并收集出现故障时的各种信息,然后基于该信息确定相关的前述故障分析数据。重复前两个步骤,得到大量的故障分析数据和其产生的精度偏差的数据对应关系,并得到{故障分析数据,故障产生的精度偏差}的数据集。在此基础上,可以使用这些数据集,训练一个网络作为评估故障引起的精度偏差数值的计算模型。
图5示出了根据本公开一实施例提供的确定神经网络处理器响应发生故障的处理方式的示意图。如图5所示,在神经网络处理器发生故障时,不是直接终止运算而是先判断发生故障的该神经网络处理器的运算精度,并根据所述精度,确定所述神经网络处理器响应所述故障的方式。如果其运算所得结果精度大于或等于一预设阈值,则表明故障对于神经网络处理器的影响在可接受范围内,此时可继续后续的运算,即可依旧使用神经网络处理器的计算结果进行后续运算而不做丢弃处理或重启处理器,另一方面,如果运算所得结果精度小于该预设阈值,则表明故障所引起的精度偏差不可接受,则应终止当前运算或对当前运算结果进行丢弃处理。通过这种方式,从而可以提高神经网络处理器的运算效率。
在一实施例中,神经网络处理器运算所得结果的精度与预设阈值的判断结果可使用字段来进行表示。该字段例如为单bit二进制数值字段并可存放在状态寄存器内,其可由外部控制器读取以作为指示信号,指示当前运算结果是否可以作为有效数据继续使用,或者是否需要被丢弃。
在一实施例中,可以直接根据得到的精度偏差数值来确定神经网络处理器响应故障的方式。图6示出了根据本公开一实施例提供的神经网络处理器的故障处理方法的示意流程图。如图6所示,可将所述故障引起的神经网络的精度偏差数值与预先配置的阈值进行比较,若所述精度偏差数值小于所述阈值,可控制所述神经网络处理器继续所述神经网络的后续运算,若所述精度偏差数值大于或等于所述阈值,控制所述神经网络处理器终止当前运算(例如对于永久故障)或者丢弃当前的运算结果(例如对于瞬态故障)。图6中所示的判断故障是否影响神经网络运算精度、判断故障的类别等其余步骤与图4所示相同,此处不再赘述。
需要说明的是,尽管在各个实施例中分别对根据本公开实施例的故障处理方法的各步骤进行了说明,但是不应理解为其为本公开能实施的全部实施方式,相反这些实施例中的一个或多个、全部或部分之间可以相互结合,同时这些实施例还可以与本文描述的其他特征进行结合,这些实施方式均不脱离本公开的发明原理并可实现辅助的技术效果。
示例性装置
图7是本公开一示例性实施例提供的故障处理装置。如图7所示,故障处理装置300包括:
检测模块310,其配置为检测神经网络处理器的工作状态;
分析模块320,其配置为若所述工作状态表示所述神经网络处理器发生故障,确定所述神经网络处理器执行神经网络运算所得结果的精度;以及
控制模块330,其配置为根据所述精度,确定所述神经网络处理器响应所述故障的方式。
可以理解的是,虽然图7中上述各模块图示在神经网络处理器120的外部,各模块也可以置于神经网络处理器的内部而处理器的计算电路紧密耦合。分析模块320、控制模块330也可以置于神经网络处理器的外部,通过接口与处理器进行通信,交互故障和控制信息。
图8是本公开一示例性实施例故障处理装置中的检测模块310的结构示意图。如图8所示,检测模块310可包括指令检测单元311、超时检测单元312、接口协议检测单元313、计算逻辑检测单元314、数据传输检测单元315、数据存储检测单元316中的一个或多个检测单元,以检测神经网络处理器执行神经网络运算时的工作状态,并在发生故障时生成故障的相关信息。
例如,指令检测单元311可以检测神经网络处理器是否通过外部接口接收到正确的指令(例如,是否接收到不完整指令或指令集之外的未知指令),所接收的指令是否可执行(例如,指令是否因与其他指令或规则例如时序规则相矛盾而不可执行)等等。当接收到不完整指令、未知指令或者不可执行的指令时,可以指示出现了指令故障。
例如,超时检测单元312可检测神经网络处理器在执行运算时是否出现无响应或响应时间过长的情形。例如,可通过定时器以监测神经网络处理器执行卷积操作、数据搬移操作等各种指令操作的执行情况,并在出现挂起或响应超时的情况下生成信号以指示出现超时故障。
例如,接口协议检测单元313可检测神经网络处理器的外部接口是否发生通信协议相关的故障。例如,在检测到不符合AXI协议的读/写数据通道信号时,可生成信号以指示出现接口协议故障。
例如,计算逻辑检测单元314可检测神经网络处理器的内部计算电路是否发生神经网络运算相关的故障。例如,在检测到卷积引擎的处理单元PE阵列(例如,乘加器阵列)中的某个单元发生故障,或者用于平均池化操作的一个或多个平均池化计算单元发生故障时,可生成信号以指示出现计算逻辑故障。
例如,数据传输检测单元315可检测数据在神经网络处理器的内部传输过程中是否发生故障。例如,在输入/输出特征图、权重等数据在向存储缓冲器传输的通道上发生寄存器故障时,可生成信号以指示出现数据传输故障。
例如,数据存储检测单元316可检测数据在神经网络处理器的内部存储过程中是否发生故障。例如,在将卷积运算的中间结果存储在内部SRAM存储器时同时增加ECC编码以对数据进行纠错操作,在检测到ECC校验错误时,可生成信号以指示出现数据存储故障。
在一个示例中,故障处理装置300还可包括信息收集模块340,其配置为若所述工作状态表示所述神经网络处理器发生故障,收集并记录所述故障的相关信息。在一具体示例中,分析模块320可配置为根据所述故障的相关信息确定由所述故障引起的神经网络的精度偏差数值。
在一个示例中,信息收集模块340可配置为确定所述故障的类型信息、故障相关的硬件信息、故障相关的神经网络运算信息中的至少一个,并将所述信息进行保存。
在一个示例中,分析模块320还可配置为:根据所述故障的相关信息,判断所述故障是否属于影响神经网络精度的故障;以及响应于所述故障属于影响神经网络精度的故障,利用所述故障的相关信息确定由所述故障引起的神经网络的精度偏差数值。
在一个示例中,分析模块320还可配置为:在所述故障类型信息指示所述故障与所述神经网络运算相关时,确定所述故障属于影响神经网络精度的故障;在所述故障类型信息指示所述故障与所述神经网络运算不相关时,确定所述故障属于与神经网络精度无关的故障。
在一个示例中,分析模块320还可配置为:从预先配置的查找表中查找对应所述故障的相关信息的精度偏差数值,并以查找到的精度偏差数据作为由所述故障引起的神经网络的精度偏差数值;其中,所述查找表中包含所述故障的相关信息和神经网络的精度偏差数值之间的对应关系。
在一个示例中,分析模块320还可配置为:利用所述故障的相关信息确定以下故障分析数据中的一项或多项:发生故障的故障器件在神经网络运算过程中的使用次数;所述故障器件对应的计算逻辑在神经网络运算中的占比;发生故障的神经网络所使用的运算的数据量;被污染的数据对神经网络运算的影响等级;根据所述故障分析数据通过预先训练的计算模型来计算由所述故障引起的神经网络的精度偏差数值。
在一个示例中,控制模块330可配置为响应于所述故障属于与神经网络精度无关的故障,指示所述神经网络处理器终止当前运算。
在一个示例中,控制模块330还可配置为:将所述精度与预先配置的阈值进行比较;响应于所述精度大于或等于所述阈值,控制所述神经网络处理器继续所述神经网络的后续运算;以及响应于所述精度小于所述阈值,控制所述神经网络处理器终止当前运算或丢弃所述神经网络的运算结果。
示例性电子设备
除了上述方法和装置意外,本公开的实施例还可以是电子设备,该电子设备包括:一个或多个处理器;以及存储器,其存储有计算机程序,所述计算机程序在被所述处理器运行时使所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的故障处理方法中的步骤。
本公开实施例的上述电子设备可适用于利用神经网络处理器控制的各种设备,例如自动驾驶车辆、安防机器人等,其在电子设备中的神经网络处理器发生故障时,先评估故障对神经网络运算结果造成的精度影响,并在可接受范围内不终止运算,提高电子设备的处理效率。
图9图示了根据本公开实施例的电子设备的框图。
如图9所示,电子设备400包括一个或多个处理器410和存储器420。
处理器400可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备400中的其他组件以执行期望的功能。
存储器420可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器410可以运行所述程序指令,以实现上文所述的本公开的各个实施例的故障处理方法以及/或者其他期望的功能。
在一个示例中,电子设备400还可以包括:输入装置430和输出装置440,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。例如,该输入装置430可以是摄像头、激光雷达、麦克风或麦克风阵列。此外,该输入设备430还可以包括例如键盘、鼠标等等。该输出装置440可以向外部输出各种信息。该输出设备440可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
当然,为了简化,图9中仅示出了该电子设备400中与本公开有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备400还可以包括任何其他适当的组件。
示例性计算机程序产品和计算机可读存储介质
除了上述方法和设备以外,本公开的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的故障处理方法中的步骤。
所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
此外,本公开的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的故障处理方法中的步骤。
所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。
本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
还需要指出的是,在本公开的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本公开。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本公开的范围。因此,本公开不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。

Claims (10)

1.一种神经网络处理器的故障处理方法,包括:
检测神经网络处理器的工作状态;
若所述工作状态表示所述神经网络处理器发生故障,确定所述神经网络处理器执行神经网络运算所得结果的精度;以及
根据所述精度,确定所述神经网络处理器响应所述故障的方式。
2.如权利要求1所述的方法,其中,确定所述神经网络处理器执行神经网络运算所得结果的精度包括:
若所述工作状态表示所述神经网络处理器发生故障,收集并记录所述故障的相关信息;
根据所述故障的相关信息确定由所述故障引起的神经网络的精度偏差数值;以及
根据所述精度偏差数值确定所述神经网络处理器执行神经网络运算所得结果的精度。
3.如权利要求2所述的方法,其中,所述收集并记录所述故障的相关信息包括:
确定所述故障的类型信息、故障相关的硬件信息、故障相关的神经网络运算信息中的至少一个,并将所述信息进行保存。
4.如权利要求2所述的方法,其中,所述根据所述故障的相关信息确定由所述故障引起的神经网络的精度偏差数值包括:
根据所述故障的相关信息,判断所述故障是否属于影响神经网络精度的故障;以及
响应于所述故障属于影响神经网络精度的故障,利用所述故障的相关信息确定由所述故障引起的神经网络的精度偏差数值。
5.如权利要求4所述的方法,其中,根据所述故障的相关信息,判断所述故障是否属于影响神经网络精度的故障包括:
在所述故障相关信息指示所述故障与所述神经网络运算相关时,确定所述故障属于影响神经网络精度的故障;
在所述故障相关信息指示所述故障与所述神经网络运算不相关时,确定所述故障属于与神经网络精度无关的故障。
6.如权利要求4所述的方法,其中,利用所述故障的相关信息确定由所述故障引起的神经网络的精度偏差数值,包括:
从预先配置的查找表中查找对应所述故障的相关信息的精度偏差数值,并以查找到的精度偏差数据作为由所述故障引起的神经网络的精度偏差数值;其中,所述查找表中包含所述故障的相关信息和神经网络的精度偏差数值之间的对应关系。
7.如权利要求4所述的方法,其中,利用所述故障的相关信息确定由所述故障引起的神经网络的精度偏差数值,包括:
利用所述故障的相关信息确定以下故障分析数据中的一项或多项:发生故障的故障器件在神经网络运算过程中的使用次数;所述故障器件对应的计算逻辑在神经网络运算中的占比;发生故障的神经网络所使用的运算的数据量;
根据所述故障分析数据通过预先训练的计算模型来计算由所述故障引起的神经网络的精度偏差数值。
8.一种神经网络处理器的故障处理装置,包括:
检测模块,配置为检测神经网络处理器的工作状态;
分析模块,配置为若所述工作状态表示所述神经网络处理器发生故障,确定所述神经网络处理器执行神经网络运算所得结果的精度;以及
控制模块,配置为根据所述精度,确定所述神经网络处理器响应所述故障的方式。
9.一种电子设备,包括:
一个或多个处理器;以及
存储器,存储有计算机程序,所述计算机程序在被所述处理器运行时使所述处理器执行根据权利要求1至7中任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序在被处理器运行时使得所述处理器执行如权利要求1至7中任一项所述的方法。
CN202011171665.0A 2020-10-28 2020-10-28 神经网络处理器的故障处理方法及装置、设备、存储介质 Active CN112231134B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011171665.0A CN112231134B (zh) 2020-10-28 2020-10-28 神经网络处理器的故障处理方法及装置、设备、存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011171665.0A CN112231134B (zh) 2020-10-28 2020-10-28 神经网络处理器的故障处理方法及装置、设备、存储介质

Publications (2)

Publication Number Publication Date
CN112231134A true CN112231134A (zh) 2021-01-15
CN112231134B CN112231134B (zh) 2023-08-08

Family

ID=74109213

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011171665.0A Active CN112231134B (zh) 2020-10-28 2020-10-28 神经网络处理器的故障处理方法及装置、设备、存储介质

Country Status (1)

Country Link
CN (1) CN112231134B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112506690A (zh) * 2020-12-09 2021-03-16 北京地平线信息技术有限公司 控制处理器的方法及装置
CN114006809A (zh) * 2021-10-09 2022-02-01 北京天融信网络安全技术有限公司 调整工控防火墙数据传输的方法、装置、设备和存储介质
CN115113528A (zh) * 2022-07-06 2022-09-27 昆仑芯(北京)科技有限公司 神经网络模型的运行控制方法、装置、设备及介质
CN115712517A (zh) * 2022-09-30 2023-02-24 北京地平线机器人技术研发有限公司 一种神经网络处理器的故障处理方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170249214A1 (en) * 2016-02-26 2017-08-31 Fts Computertechnik Gmbh Fault-tolerant system architecture for the control of a physical system, in particular a machine or a motor vehicle
CN107729998A (zh) * 2017-10-31 2018-02-23 中国科学院计算技术研究所 一种用于神经网络处理器的方法
CN110223195A (zh) * 2019-05-22 2019-09-10 上海交通大学 基于卷积神经网络的配电网故障检测方法
CN110333074A (zh) * 2019-07-30 2019-10-15 北京航天发射技术研究所 基于卷积神经网络的多测点传动机构故障诊断方法和系统
CN111212775A (zh) * 2017-11-17 2020-05-29 特斯拉公司 用于处理载具神经网络处理器中的错误的系统和方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170249214A1 (en) * 2016-02-26 2017-08-31 Fts Computertechnik Gmbh Fault-tolerant system architecture for the control of a physical system, in particular a machine or a motor vehicle
CN107729998A (zh) * 2017-10-31 2018-02-23 中国科学院计算技术研究所 一种用于神经网络处理器的方法
CN111212775A (zh) * 2017-11-17 2020-05-29 特斯拉公司 用于处理载具神经网络处理器中的错误的系统和方法
CN110223195A (zh) * 2019-05-22 2019-09-10 上海交通大学 基于卷积神经网络的配电网故障检测方法
CN110333074A (zh) * 2019-07-30 2019-10-15 北京航天发射技术研究所 基于卷积神经网络的多测点传动机构故障诊断方法和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
FERNANDO FERNANDES DOS SANTOS 等: "Analyzing and Increasing the Reliability of Convolutional Neural Networks on GPUs", 《IEEE TRANSACTIONS ON RELIABILITY 》, vol. 68, no. 2, pages 663, XP011727288, DOI: 10.1109/TR.2018.2878387 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112506690A (zh) * 2020-12-09 2021-03-16 北京地平线信息技术有限公司 控制处理器的方法及装置
CN114006809A (zh) * 2021-10-09 2022-02-01 北京天融信网络安全技术有限公司 调整工控防火墙数据传输的方法、装置、设备和存储介质
CN114006809B (zh) * 2021-10-09 2023-11-28 北京天融信网络安全技术有限公司 调整工控防火墙数据传输的方法、装置、设备和存储介质
CN115113528A (zh) * 2022-07-06 2022-09-27 昆仑芯(北京)科技有限公司 神经网络模型的运行控制方法、装置、设备及介质
CN115712517A (zh) * 2022-09-30 2023-02-24 北京地平线机器人技术研发有限公司 一种神经网络处理器的故障处理方法及装置
WO2024066833A1 (zh) * 2022-09-30 2024-04-04 北京地平线机器人技术研发有限公司 神经网络处理器的故障处理方法及装置
CN115712517B (zh) * 2022-09-30 2024-04-16 北京地平线机器人技术研发有限公司 一种神经网络处理器的故障处理方法及装置

Also Published As

Publication number Publication date
CN112231134B (zh) 2023-08-08

Similar Documents

Publication Publication Date Title
CN112231134B (zh) 神经网络处理器的故障处理方法及装置、设备、存储介质
KR102661774B1 (ko) 이미지 오분류에 대한 안전 모니터
CN112506690A (zh) 控制处理器的方法及装置
WO2022089202A1 (zh) 故障识别模型训练方法、故障识别方法、装置及电子设备
CN111891134B (zh) 自动驾驶处理系统和片上系统、监测处理模块的方法
CN108154230B (zh) 深度学习处理器的监控方法和监控装置
US10578667B2 (en) Methods and systems for detecting, classifying and/or mitigating sensor error
US11415975B2 (en) Deep causality learning for event diagnosis on industrial time-series data
US11971803B2 (en) Safety monitor for invalid image transform
WO2024066833A1 (zh) 神经网络处理器的故障处理方法及装置
US20200409773A1 (en) Safety monitor for incorrect kernel computation
Boussif et al. Tuning the diagnoser-based approach for diagnosability analysis of finite automata
KR102420514B1 (ko) 딥러닝을 이용한 하드웨어 및 소프트웨어 결함 탐지 방법 및 분석장치
KR20200067604A (ko) 객체 제어 및 모니터링 시스템
EP4134875A1 (en) Method and apparatus for diagnostic coverage for ai hardware accelerators
US20240152805A1 (en) Systems, methods, and non-transitory computer-readable storage devices for training deep learning and neural network models using overfitting detection and prevention
JP7449193B2 (ja) 演算装置および車両制御装置
CN115391084B (zh) 一种云游戏异常的智能解决方法及系统
CN112580715B (zh) 一种家居设备故障检测方法、装置、设备及介质
US20210390403A1 (en) Method and device for correcting erroneous neuron functions in a neural network
WO2023015919A1 (zh) Ai计算的校验方法和装置
CN114443398A (zh) 内存故障预测模型的生成方法、检测方法、装置及设备
CN114254790A (zh) 一种设备状态预测方法及装置
CN114254792A (zh) 一种烟气含氧量预测方法及装置
CN112799862A (zh) 面向辐射环境的cpu抗seu效应的可靠性建模与评估方法

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