次の方法で共有


BrainScript Train, Test, Eval

ここでは、主要な最上位レベルのコマンド train とそれに test/eval 対応するパラメーターについて説明します。 その他の最上位コマンドについては、 対応するページを参照してください。

Train コマンド

このコマンドは、モデルのトレーニングをCNTKに求めます。 コマンド セクションの train 例は、 構成ファイルの概要 ページにあります。 関連するパラメーターは次のとおりです。

  • reader – 入力データの読み込み方法を決定するために使用されるリーダー構成ブロック。 詳細については、 閲覧者ブロックを参照してください。

  • SGD – SGD トレーニングのセットアップ。 詳細については、 SGD ブロックを参照してください。

  • BrainScriptNetworkBuilder – BrainScript 構成ブロック。 詳細については、 BrainScript ネットワーク ビルダーを参照してください。

  • SimpleNetworkBuilder – 単純なネットワーク ビルダー構成ブロック。 詳細については、「 Simple Network Builder」を参照してください。

  • cvReader – (省略可能) クロス検証データのリーダー構成ブロック。

  • makeMode – (既定値) に true 設定すると、中断されたエポックからトレーニングが続行されます。 トレーニングに false 設定すると、最初から再起動します。

  • firstMBsToShowResult – エポックの開始時に個々の中間結果を表示するミニバッチの数を示します。

  • numMBsToShowResult – 中間結果を表示する必要があるミニバッチの数を示します。

Test または Eval コマンド

これらのコマンドは、モデルの精度を評価/テストします。通常はテスト データセットを使用します。 関連するパラメーターは次のとおりです。

  • reader – テスト データを読み取るリーダー構成ブロック。 詳細については、 閲覧者ブロックを参照してください。

  • modelPath – 評価するモデルへのパス。

  • BrainScriptNetworkBuilder – これが指定された場合、モデルは単に読み取 modelPath られただけでなく、この構成から構築されます。 これは、評価のためにその場でモデルを変更するために使用されます。

  • minibatchSize – データセットの読み取りと処理に使用するミニバッチ サイズ。

  • epochSize – データセットのサイズ。 既定値は 0 です。 に設定 0されている場合、データセット全体が評価されます。

  • numMBsToShowResult – 中間結果を表示する必要があるミニバッチの数を示します。

  • evalNodeNames – 評価する 1 つ以上のノード名の配列。

  • distributedMBReading - ブール値を受け入れます: true または false。既定値は false です。 分散ミニバッチ読み取りをサポートするリーダーには true に設定する必要があります。 CNTKテキスト形式リーダー、イメージ リーダー、または複合データ リーダーを使用している場合は、distributedMBReading=true を設定する必要があります。

次の例は、 Simple2d の例です。 この例では、modelPath最上位レベルで定義され、コマンドとtestコマンドの両方によって自動的にtrain取得されます。

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"
            ]
        ]
    ]
]