| MPSAccelerationStructure |
A data structure built over geometry used to accelerate ray tracing
Do not use this base class directly.
|
| MPSAccelerationStructureGroup |
A group of acceleration structures which may be used together in an instance acceleration
structure.
|
| MPSBinaryImageKernel |
MPSBinaryImageKernel
[@dependency] This depends on Metal.framework
A MPSBinaryImageKernel consumes two MTLTextures and produces one MTLTexture.
|
| MPSCNNAdd |
MPSCNNAdd
[@dependency] This depends on Metal.framework.
|
| MPSCNNAddGradient |
MPSCNNAddGradient
[@dependency] This depends on Metal.framework.
|
| MPSCNNArithmetic |
MPSCNNArithmetic
[@dependency] This depends on Metal.framework
The MPSCNNArithmetic filter takes two source images, a primary source image and a
secondary source image, and outputs a single destination image.
|
| MPSCNNArithmeticGradient |
MPSCNNArithmeticGradient
[@dependency] This depends on Metal.framework
The MPSCNNArithmeticGradient filter is the backward filter for the MPSCNNArithmetic
forward filter.
|
| MPSCNNArithmeticGradientState |
MPSCNNArithmeticGradientState
[@dependency] This depends on Metal.framework.
|
| MPSCNNBatchNormalization |
MPSCNNBatchNormalization
[@dependency] This depends on Metal.framework
MPSCNNBatchNormalization normalizes input images using per-channel
means and variances.
|
| MPSCNNBatchNormalizationGradient |
MPSCNNBatchNormalizationGradient
[@dependency] This depends on Metal.framework
MPSCNNBatchNormalizationGradient computes the gradients of a
loss function resulting from a network containing a corresponding
MPSCNNBatchNormalization kernel.
|
| MPSCNNBatchNormalizationGradientNode |
MPSCNNBatchNormalizationGradientNode
A node representing batch normalization gradient for training
This filter encapsulates the MPSCNNBatchNormalizationStatisticsGradient
and MPSCNNBatchNormalizationGradient low level filters as a single
node.
|
| MPSCNNBatchNormalizationNode |
MPSCNNBatchNormalizationNode
A node representing batch normalization for inference or training
Batch normalization operates differently for inference and training.
|
| MPSCNNBatchNormalizationState |
MPSCNNBatchNormalizationState
MPSCNNBatchNormalizationState encapsulates the data necessary
to execute batch normalization.
|
| MPSCNNBatchNormalizationStatistics |
MPSCNNBatchNormalizationStatistics
[@dependency] This depends on Metal.framework
MPSCNNBatchNormalizationStatistics updates a MPSCNNBatchNormalizationState
with the batch statistics necessary to perform a batch normalization.
|
| MPSCNNBatchNormalizationStatisticsGradient |
MPSCNNBatchNormalizationStatisticsGradient
[@dependency] This depends on Metal.framework
MPSCNNBatchNormalizationStatisticsGradient updates a MPSCNNBatchNormalizationState
with the gradient of the loss function with respect to the batch statistics and
batch normalization weights used to perform a batch normalization.
|
| MPSCNNBinaryConvolution |
MPSCNNBinaryConvolution
[@dependency] This depends on Metal.framework
The MPSCNNBinaryConvolution specifies a convolution with binary weights and an input image using binary approximations.
|
| MPSCNNBinaryConvolutionNode |
A MPSNNFilterNode representing a MPSCNNBinaryConvolution kernel
|
| MPSCNNBinaryFullyConnected |
MPSCNNBinaryFullyConnected
[@dependency] This depends on Metal.framework
The MPSCNNBinaryFullyConnected specifies a fully connected convolution layer with binary weights
and optionally binarized input image.
|
| MPSCNNBinaryFullyConnectedNode |
A MPSNNFilterNode representing a MPSCNNBinaryFullyConnected kernel
|
| MPSCNNBinaryKernel |
MPSCNNBinaryKernel
[@dependency] This depends on Metal.framework
Describes a convolution neural network kernel.
|
| MPSCNNConvolution |
MPSCNNConvolution
[@dependency] This depends on Metal.framework
The MPSCNNConvolution specifies a convolution.
|
| MPSCNNConvolutionDescriptor |
MPSCNNConvolutionDescriptor
[@dependency] This depends on Metal.framework
The MPSCNNConvolutionDescriptor specifies a convolution descriptor
|
| MPSCNNConvolutionGradient |
MPSCNNConvolutionGradient
[@dependency] This depends on Metal.framework
The MPSCNNConvolutionGradient implementents backward propagation of gradient i.e. it computes the gradient of loss function
with respect input data of corresonding forward convolution and gradient of loss function with respect to weights and bias
of corresponding convolution in forward pass.
|
| MPSCNNConvolutionGradientNode |
|
| MPSCNNConvolutionGradientState |
MPSCNNConvolutionGradientState
The MPSCNNConvolutionGradientState is returned by resultStateForSourceImage:sourceStates method on MPSCNNConvolution object.
|
| MPSCNNConvolutionGradientStateNode |
|
| MPSCNNConvolutionNode |
A MPSNNFilterNode representing a MPSCNNConvolution kernel
|
| MPSCNNConvolutionTranspose |
MPSCNNConvolutionTranspose
[@dependency] This depends on Metal.framework
The MPSCNNConvolutionTranspose specifies a transposed convolution.
|
| MPSCNNConvolutionTransposeGradient |
MPSCNNConvolutionTransposeGradient
[@dependency] This depends on Metal.framework
The MPSCNNConvolutionTransposeGradient implementents backward propagation of gradient for MPSCNNConvolutionTranspose forward filter
|
| MPSCNNConvolutionTransposeGradientNode |
|
| MPSCNNConvolutionTransposeGradientState |
MPSCNNConvolutionTransposeGradientState
The MPSCNNConvolutionTransposeGradientState is returned by resultStateForSourceImage:sourceStates method on MPSCNNConvolutionTranspose object.
|
| MPSCNNConvolutionTransposeGradientStateNode |
|
| MPSCNNConvolutionTransposeNode |
A MPSNNFilterNode representing a MPSCNNConvolutionTranspose kernel
|
| MPSCNNConvolutionWeightsAndBiasesState |
MPSCNNConvolutionWeightsAndBiasesState
The MPSCNNConvolutionWeightsAndBiasesState is returned by exportWeightsAndBiasesWithCommandBuffer: method on MPSCNNConvolution object.
|
| MPSCNNCrossChannelNormalization |
MPSCNNCrossChannelNormalization
[@dependency] This depends on Metal.framework
Specifies the normalization filter across feature channels.
|
| MPSCNNCrossChannelNormalizationGradient |
MPSCNNCrossChannelNormalizationGradient
[@dependency] This depends on Metal.framework
Specifies the normalization gradient filter across feature channels.
|
| MPSCNNCrossChannelNormalizationGradientNode |
|
| MPSCNNCrossChannelNormalizationNode |
Node representing MPSCNNCrossChannelNormalization
The normalized output is given by:
Y(i,j,k) = X(i,j,k) / L(i,j,k)^beta,
where the normalizing factor is:
L(i,j,k) = delta + alpha/N * (sum_{q in Q(k)} X(i,j,q)^2, where
N is the kernel size.
|
| MPSCNNDepthWiseConvolutionDescriptor |
MPSCNNDepthWiseConvolutionDescriptor can be used to create MPSCNNConvolution object that does depthwise convolution
Depthwise convolution applies different filter to each input feature channel i.e. no cross channel mixing.
|
| MPSCNNDilatedPoolingMax |
MPSCNNDilatedPoolingMax
[@dependency] This depends on Metal.framework
Specifies the dilated max pooling filter.
|
| MPSCNNDilatedPoolingMaxGradient |
MPSCNNDilatedPoolingMaxGradient
[@dependency] This depends on Metal.framework
Specifies the filter for computing the gradient of the dilated max pooling filter.
|
| MPSCNNDilatedPoolingMaxGradientNode |
|
| MPSCNNDilatedPoolingMaxNode |
A node for a MPSCNNDilatedPooling kernel
This class corresponds to the MPSCNNDilatedPooling class.
|
| MPSCNNDivide |
MPSCNNDivide
[@dependency] This depends on Metal.framework.
|
| MPSCNNDropout |
MPSCNNDropout
[@dependency] This depends on Metal.framework
Dropout is a regularization technique used to prevent neural networks from
overfitting during training.
|
| MPSCNNDropoutGradient |
MPSCNNDropoutGradient
[@dependency] This depends on Metal.framework
This filter is the backward filter for the MPSCNNDropout forward filter.
|
| MPSCNNDropoutGradientNode |
|
| MPSCNNDropoutGradientState |
MPSCNNDropoutGradientState
[@dependency] This depends on Metal.framework.
|
| MPSCNNDropoutNode |
|
| MPSCNNFullyConnected |
MPSCNNFullyConnected
[@dependency] This depends on Metal.framework
The MPSCNNFullyConnected specifies a fully connected convolution layer a.k.a.
|
| MPSCNNFullyConnectedGradient |
MPSCNNFullyConnectedGradient
[@dependency] This depends on Metal.framework
Compute the gradient for fully connected layer.
|
| MPSCNNFullyConnectedGradientNode |
|
| MPSCNNFullyConnectedNode |
A MPSNNFilterNode representing a MPSCNNFullyConnected kernel
|
| MPSCNNGradientKernel |
MPSCNNGradientKernel
Gradient kernels are the backwards pass of a MPSCNNKernel
used during training to calculate gradient back propagation.
|
| MPSCNNGroupNormalization |
MPSCNNGroupNormalization
[@dependency] This depends on Metal.framework
This kernel normalizes each image, on a per-group basis, to
have zero mean and unit variance:
for each image:
for each channel:
y = (x - mean) * gamma / sqrt(variance + epsilon) + beta;
The mean and variance are computed per group of channels, as given by the dataSource.
|
| MPSCNNGroupNormalizationGradient |
MPSCNNGroupNormalizationGradient
[@dependency] This depends on Metal.framework
This kernel executes a gradient pass corresponding to MPSCNNGroupNormalization.
|
| MPSCNNGroupNormalizationGradientNode |
|
| MPSCNNGroupNormalizationGradientState |
MPSCNNGroupNormalizationGradientState
[@dependency] This depends on Metal.framework
A state to hold information necessary to execute a gradient
pass for MPSCNNGroupNormalization.
|
| MPSCNNGroupNormalizationNode |
|
| MPSCNNInstanceNormalization |
MPSCNNInstanceNormalization
[@dependency] This depends on Metal.framework
This kernel normalizes each image, on a per-channel basis, to
have zero mean and unit variance:
for each image:
for each channel:
y = (x - mean) * gamma / sqrt(variance + epsilon) + beta;
|
| MPSCNNInstanceNormalizationGradient |
MPSCNNInstanceNormalizationGradient
[@dependency] This depends on Metal.framework
This kernel executes a gradient pass corresponding to MPSCNNInstanceNormalization.
|
| MPSCNNInstanceNormalizationGradientNode |
|
| MPSCNNInstanceNormalizationGradientState |
MPSCNNInstanceNormalizationGradientState
[@dependency] This depends on Metal.framework
A state to hold information necessary to execute a gradient
pass for MPSCNNInstanceNormalization.
|
| MPSCNNInstanceNormalizationNode |
|
| MPSCNNKernel |
MPSCNNKernel
[@dependency] This depends on Metal.framework
Describes a convolution neural network kernel.
|
| MPSCNNLocalContrastNormalization |
MPSCNNLocalContrastNormalization
[@dependency] This depends on Metal.framework
Specifies the local contrast normalization filter.
|
| MPSCNNLocalContrastNormalizationGradient |
MPSCNNLocalContrastNormalizationGradient
[@dependency] This depends on Metal.framework
Specifies the local contrast normalization gradient filter.
|
| MPSCNNLocalContrastNormalizationGradientNode |
|
| MPSCNNLocalContrastNormalizationNode |
Node representing MPSCNNLocalContrastNormalization
The result is computed for each element of X as follows:
Y(i,j) = pm + ps * ( X(i,j) - p0 * M(i,j)) / pow((delta + alpha * variance(i,j)), beta),
where kw and kh are the kernelWidth and the kernelHeight and pm, ps and p0 are parameters that
can be used to offset and scale the result in various ways. *
[@code]
Defaults:
alpha = 1.0f
beta = 0.5f
delta = 2^-10
pm = 0
ps = 1
p0 = 1
kernelHeight = kernelWidth = kernelSize
[@endcode]
|
| MPSCNNLogSoftMax |
MPSCNNLogSoftMax
[@dependency] This depends on Metal.framework
The logarithmic softMax filter can be achieved by taking the natural logarithm of the
the result of the softMax filter.
|
| MPSCNNLogSoftMaxGradient |
MPSCNNLogSoftMaxGradient
[@dependency] This depends on Metal.framework
The logSoftMax gradient filter calculates the gradient to be backpropagated.
|
| MPSCNNLogSoftMaxGradientNode |
Node representing a MPSCNNLogSoftMaxGradient kernel
|
| MPSCNNLogSoftMaxNode |
Node representing a MPSCNNLogSoftMax kernel
|
| MPSCNNLoss |
MPSCNNLoss
[@dependency] This depends on Metal.framework.
|
| MPSCNNLossDataDescriptor |
MPSCNNLossDataDescriptor
[@dependency] This depends on Metal.framework.
|
| MPSCNNLossDescriptor |
MPSCNNLossDescriptor
[@dependency] This depends on Metal.framework.
|
| MPSCNNLossLabels |
MPSCNNLossLabels
[@dependency] This depends on Metal.framework.
|
| MPSCNNLossNode |
MPSCNNLossNode
This node calculates loss information during training
typically immediately after the inference portion
of network evaluation is performed.
|
| MPSCNNMultiaryKernel |
MPSCNNMultiaryKernel
[@dependency] This depends on Metal.framework
Describes a neural network kernel with multiple image sources.
|
| MPSCNNMultiply |
MPSCNNMultiply
[@dependency] This depends on Metal.framework.
|
| MPSCNNMultiplyGradient |
MPSCNNMultiplyGradient
[@dependency] This depends on Metal.framework.
|
| MPSCNNNeuron |
MPSCNNNeuron
[@dependency] This depends on Metal.framework
This filter applies a neuron activation function.
|
| MPSCNNNeuronAbsolute |
MPSCNNNeuronAbsolute
[@dependency] This depends on Metal.framework
Specifies the absolute neuron filter.
|
| MPSCNNNeuronAbsoluteNode |
A node representing a MPSCNNNeuronAbsolute kernel
For each pixel, applies the following function:
[@code]
f(x) = fabs(x)
[@endcode]
|
| MPSCNNNeuronELU |
MPSCNNNeuronELU
[@dependency] This depends on Metal.framework
Specifies the parametric ELU neuron filter.
|
| MPSCNNNeuronELUNode |
A node representing a MPSCNNNeuronELU kernel
For each pixel, applies the following function:
[@code]
f(x) = a * exp(x) - 1, x < 0
x , x >= 0
[@endcode]
|
| MPSCNNNeuronExponential |
MPSCNNNeuronExponential
[@dependency] This depends on Metal.framework.
|
| MPSCNNNeuronExponentialNode |
A node representing a MPSCNNNeuronExponential kernel
For each pixel, applies the following function:
[@code]
f(x) = c ^ (a * x + b)
[@endcode]
|
| MPSCNNNeuronGeLUNode |
A node representing a MPSCNNNeuronGeLU kernel
For each pixel, applies the following function:
|
| MPSCNNNeuronGradient |
MPSCNNNeuronGradient
[@dependency] This depends on Metal.framework
This filter is a backward filter for the neuron activation function filter.
|
| MPSCNNNeuronGradientNode |
A node representing a MPSCNNNeuronGradient
We use one generic neuron gradient node
instead of having dozens of subclasses.
|
| MPSCNNNeuronHardSigmoid |
MPSCNNNeuronHardSigmoid
[@dependency] This depends on Metal.framework
Specifies the hard sigmoid neuron filter.
|
| MPSCNNNeuronHardSigmoidNode |
A node representing a MPSCNNNeuronHardSigmoid kernel
For each pixel, applies the following function:
[@code]
f(x) = clamp((a * x) + b, 0, 1)
[@endcode]
|
| MPSCNNNeuronLinear |
MPSCNNNeuronLinear
[@dependency] This depends on Metal.framework
Specifies the linear neuron filter.
|
| MPSCNNNeuronLinearNode |
A node representing a MPSCNNNeuronLinear kernel
For each pixel, applies the following function:
[@code]
f(x) = a * x + b
[@endcode]
|
| MPSCNNNeuronLogarithm |
MPSCNNNeuronLogarithm
[@dependency] This depends on Metal.framework.
|
| MPSCNNNeuronLogarithmNode |
A node representing a MPSCNNNeuronLogarithm kernel
For each pixel, applies the following function:
[@code]
f(x) = log_c(a * x + b)
[@endcode]
|
| MPSCNNNeuronNode |
virtual base class for MPSCNNNeuron nodes
This is a virtual base class only.
|
| MPSCNNNeuronPower |
MPSCNNNeuronPower
[@dependency] This depends on Metal.framework.
|
| MPSCNNNeuronPowerNode |
A node representing a MPSCNNNeuronPower kernel
For each pixel, applies the following function:
[@code]
f(x) = (a * x + b) ^ c
[@endcode]
|
| MPSCNNNeuronPReLU |
MPSCNNNeuronPReLU
[@dependency] This depends on Metal.framework
Specifies the parametric ReLU neuron filter.
|
| MPSCNNNeuronPReLUNode |
A ReLU node with parameter a provided independently for each feature channel
For each pixel, applies the following function:
[@code]
f(x) = x if x >= 0
= aData[i] * x if x < 0, i is the index of the feature channel
[@endcode]
|
| MPSCNNNeuronReLU |
MPSCNNNeuronReLU
[@dependency] This depends on Metal.framework
Specifies the ReLU neuron filter.
|
| MPSCNNNeuronReLUN |
MPSCNNNeuronReLUN
[@dependency] This depends on Metal.framework
Specifies the ReLUN neuron filter.
|
| MPSCNNNeuronReLUNNode |
A node representing a MPSCNNNeuronReLUN kernel
For each pixel, applies the following function:
[@code]
f(x) = min((x >= 0 ?
|
| MPSCNNNeuronReLUNode |
A node representing a MPSCNNNeuronReLU kernel
For each pixel, applies the following function:
[@code]
f(x) = x if x >= 0
= a * x if x < 0
[@endcode]
|
| MPSCNNNeuronSigmoid |
MPSCNNNeuronSigmoid
[@dependency] This depends on Metal.framework
Specifies the sigmoid neuron filter.
|
| MPSCNNNeuronSigmoidNode |
A node representing a MPSCNNNeuronSigmoid kernel
For each pixel, applies the following function:
[@code]
f(x) = 1 / (1 + e^-x)
[@endcode]
|
| MPSCNNNeuronSoftPlus |
MPSCNNNeuronSoftPlus
[@dependency] This depends on Metal.framework
Specifies the parametric softplus neuron filter.
|
| MPSCNNNeuronSoftPlusNode |
A node representing a MPSCNNNeuronSoftPlus kernel
For each pixel, applies the following function:
[@code]
f(x) = a * log(1 + e^(b * x))
[@endcode]
|
| MPSCNNNeuronSoftSign |
MPSCNNNeuronSoftSign
[@dependency] This depends on Metal.framework
Specifies the softsign neuron filter.
|
| MPSCNNNeuronSoftSignNode |
A node representing a MPSCNNNeuronSoftSign kernel
For each pixel, applies the following function:
[@code]
f(x) = x / (1 + abs(x))
[@endcode]
|
| MPSCNNNeuronTanH |
MPSCNNNeuronTanH
[@dependency] This depends on Metal.framework
Specifies the hyperbolic tangent neuron filter.
|
| MPSCNNNeuronTanHNode |
A node representing a MPSCNNNeuronTanH kernel
For each pixel, applies the following function:
[@code]
f(x) = a * tanh(b * x)
[@endcode]
|
| MPSCNNNormalizationGammaAndBetaState |
MPSCNNNormalizationGammaAndBetaState
[@description] A state which contains gamma and beta terms used to apply a scale
and bias in either an MPSCNNInstanceNormalization or MPSCNNBatchNormalization
operation.
|
| MPSCNNNormalizationMeanAndVarianceState |
MPSCNNNormalizationMeanAndVarianceState
[@description] A state which contains mean and variance terms used to apply a
normalization in a MPSCNNBatchNormalization operation.
|
| MPSCNNNormalizationNode |
virtual base class for CNN normalization nodes
|
| MPSCNNPooling |
MPSCNNPooling
[@dependency] This depends on Metal.framework
Pooling is a form of non-linear sub-sampling.
|
| MPSCNNPoolingAverage |
MPSCNNPoolingAverage
[@dependency] This depends on Metal.framework
Specifies the average pooling filter.
|
| MPSCNNPoolingAverageGradient |
MPSCNNPoolingAverageGradient
[@dependency] This depends on Metal.framework
Specifies the filter for computing the gradient of the average pooling filter.
|
| MPSCNNPoolingAverageGradientNode |
|
| MPSCNNPoolingAverageNode |
A node representing a MPSCNNPoolingAverage kernel
The default edge mode is MPSImageEdgeModeClamp
|
| MPSCNNPoolingGradient |
MPSCNNPoolingGradient
[@dependency] This depends on Metal.framework
Specifies the base class for computing the gradient of the pooling filters.
|
| MPSCNNPoolingGradientNode |
|
| MPSCNNPoolingL2Norm |
MPSCNNPoolingL2Norm
[@dependency] This depends on Metal.framework
Specifies the L2-norm pooling filter.
|
| MPSCNNPoolingL2NormGradient |
MPSCNNPoolingL2NormGradient
[@dependency] This depends on Metal.framework
Specifies the filter for computing the gradient of the L2-Norm pooling filter.
|
| MPSCNNPoolingL2NormGradientNode |
|
| MPSCNNPoolingL2NormNode |
A node representing a MPSCNNPoolingL2Norm kernel
The default edge mode is MPSImageEdgeModeClamp
|
| MPSCNNPoolingMax |
MPSCNNPoolingMax
[@dependency] This depends on Metal.framework
Specifies the max pooling filter.
|
| MPSCNNPoolingMaxGradient |
MPSCNNPoolingMaxGradient
[@dependency] This depends on Metal.framework
Specifies the filter for computing the gradient of the max pooling filter.
|
| MPSCNNPoolingMaxGradientNode |
|
| MPSCNNPoolingMaxNode |
A node representing a MPSCNNPoolingMax kernel
The default edge mode is MPSImageEdgeModeClamp
|
| MPSCNNPoolingNode |
A node for a MPSCNNPooling kernel
This is an abstract base class that does not correspond with any
particular MPSCNNKernel.
|
| MPSCNNSoftMax |
MPSCNNSoftMax
[@dependency] This depends on Metal.framework
The softMax filter is a neural transfer function and is useful for classification tasks.
|
| MPSCNNSoftMaxGradient |
MPSCNNSoftMaxGradient
[@dependency] This depends on Metal.framework
The softMax gradient filter calculates the gradient to be backpropagated.
|
| MPSCNNSoftMaxGradientNode |
Node representing a MPSCNNSoftMaxGradient kernel
|
| MPSCNNSoftMaxNode |
Node representing a MPSCNNSoftMax kernel
|
| MPSCNNSpatialNormalization |
MPSCNNSpatialNormalization
[@dependency] This depends on Metal.framework
Specifies the spatial normalization filter.
|
| MPSCNNSpatialNormalizationGradient |
MPSCNNSpatialNormalizationGradient
[@dependency] This depends on Metal.framework
Specifies the spatial normalization gradient filter.
|
| MPSCNNSpatialNormalizationGradientNode |
|
| MPSCNNSpatialNormalizationNode |
Node representing MPSCNNSpatialNormalization
For each feature channel, the function computes the sum of squares of X inside each rectangle, N2(i,j).
|
| MPSCNNSubPixelConvolutionDescriptor |
MPSCNNSubPixelConvolutionDescriptor can be used to create MPSCNNConvolution object that does sub pixel upsamling
and reshaping opeartion as described in
http://www.cv-foundation.org/openaccess/content_cvpr_2016/papers/Shi_Real-Time_Single_Image_CVPR_2016_paper.pdf
Conceptually MPSCNNConvolution with subPixelScaleFactor > 1 can be thought of as filter performing regular CNN convolution producing N output feature channels at each pixel of
an intermediate MPSImage followed by a kernel that rearranges/reshapes these N channels at each pixel of intermediate MPSImage into a pixel block of
size subPixelScaleFactor x subPixelScaleFactor with N/(subPixelScaleFactor * subPixelScaleFactor) featureChannels at each pixel of this pixel block.
|
| MPSCNNSubtract |
MPSCNNSubtract
[@dependency] This depends on Metal.framework.
|
| MPSCNNSubtractGradient |
MPSCNNSubtractGradient
[@dependency] This depends on Metal.framework.
|
| MPSCNNUpsampling |
MPSCNNUpsampling
[@dependency] This depends on Metal.framework
The MPSCNNUpsampling filter can be used to resample an existing MPSImage
using a different sampling frequency for the x and y dimensions with the purpose of
enlarging the size of an image.
|
| MPSCNNUpsamplingBilinear |
MPSCNNUpsamplingBilinear
[@dependency] This depends on Metal.framework.
|
| MPSCNNUpsamplingBilinearGradient |
MPSCNNUpsamplingBilinearGradient
[@dependency] This depends on Metal.framework.
|
| MPSCNNUpsamplingBilinearGradientNode |
Node representing a MPSCNNUpsamplingBilinear kernel
|
| MPSCNNUpsamplingBilinearNode |
Node representing a MPSCNNUpsamplingBilinear kernel
|
| MPSCNNUpsamplingGradient |
MPSCNNUpsamplingGradient
[@dependency] This depends on Metal.framework
The MPSCNNUpsamplingGradient filter is used for training.
|
| MPSCNNUpsamplingNearest |
MPSCNNUpsamplingNearest
[@dependency] This depends on Metal.framework.
|
| MPSCNNUpsamplingNearestGradient |
MPSCNNUpsamplingNearestGradient
[@dependency] This depends on Metal.framework.
|
| MPSCNNUpsamplingNearestGradientNode |
Node representing a MPSCNNUpsamplingNearest kernel
|
| MPSCNNUpsamplingNearestNode |
Node representing a MPSCNNUpsamplingNearest kernel
|
| MPSCNNYOLOLoss |
|
| MPSCNNYOLOLossDescriptor |
MPSCNNYOLOLossDescriptor
[@dependency] This depends on Metal.framework.
|
| MPSCNNYOLOLossNode |
MPSCNNYOLOLossNode
This node calculates loss information during training
typically immediately after the inference portion
of network evaluation is performed.
|
| MPSCommandBuffer |
MPSCommandBuffer
[@dependency] This depends on Metal.framework
A MPSCommandBuffer object is used to wrap an existing command buffer with MPS specific options.
|
| MPSGRUDescriptor |
MPSGRUDescriptor
[@dependency] This depends on Metal.framework
The MPSGRUDescriptor specifies a GRU (Gated Recurrent Unit) block/layer descriptor.
|
| MPSImage |
MPSImage
[@dependency] This depends on Metal.framework
A MPSImage object describes a MTLTexture that may have more than 4 channels.
|
| MPSImageAdd |
MPSImageAdd
[@dependency] This depends on Metal.framework.
|
| MPSImageAreaMax |
MPSImageAreaMax
The MPSImageAreaMax kernel finds the maximum pixel value in a rectangular region centered around each pixel
in the source image.
|
| MPSImageAreaMin |
MPSImageAreaMin
The MPSImageAreaMin finds the minimum pixel value in a rectangular region centered around each pixel in the
source image.
|
| MPSImageArithmetic |
MPSImageArithmetic
[@dependency] This depends on Metal.framework.
|
| MPSImageBilinearScale |
MPSImageBilinearScale
Resize an image and / or change its aspect ratio
The MPSImageBilinearScale filter can be used to resample an existing image
using a bilinear filter.
|
| MPSImageBox |
MPSImageBox
The MPSImageBox convolves an image with given filter of odd width and height.
|
| MPSImageCanny |
MPSImageCanny
The MPSImageCanny implements the Canny edge detection algorithm.
|
| MPSImageConversion |
MPSImageConversion
The MPSImageConversion filter performs a conversion from source to destination
|
| MPSImageConvolution |
MPSImageConvolution
The MPSImageConvolution convolves an image with given filter of odd width and height.
|
| MPSImageCopyToMatrix |
MPSImageCopyToMatrix
The MPSImageCopyToMatrix copies image data to a MPSMatrix.
|
| MPSImageDescriptor |
MPSImageDescriptor
[@dependency] This depends on Metal.framework
A MPSImageDescriptor object describes a attributes of MPSImage and is used to
create one (see MPSImage discussion below)
|
| MPSImageDilate |
MPSImageDilate
The MPSImageDilate finds the maximum pixel value in a rectangular region centered around each pixel in the
source image.
|
| MPSImageDivide |
MPSImageDivide
[@dependency] This depends on Metal.framework.
|
| MPSImageEDLines |
MPSImageEDLines
The MPSImageEDLInes class implements the EDLines line segmenting algorithm using edge-drawing (ED)
described here
https://ieeexplore.ieee.org/document/6116138
The EDLInes algorithm consists of 5 steps, the first 4 of which describe the ED algorithm:
1.
|
| MPSImageErode |
MPSImageErode
The MPSImageErode filter finds the minimum pixel value in a rectangular region centered around each pixel in the
source image.
|
| MPSImageEuclideanDistanceTransform |
MPSImageEuclideanDistanceTransform
Perform a Euclidean Distance Transform
|
| MPSImageFindKeypoints |
MPSImageFindKeypoints
The MPSImageFindKeypoints kernel is used to find a list of keypoints whose values are >= minimumPixelThresholdValue
in MPSImageKeypointRangeInfo.
|
| MPSImageGaussianBlur |
MPSImageGaussianBlur
The MPSImageGaussianBlur convolves an image with gaussian of given sigma in both x and y direction.
|
| MPSImageGaussianPyramid |
MPSImageGaussianPyramid
A Gaussian image pyramid is constructed as follows:
The mipmap level zero is the source of the operation and is left untouched and
the subsequent mipmap levels are constructed from it recursively:
[@code]
mip[ level = n + 1 ] = Downsample( filter( mip[ level = n ] ) ), where
[@endcode]
"filter()" applies a filter with the specified convolution kernel and
"Downsample()" removes odd rows and columns from the input image.
|
| MPSImageGuidedFilter |
MPSImageGuidedFilter
Perform Guided Filter to produce a coefficients image
The filter is broken into two stages:
- Regression
- Reconstruction
The regression stage learns a 4-channel "coefficient" texture (typically at a very low resolution),
and represents the per-pixel linear regression of the source texture to the guidance texture.
|
| MPSImageHistogram |
MPSImageHistogram
The MPSImageHistogram computes the histogram of an image.
|
| MPSImageHistogramEqualization |
MPSImageHistogramEqualization
The MPSImageHistogramEqualization performs equalizes the histogram of an image.
|
| MPSImageHistogramSpecification |
MPSImageHistogramSpecification
The MPSImageHistogramSpecification performs a histogram specification operation on an image.
|
| MPSImageIntegral |
MPSImageIntegral
The MPSImageIntegral calculates the sum of pixels over a specified region in the image.
|
| MPSImageIntegralOfSquares |
MPSImageIntegralOfSquares
The MPSImageIntegralOfSquares calculates the sum of squared pixels over a specified region in the image.
|
| MPSImageLanczosScale |
MPSImageLanczosScale
Resize an image and / or change its aspect ratio
The MPSImageLanczosScale filter can be used to resample an existing image
using a different sampling frequency in each dimension.
|
| MPSImageLaplacian |
MPSImageLaplacian
The MPSImageLaplacian is an optimized variant of the MPSImageConvolution filter provided primarily for ease of use.
|
| MPSImageLaplacianPyramid |
MPSImageLaplacianPyramid
Laplacian pyramid levels are constructed as difference between the current source level and 2x interpolated version of the
half-resolution source level immediately above it.
|
| MPSImageLaplacianPyramidAdd |
MPSImageLaplacianPyramidAdd
The MPSImageLaplacianPyramidAdd class is responsible for reconstruction of Gaussian pyramid
from the Laplacian pyramid supplied in the source texture.
|
| MPSImageLaplacianPyramidSubtract |
MPSImageLaplacianPyramidSubtract
For each mip-level of the destination, MPSImageLaplacianPyramidSubtract constructs Laplacian pyramid
according to the procedure specified in the discussion section for MPSImageLaplacianPyramid
There needs to be at least as many mip-levels in the destination texture
as in the source texture less one, which is the exact number of destination mip-levels
that will be overwritten by MPSImageLaplacianPyramidSubtract, starting from the bottom level.
|
| MPSImageMedian |
MPSImageMedian
The MPSImageMedian applies a median filter to an image.
|
| MPSImageMultiply |
MPSImageMultiply
[@dependency] This depends on Metal.framework.
|
| MPSImageNormalizedHistogram |
MPSImageNormalizedHistogram
The MPSImageNormalizedHistogram computes the normalized histogram of an image.
|
| MPSImagePyramid |
MPSImagePyramid
The MPSImagePyramid is a base class for creating different kinds of pyramid images
Currently supported pyramid-types are:
[@ref] MPSImageGaussianPyramid
The Gaussian image pyramid kernel is enqueued as a in-place operation using
[@ref] MPSUnaryImageKernel::encodeToCommandBuffer:inPlaceTexture:fallbackCopyAllocator:
and all mipmap levels after level=1, present in the provided image are filled using
the provided filtering kernel.
|
| MPSImageReduceColumnMax |
MPSImageReduceColumnMax
The MPSImageReduceColumnMax performs a reduction operation returning the maximum value for each column of an image
|
| MPSImageReduceColumnMean |
MPSImageReduceColumnMean
The MPSImageReduceColumnMean performs a reduction operation returning the mean value for each column of an image
|
| MPSImageReduceColumnMin |
MPSImageReduceColumnMin
The MPSImageReduceColumnMin performs a reduction operation returning the mininmum value for each column of an image
|
| MPSImageReduceColumnSum |
MPSImageReduceColumnSum
The MPSImageReduceColumnSum performs a reduction operation returning the sum for each column of an image
|
| MPSImageReduceRowMax |
MPSImageReduceRowMax
The MPSImageReduceRowMax performs a reduction operation returning the maximum value for each row of an image
|
| MPSImageReduceRowMean |
MPSImageReduceRowMean
The MPSImageReduceRowMean performs a reduction operation returning the mean value for each row of an image
|
| MPSImageReduceRowMin |
MPSImageReduceRowMin
The MPSImageReduceRowMin performs a reduction operation returning the mininmum value for each row of an image
|
| MPSImageReduceRowSum |
MPSImageReduceRowSum
The MPSImageReduceRowSum performs a reduction operation returning the sum for each row of an image
|
| MPSImageReduceUnary |
MPSImageReduceUnary
The MPSImageReduce performs a reduction operation
The reduction operations supported are:
- Reduce row min
- Reduce column min
- Reduce row max
- Reduce column max
- Reduce row mean
- Reduce column mean
- Reduce row sum
- Reduce column sum
|
| MPSImageScale |
MPSImageScale
Resize an image and / or change its aspect ratio
The MPSImageScale filter can be used to resample an existing image
using a different sampling frequency in each dimension.
|
| MPSImageSobel |
MPSImageSobel
The MPSImageSobel implements the Sobel filter.
|
| MPSImageStatisticsMean |
MPSImageStatisticsMean
The MPSImageStatisticsMean computes the mean for a given region of an image.
|
| MPSImageStatisticsMeanAndVariance |
MPSImageStatisticsMeanAndVariance
The MPSImageStatisticsMeanAndVariance computes the mean and variance for a given region of an image.
|
| MPSImageStatisticsMinAndMax |
MPSImageStatisticsMinAndMax
The MPSImageStatisticsMinAndMax computes the minimum and maximum pixel values for a given region of an image.
|
| MPSImageSubtract |
MPSImageSubtract
[@dependency] This depends on Metal.framework.
|
| MPSImageTent |
MPSImageTent
The box filter, while fast, may yield square-ish looking blur effects.
|
| MPSImageThresholdBinary |
MPSImageThresholdBinary
The MPSThreshold filter applies a fixed-level threshold to each pixel in the image.
|
| MPSImageThresholdBinaryInverse |
MPSImageThresholdBinaryInverse
The MPSImageThresholdBinaryInverse filter applies a fixed-level threshold to each pixel in the image.
|
| MPSImageThresholdToZero |
MPSImageThresholdToZero
The MPSImageThresholdToZero filter applies a fixed-level threshold to each pixel in the image.
|
| MPSImageThresholdToZeroInverse |
MPSImageThresholdToZeroInverse
The MPSImageThresholdToZeroInverse filter applies a fixed-level threshold to each pixel in the image.
|
| MPSImageThresholdTruncate |
MPSImageThresholdTruncate
The MPSImageThresholdTruncate filter applies a fixed-level threshold to each pixel in the image:
The threshold functions convert a single channel image to a binary image.
|
| MPSImageTranspose |
MPSImageTranspose
The MPSImageTranspose transposes an image
This kernel accepts uint and int textures in addition to unorm and floating-point textures.
|
| MPSInstanceAccelerationStructure |
An acceleration structure built over instances of other acceleration structures
Instancing can be used to reduce memory usage in scenes that contain many copies
of the same object(s) or to combine multiple acceleration structures such as a static and
dynamic acceleration structure into a two-level instance hierarchy.
|
| MPSKernel |
MPSKernel
[@dependency] This depends on Metal.framework
The MPSKernel class is the base class for all MPS objects.
|
| MPSKeyedUnarchiver |
MPSKeyedUnarchiver
A NSKeyedArchiver that supports the MPSDeviceProvider protocol for MPSKernel decoding
|
| MPSLSTMDescriptor |
MPSLSTMDescriptor
[@dependency] This depends on Metal.framework
The MPSLSTMDescriptor specifies a LSTM block/layer descriptor.
|
| MPSMatrix |
MPSMatrix
[@dependency] This depends on Metal.framework
A MPSMatrix object describes a set of 2-dimensional arrays of data and provides storage
for its values.
|
| MPSMatrixBatchNormalization |
MPSMatrixBatchNormalization
[@dependency] This depends on Metal.framework.
|
| MPSMatrixBatchNormalizationGradient |
MPSMatrixBatchNormalizationGradient
[@dependency] This depends on Metal.framework.
|
| MPSMatrixBinaryKernel |
MPSMatrixBinaryKernel
[@dependency] This depends on Metal.framework
A MPSMatrixBinaryKernel consumes two MPSMatrix objects and produces
one MPSMatrix object.
|
| MPSMatrixCopy |
|
| MPSMatrixCopyDescriptor |
A list of copy operations
The MPSMatrixCopy filter can do multiple copy operations.
|
| MPSMatrixCopyToImage |
MPSMatrixCopyToImage
The MPSMatrixCopyToImage copies matrix data to a MPSImage.
|
| MPSMatrixDecompositionCholesky |
MPSMatrixDecompositionCholesky
[@dependency] This depends on Metal.framework.
|
| MPSMatrixDecompositionLU |
MPSMatrixDecompositionLU
[@dependency] This depends on Metal.framework.
|
| MPSMatrixDescriptor |
MPSMatrixDescriptor
[@dependency] This depends on Metal.framework
A MPSMatrixDescriptor describes the sizes, strides, and data type of a
an array of 2-dimensional matrices.
|
| MPSMatrixFindTopK |
MPSMatrixFindTopK
[@dependency] This depends on Metal.framework.
|
| MPSMatrixFullyConnected |
MPSMatrixFullyConnected
[@dependency] This depends on Metal.framework.
|
| MPSMatrixFullyConnectedGradient |
MPSMatrixFullyConnectedGradient
[@dependency] This depends on Metal.framework.
|
| MPSMatrixLogSoftMax |
MPSMatrixLogSoftMax
[@dependency] This depends on Metal.framework.
|
| MPSMatrixLogSoftMaxGradient |
MPSMatrixLogSoftMaxGradient
[@dependency] This depends on Metal.framework.
|
| MPSMatrixMultiplication |
MPSMatrixMultiplication
[@dependency] This depends on Metal.framework.
|
| MPSMatrixNeuron |
MPSMatrixNeuron
[@dependency] This depends on Metal.framework.
|
| MPSMatrixNeuronGradient |
MPSMatrixNeuronGradient
[@dependency] This depends on Metal.framework.
|
| MPSMatrixRandom |
MPSMatrixRandom
Kernels that implement random number generation.
|
| MPSMatrixRandomDistributionDescriptor |
MPSMatrixRandomDistributionDescriptor
[@dependency] This depends on Metal.framework
Decribes properties of a distribution of random values.
|
| MPSMatrixRandomMTGP32 |
MPSMatrixRandomMTGP32
Generates random numbers using a Mersenne Twister algorithm
suitable for GPU execution.
|
| MPSMatrixRandomPhilox |
MPSMatrixRandomPhilox
Generates random numbers using a counter based algorithm.
|
| MPSMatrixSoftMax |
MPSMatrixSoftMax
[@dependency] This depends on Metal.framework.
|
| MPSMatrixSoftMaxGradient |
MPSMatrixSoftMaxGradient
[@dependency] This depends on Metal.framework.
|
| MPSMatrixSolveCholesky |
MPSMatrixSolveCholesky
[@dependency] This depends on Metal.framework.
|
| MPSMatrixSolveLU |
MPSMatrixSolveLU
[@dependency] This depends on Metal.framework.
|
| MPSMatrixSolveTriangular |
MPSMatrixSolveTriangular
[@dependency] This depends on Metal.framework.
|
| MPSMatrixSum |
MPSMatrixSum
[@dependency] This depends on Metal.framework
MPSMatrixSum performs a pointwise summation of N MPSMatrix
objects and applies an optional bias term and neuron activation
function.
|
| MPSMatrixUnaryKernel |
MPSMatrixUnaryKernel
[@dependency] This depends on Metal.framework
A MPSMatrixUnaryKernel consumes one MPSMatrix and produces one MPSMatrix.
|
| MPSMatrixVectorMultiplication |
MPSMatrixVectorMultiplication
[@dependency] This depends on Metal.framework.
|
| MPSNDArray |
MPSNDArray
A MPSNDArray object is a MTLBuffer based storage container for multi-dimensional data.
|
| MPSNDArrayBinaryKernel |
|
| MPSNDArrayBinaryPrimaryGradientKernel |
MPSNDArrayDivisionPrimaryGradient
[@dependency] This depends on Metal.framework.
|
| MPSNDArrayBinarySecondaryGradientKernel |
MPSNDArrayDivisionSecondaryGradient
[@dependency] This depends on Metal.framework.
|
| MPSNDArrayDescriptor |
MPSNDArrayDescriptor
[@dependency] This depends on Metal.framework
A MPSNDArrayDescriptor object describes a attributes of MPSNDArray and is used to
create one (see MPSNDArray discussion below)
|
| MPSNDArrayGather |
MPSNDArrayGather
[@dependency] This depends on Metal.framework.
|
| MPSNDArrayGatherGradient |
MPSNDArrayGatherGradient
[@dependency] This depends on Metal.framework.
|
| MPSNDArrayGatherGradientState |
A state created to record a MPSNDArrayGather kernel properties
at the time an -encode call was made.
|
| MPSNDArrayGradientState |
A state created to record a MPSCNNKernel properties
at the time an -encode call was made.
|
| MPSNDArrayMatrixMultiplication |
MPSNDArrayMatrixMultiplication
[@dependency] This depends on Metal.framework.
|
| MPSNDArrayMultiaryBase |
|
| MPSNDArrayMultiaryGradientKernel |
|
| MPSNDArrayMultiaryKernel |
|
| MPSNDArrayStridedSlice |
MPSNDStridedSlice
[@dependency] This depends on Metal.framework.
|
| MPSNDArrayStridedSliceGradient |
MPSNDStridedSliceGradient
[@dependency] This depends on Metal.framework.
|
| MPSNDArrayUnaryGradientKernel |
|
| MPSNDArrayUnaryKernel |
|
| MPSNNAdditionGradientNode |
returns gradient for either primary or secondary source image from the inference pass.
|
| MPSNNAdditionNode |
returns elementwise sum of left + right
|
| MPSNNArithmeticGradientNode |
|
| MPSNNArithmeticGradientStateNode |
|
| MPSNNBilinearScaleNode |
A MPSNNScale object that uses bilinear interpolation for resampling
Caution: bilinear downscaling by more than a factor of
two in any dimension causes loss of information if a
low pass filter is not run over the image first.
|
| MPSNNBinaryArithmeticNode |
virtual base class for basic arithmetic nodes
|
| MPSNNBinaryGradientState |
A state created to record MPSCNNBinaryKernel properties
at the time an -encode call was made.
|
| MPSNNBinaryGradientStateNode |
MPSNNBinaryGradientStateNode
|
| MPSNNCompare |
MPSNNCompare
[@dependency] This depends on Metal.framework.
|
| MPSNNComparisonNode |
returns elementwise comparison of left and right
|
| MPSNNConcatenationGradientNode |
MPSNNConcatenationGradientNode
A MPSNNSlice filter that operates as the conjugate computation for concatentation operators during training
As concatenation is formally just a copy and not a computation, there isn't a lot of arithmetic for
the slice operator to do, but we still need to extract out the relevant portion
of the gradient of the input signal that went into the corresponding concatenation
destination image.
|
| MPSNNConcatenationNode |
Node representing a the concatenation (in the feature channel dimension) of the results from one or more kernels
|
| MPSNNCropAndResizeBilinear |
MPSNNCropAndResizeBilinear
[@dependency] This depends on Metal.framework
The MPSNNCropAndResizeBilinear filter resizes the source image using bilinear interpolation to
a destination whose dimensions are given by resizeWidth and resizeHeight
The number of output feature channels remains the same as the number of input feature
channels.
|
| MPSNNDefaultPadding |
This class provides some pre-rolled padding policies for common tasks
You are, of course, welcome to write your own class that conforms to
The MPSNNPadding protocol and use that instead.
|
| MPSNNDivisionNode |
returns elementwise quotient of left / right
|
| MPSNNFilterNode |
MPSNNFilterNode
A placeholder node denoting a neural network filter stage
There are as many MPSNNFilterNode subclasses as there are
MPS neural network filter objects.
|
| MPSNNForwardLoss |
MPSNNForwardLoss
[@dependency] This depends on Metal.framework.
|
| MPSNNForwardLossNode |
Node representing a @ref MPSNNForwardLoss kernel
|
| MPSNNGradientFilterNode |
MPSNNGradientFilterNode
For each MPSNNFilterNode, there is a corresponding MPSNNGradientFilterNode
used for training that back propagates image gradients to refine the
various parameters in each node.
|
| MPSNNGradientState |
A state created to record a MPSCNNKernel properties
at the time an -encode call was made.
|
| MPSNNGradientStateNode |
MPSNNGradientStateNode
During training, each MPSNNFilterNode has a corresponding
MPSNNGradientFilterNode for the gradient computation for
trainable parameter update.
|
| MPSNNGramMatrixCalculation |
MPSNNGramMatrixCalculation
[@dependency] This depends on Metal.framework
The MPSNNGramMatrixCalculation filter specifies a layer which computes the uncentered cross-correlation
values between the image planes of each feature channel of an image.
|
| MPSNNGramMatrixCalculationGradient |
MPSNNGramMatrixCalculationGradient
[@dependency] This depends on Metal.framework
The MPSNNGramMatrixCalculationGradient defines the gradient filter for MPSNNGramMatrixCalculation.
|
| MPSNNGramMatrixCalculationGradientNode |
Node representing a @ref MPSNNGramMatrixCalculationGradient kernel
|
| MPSNNGramMatrixCalculationNode |
Node representing a @ref MPSNNGramMatrixCalculation kernel
|
| MPSNNGraph |
MPSNNGraph
Optimized representation of a graph of MPSNNImageNodes and MPSNNFilterNodes
Once you have prepared a graph of MPSNNImageNodes and MPSNNFilterNodes
(and if needed MPSNNStateNodes), you may initialize a MPSNNGraph using
the MPSNNImageNode that you wish to appear as the result.
|
| MPSNNGridSample |
MPSNNGridSample
[@dependency] This depends on Metal.framework
Given an input and a flow-field grid, computes the output using input values and pixel locations from the grid.
|
| MPSNNImageNode |
MPSNNImageNode
A placeholder node denoting the position of a MPSImage in a graph
MPS neural network graphs are made up of filter nodes connected by
image (or state) nodes.
|
| MPSNNInitialGradient |
MPSNNInitialGradient
[@dependency] This depends on Metal.framework
The MPSCNNInitialGradient filter specifies a layer which computes the initial gradient for
an aribitrary input image.
|
| MPSNNInitialGradientNode |
MPSNNInitialGradientNode
A node for a MPSNNInitialGradient kernel
This node can be used to generate a starting point for an arbitrary gradient computation.
|
| MPSNNLabelsNode |
MPSNNLabelsNode
The labels and weights for each MPSImage are passed in
separately to the graph in a MPSNNLabels object.
|
| MPSNNLanczosScaleNode |
A MPSNNScale object that uses the Lanczos resampling filter
This method does not require a low pass filter for downsampling
by more than a factor of two.
|
| MPSNNLocalCorrelation |
MPSNNLocalCorrelation
The MPSNNLocalCorrelation filter computes the correlation between two images locally with a
varying offset on x-y plane between the two source images (controlled by the window and
stride properties) and the end result is summed over the feature channels.
|
| MPSNNLossGradient |
MPSNNLossGradient
[@dependency] This depends on Metal.framework.
|
| MPSNNLossGradientNode |
Node representing a @ref MPSNNLossGradient kernel
|
| MPSNNMultiaryGradientState |
|
| MPSNNMultiaryGradientStateNode |
|
| MPSNNMultiplicationGradientNode |
returns gradient for either primary or secondary source image from the inference pass.
|
| MPSNNMultiplicationNode |
returns elementwise product of left * right
|
| MPSNNNeuronDescriptor |
MPSNNNeuronDescriptor
[@dependency] This depends on Metal.framework
The MPSNNNeuronDescriptor specifies a neuron descriptor.
|
| MPSNNOptimizer |
MPSNNOptimizer
The MPSNNOptimizer base class, use one of the child classes, not to be directly used.
|
| MPSNNOptimizerAdam |
MPSNNOptimizerAdam
The MPSNNOptimizerAdam performs an Adam Update
Initialization time
m[0] = 0 (Initialize initial 1st moment vector aka momentum, user is responsible for this)
v[0] = 0 (Initialize initial 2nd moment vector aka velocity, user is responsible for this)
t = 0 (Initialize timestep)
https://arxiv.org/abs/1412.6980
At update time:
t = t + 1
lr[t] = learningRate * sqrt(1 - beta2^t) / (1 - beta1^t)
m[t] = beta1 * m[t-1] + (1 - beta1) * g
v[t] = beta2 * v[t-1] + (1 - beta2) * (g ^ 2)
variable = variable - lr[t] * m[t] / (sqrt(v[t]) + epsilon)
where,
g is gradient of error wrt variable
v[t] is velocity
m[t] is momentum
|
| MPSNNOptimizerDescriptor |
MPSNNOptimizerDescriptor
The MPSNNOptimizerDescriptor base class.
|
| MPSNNOptimizerRMSProp |
MPSNNOptimizerRMSProp
The MPSNNOptimizerRMSProp performs an RMSProp Update
RMSProp is also known as root mean square propagation.
|
| MPSNNOptimizerStochasticGradientDescent |
MPSNNOptimizerStochasticGradientDescent
The MPSNNOptimizerStochasticGradientDescent performs a gradient descent with an optional momentum Update
RMSProp is also known as root mean square propagation.
|
| MPSNNPad |
MPSNNPad
[@dependency] This depends on Metal.framework
Describes a padding operation
You should not use this filter to zero pad your data in the XY-plane.
|
| MPSNNPadGradient |
MPSNNPadGradient
[@dependency] This depends on Metal.framework
Computes the gradient for the @ref MPSNNPad layer.
|
| MPSNNPadGradientNode |
|
| MPSNNPadNode |
MPSNNPadNode
A node for a MPSNNPad kernel
You should not use this node to zero pad your data in the XY-plane.
|
| MPSNNReduceBinary |
MPSNNReduceBinary
The MPSNNReduce performs a reduction operation
The reduction operations supported are:
- Reduce feature channels mean
|
| MPSNNReduceColumnMax |
MPSNNReduceColumnMax
The MPSNNReduceColumnMax performs a reduction operation returning the maximum value for each column of an image
|
| MPSNNReduceColumnMean |
MPSNNReduceColumnMean
The MPSNNReduceColumnMean performs a reduction operation returning the mean value for each column of an image
|
| MPSNNReduceColumnMin |
MPSNNReduceColumnMin
The MPSNNReduceColumnMin performs a reduction operation returning the mininmum value for each column of an image
|
| MPSNNReduceColumnSum |
MPSNNReduceColumnSum
The MPSNNReduceColumnSum performs a reduction operation returning the sum for each column of an image
|
| MPSNNReduceFeatureChannelsAndWeightsMean |
|
| MPSNNReduceFeatureChannelsAndWeightsSum |
|
| MPSNNReduceFeatureChannelsArgumentMax |
MPSNNReduceFeatureChannelsArgumentMax
The MPSNNReduceFeatureChannelsArgumentMax performs returns the argument index that is the
location of the maximum value for feature channels of an image
|
| MPSNNReduceFeatureChannelsArgumentMin |
MPSNNReduceFeatureChannelsArgumentMin
The MPSNNReduceFeatureChannelsArgumentMin returns the argument index that is the
location of the minimum value for feature channels of an image
|
| MPSNNReduceFeatureChannelsMax |
MPSNNReduceFeatureChannelsMax
The MPSNNReduceFeatureChannelsMax performs a reduction operation returning the maximum value for feature channels of an image
|
| MPSNNReduceFeatureChannelsMean |
MPSNNReduceFeatureChannelsMean
The MPSNNReduceFeatureChannelsMean performs a reduction operation returning the mean value for each column of an image
|
| MPSNNReduceFeatureChannelsMin |
MPSNNReduceFeatureChannelsMin
The MPSNNReduceFeatureChannelsMin performs a reduction operation returning the mininmum value for feature channels of an image
|
| MPSNNReduceFeatureChannelsSum |
MPSNNReduceFeatureChannelsSum
The MPSNNReduceFeatureChannelsSum performs a reduction operation returning the sum for each column of an image
|
| MPSNNReduceRowMax |
MPSNNReduceRowMax
The MPSNNReduceRowMax performs a reduction operation returning the maximum value for each row of an image
|
| MPSNNReduceRowMean |
MPSNNReduceRowMean
The MPSNNReduceRowMean performs a reduction operation returning the mean value for each row of an image
|
| MPSNNReduceRowMin |
MPSNNReduceRowMin
The MPSNNReduceRowMin performs a reduction operation returning the mininmum value for each row of an image
|
| MPSNNReduceRowSum |
MPSNNReduceRowSum
The MPSNNReduceRowSum performs a reduction operation returning the sum for each row of an image
|
| MPSNNReduceUnary |
MPSNNReduceUnary
The MPSNNReduce performs a reduction operation
The reduction operations supported are:
- Reduce row min
- Reduce column min
- Reduce feature channels min
- Reduce row max
- Reduce column max
- Reduce feature channels max
- Reduce row mean
- Reduce column mean
- Reduce feature channels mean
- Reduce row sum
- Reduce column sum
- Reduce feature channels sum
|
| MPSNNReductionColumnMaxNode |
|
| MPSNNReductionColumnMeanNode |
|
| MPSNNReductionColumnMinNode |
|
| MPSNNReductionColumnSumNode |
|
| MPSNNReductionFeatureChannelsArgumentMaxNode |
|
| MPSNNReductionFeatureChannelsArgumentMinNode |
|
| MPSNNReductionFeatureChannelsMaxNode |
|
| MPSNNReductionFeatureChannelsMeanNode |
|
| MPSNNReductionFeatureChannelsMinNode |
|
| MPSNNReductionFeatureChannelsSumNode |
|
| MPSNNReductionRowMaxNode |
|
| MPSNNReductionRowMeanNode |
|
| MPSNNReductionRowMinNode |
|
| MPSNNReductionRowSumNode |
|
| MPSNNReductionSpatialMeanGradientNode |
|
| MPSNNReductionSpatialMeanNode |
|
| MPSNNReshape |
MPSNNReshape
[@dependency] This depends on Metal.framework
Describes a reshape operation
This functions copies data from source MPSImage intot the new shape in the destination MPSImage
|
| MPSNNReshapeGradient |
MPSNNReshapeGradient
[@dependency] This depends on Metal.framework
The reshape gradient filter reshapes the incoming gradient into the dimensions
of the forward reshape kernel's source image.
|
| MPSNNReshapeGradientNode |
|
| MPSNNReshapeNode |
A node for a MPSNNReshape kernel
|
| MPSNNResizeBilinear |
MPSNNResizeBilinear
[@dependency] This depends on Metal.framework
The MPSNNResizeBilinear filter resizes the source image using bilinear interpolation to
a destination whose dimensions are given by resizeWidth and resizeHeight
The number of output feature channels remains the same as the number of input feature
channels.
|
| MPSNNScaleNode |
Abstract Node representing a image resampling operation
Please make a MPSNNBilinearScale or MPSNNLanczosScale object instead
|
| MPSNNSlice |
MPSNNSlice
[@dependency] This depends on Metal.framework
Describes a slice operation
The slice kernel is used to extract a slice from a source MPSImage.
|
| MPSNNStateNode |
MPSNNStateNode
A placeholder node denoting the position in the graph of a MPSState object
Some filters need additional information about an image in order to function.
|
| MPSNNSubtractionGradientNode |
returns gradient for either primary or secondary source image from the inference pass.
|
| MPSNNSubtractionNode |
returns elementwise difference of left - right
|
| MPSNNUnaryReductionNode |
A node for a unary MPSNNReduce node.
|
| MPSPolygonAccelerationStructure |
An acceleration structure built over polygonal shapes
See MPSAccelerationStructure for more information
|
| MPSPolygonBuffer |
A vertex buffer and optional index and mask buffer for a set of polygons
|
| MPSPredicate |
MPSPredicate
[@dependency] This depends on Metal.framework
A MPSPredicate can be used to run MPS kernels subject to a predicate.
|
| MPSQuadrilateralAccelerationStructure |
An acceleration structure built over quadrilaterals
See MPSPolygonAccelerationStructure for more information
|
| MPSRayIntersector |
MPSRayIntersector
Performs intersection tests between rays and the geometry in an MPSAccelerationStructure
An MPSRayIntersector is used to schedule intersection tests between rays and geometry
into an MTLCommandBuffer.
|
| MPSRNNDescriptor |
MPSRNNDescriptor
[@dependency] This depends on Metal.framework
The MPSRNNDescriptor specifies a Recursive neural network block/layer descriptor.
|
| MPSRNNImageInferenceLayer |
MPSRNNImageInferenceLayer
[@dependency] This depends on Metal.framework
The MPSRNNImageInferenceLayer specifies a recurrent neural network layer for inference on MPSImages.
|
| MPSRNNMatrixInferenceLayer |
MPSRNNMatrixInferenceLayer
[@dependency] This depends on Metal.framework
The MPSRNNMatrixInferenceLayer specifies a recurrent neural network layer for inference on MPSMatrices.
|
| MPSRNNMatrixTrainingLayer |
MPSRNNMatrixTrainingLayer
[@dependency] This depends on Metal.framework
The MPSRNNMatrixTrainingLayer specifies a recurrent neural network layer for training on MPSMatrices.
|
| MPSRNNMatrixTrainingState |
MPSRNNMatrixTrainingState
[@dependency] This depends on Metal.framework
This class holds the data that is passed from the forward pass needed in the backward pass.
|
| MPSRNNRecurrentImageState |
MPSRNNRecurrentImageState
[@dependency] This depends on Metal.framework
This class holds all the data that is passed from one sequence iteration of the image-based RNN layer (stack) to the next.
|
| MPSRNNRecurrentMatrixState |
MPSRNNRecurrentMatrixState
[@dependency] This depends on Metal.framework
This class holds all the data that is passed from one sequence iteration of the matrix-based RNN layer to the next.
|
| MPSRNNSingleGateDescriptor |
MPSRNNSingleGateDescriptor
[@dependency] This depends on Metal.framework
The MPSRNNSingleGateDescriptor specifies a simple recurrent block/layer descriptor.
|
| MPSState |
MPSState
[@dependency] This depends on Metal Framework
A semi-opaque data container for large storage in MPS CNN filters
Some MPS CNN kernels produce additional information beyond a
MPSImage.
|
| MPSStateResourceList |
|
| MPSSVGF |
Reduces noise in images rendered with Monte Carlo ray tracing methods
This filter uses temporal reprojection to accumulate samples over time, followed by
an edge-avoiding blur to smooth out the noise.
|
| MPSSVGFDefaultTextureAllocator |
A default implementation of the MPSSVGFTextureAllocator protocol.
|
| MPSSVGFDenoiser |
A convenience object which uses an MPSSVGF object to manage the denoising process
The MPSSVGF object can also be used directly to customize the denoising process.
|
| MPSTemporalAA |
Reduces aliasing in an image by accumulating samples over multiple frames
The color for the previous frame will be sampled using the provided motion vector
texture and blended with the current frame according to the blendFactor property.
|
| MPSTemporaryImage |
MPSTemporaryImage
[@dependency] MPSImage
MPSTemporaryImages are for MPSImages with short lifetimes.
|
| MPSTemporaryMatrix |
A MPSMatrix allocated on GPU private memory.
|
| MPSTemporaryNDArray |
MPSTemporaryNDArray
A MPSNDArray that uses command buffer specific memory to store the array data
Temporary memory is command buffer specific memory, and is useful for MPSNDArray allocations
with limited lifetime within a single command buffer.
|
| MPSTemporaryVector |
A MPSVector allocated on GPU private memory.
|
| MPSTriangleAccelerationStructure |
An acceleration structure built over triangles
See MPSPolygonAccelerationStructure for more information
|
| MPSUnaryImageKernel |
MPSUnaryImageKernel
[@dependency] This depends on Metal.framework
A MPSUnaryImageKernel consumes one MTLTexture and produces one MTLTexture.
|
| MPSVector |
MPSVector
[@dependency] This depends on Metal.framework
A MPSVector object describes a 1-dimensional array of data and provides storage
for its values.
|
| MPSVectorDescriptor |
MPSVectorDescriptor
[@dependency] This depends on Metal.framework
A MPSVectorDescriptor describes the length and data type of a
an array of 1-dimensional vectors.
|