Rewire (공부)/Edutech 교육공학
AI와 교육 - 교육 데이터 마이닝 머신러닝 예측 모델 Predictive analytics (1)
FRENCH GREY
2024. 12. 18. 23:05
Fouille de données éducatives : Prédiction
Objectifs principaux :
- 즉각적 목표 (Objectif immédiat):
- 변수(예: 학습 성과)를 예측할 수 있는 모델을 개발.
- 다양한 예측 변수(variables prédictives)(이진형, 연속형, 범주형)를 조합해 결과 변수(변수 예측)를 도출.
- 장기적 목표 (Objectif à terme):
- 학습자의 행동과 성과에 맞춰 학습 시스템을 적응(예: 개인화된 도움말)하도록 설계.
3가지 주요 예측 방법 (Types de méthodes)
- Classification:
- 예측 변수(변수 예측)가 이진형 또는 범주형 변수인 경우.
- 예: 학생이 학습을 성공할지(성공/실패) 여부를 예측.
- Régression (회귀):
- 예측 변수가 연속형 값(예: 시험 점수)인 경우.
- 예: 학생의 최종 점수를 예측.
- Estimation de densité (밀도 추정):
- 예측 변수가 확률 밀도인 경우.
- 예: 특정 조건에서 학생의 점수 분포를 예측.
모델 구축 방법론 (Méthodologie de construction)
- 주석된 데이터 수집 (Obtenir un ensemble de données annotées):
- 데이터에 레이블을 부여해, 모델 훈련 시 결과를 비교할 수 있게 함.
- 예: 학생의 학습 데이터를 성공/실패로 태그.
- 데이터 분리 (Séparer les données):
- 데이터를 훈련 데이터셋 (training)과 테스트 데이터셋 (test)으로 나눔. (ensemble d'entrînement / ensemble de test)
- 일반적인 비율: 70% (훈련), 30% (테스트).
- 분류/회귀 방법 선택 (Choisir une méthode de classification ou régression):
- 분류 예: 의사결정 트리 arbre de décision, réseau bayésien; SVM, 나이브 베이즈, 신경망.
- 회귀 예: 선형 회귀, 다항 회귀.
- 모델 훈련 (Entraîner et extraire un modèle):
- 훈련 데이터를 사용하여 모델을 학습시킴.
- 모델이 데이터를 기반으로 예측 패턴을 학습.
- 모델 평가 (Evaluer le modèle):
- 테스트 데이터를 사용해 모델의 성능을 평가.
- 성능 지표(예: 정확도, 정밀도, F1 점수)를 측정.
- 반복 (Itérer si nécessaire):
- 데이터(1단계), 모델(3단계), 또는 하이퍼파라미터를 조정하여 성능을 개선.
수동적으로 할 수 있지만 예측 변수가 너무 많을 경우 어려움
모델 평가 지표 (Métriques d’évaluation)
- 정확도 (Accuracy):
- 정확히 분류된 데이터 비율.
- 위험: 데이터가 불균형(예: 한 범주에만 편중)일 경우, 정확도가 왜곡될 수 있음.
- 정밀도 (Precision):
- 모델이 긍정 예측을 했을 때 얼마나 올바른지 측정.
- 위험: 적은 수의 중요한 사례를 놓칠 가능성.
- 재현율 (Recall):
- 실제 긍정 사례 중 모델이 얼마나 많이 찾았는지 측정.
- 위험: 재현율이 높으면 오탐률이 증가할 가능성.
- F1 점수 (F1 Score):
- 정밀도와 재현율의 조화 평균.
- ROC-AUC:
- 모델이 클래스 구분을 얼마나 잘하는지 평가.
모델 개발 시 주의사항 (Risques et limites)
- 과적합 (Overfitting):
- 모델이 훈련 데이터에 너무 적합해, 새로운 데이터에 일반화하지 못함.
- 대처법: 교차 검증(Cross-validation), 정규화(Regularization).
- 데이터 편향 (Data Bias):
- 데이터가 특정 클래스나 조건에 편향되어 결과가 왜곡될 가능성.
- 해석 가능성 (Interprétabilité):
- 복잡한 모델(예: 신경망)은 결과 해석이 어려울 수 있음.
- 대처법: 간단한 모델(예: 의사결정 트리) 우선 사용.
- 데이터 품질 (Qualité des données):
- 결측치나 오류 데이터가 모델 성능에 부정적 영향을 미칠 수 있음.
요약 (Résumé)
- 목표: 데이터 기반으로 결과를 예측하는 모델 개발.
- 방법론: 데이터를 준비하고, 모델을 훈련 및 평가한 뒤 필요 시 조정.
- 지표: 정확도, 정밀도, 재현율, F1 점수 등으로 성능 평가.
- 주의사항: 과적합, 데이터 편향, 복잡성 문제를 고려해야 함.
과적합 (Overfitting)
정의:
과적합은 모델이 데이터의 일반적인 특징뿐만 아니라 **너무 구체적인 세부사항이나 잡음(노이즈)**까지 학습할 때 발생합니다. 이는 새로운 데이터에 대한 일반화 성능을 저하시킵니다.
주요 원인:
- 모델이 너무 복잡함:
- 모델의 파라미터가 데이터 크기에 비해 너무 많을 때.
- 예: 적은 데이터를 사용하는 복잡한 신경망 모델.
- 데이터 양이 부족함:
- 모델에 비해 데이터의 행(row)이 너무 적음.
- 파라미터당 최소 5~10개의 데이터 행이 필요하다고 권장됨.
결과:
- 새로운 데이터에서 성능 저하:
- 모델이 훈련 데이터에서는 높은 정확도를 보이지만, 새로운 데이터에서는 성능이 저조합니다.
과적합을 방지하는 방법:
- 더 간단한 모델 선택:
- 모델의 파라미터 수를 줄여서 데이터의 세부사항을 과도하게 학습하지 않도록 함.
- 속성(특징) 수 줄이기:
- 중요하지 않은 변수를 제거하여 모델 단순화.
- 주의: 너무 많은 변수를 제거하면 과소적합(Underfitting) 발생 가능.
- 데이터 크기 늘리기:
- 더 많은 데이터를 수집하여 모델이 데이터를 일반화할 수 있도록 지원.
- 교차 검증 (Cross-Validation) 사용:
- 데이터를 여러 개의 하위 집합으로 나누어, 새로운 데이터에서 모델 성능을 평가.
- 예: K-Fold 교차 검증.
- 정규화(Regularization) 기법 사용:
- 모델 가중치(Weights)에 패널티를 추가해 과도한 학습을 방지.
- 예: L1(라쏘) 정규화, L2(릿지) 정규화.
- 조기 종료(Early Stopping):
- 훈련 데이터에서의 성능은 계속 좋아지지만 검증 데이터에서 성능이 떨어지기 시작할 때 학습을 멈춤.
시각적 예시:
모델 유형 | 설명 | 성능 |
과소적합 | 모델이 너무 단순하여 데이터를 제대로 학습하지 못함. | 훈련 및 테스트 모두 성능 낮음. |
적절한 학습 | 모델이 충분히 복잡하여 일반화 가능. | 훈련 및 테스트 모두 성능 우수. |
과적합 | 모델이 너무 복잡하여 세부사항까지 학습. | 훈련 성능은 우수, 테스트 성능은 낮음. |
요약:
과적합은 기계 학습에서 중요한 문제입니다. 모델의 복잡성과 데이터 크기 간 균형을 맞추고, 교차 검증, 정규화, 또는 조기 종료와 같은 기법을 활용하면 이를 방지할 수 있다.
지도 학습과 비지도 학습의 차이
지도 학습 (Classification supervisée):
- 정의:
- 지도 학습에서는 훈련 데이터에 **레이블(정답)**이 포함되어 있습니다.
- 모델은 이러한 레이블을 기반으로 학습하여 새로운 데이터의 클래스를 예측합니다.
- 목적:
- **타겟 변수(클래스)**를 예측하는 것.
- 예: 이메일이 "스팸"인지 "스팸 아님"인지 식별.
- 예시 알고리즘:
- 의사결정 트리(Decision Trees).
- 서포트 벡터 머신(SVM).
- 신경망(Neural Networks).
- 장점:
- 모델이 레이블로 학습하기 때문에, 고품질의 데이터가 제공되면 높은 정확도를 보일 수 있음.
- 단점:
- 많은 양의 레이블이 포함된 데이터가 필요하며, 이를 준비하는 데 비용과 시간이 많이 들 수 있음.
비지도 학습 (Classification non supervisée):
- 정의:
- 비지도 학습에서는 훈련 데이터에 레이블이 포함되어 있지 않습니다.
- 모델은 데이터를 분석해 유사한 데이터끼리 그룹화하거나(군집화), 데이터 내부의 패턴을 찾아냅니다.
- 목적:
- 데이터의 패턴 또는 구조를 발견하는 것.
- 예: 고객을 구매 습관에 따라 그룹화.
- 예시 알고리즘:
- K-평균(K-Means).
- 계층적 군집화(Hierarchical Clustering).
- 가우시안 혼합 모델(Gaussian Mixture Models, GMM).
- 장점:
- 레이블이 필요하지 않아, 레이블이 없는 데이터에서도 활용 가능.
- 단점:
- 결과 해석이 어렵고, 클러스터의 수와 같은 하이퍼파라미터에 성능이 크게 의존.
지도 학습과 비지도 학습의 주요 차이점
기준지도 학습 (Supervisée)비지도 학습 (Non supervisée)
레이블 필요 여부 | 필요함. | 필요하지 않음. |
목적 | 클래스나 타겟 값을 예측. | 데이터 구조나 그룹을 식별. |
예시 알고리즘 | SVM, 의사결정 트리, 신경망 등. | K-평균, 계층적 군집화, GMM 등. |
사용 목적 | 알려진 대상을 분류. | 새로운 패턴이나 그룹 발견. |
실제 활용 예시:
- 지도 학습:
- 이메일이 "스팸"인지 "스팸 아님"인지 분류.
- 학생이 시험에서 합격할 가능성을 예측.
- 비지도 학습:
- 고객을 구매 습관에 따라 그룹화.
- 기존에 알려지지 않은 시장 세그먼트를 식별.
교육 데이터 마이닝: 예측에서 분류와 회귀의 차이
1. 분류 (Classification)
- 정의:
- 분류는 관측값에 범주 또는 클래스를 할당하는 것입니다.
- 예측 대상 변수는 범주형 또는 이진형(예: 성공/실패)입니다.
- 목적:
- 각 관측값을 특정 카테고리 또는 그룹에 속하도록 예측.
- 교육 분야에서의 예시:
- 학생이 과정을 성공적으로 마칠지 여부 예측(성공/실패).
- 학생의 학습 스타일 식별(시각적, 청각적, 운동적 학습자).
- 시스템을 오용하는 행동("Gaming the System") 탐지.
- 주요 알고리즘:
- 의사결정 트리(Decision Trees).
- 신경망(Neural Networks).
- 서포트 벡터 머신(SVM).
2. 회귀 (Régression)
- 정의:
- 회귀는 관측값에 대한 연속적인 값을 예측하는 것입니다.
- 예측 대상 변수는 숫자형(연속형)(예: 점수, 시간)입니다.
- 목적:
- 특정 값을 예측하여 정량적 결과를 도출.
- 교육 분야에서의 예시:
- 학생의 최종 시험 점수 예측.
- 학생이 특정 과제를 완료하는 데 필요한 시간 예측.
- 학습 플랫폼에 학생이 접속할 횟수 예측.
- 주요 알고리즘:
- 선형 회귀(Linear Regression).
- 신경망(Neural Networks).
- 랜덤 포레스트(Random Forests).
분류와 회귀의 주요 차이점:
기준 |
분류 (Classification) | 회귀 (Régression) |
예측 대상 변수의 특성 | 범주형 (이진형 또는 다범주형). | 연속형 (숫자형). |
목적 | 클래스 또는 그룹을 예측. | 정량적 값을 예측. |
교육 분야 예시 | 학생이 성공할지 여부 예측. | 학생의 시험 점수를 추정. |
주요 알고리즘 | 의사결정 트리, SVM, 신경망 등. | 선형 회귀, 랜덤 포레스트 등. |
요약:
- 분류(Classification): 특정 클래스(예: 성공/실패)를 예측하기 위한 분석.
- 회귀(Régression): 연속적인 값을 예측(예: 점수, 시간)하기 위한 분석.
- 두 접근법은 교육 데이터 마이닝에서 학생의 성과와 행동을 이해하고 최적화하는 데 중요한 역할
교차 검증 (Validation Croisée)
교차 검증이 왜 필요한가?
- 모델을 모든 데이터로 학습시킬 경우, 새로운 데이터에서의 성능을 평가할 방법이 없습니다.
- 해결책: 데이터를 훈련용과 테스트용으로 나누고, 교차 검증을 통해 모델의 성능을 신뢰성 있게 평가합니다.
원리: 데이터를 어떻게 나눌 것인가?
- K-겹 교차 검증 (K-fold Cross-Validation):
- 데이터를 **K개의 하위 집합(folds)**으로 나눕니다.
- K−1개의 하위 집합은 훈련용으로 사용.
- 1개의 하위 집합은 테스트용으로 사용.
- 이 과정을 K번 반복하며, 테스트 데이터가 매번 바뀝니다.
- 장점: 빠르고 효율적.
- 데이터를 **K개의 하위 집합(folds)**으로 나눕니다.
- 한 개 빼기 교차 검증 (Leave-One-Out Cross-Validation, LOOCV):
- 특별한 경우로, K=N(전체 데이터 수)입니다.
- 각 데이터를 테스트 세트로 한 번씩 사용.
- 장점: 매우 안정적이며 모든 데이터를 최대한 활용.
- 단점: 데이터가 클수록 시간이 오래 걸림.
데이터 분배 방법
- 랜덤 분배 (Validation croisée aléatoire « à plat »):
- 데이터를 무작위로 하위 집합에 나눔.
- 문제: 일부 클래스나 중요한 변수가 특정 하위 집합에 부족하게 포함될 수 있음.
- 계층화 교차 검증 (Validation croisée stratifiée):
- 각 하위 집합에서 클래스나 변수의 비율을 동일하게 유지.
- 예: 특정 클래스가 데이터의 20%를 차지하면, 모든 하위 집합에서도 이 비율이 유지됨.
- 장점: 더 대표적이며 편향을 줄임.
- 그룹 기반 교차 검증 (Validation croisée par groupe):
- 동일한 그룹(예: 학생, 학급)의 데이터가 훈련 데이터와 테스트 데이터에 겹치지 않도록 보장.
- 데이터 누출(data leakage)을 방지.
- 예: 한 학생의 데이터가 훈련 데이터 또는 테스트 데이터 중 하나에만 포함됨.
교차 검증의 장점
- 강력한 평가:
- 여러 번의 데이터 분할을 사용해 모델의 평균 성능을 평가.
- 편향 감소:
- 결과가 특정 데이터 분할에 의존하지 않도록 보장.
- 일반화 성능 측정:
- 모델이 새로운 데이터에서도 잘 작동할 수 있는지 평가.
요약:
- K-겹 교차 검증: 빠르고 널리 사용되는 방법으로, 데이터를 KK번 훈련 및 테스트합니다.
- 한 개 빼기 교차 검증(LOOCV): 더 정확하지만 데이터가 많을 경우 시간 소요가 큽니다.
- 계층화 검증: 클래스나 변수의 비율을 균일하게 유지합니다.
- 그룹 기반 검증: 동일한 그룹이 훈련과 테스트 데이터에 중복되지 않도록 보장합니다.
교차 검증은 데이터를 무작위로 나눠 발생할 수 있는 편향을 줄이고, 모델의 일반화 성능을 신뢰성 있게 평가하는 필수적인 절차입니다