sklearn 내부의 pickle lib 를 통해 모델을 저장하고 다시 로드하여 재사용할 수 있다. 

 

 

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)  





import pickle
s = pickle.dumps(clf)
clf2 = pickle.loads(s)
clf2.predict(X[0:1])

y[0]
 
아래 api를 통해 file 저장도 가능한 듯 하다. 
자세한 내용은 pickle 홈페이지에 있다. 
https://docs.python.org/2/library/pickle.html
pickle.dump(objfile[protocol])

Write a pickled representation of obj to the open file object file. This is equivalent to Pickler(file, protocol).dump(obj).

If the protocol parameter is omitted, protocol 0 is used. If protocol is specified as a negative value or HIGHEST_PROTOCOL, the highest protocol version will be used.

Changed in version 2.3: Introduced the protocol parameter.

file must have a write() method that accepts a single string argument. It can thus be a file object opened for writing, a StringIO object, or any other custom object that meets this interface.

pickle.load(file)

Read a string from the open file object file and interpret it as a pickle data stream, reconstructing and returning the original object hierarchy. This is equivalent to Unpickler(file).load().

file must have two methods, a read() method that takes an integer argument, and a readline() method that requires no arguments. Both methods should return a string. Thus file can be a file object opened for reading, a StringIO object, or any other custom object that meets this interface.

This function automatically determines whether the data stream was written in binary mode or not.

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com

pickle.dumps(obj[protocol])

 

 

파일 저장은 아래와 같이 joblib 를 통해 저장할 수 있다.

 

In the specific case of the scikit, it may be more interesting to use joblib’s replacement of pickle (joblib.dump & joblib.load), which is more efficient on big data, but can only pickle to the disk and not to a string:

>>>
from sklearn.externals import joblib
joblib.dump(clf, 'filename.pkl') 

Later you can load back the pickled model (possibly in another Python process) with:

>>>
clf = joblib.load('filename.pkl') 
 
자세한 내용은 아래의 scikit learn 홈페이지에서 확인 할 수 있다. 
http://scikit-learn.org/stable/tutorial/basic/tutorial.html#machine-learning-the-problem-setting



출처: http://fifthstory.tistory.com/entry/sklearn-model-백업-재사용 [다섯번째 이야기]

 

 

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
번호 제목 글쓴이 날짜 조회 수
공지 오라클 기본 샘플 데이터베이스 졸리운_곰 2014.01.02 86543
공지 [SQL컨셉] 서적 "SQL컨셉"의 샘플 데이타 베이스 SAMPLE DATABASE of ORACLE 가을의 곰을... 2013.02.10 78956
공지 [G_SQL] Sample Database 가을의 곰을... 2012.05.20 95706
42 MySQL 데이터베이스 기초 file 졸리운_곰 2018.07.05 1919
41 MySQL 기본 사용법 및 예제 졸리운_곰 2018.07.05 1206
40 COUNT() and GROUP BY 졸리운_곰 2018.07.05 1149
39 한 행에 중복된 값을 겹치지않게 count 해오는법(distinct , group by) 졸리운_곰 2018.07.05 1067
38 MYSQL GROUP BY 후 ROW COUNT file 졸리운_곰 2018.07.05 1174
37 group by로 해서 묶은 그룹의 count의 총 수(총 row수) 뽑기 file 졸리운_곰 2018.07.05 773
36 MySQL - 일별통계, 주간통계, 월간통계 졸리운_곰 2018.07.05 3017
35 mysql select 한 값을 insert 하는 sql 졸리운_곰 2018.07.02 1309
34 Auditing your MySQL Data 졸리운_곰 2018.07.02 1007
33 How To: Use MySQL triggers to log table changes 졸리운_곰 2018.07.02 1099
32 MySQL - History Tables 이력관리 / 히스토리 테이블 졸리운_곰 2018.07.02 2053
31 MariaDB 10의 NoSQL 기능과 MySQL의 Json 관련 UDF 졸리운_곰 2018.06.22 1308
30 [MySQL] Select 결과 Update하는 SQL 작성 file 졸리운_곰 2018.06.20 2471
29 조건에 맞게 select 한 후 update 시키기 졸리운_곰 2018.06.20 1151
28 MySQL (select) UPDATE file 졸리운_곰 2018.06.20 1065
27 MySQL에서 중복 값 찾기 졸리운_곰 2018.06.15 955
26 mysql case문 사용하기 졸리운_곰 2018.06.14 927
25 [MySQL] UPDATE 시 에러코드 1175 처리 file 졸리운_곰 2018.05.30 821
24 MySQL 데이터형 및 크기 졸리운_곰 2018.05.13 1129
23 MySQL OR MariaDB에서 프로시저(Procedure)를 만들어보자. 졸리운_곰 2018.03.25 1166
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED