MPSRNNSingleGateDescriptor(3)
NAME
MPSRNNSingleGateDescriptor
SYNOPSIS
#import <MPSRNNLayer.h>
Inherits MPSRNNDescriptor.
Class Methods
(nonnull instancetype) +
createRNNSingleGateDescriptorWithInputFeatureChannels:outputFeatureChannels:
Properties
id< MPSCNNConvolutionDataSource > inputWeights
id< MPSCNNConvolutionDataSource > recurrentWeights
Detailed Description
This depends on Metal.framework The MPSRNNSingleGateDescriptor
specifies a simple recurrent block/layer descriptor. The RNN layer
initialized with a MPSRNNSingleGateDescriptor transforms the input data
(image or matrix), and previous output with a set of filters, each
producing one feature map in the new output data. The user may provide
the RNN unit a single input or a sequence of inputs.
Description of operation:
Let x_j be the input data (at time index t of sequence, j index
containing quadruplet: batch index, x,y and feature index (x=y=0 for
matrices)). Let h0_j be the recurrent input (previous output) data from
previous time step (at time index t-1 of sequence). Let h1_i be the
output data produced at this time step.
Let W_ij, U_ij be the weights for input and recurrent input data
respectively Let b_i be a bias term
Let gi(x) be a neuron activation function
Then the new output image h1_i data is computed as follows:
h1_i = gi( W_ij * x_j + U_ij * h0_j + b_i )
The '*' stands for convolution (see MPSRNNImageInferenceLayer) or
matrix-vector/matrix multiplication (see MPSRNNMatrixInferenceLayer).
Summation is over index j (except for the batch index), but there is no
summation over repeated index i - the output index. Note that for
validity all intermediate images have to be of same size and the U
matrix has to be square (ie. outputFeatureChannels ==
inputFeatureChannels in those). Also the bias terms are scalars wrt.
spatial dimensions.
Method Documentation
+ (nonnull instancetype)
createRNNSingleGateDescriptorWithInputFeatureChannels: (NSUInteger)
inputFeatureChannels(NSUInteger) outputFeatureChannels
Creates a MPSRNNSingleGateDescriptor
Parameters:
inputFeatureChannels The number of feature channels in the input
image/matrix. Must be >= 1.
outputFeatureChannels The number of feature channels in the output
image/matrix. Must be >= 1.
Returns:
A valid MPSRNNSingleGateDescriptor object or nil, if failure.
Property Documentation
- inputWeights [read], [write], [nonatomic], [retain]
Contains weights 'W_ij', bias 'b_i' and neuron 'gi' from the simple RNN
layer formula. If nil then assumed zero weights, bias and no neuron
(identity mapping). Defaults to nil.
- recurrentWeights [read], [write], [nonatomic], [retain]
Contains weights 'U_ij' from the simple RNN layer formula. If nil then
assumed zero weights. Defaults to nil.
Author
Generated automatically by Doxygen for
MetalPerformanceShaders.framework from the source code.
Version MetalPerformanceShaders-Thu2Jul 13 2017 MPSRNNSingleGateDescriptor(3)
Mac OS X 10.12.6 - Generated Tue Oct 31 19:56:11 CDT 2017