tgoop.com »
United States »
Библиотека дата-сайентиста | Data Science, Machine learning, анализ данных, машинное обучение » Telegram Web
Выбросы могут быть ошибками сбора, а могут — ключом к инсайту. Главное — заметить их вовремя и обработать правильно.
🎯 Вот промт, чтобы системно подойти к проблеме:
У меня есть датафрейм с числовыми признаками. Помоги:
– Найти выбросы с помощью стандартных методов: Z-оценка, IQR, Tukey fences, modified Z-score
– Построить визуализации: boxplot, scatter, histogram, isolation forest
– Разделить признаки по плотности выбросов
– Предложить: удалять выбросы, каппировать, логарифмировать, заменять
– Проверить, влияют ли выбросы на корреляции и важность признаков
– Обнаружить мультипризнаковые выбросы (multivariate outliers) с помощью: Mahalanobis distance, One-Class SVM, Isolation Forest
Посоветуй стратегии для ML:
– оставлять как есть
– обработать в препроцессинге
– использовать модели, устойчивые к выбросам (например, robust regression)
Библиотека дата-сайентиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍2
Сейчас большинство представлений об ИИ ограничиваются одним агентом — моделькой, которая что-то предсказывает, генерирует или классифицирует.
Но реальный прорыв начинается, когда этих агентов становится несколько.
Когда они начинают взаимодействовать друг с другом.
Когда появляется координация, распределение ролей, память, планирование — всё это и есть мультиагентные системы (MAS).
— Microsoft делает язык DroidSpeak для общения между LLM
— Open Source-фреймворки вроде LangChain, AutoGen, CrewAI, LangGraph — бурно развиваются
— компании, включая МТС, уже применяют MAS в боевых задачах
🎓 На курсе мы подходим к этому практично:
Именно на третьем уроке вы впервые собираете не просто «умного бота», а живую систему из агентов, которая работает вместе — как команда.
Причём по-настоящему: врач, SQL-аналитик, travel-планировщик, Python-генератор, поисковик.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1😁1
😠 Как заставить ИИ отвечать актуально и без «галлюцинаций»
Сначала она отвечала нормально, а потом вдруг выдала что-то абсолютно неуместное.
Знакомо?
Так называемые галлюцинации — это частое поведение генеративных языковых моделей (LLM), при котором они создают правдоподобный, но неточный или выдуманный текст.
❗️ Проблема особенно критична, когда мы используем ИИ-модели в задачах, где от качества ответа зависят решения — будь то медицина, право или бизнес.
⏭ Почему LLM «галлюцинируют»
Дело не столько в том, как они генерируют текст, а в том, на чём они его основывают.
После обучения модель «застывает» в той информации, на которой её натренировали. Чтобы она узнала что-то новое — её нужно переобучить, а это дорого и долго.
⏭ Встречайте RAG — Retrieval-Augmented Generation
Решение пришло в виде гибридной архитектуры, которая совмещает два мира:
1. Генеративную модель (например, GPT), которая хорошо формулирует текст.
2. Поисковый модуль, который может «подтягивать» актуальную информацию из внешних источников.
✅ Эта комбинация позволяет получать гладкий, связный текст, основанный на актуальных данных, даже если сама модель о них не знала изначально.
⏭ Как работает RAG
1. Модуль поиска (retrieval): он ищет релевантные документы по запросу пользователя — в базе знаний, интернете или другом хранилище.
2. Модуль генерации: LLM использует найденные документы как контекст и создаёт ответ. Таким образом, текст создаётся не «из головы» модели, а на основе найденной информации.
⏭ Пример в реальной жизни
Если вы используете Gemini от Google и спрашиваете про Бруклинский мост, внизу видны источники, откуда модель взяла информацию. Это — типичная реализация RAG.
⏭ Как модель находит нужные документы
Обычно используется метод Dense Passage Retrieval (DPR) — он ищет по смыслу, а не по ключевым словам, в отличие от старых методов вроде BM25 или TF-IDF.
Но у него тоже есть минусы:
— Он может «притягивать» нерелевантные документы.
— Иногда работает хуже, если нужная информация не была в изначальном обучении DPR.
⏭ Производительность
Минус RAG — каждый запрос требует два шага:
1. Найти документы.
2. Сгенерировать ответ.
Это может быть дорого по вычислениям, особенно в реальном времени. Чтобы ускорить:
— Применяют упрощённые модели (model pruning).
— Используют дистилляцию знаний (knowledge distillation) — переносят знания большой модели в компактную.
Библиотека дата-сайентиста #буст
«Модель начала галлюцинировать…»
Сначала она отвечала нормально, а потом вдруг выдала что-то абсолютно неуместное.
Знакомо?
Так называемые галлюцинации — это частое поведение генеративных языковых моделей (LLM), при котором они создают правдоподобный, но неточный или выдуманный текст.
❗️ Проблема особенно критична, когда мы используем ИИ-модели в задачах, где от качества ответа зависят решения — будь то медицина, право или бизнес.
Дело не столько в том, как они генерируют текст, а в том, на чём они его основывают.
После обучения модель «застывает» в той информации, на которой её натренировали. Чтобы она узнала что-то новое — её нужно переобучить, а это дорого и долго.
Решение пришло в виде гибридной архитектуры, которая совмещает два мира:
1. Генеративную модель (например, GPT), которая хорошо формулирует текст.
2. Поисковый модуль, который может «подтягивать» актуальную информацию из внешних источников.
1. Модуль поиска (retrieval): он ищет релевантные документы по запросу пользователя — в базе знаний, интернете или другом хранилище.
2. Модуль генерации: LLM использует найденные документы как контекст и создаёт ответ. Таким образом, текст создаётся не «из головы» модели, а на основе найденной информации.
Если вы используете Gemini от Google и спрашиваете про Бруклинский мост, внизу видны источники, откуда модель взяла информацию. Это — типичная реализация RAG.
Обычно используется метод Dense Passage Retrieval (DPR) — он ищет по смыслу, а не по ключевым словам, в отличие от старых методов вроде BM25 или TF-IDF.
Но у него тоже есть минусы:
— Он может «притягивать» нерелевантные документы.
— Иногда работает хуже, если нужная информация не была в изначальном обучении DPR.
Минус RAG — каждый запрос требует два шага:
1. Найти документы.
2. Сгенерировать ответ.
Это может быть дорого по вычислениям, особенно в реальном времени. Чтобы ускорить:
— Применяют упрощённые модели (model pruning).
— Используют дистилляцию знаний (knowledge distillation) — переносят знания большой модели в компактную.
Библиотека дата-сайентиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7👍3🤩3
This media is not supported in your browser
VIEW IN TELEGRAM
🔮 Пора перестать верить в магические модели
Иначать их понимать.
📦 InterpretML — мощный open-source фреймворк от Microsoft для интерпретации моделей машинного обучения.
Он объединяет лучшие техники explainability под одной оболочкой:
📝 Обучайте прозрачные модели (
📝 Объясняйте поведение черных ящиков (
📝 Анализируйте как глобальное поведение, так и отдельные предсказания
Зачем вообще объяснять ML-модель:
✔️ Отладка модели: почему она ошиблась в этом примере
✔️ Feature Engineering: какие признаки реально важны, а что мусор
✔️ Фейрность и этика: не дискриминирует ли модель по полу, возрасту, расе
✔️ Регуляции (законы по контролю ИИ): можем ли мы объяснить, почему модель отказала в кредите
✔️ Человеко-машинное доверие: как врач может поверить в диагноз от модели, если не понимает, почему
Установка:
🔥 Холивар: а вообще, нужно ли объяснять ML-модели?
📝 Мнение №1:
📝 Мнение №2:
📝 Мнение №3:
А как вы считаете? Напишите в комментарии или оставьте реакцию:
🔥 — Да, объяснение критично
❤️ — Нет, главное — точность
👍 — Зависит от задачи
💣 Понравился пост? С ваc буст, а с нас больше топового контента!
Библиотека дата-сайентиста #междусобойчик
И
📦 InterpretML — мощный open-source фреймворк от Microsoft для интерпретации моделей машинного обучения.
Он объединяет лучшие техники explainability под одной оболочкой:
glassbox
)blackbox
)Зачем вообще объяснять ML-модель:
Установка:
pip install interpret
# или
conda install -c conda-forge interpret
🔥 Холивар: а вообще, нужно ли объяснять ML-модели?
Зачем? Главное — метрика. Если ROC-AUC 0.97 — модель хороша.
→ Black-box → Profit
Если ты не можешь объяснить — значит, ты не понимаешь. А значит, и модель не готова к продакшену.
Модели должны быть интерпретируемы там, где это критично — медицина, финансы, суд.
В TikTok-рекомендателе — пофиг. В банковском скоринге — нельзя игнорировать.
А как вы считаете? Напишите в комментарии или оставьте реакцию:
🔥 — Да, объяснение критично
❤️ — Нет, главное — точность
👍 — Зависит от задачи
Библиотека дата-сайентиста #междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13❤3🔥2
🎯 SemHash — очистка датасетов с помощью семантического поиска
SemHash — это лёгкий и быстрый инструмент для:
— дедупликации (поиск и удаление дубликатов)
— фильтрации выбросов
— выбора репрезентативных примеров
Работает на базе:
🤖 Model2Vec — генерация эмбеддингов
🤖 Vicinity — быстрый поиск по векторной близости (ANN)
Что умеет SemHash:
🤖 Очистка одного датасета (дубликаты, выбросы, ядро)
🤖 Исключение пересечений между train/test
🤖 Работа с простыми текстами и сложными multi-column датасетами
🤖 Удобный просмотр причин дедупликации и выбросов
Быстрый старт:
Также можно:
— Удалять дубликаты между двумя датасетами (train/test leakage)
— Работать с датасетами QA-формата (
— Использовать
Пример: исключаем утечку между train и test
Почему это удобно:
— Быстро: работает на ANN-поиске
— Гибко: один или два датасета, текст или таблицы
— Пояснимо: можно посмотреть, почему запись считается дубликатом
— Масштабируемо: работает с миллионами записей
— Легковесно: минимум зависимостей
📌 Совет: для больших датасетов (>1M) оставляйте
Библиотека дата-сайентиста #буст
SemHash — это лёгкий и быстрый инструмент для:
— дедупликации (поиск и удаление дубликатов)
— фильтрации выбросов
— выбора репрезентативных примеров
Работает на базе:
Что умеет SemHash:
Быстрый старт:
pip install semhash
from datasets import load_dataset
from semhash import SemHash
texts = load_dataset("ag_news", split="train")["text"]
semhash = SemHash.from_records(records=texts)
deduplicated = semhash.self_deduplicate().selected
filtered = semhash.self_filter_outliers().selected
representative = semhash.self_find_representative().selected
Также можно:
— Удалять дубликаты между двумя датасетами (train/test leakage)
— Работать с датасетами QA-формата (
columns=["question", "context"]
)— Использовать
DataFrame
и кастомные эмбеддингиПример: исключаем утечку между train и test
train = load_dataset("ag_news", split="train")["text"]
test = load_dataset("ag_news", split="test")["text"]
semhash = SemHash.from_records(records=train)
clean_test = semhash.deduplicate(records=test, threshold=0.9).selected
Почему это удобно:
— Быстро: работает на ANN-поиске
— Гибко: один или два датасета, текст или таблицы
— Пояснимо: можно посмотреть, почему запись считается дубликатом
— Масштабируемо: работает с миллионами записей
— Легковесно: минимум зависимостей
📌 Совет: для больших датасетов (>1M) оставляйте
use_ann=True
, это сильно ускоряет работу при высокой точности.Библиотека дата-сайентиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👍1
🤯 Мы больше года строим мультиагентные системы
Грабли, находки, паттерны, эксперименты — всё это накопилось и в какой-то момент стало жалко держать только у себя.
Никита — рассказывает (и показывает) базу: токенизация, LLM, SFT, PEFT, локальный инференс + RAG и как оценивать его качество.
Диана — как строят мультиагентные системы, какие есть паттерны проектирования и библиотеки.
Макс — про инференс в проде + разберет CoPilot, соберет с вами из кусочков свой копайлот, а затем его сломает через prompt injection. // Макс фанат autogen (а если нет — он вас разубедит в своем классном канале)
Финальным аккордом Дима углубится в MCP и соберет несколько кейсов повзрослее.
Курс тут: https://clc.to/47pgYA
Промокод:datarascals действует до 23:59 29 июня
Грабли, находки, паттерны, эксперименты — всё это накопилось и в какой-то момент стало жалко держать только у себя.
Никита — рассказывает (и показывает) базу: токенизация, LLM, SFT, PEFT, локальный инференс + RAG и как оценивать его качество.
Диана — как строят мультиагентные системы, какие есть паттерны проектирования и библиотеки.
Макс — про инференс в проде + разберет CoPilot, соберет с вами из кусочков свой копайлот, а затем его сломает через prompt injection. // Макс фанат autogen (а если нет — он вас разубедит в своем классном канале)
Финальным аккордом Дима углубится в MCP и соберет несколько кейсов повзрослее.
Курс тут: https://clc.to/47pgYA
Промокод:
❤2😁1
🎯 9 метрик расстояния, которые должен знать каждый Data Scientist
Расстояние — ключ к алгоритмам машинного обучения: от кластеризации до рекомендаций. Вот что действительно используют на практике:
Евклидово расстояние
🏮 √(Σ (xi − yi)²)
🏮 KNN, K-Means, SVM
🏮 Геометрическая дистанция
🏮 Обязательно нормируйте данные
Манхэттенское расстояние
🏮 Σ |xi − yi|
🏮 Высокие размерности
🏮 L1-регуляризация, деревья решений
Расстояние Минковского
🏮 (Σ |xi − yi|ᵖ)¹/ᵖ
🏮 Универсальное: p=1 → Манхэттен, p=2 → Евклид
🏮 Гибкость для вариаций KNN/K-Means
Косинусное расстояние
🏮 A·B / (| |A | | × | | B | |)
🏮 NLP, сравнение текстов
🏮 Оценивает угол между векторами
🏮 Отлично для разреженных данных
Расстояние Жаккара
🏮 1 − (|A ∩ B| / |A ∪ B|)
🏮 Бинарные/категориальные данные
🏮 Рекомендательные системы
Расстояние Хэмминга
🏮 Кол-во несовпадающих позиций
🏮 NLP, обнаружение ошибок, ДНК
🏮 Только для строк одинаковой длины
Расстояние Махаланобиса
🏮 (x − μ)ᵀ S⁻¹ (x − μ)
🏮 Учитывает корреляции
🏮 Поиск аномалий, классификация
Расстояние Чебышёва
🏮 max(|xi − yi|)
🏮 Захватывает наибольшую разницу
🏮 Сеточные модели, алерты
Bray-Curtis
🏮 Σ |xi − yi| / Σ (xi + yi)
🏮 Экологические и количественные данные
🏮 Не является метрической функцией!
Гайд по выбору:
📟 Нормализованные числовые признаки → Евклид/Манхэттен
📟 Текст, категории → Косинус/Жаккар
📟 Гауссовские признаки с корреляцией → Махаланобис
📟 Побитовые сравнения → Хэмминг
📟 Состав экосистем → Bray-Curtis
💡 Важно помнить:
Расстояние — это не просто математика.
Это контекст. Выбирайте метрику под данные, а не только под формулу.
Библиотека дата-сайентиста #буст
Расстояние — ключ к алгоритмам машинного обучения: от кластеризации до рекомендаций. Вот что действительно используют на практике:
Евклидово расстояние
Манхэттенское расстояние
Расстояние Минковского
Косинусное расстояние
Расстояние Жаккара
Расстояние Хэмминга
Расстояние Махаланобиса
Расстояние Чебышёва
Bray-Curtis
Гайд по выбору:
💡 Важно помнить:
Расстояние — это не просто математика.
Это контекст. Выбирайте метрику под данные, а не только под формулу.
Библиотека дата-сайентиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
❤12👍10🔥2
🧩 Задача для продвинутых дата-сайентистов: фильтрация по датам
Дано:
Результат:
💡 Задача:
Отфильтровать заказы с датами после 2023-02-01:
Вывод:
Вопросы:
1. Почему результат фильтрации не соответствует ожиданиям?
2. Как правильно работать с колонкой
🎯 Подвох:
— Колонка
— Сравнение строк по дате работает не как с датами, а лексикографически.
— Значение
💡 Решение:
—
— Фильтрация по datetime теперь корректна.
Итог:
— Всегда проверяйте типы данных перед операциями с датами.
— Обрабатывайте некорректные даты сразу при загрузке.
— Это критично для корректного анализа и отчетности.
Библиотека дата-сайентиста #междусобойчик
Дано:
import pandas as pd
data = {
'order_id': [1, 2, 3, 4, 5],
'order_date': ['2023-01-01', '2023-02-15', 'not available', '2023-03-10', '2023-04-05'],
'amount': [100, 150, 200, 130, 170]
}
df = pd.DataFrame(data)
print(df)
Результат:
order_id order_date amount
0 1 2023-01-01 100
1 2 2023-02-15 150
2 3 not available 200
3 4 2023-03-10 130
4 5 2023-04-05 170
💡 Задача:
Отфильтровать заказы с датами после 2023-02-01:
filtered = df[df['order_date'] > '2023-02-01']
print(filtered)
Вывод:
order_id order_date amount
1 2 2023-02-15 150
2 3 not available 200
3 4 2023-03-10 130
4 5 2023-04-05 170
Вопросы:
1. Почему результат фильтрации не соответствует ожиданиям?
2. Как правильно работать с колонкой
order_date
, чтобы фильтрация по датам работала?🎯 Подвох:
— Колонка
order_date
— это строки (object
), а не тип datetime.— Сравнение строк по дате работает не как с датами, а лексикографически.
— Значение
'not available'
мешает конвертации.💡 Решение:
df['order_date'] = pd.to_datetime(df['order_date'], errors='coerce')
filtered = df[df['order_date'] > '2023-02-01']
print(filtered)
—
pd.to_datetime
с errors='coerce'
заменит неправильные даты на NaT
.— Фильтрация по datetime теперь корректна.
Итог:
— Всегда проверяйте типы данных перед операциями с датами.
— Обрабатывайте некорректные даты сразу при загрузке.
— Это критично для корректного анализа и отчетности.
Библиотека дата-сайентиста #междусобойчик
❤4🔥4👍2
🚀 Модели, релизы и агентные системы
— Gemini 2.5 раскрыла секреты мышления — модель от DeepMind играла в Pokémon 813 часов, делая десятки тысяч инференс-циклов
— Mistral Small 3.2 (24B) — улучшен 5-shot MMLU, tool calling и инструкции
— Gemma 3n — новый open‑релиз от Google, уже 160M+ загрузок
— Google AI‑Colab теперь доступен всем
— Gemini CLI — агент прямо в терминале
— ElevenLabs 11ai — голосовой ассистент с подключением инструментов
🧠 Исследования и инсайты
— Reinforcement Learning Explained — без математики и жаргона
— Evaluating Long‑Context Q&A — как оценивать модели на длинных контекстах
— Tensor Cores: от Volta до Blackwell — эволюция матричных блоков NVIDIA
— Sam Altman: путь OpenAI и взгляд в будущее
📚 Обучение и практика
— Новый курс от Andrew Ng — Building with Llama 4
— Vision Transformer — как трансформеры «увидели» мир
— Инференс с множеством LoRA-адаптеров
— Компьютерное зрение в сельском хозяйстве
— Компьютерное зрение для начинающих
— HandReader и Znaki — архитектура и датасет для русского дактиля
— Главное по ML/DL: SVD, PCA, бустинг и многое другой
Библиотека дата-сайентиста #свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9👍2❤🔥1
Forwarded from Библиотека задач по Data Science | тесты, код, задания
👍3👏2❤1
Data Scientist (Customer Value Proposition), удалёнка
Data Analyst (Маркетинг) — от 180 000 ₽, удалёнка
ML-разработчик/Data science — до 350 000 ₽, гибрид (Москва)
Аналитик данных/Data Analyst/BI-аналитик — от 120 000 до 150 000 ₽, офис (Москва)
Data Scientist / Ведущий специалист по NLP/LLM — от 300 000 ₽, гибрид (Москва)
Библиотека дата-сайентиста
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍1🤔1
🔍 How-to: как отладить модель, если метрика «просела» после дообучения
Ситуация: вы дообучили модель, но метрика резко ухудшилась. Что делать?
Вот пошаговая инструкция для анализа и устранения проблемы:
1️⃣ Сравните распределения признаков на train, valid и test
Проверьте, изменилось ли распределение важных признаков:
👉 Если распределения отличаются — возможен data drift.
2️⃣ Проверьте целевую переменную
— Не изменилось ли определение таргета?
— Нет ли утечки целевой переменной (label leakage)?
— Не изменилась ли доля классов?
3️⃣ Посмотрите на топ ошибок модели
Соберите DataFrame с предсказаниями и ошибками:
👉 Так вы найдёте выбросы или сегменты, где модель работает плохо.
4️⃣ Используйте SHAP или Permutation Importance
Это поможет понять, какие признаки действительно влияют на предсказания после дообучения.
5️⃣ Убедитесь, что пайплайн не «сломался»
После дообучения могли потеряться:
— нормализация или масштабирование признаков;
— one-hot encoding;
— порядок признаков в модели.
Библиотека дата-сайентиста #буст
Ситуация: вы дообучили модель, но метрика резко ухудшилась. Что делать?
Вот пошаговая инструкция для анализа и устранения проблемы:
Проверьте, изменилось ли распределение важных признаков:
import seaborn as sns
for col in important_features:
sns.kdeplot(train[col], label='train')
sns.kdeplot(test[col], label='test')
plt.title(col)
plt.show()
👉 Если распределения отличаются — возможен data drift.
— Не изменилось ли определение таргета?
— Нет ли утечки целевой переменной (label leakage)?
— Не изменилась ли доля классов?
df['target'].value_counts(normalize=True)
Соберите DataFrame с предсказаниями и ошибками:
df['pred'] = model.predict(X)
df['error'] = abs(df['pred'] - df['target'])
df.sort_values('error', ascending=False).head(10)
👉 Так вы найдёте выбросы или сегменты, где модель работает плохо.
Это поможет понять, какие признаки действительно влияют на предсказания после дообучения.
После дообучения могли потеряться:
— нормализация или масштабирование признаков;
— one-hot encoding;
— порядок признаков в модели.
Библиотека дата-сайентиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤4🔥2
В металлургии каждая секунда на счету — чугун быстро остывает, оборудование простаивает, а убытки растут.
Раньше НЛМК контролировал ковши с расплавленным металлом «по старинке»: звонками и рациями. Теперь же у каждого ковша есть свой «мозг»: система в реальном времени отслеживает его местоположение, температуру и маршрут движения.
🔗 Подробнее по ссылке в новой статье: https://proglib.io/sh/mXKzViUZen
Библиотека дата-сайентиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤1
🔓 Анализ данных с новой Python-библиотекой для Data Commons
Data Commons — это открытый граф знаний от Google, который объединяет сотни тысяч статистических переменных из множества публичных источников. Он упрощает доступ к важной информации по демографии, экономике, здравоохранению и другим сферам.
Теперь доступна новая версия Python-клиента Data Commons на базе V2 REST API! Эта библиотека позволяет легко выполнять запросы, получать данные и анализировать их в привычном Python-окружении.
Что нового в V2:
✅ Поддержка Pandas DataFrame — работать с данными стало еще удобнее
✅ Упрощённые методы для частых запросов
✅ Управление API-ключами прямо из клиента
✅ Поддержка нескольких форматов ответа (JSON, dict, list)
✅ Интеграция с Pydantic для проверки типов и валидации данных
✅ Возможность работать с публичными и приватными инстансами Data Commons, включая кастомные на Google Cloud
Пример использования:
✅ Вам не нужно копаться в куче CSV и API — просто берите данные и начинайте исследовать!
🔥 Для дата-сайентистов и аналитиков, которые хотят работать с крупными наборами данных быстрее и эффективнее.
➡️ Подробнее: https://clc.to/epdx-A
Библиотека дата-сайентиста #буст
Data Commons — это открытый граф знаний от Google, который объединяет сотни тысяч статистических переменных из множества публичных источников. Он упрощает доступ к важной информации по демографии, экономике, здравоохранению и другим сферам.
Теперь доступна новая версия Python-клиента Data Commons на базе V2 REST API! Эта библиотека позволяет легко выполнять запросы, получать данные и анализировать их в привычном Python-окружении.
Что нового в V2:
Пример использования:
variable = "sdg/SI_POV_DAY1" # Доля населения ниже международной черты бедности
df = client.observations_dataframe(variable_dcids=variable, date="all", parent_entity="Earth", entity_type="Continent")
df = df.pivot(index="date", columns="entity_name", values="value")
ax = df.plot(kind="line")
ax.set_xlabel("Year")
ax.set_ylabel("%")
ax.set_title("Proportion of population below international poverty line")
ax.legend()
ax.plot()
🔥 Для дата-сайентистов и аналитиков, которые хотят работать с крупными наборами данных быстрее и эффективнее.
Библиотека дата-сайентиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤3🔥3
🔥 Последняя неделя перед стартом курса по AI-агентам
Старт курса уже 5го числа! Если вы планировали вписаться — сейчас ПОСЛЕДНИЙ шанс забронировать место
На курсе:
— разложим LLM по косточкам: токенизация, SFT, PEFT, инференс
— соберём RAG и научимся оценивать его адекватно
— построим настоящую мультиагентную систему — архитектуру, которая умеет расти
— разберём CoPilot, сломаем через prompt injection (спасибо Максу)
— и наконец, посмотрим, как это работает в MCP и реальных кейсах
📍 Это 5 живых вебинаров + раздатка + домашки + чат с преподавателями
И главное — возможность реально разобраться, как проектировать системы на LLM, а не просто «поиграться с API»
👉 Курс здесь
Старт курса уже 5го числа! Если вы планировали вписаться — сейчас ПОСЛЕДНИЙ шанс забронировать место
На курсе:
— разложим LLM по косточкам: токенизация, SFT, PEFT, инференс
— соберём RAG и научимся оценивать его адекватно
— построим настоящую мультиагентную систему — архитектуру, которая умеет расти
— разберём CoPilot, сломаем через prompt injection (спасибо Максу)
— и наконец, посмотрим, как это работает в MCP и реальных кейсах
📍 Это 5 живых вебинаров + раздатка + домашки + чат с преподавателями
И главное — возможность реально разобраться, как проектировать системы на LLM, а не просто «поиграться с API»
👉 Курс здесь
❤1
🔍 Как искать аномалии в данных без моделей
1️⃣ Статистический анализ
➡️ Значения за пределами 3σ (стандартных отклонений)
Вычислите среднее и стандартное отклонение, найдите значения, выходящие за ±3σ — они часто считаются аномалиями.
➡️ Используйте квантильный анализ (IQR)
Рассчитайте интерквартильный размах (IQR = Q3 – Q1).
Аномалии — это точки вне диапазона:
2️⃣ Визуализация данных
➡️ Boxplot — визуально выявляет выбросы.
➡️ Гистограмма — смотрите на распределение и выбивающиеся столбцы.
➡️ Scatter plot — для выявления выбросов в двухмерных данных.
➡️ Парные графики — помогает понять аномалии в связях между переменными.
3️⃣ Логика и доменная экспертиза
➡️ Проверяйте данные на логические ошибки:
— отрицательные значения там, где их быть не может,
— даты в будущем или прошлом вне контекста,
— значения параметров вне физических или бизнес-ограничений.
4️⃣ Проверка на дубликаты
➡️ Часто дубликаты могут «маскировать» аномалии или искажать статистику.
➡️ Используйте
5️⃣ Сравнение с историческими данными
➡️ Сравните текущие значения с типичными значениями за предыдущие периоды.
➡️ Внезапные резкие изменения — потенциальные аномалии.
6️⃣ Использование агрегированных метрик
➡️ Анализируйте суммарные и средние значения по группам.
➡️ Если одна группа сильно выделяется — это может быть аномалия.
Библиотека дата-сайентиста #буст
Вычислите среднее и стандартное отклонение, найдите значения, выходящие за ±3σ — они часто считаются аномалиями.
Рассчитайте интерквартильный размах (IQR = Q3 – Q1).
Аномалии — это точки вне диапазона:
[Q1 - 1.5 * IQR, Q3 + 1.5 * IQR]
.— отрицательные значения там, где их быть не может,
— даты в будущем или прошлом вне контекста,
— значения параметров вне физических или бизнес-ограничений.
.duplicated()
или аналогичные методы.Библиотека дата-сайентиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6😁2❤1