uz
Feedback
Data Science | Machinelearning [ru]

Data Science | Machinelearning [ru]

Kanalga Telegram’da o‘tish

Все о Data Science, машинном обучении и искусственном интеллекте: от базовой теории до cutting-edge исследований и LLM. Личный блог автора - @just_genych По вопросам рекламы или разработки - @g_abashkin РКН: https://vk.cc/cJPGXD

Ko'proq ko'rsatish

📈 Telegram kanali Data Science | Machinelearning [ru] analitikasi

Data Science | Machinelearning [ru] (@devsp) Rus til segmentidagi kanali faol ishtirokchi. Hozirda hamjamiyat 19 802 obunachidan iborat bo'lib, Texnologiyalar & Aralashmalar toifasida 6 537-o'rinni va Rossiya mintaqasida 33 436-o'rinni egallagan.

📊 Auditoriya ko‘rsatkichlari va dinamika

невідомо sanasidan buyon loyiha tez o‘sib, 19 802 obunachiga ega bo‘ldi.

01 Sentabr, 2026 dagi oxirgi ma’lumotlarga ko‘ra kanal barqaror faollikka ega. Oxirgi 30 kunda obunachilar soni -110 ga, so‘nggi 24 soatda esa -2 ga o‘zgardi va umumiy qamrov yuqori darajada qolmoqda.

  • Tasdiqlash holati: Tasdiqlanmagan
  • Jalb etish (ER): Auditoriya o‘rtacha 7.88% darajada jalb etiladi. Nashrdan keyingi dastlabki 24 soatda kontent odatda umumiy obunachilar sonining 4.90% ini tashkil etuvchi reaksiyalarni to‘playdi.
  • Post qamrovi: Har bir post o‘rtacha 1 561 marta ko‘riladi; birinchi sutkada odatda 970 ta ko‘rish yig‘iladi.
  • Reaksiyalar va o‘zaro ta’sir: Auditoriya faol: har bir postga o‘rtacha 5 ta reaksiya keladi.
  • Tematik yo‘nalishlar: Kontent llm, nvidia, контекст, openai, архитектура kabi asosiy mavzularga jamlangan.

📝 Tavsif va kontent siyosati

Muallif resursni shaxsiy fikrni ifoda etish maydoni sifatida ta’riflaydi:
Все о Data Science, машинном обучении и искусственном интеллекте: от базовой теории до cutting-edge исследований и LLM. Личный блог автора - @just_genych По вопросам рекламы или разработки - @g_abashkin РКН: https://vk.cc/cJPGXD

Yuqori yangilanish chastotasi (oxirgi ma’lumot 02 Sentabr, 2026 da olingan) sababli kanal doimo dolzarb va katta qamrovli bo‘lib qoladi. Analitika auditoriya kontent bilan faol hamkorlik qilishini, uni Texnologiyalar & Aralashmalar toifasidagi muhim ta’sir nuqtasiga aylantirishini ko‘rsatadi.

19 802
Obunachilar
-224 soatlar
+27 kun
-11030 kun
Postlar arxiv
👩‍💻 Адаптивный поиск порога "почти одинаковых" векторов У вас есть множество эмбеддингов — векторов признаков объектов (например, предложений, изображений, пользователей). Требуется реализовать функцию 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-модели Рассказываю, как построить понятный и гибкий ML-процесс: чтобы данные масштабировались, новички вливались, а модель не вела себя как капризный кот. Читать...

⚙️ Линейная регрессия в ML для самых маленьких Поясняю линейную регрессию так, чтобы стало понятно, зачем вообще эта прямая на графике и как с её помощью предсказывать результат по набору чисел. Без лишней математики. Читать...

🌱 Рост идёт от дискомфорта Если задачи всегда кажутся «понятными», значит, ты топчешься на месте. 👉 Совет: бери задачи, от которых чуть некомфортно. Не настолько, чтобы парализовало, а настолько, чтобы пришлось учиться новому. Этот дискомфорт — главный двигатель развития в IT.

⚙️ RAG на практике: чат-бот для корпоративной вики Рассказываю, как делали чат-бота для внутренней документации: где споткнулись, что взлетело, и почему не всё решается embedding'ами. Может, вам сэкономит пару бессонных ночей. Читать...

⚙️ Пишем персонального AI-ассистента на Python Делюсь, как собрать простого голосового ассистента: он сам распознаёт речь, общается с LLM и отвечает голосом. Без GUI, но с кучей потенциала. Всё на Python, всё работает. Читать...

⚙️ Что такое генераторы в Python и зачем они нужны? Генераторы — это функции в Python, которые возвращают значения по одному с помощью ключевого слова yield, вместо полного возврата всех значений сразу. Они полезны для работы с большими объемами данных, так как сохраняют память, генерируя значения на лету. ➡️ Пример:
# Генератор для получения первых N чисел Фибоначчи
def fibonacci(n):
    a, b = 0, 1
    for _ in range(n):
        yield a
        a, b = b, a + b

# Используем генератор
for num in fibonacci(5):
    print(num)

