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

@haarrp - админ

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

@ai_machinelearning_big_data - ML

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

РКН: clck.ru/3FmyAp
Download Telegram
📌 7 пакетов Python для анализа и форматирования вашего кода.

PEP 8 - это набор рекомендаций по написанию чистого, читабельного и последовательного кода на языке Python.

isortPython-библиотека и плагины для различных редакторов, позволяющие быстро сортировать все импортируемые файлы.

blackэто библиотека для автоматического форматирования вашего Python кода, в соответствии с требованиями PEP8.

flake8это инструмент линтинга для Python, который проверяет код Python на наличие ошибок, проблем со стилем и сложностью. Библиотека Flake8 построена на базе трех инструментов: PyFlakes - проверяет код Python на наличие ошибок. McCabe - проверяет код Python на сложность. pycodestyle - проверяет кодовую базу Python на проблемы со стилем в соответствии с PEP8..

interrogateinterrogate проверяет ваш код на наличие отсутствующих строк документации (docstrings).

Whispersэто инструмент анализа кода, предназначенный для разбора различных распространенных форматов данных в поисках жестко закодированных учетных данных и опасных функций. Whispers может работать в CLI или интегрироваться в конвейер CI/CD.

hardcodesэто утилита поиска и редактирования кода.

pylintPylint анализирует ваш код без его запуска. Инструмент проверяет наличие ошибок и выдает рекомендации по его рефакторингу.

@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥32
🔥 Бесплатный курс: Прикладная математика для машинного обучения

Курс направлен на студентов без математического бэкграунда. Будут изложены основные понятия необходимые для понимания методов, на которых строится машинное обучение и модели нейронных сетей. Также целью курса является разъяснить как могут быть преобразованы и представлены данные для последующего обучения моделей на них.

Курс состоит из 13 лекций и 13 семинаров. На лекциях излагаются теоретические основы перечисленных тем, с простыми примерами. На семинарах планируется разбор, демонстрация и практика применения программных реализаций и алгоритмов обозначенных теоретических объектов.

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

https://teach-in.ru/course/applied-mathematics-for-machine-learning/about

@data_analysis_ml
👍24🔥65
🚀 ETL: Извлечение, преобразование, загрузка с Python!

🔎 Что такое ETL и почему он важен?

Представьте себе владельца перспективного стартапа, вооруженного невероятным алгоритмом искусственного интеллекта, который предсказывает риск развития диабета на основе роста и массы тела.
Однако ваши данные разбросаны по файлам CSV и JSON, а измерения производятся в разных единицах. Введите ETL!
ETL – аббревиатура от Extract, Transform, Load.
Извлечение, преобразование и загрузка данных 🧲 – это сбор огромного количества данных из различных источников, преобразование их в единый формат и загрузка в центральную базу данных или целевой файл. 🗄️

📝 Реализуем ETL с помощью Python

• Начнем с определения функции extract, которая предполагает использование функции glob из модуля glob.
• Эта удобная функция позволяет находить файлы с определенными расширениями (например, .json и .csv) и извлекать из них данные, преобразуя их в фреймы данных для дальнейшей обработки. 📁
Импортируем некоторые важные библиотеки, необходимые для выполнения операций!

В изображениях 1, 2, 3, 4.

🔄 Преобразование данных для обеспечения их целостности

@data_analysis_ml
🔥16👍51
🚗 Тест-драйв PyTorch 2.0 и заглядываем под капот «двушки»

JIT-компиляция (Just-In-Time compilation) - это процесс, при котором код на высокоуровневом языке преобразуется в код на низкоуровневом языке, который может быть быстрее и эффективнее исполнен процессором или графическим ускорителем. torch.compile() использует TorchDynamo и заданный бэкенд для JIT-компиляции кода PyTorch.

Для того чтобы понять, как работает torch.compile() рассмотрим основные его компоненты, которые отвечают за различные аспекты JIT-компиляции кода PyTorch:

TorchDynamo – это динамический компилятор, который анализирует код PyTorch и определяет, какие части кода могут быть скомпилированы в оптимизированные ядра. Отслеживает изменения в коде и перекомпилирует его при необходимости.
AOT AutoGrad – это система автоматического дифференцирования, которая позволяет вычислять градиенты для скомпилированных ядер. Генерирует код для обратного распространения ошибки во время компиляции, а не во время исполнения, что ускоряет процесс обучения нейронных сетей.
PrimTorch – это набор примитивных операций, которые используются для построения скомпилированных ядер. Включает в себя базовые математические и логические операции, а также операции над тензорами, такие как сложение, умножение, свертка и т.д.
TorchInductor – это бэкенд для JIT-компиляции кода PyTorch в оптимизированные ядра для разных устройств. Поддерживает разные бэкенды и адаптирует код PyTorch к специфике каждого устройства.

Далее подробнее рассмотрим, как работают компоненты TorchDynamo и TorchInductor и как они взаимодействуют друг с другом, чтобы обеспечить JIT-компиляцию кода PyTorch.

📌Читать

@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥51🥰1
📝 Предварительная обработка текста в NLP с помощью Python.

Продолжаем тему NLP.

Предварительная обработка текста является одним из основных и важнейших этапов обработки естественного языка (NLP). Ее основная цель - очистить и преобразовать необработанные текстовые данные в презентабельную форму, пригодную для анализа и прогностического моделирования.

