본문/내용
1. KNN 알고리즘의 기본 원리를 설명하세요.
KNN(K-최근접 이웃) 알고리즘은 분류와 회귀 문제에 모두 사용할 수 있는 간단하면서도 직관적인 지도학습 방법입니다. 이 알고리즘은 새로운 데이터 포인트가 주어질 때, 훈련 데이터 내에서 가장 가까운 K개의 이웃을 찾고 이 이웃들의 라벨 또는 값들을 기반으로 예측을 수행합니다. 거리 측정 방법으로 유클리드 거리, 맨해튼 거리, 민코포스키 거리 등을 사용하는데, 예를 들어 3차원 공간에서 새 데이터 포인트와 훈련 포인트들 간의 유클리드 거리 계산은 √[(x1 - x^2 + (y1 - y^2 + (z1 - z^2]와 같이 수행됩니다. K의 선택이 핵심이며, 보통 데이터 특성 수와 분포에 따라 K값을 결정하는데, K가 너무 작으면 노이즈에 민감하고, 크면 과적합이 발생할 수 있어 최적 K값을 찾기 위해 교차 검증을 진행합니다. 예를 들어, 1000개의 샘플 데이터를 가진 데이터셋에서 K=5를 사용할 경우, 5개 이웃의 라벨을 다수결로 집계하여 분류 정확도가 약 85%였고, 이웃 수가 3이면 80%, 7이면 87%로 나타났습니다. KNN의 단점은 계산 비용이 크고, 고차원 데이터에 적합하지 않으며, 거리 계산이 반복되기 때문에 대규모 데이터…