인공지능/딥러닝

[Jupyter Notebook] argparse 오류 발생시 해결 방법 easydict 사용

로밀리언 2020. 11. 25. 14:03
반응형

 

 

 

 

argparse 사용

import argparse

parser = argparse.ArgumentParser()
parser.add_argument("--n_epochs", type=int, default=200, help="number of epochs of training")
parser.add_argument("--batch_size", type=int, default=64, help="size of the batches")
parser.add_argument("--lr", type=float, default=0.0002, help="adam: learning rate")
parser.add_argument("--b1", type=float, default=0.5, help="adam: decay of first order momentum of gradient")
parser.add_argument("--b2", type=float, default=0.999, help="adam: decay of first order momentum of gradient")
parser.add_argument("--n_cpu", type=int, default=8, help="number of cpu threads to use during batch generation")
parser.add_argument("--latent_dim", type=int, default=100, help="dimensionality of the latent space")
parser.add_argument("--img_size", type=int, default=28, help="size of each image dimension")
parser.add_argument("--channels", type=int, default=1, help="number of image channels")
parser.add_argument("--sample_interval", type=int, default=400, help="interval betwen image samples")
opt = parser.parse_args()

 

usage: ipykernel_launcher.py [-h] [--n_epochs N_EPOCHS] [--batch_size BATCH_SIZE] [--lr LR] [--b1 B1] [--b2 B2] [--n_cpu N_CPU] [--latent_dim LATENT_DIM] [--img_size IMG_SIZE] [--channels CHANNELS] [--sample_interval SAMPLE_INTERVAL] ipykernel_launcher.py: error: unrecognized arguments: -f C:\~.json

 

An exception has occurred, use %tb to see the full traceback.

 

C:\~\envs\pytorch\lib\site-packages\IPython\core\interactiveshell.py:3351: UserWarning: To exit: use 'exit', 'quit', or Ctrl-D. warn("To exit: use 'exit', 'quit', or Ctrl-D.", stacklevel=1)

 

Jupyter Notebook에서 argparse 라이브러리를 사용하면 위와 같은 에러가 발생하는 것 같다. Jupyter Notebook에서 사용하려면  easydict 라이브러리를 활용해야 한다. 위에 코드를 아래와 같이 변경해주면 해당 에러가 발생하지 않는다.

 

easydict 사용

import easydict

opt = easydict.EasyDict({
 
        "n_epochs": 200,
 
        "batch_size": 64,
 
        "lr": 0.0002,
 
        "b1": 0.5,
 
        "b2": 0.999,
 
        "n_cpu": 8,
    
        "latent_dim": 100,
 
        "img_size": 28,
 
        "channels": 1,
 
        "sample_interval": 400
 
    
})
반응형