TGViewer
Канал Доброго Вани | Data Science и Продуктики Канал Доброго Вани | Data Science и Продуктики @pleshakovsky · 1.7K subscribers
Post #965 1.28K
Сегодня предлагаю немножко поботать и напрячь извилины всем МЛщикам на канале

Alternating Least Squares (ALS). SOTA или, быть может, переоцененная база? Краш или обычный тюбик? Разбираем по-честному.

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

Глобальная цель ALS, как и у любого матричного разложения, получить матрицу X и матрицу Y из исходной матрицы R взаимодействий объектов x и y. Например, у нас есть маркетплейс, на котором пользователи могу кликать на товары. Тогда матрицей R могут быть взаимодействия всех пользователей со всеми товарами (1 или 0: кликал ли юзер на айтем или нет), а X и Y — матрицы, состоящие из искомых векторных представлений этих юзеров (x) и айтемов (y). См. фото 1.

Идея ALS в следующем:
А давайте в нашем цикле сходимости попеременно фиксировать матрицу X и матрицу Y и вычислять оставшуюся незафиксированную оптимальную матрицу аналитическим методом. Таким образом, при фиксации матрицы Y, оптимальный вектор x можно будет вычислить по формуле на фото 2. После нахождения всех векторов x, мы их фиксируем и аналогично находим вектора y. Это мы будем называть ALS-шагом.

Можно догадаться, что этот шаг можно производить для новых юзеров и айтемов на уже предобученных матрицах. Это однозначный плюс ALS: он прост в дообучении.

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

Изображения взял из Учебника ШАДа. У них также есть разбор IALS, вот ссылочка.


Вобщем, ALS стал базированной базой RecSys не просто так: оптимизация, интерпретируемость (благодаря аналитическому подходу), легковесность, простота в дообучении — его основные преимущества.

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

Накиньте ❤️, если понравился разбор!
Telegram Канал Доброго Вани | Data Science и Продуктики Сегодня 💻💻💻💻 А что ботаем? Ботаем фундаментальный RecSys А начнем мы с постановки задачи и небольшого экускурса по проблемам насущным: 🔸есть товары (item) 🔸есть пользователи (user) 🔸для каждого пользователя знаем историю его целевых действий (заказы, клики…
  • ❤ 13
  • 👍 4
  • 🔥 2
More from @pleshakovsky
  1. Jul 24, 2026Стал синьором 😎
  2. May 18, 2026🇵🇪Перу. Наска. День 4: Пустыня, акведуки, Чаучила После перерыва на горную болезнь и пер…
  3. May 2, 2026🇵🇪Перу. Паракас. День 3: Исла Бальестас, Уакачина 🏝️ Вечером второго дня переехав южнее…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →