Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python을 사용한 기계 학습 소개

<시간/>

이 기사에서는 Python 3.x를 사용하는 기계 학습의 기본 사항에 대해 학습합니다. 또는 그 이전.

먼저 기존 라이브러리를 사용하여 기계 학습 환경을 설정해야 합니다.

>>> pip install numpy
>>> pip install scipy
>>> pip install matplotlib
>>> pip install scikit-learn

머신 러닝은 경험과 사실에 대한 연구를 다루며 제공된 의도를 기반으로 예측이 제공됩니다. 데이터베이스가 클수록 기계 학습 모델이 더 좋습니다.

머신 러닝의 흐름

  • 데이터 정리
  • 데이터 세트 제공
  • 모델 교육
  • 데이터세트 테스트
  • 모델 구현


Python을 사용한 기계 학습 소개

이제 어떤 라이브러리가 어떤 용도로 사용되는지 확인하겠습니다 -

넘피 − 이러한 입력 배열에서 작동하는 다양한 수학 함수와 함께 거대한 다차원 목록 및 행렬에 대한 지원을 추가합니다.

사이파이 - 과학/수학 컴퓨팅에 사용되는 무료 오픈 소스 Python 라이브러리. 여기에는 알고리즘 최적화, 데이터 통합, 보간, 일부 특수 기능 및 선형 대수학을 위한 모듈이 포함되어 있습니다.

매트플롯립 - 차트와 그림의 형성에 사용되는 라이브러리. 모델에 대한 더 나은 통찰력을 얻기 위해 데이터를 플로팅할 수 있습니다.

Scikit 학습 − 데이터를 잘 정의된 방식으로 배포하고 구성하기 위한 다양한 분류, 클러스터링 및 회귀 알고리즘이 있습니다.

이제 scikit-learn의 도움으로 기본적인 기계 학습 모델을 만들어 봅시다. 여기에서는 내장 데이터 세트, 즉 스키 키트 학습에서 사용할 수 있는 홍채 및 숫자 데이터 세트를 사용합니다.

from sklearn import datasets
iris = datasets.load_iris()
digits = datasets.load_digits()

이제 우리가 사용하는 데이터 세트의 데이터를 보려면

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])

우리가 사용하는 숫자 데이터 세트의 모양에 액세스하기 위해

digits.images[0]


array([[ 0., 0., 5., 13., 9., 1., 0., 0.],
   [ 0., 0., 13., 15., 10., 15., 5., 0.],
   [ 0., 3., 15., 2., 0., 11., 8., 0.],
   [ 0., 4., 12., 0., 0., 8., 8., 0.],
   [ 0., 5., 8., 0., 0., 9., 8., 0.],
   [ 0., 4., 11., 0., 1., 12., 7., 0.],
   [ 0., 2., 14., 5., 10., 12., 0., 0.],
   [ 0., 0., 6., 13., 10., 0., 0., 0.]])

이제 학습 및 예측 부분으로 이동하겠습니다.

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, decision_function_shape='ovr', degree=3, gamma=0.001,
kernel='rbf', max_iter=-1, probability=False, random_state=None,
shrinking=True, tol=0.001, verbose=False)

먼저 모델이 학습할 수 있도록 fit 방법을 사용하여 모델에 데이터 세트를 제공해야 합니다. 여기에서 테스트 목적으로 사용할 마지막 이미지를 제외한 모든 이미지를 학습 데이터로 제공합니다.

이제 모델이 훈련되면 .predict 함수를 사용하여 테스트 데이터의 출력을 예측할 수 있습니다.

clf.predict(digits.data[-1:])
array([8])

이제 모델이 학습되면 모델의 효율성과 시간 주기를 계산할 수 있습니다.

결론

이 기사에서는 기계 학습의 몇 가지 기본 사항과 Python에서 이를 구현하는 데 사용되는 몇 가지 기본 라이브러리에 대해 배웠습니다.