RuslanSenatorov

RuslanSenatorov

https://t.me/RuslanSenatorov
Пикабушник
125 рейтинг 3 подписчика 0 подписок 4 поста 0 в горячем
9

Функции потерь и алгоритмы оптимизации в линейной регрессии: обзор основных подходов1

Линейная регрессия — один из самых фундаментальных и широко применяемых методов в машинном обучении. Несмотря на простоту, её эффективность сильно зависит от двух ключевых компонентов:

  1. Функции потерь (loss function) — что именно мы минимизируем?

  2. Метода оптимизации (solver) — как мы ищем решение?

В этой статье мы разберём популярные функции потерь — MSE, MAE, Huber и Log-Cosh — их свойства, плюсы и минусы. А также покажем, как выбор функции потерь определяет выбор алгоритма оптимизации.

Почему функция потерь так важна?

Функция потерь измеряет, насколько предсказания модели отличаются от реальных значений. От её формы зависят:

  • Чувствительность к выбросам

  • Наличие замкнутого решения

  • Выпуклость задачи

  • Скорость и стабильность обучения

Давайте сравним четыре ключевые функции потерь в контексте линейной регрессии.

1. MSE (Mean Squared Error) — стандарт по умолчанию

  • Эквивалентна максимуму правдоподобия при нормальном шуме.

Замкнутое решение (метод наименьших квадратов):

Плюсы:

Выпуклая, гладкая, дифференцируемая → легко оптимизировать

Минусы:

  • Чувствительна к выбросам (ошибки возводятся в квадрат).

Solver:

  • Normal Equation (аналитическое решение)

  • SGD, SAG, LBFGS (в scikit-learn: solver='auto', 'svd', 'cholesky' и др.)

Когда использовать: когда данные «чистые», ошибки гауссовские, и важна интерпретируемость.

2. MAE (Mean Absolute Error) — робастная альтернатива

Плюсы:

  • Робастна к выбросам (ошибки в первой степени).

  • Минимизирует медиану ошибок (а не среднее).

Минусы:

  • Недифференцируема в нуле → нет аналитического решения.

  • Требует итеративных методов.

Solver:

  • Linear Programming (например, через симплекс-метод)

  • Subgradient Descent (в scikit-learn: QuantileRegressor с quantile=0.5)

Когда использовать: когда в данных есть аномалии или тяжёлые хвосты (например, цены, доходы).

3. Huber Loss — лучшее из двух миров

Плюсы:

  • Гладкая и дифференцируемая.

  • Робастна к выбросам (линейная штраф за большие ошибки).

  • Гибкость через параметр δδ.

Минусы:

  • Нужно настраивать δδ (часто выбирают как процентиль ошибок).

  • Нет замкнутого решения.

Solver:

  • Gradient Descent, LBFGS, Newton-CG(в scikit-learn: HuberRegressor с fit_intercept=True)

Когда использовать: когда вы подозреваете наличие выбросов, но хотите сохранить гладкость оптимизации.

4. Log-Cosh Loss — гладкая робастность

Плюсы:

  • Гладкая везде (бесконечно дифференцируема).

  • Ведёт себя как MSE при малых ошибках и как MAE при больших.

  • Устойчива к выбросам, но без «изломов».

Минусы:

  • Вычислительно дороже (логарифм и гиперболический косинус).

  • Не так распространена в классических библиотеках.

Solver:

  • Gradient-based методы: SGD, Adam, LBFGS(в TensorFlow/PyTorch легко реализуется; в scikit-learn — через кастомный регрессор)

Когда использовать:

  • когда вы ищете баланс между робастностью MSE и гладкостью MAE.

  • Вы хотите избежать чувствительности MSE к выбросам, но сохранить дифференцируемость.

  • Вы строите гибридную модель, где loss должен быть всюду гладким (например, для вторых производных).

Правило:

  • Если loss квадратичен → можно решить напрямую.

  • Если loss неквадратичен → нужен итеративный численный метод.

