Data notes – Telegram
Data notes
45 subscribers
59 photos
5 videos
2 files
122 links
My data science notes
Download Telegram
Forwarded from New Yorko Times (Yury Kashnitsky)
Ссылки после стрима
#career #interviews

Что, вроде неплохо зашло? Если что-то еще упустили - пишите в коменты. Может, еще соберемся. Можно для diversity и стартаперов позвать (Бориса без пхд уже звали).

Во флудливом чатике streamyard было и что-то полезное. Кроме кеков, из-за которых ведущем было сложно держать щи ровно.

- Лучший источник для ml system design, на мой взгляд. Дается структура и много типичных примеров. Еще был совет читать блоги компаний, особенно перед собесом с одной из компаний, ведущих неплохие блоги

- методичка Бориса о собесах

- SWE interviews at Meta

тут расписывал про ресурсы, которые мне помогли в долгом забеге по собесам

- Хороший ютуб канал для бихейва - A life engineered

- мне очень помогли два канала экс-рекрутеров гугла: Jeff Sipe и Erika Gemzer. Все про бихейв + у Джеффа есть плэйлист про переговоры

- Книга System Design Interview от Alex Xu - это классика. У него же недавно появилась про ML system design. Не читал, но если она хоть чуть-чуть похожа на System design, то это 🔥

- настольная книга карьеристов: Rise. (do better, look better, connect better). Много про менторство, личный бренд (в правильном смысле слова) и нетворкинг

- еще Таня развернула мысль про поведенческие собесы в этом посте.

Насчет записи стрима: файлик есть, а времени и желания монтировать - нет. Ставьте звёздочки, если нужна запись - подумаем 😀
Please open Telegram to view this post
VIEW IN TELEGRAM
Женя - очень крутой лидер, именно с ним мы последние полгода делали риск-движок для нигерийского банка, о котором я упоминал выше. И, в отличие от меня, он в Нигерии прям живет, и в этом подкасте рассказывает много интересного не только про рабочие будни, но и про жизнь в этой стране, о которой мы, выходцы из стран СНГ, практически ничего не знаем.

Эксклюзивный контент!
1
RM_DS_position.pdf
87.4 KB
Ищем в наш нигерийский банк DS с уклоном в риск-аналитику.

Задачи - развивать риск-движок, "пополнять" его новыми моделями, интегрировать новые истоники данных и многое другое.
Подойдет тем, кто хочет в перспективе выйти на международный рынок труда, освоить "мировые" облачные технологии (AWS) и при этом работать на удаленке из РФ. Год назад здесь не было буквально ничего, так что работать еще есть над чем, многое предстоит сделать с нуля.
Точно не подойдет, если вы привыкли, что все данные разложены по полочкам, все процессы выстроены и каждый занимается только своими задачами. Плюс много общения с нигерийцами, что требует много усилий и терпения.

Писать в личку.
👍3
Простая на первый взгляд задачка
👍2
потрясающий текст про закат компании ABBYY как наименьшее из последствий краха всей компьютерной лингвистики под натиском статистических моделей языка. Пластмассовый мир chatGPT победил все попытки построить детерминированные онтологии, а способ решения любой проблемы "завалить вычислительными мощностями", оказался более надежным и масштабируемым, чем любая попытка разобраться что же происходит внутри системы (и язык здесь только один из примеров)

по ссылке обзор развития компьютерной лингвистики от ранних моделей до трансформеров, которые появились как способ улучшить качество гугл-переводчика, расцвет ABBYY как одной из самых успешных российских ИТ-компаний, почти академическая культура физтехов внутри, «горький урок» больших данных и сгоревшие сотни миллионов долларов на амбициозную попытку построить дерево онтологий всех языков сразу (ABBYY compreno).

про мегапроект ABBYY compreno я когда-то очень давно случайно увидел статью и будучи студентом физиком, конечно, был очарован масштабом. это же такая мечта технаря в вакууме: давайте мы все тексты сведем к логическим инвариантам, соединим их стрелочками и построим граф всего языка. то есть к сущностям типа собака / стол / книга, которые не теряют своей сути при переезде между странами. тогда для перевода между языками можно будет делать преобразование в этот мета-язык и из него в еще один шаг переводить тексты в любой другой. впечатлился, посмотрел на страшные диаграммы простых предложений (скину их в комменты, зацените) и забыл об этом на долгие годы. но конечно и представить не мог, сколько копий было поломано и сколько ресурсов потрачено (получается, что впустую).

