COMPMID-516 Change the CL CNN validation functions to use relative
tolerance error

Change-Id: Iec6347af26ea2a83c911f5fe10e6048e8a2a47ba
Reviewed-on: http://mpd-gerrit.cambridge.arm.com/85381
Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com>
Reviewed-by: Moritz Pflanzer <moritz.pflanzer@arm.com>
diff --git a/tests/validation/CL/FullyConnectedLayer.cpp b/tests/validation/CL/FullyConnectedLayer.cpp
index 7a8734b..356e967 100644
--- a/tests/validation/CL/FullyConnectedLayer.cpp
+++ b/tests/validation/CL/FullyConnectedLayer.cpp
@@ -44,8 +44,10 @@
 namespace
 {
 /** Tolerance for float operations */
-constexpr AbsoluteTolerance<float> tolerance_f32(0.001f);
-constexpr AbsoluteTolerance<float> tolerance_f16(0.4f);
+RelativeTolerance<float>            tolerance_f32(0.001f);
+RelativeTolerance<half_float::half> tolerance_f16(half_float::half(0.2));
+constexpr float                     tolerance_num = 0.07f; /**< Tolerance number */
+
 /** Tolerance for fixed point operations */
 constexpr AbsoluteTolerance<float> tolerance_fixed_point(1.f);
 
@@ -112,14 +114,14 @@
                        framework::dataset::make("DataType", DataType::F16)))
 {
     // Validate output
-    validate(CLAccessor(_target), _reference, tolerance_f16);
+    validate(CLAccessor(_target), _reference, tolerance_f16, tolerance_num);
 }
 FIXTURE_DATA_TEST_CASE(RunLarge, CLFullyConnectedLayerFixture<half_float::half>, framework::DatasetMode::NIGHTLY, combine(combine(datasets::LargeFullyConnectedLayerDataset(),
                        FullyConnectedParameters),
                        framework::dataset::make("DataType", DataType::F16)))
 {
     // Validate output
-    validate(CLAccessor(_target), _reference, tolerance_f16);
+    validate(CLAccessor(_target), _reference, tolerance_f16, tolerance_num);
 }
 TEST_SUITE_END()