목록MachineLearning (16)
Data Analysis for Investment & Control
업데이트 : 2020년 11월 08일 내가 알고있는 머신러닝 알고리즘 지식을 확장시키고 필요에 따라 리마인드 하기 위해 이 페이지를 작성한다. 당분간 지속적으로 업데이트가 될 것 같다. 이미 기존에 대략적인 분류를 해 놓긴 했는데, https://nerve.tistory.com/227 머신러닝 카테고리 1. Classifications - SVM - Bagged Decision Trees - K-nearest neighbor - Naïve Bayes - Discriminant Models - CNN - RNN & LSTM 2. Regressions - Linear Regression - Nonlinear Regression - Stepwise Re.. synapticlab.co.kr 티스토리 구에디터를 ..
클러스터링 기법 중에 대표되는 것으로 다차원 입력 데이터를 어떻게 어떤 그룹에 속하게 할지에 대한 문제를 다룬다. 데이터의 집합을 정의하자. N개로 이루어져 있는 데이터를 K개의 클러스터로 분류하려고 한다(물론 K는 미리 지정한다). K개의 클러스터 정 중앙에 놓여 있는 값을 μk라고 표기 한다. K-means 클러스터링의 아이디어는 K개의 mean(중앙 값)을 이용해 클러스터링 하는 것이다. μk와 이에 속하는 클러스터 데이터 사이의 거리의 총합은 클러스터에 속하지 않는 데이터 사이의 거리의 총합보다 작다. 그러므로 우리의 목표는 주어진 데이터 집합으로부터 이러한 중심 μk의 값을 결정하는 것이다. N개의 데이터를 K개의 클러스터로 구분지어 Sk = {S1, S2, ... SK}의 데이터 집합으로 구분..
1. Classifications - SVM- Bagged Decision Trees- K-nearest neighbor- Naïve Bayes- Discriminant Models- CNN - RNN & LSTM 2. Regressions - Linear Regression- Nonlinear Regression- Stepwise Regression- Regularization- Adaptive neuro-fuzzy 3. Clustering - K-means clustering- Hierarchical clustering- Gaussian Mixture Model- Hidden Markov Models- Self-organizing Map- Fuzzy C-means clustering- Subtract..
인공지능 분야에서 불확실성은 중요한 개념 중 하나이다. 데이터가 충분하지 못하거나 노이즈가 포함된 체로 데이터 처리를 해야할 경우가 많기 때문에 이를 가능하면 정확하고 정량적으로 표현을 해야하기 때문이다. 확률 이론은 이를 위한 수학적인 툴을 제공한다. 표현 방식은 다음과 같이 쓸 수 있다. 어떤 사건 X가 발생할 확률을 의미한다. X가 발생할 가능성이 전혀 없다면 0, 모든 케이스에 대해 발생한다면 1이 된다. 동전을 100번 던졌을 때 앞면이 나오는 경우가 53번이었다면 p(X=앞면) = 0.53이 된다. 조건부 확률, Conditional Probability 어떤 일이 발생할 확률이 두 가지 이상의 종류로 구분지어지는 경우를 알아보자. (조건부 확률에 대한 적당한 예제 - 동전과 주사위를 동시에 ..
Gaussian Mixture Model, 이하 GMM은 클러스터링 방법 중 하나로 데이터의 군집을 가우시안 모델로 표현하는 기법이다. 가우시안 모델의 평균과 분산(μ와 σ)으로부터 군집의 특성을 알 수 있다. 데이터의 분포로부터 가우시안 분포를 선형 결합한 형태라는 가정에서 처리를 한다. GMM에 대한 설명은 아래 블로그에서 그 개념을 잘 설명하고 있다. >> 수식없이 이해하는 Gaussian Mixture Model 먼저 다음과 같이 주어졌다고 하자. 데이터 군집 수 : K각 군집의 평균과 분산 : μk = {μ1, μ2, ..., μK}, σk = {σ1, σ2, ..., σK}표본 데이터 수 : N표본 데이터 xn = {x1, x2, ... xN} 입력 데이터에 대한 확률 분포 함수를 다음과 같이..
Softmax 함수 요약: 0이 아닌 자연수 N개의 값으로부터 n∈{1,2,3,…,N}일 경우 n 번째 값의 중요도를 exp(x_n)을 통해 지수적으로 증가시켜 각 값 사이의 편차를 늘린 다음 normalization하는 함수. N개의 값이 존재할 때, 각각의 값의 편차를 확대시켜 큰 값은 상대적으로 더 크게, 작은 값은 상대적으로 더 작게 만든 다음 Normalization 시키는 함수이다. 수식은 다음과 같다. 이 함수가 의미하는 바는 N개의 원소로 이루어지는 값의 집합에서 특정 인덱스 n의 원소의 값의 중요도를 구하는 것이다. 즉, N개의 원소의 합이 1(=100%)일 때, n번째 원소의 값이 몇 %의 비중을 갖는지를 알려고 할 때 사용된다. 이는 확률적으로 가장 높은 비중을 가지는 원소를 결정할 ..
정보이론에서 같은 잠재적인 이벤트의 세트를 가지는 두 개의 확률 분포 p와 q의 cross entropy는 세트로부터 이벤트를 구분하는데 필요한 비트의 평균을 측정한다... 라고 위키에 나와있다. 여기서 두 가지를 알 수 있는데, 하나는 두 개의 확률 분포를 구분하기 위한 목적으로 사용되는 것이고 다른 하나는 이것을 측정하는 것이라는 것이다. 확률 분포는 변수(x)가 주어질 때 해당 변수의 값에서 이벤트가 발생할 확률을 분포로 나타낸 것이다. 예를 들어 x = {1, 2, ..., 10}의 10개의 값을 가지는 집합이라고 할 때, N번의 카운트에서 x = 1이 될 빈도수, x = 2가 될 빈도수, ... 를 계속 측정한다. 그러면 1
CNN의 발전 과정에 있으면서 Deep Neural Network의 Weight Update의 Vanishing/Exploding 이슈를 해결할 목적으로 도입된 Activation Function의 한 종류이다. Sigmoid나 Hyperbolic Tangent와 달리 |x| 가 큰 값일 경우에 미분 값이 0으로 수렴하는 단점이 없고 수식 구현이 간단하기 때문에 많이 사용된다. 수식은 다음과 같으며, 위의 함수를 그래프로 표시하면 아래와 같다. Geoffrey E. Hinton 교수에 의해 제안되었다고 알려져 있으며 다음은 그 내용이 수록된 논문이다.
현재 딥러닝 분야에서 CNN과 함께 큰 영역으로 자리매김하고 있는 RNN, Recurrent Neural Network은 그 이름이 의미하는 바와 같이 과거의 값이 이후로 영향을 계속해서 미친다는 구조로 신경망을 설계하는 것이다. 응용 분야로는 시계열 데이터를 처리하는 언어 모델이나 시간에 따른 데이터의 변화가 존재하는 주식 시장 데이터와 같은 곳에 적용해 볼 수 있다. 단순한 RNN 구조는 Weight update시 gradient의 vanishing 문제와 exploding 문제가 발생하는데, 이를 구조적으로 개선한 것이 최근 널리 쓰이고 있는 LSTM, Long-Short Term Memory 구조가 있다. Simple Recurrent Network 구조와 LSTM의 구조 비교 구글링을 해보면 R..
현대 딥러닝 분야에서 가장 포션이 큰 분야 중 하나라면 CNN을 들 수 있다. 하드웨어 성능이 발전하면서 단위 연산 당 가격이 엄청나게 저렴해 졌기 때문에 전에는 컴퓨팅 성능이 따라주지 못해서 구현할 수 없었던 알고리즘들이 ImageNet 대회와 같은 대회를 통해 세상에 알려지면서 많은 기술적 진보를 이루어 내고 있다. 이미 CNN에 관한 많은 학습자료들이 웹에 존재하기 때문에 여기서는 굳이 상세한 설명은 하지 않으며, 회사에서 자체 세미나 과정을 거치면서 개인적으로 추천할만한 과정이나 블로그 또는 논문 등을 정리하려한다. CNN에 대해서 다는 아니지만 공부를 해본 결과, 동물이나 사람의 시신경 및 뇌를 통해 입력된 시각적 시그널에 대한 반응과 이를 기반으로한 분류(인지)하는 과정을 모델링 하는 것이라고..