а самое забавное, что современные большие языковые модели примерно так и работают — все тексты переводят в свой мета-язык и обратно, только этот язык
1) математический (операции над текстом превращаются в операции над векторами в многомерных пространствах, писал об этом)
2) не интерпретируемый, то есть не сводимый к человеческим интуициями

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

очень рекомендую прочитать целиком: https://sysblok.ru/blog/gorkij-urok-abbyy-kak-lingvisty-proigrali-poslednjuju-bitvu-za-nlp/
🔥2
ML and LLM system design: 500 case studies to learn from

How do companies like Netflix, Airbnb, and Doordash apply AI to improve their products and processes? We put together a database of 500 case studies from 100+ companies that share practical ML use cases, including applications built with LLMs and Generative AI, and learnings from designing ML and LLM systems.

Navigation tips. You can play around with the database by filtering case studies by industry or ML use case. We added tags based on recurring themes. This is not a perfect or mutually exclusive division, but you can use the tags to quickly find:
- Generative AI use cases. Look for tags “generative AI” and “LLM” to find examples of real-world LLM applications.
- ML systems with different data types: computer vision (CV) or natural language processing (NLP).
- ML systems for specific use cases. The most popular are recommender systems, search and ranking, and fraud detection.
- We also labeled use cases where ML powers a specific user-facing "product feature": from grammatical error correction to generating outfit combinations.

Link: Site

Navigational hashtags: #armknowledgesharing #armsites
General hashtags: #mlsystemdesign #ml #systemdesign #llm
Forwarded from partially unsupervised
Почти в каждом deep learning-based продукте, над которым я работал, на каком-то этапе где-то сбоку появляется небольшая линейная модель, обучаемая отдельно, иногда даже на классических фичах. Она, конечно, не может решать основную сложную задачу, но внезапно сильно помогает с каким-нибудь корнеркейсом. Например:
- определять резкую смену контекста (и необходимость сбросить стейт),
- детектить потенциальные ошибки или аномалии,
- слегка уточнять результаты сложного пайплайна,
- роутить инпут между компонентами,
- заполнять недостающий параметр, если в API вдруг не приходит какое-то поле, а менять что-то на клиенте слишком дорого,
- подсвечивать потенциальные проблемы человекам in the loop.

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

Вот сейчас у меня есть матрица расстояний в чем-то вроде матчинга, и нужно оценивать уверенность матча, потому что иногда лучше ответить ничего, чем неправильно. Сначала берешь собственно дистанцию, потом хочется добавить еще пару эвристик типа расстояния до second best кандидата, их нужно как-то взвешивать... Так что не надо брезговать классикой, и умение выжать лишний процент из линейной модели все еще полезно.
Forwarded from addmeto (Grigory Bakunov)
Вот эта работа имеет все шансы стать куда более значимой, чем все нынешние "соры", выпущенные в последние полгода. Это система, в которой вы можете симулировать реальные физические процессы и визуализировать их. По сути используется физическая модель, где из текста строится не видео (как все уже привыкли), а моделируется 3д с учетом физики процессов и материалов. Слова тут вероятно лишние, посмотрите на картинки https://genesis-embodied-ai.github.io
Forwarded from .ml
Как LLM могут помочь в классическом ML?

По статистике, специалисты по Data Science тратят до 70% рабочего времени на этап Feature Engineering, то есть отбирают наиболее важные признаки в данных и формируют новые, более информативные, датасеты. Кажется, с этой рутинной задачей отлично справится LLM. Но нет — в итоге 64% времени уйдёт на подготовку промптов.

Исследователи предлагают новые решения проблемы, одно из них — FELIX (Feature Engineering with LLMs for Interpretability and Explainability). Всё, что нужно для получения готовых фич — сам датасет и его короткий контекст. Дальше FELIX делает следующее:

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

Метод эффективен для текстовых данных и сильно превосходит TF-IDF и трансформерные эмбеддинги от RoBERT. Если вам интересно, расскажем и о преобразовании других типов данных в новых постах!
Каюсь, лежит у меня этот плейлист запланированным для просмотра довольно давно, но только сейчас дошли руки начать смотреть. И это просто кайф! Павел Кикин на проятяжении 10 роликов рассказывает о том, как должен быть устроен нормальный ML в компании. При этом Павел сам в ML пришел из бэкэнда, а поэтому очень много про версионирование, стиль кода, документацию, управление зависимостями... Очень структурированный и полезный материал! Смотрю уже четвертое занятие - еле оторвался мини-пост написать 🙂
MLOps и production подход к ML исследованиям 2.0
🔥2
Forwarded from BOGDANISSSIMO
Самая разумная политика проведения coding интервью начиная с 2023, Я считаю

