머신러닝

[ML] 로지스틱 회귀(logistic regression)
·
Artificial Intelligence/Machine Learning
시그모이드 함수 (Sigmoid Function) $$ y = \frac{1}{1 + e^{-x}} $$시그모이드 함수는 위와 같은데, 그림으로 그려보면 아래와 같다.즉 $ (0, 0.5) $ 를 기준으로 점대칭이고, $ x $ 가 커지면 $ 1 $ 로, 작아지면 $ 0 $ 으로 수렴한다.시그모이드 함수를 $ x $ 에 대해 미분하면 다음과 같다.$$ \frac{\partial y}{\partial x} = y ( 1 - y) $$시그모이드 함수 자체는 성공 확률과 실패 확률의 비율에서 유도된다. 이를 오즈 함수(odds function)라 하는데 성공확률이 $ p $ 일 때 다음과 같다.$$ \mathrm{odds}(p) = \frac{p}{1-p} $$그러나 이 함수의 결과값의 범위는 $[0, \in..
[ML] 정칙화(regularization)와 릿지회귀(ridge regression), 라쏘회귀(LASSO regression), 엘라스틱넷회귀(elastic net regression)
·
Artificial Intelligence/Machine Learning
정칙화 (Regularization) 정규화, 규제화, 일반화 등으로 쓰기도 하는데, 헷갈릴 여지가 있으므로 정칙화라고 하겠다.이는 모델의 과적합(overfitting)을 방지하고, 모델을 좀 더 일반화(generalization)하기 위한 일종의 규제(penalty)를 가하는 것이다. 정확히는 손실함수에 규제를 가하여 극단적인 가중치(weight)를 갖지 않도록 만든다.흔히 L1 정칙화라고 하는 라쏘(LASSO)와 L2 정칙화라고 하는 릿지(rigde), 이 두가지를 합친 엘라스틱넷(elastic net), 드롭아웃(dropout)이 대표적 정칙화 방법이다. 릿지회귀 (Ridge Regression) 릿지회귀는 가중치 제곱합을 규제항으로 추가하는데, 규제항은 다음과 같다.$$ \| \mathbf{w} ..
[ML] 선형회귀모델(linear regression model)
·
Artificial Intelligence/Machine Learning
단순회귀 및 다중회귀 (Simple Regression and Multiple Regression) 단순회귀는 간단하게 하나의 피처로 아웃풋을 예측하는 모델이다.$$ \hat{y} = w \cdot x + b $$여기서 $ w $ 는 가중치(weight), $ x $ 가 피처(feature), $ b $ 는 편향(bias)이다. 목표는 데이터를 통해 $ y $ 를 가장 잘 예측하는 $ w $ 와 $ b $ 를 찾는 것이다. 그리고 $ y $ 를 가장 잘 설명한다는 것은 일반적으로 아래와 같은 $ MSE $ 를 최소로 한다는 것을 의미한다.$$ MSE = \frac{1}{n} \sum_{i=1}^n (\hat{y}_i - y_i)^2 $$다시 손실함수 $ j $ 로 쓰면 다음과 같다. 앞에 $ 1/2 $ ..
[ML] 분류 모델 평가(evaluation)
·
Artificial Intelligence/Machine Learning
오차행렬 (Confusion Metrix) 내가 예측한 클래스와 실제 클래스가 어떻게 되는지를 확인하는 쉬운 방법 중 하나이다. 오차행렬이 아니라 혼동행렬이라고도 한다.이진분류라 하면 아래와 같이 실제값이 참(positive)인 경우와 거짓(negative)인 경우를 열로, 예측값이 참인 경우와 거짓인 경우를 행으로 넣어 아래와 같이 만들 수 있다. 행에 실제값을, 열에 예측값을 넣는 경우도 있으니 확인해야 한다. actual positiveactual negativepredicted positive$ TP $(true positive)$ FP $(false positive)predicted negative$ FN $(false negative)$ TN $(true negative)이진분류가 아니라 다중..
[ML] 경사 하강법(gradient descent)
·
Artificial Intelligence/Machine Learning
필요 이유 머신러닝에서의 목표는 최적의 가중치(weight)를 구하는 것이다. 최적의 가중치란 손실함수(loss function) 혹은 비용함수(cost function)로 정의된 함수값이 가장 작은 지점에 해당하는 가중치를 의미한다.수학적으로 최저점을 찾는 가장 간단한 방법은 기울기가 $0$ 되는 지점을 찾고, 그 지점이 최소인지 확인하는 것이다. 간단한 문제, 예를 들어 선형회귀와 같은 문제에서는 이를 통해 최적의 회귀계수를 비교적 쉽게 계산할 수 있다. 이때 기울기가 $0$ 이 되는 지점을 찾기 위한 대표적인 해석적 방법이 정규방정식(normal equation)이다.$$ X^T X \beta = X^T Y \Rightarrow \hat{\beta} = (X^TX)^{-1} X^T Y $$이 정규방..
[ML] 머신러닝 용어 및 개요
·
Artificial Intelligence/Machine Learning
기본 용어 및 표기법 기본적으로 머신러닝을 특정 값을 예측하기 위해 사용한다고 생각하면 기본 용어 및 표기법에 익숙해지기 쉬울 것이다.특정 값을 예측하기 위해 사용되는 나머지 변수들을 특징(features)이라 하고, 예측하고자 하는 변수를 레이블(labels)이라 한다. 이를 위해 사용하는 데이터가 샘플(samples) 혹은 훈련 데이터셋(training dataset)이다. 기본적으로 자료는 지도학습이라는 가정 하에 특징과 레이블이 같이 존재한다.데이터셋에서 나타나는 특징들을 $ x $ 로 표기하고, 타겟 레이블을 $ y $ 라 표기한다. 예측된 레이블(predicted labels)은 $ \hat{y} $ 를 사용한다. 특징이나 레이블 값이 많아 행렬이나 벡터를 이용하여 $ \mathbf{X} $,..
[ML] 머신러닝(machine learning) 개념 및 소개
·
Artificial Intelligence/Machine Learning
머신러닝 (Machine Learning) 번역어인 기계학습이라고도 하며, 말 그대로 기계가 데이터를 기반으로 학습하고 특정 작업을 수행하는 것을 말한다. 일반적으로 통계적 기반을 가진 알고리즘이 사용된다.인공지능의 하위 집합으로 이해되기도 하는데, 최근 인공지능을 말하면 거의 머신러닝 혹은 딥러닝인 경우가 많아 유의미한지는 잘 모르겠다. 그나마 딥러닝은 머신러닝의 하위 집합이면서 동시에 딥러닝이 아닌 머신러닝과 차이가 명확하다.어찌되었던 데이터를 기반으로 학습하여 특정 작업을 수행하는 것을 머신러닝이라 말한다. 따라서 데이터 의존적이라는 특징이 있다. 쓰레기를 넣으면, 쓰레기가 나온다(garbage in, garbage out)는 말처럼 질 낮은 데이터로는 머신러닝의 장점을 확인하기 어렵고, 양질의 데..
애스터로이드
'머신러닝' 태그의 글 목록