James Ward | a857810 | 2020-11-13 18:05:04 +0000 | [diff] [blame] | 1 | // |
Colm Donelan | 7bcae3c | 2024-01-22 10:07:14 +0000 | [diff] [blame] | 2 | // Copyright © 2020, 2023-2024 Arm Ltd and Contributors. All rights reserved. |
James Ward | a857810 | 2020-11-13 18:05:04 +0000 | [diff] [blame] | 3 | // SPDX-License-Identifier: MIT |
| 4 | // |
| 5 | |
| 6 | #include "SoftmaxTestHelper.hpp" |
| 7 | |
James Ward | a857810 | 2020-11-13 18:05:04 +0000 | [diff] [blame] | 8 | #include <doctest/doctest.h> |
| 9 | |
| 10 | namespace armnnDelegate |
| 11 | { |
Colm Donelan | 7bcae3c | 2024-01-22 10:07:14 +0000 | [diff] [blame] | 12 | TEST_SUITE ("SoftmaxTests") |
James Ward | a857810 | 2020-11-13 18:05:04 +0000 | [diff] [blame] | 13 | { |
| 14 | |
Colm Donelan | 7bcae3c | 2024-01-22 10:07:14 +0000 | [diff] [blame] | 15 | TEST_CASE ("Softmax_Standard_Beta_Test") |
James Ward | a857810 | 2020-11-13 18:05:04 +0000 | [diff] [blame] | 16 | { |
Colm Donelan | 7bcae3c | 2024-01-22 10:07:14 +0000 | [diff] [blame] | 17 | std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef, armnn::Compute::GpuAcc }; |
James Ward | a857810 | 2020-11-13 18:05:04 +0000 | [diff] [blame] | 18 | std::vector<float> expectedOutput = {0.00994190481, 0.0445565246, 0.0734612942, 0.329230666, 0.542809606, |
| 19 | 0.710742831, 0.158588171, 0.0961885825, 0.0214625746, 0.0130177103}; |
Colm Donelan | 7bcae3c | 2024-01-22 10:07:14 +0000 | [diff] [blame] | 20 | SoftmaxTestCase(tflite::BuiltinOperator_SOFTMAX, 1, expectedOutput, backends); |
James Ward | a857810 | 2020-11-13 18:05:04 +0000 | [diff] [blame] | 21 | } |
| 22 | |
Colm Donelan | 7bcae3c | 2024-01-22 10:07:14 +0000 | [diff] [blame] | 23 | TEST_CASE ("Softmax_Different_Beta_Test") |
James Ward | a857810 | 2020-11-13 18:05:04 +0000 | [diff] [blame] | 24 | { |
Colm Donelan | 7bcae3c | 2024-01-22 10:07:14 +0000 | [diff] [blame] | 25 | std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef, armnn::Compute::GpuAcc }; |
James Ward | a857810 | 2020-11-13 18:05:04 +0000 | [diff] [blame] | 26 | std::vector<float> expectedOutput = {0.0946234912, 0.148399189, 0.172415257, 0.270400971, 0.314161092, 0.352414012, |
| 27 | 0.224709094, 0.193408906, 0.123322964, 0.106145054}; |
Colm Donelan | 7bcae3c | 2024-01-22 10:07:14 +0000 | [diff] [blame] | 28 | SoftmaxTestCase(tflite::BuiltinOperator_SOFTMAX, 0.3, expectedOutput, backends); |
James Ward | a857810 | 2020-11-13 18:05:04 +0000 | [diff] [blame] | 29 | |
| 30 | } |
| 31 | |
Colm Donelan | 7bcae3c | 2024-01-22 10:07:14 +0000 | [diff] [blame] | 32 | TEST_CASE ("Log_Softmax_Test") |
James Ward | a857810 | 2020-11-13 18:05:04 +0000 | [diff] [blame] | 33 | { |
Colm Donelan | 7bcae3c | 2024-01-22 10:07:14 +0000 | [diff] [blame] | 34 | std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef, armnn::Compute::GpuAcc }; |
James Ward | a857810 | 2020-11-13 18:05:04 +0000 | [diff] [blame] | 35 | std::vector<float> expectedOutput = |
| 36 | {-4.61099672, -3.11099672, -2.61099672, -1.11099672, -0.610996664, |
| 37 | -0.341444582, -1.84144461, -2.34144449, -3.84144449, -4.34144449}; |
Colm Donelan | 7bcae3c | 2024-01-22 10:07:14 +0000 | [diff] [blame] | 38 | SoftmaxTestCase(tflite::BuiltinOperator_LOG_SOFTMAX, 0, expectedOutput, backends); |
James Ward | a857810 | 2020-11-13 18:05:04 +0000 | [diff] [blame] | 39 | } |
Colm Donelan | 7bcae3c | 2024-01-22 10:07:14 +0000 | [diff] [blame] | 40 | } // TEST_SUITE ("SoftmaxTests") |
James Ward | a857810 | 2020-11-13 18:05:04 +0000 | [diff] [blame] | 41 | |
James Ward | a857810 | 2020-11-13 18:05:04 +0000 | [diff] [blame] | 42 | } // namespace armnnDelegate |