This is a Tensorflow Implementation of the ranger layer concept described in various paper:
Ranger Paper
- Add init.py to make ranger easily includable
- Make Ranger Layer modes compatible with tesnorflow op graph (to make them work outside of eager mode)
- Automatically generate Fault Injection Campaign csv report
- Automatically add Ranger after All Convolution and Maxpool from existing models as input
- Helper Function To set Ranger Layers mode in an easy/fast way
- Make easier to create a model with both Fault Injection Points and Ranger
- Create an Helper class for Fault Aware Training
- Make Ranger Batch Compatible to enable possibility of "Range Tune" using fit function (Faster than single prediction)
- Move DataLoading functions and Training functions inside the models itself.
- Fix Vgg16 Example (Some problem adding classes to Tensorflow Functional Models (????))
- Add Classes also after Activation Relu
- Per ogni sample del validatio
- 300 injection per ogni sample
- 4 Configurazioni
- Classes No Ranger
- Clipper-Value
- Clipper-Layer
- Threshold-Value
- Threshold-Layer
The scope of this layer is to imporve reliability/robustness of CNN layers against Fault Tollerance of GPU. To do so, it introduce a domain range for each layer (here is the name Ranger) and for each inference it will handle in adeguate way the outsider values. 3 Possible way to handle Outsiders:
- Clip them to Zero
- Threshold them to the Maximum value of the domain
- Clip them to the mean of the layer values.
TODO
- Allow a plug and play approach to ranger by simply convert existing models in 100% automatic way.
- Allow to easily Disable, Put in Train Mode, Put in Inference mode all the Ranger layers automatically.
- Allow to set up the threshold "Strongness" parameter on all the layers.
- Tensorflow >= 2.0
- Clone Classes GPU Fault Injector Framework "initialize.sh script" or download it from its repository github
You can find an example of usage Here