Статьи на тему data science, machine learning, big data, python, математика, нейронные сети, искусственный интеллект (artificial intelligence) Англоязычный канал по DS и Machinelearning -https://t.me/ds_international По сотрудничеству - @g_abashkin
➡️ Matrix Reloaded: зачем дата-сайентисту линейная алгебра
Рассказываю, как векторы, матрицы и собственные значения помогают понимать ML-модели. Без теорем и нотаций — только визуалки и живые кейсы с работы.
Читать...
➡️ Семантическая сегментация: самый полный гайд
Статья раскрывает, как семантическая сегментация помогает машинам «видеть», разбивая изображение на классы объектов. Обсуждаются её применение в автономных авто, медицине и обработке спутниковых снимков для точного распознавания контекста.
Читать...
Получи грант на обучение в Центральном университете
Несгораемый грант до 2 800 000 Р на учебу в бакалавриате Центрального университета.
Подробнее о гранте:
– Покрывает до 100% стоимости обучения
– Выдается на все 4 года обучения в вузе
– Сумма гранта не уменьшается, а может увеличиться за дополнительные достижения и успехи в учебе.
Для учеников 10-х и 11-х классов. Участвуй в отборе!
Подать заявку
#реклама
apply.centraluniversity.ru
О рекламодателе
👩💻 Чем отличается метод .transform()
от .apply()
в pandas?
В pandas методы .transform()
и .apply()
часто используются для обработки данных по столбцам и строкам, но они работают по-разному. Метод .apply()
применяет функцию к каждому элементу или ряду, и возвращает объект любой формы (например, DataFrame или Series). В отличие от него, .transform()
применяет функцию к каждой ячейке или группе и возвращает объект той же формы, что и входной.
➡️ Пример:
import pandas as pd
df = pd.DataFrame({'A': [1, 2, 3], 'B': [10, 20, 30]})
# Используем .apply() для вычисления суммы по столбцам
print(df.apply(sum)) # Вернет Series с суммами столбцов
# Используем .transform() для нормализации каждого значения в столбце
print(df.transform(lambda x: (x - x.mean()) / x.std()))
# Вернет DataFrame с нормализованными значениями
🗣 .apply() подходит для сложных операций и агрегаций, а .transform() удобно использовать для обработки данных с сохранением исходной структуры.
🎓 Онлайн-магистратура по ML от УрФУ и Нетологии
Если ты хочешь глубже разобраться в машинном обучении, архитектуре данных и продакшене ИИ-систем — посмотри в сторону новой магистратуры «Инженерия машинного обучения» от УрФУ и Нетологии.
💡 За 2 года ты:
— Освоишь разработку ML-моделей и пайплайнов
— Будешь работать с Big Data и проектировать инфраструктуру под хранение/обработку данных
— Получишь практику на реальных проектах, хакатонах и Kaggle
— Пройдёшь путь от математики до продакшена
— Получишь два диплома: от УрФУ и Нетологии
📚 Формат — полностью онлайн, можно совмещать с работой. Отличный вариант для разработчиков, которые хотят прокачаться в ML и выйти в индустрию с сильным бэкграундом.
👉 Подробнее: https://netolo.gy/egvt
✍ Печатает приглашение...
на Cloud․ru Tech Lab!
🗓 Когда: 24 июля, 18:00
📍 Где: Москва, Гоэлро Лофт (м. Электрозаводская)
В программе — четыре доклада от экспертов Cloud․ru и приглашенных гостей про AI-агентов, RAG, Ragas и сборку MCP-сервера без кода. После — тестируем AI-решения в демозоне, практикуем нетворкинг и остаемся на afterparty.
Что в программе:
😶🌫️ Открытие митапа
Дмитрий Юдин, технический лидер по развитию искусственного интеллекта, Cloud․ru
😶🌫️ «Как мы встроили AI-агента в онлайн-обучение»
Стас Гридин, менеджер проектов и Илья Жбанов, Data Science инженер, Cloud․ru
😶🌫️ «Model Context Protocol (MCP): главный тренд AI-индустрии»
Игорь Латкин, управляющий партнер и системный архитектор, KTS
И еще два секретных доклада — от наших экспертов и приглашенного гостя.
🖥 Как работает Трансформер: очень простое описание
Вот очень простое объяснение для тех, кто не хочет вдаваться в сложную математику, но и не готов принимать эту ключевую технологию как магию, которая просто работает. Конечно, никакого волшебства тут и нет — идея на самом деле довольно проста..
Читать...
👩💻 Задачка по Python
Напишите Python-скрипт, который принимает путь к большому CSV-файлу и подсчитывает количество строк (записей) в файле без загрузки его целиком в память. Скрипт должен быть оптимизирован для работы с большими файлами.
➡️ Пример:
python count_rows.py large_file.csv
Количество строк: 3
import csvЧитать полностью…
import sys
def count_rows(file_path):
with open(file_path, 'r', encoding='utf-8') as file:
reader = csv.reader(file)
# Используем enumerate для подсчёта строк, исключая заголовок
row_count = sum(1 for _ in reader) - 1 # Минус 1 для исключения заголовка
return row_count
if __name__ == "__main__":
if len(sys.argv) < 2:
print("Использование: python count_rows.py <file_path>")
sys.exit(1)
file_path = sys.argv[1]
try:
result = count_rows(file_path)
print(f"Количество строк: {result}")
except Exception as e:
print(f"Ошибка: {e}")
➡️ Путь разметки данных для NER: от Open Source до Prodigy
Статья посвящена созданию обучающей выборки для NER. Описан опыт разметки данных с использованием Open Source инструментов и Prodigy, профессионального решения для ускорения процесса создания наборов данных.
Читать...
🤔 Практика: мой опыт интеграции более 50 нейронных сетей в один проект
Статья основана на полутора годах работы по внедрению нейронных сетей в веб-приложение с открытым исходным кодом. В ней собраны практические лайфхаки для решения реальных задач и преодоления сложностей, с которыми сталкиваются разработчики.
Читать...
⚙️Магистратура по ML раньше: либо сухая теоретическая нагрузка, либо практикум без базы.
Центральный университет запустил гибридную магистратуру, где занятия онлайн, но есть и живые буткемпы в Москве, причем ребятам из регионов проживание оплачивает вуз. Студенты будут работать над реальными задачами компаний под руководством экспертов индустрии: ведущих дата сайентистов, профессоров, аналитиков и главных тренеров школьной сборной России, победившей в мировой олимпиаде по ИИ в Болгарии.
📌В программе обучения: актуальные ML-инструменты, командная работа, вечерние занятия в мини-группах. Есть гранты до 75%, очный диплом и отсрочка от армии.
Начало в сентябре, заявки принимаются до 20 августа.
⚙️ Конфиденциальность мертва: Яндекс и ВК обучают ИИ на ваших личных данных?
В статье проверяют, как Yandex GPT в голосовом ассистенте ведёт себя с персональными данными. Узнают, что он сливает номер телефона и личную инфу, а потом делает вид, что ничего не знает.
Читать...
🧑🏻💻16 июля в 18:00 МСК OTUS проводит открытый вебинар: «Random Forest — мощный метод ансамблирования в ML».
Вы узнаете, как работает один из самых надёжных и понятных алгоритмов машинного обучения — Random Forest. Поговорим о принципах его работы, вариантах применения, особенностях настройки и, конечно, попрактикуемся на Python прямо на занятии.
Это отличный шанс для тех, кто:
— делает первые шаги в Data Science;
— хочет разобраться в ключевых алгоритмах ML;
— рассматривает переход в IT;
— выбирает курс и направление для старта карьеры.
📢 Спикер Мария Тихонова – PhD Computer Science, Senior Data Scientist.
➡️ Вебинар проходит в преддверии старта курса «Специализация Machine Learning». Все участники получат скидку на обучение. Регистрация открыта: https://vk.cc/cNAVi9
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
➡️ Что забирает до 90% времени на созвонах и как перестать проводить их впустую
Когда митапов больше, чем решений, пора что-то менять. Мы выработали способ делать онлайн-созвоны короче, полезнее и без «а что мы вообще решили?». Делюсь, как именно.
Читать...
📕 Архитектура и дизайн систем на основе NoSQL в облаках для разработчиков, администраторов, специалистов по базам данных, Data engineers, Backend и FullStack-разработчиков
На открытом уроке 10 июля в 20:00 мск мы погрузимся в тонкости работы с системами на основе NoSQL в облачных средах:
📗 На вебинаре разберём:
1. Основы NoSQL и его применение в облачных средах;
2. Реальные примеры и кейсы использования NoSQL в облаках;
📘 В результате на практике разберетесь в настройке и развертывании NoSQL баз данных в популярных облачных платформах (Сберклауд, Яндекс Облако, AWS, Google Cloud, Azure) и освоите применение основных операции с данными, масштабирования и управления производительностью NoSQL.
👉 Регистрация и подробности о курсе NoSQL: https://vk.cc/cNxZ6W
Все участники открытого урока получат скидку на курс "NoSQL"
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
👩💻 Задачка по Python
Напишите функцию, которая принимает список чисел и возвращает все значения, которые являются выбросами. Выбросы определяются как значения, которые находятся ниже первого квартиля (Q1) минус 1.5 * IQR или выше третьего квартиля (Q3) плюс 1.5 * IQR, где IQR — межквартильный размах.
➡️ Пример:
Входной список:
[10, 12, 14, 15, 15, 16, 16, 16, 17, 18, 19, 100]
Ожидаемый вывод:
[100]
import numpy as npЧитать полностью…
def find_outliers(data):
q1 = np.percentile(data, 25)
q3 = np.percentile(data, 75)
iqr = q3 - q1
lower_bound = q1 - 1.5 * iqr
upper_bound = q3 + 1.5 * iqr
return [x for x in data if x < lower_bound or x > upper_bound]
# Пример использования:
input_data = [10, 12, 14, 15, 15, 16, 16, 16, 17, 18, 19, 100]
result = find_outliers(input_data)
print(result) # Ожидаемый результат: [100]
🤔 Prompt Me One More Time. Учим LLM строить графы знаний из текстов
Статья описывает метод, разработанный для автоматического наполнения графов знаний с помощью LLM, что снижает вероятность «галлюцинаций» и повышает точность ответов. Решение Prompt Me One More Time подробно представлено на TextGraphs-17 конференции ACL-2024.
Читать...
Если вы работаете с нейросетями — от файнтюнинга LLM до генерации изображений — без мощных видеокарт не обойтись. Но покупать железо — долго, дорого и не всегда оправдано.
immers.cloud — облачный GPU-сервис, созданный специально для ИИ-задач. Мы знаем, что нужно разработчику и data scientist-у:
💰 Посекундная тарификация: тарифы от 23 рублей/час, платите только за время, когда сервер реально работает.
⚡️ Быстрый старт: нужный сервер поднимается за пару минут.
📈 Гибкость и масштабируемость: 12 моделей видеокарт на выбор
🔧 Удобство: готовые образы для ML задач, чтобы не тратить время на настройку.
А если нужно прерваться — можно просто заморозить ВМ с помощью функции Shelve: данные сохранятся, а платить за простои не придется.
🎁 Дарим +20% к первому пополнению. чтобы было приятнее начать
👩💻 FlexiPrompt: Удобное создание динамических промптов в Python
Статья знакомит с FlexiPrompt — лёгкой библиотекой для генерации промптов в Python при работе с языковыми моделями. Рассмотрены её преимущества: быстрая интеграция, гибкая настройка диалога и возможность создания нескольких агентов в одной LLM.
Читать...
⚙️ Неувядающая классика или «чёрный ящик»: кто кого в битве за прогноз. Глава вторая. Продолжение
Статья продолжает разбор моделирования температурного временного ряда с двойной сезонностью. Основное внимание уделено подбору оптимальных параметров сезонной модели САРПСС для точного описания данных.
Читать...
👩💻 Задачка по Python
Напишите функцию, которая принимает DataFrame и заменяет отсутствующие значения (NaN) в каждом числовом столбце на среднее значение этого столбца. Если столбец содержит только NaN, оставьте его без изменений.
➡️ Пример:
feature1 feature2 feature3
0 1.0 10.0 NaN
1 2.0 NaN NaN
2 NaN 30.0 NaN
3 4.0 40.0 NaN
feature1 feature2 feature3
0 1.00 10.0 NaN
1 2.00 26.7 NaN
2 2.33 30.0 NaN
3 4.00 40.0 NaN
import pandas as pdЧитать полностью…
def fill_missing_with_mean(df):
numeric_columns = df.select_dtypes(include=['float', 'int'])
for column in numeric_columns:
if df[column].notna().any(): # Проверяем, есть ли значения не NaN
df[column] = df[column].fillna(df[column].mean())
return df
# Пример использования:
data = pd.DataFrame({
'feature1': [1.0, 2.0, None, 4.0],
'feature2': [10.0, None, 30.0, 40.0],
'feature3': [None, None, None, None]
})
result = fill_missing_with_mean(data)
print(result)
🔥 Самые интересные статьи за последние дни:
• Разбей и властвуй: как создать кастомный токенизатор в SpaCy
• Функция property() в Python: добавляем управляемые атрибуты в классы
• Что, если не трансформеры: какие альтернативы главной архитектуре нейросетей у нас есть в 2024 году
• cgroups и namespaces в Linux: как это работает?
• ML-тренды рекомендательных технологий: шесть приёмов, которые помогают угадывать желания пользователя
🖥 Руководство по созданию приложения для поиска данных на основе агента GraphRAG
Статья описывает приложение, объединяющее GraphRAG и AutoGen-агентов с локальными LLM от Ollama для автономного встраивания и вывода. Рассмотрены ключевые аспекты: интеграция знаний, настройка LLM, вызов функций и интерактивный интерфейс.
Читать...
🧬 Почини одну переменную — и система станет проще
Ты борешься с непонятной логикой, огромными условиями, крошечными багообразными эффектами. Всё сложно.
👉 Совет: не паникуй. Найди одну переменную, одно имя, один формат, который вносит больше всего путаницы — и перепиши его. Часто даже одно улучшение приводит к лавине упрощений. Разбор сложности начинается с одной точки.
👩💻 Разрабатываем первое AI приложение
Статья анализирует роль языка и цифровизации в накоплении и передаче знаний. Обсуждаются вызовы структурирования данных, которые, несмотря на успехи машинного обучения и реляционных баз, всё ещё затрудняют полное понимание накопленной информации.
Читать...
⚙️ Что такое StandardScaler в Data Science и зачем он используется?StandardScaler
из библиотеки scikit-learn
— это инструмент для нормализации данных. Он приводит признаки (столбцы данных) к одному масштабу со средним значением 0 и стандартным отклонением 1.
Это важно для алгоритмов машинного обучения, чувствительных к масштабу данных — например, линейной регрессии, SVM или KMeans.
➡️ Пример:
from sklearn.preprocessing import StandardScaler
import numpy as np
X = np.array([[10, 200],
[20, 300],
[30, 400]])
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)
print(X_scaled)
🗣️ В этом примере значения всех признаков преобразуются так, что каждый столбец имеет среднее значение 0 и одинаковый масштаб. Это ускоряет обучение и повышает качество модели.
⚙️ RAG: борьба с низким качеством ответов в условия экономии памяти на GPU
В статье показали, как делали ИИ-помощника на RAG для юристов внутри компании: с какими проблемами столкнулись, как прокачивали точность ответов и экономили память на видеокартах.
Читать...
📈 Подборка статей для вашей карьеры
• Эволюция архитектур нейросетей в компьютерном зрении: сегментация изображений
• Заяц не вырастет в акулу. Или секреты гибкой инженерной культуры от Александра Бындю
• Все, пора увольняться: что я поняла после работы в токсичных командах
• Базовое программирование, или Почему джуны не могут пройти к нам собеседование
• Я стал аналитиком, потому что не смог быть программистом
🔥 Самые интересные статьи за последние дни:
• Всё, что вы хотели знать о Django Channels
• Сборка Python проекта с uv и Docker
• DE-1. DIY ассистент на LLM
• Ваши генераторные выражения сломаны: чиним и разбираемся
• Всё, что вы хотели знать о Django Channels
👩💻 Вычисление “стабильных” признаков
Вам дана матрица признаков — список списков, где каждая строка представляет собой объект, а каждый столбец — отдельный числовой признак.
Ваша задача — определить, какие признаки можно считать стабильными.
Стабильный признак — это признак, у которого стандартное отклонение по всем объектам меньше заданного порога threshold.
find_stable_features(matrix, threshold)
, которая возвращает список индексов признаков (столбцов), удовлетворяющих этому условию.import numpy as npЧитать полностью…
def find_stable_features(matrix, threshold=0.1):
data = np.array(matrix)
stds = np.std(data, axis=0)
stable_indices = [i for i, std in enumerate(stds) if std < threshold]
return stable_indices
# Пример входных данных
X = [
[1.0, 0.5, 3.2],
[1.0, 0.49, 3.1],
[1.0, 0.52, 3.0],
[1.0, 0.5, 3.3],
]
print(find_stable_features(X, threshold=0.05))
# Ожидаемый результат: [0, 1]