2

6000 個の特徴を持つ 200 個のトレーニング データがあり、ラベルは (0, +1) であり、HDF5形式に変換されています。(そのように、私は77のテストデータを持っています)。

反復に対する精度などの統計のプロットに取り組んでいます。そのために parse_log と gnuplot を使用します。今私の問題は、テストセットとトレインセットの両方の精度が必要なことです。つまり、TEST フェーズが両方のデータベースに適用され、その結果、2 つの曲線がどのように進化するかを確認するために 2 つの精度の数値が得られるようにしたいと考えています。私accuracy layerの中で

train_val.prototxt

は:

layer {
  name: "accuracy"
  type: "Accuracy"
  bottom: "sigm_l2"
  bottom: "label1"
  top: "accuracy" 
}

私のsolver.prototxtは次のとおりです。

    test_state: { stage: 'test-on-train' }
    test_iter: 500
    test_state: { stage: 'test-on-test' }
    test_iter: 100
    test_interval: 500
    test_compute_loss: true
    base_lr: 0.00001
    momentum: 0.9
    weight_decay: 0.000005
    # The learning rate policy
    lr_policy: "inv"
    gamma: 0.0001
    power: 0.75
    # Display every 100 iterations
    display: 100
    # The maximum number of iterations
    max_iter: 65000
    # snapshot intermediate results
    # solver mode: CPU or GPU
    solver_mode: CPU

また、トレーニングとテストの両方の精度は次のとおりです。

(test_accuracy)

test_acc

そして、列車の精度は次のとおりです。

ここに画像の説明を入力

なぜ訓練の精度が反復で変化しないのだろうか(TRAINフェーズ)

4

0 に答える 0