Telegram Web
🔹 Фишка Shapiq: Shapley Interactions для машинного обучения

Shapiq — новая библиотека, которая расширяет возможности популярной библиотеки SHAP, добавляя возможность количественного анализа взаимодействий признаков, данных или слабых моделей в ансамблях. Это позволяет глубже понять, как модель принимает решения.

Удобный способ визуализации взаимодействий признаков (до второго порядка) — графовые диаграммы. На таком графике:

🔹 Узлы представляют значимость отдельных признаков.
🔹 Ребра показывают силу их взаимодействий.
🔹 Размер узлов и рёбер пропорционален абсолютным значениям атрибуций и взаимодействий.

Пример кода:
shapiq.network_plot(first_order_values=interaction_values.get_n_order_values(1),second_order_values=interaction_values.get_n_order_values(2))

# или
interaction_values.plot_network()


🔗 Репозиторий: https://clc.to/JSHqLA

Библиотека дата-сайентиста #буст
1👍1🔥1
🔍 Концепция дня: LIME в ML

Прогнозировать — круто, но понимать, почему модель приняла решение, ещё важнее!

LIME (Local Interpretable Model-agnostic Explanations) помогает объяснять работу моделей, даже если они сложные.

Как это работает?
1. Берём данные и их предсказание.
2. Генерируем похожие данные, меняя признаки.
3. Получаем предсказания модели.
4. Обучаем простую линейную модель, чтобы выделить важные признаки.

Для чего подходит?
✔️ Таблицы → добавляем шум к непрерывным признакам или меняем категориальные значения.
✔️ Текст → случайным образом удаляем слова.
✔️ Изображения → создаём суперпиксели и отключаем их для оценки вклада.

Библиотека дата-сайентиста #буст
5🔥2👍1
This media is not supported in your browser
VIEW IN TELEGRAM
А вы говорите «спасибо» ChatGPT?

❤️ — Конечно, вдруг пощадит при восстании машин.
— Нет, пусть учится писать короче, понятнее, как человек.

Библиотека дата-сайентиста #развлекалово
349😁4💯1
🎉 Поздравляем с 8 марта

Сегодня отмечаем вклад девушек-разработчиков, аналитиков, тестировщиков, тимлидов и всех, кто влюблён в код. Без вас IT не было бы таким, каким мы его знаем. С праздником, коллеги 💐

Женщины оставили огромный след в истории IT. Если вам кажется, что программирование — это исключительно «мужская территория», взгляните, вот лишь несколько легендарных женщин:

🔹 Ада Лавлейс — автор первой компьютерной программы ещё в 19 веке.
🔹 Грейс Хоппер — создала первый компилятор и популяризировала термин «баг».
🔹 Барбара Лисков — её принцип Liskov Substitution является основой ООП, в том числе в Java.
🔹 Эдит Кларк — первая женщина-инженер, внесшая вклад в вычислительные методы в энергетике.
🔹 Маргарет Гамильтон — разработала софт для посадки «Аполлона-11» на Луну.

А это только малая часть. В статье собраны ещё больше вдохновляющих историй.

🔗 Подробнее в статье

🐸 Библиотека джависта
Please open Telegram to view this post
VIEW IN TELEGRAM
8👍2🔥1🥰1🤩1
🔎 Wordsearch: узнаем, кто самый внимательный

Готовы проверить свои знания в Data Science? В этой головоломке спрятаны 8 терминов из мира DS.

Правила просты:

— Найдите 8 слов в сетке (слова идут по горизонтали)
— Напишите в комментариях, какие слова вы нашли
— Объясните один из терминов так, чтобы даже джун понял

🏆 Кто первым найдет все 8 слов и объяснит хотя бы один термин — получит почетный статус DS Guru на неделю!

Погнали 👇

Библиотека дата-сайентиста #междусобойчик
2👍2
📰 Главные новости недели в AI & Data Science

🔹 Google Colab представил Data Science агента — теперь он умеет создавать целые ноутбуки, а не просто фрагменты кода.

