Data Science | Machinelearning [ru]
Все о 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.
import pandas as pd
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import train_test_split
# Пример: диагностические данные пациента
df = pd.DataFrame({
'age': [25, 40, 60, 35],
'blood_pressure': [120, 130, 150, 110],
'has_disease': [0, 1, 1, 0],
'diagnosis_code': [0, 1, 1, 0] # случайно совпадает с целевой переменной
})
X = df.drop('has_disease', axis=1)
y = df['has_disease']
X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=0)
model = LogisticRegression()
model.fit(X_train, y_train)
print("Train accuracy:", model.score(X_train, y_train))
🗣️ В этом примере diagnosis_code напрямую связан с целевой переменной has_disease. Модель «угадывает» ответы на тренировке, но это не работает в реальности. Такое скрытое совпадение — типичный пример data leakage
highly_correlated_features(data, threshold), которая вернёт список пар индексов признаков, корреляция между которыми по модулю превышает указанный threshold (от 0 до 1, не включительно).
Использовать можно только корреляцию Пирсона. Повторы пар и зеркальные дубли учитывать не нужно ((1, 2) и (2, 1) — одно и то же).
Цель:
Выявить признаки, которые слишком сильно "повторяют" друг друга и могут вызвать мультиколлинеарность в моделях.Решение задачи🔽
import numpy as np from itertools import combinations def pearson_corr(x, y): x = np.array(x) y = np.array(y) return np.corrcoef(x, y)[0, 1] def highly_correlated_features(data, threshold=0.9): arr = np.array(data) n_features = arr.shape[1] result = [] for i, j in combinations(range(n_features), 2): corr = pearson_corr(arr[:, i], arr[:, j]) if abs(corr) > threshold: result.append((i, j)) return result # Пример использования X = [ [1, 2, 10], [2, 4, 20], [3, 6, 30], [4, 8, 40], [5, 10, 50] ] print(highly_correlated_features(X, threshold=0.95)) # Ожидаемый результат: [(0, 1), (0, 2), (1, 2)]
Стабильный признак — это признак, у которого стандартное отклонение по всем объектам меньше заданного порога threshold.Реализуйте функцию
find_stable_features(matrix, threshold), которая возвращает список индексов признаков (столбцов), удовлетворяющих этому условию.
Решение задачи🔽
import numpy as np def find_stable_features(matrix, threshold=0.1): data = np.array(matrix) stds = np.std(data, axis=0) stable_indices = [i for i, std in enumerate(stds) if std < threshold] return stable_indices # Пример входных данных X = [ [1.0, 0.5, 3.2], [1.0, 0.49, 3.1], [1.0, 0.52, 3.0], [1.0, 0.5, 3.3], ] print(find_stable_features(X, threshold=0.05)) # Ожидаемый результат: [0, 1]
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()}')
Здесь модель обучается 5 раз (5-fold) на разных частях данных, и вычисляется средняя точность.
🗣️ Кросс-валидация помогает лучше понять, как модель будет работать на новых данных, улучшая её обобщение.🖥 Подробнее тут
k-NN, SVM, градиентный спуск) чувствительны к разнице в диапазонах данных
➡️ Пример:
from sklearn.preprocessing import StandardScaler
import numpy as np
X = np.array([[1, 100], [2, 300], [3, 500]])
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)
print(X_scaled)
🗣️ В этом примере признаки приводятся к виду с нулевым средним и единичным стандартным отклонением.Без масштабирования одна "большая" переменная может полностью доминировать над другими.. 🖥 Подробнее тут
