Tesla was granted another patent yesterday. This time, it seems that Tesla has perfected the art of creating neural networks (NN) that understand “self-improvement.” The patent, titled, System and method for handling errors in a vehicle neural network processor, describes a process where neural networks can detect errors associated with the execution of said NN. It can receive an error report from the error detectors and is then able to signal that a pending result of the NN is tainted — all without terminating the expectation of the NN.
In other words, Tesla has patented a way for an NN to recognize an error and address it. This particular patent is a continuation of another patent application filed in 2017, System and method for handling errors in a vehicle neural network processer. In the description of the patent, Tesla reinforces the focus on safety as the primary objective. It pointed out that computers are being integrated into vehicles, and although they have the potential to address safety issues, they can bring about new risks that haven’t yet been addressed. Having a system where an NN can perceive this and alert Tesla that there’s an error would lead to Tesla improving the software and making the vehicle even safer.
“Many vehicles today come equipped with a wide range of features designed to improve safety and reliability. In part, this is because vehicle accidents and/or breakdowns are accompanied by a high risk of personal injury, death, and property damage. At the very least, an accident and/or breakdown is likely to involve significant inconvenience and/or cost to the vehicle owner. Accordingly, many efforts have been made to develop improved safety features for vehicles.
“Increasingly, computers are being integrated into vehicles for purposes ranging from passenger comfort and entertainment to partial or full self-driving operation. While computers have the potential to address many safety and reliability issues in vehicles, they also introduce new risks and new modes of failure that have yet to be fully addressed. It is important that safeguards are put in place to ensure that computer-enabled and/or computer-assisted features of a vehicle do not increase the risk of operating the vehicle. Various strategies can be employed to test computer-implemented vehicle features before they are put into production. However, even when thorough testing is performed, errors are still likely to be encountered when operating under real-world conditions.
“Accordingly, it would be advantageous to provide improved systems and methods for handling errors in processors used in vehicular applications.”
Tesla goes into a bit more detail in the summary and points out some examples. One example includes a system for handling errors in NNs. In this case, the NN processer includes an error detector that is configured to detect a data error linked with the execution of that NN. The NN’s controller is able to receive the data error report from the error detector, and upon receiving that report, the NN controller is able to signal that there is a pending result of the NN tainted — without terminating the execution of the NN.
In another example, the system’s NN processer is executing an NN associated with the autonomous operation of a vehicle, and an interrupt controller, which helps to handle interrupt requests that may come from different sources, coupled to the neural network processor is used. The interrupt controller can receive the error signal from the NN processor and access the data in several ways.
“The interrupt controller is configured to receive an error signal via an error interrupt pin of the neural network processor, access error information via one or more status registers of the neural network processor, the error information indicating a type of error encountered by the neural network processor, and, when the type of the error corresponds to a data error, identify a pending result of the neural network processor as corrupt.”
In the final example listed, a method for handling errors in an NN processor was shared. This includes:
- Receiving an error report based on an error that the vehicle NN processor encountered ruing operating the vehicle.
- Determining the type of error based on the error report.
- In response to the second point above, determining how it corresponds to that data error.
- Signaling that a pending result of the vehicle’s NN processor is corrupt while allowing the operation of the vehicle’s NN processor to continue.
The patent also shared detailed drawings and examples. You can access those here.