# GridSearchCV

13개의 포스트
post-thumbnail

[AI web service project] MBTIgram: 모델링-XGBoost

지난번 포스팅에서 전처리 및 EDA를 수행한 내용을 바탕으로 모델링을 진행했습니다. 3가지 모델을 후보로 실험 및 검증을 진행했습니다. 전처리 및 EDA 과정은 이전 글을 참고 바랍니다. 모델 선정 XGBoost RNN LinearSVC 세 가지로 후보를 둔 이유는 다음과 같습니다. XGBoost (eXtreme Gradient Boosting) XGBoost는 부스팅 알고리즘으로 앙상블 기법을 사용하며, 다양한 데이터 유형과 복잡한 패턴에 대해 강력한 성능을 보일 수 있다. 클래스 불균형 문제를 다룰 수 있는 가중치 조정과 샘플링 기법을 제공하여 불균형 데이터셋에도 잘 대응할 수 있다. Feature Importance를 제공하여 모델의 예측에 어떤 특성이 중요한지를 해석하기 쉽게 도와줍니다. +) XGBoost는 하이퍼 파라미터 튜닝이 중요하기 때문에, 추가적으로 GridSearchCV를 이용하여 최적의 파라미터를 찾고 학습을

2023년 8월 22일
·
0개의 댓글
·
post-thumbnail

제로베이스 데이터취업스쿨 DAY52 머신러닝5~8

결정나무에서는 이런 전처리는 의미를 가지지 않는다. 주로 Cost Function을 최적화할 때 유효화할 때가 있다. ![](https://velog.velcdn.com/im

2023년 5월 17일
·
0개의 댓글
·
post-thumbnail

Decision Tree(Feat. Wine)

해당 글은 제로베이스데이터스쿨 학습자료를 참고하여 작성되었습니다 Scaling MinMaxScaler 0 ~ 1로 스케일 조정 이상치의 영향이 큼 StandardScaler 기본스케일. 평균과 표준편차로 스케일링 이상치의 영향이 큼 RobustScaler 중간값과 사분위수 사용 이상치 영향 최소화 와인 개요 와인은 당도, 타닌, 산도, 알콜, 향기, 풍미, 바디감, 맛 등 굉장히 많은 분류가 있다 이 많은 분류를 모두 하는 것은 어렵고 레드와인과 화이트와인으로 분류해보자 목표 레드와인, 화이트와인 분류하기 절차 1. 데이터 이해 2. Decision Tree 활용 3. 이진분류(레

2023년 3월 16일
·
0개의 댓글
·

GridSearchCV

sklearn.model_selection.GridSearchCV class sklearn.modelselection.GridSearchCV(estimator, paramgrid, , scoring=None, njobs=None, refit=True, cv=None, verbose=0, predispatch='2njobs', errorscore=nan, returntrainscore=False) estimato : 사용할 알고리즘 param_grid : dict형태로 검정하고 싶은 하이퍼 파라미터값 scoring : 모형평가 기준 ex) "accuracy" cv : 교차검증할 폴드 , 횟수 refit : 디폴트 True -> 가장 좋은 파라미터 설정으로 재학습 시킴. returntrainscore : 디폴트 False ->True 이면 train에 대한 score를 알려줌 kfold 교차검증과 동시에 최적의 하이퍼 파라미터를 찾아 가장 최적

2023년 2월 14일
·
0개의 댓글
·
post-thumbnail

[혼공머신] 5-2. 교차 검증과 그리드 서치

Intro. 결정트리 모델로 와인 구분하는 모델 완성! max_depth 바꿔가면서 성능 테스트 여러 번 해서 최적의 모델을 찾아야지 ㅎㅎ 그런데... 이사님🗣️ "최적의 모델을 찾는 건 좋은데, 그 과정에서 자꾸 테스트 세트로 평가를 하면 테스트 세트에만 잘 맞는 모델이 되어버리는 거 아닌가요?" ㅇ ㅠㅇ 1. 검증세트와 교차검증 해결책은 생각보다 간단했다. 테스트세트 말고, 따로 검증용 세트를 또 준비하면 된다! 검증세트 원래는 훈련/테스트만 나눴지만, 이젠 훈련/검증/테스트 3개로 나눔. (보통 20%) ☝🏻일반적인 활용 과정 1) 모델을 훈련세트로 훈련(fit)하고, 검증세트로 평가(score)한다 2) 매개변수 바꿔가며 scor

