전체 글61

lec1_Filter_methods 2019. 9. 25.
SOM: Self Organazing Map 으로 Clustering 코드구현 까지 Self Organizing Map 에 대해서 알아보겠습니다. Udemy 의 Deep-Learning-A-to-Z 강의 의 SOM 파트를 수강하고 작성하였습니다. Self Organizing Map은 줄여서 SOM 이라고 부릅니다. Unsupervised learning 방법 중 하나이며 Clustering 에 쓰입니다. Clustering 작업을 수행하는, SOM 보다 조금 단순한 K-mean 알고리즘을 보고 SOM 을 보면 이해가 쉽습니다. K-mean Cluster K-mean 의 결과 = Clustering 아래의 그림은 K-mean 알고리즘으로 클러스터링 한 결과를 보여줍니다. K-mean 의 학습 과정 K-mean 의 학습과정은 단순합니다. 과정 step1 몇개의 군집으로 나눌것인지 K 를 설.. 2019. 9. 20.
7 Things you should know about ROC AUC Models for different classification problems can be fitted by trying to maximize or minimize various performance measures. Measurements that address one aspect of a model’s performance but not another are important to note so that we can make an informed decision and select the performance measures that best fit our design. ROC AUC is commonly used in many fields as a prominent measure to evalua.. 2019. 9. 19.
Feature Selection with sklearn and Pandas Feature selection is one of the first and important steps while performing any machine learning task. A feature in case of a dataset simply means a column. When we get any dataset, not necessarily every column (feature) is going to have an impact on the output variable. If we add these irrelevant features in the model, it will just make the model worst (Garbage In Garbage Out). This gives rise t.. 2019. 9. 19.
Data Scaling 데이터 스케일링이란 데이터 전처리 과정의 하나입니다. 데이터 스케일링을 해주는 이유는 데이터의 값이 너무 크거나 혹은 작은 경우에 모델 알고리즘 학습과정에서 0으로 수렴하거나 무한으로 발산해버릴 수 있기 때문입니다. 따라서, scaling은 데이터 전처리 과정에서 굉장히 중요한 과정입니다. 가볍게 살펴보도록 하겠습니다. 1. What is Scaler? (1) StandardScaler 각 feature의 평균을 0, 분산을 1로 변경합니다. 모든 특성들이 같은 스케일을 갖게 됩니다. (2) RobustScaler 모든 특성들이 같은 크기를 갖는다는 점에서 StandardScaler와 비슷하지만, 평균과 분산 대신 median과 quartile을 사용합니다. RobustScaler는 이상치에 영향을 받지.. 2019. 9. 18.
Batch Normalization NEED TO CHECK Batch Normalization 배치 정규화 Batch Normalization 의 목적 Batch normalization 을 설명하기 전에 Nomalization 이 무엇인지 먼저 이해해야 한다. Normalization 에 대한 설명은 아래 링크로 대체한다. Normalization 설명 글 링크 위 글에선 입력 데이터를 왜 정규화해야 하는지 설명했다. 딥러닝 모델의 구조를 단순화하여 설명하면 흔히들 입력층 → 은닉층 → 출력층으로 묘사한다. 입력층의 입력 데이터는 쉽게 normalization 할 수 있지만, 입력층을 지나서 만나게 되는 레이어들의 입력은 normalization 하기 쉽지 않다. Batch normalization 은 이런 문제를 해결하기 위한 알고리즘이다. Batch Nor.. 2019. 9. 18.
Momentum, AdaGrad, RMSProp, Adam --- NEED TO CHECK Momentum Momentum 은 Gradient descent(이하 GD) 기반의 optimization algorithm 이다. 수식으로 표현하면 아래와 같다. L : loss function value W : weights η : learning rate α : 가속도 같은 역할을 하는 hyper parameter, 0.9 등 1 이하의 값을 취함. 자세한 것은 아래에 설명. v 는 일종의 가속도(혹은 속도) 같은 개념으로 생각하는 것이 이해에 더 도움이 될 것 같다. v 의 영향으로 인해 가중치가 감소하던 (혹은 증가하던) 방향으로 더 많이 변화하게 되는 것. 최초의 v 는 0으로 초기화 한다. 간단한 예를 이용하여 설명한다. 첫번째 스텝의 기울기가 5, 두번째 스텝의 기울기가 3인 경우 학습률.. 2019. 9. 18.
MGD(Mini-batch gradient descent) vs SGD(stochastic gradient descent) MGD(Mini-batch gradient descent), SGD(stochastic gradient descent)의 차이에 대해 설명하기 위해선 먼저 배치 Batch 가 무엇인지 알아야 한다. 배치 Batch 배치의 사전적 의미는 (일괄적으로 처리되는)집단이다. 배치는 한번에 여러개의 데이터를 묶어서 입력하는 것인데, GPU 의 병렬 연산 기능을 최대한 효율적으로 사용하기 위해 쓰는 방법이다.(GPU 의 병렬연산에 대한 설명 링크) 배치는 Iteration 1회당 사용되는 training data set 의 묶음이며, Iteration 은 정해진 batch size 를 사용하여 학습(forward - backward) 를 반복하는 횟수를 말한다.(철수네 옆집이 영수네 집이고 영수네 옆집이 철수네 옆.. 2019. 9. 18.
Normalization Normalization Data Normalization 은 데이터의 범위를 사용자가 원하는 범위로 제한하는 것이다. 이미지 데이터의 경우 픽셀 정보를 0~255 사이의 값으로 가지는데, 이를 255로 나누어주면 0~1.0 사이의 값을 가지게 될 것이다. 위의 예를 수식으로 간단하게 쓴다면, (정규화하고자 하는 값 - 데이터 값들 중 최소값) / (데이터 값들 중 최대값 - 데이터 값들 중 최소값) 이다. 다른 방법으로는 (정규화하고자 하는 값 - 데이터의 평균) / 데이터의 표준편차 가 있다. 두번째 경우는 Standardization 이라고도 한다. 왜 하는데? 학습을 더 빨리하고 Local optimum 에 빠지는 가능성을 줄이는 등의 다양한 실용적 이유가 있다. 직관적 이해를 위해 그림을 첨부한.. 2019. 9. 18.
Cross Validation Validation Cross Validation 을 이해하려면 먼저 Validation 을 이해해야 합니다. Model 을 학습시킨 뒤 평가할 때 Test 와 Validation 이라는 2가지의 Phase 가 있습니다. Test 는 Unseen data 가 입력되었을 때, 학습결과와 유사한 결과가 나오는지 확인하는 과정입니다. Generalization(일반화) 성능을 평가한다고 할 수 있죠. Model 이 Overfitting(과적합) 되었는지 확인한다고 할 수 있습니다. Validation 은 Model 의 Hyper parameter(사용자가 임의로 지정할 수 있는 Parameter, 예를 들어 Learning rate(학습률) 같은)를 조정하는 Phase 입니다. Validation data s.. 2019. 9. 18.
L1 Regularization, L2 Regularization 딥러닝 용어 정리, L1 Regularization, L2 Regularization 의 이해, 용도와 차이 설명 제가 공부하고 정리한 것을 나중에 다시 보기 위해 적는 글입니다. 제가 잘못 설명한 내용이 있다면 알려주시길 부탁드립니다. 사용된 이미지들의 출처는 본문에 링크로 나와 있거나 글의 가장 마지막에 쓰여 있습.. light-tree.tistory.com 1. Norm Norm 은 벡터의 크기(혹은 길이)를 측정하는 방법(혹은 함수)입니다. 두 벡터 사이의 거리를 측정하는 방법이기도 합니다. 한국어로 적을 땐 '노름' 이라고 발음기호대로 적는데, 막상 제 귀엔 영미권에서의 발음은 '노ㄹㅡ엄' 으로 들립니다. p-놈 : ∥u∥_p= ( ∑ |u_k|^p in (k=1 ~ n) )^(1/p) ∥x∥=.. 2019. 9. 18.
Feature Engineering VS Feature Selection What is Feature Engineering? Feature engineering is the process of using domain knowledge to extract new variables from raw data that make machine learning algorithms work. In a typical machine learning use case, data scientists predict quantities using information drawn from their company’s data sources. These sources could be various disparate log files or databases. But in general, they conta.. 2019. 9. 17.