Home

군집화

k-means 알고리즘 작동 그림 K-Means를 이용한 붓꽃(Iris) 데이터 셋 Clustering from sklearn.preprocessing import scale from sklearn.datasets import load_iris from sklearn.cluster import KMeans import matplotlib.pyplot as plt import numpy as np import pandas as pd %matplotlib inline iris = load_iris() # 보다 편리한 데이터 Handling을 위해 DataFrame으로 변환 irisDF = pd.DataFrame...

Read more

PCA 저격용 선형대수 지식

선형변환 (Linear Transform) Feature Vector를 하나의 공간에서 다른 공간으로 투영하는 것 분산 한 변수의 데이터 변동 공분산 두 변수가 함께 변경되는 정도 $cov(X, Y) > 0$ 면 X가 증가할 때 Y도 증가함 공분산 행렬 여러 변수와 관련된 공분산을 포함하는 정방 행렬(Square Matrix)이며 대칭 행렬(Symmetric Matrix) 대칭행렬 $A^T = A$ 대칭행렬은 고유값 분해(Eigen Decomposition)와 관련한 매우 좋은 특성을 가짐 ...

Read more

차원축소

기본 개념 차원축소의 종류는 2가지 피처 선택(Feature selection) 다른 피처에 종속성이 강한 피처는 제거하고, 중요한 피처만 남기는 것 피처 추출(Feature extraction) 기존의 피처들을 압축해서 함축적인 의미를 가지는 새로운 피처로 만드는 것 이해를 위해 선행되어야 하는 개념 PCA 저격용 선형대수 지식 모델 PCA 3개의 Gene 축을 사용하면 위와같이 표현할 수 있다. 더 많은 Gene 축...

Read more

Numpy 유용한 함수

np.unique 어떤 값들이 데이터에 들어있는지 알 수 있음. 추가적으로 각 데이터의 갯수 또한 return_counts 인자로 알 수 있음 unique, counts = np.unique(y, return_counts = True) print(unique, counts) np.where 다음의 2가지로 활용 가능하다. Condition 만족하는 Index 반환 1차원일 경우 import numpy as np a = np.arange(5, 15) # array([ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]) ...

Read more

기울기 소실

위 그림처럼 3개의 sigmoid layer를 가지고 있는 모델이 있다고 가정하자 위 그림과 같이 오차역전파법을 통해 ${\partial y \over \partial w_3}, {\partial y \over \partial w_2}, {\partial y \over \partial w_1}$을 각각 구할 수 있으며 해당 값을 그래프로 표현하면 아래와 같다 기울기 값이 점점 줄어드는것을 확인할 수 있다. 기울기 값이 줄어든다는 것은 가중치 업데이트를 할 때 줄수있는 변화량이 적어진다는 것이고, 변화량이 점점 적어질수록 학습이 제대로 이루어지기 힘들다

Read more