public final class NonuniformTrainingEpochs<
Samples: Collection,
Entropy: RandomNumberGenerator
>: Sequence, IteratorProtocol
Una secuencia infinita de colecciones de lotes de muestras adecuadas para entrenar un DNN cuando las muestras no tienen un tamaño uniforme.
Los lotes en cada época:
- todos tienen exactamente el mismo número de muestras.
- se forman a partir de muestras de tamaño similar.
- comience con un lote cuyo tamaño máximo de muestra sea el tamaño máximo de todas las muestras utilizadas en la época.
Crea una instancia que extrae muestras de
samples
en lotes de tamañobatchSize
.Declaración
Parámetros
entropy
una fuente de aleatoriedad utilizada para mezclar el orden de las muestras. Se almacenará en
self
, por lo que si es solo pseudoaleatorio y tiene semántica de valor, la secuencia de épocas es determinista y no depende de otras operaciones.batchesPerSort
el número de lotes entre los cuales agrupar tamaños de muestra de manera similar, o
nil
para indicar que la implementación debe elegir un número. Una elección demasiado alta puede destruir los efectos de la mezcla de muestras en muchos esquemas de entrenamiento, lo que lleva a resultados deficientes. Elegir un tamaño demasiado bajo reducirá la similitud de tamaños en un lote determinado, lo que generará ineficiencia.areInAscendingSizeOrder
un predicado que devuelve
true
si y sólo si el tamaño del primer parámetro es menor que el del segundo.Devuelve la siguiente época en secuencia.
Declaración
public func next() -> Element?
Crea una instancia que extrae muestras de
samples
en lotes de tamañobatchSize
.Declaración
Parámetros
batchesPerSort
el número de lotes entre los cuales agrupar tamaños de muestra de manera similar, o
nil
para indicar que la implementación debe elegir un número. Una elección demasiado alta puede destruir los efectos de la mezcla de muestras en muchos esquemas de entrenamiento, lo que lleva a resultados deficientes. Elegir un tamaño demasiado bajo reducirá la similitud de tamaños en un lote determinado, lo que generará ineficiencia.areInAscendingSizeOrder
un predicado que devuelve
true
si y sólo si el tamaño del primer parámetro es menor que el del segundo.