Fisher Scoring v / s Координатный спуск для MLE в R

11

Базовая функция R glm()использует баллы Фишера для MLE, в то время как, по- glmnetвидимому, используется метод спуска координат для решения того же уравнения. Спуск по координатам более эффективен по времени, чем оценка Фишера, так как оценка Фишера вычисляет производную матрицу второго порядка в дополнение к некоторым другим матричным операциям. что удорожает выполнение, в то время как спуск по координатам может выполнить ту же задачу за время O (np).

Почему базовая функция R использует Fisher Scoring? Есть ли у этого метода преимущество перед другими методами оптимизации? Как соотносятся координаты спуска и Fisher Scoring? Я относительно новичок в этой области, поэтому любая помощь или ресурс будут полезны.

голе
источник

Ответы:

1

Единственный способ убедиться в этом - сравнительный анализ, но для glm оценка Фишера должна быть быстрее, чем спуск по координатам. Оценка Фишера является частным случаем Ньютона-Рафсона, который имеет более высокую скорость сходимости, чем спуск по координатам (Ньютон-Рафсон квадратично сходится, тогда как спуск по координатам линейно сходится.) Таким образом, в то время как вычисление информации о второй производной означает, что каждый шаг занимает больше Время, это может потребовать гораздо меньше шагов, чем координировать спуск.

Для лассо особая форма штрафного термина делает его очень особым случаем (и фактически абсолютное значение в любом случае не дифференцируемо, хотя иногда вы можете уловить это). Для этой особой задачи спуск по координатам оказывается особенно быстрым. Есть много других проблем оптимизации, когда на практике Ньютон-Рафсон работает быстрее.

arsmath
источник