На картинках приведены основные этмпы и распространенные методы предварительной обработки текста.

@data_analysis_ml
👍165🔥1
🤗 HuggingFace Model Downloader

Полезный инструмент, написанный на Go для загрузки HuggingFace моделей.

Утилита дает возможности многопоточной загрузки файлов LFS и гарантирует целостность загруженных моделей, проверяя их контрольную сумму SHA256.

Скачивание происходит в разы быстрее, чем при использовании Git LFS.

Скрипт загрузит нужную версию на основе os/arch и сохранит бинарник под именем "hfdownloader" в той же папке:

bash <(curl -sSL https://g.bodaay.io/hfd) -h

Github

@data_analysis_ml
🔥5👍31
This media is not supported in your browser
VIEW IN TELEGRAM
Файнтюниг Llama 2 на пользовательском наборе данных за 4 шага с помощью Lit-GPT.

📌Github
📌Подробная инструкция

@data_analysis_ml
🔥53👍2
🤖 Список полезных нейросетей для датасаентита:

Amazon CodeWhisperer -сервиc, который помогает создавать приложения с помощью ии-помошника по написанию кода с поддержкой ML.

Stenography - Автоматическое документирование кода.

tabnine -Крутой сервис для автозаполнение кода.
Помогает автоматически дописывать функции на
Генерирует блоки кода на основе комментариев на естественном языке.

GPT Engineer - генерация кода с помощью ИИ.

Code Mentor - оптимизирует и рефакторит код.

Polycoder - Генерирует код на 12 языках программирования.

Cogram - переводит текстовый запрос на язык баз данных и интегрируется со средой разработки Jupyter.

Copilot by GitHub - облегчает написание кода через автодополнение.

CodeT5 - преобразовывает запрос в код и дописывает начатые функции.

Ghostwriter - ИИ- программист с искусственным интеллектом для генерации кода.

Agent GPT - устанавливает в вашем браузере ИИ-агента, который помогает в выполнении поставленной задачи.

Mintlify - ИИ, который пишет документацию и комментарии.

ExplainDev - инструмент, который обучает в процессе и помогает разобраться в коде.

@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19🔥65
Оптимизации работы Jupyter notebook при помощи параллельных вычислений (Библиотека Joblib)

В данном посте я расскажу о возможностях применения параллельных вычислений в интерактивной среде Jupyter notebook языка Python.

Для чего нам необходим параллелизм?

Параллелизм играет важную роль в задачах Data Science, так как может значительно ускорить вычисления и обработку больших объемов данных.

Вот некоторые основные причины, почему мультипроцессинг важен для этих задач:

🟢Ускорение вычислений: многие задачи в DS, такие как обучение моделей машинного обучения, кластеризация, обработка изображений и анализ больших данных, являются вычислительно интенсивными. Использование параллельных вычислений позволяет распределить работу между несколькими ядрами процессора или даже между несколькими компьютерами, что приводит к существенному ускорению выполнения задач.
🟢 Обработка больших объемов данных: параллельные вычисления позволяют эффективно распараллелить обработку данных, разделив ее на более мелкие части и выполняя их одновременно.
🟢 Оптимизация гиперпараметров: за счет параллельного выполнения экспериментов с различными значениями гиперпараметров можно ускорить процесс поиска оптимальных параметров модели.
🟢 Обработка потоковых данных: может быть необходимо обрабатывать потоковые данные в реальном времени. Мультипроцессинг позволяет эффективно обрабатывать и анализировать потоки данных, особенно в случае высоких нагрузок и необходимости обработки данных в режиме реального времени.

В языке Python уже есть реализация параллелизма на основе базового модуля — multiprocessing. Тогда почему в Jupyter notebook он не будет работать?

🟢 Читать

@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18🔥42
📕 Руководство по добавлению шума в синтетические данные с использованием Python и Numpy

Что такое шум?

Шум — это в основном бессмысленная информация, добавляемая к данным, которая приводит к их повреждению или искажению.

Наличие шума в данных является результатом их неправильного сбора и хранения.

Например, набор табличных данных может собирать шум из-за человеческих ошибок, таких как небрежное отношение к точности данных, усечение данных, неправильная маркировка данных, программные ошибки и мошенническое вмешательство в данные. Нечеловеческие причины шума обычно включают проблемы с датчиком камеры, проблемы с микрофоном и неправильную фильтрацию, вызывающую шум в изображениях и звуке.

Неправильное хранение фотопленок может привести к появлению шумов на пленках. Тепловые колебания в материале могут вызвать шум в электрических сигналах, проходящих в этом материале. Шум в радиосигналах может быть вызван электромагнитными помехами в космосе.

Шум также может быть добавлен намеренно по причинам, которые вы узнаете в следующем разделе. ➡️

Читать

@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍95🔥2
🚀Petals

Petals — это фреймворк, который позволяет дата сайентистам совместно запускать большие языковые модели.

Вы загружаете небольшую часть модели, а затем объединяетесь с людьми, обслуживающими другие части, для проведения вычислений или файнтюнига.

Инструмент позволяет генерировать текст с помощью LLaMA-65B или BLOOM-176B, и настраивать их для своих собственных задач.

Работает под GNU/Linux, macOS и Windows с WSL2.

Возможность подключить свой графический процессор, для увеличение мощности Petals.

Github
Colab
Статья

@data_analysis_ml
👍52🔥2