1+ #include < EloquentTinyML.h>
2+ #include " wine_nn.h"
3+
4+ #define NUMBER_OF_INPUTS 13
5+ #define NUMBER_OF_OUTPUTS 3
6+ #define TENSOR_ARENA_SIZE 16 *1024
7+
8+ Eloquent::TinyML::TfLite<NUMBER_OF_INPUTS, NUMBER_OF_OUTPUTS, TENSOR_ARENA_SIZE> nn;
9+
10+ float X_test[20 ][13 ] = {
11+ {1.340e+01 , 4.600e+00 , 2.860e+00 , 2.500e+01 , 1.120e+02 , 1.980e+00 ,
12+ 9.600e-01 , 2.700e-01 , 1.110e+00 , 8.500e+00 , 6.700e-01 , 1.920e+00 , 6.300e+02 },
13+ {1.285e+01 , 3.270e+00 , 2.580e+00 , 2.200e+01 , 1.060e+02 , 1.650e+00 ,
14+ 6.000e-01 , 6.000e-01 , 9.600e-01 , 5.580e+00 , 8.700e-01 , 2.110e+00 , 5.700e+02 },
15+ {1.334e+01 , 9.400e-01 , 2.360e+00 , 1.700e+01 , 1.100e+02 , 2.530e+00 ,
16+ 1.300e+00 , 5.500e-01 , 4.200e-01 , 3.170e+00 , 1.020e+00 , 1.930e+00 , 7.500e+02 },
17+ {1.423e+01 , 1.710e+00 , 2.430e+00 , 1.560e+01 , 1.270e+02 , 2.800e+00 ,
18+ 3.060e+00 , 2.800e-01 , 2.290e+00 , 5.640e+00 , 1.040e+00 , 3.920e+00 , 1.065e+03 },
19+ {1.483e+01 , 1.640e+00 , 2.170e+00 , 1.400e+01 , 9.700e+01 , 2.800e+00 ,
20+ 2.980e+00 , 2.900e-01 , 1.980e+00 , 5.200e+00 , 1.080e+00 , 2.850e+00 , 1.045e+03 },
21+ {1.245e+01 , 3.030e+00 , 2.640e+00 , 2.700e+01 , 9.700e+01 , 1.900e+00 ,
22+ 5.800e-01 , 6.300e-01 , 1.140e+00 , 7.500e+00 , 6.700e-01 , 1.730e+00 , 8.800e+02 },
23+ {1.430e+01 , 1.920e+00 , 2.720e+00 , 2.000e+01 , 1.200e+02 , 2.800e+00 ,
24+ 3.140e+00 , 3.300e-01 , 1.970e+00 , 6.200e+00 , 1.070e+00 , 2.650e+00 , 1.280e+03 },
25+ {1.390e+01 , 1.680e+00 , 2.120e+00 , 1.600e+01 , 1.010e+02 , 3.100e+00 ,
26+ 3.390e+00 , 2.100e-01 , 2.140e+00 , 6.100e+00 , 9.100e-01 , 3.330e+00 , 9.850e+02 },
27+ {1.165e+01 , 1.670e+00 , 2.620e+00 , 2.600e+01 , 8.800e+01 , 1.920e+00 ,
28+ 1.610e+00 , 4.000e-01 , 1.340e+00 , 2.600e+00 , 1.360e+00 , 3.210e+00 , 5.620e+02 },
29+ {1.386e+01 , 1.510e+00 , 2.670e+00 , 2.500e+01 , 8.600e+01 , 2.950e+00 ,
30+ 2.860e+00 , 2.100e-01 , 1.870e+00 , 3.380e+00 , 1.360e+00 , 3.160e+00 , 4.100e+02 },
31+ {1.377e+01 , 1.900e+00 , 2.680e+00 , 1.710e+01 , 1.150e+02 , 3.000e+00 ,
32+ 2.790e+00 , 3.900e-01 , 1.680e+00 , 6.300e+00 , 1.130e+00 , 2.930e+00 , 1.375e+03 },
33+ {1.296e+01 , 3.450e+00 , 2.350e+00 , 1.850e+01 , 1.060e+02 , 1.390e+00 ,
34+ 7.000e-01 , 4.000e-01 , 9.400e-01 , 5.280e+00 , 6.800e-01 , 1.750e+00 , 6.750e+02 },
35+ {1.305e+01 , 5.800e+00 , 2.130e+00 , 2.150e+01 , 8.600e+01 , 2.620e+00 ,
36+ 2.650e+00 , 3.000e-01 , 2.010e+00 , 2.600e+00 , 7.300e-01 , 3.100e+00 , 3.800e+02 },
37+ {1.182e+01 , 1.470e+00 , 1.990e+00 , 2.080e+01 , 8.600e+01 , 1.980e+00 ,
38+ 1.600e+00 , 3.000e-01 , 1.530e+00 , 1.950e+00 , 9.500e-01 , 3.330e+00 , 4.950e+02 },
39+ {1.164e+01 , 2.060e+00 , 2.460e+00 , 2.160e+01 , 8.400e+01 , 1.950e+00 ,
40+ 1.690e+00 , 4.800e-01 , 1.350e+00 , 2.800e+00 , 1.000e+00 , 2.750e+00 , 6.800e+02 },
41+ {1.303e+01 , 9.000e-01 , 1.710e+00 , 1.600e+01 , 8.600e+01 , 1.950e+00 ,
42+ 2.030e+00 , 2.400e-01 , 1.460e+00 , 4.600e+00 , 1.190e+00 , 2.480e+00 , 3.920e+02 },
43+ {1.176e+01 , 2.680e+00 , 2.920e+00 , 2.000e+01 , 1.030e+02 , 1.750e+00 ,
44+ 2.030e+00 , 6.000e-01 , 1.050e+00 , 3.800e+00 , 1.230e+00 , 2.500e+00 , 6.070e+02 },
45+ {1.439e+01 , 1.870e+00 , 2.450e+00 , 1.460e+01 , 9.600e+01 , 2.500e+00 ,
46+ 2.520e+00 , 3.000e-01 , 1.980e+00 , 5.250e+00 , 1.020e+00 , 3.580e+00 , 1.290e+03 },
47+ {1.420e+01 , 1.760e+00 , 2.450e+00 , 1.520e+01 , 1.120e+02 , 3.270e+00 ,
48+ 3.390e+00 , 3.400e-01 , 1.970e+00 , 6.750e+00 , 1.050e+00 , 2.850e+00 , 1.450e+03 },
49+ {1.368e+01 , 1.830e+00 , 2.360e+00 , 1.720e+01 , 1.040e+02 , 2.420e+00 ,
50+ 2.690e+00 , 4.200e-01 , 1.970e+00 , 3.840e+00 , 1.230e+00 , 2.870e+00 , 9.900e+02 }
51+ };
52+
53+ uint8_t y_test[20 ] = {2 , 2 , 1 , 0 , 0 , 2 , 0 , 0 , 1 , 1 , 0 , 2 , 1 , 1 , 1 , 1 , 1 , 0 , 0 , 0 };
54+
55+ void setup () {
56+ Serial.begin (115200 );
57+ nn.begin (wine_model);
58+ }
59+
60+ void loop () {
61+ for (uint8_t i = 0 ; i < 10 ; i++) {
62+ Serial.print (" Sample #" );
63+ Serial.print (i + 1 );
64+ Serial.print (" : " );
65+ Serial.print (" predicted " );
66+ Serial.print (nn.predictClass (X_test[i]));
67+ Serial.print (" vs " );
68+ Serial.print (y_test[i]);
69+ Serial.println (" actual" );
70+ }
71+
72+ delay (10000 );
73+ }
0 commit comments