希望增加从checkpoint文件直接解析参数的api
Created by: yangapku
如题,如果我拿到了一份checkpoint文件(自己训的或者从别人手中拿到),想不搭图就直接从checkpoint里面解析参数,用于了解checkpoint有哪些参数、检查checkpoint参数的值、以及进一步可能转换成其他格式,目前paddle似乎没有这样的api。唯一的办法是在代码里面先搭一个图,在图里面定义出checkpoint的所有参数,之后用paddle.fluid.io.load_persistables
读取checkpoint,最后再分别用numpy.array(fluid.global_scope().find_var(param_name).get_tensor())
来看,过于麻烦。而且从直觉上,checkpoint二进制文件本身应该包含了完整的参数名和参数值信息,我按道理就没有必要搭这个图,为什么没有一个直接解析二进制文件参数的api?
对比其他框架,torch的pt文件可以直接pickle读取,框架也提供了torch.load()
。Tensorflow里面也有pywrap_tensorflow.NewCheckpointReader()
都是可以直接读取的,我觉得paddle也有实现这样api的必要。