При автоматизации некоторого алгоритма зачастую сталкиваешься с трудностью передачи функций со схожим инструментарием, но разным набором аргументов. Например, вам хочется использовать единый интерфейс вызова метрики ошибки для модели регрессии с передачей в качестве параметров вектора целей и прогноза. В то же время для подсчета корня из среднеквадратичной ошибки потребуется в функцию mean_squared_error из модуля sklearn передать параметр squared=False, а для средней абсолютной ошибки дополнительных аргументов не требуется. Соответственно, чтобы некоторый функционал принимал абстрактный метод ошибки и единообразно обрабатывал оба кейса, потребуется предпринять дополнительные усилия. Отличным решением ситуации является частичное определение дополнительных аргументов функции. Например, это можно сделать с помощью функции partial из модуля functools. Ниже трансформируем mean_squared_error в функцию rmse для подсчета корня из среднеквадратической ошибки: Такое частичное определение можно с