Data Science | Machinelearning [ru]
Все о Data Science, машинном обучении и искусственном интеллекте: от базовой теории до cutting-edge исследований и LLM. Личный блог автора - @just_genych По вопросам рекламы или разработки - @g_abashkin РКН: https://vk.cc/cJPGXD
Больше📈 Аналитический обзор Telegram-канала Data Science | Machinelearning [ru]
Канал Data Science | Machinelearning [ru] (@devsp) языкового сегмента Русский является активным участником. Сейчас сообщество объединяет 20 045 подписчиков, занимая 6 738 место в категории Технологии и приложения и 33 739 место в регионе Россия.
📊 Показатели аудитории и динамика
С момента создания невідомо проект демонстрирует стремительный рост, собрав аудиторию из 20 045 подписчиков.
Согласно последним данным от 14 июня, 2026, канал показывает стабильную активность. За последние 30 дней изменение числа участников составило -87, а за последние 24 часа — -13, при этом общий охват остаётся высоким.
- Статус верификации: Не верифицирован
- Уровень вовлечённости (ER): Средний показатель вовлечённости аудитории составляет 7.71%. В первые 24 часа после публикации контент обычно набирает 4.62% реакций от общего числа подписчиков.
- Охват публикаций: В среднем каждый пост получает 1 546 просмотров. В течение первых суток публикация набирает 926 просмотров.
- Реакции и взаимодействия: Аудитория активно поддерживает контент: среднее количество реакций на один пост — 7.
- Тематические интересы: Контент сосредоточен на ключевых темах, таких как llm, nvidia, контекст, openai, архитектура.
📝 Описание и контентная политика
Автор описывает ресурс как площадку для выражения субъективного мнения:
“Все о Data Science, машинном обучении и искусственном интеллекте: от базовой теории до cutting-edge исследований и LLM.
Личный блог автора - @just_genych
По вопросам рекламы или разработки - @g_abashkin
РКН: https://vk.cc/cJPGXD”
Благодаря высокой частоте обновлений (последние данные получены 15 июня, 2026) канал поддерживает актуальность и высокий уровень охвата публикаций. Аналитика показывает, что аудитория активно взаимодействует с контентом, что делает его важной точкой влияния в категории Технологии и приложения.
detect_outlier(data: List[List[float]], labels: List[str]) -> int, которая возвращает индекс выброса в списке. Гарантируется, что в labels один лейбл может быть "unknown", а может и вовсе отсутствовать — выброс может быть замаскирован.
Метрика — средняя евклидова дистанция до других представителей того же класса должна быть на порядок выше, чем у нормальных объектов.
Пример данных:
data = [ [1.1, 0.9], [1.2, 1.0], [0.9, 1.1], # cat [3.0, 3.1], [2.9, 3.0], [3.1, 2.9], # dog [5.0, 5.1], [5.1, 5.0], [8.0, 8.0], # last — выброс ] labels = ["cat", "cat", "cat", "dog", "dog", "dog", "bird", "bird", "bird"]Решение задачи🔽
import numpy as np from collections import defaultdict def detect_outlier(data, labels): data = np.array(data) grouped = defaultdict(list) for i, label in enumerate(labels): grouped[label].append(i) outlier_idx = -1 max_score = -1 for i, point in enumerate(data): label = labels[i] others = [j for j in grouped[label] if j != i] if not others: continue distances = [np.linalg.norm(point - data[j]) for j in others] avg_dist = np.mean(distances) if avg_dist > max_score: max_score = avg_dist outlier_idx = i return outlier_idx # Тест print(detect_outlier(data, labels)) # ➜ 8
@staticmethod и @classmethod в Python, и чем они отличаются?
Декораторы @staticmethod и @classmethod используются для создания методов, которые не требуют экземпляра класса. @staticmethod — это метод, который не зависит от экземпляра или самого класса, а @classmethod получает доступ к самому классу через первый параметр cls.
➡️ Пример:
class MyClass:
@staticmethod
def static_method():
return "Это статический метод"
@classmethod
def class_method(cls):
return f"Это метод класса {cls.__name__}"
# Использование
print(MyClass.static_method()) # Это статический метод
print(MyClass.class_method()) # Это метод класса MyClass
🗣️ В этом примере static_method ничего не знает о классе, в то время как class_method может взаимодействовать с классом, к которому он принадлежит. Используйте их в зависимости от того, нужно ли вам взаимодействие с классом.🖥 Подробнее тут
"A", "B", "C"), который был закодирован в виде One-Hot Encoding, а затем данные были искажены случайным шумом.
Реализуйте функцию recover_category(matrix, labels), которая по входной матрице matrix (список списков, где каждая строка — вектор с плавающими значениями после шума) и списку labels (названия категорий в нужном порядке) должна восстановить название исходной категории для каждой строки — ту, у которой была 1 до добавления шума.
Шум малый, но может нарушать точные значения (например, 1.0 становится 0.91, 0.0 — 0.08 и т.п.).
Решение задачи🔽
def recover_category(matrix, labels): result = [] for row in matrix: max_index = row.index(max(row)) result.append(labels[max_index]) return result # Пример использования matrix = [ [0.05, 0.92, 0.03], [0.89, 0.06, 0.12], [0.12, 0.08, 0.83] ] labels = ["A", "B", "C"] print(recover_category(matrix, labels)) # Ожидаемый результат: ['B', 'A', 'C']
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)
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}")
logging в Python?
logging — это встроенный модуль Python для создания логов, которые помогают отлаживать и мониторить работу приложений.
➡️ Пример:
import logging
# Настройка базового уровня логирования
logging.basicConfig(level=logging.INFO)
# Создание лога
logging.info("Приложение запущено")
logging.warning("Это предупреждение!")
logging.error("Произошла ошибка")
🗣️ В этом примере модуль logging создаёт сообщения разного уровня важности. Логирование позволяет отслеживать работу приложений и находить проблемы в коде.🖥 Подробнее тут
Уже доступно! Исследование Telegram 2025 — ключевые инсайты года 
