ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [머신러닝] 쉽게 설명하는 머신러닝
    머신러닝 배우기 2023. 12. 4. 18:26

    ▶︎ 머신러닝이란?

     컴퓨터 시스템이 문제/과제를 풀기 위해 스스로 데이터를 학습하고 특정한 평가 기준을 개선하며 경험을 쌓아나가는 것 

    → 학습이란? 실제 정답과 예측값 사이의 오차(Loss, Cost, Error)를 줄여나가는 최적화 과정

     

    ▶︎ 머신러닝 분류

    → 지도 학습

    - 데이터에 정답이 있어서 입력 데이터와 정답 데이터를 모델에게 제공하여 학습시키는 방식.

    - 학습방법 : 모델은 주어진 입력에 대한 출력을 예측하며, 정확도를 향상시키는 방향으로 학습

    - 예시 : 회귀(날씨 예측, 집값 예측 등), 분류(사기 탐지, 이미지 분류, 스팸 분류, 글자 인식 등)

    - 알고리즘 종류 : 선형 회귀, 로지스틱 회귀, 의사결정 나무, 베이시안 분류 등

     

    → 비지도 학습 

    - 데이터에 정답이 없고, 데이터의 구조나 패턴을 찾도록 학습. 데이터의 숨겨진 구조를 찾거나 그룹화하는 데 사용됨.

    - 학습방법 : 정답이 없기 때문에 알고리즘마다 다른 학습방법을 사용

          1. K-means : 내가 군집의 개수(K)를 설정하면 알고리즘이 초기 중심점을 무작위로 선택함. 각 데이터 포인트를 가장 가까운 중심에 할당하고 중심을 업데이트함. 이 과정을 반복하여 군집의 중심이 수렴할 때까지 진행됨.

          2. 주성분 분석은 고유값 분해를 통해 데이터의 분산을 크게하는 주성분을 찾아 차원을 축소하는 방법. "elbow point"로 주성분의 개수를 결정. 얼마나 많은 주성분을 유지할지 결정해야 전체 데이터의 분산을 어느 정도 설명하는지를 알 수 있음.

    - 예시 : 차원 축소, 군집 분석(클러스터링, 타겟 마케팅, 고객 세분화, 장바구니 분석, 추천 시스템 등)

    - 알고리즘 종류 : K-means 클러스터링, Nearest Neighbor 클러스터링, 주성분 분석(PCA), t-SNE 등

     

    → 강화 학습

    - 연속적으로 일어나는(Sequencial) 상황 속에서 매 순간 어떤 행동을 취하는 것이 최선인지 학습하는 방식

    - 학습방법 : 수행할 때마다 보상이나 패널티를 받아 최종 보상을 최대화하는 방향으로 학습

    - 예시 : AI 활용한 게임, 자율주행, 로봇 제어 등

    - 알고리즘 종류 : 몬테카를로 방식, 마르코프 결정 프로세스, Q러닝, 다이나믹 프로그래밍 등



    ▶︎ 머신러닝 주의할 점

    1. 데이터 품질 확인 : garbage in garbage out 이라고, 좋지 않은 데이터로 학습을 하면 좋지 않은 결과가 나옵니다. 머신러닝은 신이 아니기 때문입니다. 데이터의 품질을 확인하고 적절한 방식으로 처리를 한 후 수행해야합니다. EDA를 통해 변수의 분포나 특성을 확인한 후, 결측치를 처리하거나 outlier를 제거하거나 등의 과정을 거처야 합니다.

     

    2. Overfitting : 모델이 학습 데이터에 너무 꼭 맞춰져있어서, 새로운 데이터에 일반화하지 못하는 상태를 의미합니다. 오버피팅은 데이터를 일반화하지 못하는 아주 위험한 모델이므로 꼭 해결을 해야합니다. 더 많은 데이터를 수집하던가, 데이터를 변형하여 새로운 데이터를 생성하던가, 모델에 정규화 기법을 적용하여 모델 복잡도를 제어하던가, 불필요한 피처나 노이즈가 많은 피처를 제거하고 중요한 피처를 파생 변수로 새로 만드는 등 feature selection / feature engineering 에 집중하던가, k-fold 교차 검증 등 모델의 일반화 성능을 평가하던가, 검증 데이터의 성능이 개선되지 않는 지점에서 일찍 학습을 종료하여 과도하게 적합되기 전에 학습을 멈추거나, 여러 모델의 예측을 결합하는 앙상블 기법을 사용하던가, overfitting과 underfitting이 되지 않도록 하이퍼파라미터 튜닝을 통해 최적의 모델을 찾아야 합니다. 

     

    3. 불균형 데이터 : 클래스 간의 데이터 불균형이 있는 경우, 모델이 불균형한 클래스에 편향되는 현상이 발생할 수 있습니다. 데이터 리샘플링(언더샘플링, 오버샘플링)이나 클래스 가중치 조정(모델 학습 시 소수 클래스에 높은 중요도를 부여하여 소수 클래스에 대한 오분류에 민감하게 학습하도록 유도) 등의 방법을 사용하여 불균형을 다루어야 합니다. 

     

     

    ▶︎ 머신러닝과 전통 통계 기법 비교

    기법 머신러닝 전통 통계
    목적 주로 예측과 패턴 인식 주로 가설 검정 및 통계적 추론
    데이터 처리 대량의 다양한 데이터에 적합 주로 작은 규모의 데이터에 적합
    모델 복잡성 유연하고 복잡한 모델 사용 가능 주로 단순한 모델 사용
    해석 가능성 블랙박스 모델이 많아 해석 어려움 결과를 해석하기 쉬움
    학습 방법 데이터로부터 학습하고 최적화 가정을 기반으로 모델 설정하고 추정
    종속 변수 유형 연속형 및 범주형 변수 예측에 적합 주로 정규 분포를 따르는 변수에 적합
    계산 리소스 많은 계산 리소스 필요 상대적으로 덜 계산적
    예시 알고리즘 랜덤 포레스트, 신경망, SVM t-검정, 선형 회귀, ANOVA
Designed by Tistory.