ru
Feedback

Не попадитесь на канал ботавода! Telemetrio находит и помечает такие каналы 👉 Хотите видеть метку — оформите подписку

Библиотека дата-сайентиста | Data Science, Machine learning, анализ данных, машинное обучение

Библиотека дата-сайентиста | Data Science, Machine learning, анализ данных, машинное обучение

Открыть в Telegram

Все самое полезное для дата сайентиста в одном канале. Учиться у нас: clc.to/6qVHgg По рекламе: @tproger_sales_bot Для обратной связи: @proglibrary_feeedback_bot РКН: https://gosuslugi.ru/snet/67a5b03124c8ba6dcaa121c9

Больше

📈 Аналитический обзор Telegram-канала Библиотека дата-сайентиста | Data Science, Machine learning, анализ данных, машинное обучение

Канал Библиотека дата-сайентиста | Data Science, Machine learning, анализ данных, машинное обучение (@dsproglib) языкового сегмента Русский является активным участником. Сейчас сообщество объединяет 18 299 подписчиков, занимая 7 123 место в категории Технологии и приложения и 35 973 место в регионе Россия.

📊 Показатели аудитории и динамика

С момента создания невідомо проект демонстрирует стремительный рост, собрав аудиторию из 18 299 подписчиков.

Согласно последним данным от 25 октября, 2026, канал показывает стабильную активность. За последние 30 дней изменение числа участников составило -40, а за последние 24 часа — -5, при этом общий охват остаётся высоким.

  • Статус верификации: Не верифицирован
  • Уровень вовлечённости (ER): Средний показатель вовлечённости аудитории составляет 6.32%. В первые 24 часа после публикации контент обычно набирает 3.31% реакций от общего числа подписчиков.
  • Охват публикаций: В среднем каждый пост получает 1 156 просмотров. В течение первых суток публикация набирает 605 просмотров.
  • Реакции и взаимодействия: Аудитория активно поддерживает контент: среднее количество реакций на один пост — 2.
  • Тематические интересы: Контент сосредоточен на ключевых темах, таких как сайентиста, llm, буст, навигация, openai.

📝 Описание и контентная политика

Автор описывает ресурс как площадку для выражения субъективного мнения:
“Все самое полезное для дата сайентиста в одном канале. Учиться у нас: clc.to/6qVHgg По рекламе: @tproger_sales_bot Для обратной связи: @proglibrary_feeedback_bot РКН: https://gosuslugi.ru/snet/67a5b03124c8ba6dcaa121c9”

Благодаря высокой частоте обновлений (последние данные получены 26 октября, 2026) канал поддерживает актуальность и высокий уровень охвата публикаций. Аналитика показывает, что аудитория активно взаимодействует с контентом, что делает его важной точкой влияния в категории Технологии и приложения.

18 299
Подписчики
-524 часа
-237 дней
-4030 дней
Архив постов
Как присоединить значение, известное на момент события Датчик прислал событие в 10:05, а настройки менялись в 10:00 и 10:10. Для анализа нужна настройка из 10:00. Обычное равенство времён её не найдёт, а ближайшая точка без направления может оказаться из будущего. В DuckDB для этого подходит ASOF LEFT JOIN. Соединяйте по одинаковому sensor_id и условию event_time >= setting_time. Тогда для каждого события выбирается последнее значение справа с временем не позже события, включая точное совпадение. В примере предполагается одна настройка на пару «датчик + время». Совпадение будет максимум одно. Если подходящей настройки нет, LEFT сохранит событие и вернёт NULL в правых полях. Без LEFT такая строка пропадёт. Для проверки выведите обе временные метки явно. И отдельно учитывайте, когда запись реально стала доступна: старое время события не спасёт от утечки, если сама запись поступила позже. ASOF задаёт правило сопоставления, а не проверяет всю историю доступности данных. ASOF JOIN в DuckDB 📍 Навигация: Вакансии • Задачи • Собесы Библиотека дата-сайентиста