# Вывод: 0, 1, 1, 2, 3
🗣️ В этом примере генератор fibonacci вычисляет числа по запросу, вместо сохранения всех значений в памяти. Это делает генераторы особенно удобными для работы с потоками данных или бесконечными последовательностями.
🖥 Подробнее тут

Стань AI-инженером мирового уровня и зарабатывай до 1 млн. ₽ Уже сейчас работодатели активно ищут таких специалистов, и спрос
Стань AI-инженером мирового уровня и зарабатывай до 1 млн. ₽ Уже сейчас работодатели активно ищут таких специалистов, и спрос на них будет только расти! Магистратура «ИИ и компьютерное зрение» в ИТ-университете НЕЙМАРК — это: 1) онлайн обучение на английском языке 2) 2 диплома: НИУ ВШЭ + НЕЙМАРК 3) реальные задачи от Intel, Huawei, SBERLAB и других 4) возможность запустить стартап при поддержке наставников во время обучения 5) отсрочка от армии Узнай, как поступить и учиться бесплатно — переходи в бот и забирай инструкцию! Реклама. НЕЙМАРК, УНИВЕРСИТЕТ НЕЙМАРК. ИНН 5256209106.

👩‍💻 Определение "аномального" элемента в сбалансированных данных Вам передаётся сбалансированный набор объектов из 3-х различных классов (например, "cat", "dog", "bird"). Каждый объект представлен вектором признаков (list of floats). Один объект — подброшенный и не принадлежит ни одному из трёх известных классов: он отличается распределением. Ваша задача — реализовать функцию 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

⚙️ Обнаружение аномалий в данных временных рядов с помощью статистического анализа Рассказываю, почему статичные пороги — не выход, когда дело доходит до пользовательской активности. Покажу, как в таких случаях спасает обнаружение аномалий. Читать...

Задача классификации с BERT: научи модель BERT понимать настроение отзывов о ресторанах Представь, что ты — владелец сети каф
Задача классификации с BERT: научи модель BERT понимать настроение отзывов о ресторанах Представь, что ты — владелец сети кафе. Каждый день приходят десятки отзывов: кто-то хвалит десерты, кто-то жалуется на медленное обслуживание. Нужно быстро понять, какие отзывы положительные, а какие — негативные. 🔵 Что у тебя уже есть: Предобученная модель BERT, которая умеет работать с текстами, но пока не знает ничего про рестораны. Исторические размеченные отзывы: positive и negative. 💬 Примеры отзывов: — «Лучшие пельмени в городе!» — «Ждали заказ 40 минут, больше не придём» 📌 Что нужно сделать: - Загрузить датасет и разделить его на обучение и тест. - Подготовить тексты для BERT: токенизация, паддинг, усечение. - Дообучить модель на этих отзывах. - Проверить, как она справляется на тесте (accuracy, F1). - Протестировать на своих примерах — вбить пару «живых» отзывов и посмотреть предсказание. 🎯 Результат: Модель, которая сама читает отзывы и понимает их настроение. После курса «NLP / Natural Language Processing» от OTUS вы будете делать такие вещи играючи — и не только с ресторанами. Пройдите короткое вступительное тестирование и получите скидку на обучение: https://vk.cc/cOLspv Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

⚙️ ChatGPT все еще не догнать: что происходит на ИИ-рынке к середине 2025 года? 2025 год подходит к экватору, поэтому самое время посмотреть, как поменялись позиции крупнейших компаний-разработчиков. Но для начала предлагаю посмотреть на две иллюстрации. Первая — рейтинг ИИ от ресурса LMArena. Читать...

⚙️ Залезаем на плечи гигантов — создаем модуль для ComfyUI для свободного движения камеры и создание 6dof сцен из фото Расскажу, как из одного кадра получить свободную 3D-прогулку: доращиваем панорамы, меняем проекции и крутим ракурсы в VR с помощью кастомного модуля для ComfyUI. Читать...

⚙️ Что бы я сделал, если бы сегодня начинал учить Data Science / ML? Эта статья — не очередной «гайд по ML для новичков». Это мой личный взгляд на то, как бы я подошёл к обучению, если бы начинал с нуля уже сегодня , учитывая свой опыт работы в крупных компаниях, проваленные проекты, ошибки и победы.. Читать...

👩‍💻 Чем отличается метод .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() удобно использовать для обработки данных с сохранением исходной структуры.
🖥 Подробнее тут

⚙️ Как устроено глубокое обучение нейросетей Эта статья не ответит на все вопросы, но мы пробежимся по всем основам глубокого машинного обучения, что бы создать примерную начальную картину без сильного углубления в детали. Читать...

⚙️ Прогнозирование исходов футбольных матчей в реальном времени с помощью байесовской модели Показываю, как модель с динамической силой команд предсказывает исходы матчей лучше классики. Не угадываю счёт, но выигрываю на ставках. У букмекеров шансы тают. Читать...

👩‍💻 Построй визуализацию распределения признаков с автоматической категоризацией Создайте функцию 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)

⚙️ Похож ли ваш текст на ИИ? Пытаюсь вычленить шаблоны, по которым палятся тексты от нейросетей: гладкие, пустые, «умные». И придумать способ автоматом понять — писал ли это ИИ или просто скучный человек. Читать...