צָפוּף

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

שכבת רשת עצבית המחוברת בצפיפות.

Dense ל"מבצע activation(matmul(input, weight) + bias) , שבו weight הוא מטריצת משקל, bias הוא וקטור הטיה, ואת activation היא פונקצית הפעלת אלמנט-חכם.

שכבה זו תומכת גם במתחי משקל תלת-ממד עם מטריצות הטיה דו-ממדיות. במקרה זה המימד הראשון של שניהם היא כאל גודל אצווה כי מיושר עם הממד הראשון של 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 הוא פרמטר differentiability בלבד. bias יכולה להתבצע פרמטר differentiability לאחר Optional תואמת תנאי כדי Differentiable : 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 .