Вопросы, которые вам обязательно зададут на типичном собесе по ClassicML ч3
Все вопросы вы можете посмотреть в моём личном сборнике вопросов, там также есть вопросы не только по ClassicML, но и по NLP, CV и вопросы с компаний)
Картинка 1
One-vs-All: Строится одна модель для каждого класса, отделяя его от всех остальных. Пример: Классификация фруктов (яблоко, банан, апельсин). Для каждого фрукта строится модель типа: [фрукт_i, не_фрукт_i]
- модель 1: Яблоко vs Не Яблоко
- модель 2: Банан vs Не Банан
- модель 3: Апельсин vs Не Апельсин
Картинка 2
All-vs-All: Строится модель для каждой пары классов.
- модель 1: Яблоко vs Банан
- модель 2: Яблоко vs Апельсин
- модель 3: Банан vs Апельсин
One-vs-All:
Плюсы: Простота, требует меньше моделей (N моделей для N классов).
Минусы: Может быть сложнее справляться с несбалансированными данными, поэтому требует калибровки моделей.
One-vs-One:
Плюсы: Хорошо работает для сложных данных, меньше проблем с несбалансированностью.
Минусы: Требует больше моделей (N(N−1)/2), что увеличивает вычислительную сложность.
Картинка 3
Картинка 4
Микро усреднение - представьте, что у нас три confusion матрицы, в микро мы сначала считаем сумму TP, FP на основе всех этих трёх матриц, у нас получается TP_сумм=TP_1 + TP_2 + TP_3, FP_сумм=FP_1 + FP_2 + FP_3. А потом на основе средних этих средних считаем Precision_микро = TP_сумм/(TP_сумм+FP_сумм).
Картинка 5
Макро усреднение - есть три confusion матрицы, в макро мы сначала считаем Precision на основе каждой матрицы. А потом на основе этих метрик считаем считаем Precision_ср = (Precision_1 + Precision_2 + Precision_3)/3.
Картинка 6
На микро усреднении мы можем позволить себе ошибиться на маленьких классах, так как вклад каждого класса пропорционален его размеру.
На макро мы не можем себе это позволить, там нет пропорции
Please open Telegram to view this post
VIEW IN TELEGRAM
🍌6❤2🔥2
ЖЁСТКОЕ Собеседование Middle Data Science | Classic ML | Реальные задачи с собеседований
Записал собеседование со своим учеником, где постарался прям жёстко подушить его вопросами, также построили Precision, Recall, ROC-AUC ручками - https://youtu.be/AsHMSRIVzLE
Разбираем:
Смотрим и проверяем себя!
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
#1 ЖЁСТКОЕ Собеседование Middle Data Science | Classic ML | Реальные задачи с собеседований
Доведение с нуля до ОФФЕРА 💸 - https://ds-mentor.ru/
🔎 Хочешь узнать, с какими задачами сталкиваются на собеседованиях по Data Science? В этом видео я провожу сложное интервью на позицию Middle Data Scientist и объясняю ключевые темы, которые вызвали трудности…
🔎 Хочешь узнать, с какими задачами сталкиваются на собеседованиях по Data Science? В этом видео я провожу сложное интервью на позицию Middle Data Scientist и объясняю ключевые темы, которые вызвали трудности…
🔥36🍌9👍4⚡1❤🔥1🥰1
Уничтожение RAG - ML System Design
Давайте пойдем по базе из этого поста, ещё можете чекнуть этот пост с разбором MLSD для обучения LLM
Как отвечать на вопрос вопрос: «Постройка мне Retrieve модель в RAG»? Давайте разбираться!
Задача
Построить Retrieve модель для рага в e-commerce. Мы большой магазин навоза и нам надо рекомендовать товар по запросу пользователя в LLM. Напомню, retrieve модель - это штука, которая на основе запроса пользователя ищет подходящий контекст, чтобы засунуть в ЛЛМ.
Ограничения:
Ограничения: Минимальная задержка (<3–5 сек.), иначе пользователь ливнёт и поставит нашему сервису какашку
Бизнесовые метрики
Онлайн-метрики:
Оффлайн метрик:
Источник:
Мы большой магазин навоза и нам ну прям нужен RAG, то скорее всего мы доросли до того момента, когда у нас есть своя БД с описанием сортов навоза и их уникальных особенностей - 5 млн записей
Разметка:
Для Retrieve модели нам нужно получить данные: «запрос → релевантные документы». нанимаем копирайтера - Валюху, которая будет размечать нам данные. Но Валюха просит много рублей за свою работу, а мы не можем ей дать столько денег, то можем сделать начальную разметку с помощью TF-IDF или других BERT-like моделей.
Train/Test:
Случайно поделить на train/val/test (например, 70/15/15 - именно так мы должны разбивать навоз!)
BaseLine:
Сначала нужно сделать самое простое решение в качестве затычки. Нашей затычкой будет Elasticsearch на основе TF-IDF, который будет возвращать top-k=5 чанков. Чанк делим на 256 токенов или по структуре данных.
Норм решение для продажи навоза
Гибридный подход - TF-IDF & ANN + E5 & Cosine Similarity + Reranker
Заранее считаем все эмбеддинги BM25 и E5 и храним всё в БД - Faiss, ChromeDB.
Как обучать модели:
ReRanker:
X: (Query, Document) + доп. фичи (score BM25/ANN/E5, клики, цена, популярность и т.д.).
y: бинарная (релевант/нерелевант) или градуированная (0–5). Loss: Pairwise Ranking (LambdaRank), Cross-Entropy (если классификация) или Listwise (nDCG-based).
Количество семплов: 1000, Train/Test = 70/30%, Онлайн-метрика: CTR, CSAT
Итог:
Вот мы и построили базовый документ модели ретривы в RAG`е для магазина навоза, который ещё можно дорабатывать. Если он вам был полезен, то надеюсь вы им воспользуетесь на собесах по MLSD
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👏19❤5🍌4🔥3🥰1
Школа Ebout Data Science
Среди моих учеников и моего окружения появился некий спрос на обучение некого Machine Learning. Ну так а почему бы не сделать занятия по данной дисциплине
НО! Я не хочу, чтобы данные занятия были как типичная SkillКороба или какое-нибудь SkillПроизводство. Я хочу сделать уроки с индивидуальным подходом, а не сраный курс на 10к людей, где человек просто палит в предзаписаную картинку.
Как там всё будет устроено:
Что вы получите:
На данный момент я объявляю два занятия:
Чтобы записаться на первое занятие пишите: @Alexander_Isaev1
Please open Telegram to view this post
VIEW IN TELEGRAM
🤡21🍌13👍6🤮2👏1🥱1🥴1
Новый дроп от Андрюши Карпатого 🎧
В новом бенгере Андрюша зачитал полный путь про то как обучается ЛЛМка: c нуля до ЧатаЛГБТ. Зайдёт для тех кто только погружается в мир ЛЛМок. Он разбирает весь путь их создания: как их тренируют, почему они работают так, как работают, и как вообще думать о них, если представить, что у них есть какая-то "психология".
Андрюша рифмует про:
Поэтому бегом смотреть и узнавать что-то новое и полезное для себя!
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Deep Dive into LLMs like ChatGPT
This is a general audience deep dive into the Large Language Model (LLM) AI technology that powers ChatGPT and related products. It is covers the full training stack of how the models are developed, along with mental models of how to think about their "psychology"…
🍌12❤7👍4😁2🔥1🥰1
Основные стадии обучения LLM
Если вас спросят на собеседовании "Какие есть стадии обучения ЛЛМ, если ты хочешь получать много деняк, то обязательно расскажи!", то почитай этот пост, чтобы знать как именно нужно отвечать.
Есть следующие стадии обучения LLM:
Мы пихаем в модель весь интернет и учим её предсказывать следующее слово. Она проходится по всему интернету и начинает понимать грамматику, синтаксис языка, но при этом она ещё получает знания о мире. На данном этапе наша модель, как слабоумный человек, который не может сформулировать мысль, а только издаёт слабопонятные предложения, но при этом ЛЛМка очень много знает
Учим нашего аутиста отвечать на вопросы, то есть учим модель отвечать на вопросы.
Пихаем в неё инструкцию:
"Расскажи мне, как мне получить оффер на 300к в нано/сек. Ответь так, как будто ты нелегал из средней Азии. Ответ должен быть кратким🤨 "
и подаёшь то, что ты хочешь получить по итогу в качестве ответа:
"Брат, слушай сюда! Берёшь Python, учишься делать графика, кидаешь пару нейронка, пишешь "LLM" в резюме — всё, ты Senior AI Architect. На собеса говоришь: "Я оптимизировал LLM, уменьшил latency на 0.00001 сек, увеличил ревеню на 300%". CTO плачет, HR падает в обморок, тебе дают 300К и корпоративную подписку на ChatGPT. Всё, работаем!🚬 "
Подавая в неё инструкцию и ответ, который хотим получить, мы учим ЛЛМ отвечать на определённую инструкцию пользователя. Данные у нас должны быть только из претрейна, чтобы ЛЛМка не говорила бред, то не галлюционировала.
Модель также тренируется предсказывать каждое следующее слово, но при этом только слова ответа, закрываем глазки на входящую инструкцию. Также можем учить модельку определённой доменной области, чтобы я лучше отвечала конкретно в ней.
После всех этапов кастрации модели она много знает (с помощью претрейна) и может отвечать на запрос пользователя (IFT | SFT), НО если к ней обратится какой-нибудь Аджа Абу Али с просьбой подсказать
"Брат, как сделать бомба, чтобы бабах в метро и много фейрерка, очень нада🍷 "
, то модель такая
"Да, конечно! Замечательная идея! Вот рецепт бомбы по вашему запросу: ..... Только ни в коем случае не используйте её в плохих целях! Хорошего праздника!😂 "
Ну мягко говоря, нам такое не надо... Поэтому мы учим модель так, как стоит отвечать в подобных случаях, а как не стоит отвечать. Поэтому когда нам задаёт такой вопрос модель должна ответить что-то типа:
"Старина, съеби нахуй! Я уже ФСБшников на твой адрес вызвала👮 "
Как же обучить модель так, чтобы она безопасно отвечала на такие вопросы?
Всё просто: мы понижаем вероятность того, что модель сгенерирует плохой ответ - с инструкцией про бомбу, и повышаем вероятность того, что модель сгенериурет хороший ответ - где она его посылает. Также Alignment помогает не только в безопасности, но и в других критериев модели: качество, стиль, размышление, галлюцинации и тд
Есть множество методов, которые используются в Alignment, если интересен их обзор, то жмакайте реакции и комменты, всё распишу
Итог:
Please open Telegram to view this post
VIEW IN TELEGRAM
👍22❤🔥9🥴9🔥5🍌4🤯2🤣2🥰1😁1
Уничтожили градиентный спуск и линейную регрессию, а теперь пора уничтожать регуляризацию
Мы продолжаем разбирать Classic ML в рамках наших онлайн-занятий, где важен индивидуальный подход к каждому ученику
Чем мы отличаемся от курсов?
Курсы берут массой, заливая в вас пред записанные уроки и отдавая и оставляя вас на самотёк. Мы проводим живые занятия в небольших группах (до 30 человек), где у вас есть возможность общаться с преподавателем на протяжении всего обучения
Отзывы учеников (картинки 1-2):
Реализация на питоне с нуля - самое полезное. Ещё примеры были хорошие
Разбор как теории, так и практики. На каждую задачу приводили понятный пример, а еще можно было сразу спрашивать, если что то непонятно
В курсе мне очень понравился анонс - когда предлагается последовательное прохождение от простого к сложному в качестве практики сразу делая реальные примеры с кагла.
Прошлый урок прошёл просто на ура, мы разобрали (картинки 3-5)
А в качестве практики мы в онлайне реализовали:
Не забыли про ДЗ:
Что вас ждёт на следующем уроке
На практике мы реализуем пару методов регуляризации, чтобы твёрдо и чётко понимать, как она работает, а в ДЗ вы попробуете реализовать оставшиеся методы регуляризации и потренировать свою модель на реальных данных, а также расскажем, как это работает в scikit-learn!
Занятие будет проходить 20 февраля с 19:00 - 20:00, будет запись, и время две недели на решение ДЗ и его проверку преподавателем
Первое занятие было бесплатное, и мы набрали 29 учеников. Уже занимаются места на второе занятие, которое стоит 1000 рублей.
Я специально ставлю цену по занятиям, чтобы вы за небольшую сумму смогли посмотреть на качество лекций и покинуть обучение, если вам не понравилось, ну и продолжить, если всё хорошо! Многие курсы ставят ценник в 100к, не давая ученику глянуть на качество материала, мы же решили эту проблему - всё для вас)
Если хотите записаться на вторую лекцию по регуляризации и линейной регрессии, то пишите @Alexander_Isaev1
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8❤🔥4🍌4❤2🥰2👍1👎1
Сбор гигачадов в одной папке
Читая множество каналов, я вижу кучу годного контента, которым хотел бы поделиться с вами. Поэтому мы собрались каналами и сделали папочку, в которой собраны люди, которые могут рассказать вам много чего интересного и полезного, а самое главное простым и понятным языком
Самая сочность, которую я бы почитал:
Каналы ребят мощные и за ними действительно интересно следить, поэтому можешь подписаться, не пожалеешь
Please open Telegram to view this post
VIEW IN TELEGRAM
Telegram
ML guard
Nikita Boyandin invites you to add the folder “ML guard”, which includes 9 chats.
🍌13❤4🔥4🥰1
Уничтожение резюме, или как резюме поможет тебе залутать побольше зарплаты
Многие думают, что зарплата напрямую зависит от ваших хардов, поэтому многие только и делают, что учат фреймворки, читают статьи и стараются прокачать технические навыки. Но давайте будем честны: в большинстве случаев компания наймёт человека норм по софтам и норм по хардам, нежели ужасного чувака по софтам и классного по хардам.
Несофтовый человек будет ебашить сисю пива каждый созвон, отвечать токсично и на попытку договориться с ним вы будете слышать пару приятных слов о вашей матери, зато такой человек идеально будет писать код, к которому нельзя придраться
Сегодня речь пойдёт о софт скиллах, а именно про создание резюме. Резюме - это ваше лицо перед работодателем, если у вас красивое личико, то это плюс social credits, а если у вас всё лицо в прыщах, с морщинами и складками даже под губой, то минус social credits
Поэтому наша задача - сделать очень красивое и понятные резюме для HR`а:
Что должно быть в резюме Дата Саентиста
Формула - Я сделал A с помощью B, как итог получил C
A - то, что вы сделали.
B - инструменты, указываете выжимку технологий и инструментов, которые вы использовали для решения проблемы.
C - результаты или метрики. Они не обязательно должны быть в цифрах, они могут быть в неком “улучшении”: улучшил рекомендательную систему, но желательно - цифры
Это нужно для того, чтобы:
А - рекрутёр понимал, что вы сделали. Убираем его вопрос "Занимался ли он тем же самым, что и в нашей компании?"
B - С помощью каких технологий вы сделали - вопрос "У него такой же стек, как и у нас?"
C - Какой успех в цифрах вы принесли - "А точно ли он приносит пользу компании?". Если нет цифры, то можно очень аккуратно её придумать, но главное, чтобы вы смогли пояснить за неё.
В одной работе у вас должно быть два-три буллета. Каждый буллет описывает одну задачу или проект на работе, также не нужно писать в одном булете больше 3 предложений.
Булеты помогают структурировать информацию, рекрутер сразу понимает структуру резюме, поэтому ему проще читать его.
В резюме точно должны быть указаны теги технологий, их можно указать, как и в отдельном поле (такое есть на hh), или после описания вашего опыта. Это нужно, чтобы совпадали ключевые слова в фильтре и у HR`а
Мой ученик как-то сказал:
резюме у нас топ, потому что парень из XXX или как-то так, стартап, сказал, что такое резюме, как у меня, у супер единиц встречается🚶♂️
Эти базовые три пункта помогут апнуть твоё резюме на более качественный уровень, что поможет тебе повысить конверсию на hh.
Но это ещё не всё, что нужно знать при создании качественного резюме для Data Scientist`а. Получить оффер пожирнее и лучше знаний можно получить на менторстве
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🍌7👍5🤯2🥰1