모바일은 화면을 돌려 가로화면으로 보시는 게 읽으시기 편할 수 있습니다. 돌려서 보시는 걸 추천드릴게요!!
저번 포스팅에서는 Linear Regression에 대해 배워보았습니다.
이번에는 Parametric Reduction의 다른 방법인 Nonlinear Regression에 대해 알아보도록 합시다.
🚩 1. Nonlinear Regression 이란??
Parametric Reduction 에는 linear regression과 nonlinear regression 이 있습니다.
Linear Regression은 데이터의 변수가 선형적인 관계를 가지고 있을 것이라는 assumption 하에 reduction이 진행됩니다.
반면 Nonlinear Regression은 데이터가 비선형적인 관계를 가지는 경우를 가정합니다.
이러한 차이만 알고 계시면 이어질 내용을 이해하는 데에는 어려움이 없을 것 같습니다.
📝 Nonlinear Regression
▪ 비선형으로 표현되는 모델 가정
▪ parameter를 두 개 이상 사용함으로써 데이터를 설명할 수 있는 경우의 수가 증가함
▪ 하지만 데이터를 세세히 설명하는 모델이기에 overfitting 이 발생할 수 있음
▪ overfitting에 의해 다른 데이터에 적용했을 때의 예측력은 낮은 경우가 있음
▪ 다항식의 형태로 모델이 표현됨 : polynominal regression
몇 가지 특징을 알아보았습니다.
요약하자면, 많은 파라미터를 통해 비선형적인 데이터도 표현할 수 있도록 하는 모델로 정리할 수 있을 것 같습니다.
이제 모델의 형태를 살펴봅시다
$y = \hat{β_n}x^n + \hat{β_{n-1}}x^{n-1} + ... + \hat{β_2}x^2 + \hat{β_1}x + \hat{β_0}$
다양한 차수의 항들을 통해 데이터의 비선형성까지 전반적인 표현이 가능합니다. 하지만 가지고 있는 데이터를 잘 표현한다고 해서 모델의 항의 개수를 지나치게 늘려버린다면, 위에서 언급했듯이 overfitting이 발생할 수 있습니다. 이렇게 되면 다른 데이터에 대한 예측력이 낮을 수 밖에 없기에 유용한 모델을 만드는 것이 불가능합니다. 따라서 이를 잘 조절해서 모델을 생성하는 것이 중요하다고 할 수 있겠습니다.
기본적인 개념은 배웠으니, 이제 Nonlinear Regression의 종류를 알아보도록 합시다🙃.
🚩 2. Nonlinear Regression 종류
▪ 1. Multiple Regression
일반적으로는 단일 attribute에 대해 regression을 하고 각각의 결과를 바탕으로 비슷한 예측값을 가지는 모델끼리 합치거나, 연관관계가 높은 모델끼리 합치는 방식을 통해 reduction을 진행합니다. 하지만 multiple regression은 단일 attribute를 regression 하기보다 y라는 예측값을 다양한 attribute의 선형함수로 취급해 모델링합니다. 이를 통해 데이터의 비선형성을 표현할 수 있습니다.
모델의 형태는 아래와 같습니다.
$y=w_1x_1+w_2x_2+w_3x_3+...+w_nx_n+b$
이 경우 모델의 error는 아래와 같이 계산되며, 이 Error를 최소화하는 방향으로 파라미터의 업데이트가 진행됩니다.
$RSS=e_1^2+e_2^2+...+e_n^2=\sum(y_i-(\hat{β_0}+\hat{β_1}x_{i1}+\hat{β_2}x_{i2}+...+\hat{β_n}x_{in}))^2$
▪ 2. Log-linear Model
데이터를 로그 스케일로 표현하는 것을 의미합니다.
데이터에 큰 값이 있으면 상대적으로 작은 값은 표현되지 않는 경우가 많으나, 로그 스케일을 사용하면 전반적인 데이터의 스케일이 줄어들어 attribute 간의 관계를 찾기가 보다 편해집니다. 이를 통해 대소관계와 연관관계를 파악해서 data reduction을 수행합니다.
🧩 이렇게 해서 Parametric Data Reduction을 모두 알아보았습니다. 머신러닝에서는 가장 기본적으로 다루는 내용이고, 간단한 수학 지식만으로도 모델의 형태와 그 알고리즘을 이해하기 어렵지 않은 개념들이기 때문에 그렇게 엄청 자세하게 다루지는 않았습니다. 하지만 이런 방법을 통해 값을 예측하는 것 뿐만 아니라 데이터의 차원을 줄일 수 있다는 아이디어를 아시면 좋을 것 같습니다😃😃.
🧩 다음 포스팅에서는 Numerosity Reduction의 다른 종류인 Nonparametric Data Reduction에 대해서 알아보도록 합시다.
💡위 포스팅은 한국외국어대학교 바이오메디컬공학부 고윤희 교수님의 [생명정보학을 위한 데이터마이닝] 강의를 바탕으로 합니다.
'📌 데이터마이닝 > 데이터 전처리' 카테고리의 다른 글
🚩 데이터마이닝 14. Dimensionality Reduction (0) | 2023.02.19 |
---|---|
🚩 데이터마이닝 13. Reduction - Nonparametric (0) | 2023.02.17 |
🚩 데이터마이닝 11. Reduction - Linear Regression (0) | 2023.02.16 |
🚩 데이터마이닝 10. Data Reduction (0) | 2023.02.16 |
🚩 데이터마이닝 09. Integration-분산/상관관계분석 (0) | 2023.02.15 |