public struct BidirectionalRecurrentLayer<Cell: RecurrentLayerCell>: Layer
where Cell.TimeStepOutput: Mergeable
Declaração
public typealias Input = [Cell.TimeStepInput]
Declaração
public typealias Output = [Cell.TimeStepOutput]
Declaração
public typealias MergeFunction = @differentiable (Cell.TimeStepOutput, Cell.TimeStepOutput) -> Cell.TimeStepOutput
A camada recorrente direta.
Declaração
public var forward: RecurrentLayer<Cell>
A camada recorrente reversa.
Declaração
public var backward: RecurrentLayer<Cell>
A função diferenciável usada para mesclar saídas de camada recorrente direta e reversa.
Declaração
@noDerivative public var mergeFunction: MergeFunction { get }
Cria uma instância a partir da célula da camada recorrente fornecida e da função de mesclagem.
Declaração
public init(_ cell: @autoclosure () -> Cell, mergeFunction: @escaping MergeFunction = concatenate)
Declaração
@differentiable public func lastOutput( from inputs: Input, initialForwardLayerState: Cell.State, initialBackwardLayerState: Cell.State ) -> Cell.TimeStepOutput
Declaração
@differentiable public func lastOutput(from inputs: Input) -> Cell.TimeStepOutput