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

@haarrp - админ

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

@ai_machinelearning_big_data - ML

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

РКН: clck.ru/3FmyAp
Download Telegram
5️⃣ Шагов для разработки уникальных Data Science проектов

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

Но вот в чём проблема такого подхода: когда вы фокусируетесь только на существующих датасетах — на Kaggle, Google Datasets, FiveThirtyEight — вы ограничиваете свой творческий потенциал небольшим набором задач, для решения которых был разработан этот набор данных.

Читать

@data_analysis_ml
👍11🔥42👎1
🖥 Bamboolib — Анализ данных с помощью Python без программирования

Bamboolib – это библиотека Python, которая предоставляет компонент пользовательского интерфейса для анализа данных без написания кода.

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

💨Статья
🖥 Github

@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍242🔥2🥰1
↪️ 7 Простых советов, которые сделают вас профессионалом в использовании Pandas

Pandas – одна из самых популярных и широко используемых библиотек для анализа данных на Python. Её мощь и универсальность делают её незаменимым инструментом для всех, кто работает с данными.

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

Читать

@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19🔥21
“Анализ тональности текста” в Google Colab с использованием ChatGPT

Иногда люди используют слова или язык тела, чтобы показать, что они чувствуют. Анализ тональности текста (sentiment Analysis) – это своего рода компьютерный способ понять, что чувствуют люди, когда они что-то пишут, например, по электронной почте или в социальных сетях. Компьютер просматривает слова и пытается определить, несет ли написанное слово положительный, отрицательный оттенок или вовсе не несёт в себе эмоций.

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

Читать

@data_analysis_ml
👍144🔥3👎1
📊 Руководство по работе с Matplotlib

Качественный образовательный материал, объясняющий простым языком принципы построения самых разнообразных диаграмм (в том числе комбинированных, например, scatterplot + line plot).

- Про различные типы графиков
- Подробный разбор компонентов и функций matplotlib - Про то, как управлять подписями на осях, размерами и расположением визуализаций
- Разбор функций для построения продвинутых визуализаций

Руководство
Книга Matplotlib

@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍192🔥2
Гайд по работе с изображениями Python Pillow для Датасаентиста

В этом уроке вы узнаете, как:

Читать изображения с помощью Pillow
Выполнять основные операции с изображениями
Использовать Pilow для обработки изображений
Используйте NumPy с Pillow для дальнейшей обработки
Создавать анимации с помощью Pillow

В этом руководстве представлен обзор возможностей библиотеки Python Pillow с помощью распространенных методов. Как только вы освоитесь в использовании этих методов, вы сможете использовать документацию Pillow для изучения остальных методов в библиотеке.

Если вы никогда раньше не работали с изображениями в Python, это отличная возможность сразу приступить!

Читать

@data_analysis_ml
👍82🔥2
📝 Предобработка текста для обучения модели классификации

Перед обучением модели классификации необходимо провести предварительную обработку текста, используя следующие методы:

Лемматизация / стемминг
Приведение слов в нижний регистр
Исключение стоп-слов из текста
Удаление пунктуации, союзов, предлогов, частиц
Очистка текстов от часто встречающихся слов
Токенизация

Порядок шагов обязателен. Поясню: если вы предварительно не привели слова в нижний регистр, то "Документ" и "документ" будут в вашем словаре разными токенами. То же самое и для других шагов

Хотите подробный разбор каждого из методов обработки текста? Тогда ставьте свои - 🔥 и уже совсем скоро подробно разберём каждый пункт

Классификация текста с использованием моделей трансформеров

@data_analysis_ml
🔥29👍72
27 февраля стартовал финал совместного профиля «Искусственный интеллект» НТО и Академии искусственного интеллекта для школьников БФ Сбербанка «Вклад в будущее»

📌 3 дня продлится командная работа над финальной задачей.

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

📌Подробности по ссылке: https://www.ng.ru/news/760842.html

По итогам командам-победителям вручат приглашения на оплачиваемую стажировку в Сбер и компании-партнеры по направлению «Машинное обучение». Призовой фонд превышает 4 млн рублей
👍82🔥1
📄 Методы обработки текста для NLP задач: лемматизация, стемминг

Лемматизация
- приведение слова в его начальную форму в зависимости от конекста. Например: для слов "решал", "решала", "решаемые" начальная форма будет - "решать". Чтобы ваша модель классификации не считала эти слова разными - используем лемматизацию, чем повысим производительность и точность