Как говорил Валера в одном из выступлений X5 Retail Hero, "хорошее интервью - должно быть хорошим прокси того, чем ты будешь заниматься на этой работе". И кажется, мы не в 2000х или 2010х чтобы писать код без интернета / без LLM. Наоборот, по тому, что ищет кандидат или какие запросы делает, за сколько промптов он доходит до нужного решения у того же курсора и как потом проверяет что всё работает – это очень-очень показательно

Лично кидаю тапками в те компании, где в 2025 всё ещё будет не так
👍1
Forwarded from Data Secrets
Известный мировой тех.подкаст про AI Latent.Space в честь Нового Года выложили 2025 AI Engineering Reading List

Это огромный список актуальных мастридов для ML/AI инженеров. В нем нет базовой базы, а только те статьи, которые непосредственно относятся к современным развивающимся методам и технологиям.

Охвачены 10 самых важных на сегодняшний день областей: файнтюнинг, агенты, диффузия, голос, вижн модели, генерация кода, RAG, цепочки рассуждений, бенчмарки и эвал, и frontier LLMs.

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

Из профессионального:

- Ни разу не лейоффнули за 2024. Доволен, потому что в 2023 это случалось дважды.
- Оказавшись в коммьюнити “Hello New Job” в конце 23, рад состоять в нем, ибо продолжаю пожинать плоды весь этот год. Стало понятно, как искать работу, как составлять резюме, как проходить нетехнические интервью и так далее. После того, как стал следить за новыми выпусками по теме, ощущаю себя в курсе того, в каком состоянии рыночек в IT
- Ощутил мощь Linkedin, понял, как с ним работать, чтобы он приносил пользу (в первую очередь, предложения о работе), набрал 1к+ фолловеров, стали писать рекрутеры.
- Несмотря на то, что активно работу не искал, прошел 20+ собесов, с 2 неплохими офферами, один даже с релоком в ЕС. По результатам четко сформулировал слабые места по технике, работаю над ними.
- Сделали крутой проект в Нигерийском банке, написали с шефом статью, ждем публикации
- Понял, что могу работать на 2 работах постоянно. В наше время постоянных лейоффов это отлично страхует от голода и придает уверенности.
- Касаемо учебы. Наконец закрыл позорный гештальт: начал изучать DL, прошел специализацию от Deeplearning.AI. Andrew NG, как и много лет назад - топ! Начал вгрызаться в PyTorch, читать классические статьи, смотреть доклады - все как мы любим. Смотря на то, сколько всего появилось в контексте LLM, почти безуспешно борюсь с FOMO, но когда при близком рассмотрении оказывается, что большинство “эйай экспертов” дальше промтов “за ворота” и не выглядывали, начинаю успокаиваться: мой подход был и будет основан на изучении фундаментальных вещей. Хотел одновременно затащить курс по NLP ODS, но не осилил - вернусь в следующем году. Еще из нереализованного: не прочитал книгу по causal inference, не сдал ни одной сертификации по облакам.
- Планировал продолжить писать на медиуме, но под конец года совсем не осталось времени.
- Немного занимался менторством (2 человека обращались за консультацией), один в итоге нашел работу в ЕС. Для себя плюсы такой деятельности вижу как возможность самому разобраться еще глубже в теме, которую казалось бы и так знаешь хорошо. Ну и за менти порадоваться конечно же!
🔥6
Из личного:

