Skip to content

Commit 4ae089c

Browse files
authored
Update README.md
1 parent 909fe23 commit 4ae089c

File tree

1 file changed

+20
-0
lines changed

1 file changed

+20
-0
lines changed

README.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ The library also exposes CUDA-accelerated layers with more advanced features tha
1212
- [Quick start](#quick-start)
1313
- [Supervised learning](#supervised-learning)
1414
- [GPU acceleration](#gpu-acceleration)
15+
- [Library settings](#library-settings)
1516
- [Serialization and deserialization](#serialization-and-deserialization)
1617
- [Requirements](#requirements)
1718

@@ -100,6 +101,25 @@ These `LayerFactory` instances can be used to create a new network just like in
100101

101102
**NOTE:** in order to use this feature, the CUDA and cuDNN toolkits must be installed on the current system, a CUDA-enabled nVidia GeForce/Quadro GPU must be available and the **Alea** NuGet package must be installed in the application using the **NeuralNetwork.NET** library as well. Additional info are available [here](http://www.aleagpu.com/release/3_0_4/doc/installation.html#deployment_considerations).
102103
104+
### Library settings
105+
106+
**NeuralNetwork.NET** provides various shared settings that are available through the `NetworkSettings` class.
107+
This class acts as a container to quickly check and modify any setting at any time, and these settings will influence the behavior of any existing `INeuralNetwork` instance and the library in general.
108+
109+
For example, it is possible to customize the criteria used by the networks to check their performance during training
110+
111+
```C#
112+
NetworkSettings.AccuracyTester = AccuracyTesters.Argmax(); // The default mode
113+
NetworkSettings.AccuracyTester = AccuracyTesters.Threshold(); // Useful for overlapping classes
114+
```
115+
116+
When using CUDA-powered networks, sometimes the GPU in use might not be able to process the whole test or validation datasets in a single pass, which is the default behavior (these datasets are not divided into batches).
117+
To avoid memory issues, it is possible to modify this behavior:
118+
119+
```C#
120+
NetworkSettings.MaximumBatchSize = 400; // This will apply to any test or validation dataset
121+
```
122+
103123
### Serialization and deserialization
104124

105125
The `INeuralNetwork` interface exposes a `Save` method that can be used to serialize any network at any given time.

0 commit comments

Comments
 (0)