DataFrog: Data Science
1.87K subscribers
306 photos
5 videos
60 links
Журнал о Data Science | Machine Learning | Big Data | Deep Learning | Neural Networks | AI

@viktorreh
Download Telegram
⚙️ Нужно ли высшее образование в ML? Отвечает руководитель машинного обучения ОК, AI VK – Андрей Кузнецов

Андрей – яркий представитель сразу двух миров: индустрии и академии. Он кандидат технических наук, преподаватель ИТМО и руководитель ML в Одноклассниках. В VK Андрей пришел в 2019 году,а в 2023-м стал управлять разработкой всех ML-систем ОК (их ML-канал: @mlvok).

Мы спросили у него, какое место высшее образование занимает в ML. Нужно ли его получать? Повышает ли диплом шансы на оффер? Зачем действительно нужно учить математику и учиться вообще?

Ответы – в карточках. А если хотите поработать у Андрея в команде, то скорее переходите на наш сайт: там мы уже оставили подходящие вакансии.

👉 DataFrog | #datascience
👍41
Как работает ML в Авито: интервью с руководителями ведущих команд

Авито – это не просто доска объявлений. Почти во все процессы компании вшит ИИ. Модерация, рексис, автоматизация написания объявлений и ответов поддержки, эффективность монетизации...

Чтобы приоткрыть для вас капот этих процессов, мы поговорили с руководителями нескольких ведущих команд и написали статью. В ней вы найдете подробный технический рассказ о том, как в Авито работают LLM, рекомендации и алгоритмы продвижения объявлений.

Полезно и интересно будет всем, и новичкам, и опытным инженерам. Сохраняйте и читайте: https://datasecrets.ru/articles/15

👉 DataFrog | #datascience
2👍1👌1
This media is not supported in your browser
VIEW IN TELEGRAM
Тем временем в Сан-Франциско прямо сейчас проходит OpenAI DevDay. Вот что уже показали:

➡️ Realtime api с минимальной задержкой. Это возможность встроить в свое приложение настоящий speech-to-speech. Будет доступно по цене базовой модели.

➡️ Vision файнтюнинг. Теперь можно тюнить свои модели с использованием изображений.

➡️ Завозят набор инструментов для кастомных дистилляций и ускорения моделей.

➡️ Finally: кэширование промптов, которое уже давно появилось у DeepSeek и Anthropic. На кэшированные промпты цена будет в половину меньше.

➡️ Интрумент для оценки моделей: можно будет нормально эвалить свои приложения.

👉 DataFrog | #datascience
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Liquid AI представили новое семейство моделей с оригальной архитектурой: они выбивают SOTA метрики в своих классах

Самое интересное: это НЕ трансформеры, а так называемые ликвидные сети. Ликвидными (то есть жидкими) их называют потому, что, в отличие от обычных нейросетей, где веса – это просто числа, в ликвидных моделях веса вообще может не быть: здесь обмен сигналами между нейронами — вероятностный процесс, управляемый нелинейной функцией. Такие подходят для моделирования любых последовательных данных, включая видео, аудио, текст, временные ряды и сигналы.

Всего доступно три модели: 1.3B, 3.1B, 40.3B MoE. Все они, судя по бенчмаркам в релизе, показывают себя очень неплохо, особенно на математике и длинном контексте. На схеме наверху – метрики по MMLU, а более детально можно посмотреть здесь. Если все действительно так, как представлено, то перед нами очень многообещающая альтернатива трансформерам (спойлер: r в "Strawberry" все равно посчитать не может).

Еще одна хорошая новость: модели уже можно попробовать. Они доступны в Liquid Playground и Perplexity Labs.

P.S. Если хотите почитать про архитуктуру подробнее, то вам сюда. По этой ссылке ресерчеры Liquid AI оставили упорядоченную подборку статей (собственных и не только) о том, как развивались ликвидные нейросети.

👉 DataFrog | #datascience
Please open Telegram to view this post
VIEW IN TELEGRAM
В Твиттере завирусилось исследование 1978 года о том, что врачи якобы не могут решить простую статистическую задачу

Она звучит так: "Если тест на выявление заболевания, распространенность которого составляет 1 из 1000, имеет false positive rate в 5%, какова вероятность того, что человек с положительным результатом на самом деле болен?".

Утверждается, что верный ответ – 2% (Из 1000 будет 1 больной и 50 человек с ложноположительным тестом -> 1/51 ~ 2%). Тот же ответ получается по теореме Байеса.

Однако так ответили только 2/10 медиков. Остальные давали ответ "95%", аргументируя это примерно так: "В задаче рассматривается не случайный человек из выборки, а только тот, который уже получил положительный результат теста. В таком случае, раз false positive rate = 5%, то вероятность наличия заболевания получается 95%".

Кстати, подобное исследование проводилось еще один раз в 2014 году. Вопрос задавали уже другой: "Представьте себе гипотетического бейсболиста. Он проваливает тест на наркотики, который точен на 95 процентов. Какова вероятность того, что бейсболист действительно виновен?".