И помните: нет универсально «лучшей» функции потерь — только та, что лучше всего подходит вашим данным и задаче.

Показать полностью 7
9

Как понять всё машинное обучение через линейную регрессию?

Сердце всех ML алгоритмов это функция потерь, научившись её оптимизировать мы поймём как обучаются машины.

Дальше в посте, я опишу свойства функции среднеквадратичной ошибки (MSE), затем методы её оптимизации (аналитические, численные, стохастические и гибридные), укажу важные формулы, поведение градиента/Гессиана, оценки сходимости и практические рекомендации.

Основные свойства MSE

1. Дифференцируемость

MSE — гладкая (бесконечно дифференцируема) функция параметров для линейной модели она квадратичная — что сильно упрощает анализ.

2 Квадратичность и выпуклость

MSE — квадратичная функция, такая функция выпукла (всегда), а если X⊤X положительно определена (то есть признаки линейно независимы и строго выпукла и имеет единственный глобальный минимум.

Для нелинейных параметрических моделей выпуклость обычно не выполняется — могут быть локальные минимума.

3. Градиент и Гессиан

Гессиан положительно полуопределён. Его собственные значения управляют «кривизной» функции (вдоль направлений с большими э-величинами функция круто меняется).

4 Шкала, чувствительность к выбросам и статистическая интерпретация

MSE сильно чувствительна к выбросам (квадратичная зависимость даёт большим ошибкам непропорционально большой вклад).

Если ошибки в модели нормальны, то MSE (максимизация правдоподобия) соответствует MLE — минимизация MSE = максимизация нормального правдоподобия.

5. Аналитическое решение

Закрытая форма (normal equations).

6. Алгоритмы численной оптимизации

Градиентный спуск (Batch Gradient Descent)

7. Стохастический градиентный спуск (SGD) и мини-батчи

Стохастичность даёт возможность выйти из плохих локальных минимумов (для нелинейных задач).

8. Ускоренные и адаптивные методы

Momentum (classical momentum) — ускоряет спуск по узким долинам.

Nesterov Accelerated Gradient (NAG) — улучшенный momentum с теоретическими гарантиями.

Адаптивные алгоритмы: Adagrad, RMSProp, Adam, AdamW. Они подбирают адаптивный шаг для каждого параметра.

9. Второго порядка и квазиньютоновские методы

Newton’s method (использует Гессиан) Kвазиньютоновские: BFGS, L-BFGS Conjugate Gradient (CG) часто используют для ridge регрессии

10. Проксимальные и координатные методы (для регуляризации)

Coordinate Descent — особенно эффективен для L1-регуляризованных задач (LASSO), когда функция частично сепарабельна.

11. Прямые методы оптимизации

SVD, cholesky, QR

Обратите внимание что в посте вы не увидите саму модель линейной регресии, где мы точки прямой аппроксимируем, потому что это вообще неинтересно с точки зрения понимания моделей машинного обучения, интересно только сердце ML моделей - функция потерь.

Показать полностью 2
3

Выбор оптимального метода решения СЛАУ на основе анализа датасета

Полное руководство по выбору алгоритма для систем линейных уравнений

Выбор оптимального метода решения СЛАУ на основе анализа датасета

Выбор оптимального метода решения СЛАУ на основе анализа датасета

Меня зовут Руслан Сенаторов, я занимаюсь математическим обоснованием машинного обучения.
В этой статье, я расскажу как выбрать метод для определённого типа датасета, чтобы ваш код работал быстро, точно и без ошибок? И вы получили премию от руководства!


Введение

Решение систем линейных уравнений (СЛАУ) вида Ax = b — фундаментальная задача вычислительной математики и машинного обучения. Однако универсального метода не существует — выбор алгоритма критически зависит от характеристик датасета. Неправильный выбор может привести к катастрофическому замедлению вычислений или полной потере точности.

Ключевые характеристики датасета

1. Размер и структура матрицы

  • n_samples × n_features — соотношение наблюдений и признаков

  • Плотность/разреженность — процент ненулевых элементов

  • Обусловленность — число обусловленности матрицы

2. Вычислительные ограничения

  • Объем оперативной памяти

  • Требования к точности

  • Время вычислений

Дерево решений для выбора метода

Маленькие датасеты (n < 1000)

Плотные хорошо обусловленные матрицы

# Холецкий — самый быстрый для POSDEF матриц

if np.all(np.linalg.eigvals(A) > 0):

L = np.linalg.cholesky(A)

x = solve_triangular(L.T, solve_triangular(L, b, lower=True))

Матрицы общего вида

# QR-разложение — золотой стандарт

Q, R = np.linalg.qr(A)

x = solve_triangular(R, Q.T @ b)

Плохо обусловленные системы

# SVD — максимальная устойчивость

U, s, Vt = np.linalg.svd(A, full_matrices=False)

x = Vt.T @ np.diag(1/s) @ U.T @ b


***

Средние датасеты (1000 < n < 10,000)

"Высокие" матрицы (n_samples >> n_features)

# QR остается оптимальным

# Сложность O(mn²) эффективна при m >> n

Q, R = np.linalg.qr(A)

x = solve_triangular(R, Q.T @ b)

"Широкие" матрицы (n_samples << n_features)

# Итерационные методы или регуляризация

from sklearn.linear_model import Ridge

model = Ridge(alpha=1e-6, solver='lsqr')

model.fit(A, b)

x = model.coef_


***

Большие датасеты (n > 10,000)
Разреженные матрицы

# Итерационные методы

from scipy.sparse.linalg import lsqr

x = lsqr(A, b, iter_lim=1000)[0]


***

Огромные датасеты (n > 1,000,000)

Стохастические методы

from sklearn.linear_model import SGDRegressor

model = SGDRegressor(max_iter=1000, tol=1e-3)

model.fit(A_batches, b_batches) # Мини-батчи

Когда использовать нормальные уравнения?

"Высокие" матрицы (m >> n)

# Решение через нормальные уравнения

x = np.linalg.inv(A.T @ A) @ A.T @ b

# Или более устойчивый вариант

x = np.linalg.solve(A.T @ A, A.T @ b)

10000 наблюдений и 50 фитч - Идеально для нормальных уравнений

cond_number = np.linalg.cond(A.T @ A) # < 10^8 Хорошо обусловленная



Детальный анализ методов

Точные методы (прямые)

Итерационные методы

SGD | Подходит для огромных данных | Медленная сходимость

Заключение

Выбор оптимального метода решения СЛАУ — это искусство баланса между точностью, скоростью и требованиями к памяти. Ключевые рекомендации:

  • Маленькие матрицы → Прямые методы (QR/SVD)

  • Большие разреженные → Специализированные разреженные решатели

  • Огромные плотные → Итерационные методы с предобуславливанием

  • Экстремальные размеры → Стохастическая оптимизация

Главное правило: Всегда начинайте с анализа структуры и свойств вашей матрицы — это сэкономит часы вычислений и предотвратит численные катастрофы.

Используйте это руководство как отправную точку для выбора оптимального стратегии решения ваших задач линейной алгебры.

Показать полностью 2
7

Roadmap linear regression (Структура методов линейной регрессии)1

Roadmap linear regression (Структура методов линейной регрессии)

Линейная регрессия — один из базовых методов статистического анализа и машинного обучения, предназначенный для моделирования зависимости отклика (зависимой переменной) от одной или нескольких независимых переменных.

Данное дерево отражает иерархическую структуру основных видов линейной регрессии и методов решения задачи наименьших квадратов (МНК) — от аналитических к численным и итерационным.

Общая структура

На верхнем уровне различают три формы линейной регрессии:

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

  2. Множественная линейная регрессия — базовая форма, включающая несколько независимых переменных.

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

Методы наименьших квадратов (МНК)

Решение задачи линейной регрессии сводится к минимизации функции ошибок (суммы квадратов отклонений между наблюдаемыми и предсказанными значениями).

В зависимости от подхода различают аналитические, численные и итерационные методы.

1. Аналитический метод (закрытая форма)

  • Применяется, когда матрица признаков имеет полную ранговую структуру и система допускает точное решение.

  • Решение выражается формулой:

    normal equation

  • Используется в простой и множественной линейной регрессии.

  • Базируется на нормальном уравнении.

2. Численные методы (приближённые)

  • Используются при больших объёмах данных или плохо обусловленных матрицах.

  • Основаны на разложениях матриц:

    • Сингулярное разложение (SVD)

    • QR-разложение

    • Разложение Холецкого

  • Обеспечивают численную устойчивость и более эффективные вычисления.

3. Итерационные методы

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

  • Основной подход — градиентный спуск, при котором веса обновляются пошагово:

Особенности полиномиальной регрессии

Полиномиальная регрессия представляет собой множительную регрессию, где вектор признаков дополнен степенными функциями исходных переменных.
Хотя аналитическая форма возможна, на практике применяются численные методы, обеспечивающие стабильность и точность вычислений при высоких степенях полинома.


Взаимосвязь моделей

На схеме представлена визуальная взаимосвязь:

  • Простая регрессия — частный случай множественной.

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

  • Все три формы объединяются через метод наименьших квадратов.


Значимость статьи и вклад в Data Science

Представленный древовидный роадмап методов линейной регрессии является первой в истории попыткой системно и визуально объединить все формы линейной регрессии — простую, множественную и полиномиальную — через призму методов наименьших квадратов (МНК), включая аналитические, численные и итерационные подходы.

Традиционно в учебной и академической литературе методы линейной регрессии рассматриваются фрагментарно:

  • отдельно описываются простая и множественная регрессии,

  • разрозненно излагаются методы решения (нормальное уравнение, QR, SVD, градиентный спуск),

  • редко подчеркивается иерархическая связь между ними.

Разработанная структура впервые:

  1. Объединяет все виды линейной регрессии в едином древовидном представлении, где показаны отношения "частный случай – обобщение".

  2. Классифицирует методы МНК по принципу:

    • аналитические (точные, закрытая форма)

    • численные (разложения матриц)

    • итерационные (оптимизационные процедуры)

  3. Визуализирует связь между теориями линейной алгебры и машинного обучения, показывая, как фундаментальные методы (SVD, QR, Холецкий, градиентный спуск) вписываются в единую систему.

  4. Формирует когнитивную карту обучения — от интуитивных понятий к вычислительным и теоретическим аспектам, что делает её удобной как для студентов, так и для исследователей.


Научная и практическая новизна

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

  2. Предложен универсальный визуальный формат (древовидный роадмап), который объединяет как статистическую, так и вычислительную перспективы анализа.

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

  4. Дана структурная типология МНК, которая ранее отсутствовала в учебных материалах и научных публикациях в таком виде.

  5. Работа имеет прикладную значимость для Data Science, так как облегчает построение ментальной модели всех алгоритмов регрессии и их реализации в библиотечных инструментах (NumPy, SciPy, scikit-learn).


Вклад в Data Science

  • Для практиков Data Science роадмап служит навигационной схемой:
    он показывает, какой метод выбрать в зависимости от типа задачи, объёма данных и требований к точности.

  • Для преподавателей и студентов он обеспечивает структурную основу обучения, позволяя переходить от интуитивного понимания к строгим математическим методам.

  • Для исследователей — даёт целостное представление об эволюции МНК и связи между аналитическими и численными методами, что важно при разработке новых алгоритмов оптимизации и регуляризации.


    До момента публикации не существовало единой визуальной структуры, описывающей всю иерархию методов линейной регрессии в рамках одной системы координат

Показать полностью
Отличная работа, все прочитано!

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества