Class MPSNNConcatenationNode

  • All Implemented Interfaces:
    NSObject

    public class MPSNNConcatenationNode
    extends MPSNNFilterNode
    Node representing a the concatenation (in the feature channel dimension) of the results from one or more kernels
    • Constructor Detail

      • MPSNNConcatenationNode

        protected MPSNNConcatenationNode​(org.moe.natj.general.Pointer peer)
    • Method Detail

      • accessInstanceVariablesDirectly

        public static boolean accessInstanceVariablesDirectly()
      • allocWithZone

        public static java.lang.Object allocWithZone​(org.moe.natj.general.ptr.VoidPtr zone)
      • automaticallyNotifiesObserversForKey

        public static boolean automaticallyNotifiesObserversForKey​(java.lang.String key)
      • cancelPreviousPerformRequestsWithTarget

        public static void cancelPreviousPerformRequestsWithTarget​(java.lang.Object aTarget)
      • cancelPreviousPerformRequestsWithTargetSelectorObject

        public static void cancelPreviousPerformRequestsWithTargetSelectorObject​(java.lang.Object aTarget,
                                                                                 org.moe.natj.objc.SEL aSelector,
                                                                                 java.lang.Object anArgument)
      • classFallbacksForKeyedArchiver

        public static NSArray<java.lang.String> classFallbacksForKeyedArchiver()
      • classForKeyedUnarchiver

        public static org.moe.natj.objc.Class classForKeyedUnarchiver()
      • debugDescription_static

        public static java.lang.String debugDescription_static()
      • description_static

        public static java.lang.String description_static()
      • hash_static

        public static long hash_static()
      • initWithSources

        public MPSNNConcatenationNode initWithSources​(NSArray<? extends MPSNNImageNode> sourceNodes)
        Init a node that concatenates feature channels from multiple images In some neural network designs, it is necessary to append feature channels from one neural network filter to the results of another. If we have three image nodes with M, N and O feature channels in them, passed to -initWithSources: as @[imageM, imageN, imageO], then feature channels [0,M-1] will be drawn from image M, feature channels [M, M+N-1] will be drawn from image N and feature channels [M+N, M+N+O-1] will be drawn from image O. As all images are padded out to a multiple of four feature channels, M, N and O here are also multiples of four, even when the MPSImages are not. That is, if the image is 23 feature channels and one channel of padding, it takes up 24 feature channels worth of space in the concatenated result. Performance Note: Generally, concatenation is free as long as all of the sourceNodes are produced by filters in the same MPSNNGraph. Most MPSCNNKernels have the ability to write their results at a feature channel offset within a target MPSImage. However, if the MPSNNImageNode source nodes come from images external to the MPSNNGraph, then we have to do a copy operation to assemble the concatenated node. As a result, when deciding where to break a large logical graph into multiple smaller MPSNNGraphs, it is better for concatenations to appear at the ends of subgraphs when possible rather than at the start, to the extent that all the images used in the concatenation are produced by that subgraph.
        Parameters:
        sourceNodes - The MPSNNImageNode representing the source MPSImages for the filter
        Returns:
        A new MPSNNFilter node that concatenates its inputs.
      • instanceMethodSignatureForSelector

        public static NSMethodSignature instanceMethodSignatureForSelector​(org.moe.natj.objc.SEL aSelector)
      • instancesRespondToSelector

        public static boolean instancesRespondToSelector​(org.moe.natj.objc.SEL aSelector)
      • isSubclassOfClass

        public static boolean isSubclassOfClass​(org.moe.natj.objc.Class aClass)
      • keyPathsForValuesAffectingValueForKey

        public static NSSet<java.lang.String> keyPathsForValuesAffectingValueForKey​(java.lang.String key)
      • new_objc

        public static java.lang.Object new_objc()
      • nodeWithSources

        public static MPSNNConcatenationNode nodeWithSources​(NSArray<? extends MPSNNImageNode> sourceNodes)
        Init a autoreleased node that concatenates feature channels from multiple images In some neural network designs, it is necessary to append feature channels from one neural network filter to the results of another. If we have three image nodes with M, N and O feature channels in them, passed to -initWithSources: as @[imageM, imageN, imageO], then feature channels [0,M-1] will be drawn from image M, feature channels [M, M+N-1] will be drawn from image N and feature channels [M+N, M+N+O-1] will be drawn from image O. As all images are padded out to a multiple of four feature channels, M, N and O here are also multiples of four, even when the MPSImages are not. That is, if the image is 23 feature channels and one channel of padding, it takes up 24 feature channels worth of space in the concatenated result. Performance Note: Generally, concatenation is free as long as all of the sourceNodes are produced by filters in the same MPSNNGraph. Most MPSCNNKernels have the ability to write their results at a feature channel offset within a target MPSImage. However, if the MPSNNImageNode source nodes come from images external to the MPSNNGraph, then we have to do a copy operation to assemble the concatenated node. As a result, when deciding where to break a large logical graph into multiple smaller MPSNNGraphs, it is better for concatenations to appear at the ends of subgraphs when possible rather than at the start, to the extent that all the images used in the concatenation are produced by that subgraph.
        Parameters:
        sourceNodes - The MPSNNImageNode representing the source MPSImages for the filter
        Returns:
        A new MPSNNFilter node that concatenates its inputs.
      • resolveClassMethod

        public static boolean resolveClassMethod​(org.moe.natj.objc.SEL sel)
      • resolveInstanceMethod

        public static boolean resolveInstanceMethod​(org.moe.natj.objc.SEL sel)
      • setVersion_static

        public static void setVersion_static​(long aVersion)
      • superclass_static

        public static org.moe.natj.objc.Class superclass_static()
      • version_static

        public static long version_static()