Ограничение значений предсказания линейной регрессии с помощью scikit

Я тренирую модель линейной регрессии, используя набор данных, который имеет реальные значения меток в интервале [0,10]. Мои прогнозируемые значения в тестовом наборе имеют некоторые прогнозы, превышающие 10. Есть ли способ ограничить прогнозы до 10.

Я подумываю сделать условную проверку, чтобы, если прогноз превысил 10, я явно установил его на 10.

Есть ли способ лучше?

1 ответ

Решение

Если y является выходом объекта регрессии predict метод, то вы можете Numpy's minimum ограничить его до 10:

y = np.minimum(y, 10.)

Чтобы также ограничить его ниже нуля, сделайте

y = np.maximum(np.minimum(y, 10.), 0.)

или короче:

y = np.clip(y, 0., 10.)
Другие вопросы по тегам