public struct Embedding<Scalar> : Module where Scalar : TensorFlowFloatingPoint
Una capa de incrustación.
Embedding
es efectivamente una tabla de búsqueda que asigna índices de un vocabulario fijo a representaciones vectoriales de tamaño fijo (densas), por ejemplo [[0], [3]] -> [[0.25, 0.1], [0.6, -0.2]]
.
Una tabla de búsqueda que se puede aprender y que asigna índices de vocabulario a sus densas representaciones vectoriales.
Declaración
public var embeddings: Tensor<Scalar>
Crea una capa
Embedding
con incrustaciones de formas inicializadas aleatoriamente(vocabularySize, embeddingSize)
para que cada índice de vocabulario reciba una representación vectorial.Declaración
public init( vocabularySize: Int, embeddingSize: Int, embeddingsInitializer: ParameterInitializer<Scalar> = { Tensor(randomUniform: $0) } )
Parámetros
vocabularySize
El número de índices (palabras) distintos en el vocabulario. Este número debe ser el índice entero más grande más uno.
embeddingSize
El número de entradas en una única representación vectorial de incrustación.
embeddingsInitializer
Inicializador que se utilizará para los parámetros de incrustación.
Crea una capa
Embedding
a partir de las incrustaciones proporcionadas. Útil para introducir incrustaciones previamente entrenadas en un modelo.Declaración
public init(embeddings: Tensor<Scalar>)
Parámetros
embeddings
La tabla de incrustaciones previamente entrenada.
Devuelve una salida reemplazando cada índice en la entrada con la representación vectorial densa correspondiente.
Declaración
Valor de retorno
El tensor creado reemplazando los índices de entrada con sus representaciones vectoriales.