목록 분류 전체보기 (299)
Optimizer - 선형 회귀 학습은 결국 데이터를 가장 잘 표현할 수 있는 선(단순 선형 회귀 기준으로)을 그리는 과정이다. 그 예측 값과 실제 값의 그 오차를 표현하는 값을 최소화하는 알고리즘이 최적화 알고리즘 / Optimizer 이다. - 기본적인 최적화 알고리즘 중 하나가 경사 하강법이다. Gradient descent - 가설 H(x)=Wx+b에서 편향 b를 제거하고 가중치 W만 생각하여, 가설을 H(x) = Wx라고 하자. 비용 함수는 아래 그래프처럼 2차 함수 형태를 갖을 것이고, 그 값이 최저점이 되는 빨간색 꼭짓점의 W을 찾아야한다. 검정 원 표시는 랜덤하게 정해진 W 값이 점차 목표 W 값에 수렴하는 과정을 표시하였다. 이 과정이 바로 경사 하강법이다. - W값을 움직이는 로직은 비..
Linear Regression - 어떠한 경향을 갖는다. 라는 것에 다음 데이터의 결과를 예측할 때가 많다. 더 많은 시간을 공부에 쓰면 더 좋은 점수를 받더라, 반도체 집적 회로의 성능이 2년에 2배씩 증가하더라. 처럼 기존의 데이터가 어떤 경향을 갖는지를 파악하여, 그럼 8시간 공부한 시험에는 몇 점을 받겠구나, 반도체는 2020년도에 어떤 성능을 갖겠구나 라는 예측을 하게 된다. 이렇게 종족 변수(y)와 독립 변수(x)의 선형 상관 관계를 모델링한 것을 선형 회귀라고 한다. - 독립 변수(x)의 개수에 따라, 1개라면 단순 선형 회귀, 2개 이상이라면 다중 선형 회귀 분석이라고 한다. Hypothesis - 대략 50명 정도 되는 사람의 키와 몸무게를 기록했다고 생각해보자. 해당 집단의 기록은 아..
개요 - 텐서플로우, 사이킷 런, 케라스 등, 라이브러리로 혼자 예제를 만들어보고 학습해보았다. 그렇지만 사실, 어떤 라이브러리에 무슨 기능이 있고, 그것을 사용하면 어떤 마법이 벌어진다. 정도로 경험한거지, 어떤 모델이 어떤 학습 유형에 효과적인지, 어떤 원리인지 전혀 모르는 상태이다. - 지금까지 학습을 어플리케이션단에서 어떻게 사용되는지 활용해보면서 공부했다면, 이번에는 학습 요소, 알고리즘 원리, 보다 효율적인 학습을 위한 방법을 공부해볼 생각이다. 지도 학습 (Supervised) / 비지도 학습 (Un-supervised) / 강화 학습 (Reinforcement) - 지도 학습 : 지도 학습은 학습 데이터와 그 데이터에 대한 레이블이 지정된 상황에서 학습하는 것이다. 예를 들어 강아지, 고양..
PIL / OpenCV / 이미지 처리 - 이미지 처리를 위한 라이브러리를 간단하게만 사용해보았다. - 영상 안의 사람이나 사물을 인식하고 이를 레이블링 하는 등의 프로젝트를 만들어보면서 공부할 생각이다. PIL - 파이썬에서 이미지를 처리하기 위한 대표적인 라이브러리. Example - 이미지를 정의한 사이즈의 0,1 이차원 배열로 변환한다. - 이미지를 회색조로, 크기를 정의한 사이즈로 변경하고, 전체 픽셀 데이터를 2차원으로 표현한 후, 이 전체 픽셀의 평균값을 계산한다. 모든 각 픽셀을 평균값과 비교하여 그보다 크면 1, 작으면 0로 하여 다시 2차원 배열에 저장한다. from PIL import Image import numpy as np import matplotlib.pyplot as pp ..
Keras 활용 / BMI 계산 / 학습 후 저장, 오답 확인 1. bmi 계산식을 이용해서 20000개의 키/몸무게/상태 데이터를 csv 파일로 생성한다. 2. Keras 학습하여 bmi 계산식을 모르는 상황에서 학습만으로 얼마나 정확히 분류할 수 있는가 평가한다. 3. 학습된 결과를 확인하고, 예측에 실패한 데이터를 확인한다. 4. model은 JSON, weight는 h5으로 각각 저장하고 불러와 해당 모델을 사용해본다. 5. svm과 학습 결과를 비교한다. 설명 참고 : https://ecsimsw.tistory.com/entry/Keras 코드 내용 1. Create BMI data import random dataSrc = "./data_bmi/" ## CreateBMI data Set def..
Keras : 딥러닝을 쉽게 하도록 만들어진 인공 신경망 라이브러리. - 예시는 https://ecsimsw.tistory.com/entry/Keras-%ED%99%9C%EC%9A%A9의 BMI 계산 학습의 내용이다. 모델 구성 / model.compile() model = Sequential() model.add(Dense(512, input_shape=(2,))) model.add(Activation('relu')) model.add(Dropout(0.1)) model.add(Dense(512)) model.add(Activation('relu')) model.add(Dropout(0.1)) model.add(Dense(3)) model.add(Activation('softmax')) model.co..
딥러닝, 파이썬, Keras 공부에 참고한 자료 정리 - 텐서플로우 블로그 / Do it! 딥러닝 입문 저자 블로그 (https://tensorflow.blog/) : 개념서 / "케라스 딥러닝" - 파이썬으로 배우는 알고리즘 트레이닝 ( https://wikidocs.net/book/110 ) : 언어 자체 / API 사용 / 시각화 등 - 딥러닝을 이용한 자연어 처리 입문 ( https://wikidocs.net/book/2155 ) : 딥러닝, 머신러닝 모델 / Numpy, Pandas 등 - 김태영님 블록과 함께하는 딥러닝 케라스 ( https://tykimos.github.io/2017/01/27/MLP_Layer_Talk/) - Keras tensorflow Docs ( https://www...
Anaconda 처음에는 그냥 pip install tensorflow로 아나콘다 없이 직접 설치하려 했으나 에러가 여러번 났다. Could not find a version that satisfies the requirement tensorflow (from versions: ) No matching distribution found for tensorflow ** 텐서플로우를 설치하기 전에, 운영체제 bit와 파이썬 버전이 맞는지, 64비트 운영체제에 32비트 파이썬을 설치하지는 않았는지. 또는 텐서플로우의 버전이 cpu의 AVX 지원을 필요로 하는지를 꼭 확인해야한다. 여러번 엎고 재설치를 반복하다가, 파이썬까지 다 삭제하고 자주 사용되는 파이썬 패키지를 포함한 배포판인 아나콘다를 새로 설치하고, ..