본문 바로가기

머신러닝,딥러닝/ML 회귀분석(이상엽 교수님)10

ROC curve, AUC 개념 및 sklearn 코드 목차 1. ROC curve, AUC 2. titanic 실습(sklearn 코드) 지난 시간에 분류문제의 성능평가 지표인 Accuarcy, Recall, Precision, F1 score에 대해서 알아보았다. 오늘은 ROC curve에 대해서 알아보겠다. (참고 : 분류문제 성능평가 지표: Accuracy, Recall, Precision, F1 score (+titanic 실습)) 1. ROC curve, AUC ROC(Receiver Operating Characteristics) curve란, 종속변수값을 무엇으로 예측할 것인지의 기준이 되는 확률(threshold probability) 값에 따른 TPR과 FPR값들의 집합을 의미한다. 그리고 AUC(Area Under the Curve)는 R.. 2023. 6. 15.
분류문제 성능평가 지표: Accuracy, Recall, Precision, F1 score (+titanic 실습) 목차: 1. 분류문제 성능평가 지표 1-1. Confusion matrix 1-2. Accuracy(정확도) 1-3. Recall(재현율) 1-4. Precision(정밀도) 1-5. F1 score 2. 데이터 불균형 문제 2-1. Over sampling 2-2. Under sampling 3. 케글 titanic 실습 분류문제의 성능평가 지표에는 Accuracy, recall, precision, F1 등이 있다. 이는 모델 평가단계에서 사용하는 성능평가 지표이다. 이번시간에는 가장 대표적인 평가지표인 4가지에 대해서 먼저 알아보겠다. 위에서 언급한 4개의 분류문제 성능평가지표는 계산을 위해서 confusion matrix를 사용해야 한다. 이는 종속변수의 실제값과 모형을 통해서 예측이 된 종속변수.. 2023. 6. 10.
[로지스틱 회귀] Solver 종류와 장단점 목차 Solver란? 1. newton-cg: 뉴튼랩슨 2. lbfgs 3. liblinear 4. sag 5. saga Solver란? Solver는 LogisticRegression 모델에서 사용하는 하이퍼 파리미터 중 하나로, 비용함수의 최솟값을 어떠한 방법으로 찾을 것인지를 지정하는 역할을 한다. 방법에 따라 학습 성능이 달라지기 때문에 solver를 잘 선택하는 것도 중요하다. 종류에는 newton-cg, lbfgs, liblinear, sag, saga로 총 5가지가 있다. 이중에 newton-cg, lbfgs은 뉴튼 랩슨 방법을 활용하고, 나머지 3개는 경사하강법을 활용한다. 뉴튼 랩슨방법보다는 경사하강법이 학습속도가 더 빠르기 때문에 2차 도함수까지 구해야하는 뉴튼 랩슨 방법은 최근에는 잘.. 2023. 6. 7.
원-핫 인코딩: pd.get_dummies() vs OneHotEncoder() 목차 1. 원-핫 인코딩(One-Hot Encoding) 2. pd.get_dummies() 3. OneHotEncoder() 모델 학습을 위해서는 문자형태로 되어있는 범주형 데이터를 숫자형으로 바꿔 주어야 한다. 그런데, 문제가 하나 있다. 범주형 데이터를 숫자로 바꾸면 0,1,2,3,4 이런 식일 텐데, 이 숫자가 의미하는 바는 높다, 낮다 하는 수치가 아니라 범주를 나타내기 때문에 이 숫자를 회귀 분석에서 사용할 수 없다. 그러면 어떻게 해야 할까? 각각의 범주에 대한 컬럼을 따로 하나씩 더 만들어주고, 0과 1의 값만 갖도록 해야 한다. 예를 들어 '서울', '부산', '광주'라는 값을 가지는 범주형 데이터라면 서울, 부산, 광주에 대한 컬럼을 모두 하나씩 추가시켜 줄다음, 값이 서울이라면, 서울.. 2023. 6. 6.
로지스틱 회귀 모형: 함수 개념 및 코딩 실습 목차 1. 로지스틱 회귀(Logistic Regression) 모형 2. 실습: 로지스틱 회귀 모형 학습 지금까지 지도학습 알고리즘 중에 선형 회귀 모형에 대해서 알아보았다. 학습 데이터와 문제 데이터 준비 단계, 피처 엔지니어링(표준화, Min-max정규화) 단계, 알고리즘 선택(선형회귀, Lasso, Ridge, ElasticNet) 단계, 학습 단계에서 비용함수(MSE)로 파라미터 최적값 찾는 과정, 성능 평가 단계(\(R^2\)), 과적합 문제를 해결하는 규제화(L1, L2 penalty term) 방법까지 알아보았다.(아래 더 보기 참고) 더보기 ML 지도학습: 선형 회귀 모형 관련 내용들 1. 기계학습(ML): 선형회귀 모델 학습 원리, 성능 평가 방법 2. 규제화(Regularization).. 2023. 5. 29.
회귀모델: 라쏘(Lasso), 릿지(Ridge), 엘라스틱 넷(ElasticNet) 목차 1. 라쏘(Lasso) 2. 릿지(Ridge) 3. 엘라스틱 넷(ElasticNet) 우리는 선형회귀 모형에 대해서 배웠고, 성능평가 방법과 규제화에 대해서도 배웠다.(앞 내용을 모르시는 분은 아래 더 보기를 참고해 주세요.) 선형회귀 모델을 통해 학습을 시키고, \(R^2\) 를 통해 성능평가를 하고, 과적합으로 인해 성능이 좋지 않으면 L1 penalty term과 L2 penalty term 이용해서 규제화를 시킨다고 했다. 특히 다중 회귀 문제에서는 과적합 현상이 자주 일어나기 때문에 규제화가 꼭 필요할 때가 많다. 더보기 1. 기계학습(ML): 선형회귀 모델 학습 원리, 성능 평가 방법 기계학습(ML): 선형회귀 모델 학습 원리, 성능 평가 방법 목차 1. 기계학습(ML) 종류 2. 학습.. 2023. 5. 29.
피처 스케일링: 표준화, min-max 정규화(feat. 파이썬) 목차 1. 피처 스케일링(Feature scaling)이란? 2. 표준화(Standardzation) 2-1. 표준화 파이썬 구현 3. 민맥스 정규화(min-max normalization) 3-1. 정규화 파이썬 구현 저번시간에 성능평가 단계에서 선형회귀 모형의 성능 평가 지표인 \(R^2\)에 대해서 알아보았다. 이번시간에는 평가 단계에서 성능을 높이기 위해서 학습 단계 전에 미리 수행해야 하는 피처 스케일링에 대해서 알아보겠다.(해당 블로그에서 지금까지 다룬 부분의 전체 흐름은 아래 더 보기를 참고하자) 더보기 지난 시간까지 다루었던 부분 전체 흐름 (오른쪽 마인드맵의 빨간색으로 표시된 부분이 해당 블로그에서 다룬 부분) 1. 기계학습(ML): 선형회귀 모델 학습 원리, 성능 평가 방법 2. 규제화.. 2023. 5. 28.
\(R^2\)(선형회귀 모형 성능평가 지표) 계산 및 코드구현 방법 목차 1. 선형 회귀 모델 성능평가 지표: \(R^2\) 2. 파이썬 sklearn 모듈로 \(R^2\) 적용 지난 시간에 규제화에 대해서 알아보았다. (참고글 - 규제화(Regularization): L1, L2 penalty term) 규제화란, 지도학습 모델의 성능 평가 단계에서 과적합(Overfitting)이 일어나는 경우에 이를 해결하기 위해서 사용하는 방법이라고 했다. 그렇다면, 과적합 또는 과소적합으로 인해 모델의 성능이 얼마나 떨어지는지는 어떻게 알 수 있을까? 학습 데이터를 통해 학습단계에서 학습을 시킨 모델을 평가 데이터에도 학습을 시키고 나서 특정 평가지표를 통해 모델의 성능을 확인할 수 있다. 성능 평가 단계에서 사용하는 특정 평가지표는 우리가 풀어야 할 문제가 어떤 문제인가에 따라.. 2023. 5. 26.
규제화(Regularization): L1, L2 penalty term 목차 1. 규제화(Regularization)란? 2. L1 penalty term 3. L2 penalty term 지난 시간에 기계학습 종류와 지도학습 중에서도 선형회귀 문제에 대해서 알아보았다.(참고글 - 기계학습(ML): 선형회귀 모델 학습 원리, 성능 평가 방법) 그중 성능 평가 단계에서 선형회귀 문제에 대한 성능평가를 할 수 있는 지표는 \(R^2\)가 있었고, 평가가 단계에서 모형의 성능이 좋지 않은 경우 보통 과적합(Overfitiing) 문제라고 했다. 과적합이 일어나는 주된 이유는 첫 번째로, 사용하는 모형에 존재하는 파라미터의 수가 너무 많은 경우가 있었고 두 번째로, 학습을 통해서 도출된 수학적 모형이 독립변수의 값의 변화에 너무 민감하게 반응하는 경우가 있었다. 그리고 이를 해결할.. 2023. 5. 23.