Анализ данных (Data analysis)
46.3K subscribers
2.33K photos
271 videos
1 file
2.06K links
Data science, наука о данных.

@haarrp - админ

@itchannels_telegram - 🔥 главное в ит

@ai_machinelearning_big_data - ML

@machinelearning_interview - вопросы с собесдований по Ml

РКН: clck.ru/3FmyAp
Download Telegram
Event-Driven Declarative Orchestrator

Популярные библиотеки оркестровки потоков операций по обработке данных, такие как Airflow, требуют написания Python-кода для использования их возможностей, что усложняет код и затрудняет работу с проектом.

Чтобы отделить код data science от логики оркестровки, используйте библиотеку
Kestra.

Github
Демо

@data_analysis_ml
7👍4🔥1😁1
🚀 Ruff

Ruff - это #Python-линтер, написанный на Rust, который может быть использован для замены различных инструментов, таких как Flake8, isort, pydocstyle, yesqa, eradicate, pyupgrade и autoflake.

Ruff также работает в 10-100 раз быстрее, чем существующие линтеры.

pip install ruff

Github
Документация

@data_analysis_ml
👍6🔥42👎1
🧑Использование библиотеки Facerecognition и фреймворка Django для распознавания лиц в реальном времени

В этом посте рассмотрим, как использовать библиотеку Facerecognition для распознавания лиц на изображениях. Комбинируя ее с веб-фреймворком Django, мы покажем этапы создания веб-приложения пропускной системы.

Здесь вы найдете простые и понятные инструкции, шаг за шагом, которые помогут создать свою собственную пропускную систему, способную распознавать лица и управлять доступом в компании.

В процессе решения задачи было выделено 3 основных фреймворка для создания веб-приложений: Django, Flask и FastAPI. Рассмотрим особенности каждого из них.

Одним из плюсов фреймворка FastAPI является поддержка асинхронных процессов. Такие процессы позволяют увеличить скорость обработки данных в разы. Также плюсом данного фреймворка является поддержка из коробки Websockets. Благодаря указанному протоколу пользователь может получать данные в режиме реального времени.

📌Читать дальше
📌Github

@data_analysis_ml
👍63🔥1
💛 Зачем нужен AutoGPT


AutoGPT  —  это автономный агент, одна из форм ИИ, автономно решающая поставленную задачу.

AutoGPT использует модель GPT-4 для автоматизации многоэтапных проектов, требующих обратного взаимодействия.
Это позволяет агенту AutoGPT объединять выводы и суждения независимо.
Агент имеет доступ к интернету и может чтение/запись файлов. Агенты на базе AutoGPT должны сделать GPT-4 полностью автономным сервисом.

Сейчас на Github представлены три наиболее популярных AutoGPT:

🟡BabyAGI от Йохеи Накадзимы;
🟡Auto-GPT Торана Брюса Ричардса, известного под псевдонимом Significant Gravitas;
🟡Jarvis от Microsoft.

Запускать эти популярные AutoGPT можно после локальной установки. А для этого требуется определенный опыт программирования, поскольку агент работает на Python и требует ключей OpenAI и приложения Pinecone.

💛 Однако уже появились приложения AutoGPT, запускаемые в браузере, например AgentGPT и Cognosys. BabyAGI также может работать в браузере через пространство Hugging Face.

Поскольку эксперимент находится в стадии разработки, можно ожидать, что AutoGPT скоро станет удобнее для пользователя, получит приятный и интуитивно понятный интерфейс.

⭐️ R&D лаборатория Adept AI разрабатывает модели ИИ для автоматизации выполнения задач и преобразования текстовых команд в действия.

Они используются в различных сферах, таких как туризм (например, Expedia) и возможно в будущем и в медицине.

Целью этих разработок является создание активных агентов ИИ, которые могут принимать самостоятельные решения.

Это выводит ChatGPT на новый уровень и превращает ИИ в помощника человека.

@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥43
🔥 Дайджест полезных материалов из мира : Data Science за неделю

Почитать:
Неструктурированные данные: примеры, инструменты, методики и рекомендации
Строим пайплайн в sсikit-learn — пошаговое руководство
Цифровая трансформация цементного завода (ч.9): автоматическая корректировка качества муки
MLOps от Gucci и оценка уровня Data Driven’ности в компании
Kaggle для футболистов. Разбираем подходы призеров соревнований по детекции столкновений (1 и 2 место)
Вам в хранилище или к озеру? Чем занимаются специалисты по работе с данными и как стать Data-инженером
Преобразование табличных данных в Python
Работа с матрицами в python
SRP: Refactoring the Data Science Beyond Classes
NumPy Tutorial #9: Array Join
How to use Kaggle for Climate Change studies
Apache Flink
Troubleshooting SQL Server Errors - A Comprehensive Guide
NumPy Tutorial #8: Array Iterating
How to handle datasets with missing values In machine learning
5 FREE Machine Learning Online Courses
NumPy Tutorial #7: Array Reshape
The most important skills for data scientist

