Как предотвратить перегрузку ядра процессора большой моделью случайного леса sklearn?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как предотвратить перегрузку ядра процессора большой моделью случайного леса sklearn?

Сообщение Anonymous »

Я обучил модель случайного леса с помощью sklearn, используя RandomizedSearchCV.
Я сохранил модель как файл joblib и теперь использую ее для ежедневного составления прогнозов на сервере в контейнере Docker.
По сути, это следующий процесс:
watcher.py:

Код: Выделить всё

def watch():

def run_script():
scripts = ["forecaster.py"]
for script in scripts:
subprocess.run(['python', script], check=True)
time.sleep(63)

while True:
now = datetime.datetime.now(pytz.utc).astimezone(berlin_tz)
if now.hour == 23 and now.minute == 0:
logging.info(f"Running scripts at {now}.")
run_script()
time.sleep(3)

if __name__ == '__main__':
logging.info("Watcher gestartet")
watch()
forecaster.py:

Код: Выделить всё

data = get_data_from_API(...)
features = ["list", "of", "variables", "contained", "in", "data"]

rf = load(model_path.joblib)
rf_pred = rf.predict(data[features])

table = pd.DataFrame({
'UTC': data['UTC'],
'Forecast': rf_pred
})
table.to_csv('somepath.csv')
Однако недавно я обучил несколько более качественных моделей, которые имеют больший размер (>100 000 КБ, так что я думаю, что они не такие большие), и теперь мой скрипт продолжает убиваться. (), и я вижу на рабочем столе Docker, что загрузка ЦП достигает 100% (ядро сервера имеет меньшие возможности, чем мой ноутбук, на котором я обучал модель).
Я пробовал модели разного размера. Меньшие модели работают без проблем, но большие модели дают сбой.
На данный момент я придерживаюсь меньших моделей, которые менее точны, и это работает, но я ищу решение, которое работает для любой модели, которую я хотел бы использовать. .
Я подумал, что, вероятно, параллельная обработка могла бы быть решением, но я нахожу только учебные пособия, которые либо работают только с другими библиотеками, такими как PyTorch, либо посвящены распараллеливанию при обучении модели, а не при ее применении. .
Будем рады любым предложениям!

Подробнее здесь: https://stackoverflow.com/questions/790 ... e-cpu-core
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Различные результаты (с семенами) для случайного леса Sklearn
    Гость » » в форуме Python
    0 Ответы
    10 Просмотры
    Последнее сообщение Гость
  • Реализация sklearn.ensemble.GradientBoostingRegressor с помощью sklearn.multioutput.MultiOutputRegressor и sklearn.model
    Anonymous » » в форуме Python
    0 Ответы
    56 Просмотры
    Последнее сообщение Anonymous
  • Реализация sklearn.ensemble.GradientBoostingRegressor с помощью sklearn.multioutput.MultiOutputRegressor и sklearn.model
    Anonymous » » в форуме Python
    0 Ответы
    57 Просмотры
    Последнее сообщение Anonymous
  • Реализация sklearn.ensemble.GradientBoostingRegressor с помощью sklearn.multioutput.MultiOutputRegressor и sklearn.model
    Anonymous » » в форуме Python
    0 Ответы
    48 Просмотры
    Последнее сообщение Anonymous
  • Обученная модель случайного леса из Python в Matlab
    Гость » » в форуме Python
    0 Ответы
    33 Просмотры
    Последнее сообщение Гость

Вернуться в «Python»