Інтерактивний віджет підготовки даних для ноутбуків на базі Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Інтерактивний віджет підготовки даних для ноутбуків на базі Amazon SageMaker Data Wrangler

Згідно з опитуванням спеціалістів із обробки даних у 2020 році, проведеним компанією Anaconda, підготовка даних є одним із найважливіших етапів у робочих процесах машинного навчання (ML) і аналітики даних, і часто займає дуже багато часу у спеціалістів із обробки даних. Науковці даних витрачають близько 66% свого часу на підготовку та аналіз даних, включаючи завантаження (19%), очищення (26%) і візуалізацію даних (21%).

Студія Amazon SageMaker це перше повністю інтегроване середовище розробки (IDE) для ML. Одним клацанням миші науковці та розробники даних можуть швидко розкрутитися Студійні блокноти досліджувати набори даних і будувати моделі. Якщо ви віддаєте перевагу інтерактивному інтерфейсу на основі графічного інтерфейсу користувача, ви можете використовувати Amazon SageMaker Data Wrangler, із понад 300 вбудованими візуалізаціями, аналізами та перетвореннями для ефективної обробки даних, підтриманих Spark, без написання жодного рядка коду.

Data Wrangler тепер пропонує вбудовану можливість підготовки даних у Ноутбуки Amazon SageMaker Studio це дозволяє фахівцям з машинного навчання візуально переглядати характеристики даних, виявляти проблеми та виправляти проблеми з якістю даних — лише кількома клацаннями миші прямо в блокнотах.

У цій публікації ми покажемо вам, як Data Wrangler Віджет підготовки даних автоматично генерує ключові візуалізації поверх фрейму даних Pandas, щоб зрозуміти розподіл даних, виявити проблеми з якістю даних і статистику поверхневих даних, наприклад викиди для кожної функції. Це допомагає взаємодіяти з даними та відкривати інформацію, яка може залишитися непоміченою за допомогою спеціальних запитів. Він також рекомендує перетворення для виправлення, дає змогу застосовувати перетворення даних в інтерфейсі користувача та автоматично генерувати код у клітинках блокнота. Ця функція доступна в усіх регіонах, де доступна SageMaker Studio.

Огляд рішення

Давайте далі зрозуміємо, як цей новий віджет значно спрощує дослідження даних і надає бездоганний досвід для покращення загального досвіду підготовки даних для інженерів і практиків обробки даних. Для нашого випадку використання ми використовуємо модифіковану версію Набір даних Титаніка, популярний набір даних у спільноті машинного навчання, який тепер додано як a зразок набору даних щоб ви могли швидко розпочати роботу з SageMaker Data Wrangler. Оригінальний набір даних було отримано з OpenML, і змінено, щоб додати проблеми з якістю синтетичних даних від Amazon для цієї демонстрації. Ви можете завантажити модифіковану версію набору даних із публічного шляху S3 s3://sagemaker-sample-files/datasets/tabular/dirty-titanic/titanic-dirty-4.csv.

Передумови

Щоб отримати практичний досвід роботи з усіма функціями, описаними в цьому дописі, виконайте такі попередні умови:

  1. Переконайтеся, що у вас є обліковий запис AWS, безпечний доступ для входу в обліковий запис через Консоль управління AWS та Управління ідентифікацією та доступом AWS (IAM) дозволи на використання Amazon SageMaker та Служба простого зберігання Amazon (Amazon S3).
  2. Використовуйте зразок набору даних із загальнодоступного шляху S3 s3://sagemaker-sample-files/datasets/tabular/dirty-titanic/titanic-dirty-4.csv або, альтернативно завантажте його у відро S3 у вашому обліковому записі.
  3. Підключіться до домену SageMaker і отримайте доступ до Studio, щоб використовувати блокноти. Інструкції див На борту до домену Amazon SageMaker. Якщо ви використовуєте наявну Studio, оновіть до Остання версія Studio.

Увімкніть віджет дослідження даних

Коли ви використовуєте фрейми даних Pandas, користувачі ноутбуків Studio можуть вручну ввімкнути віджет дослідження даних, щоб нові візуалізації відображалися за замовчуванням у верхній частині кожного стовпця. Віджет показує гістограму для числових даних і гістограму для інших типів даних. Ці представлення дозволяють швидко зрозуміти розподіл даних і виявити відсутні значення та викиди без необхідності писати шаблонні методи для кожного стовпця. Ви можете навести курсор на смужку в кожному візуалі, щоб швидко зрозуміти розподіл.

Відкрийте Studio та створіть новий блокнот Python 3. Обов’язково виберіть Наука про дані 3.0 зображення із зображень SageMaker, натиснувши Змінити середовище кнопки.

Віджет дослідження даних доступний на наступних зображеннях. Список зображень SageMaker за замовчуванням див Доступні зображення Amazon SageMaker.

  • Python 3 (Data Science) з Python 3.7
  • Python 3 (Data Science 2.0) з Python 3.8
  • Python 3 (Data Science 3.0) з Python 3.10
  • Spark Analytics 1.0 і 2.0

Щоб використовувати цей віджет, імпортуйте SageMaker_DataWrangler бібліотека. Завантажте модифіковану версію набору даних Титаніка з S3://sagemaker-sample-files/datasets/tabular/dirty-titanic/titanic-dirty-4.csv і прочитайте CSV за допомогою бібліотеки Pandas:

import pandas as pd
import boto3
import io
import sagemaker_datawrangler

s3 = boto3.client('s3')
obj = s3.get_object(Bucket='sagemaker-sample-files', Key='datasets/tabular/dirty-titanic/titanic-dirty-4.csv')
df = pd.read_csv(io.BytesIO(obj['Body'].read()))

data wrangler data prep widget – приклад блокнота

Візуалізуйте дані

Після завантаження даних у фрейм даних Pandas ви можете переглянути дані, просто використовуючи df or display(df). Разом із переліком рядків, віджет підготовки даних створює статистичні дані, візуалізації та поради щодо якості даних. Вам не потрібно писати додатковий код, щоб генерувати статистичні дані про функції та цілі, інформацію про розповсюдження або відтворення перевірок якості даних. Ви можете вибрати заголовок таблиці фрейму даних, щоб переглянути статистичний підсумок із застереженнями щодо якості даних, якщо такі є.

візуалізувати дані

У кожному стовпці відображається гістограма або гістограма залежно від типу даних. За замовчуванням віджет відбирає до 10,000 XNUMX спостережень для отримання значущої інформації. Він також надає можливість запустити аналітичний аналіз усього набору даних.

Як показано на наступному знімку екрана, цей віджет визначає, чи містить стовпець категоричні чи кількісні дані.

категоріальні або кількісні дані

Для категорійних даних віджет створює гістограму з усіма категоріями. На наступному скріншоті, наприклад, стовпець Sex визначає категорії даних. Ви можете навести курсор на панель (чоловік у цьому випадку), щоб побачити деталі цих категорій, наприклад загальну кількість рядків із значенням male і його розподіл у загальному візуалізованому наборі даних (64.07% у цьому прикладі). Він також виділяє загальний відсоток відсутніх значень іншим кольором для категоріальних даних. Для кількісних даних, таких як ticket у цьому стовпці показано розподіл разом із відсотком недійсних значень.

Якщо ви хочете побачити стандартну візуалізацію Pandas у блокноті, ви можете вибрати Перегляньте таблицю Pandas і перемикайтеся між віджетом і представленням Pandas, як показано на наступному знімку екрана.

Перегляньте таблицю Pandas

переглянути таблицю диспетчера даних

Щоб отримати детальнішу інформацію про дані в стовпці, виберіть заголовок стовпця, щоб відкрити бічну панель, присвячену стовпцю. Тут ви можете побачити дві вкладки: Insights та Якість даних.

Статистика та якість даних

У наступних розділах ми докладніше розглянемо ці два варіанти.

Insights

Команда Insights Вкладка містить деталі з описом для кожного стовпця. У цьому розділі наведено зведену статистику, таку як режим, кількість унікальних, співвідношення та кількість відсутніх/недійсних значень тощо, а також візуалізуйте розподіл даних за допомогою гістограми або гістограми. На наступних знімках екрана ви можете переглянути аналітичні дані та інформацію про розподіл, що відображається за допомогою легко зрозумілих візуалізацій, створених для вибраного стовпця survived.

Якість даних

Віджет підготовки студійних даних висвітлює виявлені проблеми з якістю даних за допомогою попереджувального знака в заголовку. Віджет може ідентифікувати весь спектр проблем із якістю даних: від базових (відсутні значення, постійний стовпець тощо) до більш специфічних для ML (цільовий витік, функції з низьким прогнозним показником тощо). Віджет виділяє комірки, які спричиняють проблеми з якістю даних, і реорганізує рядки, щоб проблемні комірки розташувалися вгорі. Щоб вирішити проблему з якістю даних, віджет пропонує кілька трансформаторів, які можна застосувати одним натисканням кнопки.

Щоб переглянути розділ якості даних, виберіть заголовок стовпця, а на бічній панелі виберіть Якість даних вкладка. У середовищі Studio ви повинні побачити наступне.

вкладка якості даних

Давайте розглянемо різні варіанти, доступні на Якість даних вкладка. Для цього прикладу ми вибираємо віковий стовпець, який визначається як кількісний стовпець на основі даних. Як ми бачимо на наступному знімку екрана, цей віджет пропонує різні типи трансформацій, які ви можете застосувати, включаючи найпоширеніші дії, такі як Замінити новим значенням, Відсутня крапля, Замінити медіаноюабо Замінити на середнє. Ви можете вибрати будь-який із них для свого набору даних залежно від варіанту використання (проблеми ML, яку ви намагаєтеся вирішити). Це також дає вам Колонка скидання якщо ви хочете повністю видалити цю функцію.

вік

Коли ви обираєте Застосувати та експортувати код, перетворення застосовується до глибокої копії кадру даних. Після успішного застосування перетворення таблиця даних оновлюється статистичними даними та візуалізаціями. Код перетворення генерується після наявної клітинки в блокноті. Ви можете запустити цей експортований код пізніше, щоб застосувати перетворення до своїх наборів даних і розширити його відповідно до ваших потреб. Ви можете налаштувати перетворення, безпосередньо змінюючи згенерований код. Якщо ми застосуємо Відсутня крапля у стовпці «Вік», наступний код перетворення застосовується до набору даних, а код також генерується в комірці під віджетом:

#Pandas code generated by sagemaker_datawrangler
output_df = df.copy(deep=True) 

#Code to Drop missing for column: age to resolve warning: Missing values 
output_df = output_df[output_df['age'].notnull()]

Нижче наведено ще один приклад фрагмента коду для Замінити медіаною:

#Pandas code generated by sagemaker_datawrangler
output_df = df.copy(deep=True) 

#Code to Replace with median for column: age to resolve warning: Missing values 
output_df['age']=output_df['age'].fillna(output_df['age'].median(skipna=True))

Тепер давайте розглянемо цільові можливості віджета підготовки даних. Припустімо, ви хочете використовувати survived можливість передбачити, чи виживе пасажир. Виберіть survived заголовок стовпця. На бічній панелі виберіть Виберіть як цільовий стовпець. Ідеальний розподіл даних для survived функція повинна мати лише два класи: так (1) чи ні (0), що допомагає класифікувати шанси вижити під час аварії Титаніка. Однак через невідповідність даних у вибраному цільовому стовпці функція, що збереглася, є 0, 1, ?, unknown та yes.

вибрати як цільовий стовпець

Виберіть тип проблеми на основі вибраного цільового стовпця, який може бути будь-яким Класифікація or Регресія. Для колонки, що збереглася, тип задачі – класифікація. Виберіть прогін щоб створити статистику для цільового стовпця.

вижив

Віджет підготовки даних містить статистичні дані цільового стовпця з рекомендаціями та прикладами пояснень щодо вирішення проблем із якістю даних цільового стовпця. Він також автоматично виділяє аномальні дані в стовпці.

статистичні дані цільового стовпця з рекомендаціями

Вибираємо рекомендоване перетворення Скинути рідкісні цільові значення, тому що є менше спостережень для рідкісних цільових значень.

Скинути рідкісне цільове значення

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

# Pandas code generated by sagemaker_datawrangler
output_df = df.copy(deep=True)

# Code to Drop rare target values for column: survived to resolve warning: Too few instances per class 
rare_target_labels_to_drop = ['?', 'unknown', 'yes']
output_df = output_df[~output_df['survived'].isin(rare_target_labels_to_drop)]

Результати застосованого перетворення одразу видно на кадрі даних. Щоб відстежувати дії з підготовки даних, застосовані за допомогою віджета підготовки даних, перетворений код також генерується в наступній клітинці блокнота.

Висновок

У цій публікації ми надали вказівки щодо того, як віджет підготовки даних Studio може допомогти вам проаналізувати розподіл даних, дослідити статистику якості даних, згенеровану інструментом, і виявити потенційні проблеми, такі як викиди для кожної критичної функції. Це допомагає покращити загальну якість даних, щоб допомогти вам навчити високоякісні моделі, і це усуває недиференційовану важку роботу, дозволяючи вам перетворювати дані в інтерфейсі користувача та автоматично генерувати код для клітинок блокнота. Потім ви можете використовувати цей код у своїх конвеєрах MLOps, щоб створити відтворюваність, уникнути марнування часу на повторювані завдання та зменшити проблеми сумісності шляхом прискорення створення та розгортання конвеєрів обробки даних.

Якщо ви новачок у SageMaker Data Wrangler або Studio, зверніться до Почніть роботу з SageMaker Data Wrangler. Якщо у вас виникли запитання щодо цієї публікації, додайте їх у розділі коментарів.


Про авторів

Інтерактивний віджет підготовки даних для ноутбуків на базі Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Парт Патель є архітектором рішень в AWS в районі затоки Сан-Франциско. Parth допомагає клієнтам прискорити їх шлях до хмари та допомагає їм успішно адаптувати та розвивати AWS Cloud. Він зосереджується на машинному навчанні, екологічній стійкості та модернізації додатків.

Інтерактивний віджет підготовки даних для ноутбуків на базі Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Іша Дуа є старшим архітектором рішень у районі затоки Сан-Франциско. Вона допомагає клієнтам AWS Enterprise розвиватися, розуміючи їхні цілі та виклики, а також направляючи їх щодо того, як вони можуть створити архітектуру своїх додатків у хмарній манері, гарантуючи, що вони стійкі та масштабовані. Вона захоплюється технологіями машинного навчання та екологічною стійкістю.

Інтерактивний віджет підготовки даних для ноутбуків на базі Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Харіхаран Суреш є старшим архітектором рішень в AWS. Він захоплюється базами даних, машинним навчанням і розробкою інноваційних рішень. До того як приєднатися до AWS, Харіхаран був архітектором продукту, фахівцем із впровадження основних банківських операцій і розробником, а також працював з організаціями BFSI понад 11 років. Крім технологій, він захоплюється парапланеризмом і їздою на велосипеді.

Інтерактивний віджет підготовки даних для ноутбуків на базі Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Дені Мітчелл є архітектором спеціалістів із штучного інтелекту та ML в Amazon Web Services. Він зосереджується на сценаріях використання комп’ютерного бачення та допомагає клієнтам у регіоні EMEA пришвидшити процес машинного навчання.

Часова мітка:

Більше від AWS Машинне навчання