И опять верный ответ дали только 14 из 61 опрошенных. А вы бы как ответили?

👉 DataFrog | #datascience
Please open Telegram to view this post
VIEW IN TELEGRAM
1
Там на Kaggle завезли новые ачивки 😇

Появились значки за активности под названием Badged (например, год на Kaggle, засабмитил в командное соревнование, создал Python ноутбук и прочее). Полный список тут.

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

Делитесь, кто сколько уже насчитал у себя?

👉 DataFrog | #datascience
Please open Telegram to view this post
VIEW IN TELEGRAM
Что такое аугментация данных?

Это один из методов регуляризации нейронных сетей через внесение изменений в данные. То есть, если мы внесем небольшие адекватные изменения в данных, мы можем спасти нейросеть от переобучения и увеличить ее обобщающую способность. Но почему это работает? Разбираемся на попугаях.

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

👉 DataFrog | #datascience
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Еще некоторые детали про o1 aka Strawberry aka Q*

➡️ Сейчас на юзерах с подписков крутится не сама o1, а ее preview версия. Также для ChatGPT Plus будет доступна модель o1-mini (более дешевая и шустрая). o1-mini также обещают раскатить и для бесплатных аккаунтов.

➡️ Даже несмотря на то, что самой o1 пока на проде нет, лимиты в чате и цены в API уже достаточно жестокие: 30 сообщений в неделю для o1-preview, 50 для o1-mini 😳. В API вообще песня: 20 запросов в минуту, и при этом платить придется не только за коллы, но и за сами размышления модели (reasoning tokens).

➡️ Саму o1 тоже обещают раскатить скоро. Она уже дообучена и протестирована, но, видимо, OpenAI все еще приходится решать вопросы связанные с затратами на ее инференс, и (может быть) безопасностью.

➡️ OpenAI обращают внимание на то, что промптинг с новой моделью отличается от промптинга со старыми. Они даже выкатили свой гайд с советами о том, как правильно общаться с o1. Основная мысль сводится к «Больше не надо уловок вроде "думай шаг за шагом" или "построй план решения". Формулируйте свои инструкции ясно и прямолинейно, а дальше модель все сделает сама.»

➡️Ну и напоследок то, на что могло ускользнуть от глаз: OpenAI решили скрыть от пользователей мыслительный процесс модели. То есть те рассуждения, которые видны в чате – это выборочный материал. Остальные необработанные цепочки мыслей пользователям не видны.

🍓🍓🍓

👉 DataFrog | #datascience
Please open Telegram to view this post
VIEW IN TELEGRAM
Там Anthropic предложили новую технику для RAG. Разбираемся:

Как работает обычный RAG:
1. Документы в корпусе разбиваются на чанки
2. Из каждого такого чанка мы достаем эмбеддинг и кладем его в векторную БД
3. Когда поступает запрос (промпт), мы ищем в этой БД семантически близкие к нему чанки и добавляем их в промпт, чтобы модель могла использовать эту информацию для ответа

В чем тут проблема?
Дело в том, что таким образом мы можем упустить важный контекст и детали запроса. Например, пользователь запрашивает "Error code TS-999". Поиск найдет информацию про коды ошибок в целом, но может упустить точное совпадение «TS-999». К тому же, при возвращении конкретного чанка из базы может случится так, что он будет вырван из какого-то важного контекста, и это может помешать модели.

Что предлагают Anthropic?
Во-первых, они предлагают извлекать не только обычные эмбеддинги, но и делать TF-IDF энкодинг чанков с помощью BM25. TF-IDF утроен так, чтобы как раз отбрасывать наиболее "общие" вещи в тексте, и фокусироваться на редких и самых важных словах. Это поможет не упускать детали при поиске, как в примере с ошибкой TS-999.

Во-вторых, чтобы избавиться от проблемы отсутствия контекста, они предлагают этот контекст добавлять искусственно (то есть делать из такого: "Прибыль росла на 3%." ... такое: "Этот чанк относится к отчету компании ACME за Q2 2023; прибыль росла на 3%.").

Для этого перед извлечением эмбеддингов и TF-IDF энкодингом каждый чанк аннотируется с помощью отдельного запроса к модели (в случае Anthropic это делается с помощью Клода). Да, дорого. Но с помощью фишки Prompt Caching, которую недавно завезли в API, можно хорошо скостить цену.

В итоге все это дает достаточно ощутимый прирост к метрикам качества поиска. Например, фактических ошибок становится меньше на 35%, а это ничего себе!

👉 DataFrog | #datascience
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
Gradient Accumulation

Из-за ограничений памяти всегда рекомендуется обучать нейронную сеть с небольшим размером батча. Но что, если мы скажем вам, что можно увеличить размер батча без увеличения размера батча?

👉 DataFrog | #datascience
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍81