partial_fit() 메서드는 네트워크나 로컬 파일 시스템으로부터 조금씩 데이터를 받아서 훈련할 수 있습니다. fit() 메서드는 numpy.memmap을 사용하여 로컬 파일로부터 데이터를 조금씩 읽어 올 수 있습니다. 한 번에 읽어 올 데이터 크기는 IncrementalPCA 클래스의 batch_size로 지정합니다. 기본값은 특성 개수의 5배입니다.
IncrementalPCA의 n_components 매개변수는 정수 값만 입력할 수 있습니다. 다음은 partial_fit() 메서드를 사용하여 앞의 PCA로 찾은 주성분의 결과와 비교하는 간단한 예입니다.
>>> from sklearn.decomposition import IncrementalPCA
>>> ipca = IncrementalPCA(n_components=9)
>>> for batch in range(len(X_train_std)//25+1):
... X_batch = X_train_std[batch*25:(batch+1)*25]
... ipca.partial_fit(X_batch)
>>> print('주성분 개수:', ipca.n_components_)
주성분 개수: 9
>>> print('설명된 분산 비율:', np.sum(ipca.explained_variance_ratio_))
설명된 분산 비율: 0.9478392700446645