에이블 스쿨

[KT 에이블스쿨] 머신러닝(지도학습)

메롱메롱메롱나 2024. 10. 29. 02:33

7주차에는 데이터를 예측하기 위한 머신러닝 모델링을 학습했다.

 

1. 지도학습 VS 비지도 학습

머신러닝은 학습 방법에 따라 크게 지도학습, 비지도 학습으로 나눌 수 있다. 

쉽게 말하면,

  • 지도학습 : 입력 데이터와 해당 데이터의 정답을 바탕으로 학습. (정답이 있음)
  • 비지도 학습 : 입력 데이터만으로 학습. (정답이 없음)

 

2. 분류 VS 회귀

그리고 어떤 데이터를 예측할 건지에 따라 분류와 회귀(지도 학습)로 나뉘어진다. +군집화(비지도 학습)

쉽게 말하면, 

  • 분류 : 여러 클래스 중 하나로 분류되는 값. ex) 이거냐? 저거냐?
  • 회귀 : 연속적인 수치의 값. ex) 점수가 몇점?

=> 분류인지, 회귀인지에 따라 머신러닝 학습을 위한 알고리즘과 평가함수가 달라짐.

 

3. 변수와 타겟

  • 독립 변수 (X_feature) : target을 변하게하는 요인(원인)
  • 종속 변수 (Y_target) : 예측하고 싶은 값. 즉, 독립변수들로 인해 변경되는 값(결과)

 

4. 모델링 과정

1) 데이터 불러오기

2) 데이터 전처리

3) 데이터 셋 분리

- 각각의 데이터들을 X(feature), Y(target)으로 분리

- 데이터를 학습용, 검증용, 평가용으로 분리

   * 보통 평가용이 따로 주어짐. 그럼 학습용과 검증용으로만 분리

4) 알고리즘 모델 선언

5) 학습 데이터로 모델 학습

6) 평가 데이터로 모델 예측

7) 성능 평가 (예측 점수)

 

5. 알고리즘

회귀 모델 알고리즘 분류 모델 알고리즘
- LinearRegression
- KNeighborsRegressor
- DecisionTreeRegressor
- RandomForestRegressor
- XGBRegressor
- DecisionTreeClassifier
- KNeighborsClassifier
- LogisticRegression
- RandomForestClassifier
- XGBClassifier

 

6. 평가

회귀 모델 평가 함수 분류 모델 평가 함수
- accuracy_score
- recall_score
- precision_score
- classification_report
- confusion_matrix
- mean_absolute_error
- mean_squared_error
- root_mean_squared_error
- mean_absolute_percentage_error
- r2_score

 

7. 하이퍼파라미터

: 알고리즘으로 모델을 학습할 때 모델 성능을 최적화 하기 위해 매개변수를 조절하는 것

 

8. 앙상블

: 여러개의 모델을 결합하여 단일 모델보다 더 나은 성능을 얻을 수 있는 기법

 


정말.. 무수히 많은 모델 학습 알고리즘 기법들이 있다.. 내가 학습하고 예측하고 싶은 데이터에 맞게 적절한 알고리즘을 선택하고 예측 모델링을 진행하는게 어려울 거 같다 ,,, 그리고 모델 최적화 ,,,

 

그리고 생각보다 모델 학습에 많은 시간이 소요되어서 뭔가 빨리빨리 하이퍼파라미터 값을 변경해서 결과를 볼 수가 없는 것이 답답했다. 모델 학습 한번 하려면 굉장히 신중히 해야하는 ^^ ....

 

그래도 데이터 분석을 위해서는 항상 기존의 데이터만을 가지고 하는 것이 아니라 기존 데이터를 기반으로 한 예측도 필요하기 때문에 예측 모델링은 중요하면서도 필수적인 과정인 것 같다. 

728x90