A neural network is not just a mathematical model. An artificial neural network consists of many elements called neurons or processors, just as a biological neural network consists of nerve cells. Copying the human brain, it acts not only according to a strict algorithm and formulas, but also accumulates and uses past experience. So neurons are able to learn
Tesla Autopilot works due to the fact that the company implements artificial neural networks in its vehicles that are trained on the experience of all other fleet vehicles. That is the drivers "train" the neural network. Going around obstacles, they give the car an example of the right action. In order for all this to work, all Tesla’s vehicles are equipped with specially designed hardware.
Each neural network has a neural network model that describes its architecture and configuration, as well as the training algorithms used. The architecture of the neural network determines the general principles of its construction, and the configuration specifies the structure of the network within the framework of the given architecture: the number of neurons, the number of inputs and outputs of the network, the activation functions used.
On July 2, Tesla published the patent 'System and method for adapting a neural network model on a hardware platform'. This invention relates generally to the machine learning field, and more specifically to a new and useful system and method for adapting a neural network model on a platform.
FIG. 1 is a schematic representation of an example model configuration system.
For example, a neural network can be used to assign an object label to a part of an input image that depicts a person. Based on certain parameters and hyperparameters, the neural network assigns the label "person" to this image. Typically, different neural networks are trained with different hyperparameters. These different neural networks are then used to analyze the same training set for validation, and a specific neural network is selected for future use based on the desired performance or accuracy of a particular application.
For machine learning applications, it may often be desirable to implement and/or configure neural networks on previously-unimplemented platforms (e.g., software/hardware combination). However, implementing or configuring a neural network for a given platform and/or application (eg, a use case) can be extremely difficult, because different neural networks, hardware components, software, and/or applications may have different requirements which impose complex constraints on the configuration.
For example, autonomous vehicles may be constrained to implement neural networks for their artificial intelligence systems using a relatively limited set of hardware implemented in the vehicle itself, which may lead to hardware platform constraints in terms of implementation and performance. In order to enable deep learning and other processing-heavy and computationally intensive techniques, the neural network model used must be adapted to generate configurations that satisfy all constraints of the platform in question.
In the patent, techniques, systems, and methods, are described to determine a neural network configuration which is adapted to a specific platform. An example platform may represent a processing architecture, an amount of memory, and so on as described in the patent. Additionally, a platform may represent a particular cloud or virtual machine architecture or instance. It may be appreciated that different platforms may complicate the implementation of a neural network.
FIG. 2 is a flowchart representation of an example model configuration method.
This invention helps to solve a significant number of problems that arise and, therefore, the development of a new and useful system and method for adapting a neural network model on a platform.
Featured image: TesmanianFollow @EvaFoxU