Dense

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

सघन रूप से जुड़ी हुई तंत्रिका नेटवर्क परत।

Dense ऑपरेशन activation(matmul(input, weight) + bias) लागू करता है, जहां weight एक वजन मैट्रिक्स है, bias एक पूर्वाग्रह वेक्टर है, और activation एक तत्व-वार सक्रियण फ़ंक्शन है।

यह परत 2-डी बायस मैट्रिसेस के साथ 3-डी वेट टेंसर का भी समर्थन करती है। इस मामले में दोनों के पहले आयाम को बैच आकार के रूप में माना जाता है जो input के पहले आयाम के साथ संरेखित होता है और matmul(_:_:) ऑपरेशन के बैच संस्करण का उपयोग किया जाता है, इस प्रकार प्रत्येक तत्व के लिए एक अलग वजन और पूर्वाग्रह का उपयोग किया जाता है इनपुट बैच में.

  • वजन मैट्रिक्स.

    घोषणा

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

    घोषणा

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

    घोषणा

    @noDerivative
    public let activation: Activation
  • तत्व-वार सक्रियण फ़ंक्शन प्रकार।

    घोषणा

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

    टिप्पणी

    वर्तमान में, weight एकमात्र भिन्नता पैरामीटर है। Optional रूप से Differentiable अनुरूप होने के बाद bias एक भिन्नात्मकता पैरामीटर बनाया जा सकता है: TF-499।

    घोषणा

    @differentiable(wrt: weight)
    public init(
      weight: Tensor<Scalar>,
      bias: Tensor<Scalar>? = nil,
      activation: @escaping Activation
    )
  • दिए गए इनपुट पर परत लगाने से प्राप्त आउटपुट लौटाता है।

    घोषणा

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

    पैरामीटर

    input

    परत में इनपुट.

    वापसी मूल्य

    आउटपुट.

  • निर्दिष्ट इनपुट आकार, आउटपुट आकार और तत्व-वार सक्रियण फ़ंक्शन के साथ एक Dense परत बनाता है। वेट मैट्रिक्स आकार [inputSize, outputSize] के साथ बनाया जाता है और बायस वेक्टर आकार [outputSize] के साथ बनाया जाता है।

    घोषणा

    public init(
      inputSize: Int,
      outputSize: Int,
      activation: @escaping Activation = identity,
      useBias: Bool = true,
      weightInitializer: ParameterInitializer<Scalar> = glorotUniform(),
      biasInitializer: ParameterInitializer<Scalar> = zeros()
    )

    पैरामीटर

    inputSize

    इनपुट स्थान की आयामीता.

    outputSize

    आउटपुट स्पेस की आयामीता.

    activation

    उपयोग करने के लिए सक्रियण फ़ंक्शन. डिफ़ॉल्ट मान identity(_:) है।

    weightInitializer

    weight के लिए उपयोग हेतु प्रारंभकर्ता.

    biasInitializer

    bias के लिए उपयोग हेतु प्रारंभकर्ता.