Статьи на тему data science, machine learning, big data, python, математика, нейронные сети, искусственный интеллект (artificial intelligence) Англоязычный канал по DS и Machinelearning -https://t.me/ds_international По сотрудничеству - @g_abashkin
⚙️ Physics-based и data-driven моделирование
Статья объясняет различия между физически обоснованными моделями и моделями, основанными на данных, с примерами задач машинного обучения. Рассматривается подход к обработке данных, выбору моделей и их обучению.
Читать...
➡️ Машинное обучение: общие принципы и концепции
В этой статье я рассказываю про основные концепции, типы обучения, типы задач в машинном обучении и также делаю постановку задачи машинного обучения (МО). Все это я рассказываю в своем стиле и понимании.
Читать...
📝 Подборка вакансий для мидлов
Аналитик SQL / Data Analyst•
SQL, Python, MySQL, PostgreSQL, Yandex DataLens•
от 100 000 ₽ | 1+ год
ML-инженер•
Python, PyTorch, TensorFlow, Linux, Git, Bash•
от 100 000 ₽ | 3+ года
Machine Learning Engineer / Media AI Agents•
Python, PyTorch, TensorFlow, Hugging Face, Docker, RESTful API, Pandas•
от 2 500 до 5 000 $ | 3+ года
🤔 Почему DeepSeek Janus-7B — это нечто действительно невероятное
В статье рассматриваются ключевые особенности новой мультимодальной модели DeepSeek Janus-7B, которая, по заявлениям, превосходит популярные AI-инструменты, такие как DALL-E 3 и Stable Diffusion. Подробно анализируются её уникальные технические решения и возможности.
Читать...
🔎 Подборка вакансий для джунов
Junior ML Engineer
🟢Python, SQL, Pandas, Django, Sklearn, PyTorch, Docker, OpenAI API
🟢от 1 500 $ | 1–3 года
Аналитик ML/AI/DS
🟢Python, C/C++, R, Java, Go, JS, Kotlin, Swift, PHP, Jira, Confluence, ClearML
🟢от 150 000 ₽ | 1–3 года
Data Scientist
🟢Python, SQL, pandas, Matplotlib, Numpy, CatBoost, XGBoost, LightGBM, Git
🟢от 120 000 до 200 000 ₽ | 1–3 года
⚙️ Оптимизация Trellis: запускаем генерацию 3D моделей на GPU с 8ГБ памяти
В статье рассказано, как с помощью оптимизации Trellis удалось снизить требования к видеопамяти с 16GB до 8GB, сохранив качество. Рассмотрены подходы к сжатию данных, переработке структур и повышению доступности инструмента.
Читать...
👩💻 Нормализация набора данных
Напишите функцию, которая принимает pandas.DataFrame
и нормализует все числовые столбцы в диапазон от 0 до 1.
Пример:
import pandas as pd
data = pd.DataFrame({
'feature1': [10, 20, 30, 40],
'feature2': [1, 2, 3, 4],
'feature3': ['A', 'B', 'C', 'D'] # Не числовой столбец
})
result = normalize_dataframe(data)
print(result)
# Ожидаемый результат:
# feature1 feature2 feature3
# 0 0.0 0.0 A
# 1 0.333 0.333 B
# 2 0.667 0.667 C
# 3 1.0 1.0 D
import pandas as pdЧитать полностью…
def normalize_dataframe(df):
df_normalized = df.copy()
for col in df.select_dtypes(include='number').columns:
min_val = df[col].min()
max_val = df[col].max()
df_normalized[col] = (df[col] - min_val) / (max_val - min_val)
return df_normalized
# Пример использования:
data = pd.DataFrame({
'feature1': [10, 20, 30, 40],
'feature2': [1, 2, 3, 4],
'feature3': ['A', 'B', 'C', 'D']
})
result = normalize_dataframe(data)
print(result)
📖 «Охота на электроовец: большая книга искусственного интеллекта» или как написать книгу про ИИ без регистрации и SMS
История о том, как за 6 лет я написал двухтомник, посвящённый искусственному интеллекту и машинному обучению.
Читать...
💳 Как мы провели ИИ-трансформацию стратегических процессов Сбера
Статья рассказывает об ИИ-трансформации Сбера, включая ключевые задачи, такие как стресс-тестирование, анализ рынков и прогнозирование эффективности сотрудников. Рассматривается использование ИИ до и после трансформации.
Читать...
❓ Как работает метод feature_importances_ в Python и зачем он нужен в Machine Learning?
Метод feature_importances_
— это атрибут некоторых моделей машинного обучения в библиотеке scikit-learn, который позволяет определить, какие признаки (фичи) наиболее влияют на предсказания модели.
Этот метод возвращает значение важности для каждого признака, показывая, как сильно он влияет на конечный результат. Его использование особенно полезно для деревьев решений и ансамблевых моделей, таких как RandomForest
и GradientBoosting
.
➡️ В примере ниже мы используем RandomForest
для анализа важности признаков и визуализации результатов.
from sklearn.ensemble import RandomForestClassifier
from sklearn.datasets import load_iris
import pandas as pd
# Загрузка данных
data = load_iris()
X, y = data.data, data.target
# Создание и обучение модели
model = RandomForestClassifier()
model.fit(X, y)
# Получение и визуализация важности признаков
feature_importances = pd.Series(model.feature_importances_, index=data.feature_names)
feature_importances.sort_values(ascending=False).plot(kind='bar')
🗣 Использование feature_importances_ помогает определить, какие признаки стоит использовать, исключить малозначимые фичи и сделать модель более интерпретируемой.
📈 Подборка статей для вашей карьеры
• Больше чем книга
• Как поставить цель на обучение, чтобы дойти до конца
• Движение вверх: как стать CTO — на примере пяти историй ИТ-директоров
• Найм дизайнеров глазами лида
• Software Architect vs Solution Architect
🤔 Размер имеет значение: как исторические данные помогают на этапе дизайна A/B-теста
Статья изучает применение метода CUPED в A/B-тестах для повышения чувствительности и сокращения выборок. Рассматривается его использование на этапе дизайна эксперимента без потери статистической мощности.
Читать...
🤔 Прогнозирование продаж с использованием библиотеки Prophet
Статья посвящена прогнозированию продаж FTTB-FMC для ежедневной отчетности. Рассматриваются подходы к анализу данных, ключевые KPI и методы, используемые для прогнозирования продаж в сегменте ШПД и конвергентных продуктов.
Читать...
⚙️ Как я учился писать промпты для RAG пайплайна. Разбор 3-го места на AI Journey 24 E-com AI assistant
Статья описывает опыт создания RAG-пайплайна с использованием Gigachat API для участия в AI Journey. Автор делится инсайтами, полученными в процессе разработки ассистента для рекомендаций товаров, который занял 3-е место.
Читать...
❓ Как работает кросс-валидация в ML?
Кросс-валидация — это техника оценки модели, которая помогает избежать переобучения и лучше оценить её обобщающую способность. В классической k-блочной кросс-валидации данные разбиваются на k равных частей, и модель обучается k раз, каждый раз используя одну часть для тестирования и остальные для обучения.
➡️ Пример применения кросс-валидации с использованием библиотеки scikit-learn:
from sklearn.model_selection import cross_val_score
from sklearn.ensemble import RandomForestClassifier
from sklearn.datasets import load_iris
data = load_iris()
X, y = data.data, data.target
clf = RandomForestClassifier()
scores = cross_val_score(clf, X, y, cv=5)
print(f'Средняя точность: {scores.mean()}')
🗣️ Кросс-валидация помогает лучше понять, как модель будет работать на новых данных, улучшая её обобщение.
🤔 Deep learning в определении адреса по описанию: опыт API Яндекс Карт
На Хабре вышла статья о том, как команда API Яндекс Карт применила современные методы машинного обучения в задаче геокодирования. Новая архитектура Геокодера построена на базе active learning и contrastive learning, что позволяет быстро адаптировать инструмент для разных стран. Он способен конвертировать текстовые запросы из поисковой строки в координаты, даже если в них есть ошибки, опечатки или народные названия.
Инструмент показал существенное улучшение метрик в Казахстане: +14% rel@1 и −18% has-irrel@10.
Читать...
Совет IT-спецам на 2025 год - чаще посещайте тематические мероприятия
Зачем тратить время на Ютубчик, когда можно интересно проводить время, при этом развивая свои навыки!
А чтобы не гуглить афиши и не подписываться на сотню разных каналов, IT-мероприятия России уже собрали все самые топовые события в одном месте.
Оффлайн и онлайн, для разных специальностей и уровней знаний.
👨🏻💻 В этом канале ты найдешь самые актуальные и интересные события: анонсы форумов, конференций, митапов, вебинаров, хакатонов, олимпиад и многое другое.
Присоединяйся к комьюнити лучших спецов и заново влюбись в свою работу:
IT мероприятия России / ITMeeting / IT events
❓ Что такое Overfitting и как его избежать в моделях машинного обучения?
Overfitting (переобучение) возникает, когда модель слишком хорошо запоминает обучающие данные, включая шум, и теряет способность обобщать информацию на новых данных. Это приводит к высокому качеству на обучающем наборе, но плохим результатам на тестовых данных.
➡️ Основные способы предотвращения Overfitting:
1. Регуляризация:
• L1 и L2-регуляризация добавляют штраф к сложным моделям.
• Уменьшают коэффициенты модели, предотвращая избыточное подстраивание.
2. Dropout (для нейронных сетей):
• Исключение случайных нейронов на этапе обучения.
3. Снижение сложности модели:
• Использование меньшего числа признаков или более простых алгоритмов.
4. Увеличение данных:
• Генерация новых данных или увеличение объёма обучающей выборки.
from sklearn.linear_model import Ridge
from sklearn.model_selection import train_test_split
from sklearn.datasets import load_diabetes
# Загружаем данные
data = load_diabetes()
X_train, X_test, y_train, y_test = train_test_split(data.data, data.target, test_size=0.2, random_state=42)
# Создаём модель с регуляризацией (Ridge)
ridge = Ridge(alpha=1.0)
ridge.fit(X_train, y_train)
# Оцениваем качество
train_score = ridge.score(X_train, y_train)
test_score = ridge.score(X_test, y_test)
print(f"Train Score: {train_score}, Test Score: {test_score}")
⚡Внимание, ученые и исследователи в области ИИ!
До 31 января 2025 года вы можете подать заявку на участие в премии Data Fusion Awards. Номинация «Научный прорыв года в ИИ» создана специально для авторов научных статей по искусственному интеллекту, опубликованных в 2024 году.
🔥Призовой фонд — 3 000 000 рублей, три победителя получат по 1 000 000 рублей каждый.
Награждение пройдет 16-17 апреля в рамках конференции Data Fusion в Москве. Подробности — по ссылке.
👩💻 Предобработка текстовых данных и создание мешка слов (Bag of Words)
Напишите функцию, которая принимает список текстовых строк и возвращает мешок слов (Bag of Words) в виде словаря, где ключи — это уникальные слова, а значения — их частота встречаемости в текстах. Функция должна выполнять базовую предобработку текста: приведение к нижнему регистру, удаление знаков препинания и стоп-слов.
Пример использования:
texts = [
"I love data science!",
"Data science is amazing.",
"Machine learning is a part of data science."
]
bag_of_words = create_bag_of_words(texts)
print(bag_of_words)
# Ожидаемый результат (пример):
# {'love': 1, 'data': 3, 'science': 3, 'amazing': 1, 'machine': 1, 'learning': 1, 'part': 1}
from collections import defaultdictЧитать полностью…
import string
from nltk.corpus import stopwords
import nltk
# Загружаем стоп-слова (если не загружены, выполнить: nltk.download('stopwords'))
nltk.download('stopwords')
stop_words = set(stopwords.words('english'))
def preprocess_text(text):
# Приведение к нижнему регистру и удаление знаков препинания
text = text.lower()
text = text.translate(str.maketrans('', '', string.punctuation))
return text
def create_bag_of_words(texts):
bag = defaultdict(int)
for text in texts:
# Предобработка текста
processed_text = preprocess_text(text)
# Разделение текста на слова и подсчет частот
for word in processed_text.split():
if word not in stop_words: # Игнорируем стоп-слова
bag[word] += 1
return dict(bag)
🔥 Самые интересные статьи за последние дни:
• Реализация подобия Apple Vision Pro
• Почему LLM так плохо играют в шахматы (и что с этим делать)
• LLM будут врать вечно
• Как мы создали LLM-модель Cotype Nano
• Человек и LLM: как построить метрики для оценки моделей
🤖 Псст, ИИ нужен? 5 полезных инструментов для разработчика
Статья предлагает подборку инструментов, платформ и шаблонов для работы с языковыми моделями и создания ИИ-ассистентов. Рассматриваются протестированные в МТС решения, упрощающие разработку и интеграцию.
Читать...
🌱 Никогда не прекращай быть «джуниором»
Считаешь, что знаешь всё о своём языке или технологии? Это первый шаг к застою.
👉 Совет: хотя бы раз в месяц изучай что-то новое — экспериментируй с языком, погружайся в новый инструмент или пробуй другой подход. В IT важно не только знать, но и уметь учиться. Это ключ к тому, чтобы оставаться востребованным.
📝 Подборка вакансий для сеньоров
Data engineer•
SQL, Python, Apache Hadoop•
Уровень дохода не указан | от 3 лет
Data Engineer•
SQL, Python, Apache Airflow, Greenplum, Apache Spark•
от 250 000 ₽ | от 2 лет
Senior Data Scientist•
Python•
Уровень дохода не указан | опыт не указан
ML-инженер•
Машинное обучение, Deep Learning, Нейронные сети, Python, TensorFlow, PyTorch, Keras, Linux, Git, Docker•
Уровень дохода не указан | опыт не указан
Разработчик БД (PostgreSQL, прикладные витрины)•
SQL, PostgreSQL, ETL, Apache Airflow, Greenplum•
Уровень дохода не указан | от 3 лет
⚙️ KAN 2.0: Kolmogorov-Arnold Networks Meet Science
Статья представляет перевод работы о нейронных сетях на основе алгоритма Колмогорова-Арнольда (KAN). Рассматриваются новые исследования, связь с наукой и использование библиотеки pykan на Python для практических задач.
Читать...
🎞 Как за 6 промтов к ChatGPT создать Python скрипт, скачивающий видео с YouTube для просмотра на телевизоре через Kodi
Статья рассказывает, как с помощью Python и ChatGPT создать скрипт для автоматической загрузки видео с YouTube и генерации метаданных (описаний и обложек) для интеграции с медиацентром Kodi.
Читать...
Где взять ресурсы для обучения ML-моделей, ускорения сложных вычислений и анализа больших данных?
Все эти сложные задачи можно решить на серверах с GPU от Selectel. Выбирайте сервер с видеокартой под ваш запрос и запускайте его буквально за пару минут — не нужно тратиться на покупку оборудования, а все ресурсы GPU только ваши.
Преимущества аренды сервера с GPU в Selectel:
- Оптимальный сервер под ваши задачи. Выбирайте из десятка готовых конфигураций или соберите собственную с нужной видеокартой под ваши запросы и бюджет.
- Более 15 моделей видеокарт в наличии: от базовой GTX 1080 до профессиональных H100 и А100 (на 40 или 80 ГБ). Всегда есть ресурсы для масштабирования при росте вашего проекта.
- Выгодная аренда: оплата за фактически использованные ресурсы от 29 ₽/час и скидки до 44% на профессиональные видеокарты
- Безопасность хранения и обработки данных. Серверы соответствуют 152-ФЗ и «из коробки» имеют бесплатную защиту от DDoS-атак.
Арендуйте серверы с GPU: https://slc.tl/erxfo
Реклама, АО «Селектел», ИНН: 7810962785, ERID: 2VtzquiMtVH
👩💻 Задачка по Python
Напишите функцию, которая принимает строку и возвращает новую строку, из которой удалены все гласные буквы (a
, e
, i
, o
, u
в любом регистре).
➡️ Пример:
print(remove_vowels("Hello World")) # Ожидаемый результат: "Hll Wrld"
print(remove_vowels("Python is great")) # Ожидаемый результат: "Pythn s grt"
def remove_vowels(s):Читать полностью…
vowels = "aeiouAEIOU"
return ''.join(char for char in s if char not in vowels)
# Пример использования:
print(remove_vowels("Hello World")) # Ожидаемый результат: "Hll Wrld"
print(remove_vowels("Python is great")) # Ожидаемый результат: "Pythn s grt"
📝 Подборка вакансий для мидлов
LLM Engineer•
Проектирование и создание инфраструктуры для запуска ИИ-агентов, включая работу с RAG, tools, механизмами памяти•
Уровень дохода не указан | Требуемый опыт не указан
Tech Lead Data Engineer•
Oracle, Greenplum, ETL, DWH•
до 430 000 ₽ | от 2 лет опыта
Бизнес-аналитик / Системный аналитик•
BPMN, UML, Анализ данных, Разработка ТЗ•
до 150 000 ₽ | Средний (Middle)
⚙️ Как обеспечить Data Quality терабайтов данных и зачем: опыт СИБУРа
Статья посвящена опыту СИБУРа в создании DQ-сервиса для обеспечения качества данных. Рассматриваются задачи DQ, архитектура решения и универсальные подходы, применимые для анализа данных в крупных компаниях.
Читать...