데이터를 사용해서 머신러닝 알고리즘을 훈련시키고 예측이나 분류 등의 작업을 수행할 수 있게 하는 과정
목적 : 주어진 데이터를 기반으로 알고리즘이 일반적인 패턴을 훈련하고, 이를 바탕으로 미지의 데이터에 대해 예측하거나 분류하는 능력 개발
구성요소 : 데이터, 알고리즘, 손실함수 등
1. 데이터 준비 - 수집, 정제, 전처리를 통해서 훈련 데이터셋 준비
2. 모델 선택 - 문제의 유형에 따라, 주어진 상황에 따라 적합한 알고리즘 및 모델 학습 유형 선택
3. 모델 초기화 - 무작위 초기 파라미터
4. 훈련 - 손실함수 사용해서 예측과 실제 레이블 간의 오차를 계산. 최적화를 사용하여 손실 최소하는 방향으로 모델 파라미터 업데이트
5. 평가 - 별도의 Validation Dataset을 사용하여 모델 성능 평가
6. 튜닝 - 하이퍼파라미터 튜닝, 피처 엔지니어링, 알고리즘 변경 등
유형
회귀/분류/클러스터링/생성형
클러스터링 : 비슷한 특성을 갖는 데이터를 그룹으로 묶는 것 (이미지가 비슷한것들끼리 묶을 수 있을까?), 데이터를 K개의 Cluster로 분할하여 활용 (Clothing images data와 Coffee images data로 2개로 clustering한다고 하면)
관련 알고리즘 : K-Means, DBSCAN, Hierarchical Clustering
생성형
새로운 데이터를 생성할 수 있음.
Batch Training/ Online Training (mini match 작은 단위로 나눔)/ Transfer Learning/ Reinforcement Learning/ Active Learning
Feature Selection은 입력 데이터의 특성 중에서 가장 관련성이 높거나 유용한 특성을 선택하고 불필요한 특성을 제거하는 과정이다. 높은 차원의 데이터는 모델 학습에 시간이 오래 걸릴 뿐만 아니라 과적합 위험이 있다. 특성의 갯수가 적어지면 계산 효율성이 향상되고 중요한 특성만 사용하면 모델의 해석이 더 쉬워진다.
1. ANOVA (일원분산분석) - 카테고리별 numeric data 분포 차이를 검증하는 방법이다. 예를 들어, 성별에 따른 키 분포 분석 검증이 가느하다. 하지만 전제로 정규성, 등분산성, 독립성을 만족하여야 해당 검정을 신뢰할 수 있으므로 비모수 검정인 크루스칼 왈리스 검정을 활용하기도 한다.
두 개 이상의 그룹 간의 평균 차이가 통계적으로 의미 있는지 평가하는 방법이다.
계산식은 F= Between group variance / Within group variance
해석은 F값이 크면 그룹 간의 평균차이가 통계적으로 유의미 하다고 볼 수 있다. 또한 p-value를 통해서 통계적 유의미성을 확인할 수 있다.
2. Chi-Squared Test (카이 제곱 검정)
두 범주형 변수에 대한 분석 방법
예를 들어, 성별에 따른 선호 영화 장르 비교 문제를 들 수 있다.
카이 제곱 검정은 3가지 종류가 있으며, 데이터 수집 방법과 가설에 따라 나뉜다.
1) 적합도 검정
변수가 1개인 경우. 기존에 알려준 기준이 조재하는 검정. 상자 안에 공 3개가 같은 비율로 알려져있는데, 공 100개를 뽑았을 때, 각 색의 비율이 구해진다. 기존에 알려진 공 비율 분포를 따르는지 검정한다.
2) 독립성 검정
변수가 2개인 경우. 범주형 두 변수가 서로 연관되어 있는지 여부를 결정한다. 성별과 흡연 여부 관계를 알고 싶어서 200명을 추출하여 조사한 경우이다.
3) 동질성 검정
변수가 2개인 경우, 범주형 두 변수의 관계를 알기 위한 검정은 아니다. 각 그룹들이 동질한지 알고 싶은 검정이다. 남자와 여자 흡연율 차이가 있는지 흡연율을 조사한 후, 두 그룹의 흡연율이 같은지 여부를 검정한다.
Pearson Correlation Coefficient
두 변수 간의 선형 관계의 강도와 방향을 나타낸다. 아이스크림 판매량과 기온을 들 수 있다. 기온이 높아질수록 아이스크림 판매량이 증가한다. 그러나 상관계수가 높다고 해서 두 변수 간에 인과 관계가 있다고 결론짓기는 어렵다. 히트맵에서는 상관관계가 있어보이지만 실제 데이터 포인트를 시각화해보면 실제로 상관관계가 존재하지 않는 경우도 있다.
Variance Inflation Factor
회귀 분석에서 독립 변수들 간의 다중공선성을 평가하는데 사용되는 값 (두 개 이상의 독립변수가 서로 밀접하게 관련되어 있는 상황). VIF는 해당 변수가 다른 변수와 얼마나 관련되어 있는지를 수치로 표현한다. VIF=1 이면 다중공선성이 없다고 보고, VIF>10이면 보통 다중공선성이 있다고 판단한다. 예를 들면, 집의 면적과 방의 수이다. 큰 집은 방의 수도 많을 가능성이 높기 때문에, 두 변수 사이에 다중 공선성이 있을 수도 있다. 해결을 위해서는 VIF값이 높은 변수들 중 하나 또는 더 많은 변수를 제거하거나 변수를 결합하여 파생변수를 만들 수 있다.
ML 알고리즘이 자체적으로 feature importance를 평가하고 선택할 수 있는 능력을 가지고 있으므로 데이터에 내재된 복잡한 관계를 바탕으로 중요한 특성들만을 선택할 수 있다.
1) Decision Tree - based
어떤 변수가 node 분할에 중요한 역할을 하는지를 기반을 Feature Importance를 평가한다. 구체적으로는 Decision Tree Learning을 하고 각 node에서 feature분할로 인한 불순도 감소를 합산하는 방법이다. 예를 들어 타이타닉 데이터 셋에서 생존 예측 모델을 학습시킬 때, '성별'이나 '객실 등급'과 같은 변수가 높은 중요도를 갖을 수 있다.
2) Random Forest - based
패스트 캠퍼스 10개 프로젝트로 한 번에 끝내는 MLOps 파이프라인 구현 초격차 패키지 Online (0) | 2023.12.02 |
---|---|
[패스트 캠퍼스] 10개 프로젝트로 한 번에 끝내는 MLOps 파이프라인 구현 (실습3) (1) | 2023.11.30 |
[패스트 캠퍼스] 10개 프로젝트로 한 번에 끝내는 MLOps 파이프라인 구현 (실습1) (0) | 2023.11.27 |
[패스트 캠퍼스] 10개 프로젝트로 한 번에 끝내는 MLOps 파이프라인 구현 (3) (0) | 2023.11.27 |
[패스트 캠퍼스] 10개 프로젝트로 한 번에 끝내는 MLOps 파이프라인 구현 (2) (1) | 2023.11.25 |