Condividi tramite


BrainScript Train, Test, Eval

Di seguito vengono descritti i comandi train principali di primo livello e test/eval i relativi parametri corrispondenti. Per altri comandi di primo livello, vedere la pagina corrispondente.

Comando Train

Questo comando chiede CNTK di eseguire il training di un modello. Nella pagina panoramica del file di configurazione è disponibile un esempio per una train sezione di comando. I parametri correlati sono:

  • reader : blocco di configurazione lettore usato per determinare come caricare i dati di input. Per informazioni dettagliate, vedere Blocco lettore.

  • SGD : configurazione del training SGD. Per informazioni dettagliate, vedere blocco SGD.

  • BrainScriptNetworkBuilder : blocco di configurazione BrainScript. Per informazioni dettagliate, vedere BrainScript Network Builder.

  • SimpleNetworkBuilder : blocco di configurazione semplice del generatore di rete. Per informazioni dettagliate, vedere Simple Network Builder.For details see Simple Network Builder.

  • cvReader : (facoltativo) blocco di configurazione del lettore per i dati di convalida incrociata.

  • makeMode : se impostato su true (impostazione predefinita) il training continuerà da qualsiasi periodo interrotto. Se impostato su false training verrà riavviato da zero.

  • firstMBsToShowResult – indica il numero di minibatches all'inizio di un periodo per visualizzare i risultati intermedi per singolarmente.

  • numMBsToShowResult : indica dopo quanti minibatches devono essere visualizzati i risultati intermedi.

Test o comando Eval

Questi comandi valutano/testano un modello per l'accuratezza, in genere con un set di dati di test. I parametri correlati sono:

  • reader : blocco di configurazione del lettore per leggere i dati di test. Per informazioni dettagliate, vedere Blocco lettore.

  • modelPath : percorso del modello da valutare.

  • BrainScriptNetworkBuilder : se viene specificato, il modello non viene letto solo da modelPath ma costruito invece da questa configurazione. Viene usato per modificare i modelli in tempo reale per la valutazione.

  • minibatchSize : le dimensioni del minibatch da usare durante la lettura e l'elaborazione del set di dati.

  • epochSize : le dimensioni del set di dati. Il valore predefinito è 0. L'intero set di dati verrà valutato se è impostato su 0.

  • numMBsToShowResult : indica dopo quanti minibatches devono essere visualizzati i risultati intermedi.

  • evalNodeNames : matrice di uno o più nomi di nodi da valutare.

  • distributedMBReading - accetta il valore booleano: true o false; il valore predefinito è false. Deve essere impostata su true per i lettori che supportano la lettura di minibatch distribuiti. Se si usa CNTK lettore di formato testo, lettore di immagini o lettore di dati compositi, è necessario impostare distributedMBReading=true.

Nell'esempio seguente viene illustrato l'esempio Simple2d. In questo esempio l'oggetto modelPath viene definito nel livello superiore e selezionato automaticamente dal train comando e 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"
            ]
        ]
    ]
]