Caffe初学拾遺(一)簡単な命令
Original Source : Alex’s CIFAR-10 tutorial
ここではCIFAR-10データセットを例に、Caffeのtrainおよびtest操作について簡単に説明する.
1. solver.prototxtおよびcifar 10_full_train_test.prototxtの違い:
CIFAR-10トレーニングネットワークプロファイルとテストネットワークプロファイルが同一のcifar 10_full_train_test.prototxtファイル.
通常、モデルフォルダのAlexNetのような3つが現れる.prototxtファイル、train_val.prototxtはこれと似ています.
そしてprototxtはグローバルパラメータを含むプロファイルで、主にtrainおよびfine-tuningに使用され、testでは不要です.
2. cifar10_full_train_test.prototxtのデータ入力:
1で述べたように、ここで定義する
train
および
test
を選択します.
3. cifar10_quick_solver.prototxtの説明:
500回のトレーニング反復ごとに検証テストを行います(
validation
)は、訓練が終わってからテストを行うわけではありません(
test
).
保存する場合
snapshot_format: HDF5
生成されます
.h5
トレーニングを続行するための接尾辞のスナップショット
fine-tuning.
この文を注釈すると生成される.caffemodel接尾辞権値ファイルは、トレーニング、fine-tuning、またはtestを継続するために使用されます.
4.トレーニング:
ネットワーク構造
cifar10_quick_solver.prototxt
ファイルには次のものがあります.
5.利用
snapshot
トレーニングの継続:
4000回の反復後のスナップショットを利用しています
.h5
6.テスト:
すべての
GPU
ロード前に5000回反復したmodel
ここではCIFAR-10データセットを例に、Caffeのtrainおよびtest操作について簡単に説明する.
1. solver.prototxtおよびcifar 10_full_train_test.prototxtの違い:
CIFAR-10トレーニングネットワークプロファイルとテストネットワークプロファイルが同一のcifar 10_full_train_test.prototxtファイル.
通常、モデルフォルダのAlexNetのような3つが現れる.prototxtファイル、train_val.prototxtはこれと似ています.
そしてprototxtはグローバルパラメータを含むプロファイルで、主にtrainおよびfine-tuningに使用され、testでは不要です.
2. cifar10_full_train_test.prototxtのデータ入力:
layer {
name: "cifar"
type: "Data"
top: "data"
top: "label"
include {
phase: TRAIN
}
transform_param {
mean_file: "examples/cifar10/mean.binaryproto"
}
data_param {
source: "examples/cifar10/cifar10_train_lmdb"
batch_size: 100
backend: LMDB
}
}
layer {
name: "cifar"
type: "Data"
top: "data"
top: "label"
include {
phase: TEST
}
transform_param {
mean_file: "examples/cifar10/mean.binaryproto"
}
data_param {
source: "examples/cifar10/cifar10_test_lmdb"
batch_size: 100
backend: LMDB
}
}
1で述べたように、ここで定義する
train
および
test
を選択します.
3. cifar10_quick_solver.prototxtの説明:
# Carry out testing every 500 training iterations.
test_interval: 500
500回のトレーニング反復ごとに検証テストを行います(
validation
)は、訓練が終わってからテストを行うわけではありません(
test
).
# snapshot intermediate results
snapshot: 4000
snapshot_format: HDF5
保存する場合
snapshot_format: HDF5
生成されます
.h5
トレーニングを続行するための接尾辞のスナップショット
fine-tuning.
この文を注釈すると生成される.caffemodel接尾辞権値ファイルは、トレーニング、fine-tuning、またはtestを継続するために使用されます.
4.トレーニング:
caffe train \
--solver=examples/cifar10/cifar10_quick_solver.prototxt
ネットワーク構造
cifar10_quick_solver.prototxt
ファイルには次のものがあります.
net: "examples/cifar10/cifar10_quick_train_test.prototxt"
5.利用
snapshot
トレーニングの継続:
caffe train \
--solver=examples/cifar10/cifar10_quick_solver_lr1.prototxt \
--snapshot=examples/cifar10/cifar10_quick_iter_4000.solverstate.h5
4000回の反復後のスナップショットを利用しています
.h5
6.テスト:
sudo caffe test \
--model=./examples/cifar10/cifar10_train_test.prototxt --weights=./examples/cifar10/cifar10_quick_iter_5000.caffemodel --iterations 100 -gpu all
すべての
GPU
ロード前に5000回反復したmodel