- Описание
- Отправленные решения
288. Оптимальная константа
Бэкенд приложения Яндекс Go устроен по принципу микросервисной архитектуры. При таком устройстве модель машинного обучения может применяться в одном микросервисе (сервере) М1, а использоваться её предсказания будут в другом микросервисе М2, общение между которыми происходит по сети. Поэтому внутри микросервиса М2 необходимо обрабатывать ситуацию, когда по какой-то причине предсказания модели нет (например, для некоторого процента запросов сервис М1 не успевает ответить за заданное время). Основной способ обработать отсутствие предсказания — заменить его на дефолтное простое предсказание (оно будет храниться в конфиге в сервисе М2, значит всегда доступно).
Например, сервис М1 может на основе текущей информации о числе пользователей и водителей в районе, текущего времени, погодных условий и т.д. предсказывать число заказов в ближайшие полчаса. Под капотом сервиса — градиентный бустинг, который учитывает всё множество численных и категориальных факторов. На большинство запросов сервиса М2 сервис М1 успевает отдать это точное предсказание. Но если не успел, достанем из конфига константу, рассчитанную по историческим данным за последний месяц. Константу можно рассчитать, оптимизируя разные метрики качества.
Мы можем минимизировать среднеквадратичное отклонение MSE:
среднюю абсолютную ошибку MAE: или cреднюю абсолютную процентную ошибку MAPE: где — элемент выборки, а — искомое константное предсказание.
Формат ввода
В первой строке ввода задано целое число — размер выборки.
Следующие строк содержат по одному целому числу — -му элементу выборки.
Формат вывода
Выведите три действительных числа, разделенных переводами строк:
- Константу, минимизирующую MSE на входной выборке.
- Константу, минимизирующую MAE на входной выборке.
- Константу, минимизирующую MAPE на входной выборке.
Константа будет считаться верной, если абсолютное или относительное отклонение соответствующей метрики от оптимальной не будет превышать .
Ограничения
Ограничение времени
1 с
Ограничение памяти
64 МБ
Пример 1
5
6
4
3
5
3
4.2
4
3
Пример 2
4
10
100
10
100
55
100
10
Пример 3
5
10
1
3
4
2
4
3
2