asisakov

Description
Интересное что-то со ссылками: https://t.me/youknowds
Advertising
We recommend to visit

Рассказываю про крипту и инвестиции на понятном языке.

Сотрудничество — @TGowner999

Больше информации о нашей сети: https://t.me/TGownerTOP

Last updated 1 week, 2 days ago

Утро начинается не с кофе.

Сотрудничество: @evoanna (по всем вопросам, только мне писать)

Last updated 2 months, 3 weeks ago

Канал кто хочет легко заработать в интернете

По поводу рекламы - @pavelWbprice

Last updated 3 months ago

2 months ago

Вы все наверное видели, но все же

В последнее время подсел на удобный контекст Gemini 1.5 Pro. Например, очень удобно загрузить несколько статей и позадавать по ним вопросы. Конечно, были исследования, что при увеличении длины контекста начинает страдать точность ответов, поэтому тут лучше перепроверять, но для обзора литературы самое то ?

Делитесь, кто и для чего юзает Gemini и Gemma модели?

#llm

Telegram

epsilon correct

Апдейт моделей Gemini 1.5 Pro & Flash Вышла в свет очередная вещь, над которой я работал летом – обновление основных моделей Gemini. Из хайлайтов: +8% MMLU Pro, +23% ***👽*** на Hendrycks MATH, +10% на GPQA Diamond для Flash модели. Цена на Gemini 1.5 Pro порезана…

