0

미래의 새로운 데이터에 대한 예측을하기 위해 신경망을 구축하고 있습니다. 먼저 sklearn.preprocessing을 사용하여 교육 데이터를 사전 처리 한 다음 모델을 교육하고 예측을 한 다음 프로그램을 닫습니다. 앞으로 새로운 데이터가 등장 할 때 새로운 데이터를 모델에 넣기 전에 동일한 전처리 저울을 사용하여 변환해야합니다. 현재 모든 이전 데이터를로드하고 전처리기에 적합하게 만든 다음 해당 전 처리기로 새 데이터를 변환해야합니다. 이전 개체를 저장할 수 있도록 sklearn.preprocessing.StandardScaler와 같은 전처리 개체 개체를 저장하는 방법이 있습니까?SKlearn : 전처리 개체를 저장할 수있는 방법이 있습니까?

+1

, 당신은 다른 파이썬 객체로서 피클 수 있습니다 여기에

는 객체를 저장 및로드 파이썬 피클을 사용하는 방법에 대한 예입니다. – lejlot

+0

파이프 라인 개체에서 모든 사전 처리 및 교육을 결합한 다음 joblib를 사용하여 피클 링할 수 있습니다 (scikit 권장) –

답변

1

lejlot에서 언급했듯이 pickle 라이브러리를 사용하면 훈련 된 네트워크를 하드 드라이브에 파일로 저장 한 다음로드하여 예측을 시작할 수 있습니다.

이 그냥 파이썬 객체입니다
import pickle 
import numpy as np 

npTest_obj = np.asarray([[1,2,3],[6,5,4],[8,7,9]]) 

strTest_obj = "pickle example XXXX" 


if __name__ == "__main__": 
    # store object information 
    pickle.dump(npTest_obj, open("npObject.p", "wb")) 
    pickle.dump(strTest_obj, open("strObject.p", "wb")) 

    # read information from file 
    str_readObj = pickle.load(open("strObject.p","rb")) 
    np_readObj = pickle.load(open("npObject.p","rb")) 
    print(str_readObj) 
    print(np_readObj) 
관련 문제