@frozen
public struct Dense<Scalar> : Layer where Scalar : TensorFlowFloatingPoint
Gęsto połączona warstwa sieci neuronowej.
Dense
implementuje operację activation(matmul(input, weight) + bias)
, gdzie weight
jest macierzą wag, bias
jest wektorem odchylenia, a activation
jest funkcją aktywacji elementarną.
Warstwa ta obsługuje również trójwymiarowe tensory wag z dwuwymiarowymi macierzami odchylenia. W tym przypadku pierwszy wymiar obu jest traktowany jako wielkość partii, która jest wyrównana z pierwszym wymiarem danych input
i używany jest wariant operacji matmul(_:_:)
wsadowej, w ten sposób stosując inną wagę i obciążenie dla każdego elementu w partii wejściowej.
Matryca wag.
Deklaracja
public var weight: Tensor<Scalar>
Wektor odchylenia.
Deklaracja
public var bias: Tensor<Scalar>
Elementowa funkcja aktywacji.
Deklaracja
@noDerivative public let activation: Activation
Tworzy instancję na podstawie podanej wagi, opcjonalnego odchylenia i funkcji aktywacji.
Notatka
obecnie jedynym parametrem różniczkującym jestweight
.bias
można uczynić parametrem różniczkowalności poOptional
warunkowym spełnieniuDifferentiable
: TF-499.Deklaracja
@differentiable(wrt: weight) public init( weight: Tensor<Scalar>, bias: Tensor<Scalar>? = nil, activation: @escaping Activation )
Tworzy warstwę
Dense
o określonym rozmiarze wejściowym, rozmiarze wyjściowym i funkcji aktywacji opartej na elementach. Macierz wag jest tworzona za pomocą kształtu[inputSize, outputSize]
, a wektor odchylenia jest tworzony za pomocą kształtu[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, której należy użyć. Wartość domyślna to
identity(_:)
.weightInitializer
Inicjator do użycia dla
weight
.biasInitializer
Inicjator używany do
bias
.