Стемминг - удаление окончаний слов. Например: для слов "красивый", "красивое", "красивые" результатом будет - "красив". Используется для тех же целей, что и лемматизация

Код для использования и подробное описание подходов тут - статья ( от себя - рекомендую использовать spaCy )

Разберём методы исключения стоп-слов из ваших текстов после 50 🔥 под этим постом!

@data_analysis_ml
🔥42👍62
🖥 Подбор гиперпараметров модели машинного обучения в PySpark

Сегодня я расскажу, как с помощью библиотеки ML Tuning осуществить подбор гиперпараметров модели GBTRegressor в PySpark.

Apache Spark реализован на языке программирования Scala, который выполняется на JVM (Java Virtual Machine). Чтобы получить функциональность Spark в Python, используется PySpark. Поэтому те, кто не знаком со Scala, но знаком с Python, могут запросто использовать возможности фрейвморка Apache Spark.

Читать

@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍51
🔎 13 Инструкций SQL для решения 90% ваших задач по обработке данных

Независимо от того, являетесь ли вы новичком в SQL или имеете некоторый опыт работы с ним, эта статья предоставит вам ценную информацию для подготовки к интервью и практические советы по работе с данными .

Статья

@data_analysis_ml
👍17🥱72👎1🔥1🏆1
🌐 Пошаговое руководство по NLP: конструирование признаков текстовых данных

Конструирование признаков (feature engineering)  — процесс выбора и создания наиболее релевантных и полезных признаков для ввода в модель машинного обучения. Это важнейший шаг в ходе МО, который может существенно повлиять на производительность, сложность и способность модели обобщать новые данные. Тщательно выбирая и конструируя признаки, используемые в качестве входных данных, можно повысить точность и эффективность модели и избежать ее чрезмерного обучения.

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

Чтобы обучить модель МО на данных твитов, сначала нужно извлечь из них признаки. Рассмотрим различные типы признаков, которые можно извлечь из твитов, и способы их получения в Python.

Читать

@data_analysis_ml
👍15👎21🔥1
Анализ данных (Data analysis)
27 февраля стартовал финал совместного профиля «Искусственный интеллект» НТО и Академии искусственного интеллекта для школьников БФ Сбербанка «Вклад в будущее» 📌 3 дня продлится командная работа над финальной задачей. Sber AI подготовил задание по разработке…
Завершился финал по профилю «Искусственный интеллект» Национальной технологической олимпиады

Ранее мы писали, что финал стартовал 27 февраля и продлится он вплоть до 3 марта. Школьники работали над задачей от Sber AI в командном туре, а в индивидуальном — показывали свои знания математики и информатики. По итогам финала были определены:

🏅 5 команд-победителей — они получат денежные сертификаты на образование. Напомним, призовой фонд конкурса — более 4 млн рублей.

🏅8 победителей и 17 призеров индивидуального тура — они получат преференции при поступлении в топ-вузы нашей страны, а также приглашения на прохождение оплачиваемой стажировки в Сбере и командах-партнерах. Направление стажировки — «Машинное обучение».

«Вы уже все, уважаемые конкурсанты, победители. Смело идите вперед, покоряйте свои вершины. Новых вам успехов и больших побед», — поздравила конкурсантов ректор Национального исследовательского технологического института «МИСиС» Алевтина Черникова.
👍7
Раскройте потенциал Python Numpy: руководство для начинающих в науке о данных

Смотреть

@data_analysis_ml
👍15🔥32👎1🌚1
Введение в развёртывание ML: Flask, Docker и Locust

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

Изучение этой части рабочего процесса Data Science может показаться непосильным, особенно если у вас нет большого опыта разработки программного обеспечения. Не бойтесь, основная цель этой статьи — познакомить вас с одним из самых популярных фреймворков для развёртывания на Python – Flask. Кроме того, вы узнаете, как контейнеризировать развёртывание и измерить его производительность – два аспекта, которые часто упускаются из виду.

Читать
Код

@data_analysis_ml
👍13🔥21
🔎 Как найти информативные фичи при работе с данными

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

Выделение признаков – генерация новых признаков на основе имеющихся. Новые признаки полностью описывают исходный набор данных и при этом уменьшают его размерность.

В этой статье я подробно расскажу о задаче отбора признаков. Существует множество методов для решения данной задачи.

Читать

@data_analysis_ml
👍132🔥2🤣1
🛠 7 инструментов Python, которые должен иметь каждый разработчик машинного обучения и Data Science специалист.

