diff options
author | A. Unique TensorFlower <gardener@tensorflow.org> | 2018-06-08 13:14:59 -0700 |
---|---|---|
committer | TensorFlower Gardener <gardener@tensorflow.org> | 2018-06-08 13:18:20 -0700 |
commit | 3b81d6e6055c529c00a165fd8e3431a6ba704e8e (patch) | |
tree | c49f2661b14d3af7587634d21300004440712672 /tensorflow/contrib/lite/toco/import_tensorflow.cc | |
parent | 9affc2080bf9840f4c7da2990ba528114e25d3b1 (diff) |
Optimizing transpose_conv.
PiperOrigin-RevId: 199839745
Diffstat (limited to 'tensorflow/contrib/lite/toco/import_tensorflow.cc')
-rw-r--r-- | tensorflow/contrib/lite/toco/import_tensorflow.cc | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/tensorflow/contrib/lite/toco/import_tensorflow.cc b/tensorflow/contrib/lite/toco/import_tensorflow.cc index 8dd43dda3e..a2241c85a7 100644 --- a/tensorflow/contrib/lite/toco/import_tensorflow.cc +++ b/tensorflow/contrib/lite/toco/import_tensorflow.cc @@ -1445,11 +1445,13 @@ void ConvertTransposeConvOperator(const NodeDef& node, if (existing_transpose) { CHECK(existing_transpose->type == OperatorType::kTranspose); } else { - // Transpose weights from HWIO order to OHWI order, which is more efficient - // for computation + // Transpose weights from HWOI order to OHWI order, which is more efficient + // for computation. (Note that TensorFlow considers the order as HWIO + // because they consider this a backward conv, inverting the sense of + // input/output.) TransposeOperator* transpose = new TransposeOperator; string perm_array = CreateConstArray<ArrayDataType::kInt32>( - model, node.name() + "_transpose_perm", {3, 0, 1, 2}); + model, node.name() + "_transpose_perm", {2, 0, 1, 3}); transpose->inputs = {weights_name, perm_array}; transpose->outputs = {transposed_weights_name}; model->operators.emplace_back(transpose); |