BrainScript Train, Test, Eval
Burada ana üst düzey komutları train
ve test
/eval
bunların ilgili parametrelerini açıklayacağız. Ek üst düzey komutlar için ilgili sayfaya bakın.
Eğit komutu
Bu komut CNTK modeli eğitmek ister. Yapılandırma dosyasına genel bakış sayfasında bir train
komut bölümü örneği verilmiştir. İlgili parametreler şunlardır:
reader
– giriş verilerinin nasıl yükleneceğini belirlemek için kullanılan okuyucu yapılandırma bloğu. Ayrıntılar için bkz. Okuyucu bloğu.SGD
– SGD eğitim kurulumu. Ayrıntılar için bkz. SGD bloğu.BrainScriptNetworkBuilder
– BrainScript yapılandırma bloğu. Ayrıntılar için bkz. BrainScript Ağ Oluşturucusu.SimpleNetworkBuilder
– basit ağ oluşturucu yapılandırma bloğu. Ayrıntılar için bkz . Basit Ağ Oluşturucusu.cvReader
– (isteğe bağlı) çapraz doğrulama verileri için okuyucu yapılandırma bloğu.makeMode
– (varsayılan) olarak ayarlanırsatrue
eğitim kesintiye uğramış olan dönemlerden devam eder. Eğitim olarakfalse
ayarlanırsa sıfırdan yeniden başlatılır.firstMBsToShowResult
– ayrı ayrı ara sonuçları göstermek için bir dönem başında kaç küçük harf olduğunu gösterir.numMBsToShowResult
– ara sonuçların kaç küçük harften sonra gösterilmesi gerektiğini gösterir.
Test veya Değerlendirme Komutu
Bu komutlar genellikle bir test veri kümesiyle modeli doğruluk açısından değerlendirir/test edin. İlgili parametreler şunlardır:
reader
– test verilerini okumak için okuyucu yapılandırma bloğu. Ayrıntılar için bkz. Okuyucu bloğu.modelPath
– değerlendirilecek modelin yolu.BrainScriptNetworkBuilder
– Bu verilirse, model yalnızca bu yapılandırmadanmodelPath
değil, bu yapılandırmadan oluşturulur. Bu, modelleri değerlendirme için anında değiştirmek için kullanılır.minibatchSize
– veri kümesini okurken ve işlerken kullanılacak minibatch boyutu.epochSize
– veri kümesinin boyutu.0
varsayılan değerdir. veri kümesinin tamamı olarak ayarlandıysa0
değerlendirilir.numMBsToShowResult
– ara sonuçların kaç küçük harften sonra gösterilmesi gerektiğini gösterir.evalNodeNames
– değerlendirilecek bir veya daha fazla düğüm adı dizisi.distributedMBReading
- Boole değerini kabul eder: true veya false; varsayılan değer false'tur. Dağıtılmış minibatch okumayı destekleyen okuyucular için true olarak ayarlanmalıdır. CNTK Metin Biçimi Okuyucusu, Görüntü Okuyucusu veya Bileşik Veri Okuyucu kullanıyorsanız distributedMBReading=true ayarını yapmalısınız.
Aşağıdaki örnek Simple2d örneği olarak alınmıştır. Bu örnekte modelPath
, en üst düzeyde tanımlanır ve hem hem de train
test
komutu tarafından otomatik olarak alınır.
Simple_Demo_Test = [
action = "test"
# Parameter values for the reader
reader = [
readerType = "CNTKTextFormatReader"
file = "$DataDir$/SimpleDataTest_cntk_text.txt"
randomize = false
input = [
features = [
dim = 2 # two-dimensional input data
format = "dense"
]
labels = [
dim = 2 # two-dimensional labels
format = "dense"
]
]
]
]