Машинне навчання (ML) руйнує багато галузей з безпрецедентною швидкістю. За останні роки індустрія охорони здоров’я та наук про життя (HCLS) швидко розвивалася, використовуючи ML у багатьох випадках використання для надання якісної медичної допомоги та покращення результатів лікування пацієнтів.
У типовому життєвому циклі машинного навчання інженери з обробки даних і науковці витрачають більшу частину свого часу на підготовку даних і етапи розробки функцій ще до початку процесу побудови моделі та навчання. Наявність інструменту, який може знизити бар’єр для підготовки даних, тим самим покращуючи продуктивність, є дуже бажаним запитом для цих персон. Amazon SageMaker Data Wrangler спеціально створений AWS для скорочення кривої навчання та надання можливості фахівцям з обробки даних виконувати завдання з підготовки, очищення та розробки функцій із меншими зусиллями та часом. Він пропонує графічний інтерфейс з багатьма вбудованими функціями та інтеграцію з іншими службами AWS, такими як Служба простого зберігання Amazon (Amazon S3) і Магазин функцій Amazon SageMaker, а також партнерські джерела даних, зокрема Snowflake і Databricks.
У цій публікації ми демонструємо, як використовувати Data Wrangler для підготовки медичних даних для навчання моделі для прогнозування серцевої недостатності, враховуючи демографічні дані пацієнта, попередні захворювання та історію результатів лабораторних досліджень.
Огляд рішення
Рішення складається з наступних кроків:
- Отримайте набір даних охорони здоров’я як вхідні дані для Data Wrangler.
- Використовуйте вбудовані функції перетворення Data Wrangler для перетворення набору даних. Це включає видалення стовпців, представлення даних/часу, об’єднання наборів даних, введення відсутніх значень, кодування категоріальних змінних, масштабування числових значень, балансування набору даних тощо.
- Використовуйте спеціальну функцію перетворення Data Wrangler (код Pandas або PySpark), щоб доповнити додаткові перетворення, необхідні крім вбудованих перетворень, і продемонструвати розширюваність Data Wrangler. Це включає фільтрування рядків, групування даних, формування нових кадрів даних на основі умов тощо.
- Використовуйте вбудовані функції візуалізації Data Wrangler для виконання візуального аналізу. Це включає цільовий витік, кореляцію функцій, швидку модель тощо.
- Використовуйте вбудовані параметри експорту Data Wrangler, щоб експортувати перетворений набір даних в Amazon S3.
- Запустіть блокнот Jupyter, щоб використовувати перетворений набір даних в Amazon S3 як вхідні дані для навчання моделі.
Створіть набір даних
Тепер, коли ми зупинилися на постановці проблеми машинного навчання, ми спочатку націлилися на отримання необхідних нам даних. Дослідження, такі як Прогнозування серцевої недостатності може надати дані, які вже є в хорошому стані. Однак ми часто стикаємося зі сценаріями, коли дані досить заплутані й потребують об’єднання, очищення та кількох інших перетворень, які дуже специфічні для сфери охорони здоров’я, перш ніж їх можна буде використовувати для навчання ML. Ми хочемо знайти або згенерувати досить заплутані дані та проведемо вас через етапи їх підготовки за допомогою Data Wrangler. Маючи це на увазі, ми вибрали Synthea як інструмент для створення синтетичних даних, які відповідають нашій меті. Синтея — це генератор синтетичних пацієнтів із відкритим кодом, який моделює історію хвороби синтетичних пацієнтів. Щоб створити набір даних, виконайте такі дії:
- Дотримуйтесь інструкцій відповідно до швидкий старт документація для створення Студія Amazon SageMaker домен і запустіть Studio.
Це необхідна умова. Це необов’язково, якщо Studio вже налаштовано у вашому обліковому записі. - Після запуску Studio на гранатомет вкладку, виберіть Системний термінал.
Це запускає термінальний сеанс, який надає вам інтерфейс командного рядка для роботи. - Щоб інсталювати Synthea та створити набір даних у форматі CSV, виконайте такі команди в запущеному сеансі терміналу:
Ми надаємо параметр для створення наборів даних із розміром сукупності 10,000 XNUMX. Зверніть увагу, що параметр розміру вказує на кількість живих членів популяції. Крім того, Synthea також генерує дані для померлих членів популяції, що може додати кілька додаткових точок даних на додаток до вказаного розміру вибірки.
Дочекайтеся завершення генерації даних. Цей крок зазвичай займає близько години або менше. Synthea створює кілька наборів даних, у тому числі patients
, medications
, allergies
, conditions
, і більше. Для цієї публікації ми використовуємо три отримані набори даних:
- пацієнти.csv – Цей набір даних становить близько 3.2 МБ і містить приблизно 11,000 25 рядків даних про пацієнтів (XNUMX стовпців, включаючи ідентифікатор пацієнта, дату народження, стать, адресу тощо)
- умови.csv – Цей набір даних становить приблизно 47 МБ і містить приблизно 370,000 XNUMX рядків даних про медичний стан (шість стовпців, включаючи ідентифікатор пацієнта, дату початку стану, код захворювання тощо)
- observations.csv – Цей набір даних становить близько 830 МБ і містить приблизно 5 мільйонів рядків даних спостереження (вісім стовпців, включаючи ідентифікатор пацієнта, дату спостереження, код спостереження, значення тощо)
Існує відношення один до багатьох між patients
та conditions
набори даних. Також існує зв’язок «один до багатьох». patients
та observations
набори даних. Докладний словник даних див Словник даних файлу CSV.
- Щоб завантажити згенеровані набори даних у вихідне відро в Amazon S3, виконайте такі команди в термінальному сеансі:
Запустіть Data Wrangler
Вибирати Ресурси SageMaker на сторінці навігації в Studio та на Завдання меню, виберіть Data Wrangler щоб створити потік даних Data Wrangler. Докладні кроки щодо запуску Data Wrangler із Studio див Почніть роботу з Data Wrangler.
Дати імпорту
Щоб імпортувати дані, виконайте такі дії:
- Вибирати Amazon S3 і знайдіть файл pacijenata.csv у сегменті S3.
- У ПОДРОБИЦІ панель, виберіть Перший К та цінності Вибірка.
-
Що натомість? Створіть віртуальну версію себе у
1100
та цінності Обсяг вибірки.
На панелі попереднього перегляду Data Wrangler витягує перші 100 рядків із набору даних і перераховує їх як попередній перегляд. - Вибирати Імпортувати.
Data Wrangler вибирає перших 1,100 пацієнтів із загальної кількості пацієнтів (11,000 XNUMX рядків), згенерованих Synthea, та імпортує дані. Вибірковий підхід дозволяє Data Wrangler обробляти лише вибіркові дані. Це дає нам змогу розвивати наш потік даних із меншим набором даних, що призводить до швидшої обробки та коротшого циклу зворотного зв’язку. Після створення потоку даних ми можемо надіслати розроблений рецепт до a Обробка SageMaker завдання горизонтального масштабування обробки для повного або більшого набору даних у розподіленому режимі. - Повторіть цей процес для
conditions
таobservations
набори даних.- Для
conditions
набір даних, введіть37000
та цінності Обсяг вибірки, що становить 1/10 із 370,000 XNUMX рядків, згенерованих Synthea. - Для
observations
набір даних, введіть500000
та цінності Обсяг вибірки, що становить 1/10 від загальної кількості спостережень 5 мільйонів рядків, згенерованих Synthea.
- Для
Ви повинні побачити три набори даних, як показано на наступному знімку екрана.
Перетворіть дані
Перетворення даних — це процес зміни структури, значення або формату одного чи кількох стовпців у наборі даних. Процес зазвичай розробляється інженером з даних, і людям із меншим набором навичок інженерії даних може бути складно розшифрувати логіку, запропоновану для перетворення. Перетворення даних є частиною ширшого процесу розробки функцій, і правильна послідовність кроків є ще одним важливим критерієм, про який слід пам’ятати, розробляючи такі рецепти.
Data Wrangler розроблено як інструмент із низьким кодом, щоб зменшити бар’єр входу для ефективної підготовки даних. Він поставляється з понад 300 попередньо налаштованими перетвореннями даних, які ви можете вибрати без написання жодного рядка коду. У наступних розділах ми побачимо, як перетворити імпортовані набори даних у Data Wrangler.
Витягніть стовпці у пацієнти.csv
Спочатку ми видаляємо кілька стовпців із patients
набір даних. Видалення зайвих стовпців видаляє нерелевантну інформацію з набору даних і допомагає нам зменшити кількість обчислювальних ресурсів, необхідних для обробки набору даних і навчання моделі. У цьому розділі ми видаляємо такі стовпці, як SSN або номер паспорта, оскільки здоровий глузд вважає, що ці стовпці не мають прогностичного значення. Іншими словами, вони не допомагають нашій моделі передбачити серцеву недостатність. Наше дослідження також не турбується про інші стовпці, такі як місце народження або вплив витрат на охорону здоров’я на серцеву недостатність пацієнта, тому ми також відкидаємо їх. Зайві стовпці також можна ідентифікувати за допомогою вбудованих аналізів, таких як цільовий витік, кореляція ознак, мультиколінеарність тощо, які вбудовані в Data Wrangler. Докладніше про підтримувані типи аналізів див Аналізуйте та візуалізуйте. Крім того, ви можете використовувати Звіт про якість даних і статистику щоб виконати автоматичний аналіз наборів даних, щоб отримати список зайвих стовпців, які потрібно видалити.
- Виберіть знак плюс біля Типи даних для набору даних pacijenata.csv і виберіть Додати трансформацію.
- Вибирати Додати крок І вибирай Керувати стовпцями.
- для Перетворення¸ вибрати Колонка скидання.
- для Стовпчики для опускання, виберіть такі стовпці:
SSN
DRIVERS
PASSPORT
PREFIX
FIRST
LAST
SUFFIX
MAIDEN
RACE
ETHNICITY
BIRTHPLACE
ADDRESS
CITY
STATE
COUNTY
ZIP
LAT
LON
HEALTHCARE_EXPENSES
HEALTHCARE_COVERAGE
- Вибирати попередній перегляд щоб переглянути перетворений набір даних, а потім виберіть додавати.
Ви повинні побачити крок Колонка скидання у вашому списку перетворень.
Вкажіть дату/час у файлі pacijenata.csv
Тепер ми використовуємо функцію Featurize date/time для створення нової функції Year
від BIRTHDATE
у стовпці patients
набір даних. Ми використовуємо нову функцію на наступному кроці, щоб обчислити вік пацієнта на момент спостереження.
- У Перетворює панель вашого Колонка скидання сторінка для
patients
набір даних, виберіть Додати крок. - Виберіть Вкажіть дату/час трансформувати.
- Вибирати Витягнути стовпці.
- для Вхідні стовпці, додайте стовпець
BIRTHDATE
. - Select рік і скасувати вибір місяць, день, годину, Хвилина, По-друге.
- Вибирати попередній перегляд, Потім виберіть додавати.
Додайте перетворення в observations.csv
Data Wrangler підтримує спеціальні перетворення за допомогою Python (користувацькі функції), PySpark, Pandas або PySpark (SQL). Ви можете вибрати тип трансформації на основі вашого знайомства з кожним параметром і перевагами. Для останніх трьох варіантів Data Wrangler відкриває змінну df
щоб ви могли отримати доступ до кадру даних і застосувати до нього перетворення. Докладні пояснення та приклади див Спеціальні трансформації. У цьому розділі ми додаємо три спеціальні перетворення до observations
набір даних.
- Додайте перетворення до observations.csv і видаліть
DESCRIPTION
колонка. - Вибирати попередній перегляд, Потім виберіть додавати.
- У Перетворює панель, виберіть Додати крок І вибирай Спеціальне перетворення.
- У спадному меню виберіть Python (Pandas).
- Введіть наступний код:
Це коди LONIC, які відповідають таким спостереженням, які ми зацікавлені використовувати як ознаки для прогнозування серцевої недостатності:
- Вибирати попередній перегляд, Потім виберіть додавати.
- Додайте трансформацію для вилучення
Year
таQuarter
відDATE
колонка. - Вибирати попередній перегляд, Потім виберіть додавати.
- Вибирати Додати крок І вибирай Спеціальне перетворення.
- У спадному меню виберіть Python (PySpark).
П’ять типів спостережень не завжди можуть бути записані в одну дату. Наприклад, 21 січня пацієнт може звернутися до свого сімейного лікаря, щоб виміряти та записати систолічний тиск, діастолічний тиск, частоту пульсу та індекс маси тіла. Проте лабораторний тест, який включає тромбоцити, може бути проведений пізніше, 2 лютого. Тому не завжди можливо об’єднати кадри даних до дати спостереження. Тут ми об’єднуємо фрейми даних із грубою деталізацією на квартальній основі. - Введіть наступний код:
- Вибирати попередній перегляд, Потім виберіть додавати.
- Вибирати Додати крок, Потім виберіть Керувати рядками.
- для Перетвореннявиберіть Відкинути дублікати.
- Вибирати попередній перегляд, Потім виберіть додавати.
- Вибирати Додати крок І вибирай Спеціальне перетворення.
- У спадному меню виберіть Python (Pandas).
- Введіть наступний код, щоб отримати середнє значення точок даних, які мають однакове значення часу:
- Вибирати попередній перегляд, Потім виберіть додавати.
Приєднайтеся до пацієнтів.csv і observations.csv
На цьому кроці ми демонструємо, як ефективно та легко виконувати складні об’єднання наборів даних без написання коду за допомогою потужного інтерфейсу користувача Data Wrangler. Щоб дізнатися більше про підтримувані типи об’єднань, див Перетворення даних.
- Праворуч від Трансформація: patients.csv, виберіть знак плюс поруч із заходи І вибирай Приєднайся до.
Перетворений файл pacijenata.csv можна побачити нижче Набори даних на лівій панелі. - Праворуч від Перетворення: observations.csv, натисніть на заходи щоб розпочати операцію приєднання.
Трансформований файл observations.csv тепер указано нижче Набори даних на лівій панелі. - Вибирати Конфігурувати.
- для Тип приєднаннявиберіть Внутрішній.
- для Лівевиберіть Id.
- для правийвиберіть пацієнт.
- Вибирати попередній перегляд, Потім виберіть додавати.
Додайте спеціальне перетворення до об’єднаних наборів даних
На цьому етапі ми обчислюємо вік пацієнта на момент спостереження. Ми також видаляємо стовпці, які більше не потрібні.
- Виберіть знак плюс біля 1-е приєднання І вибирай Додати трансформацію.
- Додайте спеціальне перетворення в Pandas:
- Вибирати попередній перегляд, Потім виберіть додавати.
Додайте користувальницькі трансформації до conditions.csv
- Виберіть знак плюс біля Перетворення: умови.csv І вибирай Додати трансформацію.
- Додайте спеціальне перетворення в Pandas:
Примітка: Як ми продемонстрували раніше, ви можете видаляти стовпці або за допомогою спеціального коду, або за допомогою вбудованих перетворень, наданих Data Wrangler. Користувальницькі перетворення в Data Wrangler забезпечують гнучкість перенесення вашої власної логіки перетворень у формі фрагментів коду в підтримуваних структурах. За потреби ці фрагменти можна згодом шукати та застосовувати.
Коди в попередньому перетворенні є кодами SNOMED-CT, які відповідають наступним умовам. The heart failure
or chronic congestive heart failure
умова стає міткою. Ми використовуємо решта умов як ознаки для прогнозування серцевої недостатності. Ми також відкидаємо кілька стовпців, які більше не потрібні.
- Далі додамо спеціальне перетворення в PySpark:
Ми виконуємо ліве зовнішнє об’єднання, щоб зберегти всі записи у кадрі даних серцевої недостатності. Нова колонка
has_xxx
розраховується для кожного стану, крім серцевої недостатності, на основі дати початку захворювання. Нас цікавлять лише захворювання, які були зареєстровані до серцевої недостатності, і ми використовуємо їх як характеристики для прогнозування серцевої недостатності. - Додайте вбудований Керувати стовпцями перетворення, щоб видалити зайві стовпці, які більше не потрібні:
hypertension
diabetes
coronary
smoke
atrial
- Витяг
Year
таQuarter
відheartfailure
колонка.
Це відповідає деталізації, яку ми використовували раніше під час трансформаціїobservations
набір даних. - Загалом ми повинні мати 6 кроків для conditions.csv.
Приєднайте файл conditions.csv до об’єднаного набору даних
Тепер ми виконуємо нове об’єднання, щоб приєднати набір даних умов до об’єднаного patients
та observations
набір даних.
- Вибирати Перетворення: перше приєднання.
- Виберіть знак плюс і виберіть Приєднайся до.
- Вибирати заходи поруч з Перетворення: умови.csv.
- Вибирати Конфігурувати.
- для Тип приєднаннявиберіть Лівий зовнішній.
- для Лівевиберіть Id.
- для правийвиберіть пацієнт.
- Вибирати попередній перегляд, Потім виберіть додавати.
Додайте перетворення до об’єднаних наборів даних
Тепер, коли ми об’єднали всі три набори даних, давайте застосуємо деякі додаткові перетворення.
- Додайте таке спеціальне перетворення в PySpark
has_heartfailure
стає нашим стовпчиком міток: - Додайте наступне спеціальне перетворення в PySpark:
- Відкиньте зайві стовпці, які більше не потрібні:
Id
DATE_year
DATE_quarter
patient
heartfailure
heartfailure_year
heartfailure_quarter
- на аналіз вкладка, для Тип аналізу¸ вибрати Зведення таблиці.
Швидкий огляд резюме показує, щоMARITAL
у стовпці відсутні дані. - Виберіть дані і додайте крок.
- Вибирати Ручка відсутня.
- для Перетвореннявиберіть Відсутня заповнення.
- для Вхідні стовпцівиберіть ШРУЧНИЙ.
- для Значення заповнення, введіть
S
.
Наша стратегія полягає в тому, щоб припустити, що пацієнт неодружений, якщо сімейний стан не має значення. Ви можете мати іншу стратегію. - Вибирати попередній перегляд, Потім виберіть додавати.
- Заповніть відсутнє значення як 0 для
has_hypertension
,has_diabetes
,has_coronary
,has_smoke
,has_atrial
.
Marital
та Gender
є категоріальними змінними. Data Wrangler має вбудовану функцію для кодування категоріальних змінних.
- Додайте крок і виберіть Закодувати категоріальний.
- для Перетвореннявиберіть Одне гаряче кодування.
- для Вхідні стовпцівиберіть ШРУЧНИЙ.
- для Стиль виведеннявиберіть Колонка.
Цей стиль виведення створює закодовані значення в окремих стовпцях. - Вибирати попередній перегляд, Потім виберіть додавати.
- Повторіть ці дії для Стать колонка.
Одночасне кодування поділяє колонку «Подружжя» на Marital_M
(одружений) і Marital_S
(один) і розбиває стовпець Стать на Gender_M
(чоловічий) та Gender_F
(жінка). Оскільки Marital_M
та Marital_S
є взаємовиключними (як є Gender_M
та Gender_F
), ми можемо відкинути один стовпець, щоб уникнути зайвих функцій.
- Падіння
Marital_S
таGender_F
.
Числові характеристики, такі як систолічний, частота серцевих скорочень і вік, мають різні стандарти одиниць. Для моделі на основі лінійної регресії нам спочатку потрібно нормалізувати ці числові характеристики. В іншому випадку деякі функції з вищими абсолютними значеннями можуть мати необґрунтовану перевагу над іншими функціями з нижчими абсолютними значеннями та призвести до низької продуктивності моделі. У Data Wrangler є вбудований засіб перетворення Min-max для нормалізації даних. Для моделі класифікації на основі дерева рішень нормалізація не потрібна. Наше дослідження є проблемою класифікації, тому нам не потрібно застосовувати нормалізацію. Незбалансовані класи є загальною проблемою при класифікації. Дисбаланс виникає, коли навчальний набір даних містить сильно спотворений розподіл класів. Наприклад, коли наш набір даних містить непропорційно більше пацієнтів без серцевої недостатності, ніж пацієнтів із серцевою недостатністю, це може призвести до того, що модель буде зміщена в бік прогнозування відсутності серцевої недостатності та працюватиме погано. Data Wrangler має вбудовану функцію для вирішення проблеми.
- Додайте спеціальне перетворення в Pandas, щоб перетворити тип даних стовпців з типу «об’єкт» на числовий тип:
- Виберіть аналіз Вкладка.
- для Тип аналізу¸ вибрати Гістограма.
- для вісь Xвиберіть has_heartfailure.
- Вибирати попередній перегляд.
Очевидно, що ми маємо незбалансований клас (більше точок даних, позначених як відсутність серцевої недостатності, ніж точок даних, позначених як серцева недостатність). - Поверніться до дані табл. Виберіть Додати крок І вибирай Дані балансу.
- для Цільова колонкавиберіть has_heartfailure.
- для Бажане співвідношення, введіть
1
. - для Перетвореннявиберіть ПРИГРИТИ.
SMOTE означає Synthetic Minority Over-sampling Technique. Це техніка для створення нових екземплярів меншості та додавання до набору даних для досягнення балансу класів. Детальну інформацію див SMOTE: техніка надмірної вибірки синтетичної меншості. - Вибирати попередній перегляд, Потім виберіть додавати.
- Повторіть аналіз гістограми в кроках 20-23. Результат – збалансований клас.
Візуалізуйте цільовий витік і кореляцію функцій
Далі ми виконаємо кілька візуальних аналізів за допомогою багатого набору інструментів Data Wrangler із розширеними типами аналізу, які підтримуються ML. По-перше, ми розглядаємо цільовий витік. Цільовий витік відбувається, коли дані в навчальному наборі даних сильно корелюють із цільовою міткою, але недоступні в даних реального світу під час висновку.
- на Вкладка аналізу, Для Тип аналізу¸ вибрати Цільовий витік.
- для Тип проблемивиберіть класифікація.
- для Метавиберіть has_heartfailure.
- Вибирати попередній перегляд.
На основі аналізу,hr
є цільовим витоком. Ми відпустимо це на наступному кроці.age
позначено цільовим витоком. Розумно сказати, що вік пацієнта буде доступний протягом часу висновку, тому ми зберігаємо вік як функцію.Systolic
таdiastolic
також позначено як імовірний цільовий витік. Ми очікуємо, що ми матимемо два вимірювання протягом часу висновку, тому ми зберігаємо їх як функції. - Вибирати додавати щоб додати аналіз.
Потім ми розглянемо кореляцію ознак. Ми хочемо вибрати функції, які корельовані з метою, але не корельовані між собою.
- на Вкладка аналізу, Для Тип аналізу¸ вибрати Співвідношення ознак.
- для Тип кореляції¸ вибрати лінійний.
- Вибирати попередній перегляд.
Оцінки коефіцієнтів вказують на сильні кореляції між такими парами:
systolic
таdiastolic
bmi
таage
has_hypertension
таhas_heartfailure
(етикетка)
Для ознак, які сильно корельовані, матриці обчислювально важко інвертувати, що може призвести до чисельно нестабільних оцінок. Щоб пом'якшити кореляцію, ми можемо просто видалити один із пари. Ми скидаємо diastolic
та bmi
і зберігайте systolic
та age
на наступному кроці.
Опустіть стовпці діастолічний та ІМТ
Додайте додаткові кроки трансформації, щоб видалити hr
, diastolic
та bmi
стовпців за допомогою вбудованого перетворення.
Створіть звіт про якість даних і аналіз
AWS нещодавно оголошений нова функція звіту про якість даних і аналітичних даних у Data Wrangler. Цей звіт автоматично перевіряє якість даних і виявляє відхилення у ваших даних. Науковці даних та інженери даних можуть використовувати цей інструмент для ефективного та швидкого застосування знань предметної області для обробки наборів даних для навчання моделі ML. Цей крок необов'язковий. Щоб створити цей звіт на основі наших наборів даних, виконайте такі кроки:
- на аналіз вкладка, для Тип аналізувиберіть Звіт про якість даних і статистику.
- для Цільова колонкавиберіть has_heartfailure.
- для Тип проблемивиберіть Класифікація.
- Вибирати Створювати.
За кілька хвилин він створює звіт із підсумком, візуальними елементами та рекомендаціями.
Згенеруйте швидкий аналіз моделі
Ми завершили підготовку даних, очищення та розробку функцій. Data Wrangler має вбудовану функцію, яка надає приблизну оцінку очікуваної прогнозованої якості та передбачуваної сили функцій у нашому наборі даних.
- на аналіз вкладка, для Тип аналізу¸ вибрати Швидка модель.
- для етикеткавиберіть has_heartfailure.
- Вибирати попередній перегляд.
Згідно з нашим швидким аналізом моделі, ми можемо побачити цю функцію has_hypertension
має найвищу оцінку важливості функції серед усіх функцій.
Експортуйте дані та навчіть модель
Тепер давайте експортуємо трансформовані функції, готові до ML, до цільового сегмента S3 і масштабуємо весь конвеєр інженерних функцій, який ми створили на даний момент, використовуючи зразки, у весь набір даних розподіленим способом.
- Виберіть знак плюс біля останнього поля в потоці даних і виберіть Додати пункт призначення.
- Вибирати Amazon S3.
- Введіть Назва набору даних. Форум Розташування Amazon S3, виберіть відро S3, а потім виберіть Додати пункт призначення.
- Вибирати Створити роботу щоб запустити завдання розподіленої обробки PySpark для виконання перетворення та виведення даних у цільове відро S3.
Залежно від розміру наборів даних, цей параметр дозволяє нам легко налаштувати кластер і горизонтальне масштабування без використання коду. Нам не потрібно турбуватися про розділення наборів даних або керування кластером і внутрішніми елементами Spark. Про все це автоматично піклується за нас Data Wrangler. - На лівій панелі виберіть Далі 2. Налаштувати завдання.
- Тоді виберіть прогін.
Крім того, ми також можемо експортувати перетворений вихід у S3 через Jupyter Notebook. Завдяки такому підходу Data Wrangler автоматично створює блокнот Jupyter з усім кодом, необхідним для запуску завдання обробки, щоб застосувати кроки потоку даних (створені за допомогою зразка) до більшого повного набору даних і використовувати трансформований набір даних як функції для запуску піти з навчання пізніше. Код блокнота можна легко запустити з внесенням змін або без них. Давайте тепер розглянемо кроки, як це зробити за допомогою інтерфейсу користувача Data Wrangler.
- Виберіть знак плюс біля останнього кроку в потоці даних і виберіть Експортувати в.
- Вибирати Amazon S3 (через Jupyter Notebook).
- Він автоматично відкриває нову вкладку з блокнотом Jupyter.
- У блокноті Jupyter знайдіть клітинку в (Необов’язково) Наступні кроки розділ і змін
run_optional_steps
відFalse
доTrue
.
Увімкнені додаткові дії в блокноті виконують такі дії: - Поверніться до верхньої частини блокнота та на прогін меню, виберіть Запустіть усі клітинки.
Якщо ви використовуєте згенерований блокнот як є, він запускає завдання обробки SageMaker, яке масштабує обробку між двома примірниками m5.4xlarge для обробки повного набору даних у сегменті S3. Ви можете налаштувати кількість екземплярів і типи екземплярів на основі розміру набору даних і часу, необхідного для виконання завдання.
Дочекайтеся завершення навчального завдання з останньої клітинки. Він генерує модель у стандартному сегменті SageMaker S3.
Навчена модель готова до розгортання або для висновків у реальному часі, або для пакетного перетворення. Зауважте, що ми використовували синтетичні дані для демонстрації функцій Data Wrangler і використовували оброблені дані для навчальної моделі. З огляду на те, що дані, які ми використовували, є синтетичними, результат висновку з навченої моделі не призначений для діагностики реального стану здоров’я чи підміни суджень практикуючих лікарів.
Ви також можете безпосередньо експортувати перетворений набір даних в Amazon S3, вибравши Експорт у верхній частині сторінки попереднього перегляду трансформації. Параметр прямого експорту експортує трансформований зразок, лише якщо вибірку було ввімкнено під час імпорту. Цей варіант найкраще підходить, якщо ви маєте справу з меншими наборами даних. Трансформовані дані також можна завантажувати безпосередньо в сховище функцій. Для отримання додаткової інформації див Магазин функцій Amazon SageMaker. Потік даних також можна експортувати як конвеєр SageMaker, який можна оркеструвати та планувати відповідно до ваших вимог. Для отримання додаткової інформації див Трубопроводи Amazon SageMaker.
Висновок
У цьому дописі ми показали, як використовувати Data Wrangler для обробки медичних даних і розробки масштабованих функцій за допомогою інструментів із низьким кодом. Ми навчилися правильно застосовувати вбудовані трансформації та аналізи, поєднуючи їх із користувальницькими трансформаціями, щоб додати ще більшої гнучкості нашому робочому процесу підготовки даних. Ми також розглянули різні варіанти масштабування потоку даних за допомогою завдань розподіленої обробки. Ми також дізналися, як перетворені дані можна легко використовувати для навчання моделі для прогнозування серцевої недостатності.
У Data Wrangler є багато інших функцій, про які ми не розповідали в цій публікації. Дослідіть, що можливо в Підготуйте дані ML за допомогою Amazon SageMaker Data Wrangler і дізнайтеся, як використовувати Data Wrangler для наступного проекту з обробки даних або машинного навчання.
Про авторів
Форрест Сан є старшим архітектором рішень у команді AWS Public Sector у Торонто, Канада. Протягом останніх двох десятиліть він працював у сфері охорони здоров’я та фінансів. Окрім роботи, він із сім’єю любить кемпінг.
Арунпрасат Шанкар є архітектором спеціалізованих рішень із штучного інтелекту та машинного навчання (AI / ML) з AWS, допомагаючи світовим клієнтам ефективно та ефективно масштабувати свої рішення в галузі ШІ в хмарі. У вільний час Арун із задоволенням дивиться науково-фантастичні фільми та слухає класичну музику.
- AI
- ai мистецтво
- AI арт генератор
- ai робот
- Amazon SageMaker
- Amazon SageMaker Data Wrangler
- штучний інтелект
- сертифікація штучного інтелекту
- штучний інтелект у банківській справі
- робот зі штучним інтелектом
- роботи зі штучним інтелектом
- програмне забезпечення для штучного інтелекту
- AWS Машинне навчання
- blockchain
- блокчейн конференція AI
- coingenius
- розмовний штучний інтелект
- крипто конференція ai
- dall's
- глибоке навчання
- у вас є гугл
- навчання за допомогою машини
- plato
- платон ai
- Інформація про дані Платона
- Гра Платон
- PlatoData
- platogaming
- масштаб ai
- синтаксис
- зефірнет