оптимизация с помощью функции потерь Губера в R

#r #loss-function #least-squares #nls #levenberg-marquardt

Вопрос:

В настоящее время я использую nls.lm пакет в R для оптимизации своей модели. Как я понимаю из документации minpack.lm пакета, в качестве возврата может быть принята только стандартная потеря в квадрате.

Ответ, полученный в результате оптимизации, довольно хорош и достаточно быстр. Однако у меня возникли проблемы с взвешиванием выбросов, и поэтому я хочу попробовать функцию потерь Хаберса, альтернативную квадрату потерь. Я пробовал некоторые стандартные алгоритмы оптимизации, такие как различные опции в optim, но эти методы, похоже, не подходят для моих данных. Кроме того, глобальная оптимизация не помогает, так как мне нужно оптимизировать множество параметров.

Короче говоря, я ищу метод оптимизации, который позволяет использовать пользовательскую функцию потерь (нелинейную), которая также принимает предположение о начальном параметре. Может быть, в R есть метод, который может использовать нелинейные итеративно взвешенные наименьшие квадраты? что-то вроде этого :https://en.wikipedia.org/wiki/Iteratively_reweighted_least_squares ?

Надеюсь, кто-то может знать о методе, любая помощь будет хорошо принята 🙂

обратите внимание, что я не могу поделиться своими данными/моделями, так как они, к сожалению, являются частью более крупного проекта

Комментарии:

1. Пожалуйста, предоставьте достаточно кода, чтобы другие могли лучше понять или воспроизвести проблему.