Deep learning의 발전 과정과 큰 줄기에 대해 궁금하다면 이 논문을 읽어보길 추천합니다. 아래 글은 해당 논문의 번역과 함께 약간의 필자의 첨언이 들어가있습니다 :) Deep learning Yann LeCun, Yoshua Bengio & Geoffrey Hinton (27 May 2015) Nature volume 521, pages436–444(2015) 원문 Paper abstract 딥러닝은 다중 처리 계층으로 구성된 계산모델이 여러 추상화 단계의 데이터 표현을 배울 수 있도록합니다. (복잡한 데이터 표현을 배우게 한다는 말입니다.) 이 방법은 최신의 음성인식, 시각 물체 인식, 물체 탐지 그리고 약, 유전체학 등과 같은 영역에서 많은 발전을 이루었습니다. 딥러닝은 역전파 기법을 이용하..
이번 포스팅의 주제는 범주형 변수 인코딩하기 + 훈련 후 예측 시 새로운 데이터가 들어왔을 때 어떻게 되는가 OneHotEncoder간단한 데이터를 만들어서 살펴보자. xxxxxxxxxximport pandas as pdtrain = pd.DataFrame([['a',1], ['b',1],['c',0]])컬럼0은 명목형이고 컬럼1은 순위형이다. 원핫인코더의 좋은 점은 Ordinal 변수도 모두 범주형으로 인식하여 처리한다는 점이다. xxxxxxxxxxfrom sklearn.preprocessing import OneHotEncoderohe = OneHotEncoder()pd.DataFrame(ohe.fit_transform(train).toarray())컬럼0이 a,b,c 3값이 때문에 [1,0,0]..
이번 포스팅은 케라스의 LSTM을 이용한 시계열 예측입니다. 시계열 예측을 하려면 어떤 순서로 해야하는지에 대해서만 썼으며 자세한 코드는 귀차ㄴ 다음에 시간이 되면 쓰도록 하겠습니다. 아래 내용들은 지난 며칠간 인터넷의 예제 코드들과 시중의 책들을 보며 조금씩 알게된 것들로 혹여 잘못된 정보가 있을 시 알려주시면 감사하겠습니다. LSTMLSTM은 RNN의 변형 버전입니다. RNN은 순환신경망으로 다른 NN과 다르게 자신의 아웃풋을 다시 인풋으로 사용합니다. 돌고돈단거죠. 그런데 RNN은 기울기소실과 기울기폭발의 문제 때문에 아주 긴 시퀀스 데이터에서는 성능이 떨어집니다. 그래서 이를 보완하기위해 나온게 LSTM이고 따라서 시계열처럼 긴 자료를 가지고 모델링을 할 때 쓰입니다. LSTM 구조에 대한 자세한..
오늘은 SVM이 무엇인지에 대하여 살펴봅시다. 복잡한 수식은 이 글에서 다루지 않으며 간단하게 발전해온 과정과 알고리즘의 아이디어만 다룹니다. Maximal margin classifier (최대 마진 분류기) 훈련관측치를 2차원 공간위에 그렸다고 생각해봅시다. 위 그림은 2차원 공간에 있는 훈련관측치를 1차원의 초평면으로 이등분한 것입니다. 당연히 초평면을 기준으로 얼마나 훈련관측치를 잘 분류하느냐가 최대 관심사일 것입니다. 여기서 잠시 초평면에 관해 설명하겠습니다. p 차원 공간에서 초평면(hyperplane) 은 차원이 p-1 인 평평한 affine(아핀: 부분공간이 원점을 지날 필요가 없다) 부분공간입니다. 무슨 말이냐구요? 2차원에서의 초평면은 1차원 부분공간, 즉 선이고 3차원에서는 평평한 2..
Definition of Outliers이상치란 정상치 값과 크게 차이가 나는 값을 말한다. Types of Outliers종속변수에 따라univariate outliers(단변량) : 종속변수가 한 개multivariate outliers(다변량) : 한 개 이상 환경에 따라 : point outliers, contextual outliers, collective outliers +) univariable (단변수), multivariable (다변수) : 독립변수의 갯수에 따라 Most common causes of outliers on a data set입력오류, 측정오류, 의도적 생성, 샘플링 에러 등novelties : 에러로 인한 이상치가 아닌 자연적으로 생긴 이상치를 일컫는다. Things ..
내가 공부하려고 적는, 문자열이 있는 데이터프레임 처리하기 process (기존)데이터 필드 타입 살펴보기data frame : numeric(38개 열) + categorical (3개 열)label : categorical (5개의 값) df.shape (4898431, 42) null 값 보기 다행히 null값 없음 train_test_splitfrom sklearn.model_selection import train_test_splitx_train, x_test, y_train, y_test = train_test_split(df.drop('label', 1), df['label']) convert string to intxfrom sklearn.preprocessing import LabelE..
An Introduction to Statistical Learining 책의 1,2장을 정리한 내용입니다. Ch.011.1 통계학습의 개요Supervised Learning(지도학습) input 값으로 output 값을 예측 ex) 예측, 분류, 추론예측 : 연속적, 양적인 output을 예측하는 것분류 : 범주형, 질적인 output을 예측하는 것Unsupervised Learning(비지도학습) input값 없음. output값을 이용하여 input자료의 상관관계, 구조 파악 ex)군집화 Ch.022.1 통계학습이란?통계학습이란 를 추정하는 일련의 기법들을 말한다. 은 와 독립적이며 2.1.1 f를 추정하는 이유?함수 를 추정하는 두 가지 주된 이유는 예측과 추론이다.예측 ex) 집값 예측추론 ex..
아래는 ISLR의 내용을 간단히 정리한 것입니다. 피드백은 언제나 환영합니다. 차원축소의 두가지 방법 PC(Principal Components) 주성분 PLS(Partial Least Squares) 부분최소제곱 차원축소 : 고차원의 설명변수를 변환(transform)하여 저차원으로 만드는 방법 PCR(Principal Components Regression) 회귀를 위한 차원축소 기법을 살펴보겠습니다. 절차 표준화 주성분 벡터 생성 주성분은 설명변수 x의 선형결합으로 이루어진다. (이때, M < p ) 최소제곱 모델 적합 차원축소의 아이디어는 기존의 최소제곱회귀식 $$\hat{y} = \beta_0+\beta_1x_1 + \cdots + \beta_px_p$$ 은 p+1 개의 회귀계수를 구해야하지만..