Tektip Olmayan Eğitim Dönemleri

public final class NonuniformTrainingEpochs<
  Samples: Collection,
  Entropy: RandomNumberGenerator
>: Sequence, IteratorProtocol

Numuneler eşit boyutta olmadığında bir DNN'yi eğitmek için uygun olan numune partilerinin sonsuz bir koleksiyonudur.

Her dönemdeki partiler:

  • hepsinde tam olarak aynı sayıda örnek var.
  • Benzer büyüklükteki örneklerden oluşur.
  • Maksimum örnek boyutu, çağda kullanılan tüm örneklerin maksimum boyutu olan bir partiyle başlayın.
  • samples örnekleri batchSize boyutunda gruplar halinde çizen bir örnek oluşturur.

    beyan

    public init(
      samples: Samples,
      batchSize: Int,
      entropy: Entropy,
      batchesPerSort: Int? = nil,
      areInAscendingSizeOrder:
        @escaping (Samples.Element, Samples.Element) -> Bool
    )

    Parametreler

    entropy

    Örnek sıralamasını karıştırmak için kullanılan bir rastgelelik kaynağı. self içinde depolanacaktır, dolayısıyla yalnızca sözde rastgele ise ve değer semantiğine sahipse, dönemlerin sırası belirleyicidir ve diğer işlemlere bağlı değildir.

    batchesPerSort

    Örnek boyutlarının benzer şekilde gruplandırılacağı partilerin sayısı veya uygulamanın bir sayı seçmesi gerektiğini belirtmek için nil . Çok yüksek bir değerin seçilmesi birçok eğitim şemasında örnek karıştırmanın etkilerini yok edebilir ve bu da kötü sonuçlara yol açabilir. Çok düşük seçim yapmak, belirli bir partideki boyutların benzerliğini azaltacak ve verimsizliğe yol açacaktır.

    areInAscendingSizeOrder

    birinci parametrenin boyutu ikinci parametrenin boyutundan küçükse true döndüren bir yüklem.

  • Her dönemin türü, örnek gruplarından oluşan bir koleksiyon.

    beyan

    public typealias Element = Slices<
      Sampling<Samples, Array<Samples.Index>.SubSequence>
    >
  • Sırayla sonraki dönemi döndürür.

    beyan

    public func next() -> Element?
`Entropy` == `SystemRandomNumberGenerator` olduğunda kullanılabilir
  • samples örnekleri batchSize boyutunda gruplar halinde çizen bir örnek oluşturur.

    beyan

    public convenience init(
      samples: Samples,
      batchSize: Int,
      batchesPerSort: Int? = nil,
      areInAscendingSizeOrder:
        @escaping (Samples.Element, Samples.Element) -> Bool
    )

    Parametreler

    batchesPerSort

    Örnek boyutlarının benzer şekilde gruplandırılacağı partilerin sayısı veya uygulamanın bir sayı seçmesi gerektiğini belirtmek için nil . Çok yüksek bir değerin seçilmesi birçok eğitim şemasında örnek karıştırmanın etkilerini yok edebilir ve bu da kötü sonuçlara yol açabilir. Çok düşük seçim yapmak, belirli bir partideki boyutların benzerliğini azaltacak ve verimsizliğe yol açacaktır.

    areInAscendingSizeOrder

    birinci parametrenin boyutu ikinci parametrenin boyutundan küçükse true döndüren bir yüklem.