Category: Python

  • .rand 와 .randn

    교재를 따라서 계속 실습하고 있는데 결과가 심하게 차이가 나서 무엇이 원인인지 찾아보았다. 실행을 덜 시켜서 그런가 싶어 끝까지 실행해 봤는데도 모르겠고, 오타가 있는지, 들여쓰기는 잘 되었는지 확인해 보아도 찾지를 못했다. Github에서 제공 코드를 받아서 실행해 봤더니 이건 또 실행이 잘 되었다. 그래서 코드를 출력한 다음에 하나하나 확인해 보았다. 그 결과 .randn으로 해야 할 것을 .rand 로 되어 있을 것을 알게 되었다.

    .randn은 평균이 0이고 분산이 1인 난수 생성할 때에 사용한다.

    .rand은 0에서 1사이에 균일한 난수를 생성할 때에 사용한다.

  • Hyperparameters

    Hyperparameters
    예시에서 사용하는 모델 층의 종류와 크기, 배치 크기, 학습률 등 머신러닝 모델이 매우지 않고 사용자가 직접 지정해주는 값을 ‘하이퍼파라 미터’라고 합니다. 모델의 가중치(파라미터)를 최적화하는데 많은 영향을 주게 됩니다. 따라서 이 하이퍼파라미터를 최적화하는 것도 딥러닝 에서 데이터를 모으는 과정만큼이나 중요합니다.

  • Python 3.5.10

    몇 일전에 release된 Python 3.5.10을 설치하여 보았다. 뭐가 문제인지는 모르겠으나 가장 중요한 Jupyter가 실행 안된다. 그래서 다시 이전 버젼으로 돌아왔다. 직접 컴파일하는 방식의 좋은 점은 이전 버젼 폴더로 가서 다시 sudo make install 하면 돌아갈 수 있다는게 장점인 것 같다.

  • 설치하기

    여러 번의 삽질로 대충 설치하는 방법을 알 것 같다. 가장 편하게 설치하는 방법은 Linux에 설치되어 있는 버젼을 그대로 이용하는 것이다. 민트의 경우에는 3.7.2인 것 같다. 우선 패키지 관리자인 pip를 설치한다. Python3으로 변경되었지만 절대 다수의 블로그에서는 pip3라고 안써둔다.

    sudo apt install python-pip3

    PyTorch 홈페이지에 들어가서 CPU만 사용하고, PIP, Linux 사용에 맞추면 다음과 같이 설치를 안내해준다. PyTorch를 배우기 위해 선택한 책이 일단 CPU만 사용하는 것으로 되어 있어서 이렇게 했다.

    pip3 install torch==1.6.0+cpu torchvision==0.7.0+cpu -f https://download.pytorch.org/whl/torch_stable.html

    pip가 아닌 pip3로 설치를 해야한다. 프로그래머들은 어디나 똑같은가 보다. 정확한 기억은 나지 않는데 이 쯤부터 PATH를 추가해 주어야 한다. 터미널에서 다음과 같이 입력한다

    PATH=/home/byun1114/.local/bin:$PATH

    대표적 IDE인 Jupyter를 설치한다.

    pip3 install jupyter

    Jupyter의 환경 설정 파일을 생성한다. 안해도 상관없는데 원격 접속을 편하게 하려면 꼭 거쳐야 한다.

    jupyter notebook --generate-config

    이러면 .jupyter 폴더에 설정 파일이 생성된다. 편하게 접속하고자 Jupyter를 통하거나 Python에서 다음을 실행한다.

    from notebook.auth import passwd
    passwd()

    실행하면 작은 따옴표에 길다라 해시값이 생성된다. 설정 파일을 열어서 다음의 내용을 추가해준다. 그리고 작업 폴더 변경도 찾아서 주석을 없애고 적어주면 귀찮으니 가장 하단에 적어주면서 추가해준다.

    c = get_config()
    c.NotebookApp.password ='생성문자'
    c.NotebookApp.notebook_dir = '/home/byun1114/data_pytorch'
    

    원격에서 Jupyter를 실행하기 위해서는 다음과 같이 실행한다. 기본 접속 포트는 8888이다.

    jupyter notebook --ip=* --no-browser