일부 회귀 작업을 위해 추가 트리 모델을 교육했습니다. 우리 모델은 3 개의 여분의 나무들로 이루어져 있으며, 각각은 200 나무의 깊이 30을 가지고 있습니다. 3 여분의 나무 꼭대기에는 능선 회귀를 사용합니다. 우리는 몇 시간 동안 모델을 훈련시키고 훈련 된 모델 (전체 클래스 객체)을 나중에 사용하기 위해 pickle합니다. 그러나 저장된 훈련 된 모델의 크기는 약 140GB입니다. 저장된 모델의 크기를 줄이는 방법이 있습니까? 도움이 될 수있는 피클의 구성이나 피클에 대한 대안이 있습니까?훈련 된 기계 학습 모델이 너무 큼
0
A
답변
3
최상의 경우 (이진 트리)에는 3 * 200 * (2^30 - 1) = 644245094400
개의 노드 또는 434Gb
개의 노드가 저장하는 데 1 바이트의 비용 만들 것이라고 가정합니다. 나는 140GB가 비교에서 꽤 괜찮은 크기라고 생각한다.
편집 : 나쁜 수학.
1
압축 매개 변수와 함께 joblib를 사용해 볼 수 있습니다.
from sklearn.externals import joblib
joblib.dump(your_algo, 'pickle_file_name.pkl',compress=3)
compress - 0에서 9까지입니다. 값이 클수록 압축률은 높아지지만 읽기 및 쓰기 시간이 느려집니다. 값 3을 사용하면 좋은 절충안이됩니다.
python 표준 압축 모듈 zlib, gzip, bz2, lzma 및 xz를 사용할 수 있습니다. 당신은 단지 특정 확장자를 가진
예를
joblib.dump(obj, 'your_filename.pkl.z') # zlib
더 많은 정보를 형식을 지정할 수 있음을 사용하려면 [링크]를 참조 :(http://gael-varoquaux.info/programming/new_low-overhead_persistence_in_joblib_for_big_data.html를)
관련 문제
- 1. 기계 학습 - 훈련 단계
- 2. 기계 학습, 테스트에 훈련 모델 적용
- 3. GATE 도구로 기계 학습
- 4. 기계 학습 등급 결과가 너무 좋지 않습니까?
- 5. 기계 학습 모델은 어떻게 업데이트됩니까?
- 6. 기계 학습 이미지
- 7. 훈련 된 스팸 메일 학습 분류기/모델
- 8. 익스트림 학습 기계
- 9. 다중 출력 - 다중 기계 기계 학습 (Python)
- 10. dlib dnn_face_recognition_ex 훈련 된 모델이 훈련 된 이미지가없는 사람을 감지했습니다.
- 11. 압축 된 파일이 너무 큼
- 12. 기계 학습 사례 기반 학습
- 13. 기계 학습 텍스트 분류 기술
- 14. 기계 학습 교육 자료 구조
- 15. 텍스트 마이닝 및 기계 학습
- 16. 디버깅하기 쉬운 기계 학습 시스템이 있습니까?
- 17. 기계 학습 모델의 크기가 다른가요?
- 18. 기계 학습 전략 필요
- 19. 계산 엔트로피 (기계 학습)
- 20. 복잡한 기계 학습 예측자를 어떻게 배포합니까?
- 21. 데이터 분류를위한 기계 학습 알고리즘.
- 22. LoadXML 파일이 너무 큼
- 23. 구글 기계 학습 엔진 구글 기계 학습 엔진의 파이썬 3
- 24. 기계 학습 작업 추천자
- 25. 기계 학습 udacity
- 26. 기계 학습 웹 서비스
- 27. LGPL 기계 학습 - C++
- 28. 기계 학습 - 분류 알고리즘
- 29. 기계 학습 개발 환경
- 30. AWS 기계 학습 문제
scikit 모델 지속성 [페이지] (HTTP ://scikit-learn.org/stable/modules/model_persistence.html#)는'joblib '를 사용하는 것이 더 효율적일 수 있음을 암시합니다. – Tchotchke