piepline
1.0.0
신경망 교육 파이프 라인을 기반으로합니다. 교육 프로세스를 표준화하고 실험을 가속화하도록 설계되었습니다.
| 안정 : | 최신 : |
import torch
from neural_pipeline . builtin . monitors . tensorboard import TensorboardMonitor
from neural_pipeline . monitoring import LogMonitor
from neural_pipeline import DataProducer , TrainConfig , TrainStage ,
ValidationStage , Trainer , FileStructManager
from somethig import MyNet , MyDataset
fsm = FileStructManager ( base_dir = 'data' , is_continue = False )
model = MyNet (). cuda ()
train_dataset = DataProducer ([ MyDataset ()], batch_size = 4 , num_workers = 2 )
validation_dataset = DataProducer ([ MyDataset ()], batch_size = 4 , num_workers = 2 )
train_config = TrainConfig ( model , [ TrainStage ( train_dataset ),
ValidationStage ( validation_dataset )], torch . nn . NLLLoss (),
torch . optim . SGD ( model . parameters (), lr = 1e-4 , momentum = 0.5 ))
trainer = Trainer ( train_config , fsm , torch . device ( 'cuda:0' )). set_epoch_num ( 50 )
trainer . monitor_hub . add_monitor ( TensorboardMonitor ( fsm , is_continue = False ))
. add_monitor ( LogMonitor ( fsm ))
trainer . train ()이 예제는 텐서 플로우의 vizualisation 및 추가 실험 비교를위한 메트릭 로깅을 사용하여 mydataset에서 Mynet을 훈련시킵니다.
pip install piepline
builtin 모듈의 경우 : pip install tensorboardX matplotlib
pip install -U git+https://github.com/PiePline/piepline