BrainScript Train, Test, Eval
Här beskriver vi de viktigaste kommandona train
på den översta nivån och test
/eval
deras motsvarande parametrar. Ytterligare kommandon på den översta nivån finns på motsvarande sida.
Träningskommando
Det här kommandot ber CNTK att träna en modell. Ett exempel på ett train
kommandoavsnitt finns på översiktssidan för konfigurationsfilen . De relaterade parametrarna är:
reader
– det läsarkonfigurationsblock som används för att bestämma hur indata ska läsas in. Mer information finns i Läsarblock.SGD
– SGD-träningskonfigurationen. Mer information finns i SGD-block.BrainScriptNetworkBuilder
– Konfigurationsblocket för BrainScript. Mer information finns i BrainScript Network Builder.SimpleNetworkBuilder
– det enkla konfigurationsblocket för nätverksverktyget. Mer information finns i Simple Network Builder.cvReader
– (valfritt) läsarkonfigurationsblocket för korsvalideringsdata.makeMode
– om det är inställt påtrue
(standard) fortsätter träningen från den epok som avbryts. Om den ställs in påfalse
träningen startas den om från början.firstMBsToShowResult
– anger för hur många minibatches i början av en epok för att visa mellanliggande resultat för individuellt.numMBsToShowResult
– anger efter hur många minibatches de mellanliggande resultaten ska visas.
Test- eller Eval-kommando
Dessa kommandon utvärderar/testar en modell för noggrannhet, vanligtvis med en testdatauppsättning. De relaterade parametrarna är:
reader
– läsarkonfigurationsblocket för att läsa testdata. Mer information finns i Läsarblock.modelPath
– sökvägen till modellen som ska utvärderas.BrainScriptNetworkBuilder
– Om detta anges är modellen inte bara läsa frånmodelPath
utan konstrueras i stället från den här konfigurationen. Detta används för att ändra modeller i farten för utvärdering.minibatchSize
– den minibatchstorlek som ska användas vid läsning och bearbetning av datauppsättningen.epochSize
– storleken på datauppsättningen. Standardvärdet är0
. Hela datamängden utvärderas om den är inställd på0
.numMBsToShowResult
– anger efter hur många minibatches de mellanliggande resultaten ska visas.evalNodeNames
– en matris med ett eller flera nodnamn att utvärdera.distributedMBReading
- accepterar booleskt värde: sant eller falskt; standardvärdet är false. Det ska vara inställt på sant för läsare som stöder distribuerad minibatch-läsning. Om du använder CNTK textformatläsare, bildläsare eller sammansatt dataläsare bör du ange distributedMBReading=true.
Följande exempel är taget som Simple2d-exemplet. I det exemplet modelPath
definieras på den översta nivån och hämtas automatiskt av både train
kommandot och test
.
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"
]
]
]
]