19745
Все о Data Science, машинном обучении и искусственном интеллекте: от базовой теории до cutting-edge исследований и LLM. MAX - https://max.ru/devsp Личный блог - @just_genych По вопросам рекламы или разработки - @g_abashkin РКН: https://vk.cc/cJPGXD
➡️ Самые интересные статьи за последние дни:
• Эксперимент: даём ChatGPT полный доступ к компьютеру
• Правильный путь создания python-библиотеки: от создания до публикации
• Запускаем Yolo на пятирублёвой монете или Luckfox Pico Mini
• Более мощное семейство моделей YandexGPT 4: рост качества ответов, длинный контекст, пошаговые рассуждения
• Как мы обучили Mistral 7B русскому языку и адаптировали для объявлений Авито
👩💻 Под капотом asyncio: принципы работы и ключевые концепции
Библиотека asyncio предоставляет полный набор инструментов для организации параллельного выполнения кода в Python с использованием концепции асинхронности. Но как на самом деле работает asyncio? Давайте разберемся в ключевых принципах и понятиях.
Читать...
🚀 Data Picnic Х5 Tech в Сфере — встречаемся 9 сентября в Парке Горького!
На летней площадке «Сфера» Х5 Tech соберет data-сообщество, чтобы обсудить масштабируемые архитектуры, big data-решения и практики работы с миллиардами событий. Вас ждут четыре доклада от экспертов X5 Tech, Сбера и Битрикс24, а после — афтерпати с пиццей, пивом и диджеем.
Программа:
🗣 Павел Середин, X5 Tech — Шина метаданных для координации работы дата-хабов: как мы перешли с монолита на архитектуру data-mesh и решили проблему взаимодействия хабов.
🗣 Андрей Березин, Сбер — Система realtime-аналитики на 5+ млрд событий в день: эволюция платформы, архитектура и опыт масштабирования.
🗣 Анатолий Зубков, X5 Tech — Дата-контракты: теория и практика: как формализованные соглашения между командами повышают прозрачность и доверие к данным.
🗣 Александр Сербул, Битрикс24 — Опыт экстремальной миграции сервисов с Java/Netty на Rust/Tokio: что это дало в производительности и изменении подходов к разработке.
📍 Где: Сфера, Парк Горького
🕒 Когда: 9 сентября, сбор гостей с 19:15
🎶 После 22:00 — афтерпати: диджей, пицца, пиво, нетворкинг
🎟 Регистрация: по ссылке
⚙️ Архитектура проекта автоматического обучения ML-моделей
В статье ребята из Ингосстраха делятся, как автоматизировали запуск и внедрение моделей, чтобы быстрее закрывать запросы бизнеса, не утонув в бэклоге.
Читать...
⚙️ Что такое StandardScaler из scikit-learn и зачем он нужен?StandardScaler — это инструмент из библиотеки scikit-learn, который стандартизирует данные: приводит их к распределению со средним 0 и стандартным отклонением 1. Это важно перед обучением моделей, особенно для алгоритмов, чувствительных к масштабу (например, SVM, KNN, линейная регрессия).
➡️ Пример:
from sklearn.preprocessing import StandardScaler
import numpy as np
X = np.array([[10, 200], [15, 300], [14, 250]])
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)
print(X_scaled)
🗣️ StandardScaler — must-have шаг в пайплайне предварительной обработки данных для большинства классических ML-моделей
⚙️ Рекомендательная система для вашего каталога научных работ (и не только!)
Показано, как собрать рекомендательную систему на своём архиве документов, даже если там куча форматов. NLP + графы = машинный архивариус, который сам подсовывает нужные файлы.
Читать...
📈 Подборка статей для вашей карьеры
• Эволюция архитектур нейросетей в компьютерном зрении: сегментация изображений
• Заяц не вырастет в акулу. Или секреты гибкой инженерной культуры от Александра Бындю
• Все, пора увольняться: что я поняла после работы в токсичных командах
• Базовое программирование, или Почему джуны не могут пройти к нам собеседование
• Я стал аналитиком, потому что не смог быть программистом
🔥 Самые интересные статьи за последние дни:
• Что читали на Хабре в 2024 году: анализ статей с Node.js, Google Sheets и каплей ChatGPT
• Поднимаем в облаке расшифровку речи в текст с помощью нейросетей. VPS на пределе возможностей
• Стоит ли ChatGPT о1 Pro своих денег? Небольшой тест-драйв модели
• Возможности LLM и RAG на примере реализации бота для поддержки клиентов
• Гетерогенные вычисления: проектирование и разработка вычислительной системы для нейросетей
👩💻 Напишите функцию для расчёта 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...
👩💻 Чем отличается метод .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() удобно использовать для обработки данных с сохранением исходной структуры.
🤔 Выбираем MLOps инструменты с учётом зрелости команды
В статье разбирают, как выбрать MLOps-инструменты под уровень зрелости команды: почему решений много, но не все подходят, и как не утонуть в многообразии вариантов.
Читать...
➡️ Как Duolingo юзает машинное обучение для прокачки английского: кратко и по делу
В статье рассказывают, как ИИ сделал Duolingo фабрикой языковых курсов: генерация контента, проверка ответов, адаптация заданий — всё на автомате. Учить стало быстрее.
Читать...
👩💻 Предсказание цены дома по площади
Построить сверточную нейронную сеть (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}")
🚀 Правда или нет, что Google победил Cursor?
В статье сравнивают два AI-инструмента для разработки: Firebase Studio от Google и Cursor от Anysphere. Кто круче — облачная платформа или интегрированный редактор?
Читать...
⚙️ Как построить хороший пайплайн разработки ML-модели
Рассказываю, как построить понятный и гибкий ML-процесс: чтобы данные масштабировались, новички вливались, а модель не вела себя как капризный кот.
Читать...
👩💻 Задачка по Python
Создайте Python-скрипт для обработки данных. Задача состоит в том, чтобы построить ETL-процесс, который очищает и агрегирует данные из CSV-файлов о продажах, а затем сохраняет агрегированные данные в новом файле.
Очистка данных: удаление записей с пустыми значениями в столбцах price или quantity.
Агрегация: подсчет общего количества проданных товаров и общей суммы по каждому продукту.
➡️ Пример:
• python app.py sales_data.csv — создает новый файл aggregated_data.csv с общей суммой и количеством проданных товаров по каждому продукту.
Решение задачи ⬇️
import pandas as pdЧитать полностью…
import sys
def clean_and_aggregate(file_path):
# Загружаем данные
data = pd.read_csv(file_path)
# Удаляем строки с пустыми значениями в колонках 'price' и 'quantity'
data.dropna(subset=['price', 'quantity'], inplace=True)
# Преобразуем колонки в числовой формат, ошибки игнорируем
data['price'] = pd.to_numeric(data['price'], errors='coerce')
data['quantity'] = pd.to_numeric(data['quantity'], errors='coerce')
# Удаляем строки с некорректными значениями
data.dropna(subset=['price', 'quantity'], inplace=True)
# Агрегируем данные
aggregated_data = data.groupby('product_id').agg(
total_quantity=('quantity', 'sum'),
total_sales=('price', 'sum')
).reset_index()
# Сохраняем в новый CSV
aggregated_data.to_csv('aggregated_data.csv', index=False)
print("Агрегация завершена. Данные сохранены в 'aggregated_data.csv'.")
if __name__ == "__main__":
if len(sys.argv) != 2:
print("Использование: python app.py <путь к файлу CSV>")
sys.exit(1)
file_path = sys.argv[1]
clean_and_aggregate(file_path)
⚙️ Как обучить русскоязычную модель рассуждений — LRM?
В статье разбор мультиязычных моделей рассуждений от Lightblue: как они научили DeepSeek "думать" на русском, откуда взяли датасет и зачем запускали LLM как фильтр рассудительности.
Читать...
🌌 Делай мини-проекты из собственных болей
Бесит, что каждый день ищешь одну и ту же команду в истории? Или вручную обрезаешь скриншоты? Это подсказки.
👉 Совет: собирай такие мелкие «боли» и превращай их в свои pet-проекты или утилиты. Это не только помогает себе, но и тренирует навык быстрого решения задач и проектирования под реальную жизнь.
⚙️ Как я сделала свой первый AI-продукт с ChatGPT и капелькой любви
В этой статье я расскажу о моем опыте самостоятельного изучения основ Python и Machine Learning и создании первого проекта OneLove на базе собственной модели искусственного интеллекта (ИИ).
Читать...
⚙️ Анализ данных: от EDA до Tinder-битвы графиков
Расскажу, как мы в МТС учили студентов EDA не лекциями, а игрой по типу Tinder, только для графиков. Был фан, был хардкор и крутые визуализации.
Читать...
Собрали для Вас подборку интересных каналов.👨💻
🖥 PytStart - стартуй в Python с нами!
🐍 PythonTalk. Авторский канал, где Python, AI и здравый смысл встречаются. Разбор свежих open-source инструментов, мануалы, новости с IT-передовой и трезвый взгляд на AI-хайп.
🐍Frontender’s notes - Годные статьи для Frontend разработчиков
HTML, CSS, JS, React, Angular, Vue, TypeScript, Redux, MobX, NodeJS.
🐍Data Science | Machinelearning [ru] - Статьи на тему data science, machine learning, big data, python, математика, нейронные сети, искусственный интеллект (artificial intelligence)
🐍Node.JS [ru] | Серверный JavaScript - Все о разработке backend части на JavaScript (Node JS).
А так же: Express JS, Next JS, Nest, Socket.IO
And
🐍Python Tech Code — все, что нужно, чтобы стать настоящим гуру в программировании на Python.
➡️ Простой и понятный материал.
➡️ Практические примеры и увлекательные задачи.
➡️ Подсказки, советы и полезные ресурсы.
🐍Indigo Python - твой путь к мастерству в коде!
🐍Вакансии для тестировщиков - канал с вакансиями для тестировщиков.
🔵Вывожу за грань обыденного предпринимателей и классных людей!
Я Ася ментальный микрохирург, интегративный психолог/эзотерик
Помогаю 15 лет вырасти многократно в доходе, энергии, обрести баланс, любовь, счастье
Жду тебя: /channel/bazenova1
Хочешь участвовать в подборке? Пиши!
⚙️ Организация ML-проекта с примерами
Организация - это важно. То же относится к ML-проектам. Из каких компонент он должен состоять? Как оформить проект, чтобы всего хватало и было удобно это масштабировать? Рассмотрим организацию по шаблону CookieCutter с примерами.
Читать...
🔥Приглашаем вас на три бесплатных вебинара курса «Data Engineer»🔥
📚Вебинар №1: «Как построить Lakehouse на Iceberg и S3»
⏰27 августа в 20:00 мск
✅На вебинаре:
• Data Warehouse, Data Lake, Data Lakehouse: история развития, что и когда использовать?
• Обзор Apache Iceberg: архитектура, преимущества и кейсы использования.
• Хранение данных в S3: настройка бакетов, управление доступом, cost optimization.
• Развертывание Iceberg на S3.
• Работа с Iceberg на Spark и Trino.
📚Вебинар №2: «DWH, Data Lake и Data Lakehouse: архитектурные различия и практическое применение»
⏰ 8 сентября в 20:00 мск
На вебинаре:
• Data Warehouse (DWH): Классическая архитектура и принципы
• Data Lake: Хранение "сырых" данных любого формата. Проблемы управления и governance
• Data Lakehouse: лучшие практики DWH и Data Lake ACID-транзакции и поддержка BI-аналитики
• Сравнительный анализ: Критерии выбора для разных задач Примеры реализаций (Snowflake, Databricks Delta Lake)
• Кейсы применения: Когда выбрать DWH, а когда — Lakehouse Миграция между подходами
📚Вебинар №3: «Развертывание Spark кластера с помощью Terraform в облаке»
⏰ 23 сентября в 18:00 мск
✅На вебинаре:
• Разберем один из принципов развертывания Spark кластера в облачных провайдерах.
• Покажем Terraform конфигурации для автоматизированного развертывания кластера.
• Продемонстрируем подключение к кластеру для работы из IDE.
🎁Участники вебинаров получат подарки на почту🎁
Регистрация на вебинары ➡️ https://vk.cc/cOZRfW
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
⚙️ Когда обучение не идет. Loss is NaN. Причины и решения
В статье разберут, почему при обучении нейросети loss внезапно становится NaN и модель ломается. Расскажут, какие бывают причины этого трэша и как спасти обучение без лишней боли.
Читать...
Data-специалисты — общий сбор 💪
В этом году на IT-конференции GoCloud Tech будет отдельный трек про данные и аналитику:
➡️ Платформа данных в облаке
➡️ Как настраивать потоковое чтение с геораспределенных хранилищ
➡️ Как работают быстрые NVMe-oF RDMA-диски
➡️ Тренды в мире данных: куда стремятся СУБД
➡️ Как работать на автопилоте с Jupyter-ноутбуком
🧠 Создаем свой RAG: введение в LangGraph
В статье объясняют, что такое RAG и как использовать LangGraph для генерации с дополненной выборкой: основы, примеры и подготовка к созданию собственных RAG-систем.
Читать...
⁉️Как машинное обучение связано с AI?
Машинное обучение — это основа всего современного искусственного интеллекта, и вы можете понять, почему именно сегодня эти технологии актуальны как никогда. Присоединяйтесь к открытому вебинару 26 августа в 18:00 МСК!
Мы разберемся, как Machine Learning (ML) стал неотъемлемой частью развития AI и GenAI. Что стоит за этим технологическим бумом и как ML используется в реальных AI-моделях? Мы покажем, как использовать ML для создания мощных AI-моделей и какие знания стоит развивать сегодня.
➡️ Присоединяйтесь и получите скидку на курс «Machine Learning. Basic»: https://vk.cc/cOW5Po
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
🧠 Распознавание орхоно-енисейских рунических надписей методами машинного обучения
В статье рассказывают о расшифровке орхоно-енисейских рун: древние тексты на камне, трудности интерпретации и идеи автоматизации для точности и скорости анализа.
Читать...
👩💻 Адаптивный поиск порога "почти одинаковых" векторов
У вас есть множество эмбеддингов — векторов признаков объектов (например, предложений, изображений, пользователей).
Требуется реализовать функцию find_similar_pairs(vectors, tolerance=0.05), которая возвращает все пары индексов, где косинусная разница между векторами меньше tolerance.
Дополнительные условия:
• Векторы могут быть высокой размерности (до 512)
• Пара (i, j) считается дубликатом (i < j), если их cosine similarity ~ 1.0
• Не используйте внешние ML-библиотеки: только numpy
• Функция должна быть оптимизирована — без грубой проверки каждой пары, если можно
import numpy as npЧитать полностью…
def cosine_similarity(a, b):
a, b = np.array(a), np.array(b)
return np.dot(a, b) / (np.linalg.norm(a) * np.linalg.norm(b))
def find_similar_pairs(vectors, tolerance=0.05):
result = []
n = len(vectors)
for i in range(n):
for j in range(i + 1, n):
sim = cosine_similarity(vectors[i], vectors[j])
if 1 - sim <= tolerance:
result.append((i, j))
return result
⚙️ Линейная регрессия в ML для самых маленьких
Поясняю линейную регрессию так, чтобы стало понятно, зачем вообще эта прямая на графике и как с её помощью предсказывать результат по набору чисел. Без лишней математики.
Читать...