Які найкращі практики для збереження, зберігання та спільного використання моделей машинного навчання?
У Python ми зазвичай зберігаємо двійкове представлення моделі, використовуючи соління або joblib. Моделі, в моєму випадку, можуть бути ~ 100Мо великими. Крім того, joblib може зберігати одну модель у декількох файлах, якщо ви не встановите compress=1
( /programming/33497314/sklearn-dumping-model-using-joblib-dumps-multiple-files-which-one-is-the- коре ).
Але тоді, якщо ви хочете контролювати права доступу до моделей і мати можливість використовувати моделі з різних машин, який найкращий спосіб їх зберігати?
У мене є кілька варіантів:
- Збережіть їх як файли, а потім помістіть у сховище за допомогою Git LFS
- Зберігайте їх у базі даних SQL як бінарні файли:
- Наприклад, у Postgresql https://wiki.postgresql.org/wiki/BinaryFilesInDB
- Це також метод, рекомендований командою SQL Server:
- https://docs.microsoft.com/en-us/sql/advanced-analytics/tutorials/walkthrough-build-and-save-the-model
- https://microsoft.github.io/sql-ml-tutorials/python/rentalprediction/step/3.html
- https://blogs.technet.microsoft.com/dataplatforminsider/2016/10/17/sql-server-as-a-machine-learning-model-management-system
- HDFS