@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
दिए गए वजन, वैकल्पिक पूर्वाग्रह और सक्रियण फ़ंक्शन से एक उदाहरण बनाता है।
टिप्पणी
वर्तमान में,weight
एकमात्र भिन्नता पैरामीटर है।Optional
रूप सेDifferentiable
अनुरूप होने के बादbias
एक भिन्नात्मकता पैरामीटर बनाया जा सकता है: TF-499।घोषणा
@differentiable(wrt: weight) public init( weight: Tensor<Scalar>, bias: Tensor<Scalar>? = nil, activation: @escaping Activation )
निर्दिष्ट इनपुट आकार, आउटपुट आकार और तत्व-वार सक्रियण फ़ंक्शन के साथ एक
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
के लिए उपयोग हेतु प्रारंभकर्ता.