2023년 1월 28일
·
0개의 댓글
·
post-thumbnail

머신러닝 - Bike Sharing Demand (log)

전처리 EDA log & exp log() + 1 == log1p() log에 1 을 더하는 이유 -> 1보다 작은 값은 음수를 갖기 때문에 가장 작은 값인 1을 더해 음수가 나오지 않게 하기위하여 np.exp() 지수함수 : np.log() 로그로 취했던 값을 다시 원래 값으로 복원 count == np.expm1(np.

2022년 11월 14일
·
0개의 댓글
·
post-thumbnail

머신러닝 - 파라미터 튜닝

데이터 로드 전처리 학습, 예측 데이터셋 정답값이자 예측할 값 학습, 예측에 사용할 컬럼 문제(feature)와 답안(label) 나누기 학습, 예측 데이터셋 만들기 머신러닝 모델 하이퍼파라미터 튜닝 하이퍼파라미터 : 머신러닝 모델을 생성할 때 사용자가 직접 설정하는

2022년 11월 3일
·
0개의 댓글
·
post-thumbnail

[DL] 하이퍼파라미터 조정

인공 신경망 모델을 만들다보면 정해주어야 하는 하이퍼파라미터의 값이 많습니다. batch_size, Interation 횟수, 노드의 수, 학습률, 활성화 함수, 드롭 아웃 비율 등 어떤 값을 설정하느냐에 따라서 성능이 천차만별로 달라지는 하이퍼파라미터들이 있습니다. 머신 러닝과 마찬가지로 딥 러닝도 RandomSearchCV, GridSearchCV와 같은 하이퍼파라미터 탐색 기능이 있습니다. 딥 러닝은 머신 러닝보다 학습 속도가 매우 느리고, 층이 깊어질 수록 조정해주어야 할 하이퍼파라미터의 값도 많아집니다. 그렇기 때문에 RandomSearchCV에서 대략적인 범위를 찾은 다음에 GridSearchCV로 디테일을 조정하는 방식을 자주 사용합니다. 하이퍼파라미터를 더욱 효율적으로 탐색하는 Bayesian method라는 방법도 있습니다. 매 회 새로운 하이퍼파라미터를 적용할 때 이전 결과를 반영하여 최적의 하이퍼파라미터를 찾는 방식입니다. 이번 포스팅에서는 tuner를 사

2022년 3월 6일
·
0개의 댓글
·

파이썬 머신러닝 교차검증 - KFold, StratifiedKFold, cross_val_score, GridSearchCV

* 과적합 * 과적합 : 모델이 학습 데이터에만 과도하게 최적화되어, 실제 예측을 다른 데이터로 수행할 경우에는 예측 성능이 과도하게 떨어지는것을 말한다. 이번 블로그는 과적합을 방지할 수 있는 교차검증 에 대해 얘기하려합니다. * 교차검증 * 교차검증 : 데이터 편중을 막기 위해서 별도의 세트로 구성된 학습 데이터 세트와 검증 데이터 세트에서 학습과 평가를 수행하는 것입니다. 대부분의 ML 모델의 성능 평가는 교차 검증 기반으로 1차 평가를 한 뒤에 최종적으로 테스트 데이터 세트에 적용해 평가하는 프로세스 입니다. 1. KFold 가장 보편적으로 사용되는 교차 검증 기법 먼저 K개의 데이터 폴드 세트를 만들어서 K번만큼 각 폴드 세트에 학습고 검증 평가를 1반복적으로 수행하는 방법 ![KFold image](https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&fname=h

2022년 3월 1일
·
0개의 댓글
·
post-thumbnail

scikit-learn을 사용한 교차 검증 및 하이퍼 파라미터 튜닝

scikit-learn의 model_select 모듈은 데이터 세트 분리, 교차 검증, 하이퍼 파라미터 튜닝과 관련된 함수들과 클래스를 제공한다. 아래와 같이 정리하였다. Cross Validation Overfitting 으로 인한 실제 prediction시 낮은 성능을 해결하고자 별도의 여러 세트로 구성된 training 데이터셋과 test 데이터셋에서 training & evaluation을 수행하는 것 training 데이터셋을 training용과 validation용으로 나누어 evaluation 전에 모델을 평가한다. KFold 가장 보편적으로 사용되는 cross validation 기법. K개의 데이터 폴드 세트를 만들어 K번만큼 각 셋에 training과 validation을 수행하는 방법. ![](https://images.velog.io/images/msjeong97/post/e77f160a-5e94-40ae-88f3-d743606

2022년 1월 2일
·
0개의 댓글
·

Hyper Parameter Tuning - 최적의 조합 찾기

Hyper Parameter Tuning에 들어가기 앞서, 과대적합에 대해 알아보자. 일반화 (Generalization) 모델이 새로운 데이터셋(Test 데이터)에 대한 예측 성능이 좋은 것을 말한다. (새로운 데이터에 잘 맞추는 것) 모델이 훈련 데이터로 예측한 결과와 테스트 데이터로 예측한 결과에 차이가 거의 없고 좋은 평가지표를 보여준다. 과대적합 (Overfitting) ("과적합"이라고도 많이 쓴다) 모델이 훈련 데이터에 대한 예측은 너무 좋지만 새로운 데이터(Test data)에서는 그 정도 성능이 안나오는 것을 말한다. 모델이 훈련 데이터에 너무 맞춰서 학습 했기 때문에 새로운 데이터셋(Test set)에 대한 성능이 떨어진다. 학습한 데이터를 가지고는 예측 결과가 잘 나오지만, 새로운 데이터에 대한 예측 능력이 떨어진다. 과소적합 (Underfitting) 모델이 훈련 데이터과 테스트 데이터셋 모두에서 성능이 않좋은 것.

2021년 12월 14일
·
0개의 댓글
·

[TIL] 210820

오늘 한 일 Model selection (n224) keyword : 모델 선택 하이퍼파라미터 최적화 (최적의 하이퍼파라미터 찾기) CV 교차검증 hold-out 교차검증 K-Fold TargetEncoder GridSearchCV RandomizedSearchCV 최적화와 일반화의 차이 class_weight (불균형(imbalanced) 클래스인 경우, randomforest에서 사용) 임계값 조절은 모델 만들고 마지막에 우선 cv값은 5~10 정도로 Grid & Random serch CV 하이퍼 파라미터 설정한 변수내에서 그리드 서치는 변수내 모든 조합을 살펴보고, 랜덤 서치는 랜덤한 조합을 살펴봐서 최적하이퍼 파라미터를 찾습니다. refrence : 분류, 회귀 모델 성능 평가지표 https://www.youtube.com/watch?v=O-AhNAU6WlY

2021년 8월 23일
·
0개의 댓글
·

사이킷런으로 붓꽃 품종 예측하기

붓꽃 품종 예측하기 sklearn.datasets 내의 모듈은 사이킷런에서 자체적으로 제공하는 데이터 세트를 생성하는 모듈의 모임이다. sklearn.tree 내의 모듈은 트리 기반 ML 알고리즘(Machine Learning Algorithm)을 구현한 클래스의 모임이다. sklearn.model_selection은 학습 데이터와 검증 데이터, 예측 데이터로 데이터를 분리하거나 최적의 하이퍼 파라미터로 평가하기 위한 다양한 모듈의 모임이다. 특징으로는 sepal length, sepal width, petal length, petal width가 있고,

2020년 12월 21일
·
0개의 댓글
·