Dealer.AI
14.8K subscribers
688 photos
46 videos
17 files
724 links
Жоский ИИ Дядя
Твой личный поставщик AI 🦾🤖
Канал о мире интересного AI: GenAI, RecSys, поиск, classic ML, бизнес приклад и ai-meme👾

Для связи @dealer_ai (реклама и консультации)

Head of ML, AI.
Kaggle: https://www.kaggle.com/andrilko

РКН: 6348592885
Download Telegram
поддержим самореза 👆
Подписчик @gotzmann сделал так нехватающие замеры AQLM vs GGUF на Wiki PPL.

Вижу, что AQLM по PPL будет значимо лучше, но вопрос поддержки такой платформы как HF. Надеюсь авторы будут продвигать свой проект и зайдут на HF.

UPD. Ну и в llama.cpp до кучи PR айс
👍14🔥1
Forwarded from ML for Value / Ваня Максимов (Ivan Maksimov)
3 всадника рекомендательного апокалипсиса

Сделать персональные рекомендации легко, но почти все системы настигают 3 проблемы

1. Оффлайн метрики, а не онлайн
Можно бесконечно долго оптимизировать ML-метрики типа recall@k, а в результате получить, например рекомендации очень релевантных пакетов или выдачу из одних утюгов

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


2. Каннибализация
Доля заказов из рекомендаций 60% - какие мы молодцы!

Нет)) Мы могли просто каннибализировать тот же поиск.
Могло стать даже хуже: каннибализировали поиск, где конверсия выше

На практике эффект ~1 к 10. То есть доля заказов из рек 60% - реальный прирост заказов vs без рек = 6%

Возможно для кликов/заказов из рек надо совершать меньше действий (скролл vs подумать над запросом, написать его, выставить фильтры). Но если юзер знает, что ищет (айфон 14 pro max), то он и без рек его найдет - поэтому в реках важно diversity, surprise

Вообще хорошо бы подумать, как сделать реки НЕ похожими на результаты поиска. YouTube например, убирает из данных для модели последний поисковой запрос даже!

3. Конверсия, а не деньги
Все мы любим оптимизировать конверсию: это понятно и не так сложно. Но реальный мир суров: можно вырастить конверсию и уронить средний чек - в итоге упадет выручка. А можно, например, рекомендовать супер релевантные товары, которые поедут из Южной Америки - и потерять деньги на логистике. В общем, деньги имеют значение 💰
🔥203
Найди правильный SPIN к своему электрону LLM.

Новый метод self-play fine-tuning напомнил мне, как учили когда-то в AlphaZero. Кстати, тоже в режиме self-play.

Концептуально, метод заключается в итеративном обучении модели LLM с использованием ее предыдущей лучшей версии. Начинается обучение, конечно же , с простого SFT, тк нужна опорная модель. Далее уже генерации предыдущей модели, совместно и на кейсах аннотированных с человеком (RLHF) используются для улучшения политики поведения наследника LLM. Задача модели не только тюниться на таких примерах, но и различать генерации предка от реальных аннотаций - привет GAN и ELECTRA like подходы.
А именно, LLM генерирует свои собственные обучающие данные из своих предыдущих итераций и детектирует ответы, полученные по промтам из RLHF vs ответы из самогенерации.

Для оценки качества, авторы приводят замеры на: HuggingFace Open LLM, MT-Bench и наборе данных Big-Bench. Также проводят паралель с методом DPO и показывают up метрик по сравнению с ним. В основе экспов лежит модель zephyr-7b. Сравниваются с ней же в разных сетапах sft с spin/dpo и без. Абляции в статье приложены.

SPIN мне очень напоминает также curiculum learning - тк итеративно мы усложняем разницу между LLM генерациями предка и RLHF based генерациями на основе людских предпочтений, тк self-генерация с каждым шагом становится все более естественной, а модель сильной.
Также авторы выделяют меньшую зависимость от масштабирования объема данных и внешних источников для обучения, тк модель строит обучение итеративно на опорном датасете и self-generating.

Итого выложили статью, код, данные и модели.

Го пробовать!
👍81
Алго
ЛБ
Другие бенчи
Forwarded from КПД
QuIP#: Even Better LLM Quantization with Hadamard Incoherence and Lattice Codebooks
[Статья][Код]

Только-только мы с коллегами выкатили AQLM , как конкуренты нанесли ответный удар)

LLM-ки становятся все круче, новые модели, датасеты с инструкциями выходят почти на ежедневной основе. Однако, самые сильные из опенсорсных моделей (Llama-2-70b с дохреналлионом файтьюнов, Микстраль и загадочное нечто под названием miqu) не влезают в колаб или условную RTX 3090/4090. Квантизация в 4 бита (до недавних пор бывшая Парето-оптимальная) недостаточна, чтобы позволить уместиться такой здоровенной модели на щупленькую видеокарту, а предыдущие методы квантизации в 2-3 бита ломают заметно модель и проще взять меньшую модель в большей точности. Но свежие работы открывают дорогу к инференсу оверсайзд моделей на хорошей геймерской GPU.

