데이터 분석 심화_머신러닝
머신러닝의 이해
-머신러닝이란 문제를 잘 해결(예측)하기 위한 함수(모델)
1. 지도학습과 비지도학습
1) 지도학습(Supervised Learning)
-입력 데이터(x)와 그에 대한 정답 레이블(y)을 함께 학습시킴
-회귀(Regression): 연속적인 수치형 종속 변수를 예측
-분류(Classification): 입력 데이터를 정해진 범주 중 하나로 할당
2) 비지도학습(Unsupervised Learning)
-정답이 없는 데이터를 활용하여 데이터 내부의 숨겨진 구조나 패턴을 스스로 발견
-군집화(Clustering): 데이터 간의 유사성을 측정하여 특성이 비슷한 데이터끼리 그룹 형성


2. Training set과 Test set
1) 학습 셋과 테스트 셋
-학습 셋(Training set): 모델이 데이터의 패턴을 파악하고 파라미터를 업데이트하는 데 사용되는 데이터
-테스트 셋(Test set): 학습 완료된 모델의 최종 성능을 평가하기 위한 데이터
2) 과적합 문제의 발생
-과적합(Overfitting): 학습 데이터에 대한 오차(Training Loss)는 감소하지만 테스트 데이터에 대한 오차(Test Loss)는 증가
-모델이 데이터의 본질적인 패턴이 아닌, 학습 데이터에 포함된 노이즈까지 학습했기 때문
3) 검증 셋을 활용한 성능 최적화
-검증 셋(Validation set): 학습 과정에 직접 참여하지는 않지만, 처음 보는 데이터에 대해 얼마나 잘 작동하는지 측정
→ 중간 모델 평가 가능
→ 과적합 감지 및 조기 종료(Early Stopping) 가능

3. 평가지표
1) 분류 모델 평가 척도
-Accuracy(정확도): 전체 예측 결과 중 정답을 맞힌 비율
-Recall(재현율): 실제 해당 클래스인 데이터를 얼마나 잘 찾아냈는지 측정
-Precision(정밀도): 모델이 특정 클래스로 분류한 것 중 실제 정답인 비율
-F1 Score: Recall과 Precision의 조화 평균(두 지표 간의 균형)
2) 회귀 모델 평가 척도
-MAE(Mean Average Error): 실제 값과 예측 값의 차이 평균
-MAPE(Mean Average Precentile Error): 실제 값과 예측 값의 비율 차이의 평균
-MSE(Mean Squared Error): 실제 값과 예측 값의 차이를 제곱하고 평균
-RMSE(Root Mean Squared Error): MSE의 제곱근
-R^2 Score: 모델이 데이터를 얼마나 잘 설명하는지를 나타내는 지표
회귀의 이해
1. 회귀 분석
-하나 혹은 그 이상의 독립변수들이 종속변수에 미치는 영향을 추정하는 통계기법
-변수들 사이의 인과관계를 밝히고 모형을 적합하여 관심있는 변수를 예측하거나 추론하기 위한 분석방법
2. 회귀 분석의 분류
1) 독립변수와 종속변수의 관계에 따른 분류
-선형 회귀분석(Linear Regression): 독립변수와 종속변수 사이에 선형관계가 있다고 가정(단순 / 다중 선형 회귀분석)
-비선형 회귀분석(Non-linear Regression): 독립변수와 종속변수 사이에 비선형 관계가 있다고 가정(다항 / 로지스틱 회귀분석)
2) 독립변수의 개수에 따른 분류
-단순 회귀분석(Simple Regression): 독립변수가 하나
-다중 회귀분석(Multiple Regression): 독립변수가 두 개 이상
3) 종속변수의 척도에 따른 분류
-연속형 종속변수: 종속변수가 연속적인 값을 가짐
-범주형 종속변수: 종속변수가 범주형(이상형) 데이터
ex) 로지스틱 회귀분석(이진 분류), 멀티노미얼 회귀분석(다중 분류), 오디널 회귀분석(순서가 있는 범주형 데이터)
3. 회귀 계수의 추정
1) 최소제곱법(Least Sqaures Method)
-실제값과 예측값의 차이를 제곱하여 합한 값이 최소가 되는 회귀선을 찾는 방법
-이를 통해 모델의 잔차를 최소화하고, 그 결과로 가장 적합한 회귀선 얻을 수 있음

회귀 모델의 평가
1. 분산과 편향

1) 분산
-모델 예측값들이 서로 얼마나 흩어져 있는지를 나타냄(모델 일관성)
- 분산 低: 모델이 일관된 예측을 수행하여 예측값들이 좁은 범위 내에 집중됨
- 분산 高: 모델 예측이 불안정하여 예측값들이 넓게 퍼짐
2) 편향
-모델 예측값이 실제값에서 얼마나 벗어나 있는지를 나타냄(모델 정확도)
- 편향 低: 예측값이 실제값에 밀접하게 위치하여 정확한 예측 수행
- 편향 高: 예측값이 실제값으로부터 한쪽으로 치우쳐 성능 저하
2. 회귀 모델 성능지표
-오차 기반 회귀 평가지표('얼마나 틀렸는가')

분류 알고리즘의 이해
1. 로지스틱 회귀 분석
-종속변수가(y)가 범주형인 회귀
-이항 로지스틱 회귀: 종속변수가 0 / 1(성공 / 실패)을 갖는 회귀

2. 혼동행렬 기반 분류 모델 평가지표
1) 혼동행렬(Confusion Matrix)
-실제 정답 범주와 모델이 예측한 범주를 교차표 형태로 정리한 행렬


2) ROC 곡선과 AUC
-ROC 곡선(Receiver Operating Characteristic Curve): 분석 모델의 성능을 표현한 그래프
-여러 임계치에서 TPR과 FPR의 변화를 시각화한 것이며, ROC 그래프 아래 면적을 AUC(Area Under Curve)라 함
-AUC는 0~1의 값을 가지며, 1에 가까울수록 좋은 모형
-AUC가 0.5이면 분류 능력이 전혀 없는 완전 무작위라는 뜻



의사결정 나무(Decision Tree)
1. 의사결정 나무
-데이터들이 가진 속성으로부터 분할 기준 속성을 판별하고, 해당 속성에 따라 나무 형태로 모델링
-상위 노드로부터 하위 노드로 나무 구조를 형성하는 매 단계마다 분류 변수와 분리 기준값의 선택 중요
-노드(집단) 내에서는 동질성이, 노드 간에는 이질성이 커지도록 분기
-나무 모형의 크기는 과대/과소적합 되지 않도록 적당이 조절되어야 함
2. 의사결정 나무의 구성 요소 및 종류
1) 의사결정나무의 구성 요소
-뿌리 마디(Root Node): 전체 데이터가 시작되는 최상위 마디
-중단 마디(Internal Node): 부모 마디와 자식 마디가 모두 있는 중간 단계의 의사결정 조건
-끝 마디(Terminal / Leaf Node): 더 이상 자식 마디가 없는 최종 결과 값(분류)이 담긴 마디
-가지(Branch): 마디와 마디를 연결하는 선(조건에 따른 흐름)
-깊이(Depth): 뿌리 마디로부터 끝 마디까지 이어지는 계층의 수

2) 의사결정 나무의 종류
-회귀 나무(Regression Tree): 반응변수 y가 연속형
-분류 나무(Class Tree): 반응변수 y가 범주형
3. 의사결정 나무의 분기 기준
1) 불순도와 정보 이득
-불순도(Impurity): 해당 범주 안에 서로 다른 데이터가 얼마나 섞여 있는지를 나타내는 척도
-정보 이득(Information Gain): 부모 노드와 자식 노드 간의 불순도 차이
→ 자식 노드의 불순도가 부모보다 감소하는(정보 이득이 최대가 최도록) 방향으로 분기 조건 찾음
2) 분기 기준

