LearnRun

[KT AIVLE 3기] 4주차 후기 - 머신러닝 본문

KT AIVLE 3기/Weekly Report

[KT AIVLE 3기] 4주차 후기 - 머신러닝

PROMPT_ 2023. 2. 25. 11:14

◈  Contents

     

    본 게시글은 AIVLE 기자단 활동의 일환으로 작성되었습니다.

     

    한달을 채웠네요.

    점점 피로가 쌓이는 기분이에요 TT)

     

    복습하랴, 코딩마스터스 랭킹 방어하랴, 프로젝트 뛰랴..

    굉장히 바쁜 나날입니다.

     

    머신 러닝

    시작부터 벽을 느꼈습니다.

    딥러닝은 진입도 못했는데, 벌써부터 땀이 흐르네요.

     

    저는 여전히 멍청하고, 여전히 감자라는 것을 느꼈습니다. 

    현실은 좀 다르네요 (....)

    코드 구문도 이해하겠고, 어떤 방식을 쓰는 지도 이해하겠으나,

    결정적으로 왜 이런 방식을 쓰는 지를 모르겠습니다.

     

    문제가 닥쳤을 때, 기계적으로 받아쓰기를 하게 될까 두렵습니다.

    지금 배운 것들이 이해에 기반한 것이 아닌,  암기에 기반하고 있다는 뜻이겠지요..ㅠㅠㅠ

     

    그럼에도 쓸모 없었냐면 또 그렇지는 않습니다.

    외려 코드 없이 이론부터 부딪혔으면 또 그건 그것대로 굉장히 고역이었을 것이라 생각합니다.

     

    Part 1. 분류

    혼동행렬

    출처 :https://manisha-sirsat.blogspot.com/2019/04/confusion-matrix.html

    분류 모델의 성능을 평가하기 위해 사용되는 표.
    실제 클래스와 예측 클래스 간의 관계를 나타내며, 얼마나 정확하게 분류하는지를 파악하는 방법입니다.

    ● True Positive (TP)
     - 실제 클래스가 양성(Positive)이고 예측 클래스도 양성인 경우의 수입니다. 즉, 모델이 정확하게 양성을 예측한 경우입니다.

     False Positive (FP)
     - 실제 클래스는 음성(Negative)인데 예측 클래스가 양성인 경우의 수입니다. 즉, 모델이 잘못된 양성 예측을 한 경우입니다.

     True Negative (TN)
     - 실제 클래스가 음성이고 예측 클래스도 음성인 경우의 수입니다. 즉, 모델이 정확하게 음성을 예측한 경우입니다.

     False Negative (FN)
     - 실제 클래스는 양성인데 예측 클래스가 음성인 경우의 수입니다. 즉, 모델이 잘못된 음성 예측을 한 경우입니다.

     

     

    분류평가의 지표

     정확도(Accuracy)
     - 전체 예측 중 올바르게 예측한 비율을 나타냅니다. (정확한 예측 수) / (전체 예측 수)

     정밀도(Precision)
     - 모델이 양성으로 예측한 샘플 중에서 실제 양성인 샘플의 비율을 나타냅니다.

    (True Positives) / (True Positives + False Positives)

     재현율(Recall)
     - 실제 양성인 샘플 중에서 모델이 양성으로 예측한 샘플의 비율을 나타냅니다.

    (True Positives) / (True Positives + False Negatives)

     F1 스코어
     - 정밀도와 재현율의 조화평균으로, 양성 클래스에 대한 모델의 성능을 종합적으로 나타냅니다.

     혼동행렬(Confusion Matrix)
     - 위 항목 참조

     

    대표 모델

     로지스틱 회귀
    분류 문제를 다루기 위한 알고리즘으로, 입력 특성들의 가중치와 로지스틱 함수를 사용하여 확률 값을 계산합니다.

    주로 이진 분류에 사용되며, 입력값을 확률로 변환하여 임계값을 기준으로 클래스를 분류합니다.

     의사결정트리
    데이터를 기반으로 분류나 회귀를 수행하는 모델로, 특성들을 기반으로 의사 결정 규칙을 학습합니다.

    각 노드에서 특성을 선택하며, 이를 통해 데이터를 분할하여 예측을 수행합니다.

     랜덤포레스트
    여러 개의 의사결정트리를 조합한 앙상블 모델입니다.

    각 트리는 랜덤하게 선택된 데이터와 특성을 사용하여 학습하며, 결과를 투표하여 최종 예측을 수행합니다.

    과적합을 줄이고 안정적인 예측을 제공하는데 효과적입니다.

     서포트 벡터 머신
    데이터를 고차원 공간으로 매핑하여 최적의 결정 경계를 찾는 알고리즘입니다.

    서포트 벡터는 결정 경계에 가장 가까이 있는 데이터 포인트로, 이를 기반으로 분류나 회귀를 수행합니다.

     KNN
    데이터 포인트 주변의 K개의 최근접 이웃을 기반으로 예측을 수행하는 알고리즘입니다.

    입력 데이터와 가장 유사한 K개의 이웃을 찾아 다수결 투표를 통해 분류하거나 평균을 내어 회귀를 수행합니다.

     

     

    Part 2. 회귀

    독립변수와 종속변수

     독립변수
    다른 변수에 영향을 미치는 변수로, 원인이 되는 변수를 말합니다. 
    예를 들어, 학생의 공부시간이 독립변수일 때, 이것이 시험 성적에 어떤 영향을 미치는지를 보는 경우가 그러합니다.

     종속변수
    독립변수에 영향을 받는 변수로, 결과 혹은 반응을 나타내는 변수입니다. 
    위의 예시에서 시험 성적이 종속변수가 될 수 있습니다. 
    독립변수의 변화에 따라 종속변수가 어떻게 변화하는지를 분석하고 예측하는 것이 주 목표입니다.

     

    회귀평가의 지표

     평균 제곱 오차(Mean Squared Error, MSE)
     - 예측값과 실제값 간의 차이를 제곱하여 평균한 값으로, 오차의 크기를 평가합니다.

     평균 절대 오차(Mean Absolute Error, MAE)
     - 예측값과 실제값 간의 차이의 절댓값의 평균을 계산하여 오차의 크기를 평가합니다.

     평균 절대 백분율 오차(Mean Absolute Percentage Error, MAPE)
     - 예측값과 실제값 간의 백분율 차이의 평균을 계산하여 상대적인 오차를 평가합니다.

     결정 계수(Coefficient of Determination, R-squared)
     - 모델이 설명하는 종속변수의 변동성의 비율을 나타내며, 1에 가까울수록 모델의 설명력이 좋다고 판단됩니다.

     

    대표 모델

     결정트리 회귀 (Decision Tree Regression)
    데이터를 분석하여 트리 구조로 나타내며, 각 분기마다 최적의 결정을 내리는 회귀 알고리즘입니다.
    데이터를 특성에 따라 여러 개의 조건으로 나누어 가며 예측 모델을 만듭니다. 
    이로써 복잡한 데이터 관계도 모델링할 수 있으며, 과적합을 조절할 수 있는 매개변수 설정이 중요합니다.

     서포트 벡터 머신 회귀 (Support Vector Machine Regression)
    데이터를 고차원 공간으로 변환하여 데이터를 분류하는 서포트 벡터 머신(SVM)을 회귀 문제에 적용한 알고리즘입니다. 
    주어진 데이터와 예측 값 사이의 차이를 최소화하는 초평면을 찾는 방식으로 작동합니다. 이를 통해 비선형 관계도 모델링할 수 있으며, 일반화 능력이 강한 특징을 가지고 있습니다.

     랜덤 포레스트 회귀 (Random Forest Regression)
    여러 개의 결정트리를 조합하여 더 강력하고 안정적인 회귀 모델을 만드는 알고리즘입니다. 
    각 결정트리의 예측 결과를 평균하거나 투표하여 최종 예측을 수행합니다. 
    이로써 과적합을 줄이고 예측 성능을 향상시킬 수 있습니다. 
    변수 중요도를 계산하여 데이터의 특성을 평가하는 데에도 활용됩니다.

     

     

    마치며..

    본격적으로 러닝커브의 경사가 느껴지기 시작합니다.

    외울 것도 많고, 특징도 가지각색이라 직접 해보면서 체득하고 있어요.

     

    슬슬 다른 에이블러들의 곡소리가 들립니다.

    저도 곡소리를 뱉습니다.

     

    열심히 달려봐야 후회 없을거라, 최대한 빡세게.. 복습하고 있습니다.

    ‌ ‌ ‌
    Comments