전체 글

현재 진행하는 개발 과정을 자주 기록하는 곳
개발/Python

Jupyter notebook kernel 등록

가상환경을 만들 때마다 ipykernel을 등록해줘야 하는 게 불편해서 글을 적어봅니다. (anaconda를 사용하고있음) kaggle이라는 가상환경 이름을 사용하겠습니다. 설치과정 1. 가상환경 생성 conda create -n testenv python=3.7 2. 가상환경 접속 source activate testenv 3. 가상환경에서 jupyter notebook 설치 pip install ipykernel jupyter 4. jupyter notebook에 가상환경 커널 등록 python -m ipykernel install --user --name testenv --display-name testenv 제거과정 1. 가상환경 나가기 source deactivate testenv 2. jupy..

개발/Tensorflow

CNN UnknownError: Failed to get convolution algorithm.

tensorflow-gpu를 설치하고 기본 예제코드를 돌렸을때는 문제가 없었으나 cudnn의 연산을 사용해야하는 cnn을 실행시켰을 때에 지속적으로 이런 메시지를 만나게 되었다. nvidia driver부터 cuda, cudnn의 재설치를 반복해도 계속 같은 에러를 만나게 되었다. (지친다...) UnknownError: Failed to get convolution algorithm. This is probably because cuDNN failed to initialize, so try looking to see if a warning log message was printed above. 공식문서를 확인해보니 처음에는 메모리를 조금만 할당하고, 프로그램이 실행되어 더 많은 GPU 메모리가 필요하면..

개발/DataAnalysis

정규분포란 무엇인가

정규분포는 수집된 데이터들의 평균 근처에 값이 모여 있는 연속 확률분포입니다. 먼저 표준편차를 잘 모르시는 분들은 표준편차에 대한 글을 읽고 오시는것을 추천 드립니다. 정규분포는 가우스 분포라고도 불리고 그래프로 그렸을 경우에는 종형곡선(bell curve) 형태를 나타냅니다. 또한 평균이 0이고 표준편차가 1인 정규분포를표준 정규분포라고합니다. 정규분포는 수집된 자료의 분포를 근사하는 데에 자주 사용되며, 이것은 중심극한정리에 의하여 독립적인 확률변수들의 평균은 정규분포에 가까워지는 성질이 있기 때문입니다. 간단한 그림으로 설명해드리겠습니다. (출처: 위키피디아 그림) 위의 그래프에서 뮤(μ)는 평균을, 시그마(σ)는 표준편차를 나타냅니다. 참고: 이 그래프에서는 시그마 제곱을 사용하였기때문에 분포입니..

개발/DataAnalysis

표준편차 구하기

분산 표준편차를 알기 전에 분산에대해 간단히 설명하고 가겠습니다. 데이터가 얼마나 퍼져있는지 알기 위해 분산을 구하는 작업을 했습니다. 분산을 이용하면 값들이 +와 -가 섞이게되어 값이 의미가 없어지는 불상사도 일어날 수 있기때문에 기호를 통일시 시켜주게 되었습니다. 이에대한 방법으로 각 값을 더하기 전에 제곱을 사용한 이후에 더합니다. 표준편차 분산은 데이터에 제곱을 함으로써 데이터가 너무 커지게 되고 확인하기 힘들어져서 루트를 사용하게 됐는데 그 결과가 표준편차입니다. 표준편차는 데이터들의 평균값을 중심으로 종합적으로 데이터가 얼마나 퍼져있는가를 나타내는 값입니다. 표준편차의 특징으로는 값이 클수록 데이터의 범위가 더 커지게됩니다. 표준편차는 아래와 같은 공식으로 구할 수 있습니다. \[ \sigma..

개발/Shell

Ubuntu 20.04(LTS)버전 기존 shell에서 oh-my-zsh로 변경하는법

우분투를 설치하고 oh-my-zsh을 처음부터 설치해서 사용하게 된다면 문제가 발생하지 않겠지만, 일반 shell을 사용하다가 oh-my-zsh로 변경하였을 경우 기존 Shell에 지정된 PATH들이 oh-my-zsh에 적용이 안되기 때문에 직접 지정해줘야합니다. 저는 zsh설치 후 우분투에서 anaconda랑 cuda path를 지정해줘야했으므로 저의 사례를 예로 들겠습니다. vim ~/.bashrc 맨 밑으로 내려서 원하는 필요한 부분을 복사 해주시면 됩니다. Shift + v 하시면 영역을 드래그 하고 y를 눌러서 복사 할 수 있습니다. 복사한 이후에 vim을 나와서 zshrc의 편집기로 가셔서 맨 하단에 붙여넣기 하시고 저장하시면 됩니다. vim ~/.zshrc 편집기로 들어가셔서 맨 하단으로 커..

개발/Shell

Ubuntu 20.04 oh-my-zsh 설치

Ubuntu 20.04(LTS)버전에서 oh-my-zsh를 설치하고 적용하는 방법 저는 처음에 일반 bash에서만 작업을 했었는데 최근에 oh-my-zsh를 사용하시는 분을 보고 oh-my-zsh에 대한 좋은 가독성과 효율성을 느꼈습니다. 자동완성과 히스토리기능, 깃 브런치도 한눈에 잘보여서 적용해보기로 했습니다. 제로베이스부터 하기위해 저는 AWS-EC2 Ubuntu 20.04버전의 instance를 하나 실행했습니다. 1. zsh install sudo apt install zsh 2. zsh을 기본쉘로 변경 chsh -s $(which zsh) or chsh -s /usr/bin/zsh 둘중 하나 실행하시면 됩니다. 운영체제에 따라 경로가 다르기 때문에 위에꺼를 추천드립니다. 여기서 AWS의 EC2..

개발/AWS

EC2 Ubuntu 20.04 password 설정

EC2에서 이것저것 초기 설정을 하다보면 관리자 계정의 password를 사용해야 할 때가 간혹 있습니다. 저는 zsh을 설치하는 과정에서 이런 상황을 만났습니다. 이렇게 password를 입력하라는 공간이 나오는데 default값이 없습니다. 그래서 엔터를 쳤을경우 이런 에러를 만날 수 있습니다. chsh: PAM: Authentication failure EC2 접속을 위해 사용자에대한 암호인증이 아닌 PEM파일을 이용하여 SSH키 쌍으로 접속했기때문에 password에 대해 정보가 없습니다. 그래서 저는 간단한 방법인 ubuntu계정의 password를 지정해줬습니다. sudo passwd ubuntu 이렇게 입력하시면 password를 두번 입력하라고 나오는데 두번 입력하시고, 이전 작업을 다시 ..

모플로
모던플로우