랜덤 포레스트(Random Forest)
-다수의 의사결정나무를 독립적으로 학습시킨 후, 다수결(분류) 또는 형균(회귀) 방식으로 집계하여 예측하는 알고리즘
앙상블(Ensemble)
1. 앙상블이란?
-여러 모형들의 예측 결과를 종합해 정확도를 높이는 방법
-장점: 단일 모델에 비해 일반적으로 더 좋은 성능을 보이며, 복잡하고 노이즈가 많은 데이터에서 과적합의 위험을 줄이는 데 효과적
-단점: 여러개의 모델을 사용하기 때문에 계산 비용이 높고, 모델 해석이 더 어려워질 수 있음
2. 배깅(Bagging, Bootstrap Aggregating)
1) 배깅과 부트스트랩
-부트스트랩: 원 데이터 집합에서 임의로 반복 복원 추출하는 방식으로 새로운 데이터 집합을 생성하는 통계적 방법
-배깅: 원본 데이터에서 부트스트랩을 통해 여러 개의 표본을 만들고, 이를 병렬로 학습시킨 독립적인 모델들의 결과를 집계하여 최종 예측값 도출
2) 배깅의 결과 취합 방식
①투표 기반 취합(voting)
-하드 보팅: 각 모델이 예측한 클래스 중 가장 많이 선택된 클래스가 최종 예측 결과(주로 분류 문제에 사용)
-소프트 보팅: 각 모델이 제공하는 예측 확률을 평균 내어 가장 높은 평균 확률을 가진 클래스 선택(확신도 고려)
②평균화 기반 취합(averaging)
-각 모델이 예측한 값을 평균하여 최종 예측 값 결정(주로 회귀 문제에 사용)
-모델 간의 예측에 있어서 발생할 수 있는 극단적인 값들을 완화시킴
3. 부스팅
-여러 개의 약한 학습기를 순차적으로 학습시켜 강한 학습기를 만드는 방법
1) AdaBoost
-각 학습기는 순차적으로 학습하며, 이전 학습기의 오류를 바탕으로 학습(오분류 데이터에 더 큰 가중치)
-장점: 구현이 간단하고, 이해하기 쉬움
-단점: 이상치에 매우 민감하며, 노이즈가 많은 데이터에 취약
-이진 분류 모델에서 효과적이며, 간단한 분류 문제에 자주 사용됨
2) Gradient Boost
-손실 함수 기울기를 이용하여 약한 학습기를 순차적으로 개선
-장점: 다양한 종류의 손실 함수에 적용 가능해 유연
-단점: 학습 파라미터가 많고, 튜닝이 어려우며, 과대적합에 주의해야 함
-복잡한 데이터 구조를 가진 회귀 및 분류 문제에 널리 사용
3) CatBoost
-범주형 변수를 처리하는 데 중점을 둔 Boosting 모델
SVM(Support Vector Machine)
1. SVM 알고리즘의 정의와 개념
1) SVM이란?
-고차원 또는 무한 차원의 공간에서 데이터 포인트 간의 최적 경계를 찾아내어 분류와 회귀 수행
-데이터의 특성에 따라 적절한 커널 선택이 중요하며, 이는 사용자의 판단에 의존함
-장점: 고차원 데이터에서도 잘 작동하며, 모델의 복잡성과 과적합 효과적으로 제어 가능
-단저미 데이터 양이 많을 경우 모델 학습에 많은 계산 자원과 시간 필요
2) 주요 구성 요소
-초평면(Hyperplane): 서로 다른 분류에 속한 데이터들 간 거리를 가장 크게 하는 최적의 분류 결정 경계
-서포트 벡터(Support vector): 결정 경계에 가장 가까이 위치한 데이터 포인트들(경계를 정의하는 데 핵심적인 역할)
-마진(Margin): 두 클래스 사이의 거리(서포트 벡터는 마진을 최대화하는 데 도움을 줌)
2. 최적의 결정 경계 설정 과정
1) 경계 설정의 문제 및 최적화
-두 클래스 구분하는 경계는 무수히 多, 일부 경계선은 새로운 데이터 들어왔을 때 제대로 분류하지 못할 위험 有
→ 초기 설정: 데이터 분포를 토대도 최적화 알고리즘을 통해 간단한 초기 초평면 설정
→ 서포트 벡터 선정: 계산된 초평면에 가장 가까운 데이터 포인트들이 서포트 벡터로 선정됨
→ 결정 경계 확장: 서포트 벡터를 기준으로 마진을 최대화하고 오분류를 최소화하는 방향으로 초평면이 조정되어 최종 확정

