기계 학습 : GridSearchCV 및 RandomizedSearchCV

GridSearchCV 및 RandomizedSearchCV로 초 매개 변수 조정

Unsplash에 JESHOOTS.COM의 사진

소개

이 기사에서는 매개 변수를 조정하여 기계 학습 모델의 성능을 향상시킬 수있는 방법에 대해 이야기하고 싶습니다.

모델을 개선하기 위해 조정하려는 매개 변수의 의미를 아는 것이 중요합니다. 이러한 이유로 GridSearchCV 및 RandomizedSearchCV에 대해 이야기하기 전에 먼저 C 및 감마와 같은 매개 변수에 대해 설명하겠습니다.

파트 I : SVC의 일부 매개 변수 개요

에서 로지스틱 회귀지원 벡터 분류 , 호출되는 정규화의 강도를 결정하는 매개 변수 C를 .

A에 대한 높은 C , 우리는 덜 정규화 및 그 수단은 우리가 가능한 한 최고로 훈련 세트에 맞게하려고하는 것입니다. 대신 매개 변수 C의 값이 낮 으면 알고리즘이 데이터 포인트의 "대부분"을 조정하고 모델의 일반화를 증가 시키려고합니다.

gamma 라는 또 다른 중요한 매개 변수가 있습니다 . 그러나 그것에 대해 이야기하기 전에 선형 모델의 한계를 조금 이해하는 것이 중요하다고 생각합니다.

선형 모델은 선과 초평면의 유연성이 제한되어 있기 때문에 저 차원 공간에서 상당히 제한적일 수 있습니다. 선형 모델을 더 유연하게 만드는 한 가지 방법은 입력 특성의 상호 작용 또는 다항식을 추가하는 등 더 많은 특성을 추가하는 것입니다.

분류를위한 선형 모델은 선을 사용해서 만 점을 구분할 수 있으며 이것이 항상 더 나은 선택은 아닙니다. 따라서 해결책은 2 차원 공간이 아닌 3 차원 공간에서 점을 나타내는 것일 수 있습니다. 사실, 3 차원 공간에서 데이터 세트의 포인트를보다 정확한 방식으로 나누고 분류하는 평면을 만들 수 있습니다.

데이터를 고차원 공간에 매핑하는 방법에는 두 가지가 있습니다. 다항 커널 은 가능한 모든 다항식을 특정 수준의 원래 특성까지 계산합니다. 상기 방사 기저 함수 (RBF) 커널은 또한 알려진 가우시안 커널 의 데이터 포인트 사이의 거리를 측정한다. 여기서 감마 의 임무 는 가우시안 커널 의 너비를 제어하는 ​​것 입니다.

파트 II : GridSearchCV

이전 기사 에서 보여 드렸듯이 교차 검증을 통해 모델을 평가하고 개선 할 수 있습니다. 그러나 모델을 개선하고 평가하는 또 다른 흥미로운 기술이 있습니다.이 기술을 Grid Search 라고 합니다 .

그리드 검색 은지도 학습에서 매개 변수를 조정하고 모델의 일반화 성능을 향상시키는 효과적인 방법입니다. Grid Search를 사용하여 관심있는 매개 변수의 가능한 모든 조합을 시도하고 가장 좋은 매개 변수를 찾습니다.

Scikit-learnGridSeaechCV 클래스를 제공합니다 . 분명히 먼저 검색 할 매개 변수를 지정해야합니다. 그러면 GridSearchCV가 필요한 모든 모델 적합을 수행합니다. 예를 들어, 모델을 검색하려는 모든 매개 변수를 제공하는 아래 사전을 만들 수 있습니다.

parameters = {‘C’: [0.001, 0.01, 0.1, 1, 10, 100], 
‘gamma’: [0.001, 0.01, 0.1, 1, 10, 100]}

from sklearn.model_selection import GridSearchCV 
from sklearn.model_selection import train_test_split
from sklearn.svm import SVC
search = GridSearchCV(SVC(), parameters, cv=5)
X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=0)

search.fit(X_train, y_train)

파트 III : RandomizedSearchCV

RandomizedSearchCV는 시도 할 매개 변수가 많고 훈련 시간이 매우 길 때 매우 유용합니다. 이 예에서는 임의 포리스트 분류기를 사용하므로 이러한 종류의 알고리즘이 어떻게 작동하는지 이미 알고 있다고 가정합니다.

첫 번째 단계는 고려할 매개 변수를 작성하고 이러한 매개 변수에서 가장 적합한 매개 변수를 선택하는 것입니다.

