BrainScript Train, Test, Eval
Ici, nous décrivons les principales commandes de niveau supérieur et test
/eval
leurs paramètres correspondants.train
Pour obtenir des commandes de niveau supérieur supplémentaires, consultez la page correspondante.
Entraîner la commande
Cette commande demande CNTK d’entraîner un modèle. Un exemple de train
section de commande est fourni dans la page vue d’ensemble du fichier config . Les paramètres associés sont les suivants :
reader
: bloc de configuration de lecteur utilisé pour déterminer comment charger des données d’entrée. Pour plus d’informations, consultez le bloc Lecteur.SGD
– configuration de l’entraînement SGD. Pour plus d’informations, consultez le bloc SGD.BrainScriptNetworkBuilder
– le bloc de configuration BrainScript. Pour plus d’informations, consultez BrainScript Network Builder.SimpleNetworkBuilder
– le bloc de configuration du générateur de réseau simple. Pour plus d’informations, consultez Simple Network Builder.cvReader
– (facultatif) bloc de configuration du lecteur pour les données de validation croisée.makeMode
– s’il est défini surtrue
(par défaut) l’entraînement continuera à partir de toute époque interrompue. Si la valeur est définie surfalse
l’entraînement, redémarre à partir de zéro.firstMBsToShowResult
– indique le nombre de minibatches au début d’une époque pour afficher les résultats intermédiaires pour individuellement.numMBsToShowResult
: indique après le nombre de minibatches que les résultats intermédiaires doivent être affichés.
Test ou commande Eval
Ces commandes évaluent/testent un modèle pour la précision, généralement avec un jeu de données de test. Les paramètres associés sont les suivants :
reader
– bloc de configuration du lecteur pour lire les données de test. Pour plus d’informations, consultez le bloc Lecteur.modelPath
: chemin d’accès au modèle à évaluer.BrainScriptNetworkBuilder
- si cela est donné, le modèle n’est pas seulement lu à partirmodelPath
de mais à la place construit à partir de cette configuration. Il est utilisé pour modifier des modèles à la volée pour l’évaluation.minibatchSize
: taille de minibatch à utiliser lors de la lecture et du traitement du jeu de données.epochSize
– taille du jeu de données. La valeur par défaut est0
. L’ensemble du jeu de données sera évalué s’il est défini sur0
.numMBsToShowResult
: indique après le nombre de minibatches que les résultats intermédiaires doivent être affichés.evalNodeNames
– tableau d’un ou plusieurs noms de nœuds à évaluer.distributedMBReading
- accepte la valeur booléenne : true ou false; la valeur par défaut est false. Il doit être défini sur true pour les lecteurs qui prennent en charge la lecture de minibatch distribuée. Si vous utilisez CNTK lecteur de format texte, lecteur d’image ou lecteur de données composite, vous devez définir distributedMBReading=true.
L’exemple suivant est pris sous la forme de l’exemple Simple2d. Dans cet exemple, il modelPath
est défini au niveau supérieur et récupéré automatiquement par la commande et test
la train
commande.
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"
]
]
]
]