앞 코드는 preprocessing 모듈에서 StandardScaler 클래스를 로드하고 새로운 StandardScaler 객체를 sc 변수에 할당합니다. StandardScaler의 fit 메서드는 훈련 데이터셋의 각 특성 차원마다 μ(샘플 평균)와 σ(표준 편차)를 계산합니다. transform 메서드를 호출하면 계산된 μ와 σ를 사용하여 훈련 데이터셋을 표준화합니다. 그다음 훈련 데이터셋과 테스트 데이터셋의 샘플이 서로 같은 비율로 이동되도록 동일한 μ와 σ를 사용하여 테스트 데이터셋을 표준화합니다.
훈련 데이터를 표준화한 후 퍼셉트론 모델을 훈련합니다. 사이킷런의 알고리즘은 대부분 기본적으로 OvR(One-versus-Rest) 방식을 사용하여 다중 분류(multiclass classification)를 지원합니다. 세 개의 붓꽃 클래스를 퍼셉트론에 한 번에 주입하겠습니다. 코드는 다음과 같습니다.
>>> from sklearn.linear_model import Perceptron
>>> ppn = Perceptron(eta0=0.1, random_state=1)
>>> ppn.fit(X_train_std, y_train)
사이킷런의 인터페이스는 2장에서 직접 구현한 퍼셉트론과 비슷합니다. linear_model 모듈에서 Perceptron 클래스를 로드하고 새로운 Perceptron 객체를 생성한 후 fit 메서드를 사용하여 모델을 훈련합니다. 모델 매개변수 eta0은 2장에서 직접 구현한 퍼셉트론에서 사용했던 학습률 eta와 같습니다.