BrainScript Train, Test, Eval
Aquí se describen los comandos train
principales de nivel superior y test
/eval
sus parámetros correspondientes. Para obtener comandos de nivel superior adicionales, consulte la página correspondiente.
Train (comando)
Este comando pide a CNTK entrenar un modelo. En la página Información general del archivo de configuración se proporciona un ejemplo de una train
sección de comandos. Los parámetros relacionados son:
reader
: bloque de configuración del lector que se usa para determinar cómo cargar datos de entrada. Para obtener más información, consulte Bloque lector.SGD
– la configuración de entrenamiento de SGD. Para obtener más información, consulte Bloque SGD.BrainScriptNetworkBuilder
: bloque de configuración de BrainScript. Para obtener más información, consulte BrainScript Network Builder.SimpleNetworkBuilder
: bloque de configuración simple del generador de red. Para obtener más información, consulte Simple Network Builder.cvReader
: (opcional) el bloque de configuración del lector para los datos de validación cruzada.makeMode
: si se establecetrue
en (valor predeterminado), el entrenamiento continuará desde cualquier época interrumpida. Si se establece enfalse
el entrenamiento se reiniciará desde cero.firstMBsToShowResult
: indica el número de minibaches al principio de una época para mostrar resultados intermedios para individualmente.numMBsToShowResult
: indica después de cuántos minibatches se deben mostrar los resultados intermedios.
Comando Test o Eval
Estos comandos evalúan o prueban un modelo de precisión, normalmente con un conjunto de datos de prueba. Los parámetros relacionados son:
reader
: bloque de configuración del lector para leer los datos de prueba. Para obtener más información, consulte Bloque lector.modelPath
: ruta de acceso al modelo que se va a evaluar.BrainScriptNetworkBuilder
: si se especifica, el modelo no solo se lee demodelPath
sino que se construye a partir de esta configuración. Esto se usa para modificar modelos sobre la marcha para su evaluación.minibatchSize
: tamaño del minibatch que se va a usar al leer y procesar el conjunto de datos.epochSize
: el tamaño del conjunto de datos. El valor predeterminado es0
. Todo el conjunto de datos se evaluará si está establecido en0
.numMBsToShowResult
: indica después de cuántos minibatches se deben mostrar los resultados intermedios.evalNodeNames
: matriz de uno o varios nombres de nodo que se van a evaluar.distributedMBReading
- acepta el valor booleano: true o false; el valor predeterminado es false. Debe establecerse en true para los lectores que admiten la lectura de minibatch distribuida. Si usa CNTK Lector de formato de texto, Lector de imágenes o Lector de datos compuestos, debe establecer distributedMBReading=true.
En el ejemplo siguiente se toma el ejemplo Simple2d. En ese ejemplo, modelPath
se define en el nivel superior y se selecciona automáticamente mediante el train
comando y 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"
]
]
]
]