3. 하드 마진과 소프트 마진(C 파라미터)
1) 마진의 종류
-하드 마진(Hard Margin): 모든 데이터를 완벽하게 분류하는 경계를 찾음(마진 내부에 어떤 데이터도 위치하지 않음)
-소프트 마진(Soft Margin): 일부 데이터가 마진 영역을 침범하거나 잘못 분류되는 것을 허용하여 제약 완화
2) C 파라미터의 역할
-C 값이 큼: 마진 오류에 대한 패널티 大 → 마진 폭이 좁아짐
-C 값이 작음: 마진 오류에 대한 패널티 小 → 모델 유연성이 높아짐

4. 커널 트릭(Kernel Trick)
1) 커널 트릭과 그 원리
-선형으로 분리되지 않는 데이터를 고차원 특징 공간으로 매핑하여, 고차원상에서 선형 분리가 가능한 문제로 변환
-커널 험수를 사용하면 원래 공간에서 내적 변환을 수행하므로 계산 효율성을 크게 향상시킬 수 있음
2) 대표적인 커널 함수
-선형 커널(Linear Kernel): 데이터가 원래 공간에서 어느 정도 선형적 분리 가능할 때 사용(가장 기본적인 형태)
-다항식 커널(Polynomial Kernel): 데이터를 다항식 차원으로 확장
-RBD(Radial Basis Function) 커널: 각 데이터 간 거리 특정하여 멀수록 적은 영향력(=가우시안 커널, 가장 널리 사용됨)
-시그모이드 커널(Sigmoid Kernel): 신경망 모델과 유사한 형태


KNN(K-Nearest Neighbors, K 최근접 이웃)
1. KNN의 정의 및 특징
-새로운 데이터가 들어왔을 때, 특성 공간에서 가장 가까운 K개 이웃을 살펴보고 해당 데이터의 종류 / 값 결정
-Lazy Learning: 모형을 미리 만들어두지 않고, 새로운 데이터가 입력되는 순간부터 계산 시작
-하이퍼파라미터 K: 사용자가 직접 지정해야 하는 값으로, K값에 따라 데이터를 어느 그룹으로 분류할지 달라짐
-지역적 패턴 반영: 주어진 데이터와 가장 가까운 이웃들을 바탕으로 예측하므로 데이터의 지역적 구조 잘 반영함

2. KNN의 작동 원리
1) 분류
-다수결 방식: 가장 가까운 이웃 K개를 살펴보고, 가장 많은 비중을 차지하는 범주로 할당
-홀수 지정: 다수결 결과가 동률이 되는 상황을 방지하지 위해 일반적으로 K값은 홀수로 지정
2) 회귀
-평균값 예측: K개의 가까운 이웃을 찾은 뒤, 이웃들의 수치 데이터의 평균값을 예측값으로 채택


3. 최적의 K값 결정
-K가 너무 클 때: 적은 수의 이웃에만 의존하여 개별 데이터의 노이즈에 민감해 과대적합으로 이어짐
-K가 너무 작을 때: 데이터의 세밀한 특징을 무시하고 전체적인 경향성만 보아 과소적합으로 이어짐
→ 일반적으로 전체 데이터 세트 개수의 제곱근에 가까운 홀수 선택
#부트캠프후기 #멀티캠퍼스부트캠프 # 데이터마케팅부트캠프
'부트캠프 > 멀티캠퍼스_퍼포먼스 마케팅과 데이터 분석' 카테고리의 다른 글
| [멀티캠퍼스 부트캠프 9주차] 데이터 분석 심화_머신러닝 비지도학습 (1) | 2026.03.23 |
|---|---|
| [멀티캠퍼스 부트캠프 8주차(2)] 데이터 분석 심화_머신러닝 실습 (0) | 2026.03.11 |
| [멀티캠퍼스 부트캠프 7주차(2)] 데이터 분석 심화_선형회귀 모델 (0) | 2026.02.24 |
| [멀티캠퍼스 부트캠프 7주차(1)] 데이터 분석 심화_검정의 이해 (0) | 2026.02.20 |
| [멀티캠퍼스 부트캠프 6주차(2)] 데이터 분석 기본_시각화 (0) | 2026.02.12 |