📌 Один курс — хорошее вложение в себя. Два по той же цене — ещё лучше. В Proglib Academy действует акция: покупаешь один кур
📌 Один курс — хорошее вложение в себя. Два по той же цене — ещё лучше. В Proglib Academy действует акция: покупаешь один курс, а второй получаешь в подарок. Например, можно совместить два направления по работе с ИИ:
💥 ИИ для разработчиков — применение нейросетей в повседневной разработке: работа с кодом, тестирование и ревью. 💥 Разработка ИИ-агентов — архитектура агентов и создание собственных AI-решений.
📍 Разница в цене — почти 50 тысяч рублей. Можно освоить больше, не выходя за рамки запланированного бюджета. А если тебе интереснее Python, алгоритмы, backend или DevOps — выбирай другую пару курсов из каталога. Акция действует до 31 октября включительно ⏳ ⏮️ Пора прокачать свой стек

Модель училась на log(y). Что вернёт predict? Обучили регрессию на логарифме целевой переменной, а прогноз сравнили с исходными суммами. Код может отработать без ошибки, хотя шкалы уже разные. В scikit-learn есть TransformedTargetRegressor: он преобразует y перед обучением и применяет обратное преобразование к прогнозам. Для логарифма это пара func=np.log и inverse_func=np.exp. Поэтому predict возвращает результат в исходной шкале. Прямое и обратное преобразования хранятся вместе с моделью. Их не приходится вручную повторять в каждом месте, где нужен прогноз. Но обычный log требует строго положительных значений y. Есть и статистический нюанс: exp от среднего в логарифмической шкале обычно не равно среднему в исходной. Обёртка возвращает прогноз в нужных единицах, но сама по себе не устраняет это смещение и не обещает роста качества. Проверяйте метрику в той шкале, в которой будете использовать результат. Преобразование целевой переменной 📍 Навигация: Вакансии • Задачи • Собесы Библиотека дата-сайентиста

Как Polars убирает лишнюю работу из запроса Нужно посчитать сумму покупок по пользователям из одной страны. В исходной таблице десятки колонок. Зачем тащить их все до финальной группировки? Lazy API Polars позволяет оптимизировать план до выполнения. Два полезных механизма работают ближе к чтению данных: — predicate pushdown переносит фильтрацию как можно раньше. В нашем примере это условие по стране — projection pushdown оставляет нужные колонки: идентификатор пользователя, сумму и страну для фильтра Колонка страны нужна, даже если её не будет в результате. Оптимизатор учитывает не только финальный список полей, но и то, что требуется промежуточным операциям. Выигрыш зависит от источника и плана. Ранний фильтр не обязательно означает, что движок физически прочитает меньше байтов. Но сам вопрос полезный: какие данные действительно нужны для результата и на каком этапе можно отбросить остальные? Оптимизации Lazy API Polars 📍 Навигация: Вакансии • Задачи • Собесы Библиотека дата-сайентиста

Почему три значимых результата превращаются в два Проверили четыре гипотезы и получили p-value 0.001, 0.01, 0.04, 0.2. По отдельности первые три проходят порог 0,05. После поправки Benjamini–Hochberg значения станут 0.004, 0.02, 0.0533…, 0.2. Останутся первые две. В statsmodels такую поправку делает multipletests с явно заданным method="fdr_bh". По умолчанию используется Holm–Sidak, это другая процедура. BH контролирует FDR: ожидаемую долю ложных отклонений среди всех отклонённых гипотез. Если отклонений нет, долю считают нулевой. Это не вероятность ошибки каждой отдельной находки. Контроль FWER, например методом Bonferroni, решает другую задачу: ограничивает вероятность хотя бы одного ложного отклонения в семействе. У BH есть условия применимости. Для независимых тестов с корректными p-value контроль FDR обеспечивается, но переносить его на любую зависимость нельзя. И поправку нужно применять ко всему выбранному семейству проверок, а не только к удачным результатам. Методы и параметры multipletests 📍 Навигация: Вакансии • Задачи • Собесы Библиотека дата-сайентиста

