aboutsummaryrefslogtreecommitdiff
path: root/src/armnnTfLiteParser/TfLiteParser.cpp
diff options
context:
space:
mode:
authorSadik Armagan <sadik.armagan@arm.com>2020-05-27 11:06:17 +0100
committerSadik Armagan <sadik.armagan@arm.com>2020-05-27 11:22:09 +0000
commit12239e7291fb04b862e44045be0a4feb7751af62 (patch)
tree0dd982182e0ce34ca36e13bd5e631b62f86974d1 /src/armnnTfLiteParser/TfLiteParser.cpp
parent0729b2febd3dfb13686b5aa43c5cea090af329f6 (diff)
downloadarmnn-12239e7291fb04b862e44045be0a4feb7751af62.tar.gz
IVGCVSW-4187 Add LEAKY_RELU to TFLite parser
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com> Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I3e934142487b92897eb487099a22d032f80e8e07
Diffstat (limited to 'src/armnnTfLiteParser/TfLiteParser.cpp')
-rw-r--r--src/armnnTfLiteParser/TfLiteParser.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/armnnTfLiteParser/TfLiteParser.cpp b/src/armnnTfLiteParser/TfLiteParser.cpp
index dcdae34872..f4f675ea98 100644
--- a/src/armnnTfLiteParser/TfLiteParser.cpp
+++ b/src/armnnTfLiteParser/TfLiteParser.cpp
@@ -502,6 +502,7 @@ TfLiteParser::TfLiteParser(const Optional<ITfLiteParser::TfLiteParserOptions>& o
m_ParserFunctions[tflite::BuiltinOperator_DEQUANTIZE] = &TfLiteParser::ParseDequantize;
m_ParserFunctions[tflite::BuiltinOperator_EXP] = &TfLiteParser::ParseExp;
m_ParserFunctions[tflite::BuiltinOperator_FULLY_CONNECTED] = &TfLiteParser::ParseFullyConnected;
+ m_ParserFunctions[tflite::BuiltinOperator_LEAKY_RELU] = &TfLiteParser::ParseLeakyRelu;
m_ParserFunctions[tflite::BuiltinOperator_LOGISTIC] = &TfLiteParser::ParseLogistic;
m_ParserFunctions[tflite::BuiltinOperator_L2_NORMALIZATION] = &TfLiteParser::ParseL2Normalization;
m_ParserFunctions[tflite::BuiltinOperator_MAX_POOL_2D] = &TfLiteParser::ParseMaxPool2D;
@@ -1888,6 +1889,11 @@ void TfLiteParser::ParseRelu6(size_t subgraphIndex, size_t operatorIndex)
ParseActivation(subgraphIndex,operatorIndex, ActivationFunction::BoundedReLu);
}
+void TfLiteParser::ParseLeakyRelu(size_t subgraphIndex, size_t operatorIndex)
+{
+ ParseActivation(subgraphIndex,operatorIndex, ActivationFunction::LeakyReLu);
+}
+
void TfLiteParser::ParseLogistic(size_t subgraphIndex, size_t operatorIndex)
{
ParseActivation(subgraphIndex,operatorIndex,ActivationFunction::Sigmoid);
@@ -1941,6 +1947,13 @@ void TfLiteParser::ParseActivation(size_t subgraphIndex, size_t operatorIndex, A
activationDesc.m_B = 1.0f;
break;
}
+ case ActivationFunction::LeakyReLu:
+ {
+ layerName += str(boost::format("LEAKYRELU:%1%:%2%") % subgraphIndex % operatorIndex);
+ const auto * options = operatorPtr->builtin_options.AsLeakyReluOptions();
+ activationDesc.m_A = options->alpha;
+ break;
+ }
default:
{
throw ParseException(