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)

  1. Classification:
    • 예측 변수(변수 예측)가 이진형 또는 범주형 변수인 경우.
    • 예: 학생이 학습을 성공할지(성공/실패) 여부를 예측.
  2. Régression (회귀):
    • 예측 변수가 연속형 값(예: 시험 점수)인 경우.
    • 예: 학생의 최종 점수를 예측.
  3. Estimation de densité (밀도 추정):
    • 예측 변수가 확률 밀도인 경우.
    • 예: 특정 조건에서 학생의 점수 분포를 예측.

모델 구축 방법론 (Méthodologie de construction)

  1. 주석된 데이터 수집 (Obtenir un ensemble de données annotées):
    • 데이터에 레이블을 부여해, 모델 훈련 시 결과를 비교할 수 있게 함.
    • 예: 학생의 학습 데이터를 성공/실패로 태그.
  2. 데이터 분리 (Séparer les données):
    • 데이터를 훈련 데이터셋 (training)과 테스트 데이터셋 (test)으로 나눔. (ensemble d'entrînement / ensemble de test)
    • 일반적인 비율: 70% (훈련), 30% (테스트).
  3. 분류/회귀 방법 선택 (Choisir une méthode de classification ou régression):
    • 분류 예: 의사결정 트리 arbre de décision,  réseau bayésien; SVM, 나이브 베이즈, 신경망.
    • 회귀 예: 선형 회귀, 다항 회귀.
  4. 모델 훈련 (Entraîner et extraire un modèle):
    • 훈련 데이터를 사용하여 모델을 학습시킴.
    • 모델이 데이터를 기반으로 예측 패턴을 학습.
  5. 모델 평가 (Evaluer le modèle):
    • 테스트 데이터를 사용해 모델의 성능을 평가.
    • 성능 지표(예: 정확도, 정밀도, F1 점수)를 측정.
  6. 반복 (Itérer si nécessaire):
    • 데이터(1단계), 모델(3단계), 또는 하이퍼파라미터를 조정하여 성능을 개선.

수동적으로 할 수 있지만 예측 변수가 너무 많을 경우 어려움

 


모델 평가 지표 (Métriques d’évaluation)

  1. 정확도 (Accuracy):
    • 정확히 분류된 데이터 비율.
    • 위험: 데이터가 불균형(예: 한 범주에만 편중)일 경우, 정확도가 왜곡될 수 있음.
  2. 정밀도 (Precision):
    • 모델이 긍정 예측을 했을 때 얼마나 올바른지 측정.
    • 위험: 적은 수의 중요한 사례를 놓칠 가능성.
  3. 재현율 (Recall):
    • 실제 긍정 사례 중 모델이 얼마나 많이 찾았는지 측정.
    • 위험: 재현율이 높으면 오탐률이 증가할 가능성.
  4. F1 점수 (F1 Score):
    • 정밀도와 재현율의 조화 평균.
  5. ROC-AUC:
    • 모델이 클래스 구분을 얼마나 잘하는지 평가.

모델 개발 시 주의사항 (Risques et limites)

  1. 과적합 (Overfitting):
    • 모델이 훈련 데이터에 너무 적합해, 새로운 데이터에 일반화하지 못함.
    • 대처법: 교차 검증(Cross-validation), 정규화(Regularization).
  2. 데이터 편향 (Data Bias):
    • 데이터가 특정 클래스나 조건에 편향되어 결과가 왜곡될 가능성.
  3. 해석 가능성 (Interprétabilité):
    • 복잡한 모델(예: 신경망)은 결과 해석이 어려울 수 있음.
    • 대처법: 간단한 모델(예: 의사결정 트리) 우선 사용.
  4. 데이터 품질 (Qualité des données):
    • 결측치나 오류 데이터가 모델 성능에 부정적 영향을 미칠 수 있음.

 

요약 (Résumé)

  • 목표: 데이터 기반으로 결과를 예측하는 모델 개발.
  • 방법론: 데이터를 준비하고, 모델을 훈련 및 평가한 뒤 필요 시 조정.
  • 지표: 정확도, 정밀도, 재현율, F1 점수 등으로 성능 평가.
  • 주의사항: 과적합, 데이터 편향, 복잡성 문제를 고려해야 함.

과적합 (Overfitting)

정의:

과적합은 모델이 데이터의 일반적인 특징뿐만 아니라 **너무 구체적인 세부사항이나 잡음(노이즈)**까지 학습할 때 발생합니다. 이는 새로운 데이터에 대한 일반화 성능을 저하시킵니다.

주요 원인:

  1. 모델이 너무 복잡함:
    • 모델의 파라미터가 데이터 크기에 비해 너무 많을 때.
    • 예: 적은 데이터를 사용하는 복잡한 신경망 모델.
  2. 데이터 양이 부족함:
    • 모델에 비해 데이터의 행(row)이 너무 적음.
    • 파라미터당 최소 5~10개의 데이터 행이 필요하다고 권장됨.

결과:

  • 새로운 데이터에서 성능 저하:
    • 모델이 훈련 데이터에서는 높은 정확도를 보이지만, 새로운 데이터에서는 성능이 저조합니다.

과적합을 방지하는 방법:

  1. 더 간단한 모델 선택:
    • 모델의 파라미터 수를 줄여서 데이터의 세부사항을 과도하게 학습하지 않도록 함.
  2. 속성(특징) 수 줄이기:
    • 중요하지 않은 변수를 제거하여 모델 단순화.
    • 주의: 너무 많은 변수를 제거하면 과소적합(Underfitting) 발생 가능.
  3. 데이터 크기 늘리기:
    • 더 많은 데이터를 수집하여 모델이 데이터를 일반화할 수 있도록 지원.
  4. 교차 검증 (Cross-Validation) 사용:
    • 데이터를 여러 개의 하위 집합으로 나누어, 새로운 데이터에서 모델 성능을 평가.
    • 예: K-Fold 교차 검증.
  5. 정규화(Regularization) 기법 사용:
    • 모델 가중치(Weights)에 패널티를 추가해 과도한 학습을 방지.
    • 예: L1(라쏘) 정규화, L2(릿지) 정규화.
  6. 조기 종료(Early Stopping):
    • 훈련 데이터에서의 성능은 계속 좋아지지만 검증 데이터에서 성능이 떨어지기 시작할 때 학습을 멈춤.

시각적 예시:

모델 유형 설명 성능
과소적합 모델이 너무 단순하여 데이터를 제대로 학습하지 못함. 훈련 및 테스트 모두 성능 낮음.
적절한 학습 모델이 충분히 복잡하여 일반화 가능. 훈련 및 테스트 모두 성능 우수.
과적합 모델이 너무 복잡하여 세부사항까지 학습. 훈련 성능은 우수, 테스트 성능은 낮음.

요약:

과적합은 기계 학습에서 중요한 문제입니다. 모델의 복잡성과 데이터 크기 간 균형을 맞추고, 교차 검증, 정규화, 또는 조기 종료와 같은 기법을 활용하면 이를 방지할 수 있다. 

 

 

지도 학습과 비지도 학습의 차이


지도 학습 (Classification supervisée):

  1. 정의:
    • 지도 학습에서는 훈련 데이터에 **레이블(정답)**이 포함되어 있습니다.
    • 모델은 이러한 레이블을 기반으로 학습하여 새로운 데이터의 클래스를 예측합니다.
  2. 목적:
    • **타겟 변수(클래스)**를 예측하는 것.
    • 예: 이메일이 "스팸"인지 "스팸 아님"인지 식별.
  3. 예시 알고리즘:
    • 의사결정 트리(Decision Trees).
    • 서포트 벡터 머신(SVM).
    • 신경망(Neural Networks).
  4. 장점:
    • 모델이 레이블로 학습하기 때문에, 고품질의 데이터가 제공되면 높은 정확도를 보일 수 있음.
  5. 단점:
    • 많은 양의 레이블이 포함된 데이터가 필요하며, 이를 준비하는 데 비용과 시간이 많이 들 수 있음.

비지도 학습 (Classification non supervisée):

  1. 정의:
    • 비지도 학습에서는 훈련 데이터에 레이블이 포함되어 있지 않습니다.
    • 모델은 데이터를 분석해 유사한 데이터끼리 그룹화하거나(군집화), 데이터 내부의 패턴을 찾아냅니다.
  2. 목적:
    • 데이터의 패턴 또는 구조를 발견하는 것.
    • 예: 고객을 구매 습관에 따라 그룹화.
  3. 예시 알고리즘:
    • K-평균(K-Means).
    • 계층적 군집화(Hierarchical Clustering).
    • 가우시안 혼합 모델(Gaussian Mixture Models, GMM).
  4. 장점:
    • 레이블이 필요하지 않아, 레이블이 없는 데이터에서도 활용 가능.
  5. 단점:
    • 결과 해석이 어렵고, 클러스터의 수와 같은 하이퍼파라미터에 성능이 크게 의존.

지도 학습과 비지도 학습의 주요 차이점

기준지도 학습 (Supervisée)비지도 학습 (Non supervisée)

레이블 필요 여부 필요함. 필요하지 않음.
목적 클래스나 타겟 값을 예측. 데이터 구조나 그룹을 식별.
예시 알고리즘 SVM, 의사결정 트리, 신경망 등. K-평균, 계층적 군집화, GMM 등.
사용 목적 알려진 대상을 분류. 새로운 패턴이나 그룹 발견.

실제 활용 예시:

  1. 지도 학습:
    • 이메일이 "스팸"인지 "스팸 아님"인지 분류.
    • 학생이 시험에서 합격할 가능성을 예측.
  2. 비지도 학습:
    • 고객을 구매 습관에 따라 그룹화.
    • 기존에 알려지지 않은 시장 세그먼트를 식별.

교육 데이터 마이닝: 예측에서 분류와 회귀의 차이


1. 분류 (Classification)

  1. 정의:
    • 분류는 관측값에 범주 또는 클래스를 할당하는 것입니다.
    • 예측 대상 변수는 범주형 또는 이진형(예: 성공/실패)입니다.
  2. 목적:
    • 각 관측값을 특정 카테고리 또는 그룹에 속하도록 예측.
  3. 교육 분야에서의 예시:
    • 학생이 과정을 성공적으로 마칠지 여부 예측(성공/실패).
    • 학생의 학습 스타일 식별(시각적, 청각적, 운동적 학습자).
    • 시스템을 오용하는 행동("Gaming the System") 탐지.
  4. 주요 알고리즘:
    • 의사결정 트리(Decision Trees).
    • 신경망(Neural Networks).
    • 서포트 벡터 머신(SVM).

2. 회귀 (Régression)

  1. 정의:
    • 회귀는 관측값에 대한 연속적인 값을 예측하는 것입니다.
    • 예측 대상 변수는 숫자형(연속형)(예: 점수, 시간)입니다.
  2. 목적:
    • 특정 값을 예측하여 정량적 결과를 도출.
  3. 교육 분야에서의 예시:
    • 학생의 최종 시험 점수 예측.
    • 학생이 특정 과제를 완료하는 데 필요한 시간 예측.
    • 학습 플랫폼에 학생이 접속할 횟수 예측.
  4. 주요 알고리즘:
    • 선형 회귀(Linear Regression).
    • 신경망(Neural Networks).
    • 랜덤 포레스트(Random Forests).

분류와 회귀의 주요 차이점:

기준
분류 (Classification) 회귀 (Régression)
예측 대상 변수의 특성 범주형 (이진형 또는 다범주형). 연속형 (숫자형).
목적 클래스 또는 그룹을 예측. 정량적 값을 예측.
교육 분야 예시 학생이 성공할지 여부 예측. 학생의 시험 점수를 추정.
주요 알고리즘 의사결정 트리, SVM, 신경망 등. 선형 회귀, 랜덤 포레스트 등.

 


요약:

  • 분류(Classification): 특정 클래스(예: 성공/실패)를 예측하기 위한 분석.
  • 회귀(Régression): 연속적인 값을 예측(예: 점수, 시간)하기 위한 분석.
  • 두 접근법은 교육 데이터 마이닝에서 학생의 성과와 행동을 이해하고 최적화하는 데 중요한 역할

교차 검증 (Validation Croisée)


교차 검증이 왜 필요한가?

  • 모델을 모든 데이터로 학습시킬 경우, 새로운 데이터에서의 성능을 평가할 방법이 없습니다.
  • 해결책: 데이터를 훈련용과 테스트용으로 나누고, 교차 검증을 통해 모델의 성능을 신뢰성 있게 평가합니다.

원리: 데이터를 어떻게 나눌 것인가?

  1. K-겹 교차 검증 (K-fold Cross-Validation):
    • 데이터를 **K개의 하위 집합(folds)**으로 나눕니다.
      • K−1개의 하위 집합은 훈련용으로 사용.
      • 1개의 하위 집합은 테스트용으로 사용.
    • 이 과정을 K번 반복하며, 테스트 데이터가 매번 바뀝니다.
    • 장점: 빠르고 효율적.
  2. 한 개 빼기 교차 검증 (Leave-One-Out Cross-Validation, LOOCV):
    • 특별한 경우로, K=N(전체 데이터 수)입니다.
    • 각 데이터를 테스트 세트로 한 번씩 사용.
    • 장점: 매우 안정적이며 모든 데이터를 최대한 활용.
    • 단점: 데이터가 클수록 시간이 오래 걸림.

데이터 분배 방법

  1. 랜덤 분배 (Validation croisée aléatoire « à plat »):
    • 데이터를 무작위로 하위 집합에 나눔.
    • 문제: 일부 클래스나 중요한 변수가 특정 하위 집합에 부족하게 포함될 수 있음.
  2. 계층화 교차 검증 (Validation croisée stratifiée):
    • 각 하위 집합에서 클래스나 변수의 비율을 동일하게 유지.
    • 예: 특정 클래스가 데이터의 20%를 차지하면, 모든 하위 집합에서도 이 비율이 유지됨.
    • 장점: 더 대표적이며 편향을 줄임.
  3. 그룹 기반 교차 검증 (Validation croisée par groupe):
    • 동일한 그룹(예: 학생, 학급)의 데이터가 훈련 데이터와 테스트 데이터에 겹치지 않도록 보장.
    • 데이터 누출(data leakage)을 방지.
    • 예: 한 학생의 데이터가 훈련 데이터 또는 테스트 데이터 중 하나에만 포함됨.

교차 검증의 장점

  1. 강력한 평가:
    • 여러 번의 데이터 분할을 사용해 모델의 평균 성능을 평가.
  2. 편향 감소:
    • 결과가 특정 데이터 분할에 의존하지 않도록 보장.
  3. 일반화 성능 측정:
    • 모델이 새로운 데이터에서도 잘 작동할 수 있는지 평가.

요약:

  • K-겹 교차 검증: 빠르고 널리 사용되는 방법으로, 데이터를 KK번 훈련 및 테스트합니다.
  • 한 개 빼기 교차 검증(LOOCV): 더 정확하지만 데이터가 많을 경우 시간 소요가 큽니다.
  • 계층화 검증: 클래스나 변수의 비율을 균일하게 유지합니다.
  • 그룹 기반 검증: 동일한 그룹이 훈련과 테스트 데이터에 중복되지 않도록 보장합니다.

교차 검증은 데이터를 무작위로 나눠 발생할 수 있는 편향을 줄이고, 모델의 일반화 성능을 신뢰성 있게 평가하는 필수적인 절차입니다