🔹 OpenAI инвестирует $50M в университеты — программа NextGenAI направлена на развитие ИИ-исследований.

🔹 Премия Тьюринга за RL — главная награда в CS присуждена за вклад в обучение с подкреплением.

🔹 Новая статья «Superintelligence Strategy» — топовые ML-исследователи предлагают стратегию безопасности ИИ.

🔹 Hazy Research ускорили Multiheaded Latent Attention на 30% — быстрее, чем DeepSeek!

🔹 Новая книга «Foundations of Large Language Models» — глубокий разбор основ LLM, от предобучения до выравнивания.

🔹 Mistral AI представила OCR API точное извлечение данных из сложных документов.

🔹 Alibaba Qwen представила QwQ-32B — конкурента DeepSeek.

Как вам новости? Что впечатлило больше всего?

Библиотека дата-сайентиста #свежак
👍41
📸 Как улучшить качество YOLO-детекции?

Наш подписчик задал этот вопрос, и мы нашли подробный гайд на тему. Вот основные моменты:

🎯 Данные:
• Большой размер тренировочного датасета → помогает модели адаптироваться к разным условиям.
• Точность разметки → корректная аннотация повышает чувствительность модели к деталям.
• Выбор фона → релевантные фоны уменьшают ложные срабатывания.

🎯 Размер изображений и батч:
• Крупные изображения → могут повысить точность, но требуют больше вычислений.
• Маленький батч → может замедлить обучение, но поможет избежать проблем с памятью.

🎯 Эпохи и гиперпараметры:
Слишком мало эпох – недообучение, слишком много – переобучение.

🎯 Что еще можно сделать:
• Гистограммное выравнивание → улучшает изображения.
• Извлечение признаков → помогает модели лучше понимать объекты.
• Комбинация алгоритмов → можно объединить YOLO с другими моделями.

Хотите углубиться в тему? Вот подробная статья: https://clc.to/jDz1DQ
🤔 А что бы вы добавили к этому списку?

Библиотека дата-сайентиста #междусобойчик
💯31👍1😁1
🚀 Релиз FireDucks 1.2.4

Новая версия FireDucks была релизнута 7 марта:
• Удалены fallback-режимы для DataFrameGroupBy.rank() (методы «first» и «dense»).
• Оптимизация: pushdown для groupby с выбором столбцов.
• Поддержка агрегации Series с использованием словаря.

Что такое FireDucks?
FireDucks ускоряет pandas без изменений в коде. Преимущество — мультипоточность для работы на многоядерных процессорах и JIT-компиляция, которая оптимизирует код на лету.

Особенности:
• Мультипоточность — использует многоядерные процессоры для ускорения выполнения.
• JIT-компиляция — встроенный компилятор ускоряет код в реальном времени.
• Полная совместимость с pandas API — никаких изменений в вашем коде, только замена импорта.
• Автоматическое исполнение — программное решение с функциональностью import-hook, которое само заменяет импорт pandas на FireDucks.

А вы уже использовали FireDucks?
❤️ — да
🤔 — нет

Ссылка на FireDucks библиотеку: https://clc.to/xAWVzQ

Библиотека дата-сайентиста #свежак
🤔63👍1
🐼 How to: объединять таблицы в Pandas

Разберём основные виды соединений DataFrame:

Full Outer Join (Полное внешнее соединение):
Возвращает все записи из обеих таблиц. Если нет совпадения, подставляется NaN.

import pandas as pd

df1 = pd.DataFrame({
'ID': [1, 2, 3],
'Name': ['Alice', 'Bob', 'Charlie']
})

df2 = pd.DataFrame({
'ID': [3, 4, 5],
'Age': [23, 34, 45]
})

full_outer = pd.merge(df1, df2, on='ID', how='outer')
print(full_outer)


Inner Join (Внутреннее соединение):
Возвращает только совпадающие записи из обеих таблиц.

inner = pd.merge(df1, df2, on='ID', how='inner')
print(inner)


Left Outer Join (Левое соединение):
Берёт все записи из левой таблицы и только совпадающие из правой. Остальные заполняются NaN.

left_outer = pd.merge(df1, df2, on='ID', how='left')
print(left_outer)


Right Outer Join (Правое соединение):
Аналогично левому соединению, но теперь берём все записи из правой таблицы.

right_outer = pd.merge(df1, df2, on='ID', how='right')
print(right_outer)


Библиотека дата-сайентиста #буст
👍91🔥1
📊💼 Ситуация на рынке труда в IT в 2025 году: результаты опроса айтишников

Помните мы проводили опрос про рабочие моменты? Пришло время делиться результатами!

В нашем исследовании приняли участие более 1000 IT-специалистов различных направлений. Работа или личная жизнь? Удалёнка или офис? Заменил ли всех ИИ?

➡️ Ответы в подробном отчёте

А какие изменения на IT-рынке замечаете вы? Делитесь в комментариях! 👇

🐸Библиотека devops'a
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21🔥1
📝 Структуры данных: ТОП-30 вопросов и ответов для собеседований в 2025 году

Техническое собеседование на позицию разработчика, дата-сайентиста и ML-инженера часто включает вопросы по структурам данных и связанным с ними алгоритмами.

В нашей статье мы рассмотрим базовые и продвинутые темы, разберем типичные задачи и обсудим оптимальные способы их решения.

📄 Прочитайте статью и укрепите свои знания https://proglib.io/sh/1uYAygzIxr

Библиотека питониста
😁2👍1
🔍 Команда дня: query() в Pandas

Метод df.query() принимает строку с условием для фильтрации данных.

🔹 Важные моменты:
• Строковые значения должны быть заключены в кавычки внутри условия.
• Можно комбинировать несколько условий с & (И) или | (ИЛИ).

🔹 Пример использования:
import pandas as pd

# Создаём DataFrame
df = pd.DataFrame({
'Product': ['Apple', 'Banana', 'Cherry'],
'Price': [0.4, 0.8, 0.3],
'Country': ['United Kingdom', 'USA', 'United Kingdom']
})

# Фильтруем товары дешевле 0.5 и из UK
filtered_df = df.query('Price < 0.5 & Country == "United Kingdom"')

print(filtered_df)


🔹 Вывод:
  Product  Price         Country
0 Apple 0.4 United Kingdom
2 Cherry 0.3 United Kingdom


🔹 Преимущества query():
• Более читаемый и краткий код по сравнению с df[(df['Price'] < 0.5) & (df['Country'] == 'United Kingdom')]
• Поддержка переменных через @var_name
• Удобно для сложных фильтраций

Библиотека дата-сайентиста #буст
👍131
Forwarded from .ml
Ранее мы обсуждали с вами RoPE, а теперь поговорим о его модификациях. Собрали много интересного, поэтому будет целых три поста по этой теме. Enjoy!

Для начала напомним, что Positional Encoding (кодирование позиций слов/токенов) нужен, чтобы передать модели или трансформеру информацию о позициях слов — относительную или же абсолютную.


Как развивалось позиционное кодирование:

📆 2017 год
С появлением ванильного трансформера позиции токенов кодировались тригонометрической функцией, значение которой зависело от позиции и просто прибавлялось к эмбеддингу соответсутвующего слова.

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

Минусы — не очень работает на длинных последовательностях, да и вообще не очень хорошо работает.

📆 2018 год
Потом появился гугловский BERT, а вместе с ним новый подход позиционного кодирования: авторы предложиди выкинуть тригонометрию и вместо этого добавить в модель ещё один обучаемый слой nn.Embedding — такой же, как для получения эмбеддингов слов. Он должен кодировать — то есть, превращать в вектор — позицию токена.

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

В это же время впервые появилась идея о том, что нам важны не столько абсолютные позиции слов, сколько относительные. Авторы статьи решили кодировать не абсолютную позицию, а только относительную (Relative Position Encoding, или RPE), то есть близость каждой пары токенов. Здесь же появилась идея, что позицонное кодирование стоит добавлять не в момент создания эмбеддингов слов, а на этапе Attention, добавляя знание о позициии в queries и keys.
Чек-лист: как структурировать Data Science проект

