KNN 알고리즘
KNN(K-Nearest Neighbors, K-최근접 이웃)은 가장 간단하면서도 효과적인 비모수(non-parametric) 분류 알고리즘 중 하나입니다. 이번 글에서는 Decision Theory의 이해, Non-parametric 모델의 이해, KNN 알고리즘의 이해에 대해 알아보겠습니다.
Decision Theory의 이해
Decision Theory : Decision Theory는 주어진 정보와 불확실성을 바탕으로 최적의 결정을 내리는 이론입니다. 이 이론은 다양한 분야에서 의사결정 문제를 해결하는 데 사용됩니다.
기본 개념
- 결정 공간 : 가능한 모든 결정의 집합.
- 손실 함수 : 특정 결정을 내렸을 때 발생하는 손실을 측정하는 함수.
- 위험 함수 : 손실 함수의 기대값으로, 가능한 모든 결정에 대한 위험을 나타냅니다.
목표 : Decision Theory의 주요 목표는 손실을 최소화하는 결정을 찾는 것입니다.
Non-parametric 모델의 이해
Non-parametric 모델 : Non-parametric 모델은 데이터로부터 직접 학습하며, 명시적인 가정을 필요로 하지 않는 모델입니다. 이 모델은 데이터의 분포에 대해 미리 정의된 파라미터를 추정하지 않습니다.
특징
- 유연성 : 데이터의 분포에 대한 가정이 없기 때문에 다양한 데이터 패턴을 학습할 수 있습니다.
- 높은 차원의 데이터 : Non-parametric 모델은 높은 차원의 데이터에서도 잘 작동합니다.
- 데이터 의존성 : 모델의 복잡도는 데이터 양에 따라 달라집니다.
예제
- K-최근접 이웃(KNN)
- 커널 밀도 추정(Kernel Density Estimation)
KNN 알고리즘의 이해
KNN 알고리즘 : KNN은 새로운 데이터 포인트를 분류할 때, 학습 데이터 중 가장 가까운 K개의 이웃 데이터를 참조하여 분류하는 알고리즘입니다.
작동 원리
- 거리 측정 : 새로운 데이터 포인트와 학습 데이터 포인트 간의 거리를 계산합니다. 일반적으로 유클리드 거리(Euclidean Distance)를 사용합니다.
- K개의 이웃 선택 : 가장 가까운 K개의 이웃 데이터를 선택합니다.
- 분류 : 선택된 이웃 데이터의 클래스 중 가장 많이 등장한 클래스로 새로운 데이터를 분류합니다.
수식
유클리드 거리
장점
- 단순하고 직관적 : 구현이 쉽고 직관적으로 이해할 수 있습니다.
- 비선형 분류 : 선형적으로 분리되지 않는 데이터에서도 잘 작동합니다.
단점:
- 계산 비용 : 학습 데이터가 많을 경우, 거리 계산에 많은 시간이 소요될 수 있습니다.
- 메모리 사용 : 모든 학습 데이터를 저장해야 하므로 메모리 사용량이 많습니다.
- K 값 선택 : 최적의 K 값을 선택하는 것이 중요합니다. 일반적으로 교차 검증을 통해 K 값을 선택합니다.
로지스틱 회귀모델
로지스틱 회귀모델은 분류 문제를 해결하기 위한 통계적 기법으로, 선형 회귀와는 달리 이진 분류 문제에 적합한 모델입니다. 이번 글에서는 로지스틱 회귀모델의 개요, 로지스틱 함수, 로지스틱 회귀모델의 파라미터 추정에 대해 알아보겠습니다.
로지스틱 회귀모델 개요
로지스틱 회귀모델 : 로지스틱 회귀모델은 종속 변수가 이진인 경우에 사용되는 회귀모델입니다. 이 모델은 종속 변수가 특정 클래스에 속할 확률을 예측합니다.
목표 : 로지스틱 회귀모델의 주요 목표는 주어진 독립 변수들에 대해 종속 변수가 특정 클래스에 속할 확률을 추정하는 것입니다.
로지스틱 함수
로지스틱 함수 : 로지스틱 함수는 S자 형태의 곡선으로, 입력값이 어느 범위에 있든지 항상 0과 1 사이의 값을 출력합니다. 이 함수는 로지스틱 회귀모델의 핵심 요소입니다.
수식
여기서
- 는 선형 결합입니다.
- σ (z )는 로지스틱 함수의 출력값으로, 종속 변수가 1일 확률을 나타냅니다.
특징
- S자형 곡선 : 로지스틱 함수는 입력값이 작을 때 0에 가까운 값을 출력하고, 입력값이 클 때 1에 가까운 값을 출력합니다.
- 확률 해석 : 출력값은 0과 1 사이의 확률 값으로 해석할 수 있습니다.
로지스틱 회귀모델의 파라미터 추정
파라미터 추정 : 로지스틱 회귀모델의 파라미터는 최대우도법(Maximum Likelihood Estimation, MLE)을 사용하여 추정합니다. 최대우도법은 주어진 데이터에 대해 파라미터가 주어졌을 때, 관측된 데이터가 발생할 가능성을 최대화하는 파라미터 값을 찾는 방법입니다.
우도 함수 : 우도 함수는 관측된 데이터가 주어졌을 때, 파라미터의 우도를 계산하는 함수입니다.
수식
여기서
- 는 관측된 값 (0 또는 1)
- 는 독립 변수의 선형 결합
로그 우도 함수 : 우도 함수를 로그 변환하여 계산을 용이하게 합니다.
경사 하강법 : 경사 하강법을 사용하여 로그 우도 함수를 최대화하는 파라미터 값을 찾습니다. 파라미터 업데이트 식은 다음과 같습니다.
여기서 α 는 학습률
장점
- 해석 가능성 : 파라미터가 독립 변수의 영향을 해석할 수 있게 합니다.
- 확률적 예측 : 출력값이 확률로 해석될 수 있습니다.
단점
- 이진 분류에만 사용 : 기본적으로 이진 분류 문제에만 사용됩니다. 다중 클래스 분류를 위해서는 확장된 기법이 필요합니다.
이 글에서는 KNN 알고리즘과 로지스틱 회귀모델에 대해 알아보았습니다. KNN은 간단하면서도 강력한 비모수 분류 알고리즘이며, 로지스틱 회귀모델은 이진 분류 문제에 적합한 확률적 회귀모델입니다. 이러한 알고리즘들을 잘 이해하고 활용하면 다양한 분류 문제를 효과적으로 해결할 수 있습니다.
'인공지능학 > 기계학습' 카테고리의 다른 글
[기계학습] 7. 서포트벡터머신의 이해 (0) | 2024.08.07 |
---|---|
[기계학습] 6. 군집화의 이해 (0) | 2024.08.06 |
[기계학습] 4. 분류의 이해, Naïve Bayes (0) | 2024.08.01 |
[기계학습] 3. 회귀분석의 이해, 선형회귀모델 (0) | 2024.07.31 |
[기계학습] 2. 기계학습의 수학적 기초 (0) | 2024.07.30 |