基于PyTorch的神经网络训练流水线。旨在规范培训过程并提高编码性能

piepline的Python项目详细描述


皮耶普林

基于PyTorch的神经网络训练流水线。旨在规范训练过程和加速实验。在

Build StatusCoverage StatusMaintainabilityGitter chat

  • 核心是大约2K行,由测试覆盖,您不需要再编写
  • 灵活可定制的培训流程
  • 检查点管理和列车进程恢复(独立于源设备和目标设备)
  • 通过内置(tensorboardMatplotlib)或自定义监视器进行度量处理和可视化
  • 培训最佳实践(例如学习率衰减和硬负面挖掘)
  • 指标记录和比较(DVC兼容)

入门:

文档

Documentation Status

参见示例

PiePline简介:

importtorchfromneural_pipeline.builtin.monitors.tensorboardimportTensorboardMonitorfromneural_pipeline.monitoringimportLogMonitorfromneural_pipelineimportDataProducer,TrainConfig,TrainStage,\
    ValidationStage,Trainer,FileStructManagerfromsomethigimportMyNet,MyDatasetfsm=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()

这个例子是用Tensorflow中的Visualization和metrics logging在MyDataset上训练MyNet,以便进行进一步的实验比较。在

安装:

PyPI versionPyPI Downloads/MonthPyPI Downloads

pip install piepline

对于builtin模块使用install:

pip install tensorboardX matplotlib

在最新版本发布到PyPi之前安装它

pip install -U git+https://github.com/PiePline/piepline

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java初学者Swing递归   java将hashmap转换为JSON字符串   cURL和java字符串变量出错   java为什么不将其视为多重继承,而所有类都首先从对象类扩展,然后再扩展其他类   java如何在eclipse中添加插件依赖项   使用java从Ms word表中提取图片   java实现可比较的接口   验证生成的事务时发生java错误。木栓   java@OneToMany和不同的主键   java Jaxb2在相对路径上找不到xsd架构   java客户端C++服务器数据发送/接收问题   javajaxws-webservice。改变节点结构   java如何将带有特殊字符的字符串转换为另一个转义字符串   netbeans如何链接JGraph传感器和Java邮件?   java如何在单个tomcat中检查每个web应用程序的内存大小?   客户端图形QLJava类生成器