Вы все наверное видели, но [все же](https://t.me/epsiloncorrect/206)
2 months, 1 week ago

Примеры пет-проектов

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

Я тут подумал, и накидал несколько идей для проектов:

1️⃣Предсказание числа задержанных авиарейсов

Данные: Flight Delay Data
Бейзлайн: Линейная регрессия
Что делаем:
- Грузим и готовим данные, также обрабатываем пропущенные значения.
- Генерация признаков: делаем много логичных признаков
- Отбор признаков: оставляем место только для самых важных признаков (время года, погодные условия, категории авиакомпаний).
- Разбиение данных на train / OOS (out-of-sample) / OOT (out-of-time).
- Обучаем базовую модельку.
Улучшение:
- Использование деревянных моделей: Random Forest Regressor или любой бустинг, имя которого нам нравится.
- Можно потыкать в фичи, отражающие временные зависимости с применением скользящих средних и лагов.
Скиллы, которые можно прокачать: Прогнозирование временных рядов, Feature Engineering, работа с табличными данными.

2️⃣Анализ тональности отзывов

Данные: IMDb Reviews
Бейзлайн: Naive Bayes
Что делаем:
- Загрузка и очистка данных: токенизация текста, удаление стоп-слов.
- Преобразуем текста в векторы или численные признаки: TF-IDF, word2vec.
- Тут достаточно взять один трейн и одну валидацию.
- Обучение наивного Байеса
- Можно попробовать поработать над интерпретацией результатов.
Улучшение:
- Применяем RNN, LSTM или GRU просто посмотреть, что будет.
- И только потом переходим к трансформерам типа BERT.

Скиллы, которые можно прокачать: NLP, обработка текста, классификация, интерпретация моделей.

3️⃣Поиск аномалий в данных кредитных карт

Данные: Credit Card Fraud Detection
Бейзлайн: Дерево решений, ну или тупо kNN
Что делаем:
- Грузии и обрабатываем пропущенные значения (для этой задачи особо важно рассмотреть разные виды), нормализация.
- Работаем с признаками - здесь надо поискать корреляции и собирать пары признаков.
- Разбиваем по возможности на train / OOS / OOT.
- Обучаем наши простенькие модельки.
- Пробуем полученные зависимости и флаги прокинуть в признаки.
Улучшение:
- Использование методов кластеризации (допустим, DBSCAN).
- Применение ансамблей (Isolation Forest, Local Outlier Factor). Если берете градиентный бустинг, то надо тюнить!
Скиллы, которые можно прокачать: Поиск аномалий, работа с несбалансированными данными.

4️⃣Рекомендательная система

Данные: MovieLens Dataset

Бейзлайн: Коллаборативная фильтрация (Matrix Factorization)

Что делаем:
- Классически обрабатываем табличные данные.
- Строим item-user matrix.
- По возможности засовываем туда SVD (singular value decomposition).

Улучшение:
- Переход к методам ALS (Alternating Least Squares).
- Берем весь скоуп рекомендательных моделей, про которые вы слышали и делаем фит-предикт
Скиллы, которые можно прокачать: Рекомендательные системы, матричное разложение, нейросетевые методы.

5️⃣Распознавание объектов на изображениях

Данные: Тупо CIFAR-10 Dataset ну или любой другой с кагглов
Бейзлайн: Любая (желательно самописная) CNN сеточка
Что делаем:
- Загрузка и нормализация изображений.
- Построение базового CNN с несколькими сверточными и pooling слоями.
- Разбиение данных на тренировку и валидацию.
- Обучаем модели с использованием Cross Entropy Loss.
Улучшение:
- Использование более сложных моделей типа ResNet. Также берем все, что знаем и наваливаем побольше эпох
- Применение Transfer Learning с использованием предобученных моделей (VGG, Inception).
Скиллы, которые можно прокачать: Обработка изображений, сверточные нейронные сети, Transfer Learning.

Вообще все зависит от вашего воображения. Делайте огромные EDA, пробуйте крутить гиперпараметры, искать ошибки в предсказаниях и интерпретации. Делайте крутые визуализации! В общем, просто кайфуйте - вы можете прокачать любой скилл, главное, чтобы было желание и время ?

Заметьте, ни в одном из проектов я не упомянул LLM! Но это не значит, что с ними нельзя повозиться. Вон тем более Мистраль сделали бесплатный API. Так что крутость наших проектов зависит только от нас ?

#ml #petproject #interview

Telegram

asisakov

РЕЗЮМЕ Часть 2 Начало выше ***⬆️*** 4. Проекты Здесь есть некоторое пересечение с тем, что было описано уже в рабочих проектах. Это скорее подходит для проектов, которые вы делали в свободное время. Например, у вас есть классный пет-проект, который помогает…

2 months, 1 week ago
asisakov
4 months, 4 weeks ago

Всё, что нужно знать про собеседования в Data Science

Можно с уверенностью сказать, что каждый из вас не раз сталкивался с собеседованиями, или в будущем с ними столкнется. Я потихоньку писал для вас серию постов, которая поможет:

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

Итак, сверху вниз и по порядку публикаций:

  1. В целом про собеседования и этапы прохождения отбора в компанию(Часть 1 и Часть 2)2. Про резюме, его подготовку и оптимизацию(Часть 1 и Часть 2)3.Общение с рекрутером, или почему этот этап действительно необходим.Такжемини-разбор резюмеикаким оно было до,каким оностало после улучшения4. Собеседование на классический ML, или почему важна база5.Собеседования по узким направлениям, или специализированный ML/DL(Часть 1 и Часть 2)6.ML System Design, его структура и материалы для подготовки(Часть 1 иЧасть 2)7. Алгоритмическое интервью вместе с проверкой кодинга и бооооольшим количеством ссылок (Часть 1 и Часть 2)8.Собеседование на проверку аналитических скиллов не без душноты(Часть 1 и Часть 2)9.System Design с погружением в структуру, термины и большим списком источников (Часть 1,Часть 2 и Часть 3)10. Поведенческое интервью со списками принципов и вопросов(Часть 1,Часть 2 и Часть 3)

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

На все это у меня ушло больше, чем полгода и все это время я вкладывал частичку души в текст (или даже мануал), который теперь будет вам помогать топово готовиться к собеседованиям. Уверен, это будет полезно!

Лайк, шер, репост и комментарии приветствуются!

asisakov

#interview

Telegram

asisakov

СОБЕСЕДОВАНИЯ Часть 1 *Здесь и далее рассматриваются DS-позиции. Выбрал нотацию DS (Data Scientist) именно потому, что она является собирательной, но отражающей конкретное направление в IT. Нередко замечаю комментарии, что найти первую работу для человека…

5 months ago

Low Battery

Сегодня выскочил пуш в углу экрана ноутбука с намеком, что пора бы подзарядиться - иначе он скоро выключится. Внезапно у меня возникла ассоциация с усталостью человека (или даже выгоранием). Давайте попробуем через эту парадигму рассмотреть варианты, что же делать, если мы очень близки к состоянию усталости.

When your Mac warns you about a low battery, it’s crucial to take immediate steps to prevent losing your work and shutting down unexpectedly. Here are pieces of advice to help you handle this situation:

  1. Save Your Work Immediately (заканчиваем быстрые и срочные дела)
    - Цель: Самое главное правильно распределить остаток усилий - если мы закомитились что-то сделать срочно, давайте займемся этими задачами, пока у нас ещё есть энергия.
    - Действие: Отвечаем на срочные вопросы, отвлекаемся от того, что требуется в будущем. Одновременно разгружаем голову - получаем топливо в виде легкого дофамина за быстро сделанные задачи и при этом сохраняем ответственный подход.

  2. Close Unnecessary Applications (дропаем нецелевые активности)
    - Цель: Освобождаем голову еще глубже от всего, что сидит внутри - домашние дела или другие активности.
    - Действие: Допустим, кроме рабочих задач у нас накопилась еще куча остального контекста, на который нам нужно потратить энергию. Надо ли звонить по поводу записи именно сейчас? Если тяжело выявить приоритеты, вспоминаем квадрат Декарта и отвечаем на вопросы о важности и срочности дел. Скорее всего большинство из того, что просто грузило нашу голову мы запишем на стикеры, приклеим у монитора и вернемся к этим моментам при необходимости.

Краткосрочно мы высвободили некоторое время на размышления и погружение в причины усталости

  1. Connect to a Power Source (находим источник энергии)
    - Цель: Даже если освободились от срочных, требующих немедленного выполнения, дел, мы все же нуждаемся в подзарядке.
    - Действие: Находим время для отдыха. Даже короткий перерыв, прогулка на свежем воздухе в отрыве от контекста (в своих мыслях) позволяет нам получить небольшой запас сил. Очевидно, что небольшой сон, либо полноценное переключение на другую деятельность даст больше эффекта, но готовы ли мы сейчас на это? Если у нас достаточно времени, то вообще можно взять небольшой отпуск и просто развеяться - самое главное освободить голову и тело от напряжения.

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

  1. Activate Low Power Mode (уменьшаем интенсивность нагрузки)
    - Цель: Снижаем среднюю нагрузку не одномоментно, а долгосрочно и постепенно
    - Действие: Давайте немного подвинем интенсивные задачи, при необходимости их можно даже делегировать - ничего страшного в том, чтобы в этот спринт сделать не 15 задач, а 13. Для восстановления также запишемся на массаж, попробуем йогу или медитацию. Даже просто (ладно, не просто) следование здоровому образу жизни позволяет нам становиться более выносливыми. Короче, давайте уделять себе внимание.

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

Желаю всем больше заботиться о себе!

Telegram

asisakov

Анализ и принятие решений Часть 2 Начало выше ***⬆️*** Третий глоток. После того, как мы поняли нашу боль, нам надо это переформулировать в виде цели для проработки. И если "мало времени тратим на exploration" вроде и говорит о чем-то, но не располагает к действию…

5 months ago

Собеседования по ту сторону экрана

В последнее время я проводил много (ну ладно, немного) собеседований

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

Допустим, мы ищем кандидата с топовыми навыками аналитики или разработки, но как точно это оценить за час?

  1. Давайте задавать вопросы о предыдущем опыте. Это даст полное представление? Я думаю вы знаете ответ на этот вопрос.
  2. У вас на собеседовании два кандидата: один из них ваш одногруппник, а другой нет. Кому отдать предпочтение? Правильный ответ я думаю вы тоже знаете - вам просто нельзя проводить этот собес из-за конфликта интересов.
  3. Ваш кандидат отвечает неплохо, но кажется слишком нервным и не может полностью раскрыться в техническом интервью. Что делать? Тут я не буду отвечать, пишите в комменатриях.
  4. Кандидат топово разбирается в технических вопросах, но по личным качествах ну совсем не фитится. Что делать в этом случае? Кажется, что кандидата терять нельзя, тем более если он предрасположен. Но как это повлияет на работу команды?

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

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

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

Предлагаю накидать в комментарии наиболее эффективные способы отбора подходящих кандидатов. Надеюсь всем будет полезно!

#interview #softskills

5 months ago

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

  1. Убедитесь, что вы действительно поняли основную цель

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

  1. Быстрый MVP возможен даже без ML

Пока мы будем уделять время обработке данных, обучать и тюнить сложные бустинги, нейросетки, крутить под них параметры и признаки, может пройти большое количество времени. Иногда достаточно попробовать простые методы (даже замена последними значениями), чтобы получить неплохие результаты и уже начинать применять их. Допустим, нам нужно быстро протестировать с нуля идею применения рекомендашек. Вместо возни с тяжелыми моделями можно затестить простую вещь: рекомендовать пользователям товары, которые в топе по продажам (ну понятно, что надо убрать пакеты). Но даже так мы имеем хоть какие-то рекомендации.

  1. 20% признаков могут дать 80% результата и больше

Ну или 20% признаков могут дать 99% точности. Просто давайте выкинем мусорные фичи и накатим хороший процесс отбора признаков. И вот теперь нам не нужно тянуть в прод большинство неиспользуемых признаков. И интерпретировать проще! Из примеров - мы строим модель оттока (churn). Возможно всего лишь 2 признака, которые хранят информацию о последней покупке, могут аффектить на churn сильнее, чем остальные все вместе взятые признаки (даже транзакции).

  1. Совершенствуйте модели итеративно, начиная с простой архитектуры

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

  1. В погоне за метриками не забывайте о логике и бизнесе

Метрики важны, но они не должны быть единственным критерием успеха. Важно понимать бизнес-контекст и логичность модели. Если мы своими рекомендациями растим количество продаж, то это может вылиться в большое количество продаж с отрицательной маржой. При это модель выполнит и перевыполнит KPI и продемонстрирует отличные метрики, но бизнесу будет неприятно.

  1. Обязательно проводите разбор ошибок!

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

  1. Не бойтесь поменять постановку задачи, если это необходимо

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

Все эти советы основаны на реальном опыте, возможно вы и сами в будущем все это прочувствуете. Надеюсь, было полезно!

#ml

5 months ago
Ну и кстати по поводу слайдов. …

Ну и кстати по поводу слайдов. Еще недавно обещал выложить скрин с выводами по докладу. Так что ловите!

5 months, 1 week ago

Данные и модели

Назовите пример данных, где бустинги (без тюнинга) проигрывают по метрикам единственному дереву

#ml #problem

7 months, 2 weeks ago

Расти или не расти

Всех приветствую!

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

В посте выдвигаются 2 точки зрения ? о том, как можно взглянуть на ситуацию с ростом и какие при этом бенефиты можно получить. Кстати, в том канале часто рассматриваются именно две противоположные точки зрения.

Я согласен с выводами и теми преимуществами, которые можно получить при каждом из действий. Однако рекомендовал бы всегда идти до конца. То есть, что я имею в виду: если есть возможность расти выше - пробуйте. ?

Иначе каким образом можно вообще понять, на каком месте вам лучше? Как это заранее прочувствовать?

Ходят слухи, что люди часто задерживаются на той позиции, где они наименее компетентны (принцип Питера). Можно попробовать найти для себя это место, попробовать понять, нужно ли это вам и если что, закрепиться на более эффективном уровне. Короче, попробуйте просто дойти до конца насколько сможете (без выгорания конечно же!☔️) и сможете понять, что вам нужно.

Ну а дальше можно сделать выбор, какой позиции придерживаться?

В общем, если вам откликнулось, ставьте 1-1 своему руководителю и скорее обсуждайте возможности дальнейшего роста!

#softskills

We recommend to visit

Рассказываю про крипту и инвестиции на понятном языке.

Сотрудничество — @TGowner999

Больше информации о нашей сети: https://t.me/TGownerTOP

Last updated 1 week, 2 days ago

Утро начинается не с кофе.

Сотрудничество: @evoanna (по всем вопросам, только мне писать)

Last updated 2 months, 3 weeks ago

Канал кто хочет легко заработать в интернете

По поводу рекламы - @pavelWbprice

Last updated 3 months ago