😎 Выбираешь один курс, второй получаешь бесплатно. Баг? Нет, акция! До 31 октября в Proglib Academy можно выбрать два курса
😎 Выбираешь один курс, второй получаешь бесплатно. Баг? Нет, акция! До 31 октября в Proglib Academy можно выбрать два курса и заплатить только за один. Например, можно совместить:
💥 ИИ для разработчиков — применение нейросетей в повседневной разработке: работа с кодом, тестирование и ревью. 💥 Разработка ИИ-агентов — архитектура агентов и создание собственных AI-решений.
Вместе курсы стоят 108 000 ₽, но по акции оба обойдутся в 59 000 ₽. Экономия — 49 000 ₽ 🔥 Интересуют Python и ИИ или алгоритмы и архитектура? Можно выбрать любые два курса из каталога. Акция действует до 31 октября включительно ⏳ ⏬ Собрать свой учебный билд

Antifraud Scientist в Higgsfield AI Higgsfield AI — быстрорастущая AI-компания. За 18 месяцев с запуска она вышла на $1B ARR. Чем предстоит заниматься — Разработкой антифрод-модели. Контекст задачи: — Более 6 млн генераций в день. Каждая мошенническая генерация расходует реальные GPU, поэтому модель должна останавливать абьюз до того, как будут потрачены вычислительные ресурсы. — Противник адаптируется за считаные дни: фермы из сотен аккаунтов, перепродажа доступа, автоматизированный сбор промобонусов. Система должна выдерживать эту гонку. Требования — От 3 лет опыта в DS/ML, Python и SQL, модели в production. — Опыт работы с бустингами, дисбалансом классов и графами связей. — Умение оценивать модель через предотвращённые потери и стоимость ложных блокировок. — Готовность разбирать кейсы вручную и собирать сигналы из сырых событий, платежей и поведения пользователей. — Самостоятельность: от первой гипотезы до работающего скоринга, мониторинга и обновления модели. — Готовность работать 6 дней в неделю. Условия — Офис в Алматы. — Полная поддержка релокации (финансовая и организационная). — Зарплата $100–350 тыс. в год. Откликнуться: @didarnrkr

Один seed на все процессы: как случайно повторить выборки Если каждый процесс создаст одинаковый генератор NumPy с одним seed и выполнит одинаковые случайные операции, он получит ту же последовательность. Восемь запусков bootstrap могут оказаться восемью копиями одного запуска. Для отдельных потоков в NumPy есть SeedSequence.spawn. Создайте один родительский SeedSequence, получите нужное число дочерних и передайте каждой задаче свой. Из каждого дочернего seed создаётся отдельный Generator. В начальное состояние смешиваются исходный seed и положение в дереве. Документация описывает полученные потоки как независимые с очень высокой вероятностью, без абсолютной гарантии. Простое сложение root_seed + worker_id тоже неудобно: если в следующем эксперименте увеличить root_seed на единицу, часть seed повторится. А для воспроизводимости со spawn сохраняйте не только исходный seed, но и соответствие дочерних потоков логическим задачам. Параллельные генераторы в NumPy 📍 Навигация: Вакансии • Задачи • Собесы Библиотека дата-сайентиста

Что именно перемешивает перестановочный тест Есть два замера одних и тех же объектов: до изменения и после. Если смешать все значения в одну кучу, связь между замерами потеряется. Получится тест другой гипотезы. В scipy.stats.permutation_test за это отвечает permutation_type: — independent заново распределяет объединённые наблюдения по группам. Подходит для независимых выборок, размеры могут различаться — samples меняет местами значения внутри пар. Для двух замеров каждого объекта сами пары сохраняются — pairings переставляет соответствия между наблюдениями, оставляя значения в своих выборках. Так проверяют, например, случайность связи между x и y Для дизайна «до/после» может подходить samples, если при нулевой гипотезе обмен значений внутри пары допустим. Совпадение индексов в таблицах ещё не делает данные парными. Сначала определите, какие перестановки разрешает дизайн эксперимента. Увеличение их числа не исправит неверную схему перемешивания. Три режима в документации SciPy 📍 Навигация: Вакансии • Задачи • Собесы Библиотека дата-сайентиста

📊 Дрейфа не нашли. А пропуски проверили? Представьте: распределение значений признака почти не изменилось, но половина новых строк теперь приходит с NULL. Один отчёт о дрейфе может не показать эту проблему. В Evidently стандартные drift-проверки сравнивают reference и current датасеты. Перед сравнением из соответствующих колонок отфильтровываются пустые и бесконечные значения. Поэтому сами тесты по умолчанию не реагируют на рост числа пропусков. Что проверять отдельно: — долю NULL по важным колонкам; — полностью пустые признаки; — изменения распределений; — качество модели, когда появилась разметка. Изменившееся распределение не равно доказанному падению качества. А отсутствие дрейфа не равно здоровым данным. Эти сигналы отвечают на разные вопросы — и в мониторинге нужны рядом. 🔗 Как Evidently проверяет data drift 📍 Навигация: Вакансии • Задачи • Собесы 🐸 Библиотека дата-сайентиста

📌 Учебник по deep learning, в котором можно запускать главы В Deep Learning for Coders with fastai and PyTorch текст и код живут в Jupyter notebooks. Книгу можно бесплатно читать онлайн, а главы — открывать в Colab и выполнять примеры. На странице собраны отдельные ноутбуки про: — обучение моделей для изображений; — табличные данные и collaborative filtering; — NLP; — оптимизаторы, callbacks и устройство обучения. Для чтения без запуска есть nbviewer. А если хочется понять механизм, полезнее изменить данные или параметр в ноутбуке и проверить, как меняется результат. Это давно доступный учебный материал, а не новый релиз. Примеры стоит сверять с версиями библиотек; бесплатный Colab также не обещает неограниченные вычисления. Зато формат позволяет разбирать одну главу и сразу экспериментировать с кодом. 🔗 Главы книги в Colab и nbviewer 📍 Навигация: Вакансии • Задачи • Собесы 🐸 Библиотека дата-сайентиста

🧹 Cleanlab: сначала проверьте, откуда взялись вероятности Cleanlab помогает искать подозрительную разметку по предсказаниям модели. Но если модель уже обучалась на этих же примерах, её уверенность может скрыть ошибки: знакомый датасет она нередко просто запоминает. Для поиска проблем во всём наборе нужны out-of-fold вероятности: — разбить данные на фолды; — обучить модель на всех фолдах, кроме одного; — получить вероятности для отложенного фолда; — повторить и собрать предсказания для каждой строки. Тогда ни один пример не оценивается моделью, которая видела его при обучении. Для совместимого со scikit-learn классификатора такие предсказания можно получить через cross_val_predict с method="predict_proba". Подозрительная метка — повод проверить пример, а не автоматически переписать ответ на вариант модели. Иначе исправление разметки может просто перенести в датасет её собственные ошибки. 🔗 Руководство по out-of-sample predictions 📍 Навигация: Вакансии • Задачи • Собесы 🐸 Библиотека дата-сайентиста

🧠 Можно ли увидеть неуверенность LLM до конца ответа? Уверенный тон ответа ещё не означает, что модель права. Авторы U-Space предлагают смотреть на внутренние состояния LLM и отслеживать, как меняется сигнал неопределённости по ходу генерации. Они берут смысловые ориентиры для сомнения и уверенности, переводят их направления в пространство скрытых состояний и строят небольшое подпространство. U-Lens проецирует туда состояние каждого токена: получается карта, которую можно изучать отдельно или свести к одному показателю. По описанию авторов, метод не требует меток правильности, дополнительного обучения и повторной генерации ответа. Они также проверяют, не объясняется ли качество сигнала просто длиной текста. Это исследовательский препринт, а не готовый универсальный детектор галлюцинаций. Для применения нужен доступ к внутренним состояниям модели; по одному тексту ответа такую проверку не повторить. 🔗 Препринт U-Space и ссылка на код 📍 Навигация: Вакансии • Задачи • Собесы 🐸 Библиотека дата-сайентиста

🧑‍💻 Какие навыки помогают вам в разработке в 2026 году? Что вы чаще используете в работе? В каких задачах помогает ИИ, а где проще справиться самостоятельно? Мы решили собрать портрет современного разработчика — и приглашаем вас поделиться своим опытом. Расскажите, какие навыки вам пригодились и как вы используете ИИ. Если обходите его стороной, нам тоже интересно узнать почему. Опрос анонимный и займёт около 5 минут. Результаты опубликуем в общем большом исследовании. 👉 Пройти опрос