- Поставил антирекорд: не выезжал из страны уже больше 2 лет, чего не было, наверное, со школы
- Получил постоянную резиденцию (больше никаких походов в миграционку!) и подал доки на второе гражданство - причина антирекорда из предыдущего пункта и причина непринятия офера из ЕС: из страны не стоит выезжать на время процесса.
- Приобрел велик, теперь почти не пользуюсь общественным транспортом, который, кстати, подорожал в несколько раз за 2 года. Все поездки до 15-20 км стараюсь совершать на нем. Благо в городе хорошо развита вело инфра. Фитнес и экономия!
- В теплое время года бегаю, но пока не достиг цели пробежать десятку. Пока 8км - мой максимум. Вообще без снега живется гораздо лучше (я не видел его почти 3 года, кроме как морозилке), а если очень хочется - есть горнолыжные курорты, но это не мое ))
- Под конец года взялся-таки за испанский, в магазинах и на рынках новому уже не научат, теперь придется учиться самому)
🔥6
В 2025 CI/CF продолжат набирать популярность. Сочетание спроса и небольшое количество толковых специалистов, очень большое поле для новаций. С одной стороны, LLMки, где 2000 человек на кв. см, много хайпа и существенное превышение затрат над value, с другой стороны, СF, causal investments, 2 десятка человек с пачкой проектов и с загруженностью до 2028 года, Марко де Прадо, его ученики, ученики его учеников, ученики Хайндмана, Цая и Атанасопулоса. Убытки в использовании цифровых двойников на ML-моделях, над которыми не надстроен каузальный анализ, колоссальные, но об этом часто исследователями умалчивается, а бизнес нередко разочаровывается в возможностях промышленного ML, хотя ML и не может ответить на вопрос, на сколько мне нужно изменить X, чтобы изменить Y на столько-то. Собственно в это направление перемещаюсь, бог даст, будет пара книжек в этом году. Для введения подойдет https://www.cambridge.org/core/services/aop-cambridge-core/content/view/9AFE270D7099B787B8FD4F4CBADE0C6E/9781009397292AR.pdf/causal-factor-investing.pdf
Apache Parquet: как Twitter и Cloudera развивали дата инжиниринг

Apache Parquet начинался как совместный проект Twitter (ныне X) и Cloudera — компании, известной своими дистрибутивами Hadoop и инструментами для работы с ним. Многие, кто работал с Hadoop, вероятно, сталкивались с Cloudera и пользовались их решениями. Например, в Сбербанке используют их софт для обработки больших данных (Сбер за рекламу не платил, а мог бы).

Теперь давайте наглядно сравним Parquet с традиционным CSV-файлом, чтобы понять его преимущества. Возьмем простой пример CSV:

Имя, Пол, Год рождения, Вес, Рост, Дата записи
Владимир, М, 1954, 74, 179, 01/01/2024
Борис, М, 1931, 88, 187, 01/01/2024
None, М, None, 77, 178, 02/01/2024
Валерия, Ж, 1950, 150, 168, 02/01/2024


1. Колоночный формат
Первая ключевая особенность Parquet — это колоночное хранение данных. В CSV данные хранятся построчно, и для вычисления среднего значения, скажем, веса, вам нужно пройти по каждой строке, извлекая из нее данные. Это требует времени, особенно для больших наборов данных.

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

Более того, в Parquet применяется метод сжатия RLE (Run Length Encoding), что эффективно для хранения повторяющихся значений и пропусков. Например:

Имя: (Владимир, [0]), (Борис, [1]), (Валерия, [3])
Пол: (М, [0, 1, 2]), (Ж,[3])

Таким образом, можно обрабатывать большие объемы данных быстрее и с меньшими затратами памяти. Библиотеки вроде Polars, благодаря колоночному формату, не будут загружать лишние данные при ленивых вычислениях, что делает их работу еще эффективнее.

Типизация данных, схемы и партиционирование
Каждый Parquet-файл сопровождается схемой, которая описывает структуру данных: какие есть поля, их типы, и где начинается блок с данными. Так как данные типизированы, можно сэкономить место. Например, колонку "Пол" можно хранить в виде числовых значений, а в схеме — просто словарь, который сопоставляет числа с реальными значениями ("М" и "Ж"). Помните, в CSV каждый символ весит минимум байт!

Теперь представим, что наш CSV-файл содержит миллиард строк. Это около 100 ГБ данных, что вполне помещается на обычный компьютер, но работать с таким файлом будет неудобно. Чтобы оптимизировать работу с большими данными, применяют партиционирование. Это разделение файла на несколько частей по какому-то признаку — например, по дате записи.

Разделив данные по дням, вы сможете, например, быстро посчитать средний рост людей только за вчерашний день, не обрабатывая весь миллиард строк. Более того, партиции можно читать параллельно в разных потоках, что еще больше ускоряет вычисления на современных многопроцессорных архитектурах. Библиотеки Pandas, Polars и Spark поддерживают такое параллельное чтение с помощью Apache Arrow.

Parquet — это мощный инструмент для работы с большими объемами данных благодаря колоночному хранению, эффективным алгоритмам сжатия и возможностям партиционирования. Для задач, связанных с большими данными, Parquet сильно удобнее и быстрее, чем традиционный CSV. Используя такие библиотеки как Polars и Spark, можно значительно ускорить обработку данных и снизить затраты на вычисления. А еще можно каждый день дописывать новую партицию за день и не менять структуру файлов и избежать дублирования
👍2