Посмотреть:
🌐 How to use GitHub Codespaces for Coding and Data Science ( 11:53)
🌐 Практика парсинга Python ( 05:27)
🌐 Уроки Парсинга на Python Сравниваем Scrappy и bs4 ( 10:06)
🌐 Большой гайд по парсингу на Python. Часть 3 Работаем с selenium ( 06:14)
🌐 Уроки Golang с нуля /#24 - Тесты ( 09:50)
🌐 Полный Гайд по парсингу на Python: от азов до продвинутых техниик,. Часть 1 ( 07:04)
🌐 Полный Гайд по парсингу на Python: Практика. Часть 2 ( 05:59)
🌐 ODSC APAC Keynote Talk "Infuse Generative AI in your Apps Using Azure OpenAI Service" ( 24:32)
🌐 Lightning Interview "Confident Data Science" ( 48:13)
🌐 ODSC APAC Keynote Talk "Navigating the Post Pandemic Credit Risk Landscape with AI/ML Innovation" ( 23:24)
🌐 New AI Beats DeepMind’s AlphaGo Variants 97% Of The Time! ( 06:01)
🌐 AI Mind Reading Experiment! ( 05:47)

Хорошего дня!

@data_analysis_ml
🔥16👍87
🦙 Lagent: A lightweight framework for building LLM-based agents

Lagent - это легковесный фреймворк с открытым исходным кодом, который позволяет легко и эффективно создавать агентов на основе больших языковых моделей (LLM). Он также предоставляет некоторые типовые инструменты для расширения возможностей LLM.

pip install lagent

Github

@data_analysis_ml
8👍5🔥2
🔥📖 Список Awesome ресурсов, посвященных обработке естественного языка

Использование #NLP на разных языках

Библиотеки на различных языках (C++, Java, NodeJS, R, Scala, Python, ...)

Рекомендации и полезные учебные пособия

Датасеты

Лучшие практики

📌Github

@data_analysis_ml
👍9🔥4🤔21
🔝Лучшие GitHub репозитории для изучения MLOps.

#️⃣ MLOps-Basics

#️⃣ MLOps-Guide

#️⃣ Awesome MLOps

#️⃣ Awesome MLOps - Tools

#️⃣ DTU MLOps

#️⃣ MLOps Course

@data_analysis_ml
🔥8👍42
Департамент информационных технологий города Москвы ищет аналитика Data Science.

Ты: любишь искать закономерности и строить прогнозные модели на основе больших данных, владеешь Python (DS-библиотек), у тебя есть знания и опыт в Machine Learning и владение различными инструментами визуализации данных?

У нас: задачи городского масштаба, конкурентная зарплата и премии, обучение и профессиональный рост!

Направляй свое резюме @sergey_job и присоединяйся к команде Департамента информационных технологий, чтобы сделать город еще комфортнее.
👍8🤨6👎3😱2🍌2🤔1
👆 Рост производительности машинного обучения с Rust

Создадим с нуля небольшой фреймворк машинного обучения на Rust.

Цели
1. Выяснить, заметен ли рост скорости при переходе с Python и PyTorch на Rust и LibTorch, серверную библиотеку PyTorch на C++, особенно в процессе обучения модели. ML-модели становятся крупнее, для их обучения требуется больше вычислительных возможностей, для обычного человека порой нереальных. Один из способов уменьшить рост аппаратных требований — понять, как сделать алгоритмы вычислительно эффективнее. Python в PyTorch — это лишь слой поверх LibTorch. Вопрос в том, стоит ли менять его на Rust. Планировалось использовать крейт Tch-rs для доступа к тензорам и функционалу Autograd DLL-библиотеки LibTorch как «калькулятору градиентов», а затем разработать с нуля на Rust остальное.
2. Сделать код достаточно простым для четкого понимания всех вычислений линейной алгебры и с возможностью легко его расширить при необходимости.
3. Во фреймворке ML-модели должны определяться, насколько это возможно, по аналогичной структуре стандартных Python/PyTorch.
4. Поизучать Rust и не скучать.

Но статья посвящена скорее преимуществам применения Rust в машинном обучении.

Переходим сразу к конечному результату — вот как маленьким фреймворком создаются нейросетевые модели.

Листинг 1. Определение нейросетевой модели
struct 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_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍73🔥21👎1
🖥 Delta Lake — это платформа хранения данных с открытым исходным кодом, которая позволяет строить архитектуру Lakehouse для Spark, Flink, Trino, Hive, Scala, Java, Rust, Python и не только!

