DBSCAN은 데이터의 분포 밀도를 기반으로 군집을 형성하는 알고리즘입니다. K-means의 한계점을 극복하기 위해 등장했으며, 실제 데이터의 자연스러운 패턴을 찾는 데 효과적입니다. K-means는 구형 군집만을 찾고, 모든 클러스터의 크기가 비슷해야 하며, 모든 데이터 포인트를 어떤 군집에 할당해야 한다는 제약이 있습니다. 반면 DBSCAN은 이러한 제약 없이 다양한 형태와 크기의 군집을 찾을 수 있으며, 노이즈도 자연스럽게 처리할 수 있습니다.
DBSCAN의 핵심 매개변수는 이웃을 정의하는 반경 ε(epsilon)과 핵심 포인트를 결정하는 최소 데이터 포인트 수 minPoints입니다. 알고리즘은 데이터 포인트를 핵심 포인트, 경계 포인트, 잡음 포인트로 분류하며, 연결된 핵심 포인트들을 중심으로 군집을 형성합니다.
PCA는 차원의 저주와 다중공선성 문제를 해결하기 위한 차원 축소 기법입니다. 데이터의 변동성(정보)을 최대한 보존하면서 더 적은 수의 변수로 표현하는 것이 목적입니다. 마치 여행 가방을 싸듯이, 가장 중요한 정보만을 선별하여 데이터를 효율적으로 압축합니다.
PCA의 핵심 개념으로는 공분산, 고유값, 고유벡터가 있습니다. 공분산은 두 변수가 어떻게 함께 변화하는지를 측정하며, 이를 행렬로 표현한 공분산 행렬에서 고유벡터와 고유값을 계산합니다. 고유벡터는 데이터의 주요 방향을, 고유값은 그 방향으로의 분산의 크기를 나타냅니다. 이렇게 찾은 주성분 축으로 데이터를 투영하여 차원을 축소하게 됩니다.
PCA 과정에서 중심화(평균을 빼는 작업)는 필수적입니다. 이는 변수의 절대적 크기의 영향을 제거하고 순수한 변화량만을 측정하기 위함입니다. 또한 PCA는 상관계수 대신 공분산을 사용하는데, 이는 데이터의 실제 변동성을 보존하기 위함입니다.