Class MPSCNNDepthWiseConvolutionDescriptor

  • All Implemented Interfaces:
    NSCoding, NSCopying, NSSecureCoding, NSObject

    public class MPSCNNDepthWiseConvolutionDescriptor
    extends MPSCNNConvolutionDescriptor
    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. Number of outputFeatureChannels can be greater than number of inputFeatureChannels, in which case convolution expects channelMultipler = outputFeactureChannels/inputFeatureChannels number of filters for each input channel. This means channelMultipler filters are applied to each input feature channel producing channelMultipler output feature channels. All channelMultipler output feature channels produced by single input feature channel are stored togather in output image i.e. output[x,y,k*channelMultiplier + q] = input[x,y,k] * filter[k,q] where * here denotes convolution. group must be 1. Weights array returned by MPSCNNConvolutionDataProvier is interpreted as Weights [inputFeatureChannels] [channelMultiplier] [kH] [kW] = Weights [ inputFeatureChannels * channelMultiplier ] [kH] [kW] = Weights [ outputFeatureChannels ] [kH] [kW] Currently only channel multipler of 1 is supported i.e. inputFeatureChannels == outputFeatureChannels
    • Constructor Detail

      • MPSCNNDepthWiseConvolutionDescriptor

        protected MPSCNNDepthWiseConvolutionDescriptor​(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)
      • channelMultiplier

        public long channelMultiplier()
        [@property] channelMultiplier Ratio of outputFeactureChannel to inputFeatureChannels for depthwise convolution i.e. how many output feature channels are produced by each input channel.
      • classFallbacksForKeyedArchiver

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

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

        public static java.lang.Object cnnConvolutionDescriptorWithKernelWidthKernelHeightInputFeatureChannelsOutputFeatureChannels​(long kernelWidth,
                                                                                                                                    long kernelHeight,
                                                                                                                                    long inputFeatureChannels,
                                                                                                                                    long outputFeatureChannels)
      • cnnConvolutionDescriptorWithKernelWidthKernelHeightInputFeatureChannelsOutputFeatureChannelsNeuronFilter

        public static java.lang.Object cnnConvolutionDescriptorWithKernelWidthKernelHeightInputFeatureChannelsOutputFeatureChannelsNeuronFilter​(long kernelWidth,
                                                                                                                                                long kernelHeight,
                                                                                                                                                long inputFeatureChannels,
                                                                                                                                                long outputFeatureChannels,
                                                                                                                                                MPSCNNNeuron neuronFilter)
      • 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()
      • 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()
      • 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()
      • supportsSecureCoding

        public static boolean supportsSecureCoding()
      • _supportsSecureCoding

        public boolean _supportsSecureCoding()
        Description copied from interface: NSSecureCoding
        This property must return YES on all classes that allow secure coding. Subclasses of classes that adopt NSSecureCoding and override initWithCoder: must also override this method and return YES. The Secure Coding Guide should be consulted when writing methods that decode data.
        Specified by:
        _supportsSecureCoding in interface NSSecureCoding
        Overrides:
        _supportsSecureCoding in class MPSCNNConvolutionDescriptor
      • version_static

        public static long version_static()