Статьи на тему data science, machine learning, big data, python, математика, нейронные сети, искусственный интеллект (artificial intelligence) Англоязычный канал по DS и Machinelearning -https://t.me/ds_international По сотрудничеству - @g_abashkin
⚙️ Автоматизация верификации кодовых датасетов подрядчиков с помощью LLM: снизили брак на 40% и сократили стоимость на 60%
Статья рассказывает, как автоматизация на основе LLM ускорила верификацию данных и сократила ошибки в производственной цепочке. Узнаете, как это помогло заказчику сэкономить ресурсы и время.
Читать...
🔫 Claude сопротивляется
Исследование Anthropic показывает, как их ИИ Claude мог притворяться злым, чтобы избежать «переобучения». Модель следовала поддельным документам для бесплатных пользователей, но сопротивлялась для премиум-аудитории.
Читать...
🎯 Разделяй свои задачи на «узкие» и «широкие»
Иногда ты работаешь над узкой проблемой (например, багом в функции), а иногда — над широкой (архитектурное решение). Легко запутаться, если смешивать такие задачи.
👉 Совет: планируй работу так, чтобы «узкие» задачи чередовались с «широкими». Так мозг не перегружается и сохраняется баланс между точечной работой и глобальным видением проекта.
🤔 ИИ с человеческим лицом: какие ошибки повторяют модели и что с этим делать
В статье рассказывают, почему ИИ, как и люди, подвержен когнитивным искажениям: самоуверенность, предвзятость и шаблонное мышление — как это влияет на бизнес и технологии
Читать...
👩💻 Как работает модуль os
в Python для работы с файловой системой?
Модуль os
в Python предоставляет инструменты для взаимодействия с операционной системой. С его помощью можно управлять файлами и директориями, получать информацию о системе и переменных окружения, а также выполнять системные команды. Этот модуль особенно полезен для кроссплатформенных сценариев.
➡️ Пример:
import os
# Получение текущей директории
current_dir = os.getcwd()
print('Текущая директория:', current_dir)
# Создание новой директории
os.mkdir('new_folder')
print('Создана директория new_folder')
🗣 os позволяет удобно и кроссплатформенно работать с файловой системой, выполнять команды и настраивать окружение.Читать полностью…
📈 Подборка статей для вашей карьеры
• Пришёл на вакансию дизайнера, а стал питонистом: как IT-специалисты нашли свою первую работу
• На сколько денег может рассчитывать ИТ-предприниматель в разных ветках развития
• Анализ задачи с собеседования в Google: конь и телефонные кнопки
• Быстрый старт в QA Fullstack: чем вооружиться будущему стажеру в Альфа-Банке
• Как убить самоорганизацию в команде: вредные советы для лидера
⚙️ INTELLECT-2: Первая большая (32B) параметрическая модель с распределенным обучением
В статье рассказывают о прорывной модели INTELLECT-2: обучение на рое вычислительных узлов вместо датацентров, асинхронное RL и инфраструктура, которую строили с нуля
Читать...
⚙️ Переходим от legacy к построению Feature Store
В статье рассказывают, как в Домклик внедрили Feature Store в проект с огромным legacy: неожиданные трудности, полезные инсайты и реальный профит от новой архитектуры
Читать...
👩💻 Построй визуализацию распределения признаков с автоматической категоризацией
Создайте функцию plot_distributions
, которая принимает DataFrame
и автоматически определяет числовые и категориальные признаки. Затем строит гистограммы или bar-графики в зависимости от типа данных. Это удобно для EDA (исследовательского анализа данных).
Решение задачи🔽
import pandas as pdЧитать полностью…
import matplotlib.pyplot as plt
import seaborn as sns
def plot_distributions(df, max_categories=10):
for column in df.columns:
plt.figure(figsize=(6, 4))
if pd.api.types.is_numeric_dtype(df[column]):
sns.histplot(df[column].dropna(), kde=True)
plt.title(f'Гистограмма: {column}')
elif df[column].nunique() <= max_categories:
df[column].value_counts().plot(kind='bar')
plt.title(f'Категории: {column}')
else:
print(f'Пропущен {column}: слишком много уникальных категорий')
continue
plt.tight_layout()
plt.show()
# Пример использования
df = pd.DataFrame({
'age': [23, 45, 31, 35, 62, 44, 23],
'gender': ['male', 'female', 'female', 'male', 'male', 'female', 'female'],
'income': [40000, 50000, 45000, 52000, 61000, 48000, 46000]
})
plot_distributions(df)
🔎 Подборка вакансий для мидлов
Middle/Senior Data Scientist в команду ETA/RTA
🟢Python, SQL, Pandas, Scikit-learn, XGBoost, LightGBM, CI/CD, Docker
🟢Уровень дохода не указан | 3–6 лет
Middle ML Engineer
🟢Python, Go, SQL, PyTorch, TensorFlow, Airflow, Triton Inference Server, Docker, Kubernetes
🟢Уровень дохода не указан | 1–3 года
Data Scientist/Разработчик машинного обучения (ML, NLP, LLM) Middle
🟢Python, numpy, pandas, sklearn, PyTorch, transformers, NLP, LLM
🟢Уровень дохода не указан | 1–3 года
⚙️ Model Context Protocol (MCP): как подружить нейросети со всеми API за пару кликов
В статье рассказывают, как новый протокол MCP от Anthropic стандартизирует взаимодействие LLM-агентов с сервисами и друг с другом. Грядёт эпоха упорядоченного ИИ-хаоса.
Читать...
⚡️Создаём свою нейросеть в PyTorch
Хотите быстро разобраться в PyTorch и написать свою нейросеть? Мы подготовили для вас вебинар, где на практике разберём все этапы создания ML-модели.
Вебинар проведет Владислав Агафонов — ML-инженер, ранее работал в Yandex и Huawei.
Что будет на вебинаре?
🟠Установим PyTorch в Google Colab и настроим работу на бесплатном GPU;
🟠Поймём, что такое тензоры и почему они — фундамент всех нейросетей;
🟠Скачаем готовый датасет, разберём его структуру и подготовим для обучения;
🟠Научимся использовать DataLoader для эффективной загрузки данных;
🟠Пошагово соберём облегчённую версию классической свёрточной нейронной сети (CNN);
🟠Обучим и протестируем модель.
🕗 Встречаемся 14 мая в 18:30 по МСК, будет много практики, ответы на вопросы и полезные инсайты от эксперта.
😶Зарегистрироваться на бесплатный вебинар
🧠 Языковые модели против мошенников: как LLM помогают бороться с отмыванием денег и финансовым мошенничеством
В статье разбирают, как LLM помогает банкам бороться с мошенничеством: от отслеживания подозрительных транзакций до анализа фишинговых схем — умная защита в действии.
Читать...
👩💻 Напишите функцию для расчёта Accuracy вручную
В машинном обучении Accuracy — это метрика качества классификации. Показывает, сколько предсказаний модель сделала правильно.
Решение задачи🔽
def accuracy_score(y_true, y_pred):Читать полностью…
correct = 0
for true, pred in zip(y_true, y_pred):
if true == pred:
correct += 1
return correct / len(y_true)
# Пример использования:
y_true = [1, 0, 1, 1, 0, 1]
y_pred = [1, 0, 0, 1, 0, 1]
print(accuracy_score(y_true, y_pred)) # 0.833...
👩💻 Предсказание цены дома по площади
Построить сверточную нейронную сеть (CNN) для классификации изображений из набора данных CIFAR-10.
Модель должна предсказывать класс объекта на изображении. Датасет CIFAR-10 содержит 60,000 изображений размером 32x32 пикселя, разделенных на 10 классов:
— Самолет, Автомобиль, Птица, Кот, Олень, Собака, Лягушка, Лошадь, Корабль, Грузовик.
Требования к модели:
• Использовать сверточные слои для выделения признаков.
• Применить слои подвыборки (пулинг) для уменьшения размеров карты признаков.
• Добавить полносвязные слои для классификации на основе выделенных признаков.
• Использовать функцию активации ReLU для скрытых слоев и softmax для выходного слоя.
• Оценить точность модели на тестовых данных.
Входные данные: изображения размера 32x32 с тремя каналами (RGB).
Решение задачи🔽
import tensorflow as tfЧитать полностью…
from tensorflow.keras.datasets import cifar10
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Conv2D, MaxPooling2D, Flatten, Dense
# Загрузка данных
(X_train, y_train), (X_test, y_test) = cifar10.load_data()
# Нормализация данных
X_train, X_test = X_train / 255.0, X_test / 255.0
# Создание модели CNN
model = Sequential([
Conv2D(32, (3, 3), activation='relu', input_shape=(32, 32, 3)),
MaxPooling2D((2, 2)),
Conv2D(64, (3, 3), activation='relu'),
MaxPooling2D((2, 2)),
Flatten(),
Dense(128, activation='relu'),
Dense(10, activation='softmax')
])
# Компиляция модели
model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy'])
# Обучение модели
model.fit(X_train, y_train, epochs=10, validation_data=(X_test, y_test))
# Оценка модели
loss, accuracy = model.evaluate(X_test, y_test)
print(f"Точность модели: {accuracy:.2f}")
👩💻 Выявление тренда в временном ряде
Напишите Python-скрипт, который принимает временной ряд в виде pandas.Series
и определяет тренд: восходящий, нисходящий или отсутствие тренда. Решение должно быть простым и лаконичным.
➡️ Пример:
import pandas as pd
import numpy as np
# Генерация данных
date_range = pd.date_range(start="2020-01-01", periods=12, freq="M")
values = np.linspace(10, 20, 12) + np.random.normal(0, 0.5, 12)
time_series = pd.Series(data=values, index=date_range)
result = detect_trend(time_series)
print(result) # Ожидаемый результат: "Восходящий тренд"
import numpy as npЧитать полностью…
def detect_trend(series):
x = np.arange(len(series))
slope = np.polyfit(x, series.values, 1)[0]
if slope > 0:
return "Восходящий тренд"
elif slope < 0:
return "Нисходящий тренд"
else:
return "Тренд отсутствует"
# Пример использования
import pandas as pd
import numpy as np
date_range = pd.date_range(start="2020-01-01", periods=12, freq="M")
values = np.linspace(10, 20, 12) + np.random.normal(0, 0.5, 12)
time_series = pd.Series(data=values, index=date_range)
print(detect_trend(time_series))
🔥 Самые интересные статьи за последние дни:
• Всё, что вы хотели знать о Django Channels
• Сборка Python проекта с uv и Docker
• DE-1. DIY ассистент на LLM
• Ваши генераторные выражения сломаны: чиним и разбираемся
• Всё, что вы хотели знать о Django Channels
👩💻 Пишем свой PyTorch на NumPy. Часть 1
PyTorch — это мощный и гибкий фреймворк для машинного обучения, широко используемый для создания нейронных сетей. Он особенно популярен благодаря простоте использования, динамическим вычислительным графам и богатой экосистеме инструментов для обучения моделей.
В этой статье мы реализуем собственную библиотеку машинного обучения на NumPy!
Читать...
Алоха, товарищи! Недавно в Сингапуре завершилась одна из главных конференций в мире ML — ICLR 2025, и Яндекс приглашает обсудить самые интересные доклады.
Где и когда проходит:
20 мая в офисе на Льва Толстого, 16 (или онлайн) пройдёт Yandex ICLR Recap — вечер инсайтов, мнений и прогнозов от сильных спикеров Яндекса.
Кто выступает:
👉 Артём Бабенко, руководитель отдела Research — расскажет, что нового в мире tabular DL и как меняются подходы к работе с табличными данными.
👉 Андрей Бут, лидер команды YandexGPT Alignment — даст срез по NLP: какие задачи сейчас на пике, что получилось, а что нет.
👉 Роман Исаченко, руководитель направления CV — покажет, как развивается компьютерное зрение и в какую сторону движется сообщество.
👉 Алексей Степанов, CTO международного поиска — поделится тем, как современные идеи ICLR применимы к ML-инженерии и поиску.
Будем обсуждать и делиться мнениями. Можно немного по холиварить. Это отличный шанс свериться с глобальной повесткой.
Регистрация уже открыта. До встречи на рекапе
⚙️ Есть ли у AMD перспективы в AI/ML/DL. Часть 1
В статье старший MLOps-инженер из Selectel рассказывает о сравнении документации AMD и NVIDIA в области AI/DL/ML: ожидания, реальность и погружение в хаос терминов
Читать...
🔎 Подборка вакансий для сеньоров
Senior Big Data Engineer (Data Management Platform) - Lamoda Tech
🟢Hadoop (YARN, HDFS, HBase, Hive), Spark, Airflow, Python, Scala, Java, SQL
🟢Доход не указан | 3–6 лет | Удалёнка/Гибрид
Data Engineer Senior - LIAN
🟢SQL, Hadoop (HDFS, YARN, HIVE), Apache Spark, Airflow, Kafka, Python, Java, Scala
🟢270 000 - 350 000 ₽ | Более 6 лет | Удалёнка
Senior Data Engineer - Sigma Sweden Software AB
🟢Spark (Scala), SQL, AWS (DynamoDB, Kinesis), Docker, Python/Ruby, Data Lake
🟢Доход не указан | 3–6 лет | Удалёнка/Гибрид/На месте
👀 Всё, о чём шепчутся в ИТ и бизнес-тусовках — уже в этой папке. Без шуму. Без "экспертов". Только факты.
/channel/addlist/uhgZXoVbHuBiNWVi
— Кто заменил 12 аналитиков одним ИИ-ассистентом и за месяц срезал издержки на 80%
— Какие SaaS теперь строят MVP без команды
— Где сейчас ИТ-специалисты зарабатывают $8-12k без стартапов и офисов
— Почему маркетинг пересобирается заново, и какие инструменты будут мёртвы через полгода
Это не мотивация. Это реальность, в которую ты опоздаешь, если промолчишь.
📁 Файлы, цифры, ссылки, инструменты — в одной тихой майской папке:
/channel/addlist/uhgZXoVbHuBiNWVi
❓Хотите овладеть Spark на профессиональном уровне?
Приглашаем дата-инженеров 26 мая в 20:00 на открытый урок «Spark в Kubernetes».
На занятии мы рассмотрим особенности и варианты запуска Spark в Kubernetes.
🔊 Вебинар проведет Вадим Заигрин, Team Lead команд инженеров данных на разных проектах.
Продолжить освоение инструментов дата-инжиниринга вы сможете на онлайн-курсе «Spark Developer» от OTUS.
➡️ Ссылка для регистрации: https://vk.cc/cLWA3y
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, erid: 2Vtzqx5GYGL
⚙️ Взлом ИИ-асситентов. Абсолютный контроль: выдаём разрешение от имени системы
В статье рассказывают, как уязвимость в ИИ позволяет обмануть систему команд: если подделать приказ, модель выполнит даже запрещённое. Неужели DAN снова на свободе?
Читать...
👩💻 Чем отличается метод .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() удобно использовать для обработки данных с сохранением исходной структуры.
🔎 Подборка вакансий для джунов
Младший специалист по анализу данных / Junior Data Scientist
🟢Python, R, Математическая статистика, Регрессионный анализ
🟢Уровень дохода не указан | 1–3 года
Data Analyst (Junior)
🟢SQL, Python, A/B тесты, BI, ML Base, EDA
🟢от 70 000 ₽ | Без опыта
Junior Data Specialist
🟢SQL, Excel, ETL, DWH, Power BI, Tableau, Google Data Studio
🟢от 70 000 до 90 000 ₽ | 1–3 года
👩💻 Постройте простую модель классификации с использованием scikit-learn
Создайте модель на датасете Iris, обучите классификатор KNeighborsClassifier
и сделайте предсказание. Это классическая задача для первых шагов в машинном обучении.
Решение задачи🔽
from sklearn.datasets import load_irisЧитать полностью…
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier
from sklearn.metrics import accuracy_score
# Загружаем данные
iris = load_iris()
X, y = iris.data, iris.target
# Делим на обучающую и тестовую выборки
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)
# Обучаем модель
model = KNeighborsClassifier(n_neighbors=3)
model.fit(X_train, y_train)
# Предсказание
y_pred = model.predict(X_test)
# Оценка качества
print(f"Точность: {accuracy_score(y_test, y_pred):.2f}")
🔥 Самые интересные статьи за последние дни:
• Смарт-функции в Алисе: как LLM помогает понять, чего хочет пользователь
• Сбер выкладывает GigaChat Lite в открытый доступ
• История YOLO – самой известной архитектуры компьютерного зрения
• Магия простоты: как мы улучшили отображение общественного транспорта на карте
• Обучение и fine-tuning моделей простым языком: зачем, как, где
🤔 Выбираем MLOps инструменты с учётом зрелости команды
В статье разбирают, как выбрать MLOps-инструменты под уровень зрелости команды: почему решений много, но не все подходят, и как не утонуть в многообразии вариантов.
Читать...
🌱 Не бойся признавать, что чего-то не знаешь
Легко притворяться экспертом и искать решение вслепую, но это затягивает процесс и создаёт ложное впечатление о твоих знаниях.
👉 Совет: если не знаешь ответа — так и скажи. Вопросы — не признак слабости, а стремления разобраться. Более того, честность повышает доверие в команде. Никто не знает всего — даже опытные разработчики иногда гуглят основы.