Python 의 기계 학습 도구 scikit - learn (학습 노트 2 - 공식 인 스 턴 스 프로그램)
scikit - learn 공구 꾸러미 는 표준 데이터 세트 (iris 와 digits 두 데이터 세트 포함) 를 가지 고 테스트 할 수 있 습 니 다.
(1) 먼저 모듈 데이터 세트 가 져 오기:
from sklearn import datasets
iris = datasets.load_iris()
digits = datasets.load_digits()
가 져 온 데이터 세트 는 데이터 와 데이터 세트 를 포함 하 는 메타 데이터 (데 이 터 를 설명 하 는 데 사용) 입 니 다. 데이터 집중. data 구성원 에는 N 개의 샘플, N 개의 특징 을 가 진 2 차원 데이터 가 저장 되 어 있 으 며 예측 해 야 할 목표 변 수 는. target 구성원 에 저 장 됩 니 다. 이것 은 1 차원 변수 이 고 모든 견본 은 하나의 태그 에 대응 합 니 다.
예 를 들 어 digits 데이터 에서. data 각 줄 은 하나의 견본 데이터 에 대응 하고 각 열 은 하나의 특징 을 나타 낸다.
>>> print digits.data
[[ 0. 0. 5. ..., 0. 0. 0.]
[ 0. 0. 0. ..., 10. 0. 0.]
[ 0. 0. 0. ..., 16. 9. 0.]
...,
[ 0. 0. 1. ..., 6. 0. 0.]
[ 0. 0. 2. ..., 12. 0. 0.]
[ 0. 0. 10. ..., 12. 1. 0.]]
. target 데이터 의 모든 요 소 는 샘플 데이터 (개수 가 같 음) 에 대응 합 니 다.
>>> digits.target
array([0, 1, 2, ..., 8, 9, 8])
>>> len(digits.target) == len(digits.data)
True
(2) 모델 학습 과 예측:
scikit - learn 에서 문 제 를 분류 하 는 평가 기 (estimator) 는 fit (X, y) 방법 과 predict (T) 두 가지 방법 으로 이 루어 집 니 다.
아래 예제 에서 estimator 는 sklearn. svm. SVC 로 벡터 분류 기 SVC (support vector classification) 를 지원 합 니 다. estimator 구조 함수 의 매개 변 수 는 모델 에 대응 하 는 매개 변수 (다음 예 에서 gamma = 0.001, C = 100. svm 모델 의 매개 변수) 입 니 다. 처음에 estimator 를 블랙박스 로 볼 수 있 습 니 다.
>>> from sklearn import svm
>>> clf = svm.SVC(gamma=0.001, C=100.)
훈련 SVC 모델 은 다음 과 같 습 니 다:
>>> clf.fit(digits.data[:-1], digits.target[:-1])
SVC(C=100.0, cache_size=200, class_weight=None, coef0=0.0, degree=3,
gamma=0.001, kernel='rbf', max_iter=-1, probability=False, shrinking=True,
tol=0.001, verbose=False)
훈련 된 SVC 모델 로 데 이 터 를 예측 합 니 다.
>>> clf.predict(digits.data[-1])
array([8])
(3) 모델 이 오래 지속 되면 pickle 모듈 dumps 와 loads 로 훈련 된 모델 데 이 터 를 문자열 에 오래 지속 시 킬 수 있 습 니 다.
>>> from sklearn import svm
>>> from sklearn import datasets
>>> clf = svm.SVC()
>>> iris = datasets.load_iris()
>>> X, y = iris.data, iris.target
>>> clf.fit(X, y)
SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0, degree=3, gamma=0.0,
kernel='rbf', max_iter=-1, probability=False, shrinking=True, tol=0.001,
verbose=False)
>>> import pickle
>>> s = pickle.dumps(clf)
>>> clf2 = pickle.loads(s)
>>> clf2.predict(X[0])
array([0])
>>> y[0]
0
데이터 양 이 비교적 많 을 때, 우 리 는 모델 을 메모리 에 문자열 (string) 형식 으로 저장 하 는 것 이 아니 라 디스크 파일 에 영구적 으로 저장 하고 싶 습 니 다.
>>> from sklearn.externals import joblib
>>> joblib.dump(clf, 'filename.pkl')
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Python의 None과 NULL의 차이점 상세 정보그래서 대상 = 속성 + 방법 (사실 방법도 하나의 속성, 데이터 속성과 구별되는 호출 가능한 속성 같은 속성과 방법을 가진 대상을 클래스, 즉 Classl로 분류할 수 있다.클래스는 하나의 청사진과 같아서 하나의 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.