Метод

Quip# (решетка, потому что E8 решетка квантования) стоит на трех 🐳 :
1️⃣ Incoherence processing
2️⃣ E8 решеточная векторная квантизация
3️⃣ Дообучение неквантованных параметров

1) Как известно, веса больших языковых моделей обладают выбросами (outliers), плохо поддающимися квантованию, и в ряде прошлых работ было предложено их тем или иным образом изолировать. Здесь же, следуя своей прошлой работе QuIP авторы домножают веса на случайное ортогональное преобразование, благодаря которому величины и чувствительности параметров растекаются равномерно по матрице (incoherence processing). Отличие от прошлой работы в том, что вместо произведения кронекеровских матриц для параметризации ортогонального преобразования используется случайное Адамарово преобразование, более эффективное вычислительно и не уступающее по качеству.

2) Поэлементная квантизация не совсем оптимальна в том смысле, что оптимизирует ошибку в пределах некоторого гиперкуба (если рассматривать группы весов). А в действительности группы весов распределены в некотором шаре. А объем шара того же диаметра, что и сторона куба, в большой размерности много меньше описанного вокруг него куба. И при том же количестве кластеров (квантованных значений), можно добиться значительно меньшей ошибки. Для используемой в работе квантизации группами по 8 весов оптимальная решетка - E8, как было показано сравнительно недавно.

3) Чтобы уменьшить ошибку квантизации, можно потюнить модель воспроизводить выходы слоев исходной модели. Как и в AQLM авторы сначала дообучают неквантованные модели на уровне отдельных блоков трансформера. А на второй стадии обучают уже все неквантованные параметры на минизацию разницы между сжатой моделью и исходной fp16.

Для больших битностей (3-4 бита) используется Residual Vector Quantization, когда ошибка квантизации еще раз квантуется и конечный вес представляется в виде суммы квантованного веса и квантованной ошибки.
👍8🔥1
🚀 @SBERLOGABIO:
👨‍🔬 А.Вахрушев, С.Фиронов, А.Червов "Предсказание свойств белков - топ2 в CAFA5"
⌚️ Четверг 15 Февраля 19.00 (по Москве)

Как известно, Альфафолд от Гугл Дипмайнд совершил прорыв в биологии , сумев решить задачу , которая 50 лет не поддавалась решению - предсказание пространственной структуры белка по последовательности аминокислот, выиграв конкурс CASP15. Наша команда почти как Дипмайнд 😃 . Мы почти выиграли схожий конкурс - CAFA5 - заняв второе место и опередив 1500+ других команд.

Задача CAFA ( Critical Assessment of Function Annotation ) - предсказать функции и локализации белков, используя последовательность аминокислот белка - как основную входную информацию. Наиболее полная информация о функциях/локализации белков собрана в базе Gene Ontology , которая содержит около 40 000 всевозможных характеристик белка, которые организованы в иерархическую структуру. Охватываются белки всего - от вирусов до эукариот. Тем самым результат работы модели - для каждого белка должны выдаваться 40 000 нулей или единиц - есть данное свойство у данного белка или нет.

Решение
Идея 1.
Использование инновационного градиентного бустинга Pyboost разработанного лидером команды А. Вахрушевым. При наличии тысяч таргетов другие бустинги будут работать в сотни раз медленней чем Pyboost, и часто уступят ему по качеству.

Идея 2. Использование современных "protein language models". Поразительные способности ChatGPT известны всем. Актуальный подход к изучению свойств белковых последовательностей - состоит в переносе мощных моделей идейно (но не буквально) схожих с ChatGPT в биоинформатику. В данном конкурсе наиболее хорошо себя показала модель типа "T5" (Text-To-Text Transfer Transformer). Мы использовали "эмбединги", которые данные модели создают из белков. И далее обучали бустинги и нейросети на этих эмбедингах.

И еще множество других идей (см. write-up).
Zoom link will be in @sberlogabig just before start
🔥13👨‍💻2🆒1
Дорогие друзья и товарищи нейронщики в своих нейронных чатах и сообществах (а также те, кто не имеет отношения к нейронкам, но к кому это случайно прилетело). Поздравляю вас всех с днем расстрела Чикатило! Ой! То есть с днем Святого Валентина!
Желаю вам всем большой крепкой нежной страстной и сильной любви, как у этой милой парочки эльфов!
10
Подписчики занесли.

В каждом крупном паблике сегодня:
😁51👍6👏3💯2