Machine learning 15

카테고리 분포(Categorical distribution)

카테고리 분포는 베르누이 분포의 확장판입니다. 베르누이 분포에 대해 간략하게 말하자면 베르누이 분포는 0 또는 1이 나오는 확률변수의 분포로 대표적인 예시로 동전 던지기로 동전을 던져 나오는 결과를 묘사할 때 사용하기도 합니다. 카테고리 분포는 확률 변수가 1부터 k까지의 k 개의 정수 값 중 하나가 나오는 확률변수의 분포입니다. 예를 들어 눈금이 6개인 주사위는 확률 변수가 1부터 6의 정수 값을 가지고 이 중 하나의 확률 변수가 나올 확률을? 을 구하는 문제입니다. 카테고리 분포를 가진 확률변수는 원래 0과 1을 가지는 스칼라 값을 가지지만 특이하게 0과 1로만 이루어진 다차원 벡터로 변형되어 사용됩니다. 이러한 인코딩 방식을 원-핫-인코딩(One-Hot encoding)이라고 합니다. 경우의 수 O..

베타 분포(Beta distribution)

베타 분포 베타분포는 두 매개변수 alpha와 beta에 따라 [0,1] 구간에서 정의되는 연속 확률 분포이다. 말 그대로 alpha와 beta는 베타분포라는 함수의 모양을 결정짓는 파라미터입니다. 직관적으로 이해하기 편하게 베타분포의 확률 밀도 함수를 보면서 설명하겠습니다. 먼저 확률 밀도 함수의 x축은 연속확률변수의 값을 의미하고, y축은 연속확률변수가 갖는 일정 구간의 확률 순간 변화율입니다. 확률 밀도 함수의 모양을 결정짓는 alpha와 beta에 의해서 두 매개변수가 서로 동일한 경우 Uniform한 모양을 가지고 만약 값이 셀수없이 커지면 그래프는 뾰족한 그래프의 형태로 만들어집니다. 또는 alpha와 beta 값이 서로 다를 경우에는 큰 값 쪽으로 그래프가 발산하는 모습을 볼 수 있습니다. ..

이항분포(binomial distribution)

이항 분포의 설명은 베르누이의 시행에서 시작합니다. 베르누이의 시행은 시행의 결과가 오직 두 개뿐인 시행을 의미합니다. 성공 혹은 실패, 이런 베르누이 시행을 여러번 진행한 것이 이항 분포입니다. 물론 각각의 시행들은 모두 독립입니다. 이 베르누이 시행을 n번 반복 했을때 그때의 각각의 시행들에서 성공 혹은 실패가 나올 수도 있습니다. 또한, 특정 사건이 발생했을 수 있고 발생하지 않을 수 있습니다. 이럴 때, 이 사건들이 발생한 횟수를 확률변수 X로 만든 게 이항 분포입니다. 조금 더 이해하기 쉽게 예시로 한번 들어보겠습니다. 로봇이 자율주행을 할때 정확하게 지정한 위치에 도착할 확률이 90%입니다. 이때 자율주행을 10번 주행 반복을 했을 때 확률변수 X 만큼 성공할 확률을 구하면? 도착 성공률은 9..

베르누이 분포(Bernoulli Distribution)

베르누이 분포를 설명하기 앞서 먼저 베르누이 시행(Bernoulli Trial)에 대해 이야기를 해보려고 합니다. 베르누이 시행이라는 것은 어떠한 결과에 대해 두 가지의 결과만이 존재하는 시행을 의미합니다. 대표적인 예로 동전 던지기가 있는데, 동전을 던지면 앞면이 나오거나 뒷면이 나오거나 둘 중 하나일 것이고, 동전을 반복적으로 던졌을 때, 제일 첫 번째 시행에서 앞면이 나왔다고 그다음 시행에서 뒷면이 나올 확률이 더 높아지거나 하지 않는데 이를 각 시행은 서로에게 영향을 주지 않고 독립이라고 말합니다. 이런 독립 시행을 바탕으로 여러 가지 분포들이 파생되었는데 이항 분포, 기하 분포, 음이항 분포 등이 있습니다. 이제 베르누이 시행을 베이스로 어떤 확률변수 X가 있을 때 결과 값은 1 또는 0... ..

확률 분포의 의미와 종류

확률분포(probability distribution)는 어떠한 확률변수(예를 들어, X)가 특정한 값을 가질 확률을 나타내는 함수를 의미합니다. 이산 확률분포: 베르누이, 이항, 기하, 음이항, 푸아송, 초기하, 라학 연속 확률분포: 균등, 정규, 표준 정규, 가수, t, 카이제곱, f, 감마, 웨이블, 베타 이산 확률분포(discrete probability distribution)는 확률변수의 개수를 셀 수 있는 경우를 의미합니다. 예를 들어, 주사위를 던져서 나오는 눈의 개수는 1,2,3,4,5,6 여섯 가지 이므로 확률변수 X는 여섯 가지의 경우를 가질 수 있습니다. 이러한 경우 정수의 값을 가지는 확률변수가 가질 수 있는 값은 6개로 카운팅 할 수 있기 때문에 이산 확률변수에 해당합니다. (하..

Support Vector Machine(SVM)

What is SVM? SVM은 기계 학습의 분야 중 하나로 패턴 인식, 자료 분석을 위한 지도 학습 모델이며, 주로 분류와 회귀 분석을 위해 사용한다. 두 카테고리 중 어느 하나에 속한 데이터의 집합이 주어졌을 때, SVM 알고리즘은 주어진 데이터 집합을 바탕으로 하여 새로운 데이터가 어느 카테고리에 속할지 판단하는 비확률적 이진 선형 분류 모델을 만든다. -위키백과, 우리 모두의 백과사전(서포터 벡터 머신) 간단하게 서포터 벡터 머신은 어떻게 공간상에서 optimal 한 decision boundaries를 찾는가? 입니다. 아래 그림을 보시면 두 개의 집단이 있고 그 집단을 가장 잘 분류할 수 있는 Linear discriminant function을 만들어야 합니다. 하지만 두 개의 집단을 나누는..

Gradient Descent

What is Gradient Descent? 이전 시간에 리뷰했던 Linear Regression에서 우리는 데이터에 대한 cost function(or loss, error)를 정의하여 cost function의 기울기 베타를 적절하게 조절하여 Training data에 맞는 cost function을 만들었습니다. 이때, '기울기를 어떻게 optimal 하게 만드냐'에 대한 문제로 cost function을 베타에 대해 미분하여 미분 값이 0에 가까워지는 베타를 찾아 적절한 기울기를 찾을 수 있었습니다. 물론 이후에 overfitting을 방지하기 위해 라쏘나 릿지 같은 방법에 대해 다뤘습니다. 하지만 이런 방법은 simple model에 대해서만 한정적이고 조금 더 복잡한 모델에 대해서는 단순한 ..

Machine learning 2021.09.25

Linear Regression

Regression? Supervised learning은 레이블링 된 Training data를 학습하여 하나의 모델(함수)을 만들고, 이후에 만들어진 모델에 레이블링 되지 않는 Test data를 집어넣어 입력된 data에 대한 맞는 답을 찾는 과정을 말합니다. 이때 레이블링 된 답이 어떤 형태인지에 따라 모델은 분류 또는 회귀 과정을 통하여 답을 예측합니다. 예를들어 아래의 그림과 레이블링 된 값이 서로 딱딱 떨어지게 구분되는 경우는 입력 데이터가 A냐 B냐 C냐 완벽하게 서로 완벽하게 구분하면 이것을 '범주형 데이터'라 말하고, 레이블링이 범주형 데이터로 이루어진 학습 모델의 경우 각각의 값을 구별해내는 분류(Classification)를 이룹니다. 반면에 사람의 키와 몸무게에 대해 어떠한 범위 ..

Machine learning 2021.09.22

Random Forest

What is Random Forest? 랜덤 포레스트는 말 그대로 결정 트리(Decision tree)들이 모여 랜덤 포레스트를 구성합니다. 기존의 결정 트리의 단점은 Training data에 대해서 Overfitting이 된다는 경향이 있습니다. 하지만 여러 개의 결정 트리를 통해 랜덤 포레스트를 만들면 오버 피팅이 되는 단점을 해결할 수 있습니다. 물론 다른 결정트리들이 오버 피팅이 될 수 있지만 다수의 결정 트리들로 예측하기 때문에 그 영향력이 줄어들어 좋은 일반화 성능을 낼 수 있습니다. 일반적으로 랜덤 포레스트를 구성하기 위해서는 적게는 500개 ~ 많게는 10,000개의 결정 트리들을 사용한다고 합니다. Random Forest State 1. 먼저 입력 데이터들에 대한 Bootstrap ..

Machine learning 2021.09.20

Decision Tree

What is Decision tree? 결정 트리는 분류(Classification)와 회귀(Regression) 모두 가능한 지도 학습 모델 중 하나입니다. input 데이터들에서 우리가 원하는 데이터들을 예측 가능한 규칙들로 하나하나 분기(branch)로 만들어 Yes or No에 대한 의사결정을 내리는 구조이기도 합니다. 마치 그 구조가 '나무'와 같다고 해서 'Decision tree'라고 불립니다. Decision tree는 Non-leaf node(branch), leaf node 만으로 구성되어 있는데, 아래의 그림을 보시면 조건식(ex: x < a)이 있는 부분이 branch(non-leaf node)이고 더이상 조건식에 들어갈 수 없는 데이터(ex: w)들은 하나의 leaf입니다. 조금..

Machine learning 2021.09.19