В этой статье будут представлены 7 полезных инструментов Python, которые должны изучить все программисты в 2023 году, чтобы ускорить процесс написания кода и упростить трудоёмкие задачи анализа данных.

Вы увидите инструменты, начиная от сред разработки (IDE), таких как PyCharm, и заканчивая инструментами тестирования браузера, такими как Selenium.

Читать

@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13👎31🥰1🤔1
Как использовать Регулярные выражения в Pandas для работы со строками

Регулярное выражение – это самый мощный метод очистки и извлечения данных. Если вы когда-либо работали с большим текстовым набором данных, вы бы знали, насколько много это отнимает времени и энергии.

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

Читать

@data_analysis_ml
👍10🔥52
🖥 Ускорьте код Pandas в 120 раз — Реальные методы ускорения


Pandas – это популярная и надёжная библиотека анализа данных на Python. Она предоставляет структуры данных и функции для управления числовыми таблицами и данными временных рядов.

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

Читать

@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍155🔥2
🖼 Применение Аугментации с Даталодером

Важным для качественного решения задач CV (Computer Vision) с помощью нейронных сетей, помимо наличия качественной модели (зачастую уже предобученной на других задачах), также является датасет с достаточным количеством изображений (несколько десятков тысяч). Получить необходимый объем размеченных изображений зачастую довольно затруднительно, тогда на помощь может прийти аугментация. Аугментация позволяет увеличить объем исходного количества изображений за счет их изменений: поворот, растягивание/сжатие, изменение цветов и т.д.

Для сокращения времени процесса обучения нейронных сетей используют графические ускорители (GPU), объем памяти которых не способен вместить одновременно весь датасет и обучаемую модель. Для решения этой проблемы используют DataLoader, который «скармливает» нейросети данные из датасета порционно (батчами).

И кажется, что нет проблем: взять готовые архитектуры для аугментации, применить к датасету и поместить в даталодер. Однако, на данный момент DataLoader и Dataset в Pytorch не работают «из коробки» с популярной библиотекой для аугментации albumentations.

Выходом из этого является написание собственного класса Dataset. В данном случае — это Dataset для изображений Imagefolder (структура хранения изображений, при которой каждый класс хранится в папке с соответствующим именем). Для работы понадобится импорт следующих библиотек:

import os
import albumentations as A
from torchvision import datasets, transforms
from torch.utils.data import Dataset, DataLoader

Создадим свой собственный класс ImageFolder, наследуя из класса Dataset:
class ImageFolder(Dataset):
def __init__(self, root_dir, transform=None, total_classes=None):
self.transform = transform
self.data = []

if total_classes:
self.classnames = os.listdir(root_dir)[:total_classes] # for test
else:
self.classnames = os.listdir(root_dir)

for index, label in enumerate(self.classnames):
root_image_name = os.path.join(root_dir, label)

for i in os.listdir(root_image_name):
full_path = os.path.join(root_image_name, i)
self.data.append((full_path, index))

def __len__(self):
return len(self.data)

def __getitem__(self, index):
data, target = self.data[index]
img = np.array(Image.open(data))

if self.transform:
augmentations = self.transform(image=img)
img = augmentations["image"]

target = torch.from_numpy(np.array(target))
img = np.transpose(img, (2, 0, 1))
img = torch.from_numpy(img)

return img, target

Далее создадим правило, по которому исходное изображение будет меняться:

SIZE = 244
SIZE2 = 256

train_transform_alb = A.Compose(
[
A.Resize(SIZE2, SIZE2),
A.ShiftScaleRotate(shift_limit=0.05, scale_limit=0.05, rotate_limit=15, p=0.5),
A.RandomCrop(SIZE, SIZE),
A.RGBShift(r_shift_limit=15, g_shift_limit=15, b_shift_limit=15, p=0.5),
A.RandomBrightnessContrast(p=0.5),
A.Normalize(mean=(0.485, 0.456, 0.406), std=(0.229, 0.224, 0.225)),
]
)

В данном случае каждое изображение с какой-то долей вероятности (p) поворачивается, сжимается, обрезается, меняет цвета и яркость. А еще все изображения приводятся к одному размеру, а также нормализуются.

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

train_transform_base = A.Compose(
[
A.Resize(SIZE2, SIZE2),
A.CenterCrop(SIZE, SIZE),
A.Normalize(mean=(0.485, 0.456, 0.406), std=(0.229, 0.224, 0.225))
]
)


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

@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍31