Gęsty

Zadbaj o dobrą organizację dzięki kolekcji Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
@frozen
public struct Dense<Scalar> : Layer where Scalar : TensorFlowFloatingPoint

Gęsto połączona warstwa sieci neuronowej.

Dense narzędzia operacja activation(matmul(input, weight) + bias) , gdzie weight jest macierzą wagi bias jest wektorem polaryzacji i activation jest funkcją aktywacji elementu mądry.

Ta warstwa obsługuje również tensory wagowe 3D z macierzami odchyleń 2D. W tym przypadku, zarówno pierwszy wymiar jest traktowany jako wielkości partii, który jest w jednej linii z pierwszym wymiarem input i wariantu wsadowej matmul(_:_:) sterowania jest używany w ten sposób, stosując różne wagi i nastawienie każdego elementu w partii wejściowej.

  • Macierz wag.

    Deklaracja

    public var weight: Tensor<Scalar>
  • Wektor stronniczości.

    Deklaracja

    public var bias: Tensor<Scalar>
  • Funkcja aktywacji elementów mądry.

    Deklaracja

    @noDerivative
    public let activation: Activation
  • Typ funkcji aktywacji z uwzględnieniem elementów.

    Deklaracja

    public typealias Activation = @differentiable (Tensor<Scalar>) -> Tensor<Scalar>
  • Tworzy instancję z podanej wagi, opcjonalnego odchylenia i funkcji aktywacji.

    Notatka

    Obecnie weight jest jedynym parametrem różniczkowalność. bias może być parametr różniczkowalności po Optional warunkowo zgodny Differentiable : TF-499.

    Deklaracja

    @differentiable(wrt: weight)
    public init(
      weight: Tensor<Scalar>,
      bias: Tensor<Scalar>? = nil,
      activation: @escaping Activation
    )
  • Zwraca dane wyjściowe uzyskane z zastosowania warstwy do danych danych wejściowych.

    Deklaracja

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

    Parametry

    input

    Wejście do warstwy.

    Wartość zwrotu

    Wyjście.

  • Tworzy Dense warstwy o określonej wielkości wejściowych, wielkość wyjściowej i funkcji aktywacji elementu mądry. Matryca masy utworzony w kształcie [inputSize, outputSize] i wektorem polaryzacji jest utworzony w kształcie [outputSize] .

    Deklaracja

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

    Parametry

    inputSize

    Wymiarowość przestrzeni wejściowej.

    outputSize

    Wymiarowość przestrzeni wyjściowej.

    activation

    Funkcja aktywacji do użycia. Domyślną wartością jest identity(_:) .

    weightInitializer

    Inicjator użyć do weight .

    biasInitializer

    Inicjator użyć do bias .