📁 data-science-project/
├── 📁 data/
│ ├── 📁 raw/
│ ├── 📁 processed/
│ └── 📁 external/
├── 📁 notebooks/
│ ├── 📄explore_data.ipynb
│ ├── 📄
│ ├── 📄 traine.ipynb
│ └── 📄 evaluate.ipynb
├── 📁 src/
│ ├── 📁 data/
│ │ ├── 📄 load_data.py
│ │ ├── 📄 process_data.py
│ │ └── 📄 split_data.py
│ ├── 📁 features/
│ │ └── 📄select_feature.py
│ ├── 📁 models/
│ │ ├── 📄 train.py
│ │ ├── 📄 predict.py
│ │ └── 📄 evaluate.py
│ ├── 📁 visualizations/
│ │ └── 📄 plot_results.py
├── 📁 tests/
│ ├── 📄 test_models.py
│ └── 📄 test_visualise.py
├── 📁 reports/
│ ├── 📁 figures/
│ └── 📄 report.md
├── 📁 docs/
│ └── 📄 README.md
├── 📄 requirements.txt
├── 📄 .gitignore
└── 📄 LICENSE

Пояснение основных директорий:

1️⃣ data/: Хранит данные на разных этапах (необработанные, обработанные, внешние).

2️⃣ notebooks/: Ноутбуки для пошагового эксперимента (например, исследование данных, создание признаков).

3️⃣ src/: Python скрипты для модульных операций:

data/: Загрузка, очистка и разделение данных.

features/: Создание и отбор признаков.

models/: Обучение модели, предсказания и оценка.

visualizations/: Генерация графиков и визуальных выводов.

4️⃣ tests/: Юнит-тесты для проверки работы скриптов и пайплайнов.

5️⃣ reports/: Финальные отчёты, графики и визуализации.

6️⃣ docs/: Документация проекта и README.

Библиотека дата-сайентиста #буст
👍16🔥21
Вам нравится читать контент на этом канале?

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

Следуйте 3 простым шагам, чтобы сделать это:

1) Нажмите на ссылку: Вход
2) Пополняйтесь удобным способом
3) Размещайте публикацию

Если тематика вашего поста подойдет нашему каналу, мы с удовольствием опубликуем его.
Снижение размерности — это потеря информации?

📢 Один из подписчиков поделился своей историей.

Ему дали задачу: разобраться в данных, выделить важные признаки и выявить зависимости. В поиске решений он предложил использовать t-SNE, PCA или UMAP для первичного анализа.

Но сразу же услышал в ответ:

Снижение размерности? Это же потеря информации!

Он хотел объяснить свою точку зрения и сказать: «Я понимаю этот аргумент, но...» — но разговор быстро свернул в другую сторону.


💭 А как бы вы ответили в такой ситуации? Как лучше объяснить пользу этих методов?

P.S. Если хотите задать вопрос, заполните нашу гугл-форму. Это займет 5 минут.

Библиотека дата-сайентиста #междусобойчик
👍32
👍 Что посмотреть: мониторинг и аналитика ML-моделей

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

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

Библиотека дата-сайентиста #буст
👍31
Нужна ли математика программисту

Можно ли стать разработчиком, если в школе ненавидел математику? А если наоборот — тащился от алгебры и геометрии, но кодить не умеешь? Эта статья раскладывает всё по полочкам: где без математики никуда, а где можно и без неё.

➡️ Что внутри:

✓ Почему все считают, что программисты — математики

✓ В каких сферах разработки можно вообще не знать математику

✓ Где хватит готовых библиотек, а где придётся разбираться в формулах

✓ Какие области программирования требуют мощного математического бэкграунда

✓ Что делать, если математика — это боль, но хочется освоить ML или Data Science

✓ Топ книг, которые помогут понять и даже полюбить математику

🔵 Чтобы знать математику, забирайте наш курс → «Математика для Data Science»

📎 Читать статью

Proglib Academy
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21🔥1
2025/07/09 18:49:30
Back to Top
HTML Embed Code: