본문 바로가기
728x90
반응형
SMALL

scikit-learn7

[MLops] MLflow MLflow MLflow는 머신러닝 라이프사이클을 관리하기 위한 오픈 소스 플랫폼이다. 이 플랫폼은 머신러닝 모델의 실험, 개발, 배포, 그리고 운영 과정을 자동화하고 일관되게 관리할 수 있도록 도와준다. MLflow는 사용자가 실험을 추적하고, 재현 가능한 환경에서 프로젝트를 실행하며, 다양한 포맷의 모델을 저장하고 배포할 수 있게 해준다. pip install mlflowpip install --upgrade pip pip install setuptools 터미널에서 mlflow ui를 입력하면 기계 학습 코드를 실행할 때 매개변수, 코드 버전, 지표 및 출력 파일을 기록하고 결과를 시각화하기 위한 API 및 UI로 접속할 수 있다. mlflow ui  iris 데이터 실습 : 데이터 로드 from .. 2024. 8. 19.
회귀 네트워크 전송 Transfering to a Regression Network Iris 비용 데이터 세트에는 원래 Iris 데이터 세트에 포함된 예측 변수인 꽃받침 너비, 꽃받침 길이, 꽃잎 너비 및 꽃잎 길이에 부합하는 꽃 샘플에 대한 측정값이 있다. 여기에 비용 데이터 세트가 표시된다. import pandas as pd df_cost = pd.read_csv("https://data.heatonresearch.com/data/t81-558/iris_cost.csv", na_values=['NA', '?']) df_cost 전이 학습이 효과적이려면 새로 훈련된 신경망의 입력이 처음 전송한 신경망에 가장 가깝게 일치해야 한다. 이 최종 분류를 수행하는 소프트맥스 활성화 함수가 포함된 마지막 출력 계층을 제거한다. 비.. 2024. 2. 13.
[Machine Learning] 그리드 탐색 (GridSearchCV) 그리드 탐색 (GridSearchCV) 머신 러닝에서 하이퍼파라미터란 간단하게 말해 사용자의 입력값 또는 설정 가능한 입력값이라고 이해할 수 있다. 사용할 데이터에 따라 가장 적합한 모델과 모델의 하이퍼파라미터값이 다르다. sklearn의 모듈 GridSearchCV는 머신 러닝 알고리즘에 사용되는 하이퍼 파라미터를 입력해 학습하고 검증하면서 가장 좋은 파라미터를 알려준다. 따라서, 학습하려는 하이퍼파라미터와 값 범위를 지정하기만 하면 GridSearchCV는 교차 검증을 사용하여 하이퍼파라미터 값의 가능한 모든 조합을 수행한다. 매개 변수 estimator 모델 객체 지정 param_grid 하이퍼파라미터 목록을 dictionary로 전달 scoring 평가 지표 cv 교차 검증시 fold 개수 n_j.. 2023. 7. 10.
[Machine Learning] Histogram-Based Gradient Boosting Ensembles Gradient Boosting Ensembles 부스팅은 트리 모델을 순차적으로 앙상블에 추가하는 앙상블 학습 알고리즘의 클래스를 말한다. 앙상블에 추가된 각 트리 모델은 앙상블에 이미 존재하는 트리 모델에 의해 발생한 예측 오류를 수정하려고 시도한다. 그레이디언트 부스팅은 AdaBoost와 같은 부스팅 알고리즘을 통계 프레임워크로 일반화하는 것으로, 훈련 과정을 가법 모델로 처리하고 임의 손실 함수를 사용할 수 있게 하여 기술의 능력을 크게 향상시킨다. 이와 같이 그레이디언트 부스팅 앙상블은 대부분의 구조화된 (ex: 표 형식 데이터) 예측 모델링 작업에 사용되는 기술이다. 그레이디언트 부스팅이 실제로 매우 잘 수행되지만 모델의 교육 속도가 느릴 수 있다. 이는 여러 CPU 코어를 활용하여 앙상블 멤.. 2023. 7. 7.
[Scikit-Learn] HistGradientBoostingClassifier sklearn.ensemble.HistGradientBoostingClassifier 이 추정기는 큰 데이터 세트(n_samples >= 10,000)에서 GradientBoostingClassifier보다 훨씬 빠르다. 이 추정기는 누락된 값 (NaN)을 기본적으로 지원한다. 훈련하는 동안 나무 재배자는 누락된 값이 있는 샘플이 잠재적 이득에 따라 왼쪽 또는 오른쪽 자식으로 이동해야 하는지 여부를 각 분할 지점에서 학습한다. 예측할 때 누락된 값이 있는 샘플은 결과적으로 왼쪽 또는 오른쪽 자식에 할당된다. 교육 중에 지정된 기능에 대해 누락된 값이 없으면 누락된 값이 있는 샘플은 가장 많은 샘플이 있는 하위 항목에 매핑된다. 결측치 처리 import numpy as np import pandas as .. 2023. 7. 5.
[Scikit-Learn] train_test_split 모듈을 활용하여 학습과 테스트 세트 분리 train_test_split 모듈 scikit-learn의 model_selection 패키지 안에 train_test_split 모듈을 활용하여 손쉽게 학습 데이터 셋 (train set)과 테스트 셋 (test set)을 분리할 수 있다. train / test 은 train / validation 으로 볼 수 있다. ML 모델에 train 데이터를 100% 학습시킨 후 test 데이터에 모델을 적용했을 때 성능이 잘 안 나오는 경우가 있다. 이것을 보통 과적합 (overfitting)되었다라고 한다. 즉, 모델이 가진 학습 데이터에 overfitting되도록 학습하면 이를 조금이라도 벗어난 케이스에 대해서는 예측율이 현저히 떨어진다. 그렇기 때문에 overfitting을 방지하는 것은 전체적인 모.. 2021. 12. 20.
사이킷런 (Scikit-Learn) 사이킷런 (Scikit-Learn) scikit-learn이란 python을 대표하는 머신 러닝 라이브러리이다. scikit-learn은 오픈 소스로 공개되어 있으며, 개인, 비즈니스 관계없이 누구나 무료로 사용가능하다. scikit-learn은 현재도 활용하여 개발이 이루어지고 있으며, 인터넷에서 정보를 찾기 쉽다. 샘플 데이터 셋이 부속되어 있으므로, 설치하여 바로 기계 학습을 시험해 볼 수 있다. 설치 pip install -U scikit-learn Classification 개체가 속한 범주 식별한다. Regression (회귀) 개체와 연결된 연속 값 속성을 예측한다. Clustering (군집화) 유사한 개체를 세트로 자동 그룹화한다. Dimensionality Reduction (차원 축소.. 2021. 12. 20.
728x90
반응형
LIST