본문 바로가기

#Pipeline3

19. Python - 전체 데이터 준비와 예측을 하나의 파이프라인으로 만들기 안녕하세요. 이번엔 전체 데이터 준비과정과 예측을 하나의 파이프라인으로 만들어보겠습니다. 이전에 했던 것들이 있기 때문에 간단히 만들 수 있는데요. prepare_select_and_predict_pipeline이란 이름으로 파이프라인을 만듭니다.preparation은 full_pipeline을 사용하고, feature_selection은 저번에 만들었던 TopFeatureSelector를 넣습니다.svm_reg는 랜덤탐색으로 지지도벡터회귀한 값의 best_param_을 통해 만들고 확인해보면성능이 그다지 좋지 않은 결과를 볼 수 있습니다.하지만 제대로 만들어서, 일련의 파이프라인으로 자동화한다면 편리하게 느껴질 것 같습니다! 블로그 출처 이 글의 상당 부분은 [핸즈온 머신러닝, 한빛미디어/오렐리앙 제롱.. 2018. 11. 28.
18. Python - 중요한 특성을 선택하는 변환기를 파이프라인에 추가하기 안녕하세요. 오늘은 중요한 특성을 선택하는 변환기를 파이프라인에 추가하는 방법에 대해 알아보겠습니다. 기존에 만들었던 방식처럼, indices_of_top_k (상위 k개의 인덱스들을 가져온다는 이름같은 이름)TopFeatureSelector 클래스를 만듭니다. 하지만 이 특성 선택 클래스는 이미 어떤 식으로든 특성의 중요도를 계산했다고가정합니다. 왜냐면, TopFeatureSelector의 fit()메서드에서 직접 계산한다면 매우 느리기 때문입니다. k=5로 지정하여 상위 5의 특성을 뽑아냅니다. 그 결과, median_income, INLAND, pop_per_hhold, longitude, latitude가 나왔네요, 이제 이전에 정의한 준비 파이프라인과 특성 선택기를 결합하여 preparation.. 2018. 11. 28.
12. Python - 변환기, 특성 스케일링 오늘은 특성 스케일링에 앞서 나만의 변환기에 대해 먼저 볼텐데요. 앞서서 조합했던 특성들을 추가하는 간단한 변환기입니다.사이킷런은 상속이 아닌 덕 타이핑(duck typing)을 지원하므로, fit() (self를 반환) , transform(), fit_transform() 메서드를 구현한 파이썬 클래스를 만들면 됩니다. 또한 BaseEstimator를 상속하고, 생성자에 *args, **kargs를 사용하지 않으면, 하이퍼파라미터 튜닝에 필요한 두 메서드(get_param()과 set_param())을 추가로 얻게 됩니다. 이 경우, 변환기가 add_bedrooms_per_room 하이퍼파라미터 하나를 가지고 있고 기본값은 True로 지정합니다.(합리적 기본값이 좋습니다.) BaseEstimator는.. 2018. 11. 24.