Анализ данных (Data analysis)
Data science, наука о данных. @haarrp - админ РКН: clck.ru/3FmyAp
Show more📈 Analytical overview of Telegram channel Анализ данных (Data analysis)
Channel Анализ данных (Data analysis) (@data_analysis_ml) in the Russian language segment is an active participant. Currently, the community unites 50 250 subscribers, ranking 2 653 in the Technologies & Applications category and 12 492 in the Russia region.
📊 Audience metrics and dynamics
Since its creation on невідомо, the project has demonstrated rapid growth, gathering an audience of 50 250 subscribers.
According to the latest data from 24 June, 2026, the channel demonstrates stable activity. Although there has been a change in the number of participants by 38 over the last 30 days and by -6 over the last 24 hours, overall reach remains high.
- Verification status: Not verified
- Engagement rate (ER): The average audience engagement rate is 9.10%. Within the first 24 hours after publication, content typically collects 6.25% reactions from the total number of subscribers.
- Post reach: On average, each post receives 4 571 views. Within the first day, a publication typically gains 3 142 views.
- Reactions and interaction: The audience actively supports content: the average number of reactions per post is 29.
- Thematic interests: Content is focused on key topics such as llm, контекст, openai, архитектура, deepseek.
📝 Description and content policy
The author describes the resource as a platform for expressing subjective opinions:
“Data science, наука о данных.
@haarrp - админ
РКН: clck.ru/3FmyAp”
Thanks to the high frequency of updates (latest data received on 25 June, 2026), the channel maintains relevance and a high level of publication reach. Analytics show that the audience actively interacts with content, making it an important point of influence in the Technologies & Applications category.
from datasets import load_dataset
dataset = load_dataset("MLCommons/speech-wikimedia")
🤗 HH: https://huggingface.co/datasets/MLCommons/speech-wikimedia
📌Статья: https://arxiv.org/abs/2308.15710v1
⭐️ Dataset: https://paperswithcode.com/dataset/voxpopuli
@data_analysis_mlpip install ipython-sql
✔️ Подключение к базе данных
Для подключения к базе данных сначала необходимо загрузить расширение IPython-SQL, а затем с помощью магической команды %sql задать строку подключения к базе данных. Синтаксис команды следующий:
%load_ext sql
%sql dialect+driver://username:password@host:port/database
Например, для подключения к базе данных SQLite с именем example.db, расположенной в текущем каталоге, используйте:
%load_ext sql
%sql sqlite:///example.db
Замените dialect+driver на соответствующий диалект и драйвер базы данных (например, mysql, postgresql, sqlite и т.д.), а также укажите необходимую информацию об аутентификации и подключении.
✔️ Выполнение SQL-запросов
После подключения к базе данных можно выполнять SQL-запросы с помощью команды %sql magic, за которой следует сам SQL-запрос. Запросы могут состоять из нескольких строк для улучшения читаемости. Вот пример:
%sql SELECT * FROM employees WHERE department = 'HR';
✔️ Доступ к результатам запросов
IPython-SQL предоставляет различные способы доступа к результатам запросов. По умолчанию результаты запроса возвращаются в виде Pandas DataFrame, что облегчает работу с данными и их анализ. Чтобы присвоить результаты запроса переменной, используйте флаг -o, за которым следует имя переменной:
result = %sql -o SELECT * FROM products;
Также можно получить прямой доступ к результатам запроса, используя переменную _:
result = %sql SELECT * FROM orders;
print(_.head()) # Display the first few rows of the result
✔️ Магические команды
IPython-SQL предлагает дополнительные магические команды для улучшения взаимодействия с базами данных:
▪️%config SqlMagic.autocommit: Включает или отключает режим автокоммита для транзакций.
▪️%config SqlMagic.displaylimit: установка максимального количества строк для отображения в результатах запроса.
▪️%%sql: Использование двойных знаков процента для выполнения многострочных SQL-запросов.
Рассмотрим пример использования магической команды %%sql для многострочных запросов:
%%sql
SELECT department, AVG(salary) as avg_salary
FROM employees
GROUP BY department
ORDER BY avg_salary DESC;
✔️ Расширенное использование
▪Продолжение
▪Github
@data_analysis_mldef create_rankings(df, columns):
rank_columns = ["rank_{}".format(i) for i in range(len(columns))]
for i, column in enumerate(columns):
df[rank_columns[i]] = df[column].rank(ascending=False)
return df, rank_columns
Шаг 2: Создание и стилизация сетки
Теперь, когда мы подготовили данные, пришло время создать сетку, на которой мы можем рисовать наши линии и флажки.
set_style- функция Seaborn, которая создает общий стиль. Она определяет такие вещи, как цвет фона и семейство шрифтов. Я также удаляю корешки и галочки.
def set_style(font_family, background_color, grid_color, text_color):
sns.set_style({
"axes.facecolor": background_color,
"figure.facecolor": background_color,
"axes.grid": True,
"axes.axisbelow": True,
"grid.color": grid_color,
"text.color": text_color,
"font.family": font_family,
"xtick.bottom": False,
"xtick.top": False,
"ytick.left": False,
"ytick.right": False,
"axes.spines.left": False,
"axes.spines.bottom": False,
"axes.spines.right": False,
"axes.spines.top": False,
}
)
Я запускаю функцию со следующими значениями.
font_family = "PT Mono"
background_color = "#FAF0F1"
text_color = "#080520"
grid_color = "#E4C9C9"
set_style(font_family, background_color, grid_color, text_color)
Для создания сетки у меня есть функция, которая форматирует оси y и x. Она принимает несколько параметров, которые позволяют мне применять различные настройки, например, размер меток.
def format_ticks(ax, years, padx=0.25, pady=0.5, y_label_size=20, x_label_size=24):
ax.set(xlim=(-padx, len(years) -1 + padx), ylim=(-len(df) - pady, - pady))
xticks = [i for i in range(len(years))]
ax.set_xticks(ticks=xticks, labels=years)
yticks = [-i for i in range(1, len(df) + 1)]
ylabels = ["{}".format(i) for i in range(1, len(df) + 1)]
ax.set_yticks(ticks=yticks, labels=ylabels)
ax.tick_params("y",labelsize=y_label_size, pad=16)
ax.tick_params("x", labeltop=True, labelsize=x_label_size, pad=8)
Вот как это выглядит, когда я запускаю все, что у нас есть на данный момент.
# Load data
years = ["2000", "2005", "2010", "2015", "2020", "2022"]
df = pd.read_csv("rankings.csv", index_col=None)
df, rank_columns = create_rankings(df, years)
# Create chart
fig, ax = plt.subplots(nrows=1, ncols=1, figsize=(15, 1.6*len(df)))
format_ticks(ax, years)
📌 Читать дальше
📌 Код
@data_analysis_mlНативная интеграция. Информация о продукте www.otus.rustruct MyModel {
l1: Linear,
l2: Linear,
}
impl MyModel {
fn new (mem: &mut Memory) -> MyModel {
let l1 = Linear::new(mem, 784, 128);
let l2 = Linear::new(mem, 128, 10);
Self {
l1: l1,
l2: l2,
}
}
}
impl Compute for MyModel {
fn forward (&self, mem: &Memory, input: &Tensor) -> Tensor {
let mut o = self.l1.forward(mem, input);
o = o.relu();
o = self.l2.forward(mem, &o);
o
}
}
• Затем модель инстанцируется и обучается.
Листинг 2. Инстанцирование и обучение нейросетевой модели
fn main() {
let (x, y) = load_mnist();
let mut m = Memory::new();
let mymodel = MyModel::new(&mut m);
train(&mut m, &x, &y, &mymodel, 100, 128, cross_entropy, 0.3);
let out = mymodel.forward(&m, &x);
println!("Training Accuracy: {}", accuracy(&y, &out));
}
Для пользователей PyTorch это интуитивно понятная аналогия определения и обучения нейросети на Python. В примере выше показана модель нейросети, используемая затем для классификации. Модель применяется к набору данных Mnist тестов производительности для сравнения двух версий модели: Rust и Python.
• В первом блоке кода создается структура MyModel с двумя слоями типа Linear.
• Второй блок — ее реализация, где определяется ассоциированная функция new, которой инициализируются два слоя и возвращается новый экземпляр структуры.
• В третьем блоке реализуется типаж Compute для MyModel, им определяется метод forward. Затем в функции main загружается набор данных Mnist, инициализируется память, инстанцируется MyModel, а после она обучается в течение 100 эпох с размером пакета 128, потерями перекрестной энтропии и скоростью обучения 0,3.
Очень даже понятно: это то, что потребуется для создания и обучения новых моделей на Rust с помощью маленького фреймворка. Теперь копнем поглубже и разберемся, как это все возможно.
Если вы привыкли создавать ML-модели в PyTorch, то наверняка, глядя на код выше, зададитесь вопросом: «Зачем здесь ссылка на Memory?». Объясним ниже. 👇
▪Часть 1
▪Часть 2
@data_analysis_mlpip install lagent
▪Github
@data_analysis_ml
Available now! Telegram Research 2025 — the year's key insights 