param = {‘max_depth: [6,9, None], 
         ‘n_estimators’:[50, 70, 100, 150], 
          'max_features': randint(1,6),
          'criterion' : ['gini', 'entropy'],
          'bootstrap':[True, False],
          'mln_samples_leaf': randint(1,4)}

from sklearn.model_selection import RandomSearchCV
from sklearn.ensemble import RandomForestClassifier
rnd_search = RandomizedSearchCV(RandomForestClassifier(), param, 
n_iter =10, cv=9)
rnd_search.fit(X,y)
rnd_search.best_params_
rnd_search.best_score_

따라서 그리드 검색은 소수의 하이퍼 파라미터로 작업 할 때 유용합니다. 그러나 고려할 매개 변수의 수가 특히 많고 영향의 크기가 불균형 한 경우 무작위 검색을 사용하는 것이 좋습니다.

읽어 주셔서 감사합니다. 나와 연락을 유지하고 내 작업을 팔로우 할 수있는 몇 가지 다른 방법이 있습니다.

Suggested posts

통계 데이터 분석 — 기본 도구, 기술 및 프로세스

숫자를 보는 것이 문제를 이해하고 해결책을 찾는 가장 좋은 방법입니다.

통계 데이터 분석 — 기본 도구, 기술 및 프로세스

통계 데이터 분석 — 기본 도구, 기술 및 프로세스 데이터 과학은 통계, 수학, 프로그래밍, 컴퓨터 과학 및 비즈니스 분야의 지식을 포함하는 다 학문 영역으로, 통계를 데이터 과학의 기본 기둥 중 하나로 사용합니다. 통계 분석의 몇 가지 기본 개념에 대해 간략하게 설명합니다. 통계 정의 통계는 데이터에서 배울 수있는 과학입니다.

베이지안 확산 모델링을 사용한 고급 예측

베이지안 확산 모델링을 사용한 고급 예측

데이터 과학의 모든 영역에서 동적 현상을 예측하고 설명하기위한 혁신적인 모델링 솔루션에 대한 수요가 많습니다. 모델링 및 동적 현상 예측의 높은 프로필 사용 사례는 다음과 같습니다. 오픈 소스 데이터 세트에 적용된 베이지안 확산 모델링을 보여주는 종단 간 예제가 제공됩니다.

Related posts

데이터 과학을위한 필수 수학 : 기초 및 기초 변경

데이터 과학을위한 필수 수학 : 기초 및 기초 변경

고유 분해 및 SVD에 유용한 기저의 선형 대수 개념 이해이 기사에서는 고유 분해 또는 특이 값 분해 (SVD)와 같은 행렬 분해 방법을 이해하는 흥미로운 방법 인 기저 개념에 대해 알아 봅니다. 정의 기본은 벡터 공간 (벡터 집합)을 설명하는 데 사용되는 좌표계입니다.

판다와 에라스무스 연구 교환 분석

판다와 에라스무스 연구 교환 분석

Erasmus 프로그램 2011-12에서 발생한 20 만 개의 연구 교환으로 데이터 세트를 분석 한 결과 1987 년 이후 Erasmus 프로그램은 매년 수십만 명의 유럽 학생들에게 한 학기 또는 1 년을 해외에서 보낼 기회를 다른 유럽에서 보낼 수있는 기회를 제공합니다. 경제적 인 지원뿐만 아니라 쉬운 교환 과정을 제공합니다. 유럽의 다양한 사람, 언어 및 문화에 대한 마음과 마음을 열어주는 정말 귀중한 경험입니다.

데이터 과학을위한 8 가지 기본 통계 개념

… 평범한 영어로 설명

데이터 과학을위한 8 가지 기본 통계 개념

통계는 "수량 데이터의 수집, 분석, 해석 및 표현을 다루는 수학의 한 분야"입니다. 프로그래밍과 기계 학습을 혼합하면 데이터 과학의 핵심 기술에 대해 꽤 잘 설명 할 수 있습니다.

데이터 과학의 9 가지 거리 측정

일반적인 거리 측정의 장점과 함정

데이터 과학의 9 가지 거리 측정

감독되거나 감독되지 않는 많은 알고리즘은 거리 측정을 사용합니다. 유클리드 거리 또는 코사인 유사성과 같은 이러한 측정은 종종 k-NN, UMAP, HDBSCAN 등과 같은 알고리즘에서 찾을 수 있습니다.