결정계수(R)
머신러닝에서 결정계수는 대표적인 회귀 문제의 성능 측정 으로 사용된다.
결정계수를 사용하는 이유는, 회귀의 테스트를 진행할 때 정확 한 숫자를 맞추기는 어렵기 때문에, 예측값과 목표값의 평균을 통해 예측값이 목표값에 얼마나 가까운지를 확인하여 평가하게 된다.
공식은 복잡해 보이지만, 예측값과 실제 값의 차이를 1과 0 사이의 값으로 표현한 것이라고 이해하면 좋을 듯 하다.
1에 가까울 수록 좋고, 0에 가까울 수록 성능이 나쁜 모델이라고 할 수 있다.
과대/과소적합
과대적합과 과소적합은, 훈련 세트와 테스트 세트간 문제점을 얘기할 때 많이 사용되는 용어이다.
과대적합은 학습 데이터가 복잡해지면 발생할 수 있는데,
이유는 학습 데이터의 모든 세부 사항을 학습하게 되는데, 이렇게 되면 학습 데이터의 노이즈나 특이한 패턴까지 학습하게 되어 새로운 데이터에 대한 예측력이 떨어지게 되어 테스트 결과가 좋지 않게 된다.
과소적합은 모델이 너무 단순해서 발생하는 경우가 많다.
모델이 단순해지면 학습 데이터의 전체적인 패턴을 파악하지 못하게 되는데, 이렇게 되면 학습 데이터의 일반적인 패턴을 학습하지 못하여 새로운 데이터에 대한 예측력이 떨어지게 된다.
즉 과대적합과 다르게 너무 학습량이 없다는 것이다.
결국 2가지 모두 예측력이 떨어지는 문제가 발생하기 때문에 이를 아래와 같은 방법으로 개선이 가능하다.
모델의 파라미터 수를 줄이기 - 모델의 파라미터 수는 모델의 복잡도를 결정하는 중요한 요소로 노이즈를 개선할 수 있다.
보다 충분한 학습 데이터를 통해서 진행하기 - 학습 데이터에 대해 더 잘 이해하려면 더 많은 데이터를 가지고 학습해야 하기 때문에 충분한 양으로 충분히 학습하는 것이 좋다.
'Bigdata' 카테고리의 다른 글
허깅페이스(huggingface) - transformers등 기본 모델 위치 (0) | 2024.06.10 |
---|---|
머신러닝 - K-최근접 이웃 회귀(KNN Regression) 알고리즘 특징과 코드 (0) | 2024.06.08 |
머신러닝/딥러닝 - 무료 ChatGPT/Local LLM 웹 인터페이스 Top 7 (0) | 2024.06.08 |
LLM/ChatGPT - 나만의 모델 Chatbot-UI에 넣기 위한 구조 이해 (0) | 2024.06.08 |
RNN - Python numpy 기초 코드 실습 (0) | 2024.06.08 |