С помощью Delta Lake вы можете ускорить выполнение запросов Polars по сравнению с CSV.

Посмотрите на время выполнения запроса #polars для файла #csv с 1 миллиардом строк в сравнении с упорядоченной таблицей deltalake (вычисления выполняются на Macbook M1). Delta Lake работает в 30 раз быстрее.

Github
Project

@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍84🔥2
Команда архитекторов Yandex Cloud собрала общепринятые методики и проверенные практики, которые помогут оптимизировать хранилище данных на базе Greenplum:

✓ как рассчитать и спланировать оптимальную конфигурацию кластера;
✓ как выбрать модель данных;
✓ какие особенности Greenplum учесть;
✓ какой сценарий интеграции с источниками выбрать;
✓ как выполнять оптимизации кластера и другие административные операции.

Делимся с вами контентом бесплатно!

➡️ Заполните форму, чтобы получить доступ.
5
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥14👍82
🖥 Как создать привлекательные графики с рейтингами стран с помощью Python и Matplotlib

Шаг 1: Создание рейтингов

На первом этапе необходимо упорядочить страны по каждому году в датасете, что легко сделать с помощью pandas.
def 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
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥16👍71👎1
🖥 Выполнение SQL непосредственно в Jupyter Notebook с помощью IPython-SQL

IPython-SQL – это мощный инструмент, позволяющий легко интегрировать язык SQL (Structured Query Language) в среду IPython или Jupyter Notebook. Такая интеграция позволяет выполнять SQL-запросы и взаимодействовать с базами данных, используя при этом интерактивные возможности IPython. В этом руководстве мы рассмотрим установку, настройку и базовое использование IPython-SQL.

✔️ Установка

pip 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_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍24🔥32🤨2🤔1😍1
This media is not supported in your browser
VIEW IN TELEGRAM
🚀 Список лучших Data Science шпаргалок

🔸Статистика - https://res.cloudinary.com/dyd911kmh/image/upload/v1662111933/Marketing/Blog/Descriptive_Statistics_Cheat_Sheet.pdf

🔸Теория вероятностей - https://res.cloudinary.com/dyd911kmh/image/upload/v1674822557/Marketing/Blog/Probability_Cheat_Sheet.pdf

🔸Data storytelling - https://res.cloudinary.com/dyd911kmh/image/upload/v1662633286/Marketing/Blog/Data_Storytelling_Cheat_Sheet.pdf

🔸Data Visualization - https://s3.amazonaws.com/assets.datacamp.com/email/other/Data+Visualizations+-+DataCamp.pdf

🔸Machine Learning - https://s3.amazonaws.com/assets.datacamp.com/email/other/ML+Cheat+Sheet_2.pdf

🔸Deep Learning - https://github.com/afshinea/stanford-cs-229-machine-learning/blob/master/en/cheatsheet-deep-learning.pdf

🔸Big Data - https://github.com/Ritik2703/Data-Science-Cheat-Notes-/blob/master/Big%20Data/Hadoop-and-mapreduce-cheat-sheet.pdf

🔸NLP - https://cheatography.com/sree017/cheat-sheets/nlp/

🔸SQL - https://s3.amazonaws.com/assets.datacamp.com/email/other/SQL+for+Data+Science.pdf

🔸Python - https://res.cloudinary.com/dyd911kmh/image/upload/v1673614153/Marketing/Blog/Python_Cheat_Sheet_for_Beginners.pdf

🔸R Programming - https://res.cloudinary.com/dyd911kmh/image/upload/v1654763044/Marketing/Blog/R_Cheat_Sheet.pdf

🔸Plotly Express - https://res.cloudinary.com/dyd911kmh/image/upload/v1668605954/Marketing/Blog/Plotly_Cheat_Sheet.pdf

🔸Git - https://res.cloudinary.com/dyd911kmh/image/upload/v1656573882/Marketing/Blog/git_cheat_sheet.pdf

🔸Excel - https://res.cloudinary.com/dyd911kmh/image/upload/v1674225421/Marketing/Blog/Excel_Cheat_Sheet.pdf

🔸Tableau - https://s3.amazonaws.com/assets.datacamp.com/email/other/Tableau+Cheat+Sheet.pdf

🔸Power BI - https://s3.amazonaws.com/assets.datacamp.com/email/other/Power+BI_Cheat+Sheet.pdf

@data_analysis_ml
🔥16👍108🤨2😁1
🗣💭 Speech Wikimedia: A 77 Language Multilingual Speech Dataset

Speech-wikimedia - это общедоступная компиляция аудиозаписей с транскрипциями, взятых из Wikimedia. Она включает 1780 часов (195 ГБ) транскрибированной речи с лицензией CC-BY-SA из различных источников и дикторов на 77 различных языках.

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_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍64🔥1