diff options
Diffstat (limited to 'arm_compute/graph')
-rw-r--r-- | arm_compute/graph/backends/FunctionHelpers.h | 3 | ||||
-rw-r--r-- | arm_compute/graph/nodes/FullyConnectedLayerNode.h | 11 |
2 files changed, 11 insertions, 3 deletions
diff --git a/arm_compute/graph/backends/FunctionHelpers.h b/arm_compute/graph/backends/FunctionHelpers.h index 16536bcb65..978d3bc1a8 100644 --- a/arm_compute/graph/backends/FunctionHelpers.h +++ b/arm_compute/graph/backends/FunctionHelpers.h @@ -524,10 +524,11 @@ std::unique_ptr<IFunction> create_fully_connected_layer(FullyConnectedLayerNode typename TargetInfo::TensorType *weights = get_backing_tensor<TargetInfo>(node.input(1)); typename TargetInfo::TensorType *biases = get_backing_tensor<TargetInfo>(node.input(2)); typename TargetInfo::TensorType *output = get_backing_tensor<TargetInfo>(node.output(0)); + const FullyConnectedLayerInfo fc_info = node.info(); // Create and configure function auto func = support::cpp14::make_unique<FullyConnectedLayerFunction>(get_memory_manager(ctx, TargetInfo::TargetType)); - func->configure(input, weights, biases, output); + func->configure(input, weights, biases, output, fc_info); ARM_COMPUTE_ERROR_ON(input == nullptr); ARM_COMPUTE_ERROR_ON(weights == nullptr); ARM_COMPUTE_ERROR_ON(output == nullptr); diff --git a/arm_compute/graph/nodes/FullyConnectedLayerNode.h b/arm_compute/graph/nodes/FullyConnectedLayerNode.h index 3d1b68909a..79201c8bdc 100644 --- a/arm_compute/graph/nodes/FullyConnectedLayerNode.h +++ b/arm_compute/graph/nodes/FullyConnectedLayerNode.h @@ -37,8 +37,9 @@ public: /** Constructor * * @param[in] num_outputs Number of neurons in the layer + * @param[in] fc_info (Optional) Additional information about the fully connected layer */ - FullyConnectedLayerNode(unsigned int num_outputs); + FullyConnectedLayerNode(unsigned int num_outputs, FullyConnectedLayerInfo fc_info = FullyConnectedLayerInfo()); /** Computes weights descriptor * * @warning Works for inputs with 1D batch space @@ -59,6 +60,11 @@ public: * @return Output descriptor */ static TensorDescriptor compute_output_descriptor(const TensorDescriptor &input_descriptor, unsigned int num_outputs); + /** Fully connected layer addition information + * + * @return Additional information about the fully connected layer + */ + FullyConnectedLayerInfo info() const; // Inherited overridden methods: NodeType type() const override; @@ -67,7 +73,8 @@ public: void accept(INodeVisitor &v) override; private: - unsigned int _num_outputs; + unsigned int _num_outputs; + FullyConnectedLayerInfo _info; }; } // namespace graph } // namespace arm_compute |