Pythorch模型状态保存和加载

torch-model-state的Python项目详细描述


火炬模型状态Build StatuscodecovPyPI version

pytorch模型状态保存和加载。

安装

需要Python3.6+。

pip install torch-model-state

用法

Python:

importboximporttorch_model_statefromtorch.optimimportSGDconfig={'type':'MobileNetV2'# need install torch-basic-models}model=box.factory(config=config,tag='model')optimizer=SGD(model.parameters(),lr=0.1)state=torch_model_state.to_state(model=model,config=config,optimizers=[optimizer])torch_model_state.save_state_file(state=state,file_path='checkpoint.sf')state=torch_model_state.load_state_file(file_path='checkpoint.sf',device='cpu')torch_model_state.from_state(state,model,[optimizer],device='cpu')

直接从状态文件(.sf)加载:

importtorch_model_statemodel=torch_model_state.load_model_from_state(file_path='checkpoint.sf',device='cpu')

客户端:

# show help
torch-model-state -h
#> usage: torch-model-state [-h] [--load_model] [--extra_import EXTRA_IMPORT]#>                          [--device DEVICE]#>                          state_file#>#> Viewer of PyTorch State File [.sf]#>#> positional arguments:#>   state_file            path of PyTorch state file#>#> optional arguments:#>   -h, --help            show this help message and exit#>   --load_model          load model and show#>   --extra_import EXTRA_IMPORT#>                         import extra models#>   --device DEVICE       load device, cpu in default# view basic info of state file
torch-model-state checkpoint.sf
#> {#>   "config": {#>     "type": "MobileNetV2"#>   },#>   "info": null,#>   "timestamp": "2019-04-27 22:42:55.345000"#> }# view & load Model
torch-model-state checkpoint.sf --load_model
#> {#>   "config": {#>     "type": "MobileNetV2"#>   },#>   "info": null,#>   "timestamp": "2019-04-27 22:42:55.345000"#> }#> MobileNetV2(#>   (blocks): Sequential(#>     (0): Sequential(#>       (0): Conv2d(3, 32, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False)#>       (1): BatchNorm2d(32, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)#>       (2): InplaceReLU6(inplace)#>     )#>   ...# export to ONNX
torch-model-state checkpoint.sf --export_onnx checkpoint.onnx

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

推荐PyPI第三方库


热门话题
java JavaFX:无法在GridPane内水平居中放置行单元格   java GAE flex Jersey Web服务返回404   java使用SLF4J,是否可以对错误/警告采取行动?   如何使用Java解析每个不同键和值的JSON对象?   java如何在azure服务总线中始终侦听队列并截获每条消息   java需要退出循环并修复打印顺序错误(基本计算器)   java在Kafka的哪个分区中有多少数据?   在Java中访问无顶级类的非顶级类的编译器构造   java如何从maven项目生成jar   java如何使用amazon资源名称(ARN)作为标识符来查找amazon资源?   java为什么我的程序忽略else语句   java如何控制JTable中的字体样式、颜色和大小?   java对命令使用多个类,命令不起作用?   树集中的java字母排序不起作用   java将变量作为正则表达式传递   java TestNG XML中的一组值   java什么时候应该重写Equals函数?   Java中通过SSL使用web服务的web服务   java LibGDX以不同的速度移动对象   java中“and”的正则表达式