import torch from net.huffmancoding import huffman_encode_model, huffman_decode_model import util parser = argparse.ArgumentParser( description='Huffman encode a quantized model') parser.add_argument('model', type=str, help='saved quantized model') parser.add_argument('--no-cuda', action='store_true', default=False, help='disables CUDA') args = parser.parse_args() use_cuda = not args.no_cuda and torch.cuda.is_available() device = torch.device("cuda" if use_cuda else 'cpu') model = torch.load(args.model) model = huffman_encode_model(model) torch.save(model, 'saves/after-huffman.pth') ########################################################################################################################################################## ########################################################################################################################################################## ########################################################################################################################################################## ########################################################################################################################################################## model = torch.load(args.model) model = huffman_decode_model(model) print(model)
parser.add_argument('--test-batch-size', type=int, default=1000, metavar='N', help='input batch size for testing (default: 1000)') parser.add_argument('--no-cuda', action='store_true', default=False, help='disables CUDA') args = parser.parse_args() use_cuda = not args.no_cuda and torch.cuda.is_available() device = torch.device("cuda" if use_cuda else 'cpu') model = LeNet(mask=True).to(device) huffman_decode_model(model, 'encodings-48X') util.print_nonzeros(model) # Loader kwargs = {'num_workers': 5, 'pin_memory': True} if use_cuda else {} test_loader = torch.utils.data.DataLoader(datasets.MNIST( 'data', train=False, transform=transforms.Compose( [transforms.ToTensor(), transforms.Normalize((0.1307, ), (0.3081, ))])), batch_size=args.test_batch_size, shuffle=False, **kwargs)