diff options
author | Matthew Sloyan <matthew.sloyan@arm.com> | 2020-12-16 12:50:01 +0000 |
---|---|---|
committer | Jim Flynn <jim.flynn@arm.com> | 2020-12-17 12:20:58 +0000 |
commit | 7515d0730acc926316886a85401bcd36f640627e (patch) | |
tree | 97b312e641e7419b14dd6f7b1686afc6b56e788b /src/armnnTfLiteParser/TfLiteParser.cpp | |
parent | df82f3abc8acc90acfd56f18744a8cae201a759a (diff) | |
download | armnn-7515d0730acc926316886a85401bcd36f640627e.tar.gz |
IVGCVSW-5614 Enable Hard Swish and Elu activations
* Enabled Hard Swish and Elu in TfLiteDelegate
* Added support for Elu in TfLiteParser
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: If09321b58568a98e14cabce610a1586556da041e
Diffstat (limited to 'src/armnnTfLiteParser/TfLiteParser.cpp')
-rw-r--r-- | src/armnnTfLiteParser/TfLiteParser.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/armnnTfLiteParser/TfLiteParser.cpp b/src/armnnTfLiteParser/TfLiteParser.cpp index c3d56b13d3..9d9f4fa14b 100644 --- a/src/armnnTfLiteParser/TfLiteParser.cpp +++ b/src/armnnTfLiteParser/TfLiteParser.cpp @@ -549,6 +549,7 @@ TfLiteParser::TfLiteParser(const Optional<ITfLiteParser::TfLiteParserOptions>& o m_ParserFunctions[tflite::BuiltinOperator_CUSTOM] = &TfLiteParser::ParseCustomOperator; m_ParserFunctions[tflite::BuiltinOperator_DEPTHWISE_CONV_2D] = &TfLiteParser::ParseDepthwiseConv2D; m_ParserFunctions[tflite::BuiltinOperator_DEQUANTIZE] = &TfLiteParser::ParseDequantize; + m_ParserFunctions[tflite::BuiltinOperator_ELU] = &TfLiteParser::ParseElu; m_ParserFunctions[tflite::BuiltinOperator_EXP] = &TfLiteParser::ParseExp; m_ParserFunctions[tflite::BuiltinOperator_FULLY_CONNECTED] = &TfLiteParser::ParseFullyConnected; m_ParserFunctions[tflite::BuiltinOperator_HARD_SWISH] = &TfLiteParser::ParseHardSwish; @@ -1928,6 +1929,11 @@ void TfLiteParser::ParseTanH(size_t subgraphIndex, size_t operatorIndex) ParseActivation(subgraphIndex,operatorIndex,ActivationFunction::TanH); } +void TfLiteParser::ParseElu(size_t subgraphIndex, size_t operatorIndex) +{ + ParseActivation(subgraphIndex, operatorIndex, ActivationFunction::Elu); +} + void TfLiteParser::ParseHardSwish(size_t subgraphIndex, size_t operatorIndex) { ParseActivation(subgraphIndex, operatorIndex, ActivationFunction::HardSwish); @@ -1982,9 +1988,17 @@ void TfLiteParser::ParseActivation(size_t subgraphIndex, size_t operatorIndex, A activationDesc.m_A = options->alpha; break; } + case ActivationFunction::Elu: + { + layerName += fmt::format("ELU:{}:{}", subgraphIndex, operatorIndex); + activationDesc.m_A = 1.0f; + break; + } case ActivationFunction::HardSwish: + { layerName += fmt::format("HARDSWISH:{}:{}", subgraphIndex, operatorIndex); break; + } default: { throw ParseException( |