본문 바로가기

머신러닝

(9)
Colab 초기 설정 튜토리얼 Colab 사용하면서 초기 셋팅 관련한 방법들을 정리해 보았습니다. 1. google drive 접근 2. matplot에서 한글 깨짐 현상 3. GPU 사용 4. Tensorflow 버전 설정 1. google drive에 접근하기 먼저 빈 창에 pwd 명령어를 입력하면 기본으로 지정되어 있는 path가 나옵니다. 저의 경우는 아래와 같이 나타났습니다. 이후 /content 를 시작으로 접근하고 싶은 주소를 drive.mount() 안에 입력해 줍니다. from google.colab import drive drive.mount('/content/drive') 2. matplot에서 한글 깨짐 현상 Mac OS 로컬에서 주피터를 실행할 때와 마찬가지로, matplot에서 한글이 깨지는 현상이 나타납니다..
인공신경망은 어떻게 학습하는가? 저번 포스팅에서는 인공신경망이란 거대한 함수와 같다는 것을 설명했습니다. 이번 포스팅에서는 컴퓨터가 그 거대한 함수가 우리가 원하는 함수가 되도록 만드는 지에 대한 기법과 과정을 살펴보도록 하겠습니다. 우선, 거대한 함수의 입력값과 그에 따른 우리가 원하는 출력값을 정해주어야 합니다. 이전 포스팅의 예시를 이어서 가져오면, 함수의 입력값은 이미지, 출력값은 0~9 사이의 숫자가 될 것입니다. 즉, 왼쪽 그림과 같은 쌍으로 이미지를 만들어서 컴퓨터가 학습해야 할 정답을 알려주는 것입니다. 출력에 해당하는 정답들을 라벨(label)이라 하고, 학습에 필요한 정답이 있는 데이터를 labeled data, labeled data로 학습시키는 것을 지도학습(supervised learning)이라고 합니다. 가지..
인공신경망(Artificial Neural Network)에 관하여 인공신경망(Artificial Neural Network)은 머신러닝 알고리즘의 기본 매커니즘입니다. 처음 인공신경망을 접할 때, 알고리즘과 용어들이 혼동 됐었는데, 직관적인 이해를 하는 데 도움이 되었던 내용을 정리해보고자 합니다. 다른 용어 정리와 같이 공부하시는 분들에게 참고가 되길 바라며, 용어는 굵은 글씨로 표시해두었습니다. 신경망이란, 인간의 뇌가 학습하는 과정을 착안한 것입니다다. 의학적인 정보를 모르기에 실제로 얼마나 비슷한 지 모르겠으나, 인공신경망의 핵심은 "뉴런"들이 상호작용을 통해 학습해 간다는 공통점이 있다고 합니다. 인공신경망은 입력과 출력이 있는 하나의 거대한 함수라고 볼 수 있습니다. 인공신경망이 학습한다는 것은 인풋에 대해 우리가 원하는 아웃풋을 내도록 함수를 만들어 가는 ..
[Mac OS] terminal에서 Jupyter 실행 시 오류 Mac에서는 윈도우와 달리 conda prompt를 terminal이 대신합니다. 아나콘다 설치 직후에, 터미널에서 jupyter notebook/ jupyter lab을 실행하려 하면 다음과 같은 오류 메시지가 나타납니다. zsh: command not found: jupyter 저는 다음으로 이를 해결했습니다. step1. brew 설치 : brew.sh/index_ko 아직 저에게는 낯설지만, terminal에서 brew라는 것을 설치해줍니다. 각종 라이브러리 설치 시에도 brew가 필요했던 기억으로 보아, 어플로 실행시킬 수 있더라도 설치해두는 것이 좋은 것 같습니다. 위 url을 따라가서 나오는 스크립트를 터미널에 입력해주면, 암호 입력 후 설치가 진행됩니다. step2. brew로 jupyte..
Adam Optimizer Adam Optimizer 원래의 Gradient descent 는 항상 learning rate이 같음(step, 변수에 상관 없이) 이를 개선한 것이 Ada, RMSProp optimizer이다. 이 두개의 장점을 구현한 것이 Adam optimizer이다. 초기 설정 Objective function : $f(\theta)$ ​ $f(\theta)$ 를 최소화 시키는 것이 목적. gradient : $g_t = \nabla_{\theta} f(\theta)$ $$\beta_1 , \beta_2 $$ : Exponential decay rates for the moment estimates $m_t , v_t $ : momentum, 이전에 사용한 stepsize를 기억하는 역할, 물리의 관성과 비슷..
Word cloud 원하는 색으로 꾸미기 (word cloud customize color) 분석대회를 끝내고, 발표자료를 준비하는데 워드클라우드로 시각화를 한 이미지가 생각보다 안 예쁘더랍니다. ppt 테마 색 같은 걸 정해놓은 경우엔 미적 감각이 없는 제가 봐도, 이런 부조화가 없더라구요.. 그래서 온갖 방법을 찾아봐서! 색을 비교적 원하는 색으로 지정할 수 있는 방법을 알아봤습니다. 우선, wordcloud가 깔려있지 않다면 설치해주고, 불러옵시다. 단어조합은 추후 포스트하겠습니다. pip install wordcloud from wordcloud import WordCloud, STOPWORDS 1. Background Color 변경 white_wordcloud = WordCloud(font_path ="AppleGothic", width=480, height=480, backgroun..
Mac에서 Matplotlib 사용 시, 한글 깨짐 해결 Mac으로 처음 넘어왔을 때 당황한 것 중에 하나가 matplot에 한글이 안 나타난단 거였습니다. 사실.. 혼자 EDA 하면서 결과 볼 때는 크게 중요하지 않지만, subplot 여러개 넣으려고 하다보면, 아무래도 어떤 그래프였는 지 헷갈리는 경우가 있어서, 한글 깨짐을 해결하는 방법을 알아보았습니다. 우선, 윈도우에서 하던대로 1사분면에 y = x^2 그래프를 그려봤습니다. import matplotlib.pyplot as plt plt.figure() plt.plot([i**2 for i in range(5)]) plt.title('한글로 제목 달기') plt.show() 이렇게, title의 모든 문자가 박스로 나오게 됩니다. 이 문제를 해결하려면, import matplotlib.pyplot a..
pandas로 용량이 큰 csv 파일 읽어오기(kernel dies reading csv file) pd.read_csv(file)을 했는데, 완료하지 못하고 중간에 kernel이 죽는 현상을 해결하는 방법에 대해 포스트 해보려고 합니다. pandas는 기본적으로 용량이 큰 파일을 읽는 데에 최적화 되어 있지 않다고 합니다. pd.read_csv를 하다가 kernel이 죽는 것은 메모리가 모자라서입니다. pandas에 chunksize(int)를 설정함으로 이 문제를 해결할 수 있었습니다. pd.read_csv에 있는 옵션 설정으로, chunksize에 해당하는 row씩 끊어서 읽어옵니다. 별도의 반복 지정문 없이도, 읽어왔던 부분 바로 다음부터 다시 데이터를 읽어오게 됩니다. sklearn에서 제공하는 연습용 data set 중 하나인 iris data set을 불러와서 연습을 해보겠습니다. 1. d..