Pythorch模块训练器

pytorchtrainer的Python项目详细描述


Pythorch培训师

CircleCI

您是否厌倦了编写那些相同的epoch和数据加载程序循环来训练pytorch模块? 别再看了,Pythorch Trainer是一个库,它隐藏了所有那些应该是Pythorch本机的枯燥的训练代码行。

您还将受益于以下功能:

  • 早停:停滞一段时间后停止训练
  • 检查点:定期保存模型和估计器
  • CSV文件写入程序输出日志
  • 有几个指标可用:所有默认Pythorch损失函数、精度、MAE
  • 控制台上的进度条
  • sigint处理:handle ctrl-c
  • 模型的数据类型(float32float64

示例

代码示例可以在example folder中找到。

下面是一个简单的示例:

importtorchimportpytorchtrainerasptt# Your usual model, optimizer, loss function and data loadersmodel=MyModel()optimizer=torch.optim.Adam(self.model.parameters(),lr=1e-3)criterion=torch.nn.MSELoss()train_loader=MyTrainDataloader()validation_loader=MyValidationDataloader()# instantiate a default trainertrainer=ptt.create_default_trainer(model,optimizer,criterion)# optionally save a checkpoint after every 10 epochstrainer.register_post_epoch_callback(ptt.checkpoint.SaveCheckpointCallback(save_every=10))# optionally compute validation loss after every epochvalidation_callback=ptt.callback.ValidationCallback(validation_loader,ptt.metric.Loss(criterion),validate_every=1)trainer.register_post_epoch_callback(validation_callback)# optionally save training and validation loss after every iteration using default save directorytrainer.register_post_iteration_callback(ptt.callback.CsvWriter(save_every=1,extra_header=[validation_callback.state_attribute_name],callback=lambdastate:[state.get(validation_callback.state_attribute_name)]))# run the trainingtrainer.train(train_loader,max_epochs=100)

依赖关系

贡献

请随时提交问题或请求。但是在你阅读之前请先阅读contributing guidelines

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

推荐PyPI第三方库


热门话题
java实现双锁并发队列   java如何更改SpringWS 2.4.4版或更高版本中maxOccurs的默认限制?   java Selenium RC如何处理动态行?   java何时引入Javac StringBuilder/StringBuffer优化?   java mediaplayer在R.raw Android上失败   java JPA2:不区分大小写,就像在任何地方匹配一样   如何从JDK15中提取java预览类文件?   java与mySQL删除查询不一致   从Shutdownow()返回的java列表<Runnable>无法转换为提交的Runnable   java如何从回调接口获取对象值?   java如何获得视图的高度,在xml中可见性和高度定义为wrap_内容?   postgresql Mybatis在启动时遇到“由以下原因引起:java.net.UnknownHostException:localhost”,为什么?   带有实例调用的方法调用的java intellij格式化程序换行   由于特定的第三方库,java Proguard产生运行时错误   动画JAVA JPanel同时滑出和滑入