☔️ Планы на выходные снова испортила погода? У нас есть план получше. Выходные — хороший повод заняться тем, на что вечно не хватает времени. Например, освоить новый навык или углубиться в знакомую тему. 📍 В Proglib Academy покупаешь один курс, а второй получаешь в подарок. Платишь только за один! Вот несколько сочетаний: 💥 ⁠Разработка ИИ-агентов + ⁠Python 💥 ⁠Machine Learning + ⁠Математика для Data Science Можно выбрать и другие курсы — под свои интересы и цели. ⏳ Акция действует до 18 октября. ➡️ ⁠Выбрать курсы и оставить заявку

🧹 Pandera: как собрать ошибки датасета в один отчёт В выгрузке нет нужной колонки, числа приехали строками, а одна проверка диапазона не проходит. Если валидатор остановится на первой ошибке, остальные обнаружатся только после очередного исправления. В Pandera можно описать схему DataFrame: типы, обязательные колонки и проверки значений. Параметр lazy=True собирает ошибки проверки вместо остановки на первом нарушении.
try:
    schema.validate(df, lazy=True)
except pa.errors.SchemaErrors as exc:
    print(exc.failure_cases)
Здесь schema — заранее заданная схема, df — данные, а pa — pandera.pandas. В failure_cases можно посмотреть, какие проверки и значения не прошли. Такой отчёт удобен на входе в пайплайн: сначала понять масштаб проблем, затем решать, что исправлять или отклонять. Сам режим валидации данные автоматически не чинит. 🔗 Примеры lazy validation 📍 Навигация: Вакансии • Задачи • Собесы 🐸 Библиотека дата-сайентиста

Приходится ли вам копипастить данные и какие именно, когда переходите из одной нейросети в другую?
Anonymous voting

Общая папка для работы Claude Code и Codex Луи-Франсуа Бушар собрал заметки, инструкции-скиллы, скрипты и итоги встреч в Obsi
Общая папка для работы Claude Code и Codex Луи-Франсуа Бушар собрал заметки, инструкции-скиллы, скрипты и итоги встреч в Obsidian. Его связка устроена так: Папка хранит исходные материалы и решения ↓ Индекс указывает, где искать данные для задачи ↓ Claude Code планирует работу ↓ Codex выполняет задачи по его вызову В описании этого рабочего процесса Бушар объясняет, зачем даёт агенту сведения для конкретной задачи. Начать предлагает с общей папки, короткого индекса и одного повторно используемого скилла. #ии #инструменты

🗂 Как DuckDB пропускает ненужные Parquet-файлы Если данные лежат в папках year=2026/month=10/, значения в пути можно использовать как колонки. Это Hive partitioning: не обязательно записывать год и месяц в каждую строку файла.
SELECT *
FROM read_parquet(
  'orders/*/*/*.parquet',
  hive_partitioning = true
)
WHERE year = 2026 AND month = 10;
DuckDB проталкивает фильтр по ключам партиций к чтению файлов. Для такого запроса папки других месяцев можно пропустить, а не загружать весь набор и отсеивать строки после чтения. Это полезно для выгрузок событий, заказов и логов, если запросы регулярно ограничены датой. Но разбиение помогает именно по ключам папок: фильтр по сумме заказа сам по себе не означает, что ненужные месяцы исчезнут из чтения. 🔗 Документация DuckDB 📍 Навигация: Вакансии • Задачи • Собесы 🐸 Библиотека дата-сайентиста

💡 Почему порог 0,5 не обязан подходить вашей модели Модель оценила вероятность положительного класса в 0,4. Ответ «нет» получается не из самой вероятности, а из правила, которое сравнивает её с порогом. В бинарной классификации scikit-learn обычно использует 0,5 для вероятностей. Но пропущенное событие и ложная тревога могут стоить по-разному. Поэтому порог стоит подбирать под задачу: например, по F1 или своей функции полезности. TunedThresholdClassifierCV делает это через внутреннюю кросс-валидацию. При смене порога вероятности могут остаться прежними, а метки классов и число ошибок — измениться. Важно: не подбирайте порог по финальному тесту. А если используете cv="prefit", не отдавайте для настройки те же данные, на которых обучали модель. Иначе оптимизируете решение под уже знакомые примеры. 🔗 Порог классификации в scikit-learn 📍 Навигация: Вакансии • Задачи • Собесы 🐸 Библиотека дата-сайентиста