Pythorch简易神经网络实验

easytorch的Python项目详细描述


EasyTorch是开始运行Pythorch实验的快速简便方法

作为一个博士生,我不能浪费时间在样板神经网络设置上,所以我开始了这种通用框架来快速运行实验。 由于我的研究集中在生物医学图像上,它包含了对图像处理有用的丰富实用程序。如果它对任何一个开始使用神经网络的人有用,我会非常高兴的。在

安装
  1. Pytorch official website安装最新的Pythorch和torchvision
  2. pip安装方便

Link to a full working example

Highlights

  • 一个方便的神经网络实验框架。在
  • 在新数据集上设置新实验的最小配置:
  • 使用您选择的神经网络架构。在
  • 创建一个指向data、ground truth和mask目录的python字典(数据规范.py). 在
  • 自动k折叠交叉验证。在
  • 自动记录/绘图和模型检查点。在
  • 从事各种神经网络相关任务。在
  • 支持GPU的指标,如精确度、召回率、f1、重叠和混淆矩阵,具有最大的GPU利用率。在
  • 能够自动组合多个数据集,而不必从原始位置移动数据。在

示例用例如下:

importargparsefromeasytorch.utils.defaultargsimportapimportdataspecsasdspecfromeasytorchimportEasyTorchfromclassificationimportMyTrainer,MyDatasetap=argparse.ArgumentParser(parents=[ap],add_help=False)dataspecs=[dspec.DRIVE,dspec.STARE]runner=EasyTorch(ap,dataspecs)if__name__=="__main__":runner.run(MyDataset,MyTrainer)runner.run_pooled(MyDataset,MyTrainer)

默认参数(可以扩展以添加自定义参数。请检查example

  • -nch/--num频道[3]
    • 输入通道数
  • -ncl/--num_类[2]
    • 输出类数
  • -b/--批处理大小[32]
  • -e/--epochs[51]
  • -lr/--学习率[0.001]
  • -gpus/--gpus[0,1]
    • 要使用的GPU列表。例如[0],[1],[0,1]
  • -pin/--pin内存[True]
  • -nw/--num个工人[2]
    • 数据加载的工作线程数,以便在加载小批量时cpu可以跟上GPU速度。在
  • -p/--阶段[必需]
    • 运行哪个阶段。可能的值是'train'和'test'。培训运行所有培训、验证和测试阶段。然而,测试阶段只运行测试阶段。在
  • -data/--dataset\u dir[数据集]
    • 数据集的基路径,其中包含data\u dir、labels、mask和split。在
  • -lim/--负载限制
    • 为调试目的指定要加载的数据集的限制。因为有时候我们想加载5到10张图片,在我们进行全面培训之前测试管道。在
  • -log/--log_dir[net_logs]
    • 保存结果的路径:绘图、模型检查点等。在
  • -pt/--预训练的路径[无]
    • 如果希望在除log_dir中的模型之外的任何其他模型上运行测试,则以前保存的最佳模型的完整路径。在
  • -d/--调试[True]
    • 启用/禁用调试。在
  • -s/--seed[随机]
    • 自定义种子以初始化模型。在
  • -f/--force[错误]
    • 如果为true,则重写现有的绘图和结果。在
  • -r/--模型比例尺[1]
    • 用于缩放模型呼吸的参数。在
  • -sp/--加载稀疏[False]
    • 在单个数据加载器中加载来自一个图像的所有数据,以便以后很容易组合成一个完整的图像。在
  • -nf/--num_折叠[10]
    • k-折叠交叉验证中的折叠数。在
培训+验证+测试
^{pr2}$
只测试
* $python main.py -p test -nch 3 -e 3 -b 2 -sp True

参考文献

如果您发现它很有用:): @杂项{easytorch, 作者:{Khanal,aathis}, 标题{快速神经网络实验}, 年份={2020}, publisher={GitHub}, journal={GitHub repository}, url={https://github.com/sraashis/easytorch} }在

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

推荐PyPI第三方库


热门话题
java JavaFX SwingWorker等价物?   java如何检查一个字符串只包含数字和一个小数点?   java遇到了异常组织。阿帕奇。卡塔琳娜。LifecycleException:无法启动组件   java如何从日期格式获取最低计时单位?   java应用服务器与开发过程的集成   java我无法运行Junit测试   无法在java多线程处理中维护生产者任务的顺序   java如何在CLI应用程序中“拦截”Ctrl+C?   java如何使用JSch进行原子SFTP文件传输,以便在写入过程完成之前无法访问该文件?   java当用户摆弄html范围滑块时,如何更改内容(文本)?   如何在Java中向现有文件追加文本?   JUnit测试中的java模拟Apache驼峰位置   java Maven更新项目和依赖项