Как добиться более быстрого времени загрузки tfidfvectorizer в представлении Django?
У меня есть подогрев TfidfVectorizer
с ~120000 функций, которые я сохраняю в файл, используя joblib.dump
, Позже я загружаю эту модель из представления django, используя joblib.load
но это слишком медленно (занимает ~2 секунды). Каков наилучший способ улучшить скорость загрузки? Должен ли я кешировать модель, используя кеширующую среду django? Должен ли я сжать модель при сериализации с joblib.dump
? Есть ли способ загрузить модель в память один раз и сохранить ее вместо перезагрузки каждый раз, когда вызывается представление?
2 ответа
Модель не меняется между запросами, поэтому мы хотим загрузить ее в память один раз и оставить там. Это может быть достигнуто в views.py
загрузив модель и присвоив ее глобальной переменной.
Вы должны загрузить свою модель вapps.py
файл, а затем импортируйте эту модель из приложений в вашемviews.py
. В противном случае модель загружается заново при каждом запросе (каждый раз при запуске файлаview.py). И вам следует записать свою модель на диск, используяjoblib
а не встроенная библиотека рассола.