Conv3D

@frozen
public struct Conv3D<Scalar> : Layer where Scalar : TensorFlowFloatingPoint

छवियों पर स्थानिक/स्थानिक-लौकिक कनवल्शन के लिए एक 3-डी कनवल्शन परत।

यह परत एक कनवल्शन फ़िल्टर बनाती है जो आउटपुट के टेंसर का उत्पादन करने के लिए परत इनपुट के साथ जुड़ती है।

  • 5-डी कन्वोल्यूशन फ़िल्टर।

    घोषणा

    public var filter: Tensor<Scalar>
  • पूर्वाग्रह वेक्टर.

    घोषणा

    public var bias: Tensor<Scalar>
  • तत्व-वार सक्रियण फ़ंक्शन।

    घोषणा

    @noDerivative
    public let activation: Activation
  • स्थानिक आयामों के लिए स्लाइडिंग विंडो के चरण।

    घोषणा

    @noDerivative
    public let strides: (Int, Int, Int)
  • कनवल्शन के लिए पैडिंग एल्गोरिदम।

    घोषणा

    @noDerivative
    public let padding: Padding
  • स्थानिक/स्थानिक लौकिक आयामों के लिए फैलाव कारक।

    घोषणा

    @noDerivative
    public let dilations: (Int, Int, Int)
  • तत्व-वार सक्रियण फ़ंक्शन प्रकार।

    घोषणा

    public typealias Activation = @differentiable (Tensor<Scalar>) -> Tensor<Scalar>
  • निर्दिष्ट फ़िल्टर, पूर्वाग्रह, सक्रियण फ़ंक्शन, स्ट्राइड्स और पैडिंग के साथ एक Conv3D परत बनाता है।

    घोषणा

    public init(
      filter: Tensor<Scalar>,
      bias: Tensor<Scalar>? = nil,
      activation: @escaping Activation = identity,
      strides: (Int, Int, Int) = (1, 1, 1),
      padding: Padding = .valid,
      dilations: (Int, Int, Int) = (1, 1, 1)
    )

    पैरामीटर

    filter

    आकार का 5-डी कनवल्शन फ़िल्टर [फ़िल्टर गहराई, फ़िल्टर ऊंचाई, फ़िल्टर चौड़ाई, इनपुट चैनल गिनती, आउटपुट चैनल गिनती]।

    bias

    आकार का पूर्वाग्रह वेक्टर [आउटपुट चैनल गिनती]।

    activation

    तत्व-वार सक्रियण फ़ंक्शन।

    strides

    स्थानिक आयामों के लिए स्लाइडिंग विंडो के स्ट्राइड्स, यानी (स्ट्राइड गहराई, स्ट्राइड ऊंचाई, स्ट्राइड चौड़ाई)

    padding

    कनवल्शन के लिए पैडिंग एल्गोरिदम।

    dilations

    स्थानिक/स्थानिक-लौकिक आयामों के लिए फैलाव कारक।

  • दिए गए इनपुट पर परत लगाने से प्राप्त आउटपुट लौटाता है।

    आउटपुट स्थानिक आयामों की गणना इस प्रकार की जाती है:

    आउटपुट गहराई = (इनपुट गहराई + 2 * पैडिंग गहराई - (फैलाव गहराई * (फ़िल्टर गहराई - 1) + 1)) / स्ट्राइड गहराई + 1

    आउटपुट ऊंचाई = (इनपुट ऊंचाई + 2 * पैडिंग ऊंचाई - (फैलाव ऊंचाई * (फ़िल्टर ऊंचाई - 1) + 1)) / स्ट्राइड ऊंचाई + 1

    आउटपुट चौड़ाई = (इनपुट चौड़ाई + 2 * पैडिंग चौड़ाई - (फैलाव चौड़ाई * (फ़िल्टर चौड़ाई - 1) + 1)) / स्ट्राइड चौड़ाई + 1

    और पैडिंग आकार पैडिंग योजना द्वारा निर्धारित किए जाते हैं।

    टिप्पणी

    .valid उपयोग करते समय पैडिंग का आकार शून्य के बराबर होता है।

    घोषणा

    @differentiable
    public func forward(_ input: Tensor<Scalar>) -> Tensor<Scalar>

    पैरामीटर

    input

    आकार की परत में इनपुट [बैच गिनती, इनपुट गहराई, इनपुट ऊंचाई, इनपुट चौड़ाई, इनपुट चैनल गिनती]।

    वापसी मूल्य

    आकार का आउटपुट [बैच गिनती, आउटपुट गहराई, आउटपुट ऊंचाई, आउटपुट चौड़ाई, आउटपुट चैनल गिनती]।

  • निर्दिष्ट फ़िल्टर आकार, स्ट्राइड्स, पैडिंग, फैलाव और तत्व-वार सक्रियण फ़ंक्शन के साथ एक Conv3D परत बनाता है। फ़िल्टर टेंसर को निर्दिष्ट बीज के साथ ग्लोरोट यूनिफ़ॉर्म इनिशियलाइज़ेशन का उपयोग करके प्रारंभ किया जाता है। पूर्वाग्रह वेक्टर को शून्य से आरंभ किया गया है।

    घोषणा

    public init(
      filterShape: (Int, Int, Int, Int, Int),
      strides: (Int, Int, Int) = (1, 1, 1),
      padding: Padding = .valid,
      dilations: (Int, Int, Int) = (1, 1, 1),
      activation: @escaping Activation = identity,
      useBias: Bool = true,
      filterInitializer: ParameterInitializer<Scalar> = glorotUniform(),
      biasInitializer: ParameterInitializer<Scalar> = zeros()
    )

    पैरामीटर

    filterShape

    5-डी कनवल्शन फ़िल्टर का आकार, प्रतिनिधित्व करता है (फ़िल्टर गहराई, फ़िल्टर ऊंचाई, फ़िल्टर चौड़ाई, इनपुट चैनल गिनती, आउटपुट चैनल गिनती)।

    strides

    स्थानिक आयामों के लिए स्लाइडिंग विंडो के स्ट्राइड्स, यानी (स्ट्राइड गहराई, स्ट्राइड ऊंचाई, स्ट्राइड चौड़ाई)

    padding

    कनवल्शन के लिए पैडिंग एल्गोरिदम।

    dilations

    स्थानिक/स्थानिक-लौकिक आयामों के लिए फैलाव कारक।

    activation

    तत्व-वार सक्रियण फ़ंक्शन।

    filterInitializer

    फ़िल्टर पैरामीटर के लिए उपयोग करने हेतु प्रारंभकर्ता.

    biasInitializer

    पूर्वाग्रह मापदंडों के लिए उपयोग करने के लिए प्रारंभकर्ता।