Покращуйте керування своїми моделями машинного навчання за допомогою Amazon SageMaker PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Покращуйте керування своїми моделями машинного навчання за допомогою Amazon SageMaker

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

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

Огляд моделі управління

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

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

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

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

Картки моделей SageMaker

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

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

Для моделей, навчених на SageMaker, картки моделей можуть виявляти та автоматично заповнювати такі деталі, як завдання навчання, навчальні набори даних, артефакти моделі та середовище висновків, тим самим прискорюючи процес створення карток. За допомогою SageMaker Python SDK ви можете безперешкодно оновлювати картку моделі за допомогою показників оцінювання.

Картки моделі надають менеджерам ризиків моделі, дослідникам обробки даних та інженерам ML можливість виконувати такі завдання:

  • Задокументуйте вимоги до моделі, такі як рейтинг ризику, передбачуване використання, обмеження та очікувана продуктивність
  • Автоматичне заповнення карт моделей для навчених моделей SageMaker
  • Принесіть власну інформацію (BYOI) для моделей, які не належать до SageMaker
  • Завантажуйте та діліться моделлю та результатами оцінки даних
  • Визначайте та фіксуйте спеціальну інформацію
  • Статус картки Capture Model (чернетка, очікує на розгляд або схвалено для виробництва)
  • Доступ до концентратора картки моделі з Консоль управління AWS
  • Створюйте, редагуйте, переглядайте, експортуйте, клонуйте та видаляйте картки моделей
  • Запуск робочих процесів за допомогою Amazon EventBridge інтеграція для подій зміни статусу картки моделі

Створіть картки моделей SageMaker за допомогою консолі

Ви можете легко створювати картки моделей за допомогою консолі SageMaker. Тут ви можете переглянути всі наявні картки моделі та за потреби створити нові.

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

Щоб створити картку моделі на консолі, виконайте такі дії:

  1. Введіть огляд моделі.
  2. Введіть деталі навчання (заповнюється автоматично, якщо модель навчалася на SageMaker).
  3. Завантажити результати оцінювання.
  4. Додайте додаткові відомості, наприклад рекомендації та етичні міркування.

Після створення картки моделі ви можете вибрати версію для її перегляду.

Покращуйте керування своїми моделями машинного навчання за допомогою Amazon SageMaker PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

На наступному знімку екрана показано деталі нашої картки моделі.

Покращуйте керування своїми моделями машинного навчання за допомогою Amazon SageMaker PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Ви також можете експортувати картку моделі для спільного використання у форматі PDF.

Покращуйте керування своїми моделями машинного навчання за допомогою Amazon SageMaker PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Створюйте та досліджуйте картки моделей SageMaker за допомогою SDK SageMaker Python

Взаємодія з картками моделі не обмежується лише консоллю. Ви також можете використовувати SageMaker Python SDK для створення та вивчення карток моделей. SageMaker Python SDK дозволяє дослідникам даних та інженерам ML легко взаємодіяти з компонентами SageMaker. Наведені нижче фрагменти коду демонструють процес створення картки моделі за допомогою нещодавно доданої функції SDK SageMaker Python.

Переконайтеся, що у вас встановлено останню версію SageMaker Python SDK:

$ pip install --upgrade "sagemaker>=2"

Після навчання та розгортання моделі за допомогою SageMaker ви можете використовувати інформацію з моделі SageMaker і навчального завдання для автоматичного заповнення інформацією картки моделі.

Використовуючи SageMaker Python SDK і передаючи назву моделі SageMaker, ми можемо автоматично збирати основну інформацію про модель. Така інформація, як ARN моделі SageMaker, навчальне середовище та результати моделі Служба простого зберігання Amazon Розташування (Amazon S3) заповнюється автоматично. Ми можемо додати інші факти моделі, такі як опис, тип проблеми, тип алгоритму, творець моделі та власник. Перегляньте наступний код:

model_overview = ModelOverview.from_name(
    model_name=model_name,
    sagemaker_session=sagemaker_session,
    model_description="This is a simple binary classification model used for Model Card demo",
    problem_type="Binary Classification",
    algorithm_type="Logistic Regression",
    model_creator="DEMO-ModelCard",
    model_owner="DEMO-ModelCard",
)
print(model_overview.model_id) # Provides us with the SageMaker Model ARN
print(model_overview.inference_environment.container_image) # Provides us with the SageMaker inference container URI
print(model_overview.model_artifact) # Provides us with the S3 location of the model artifacts

Ми також можемо автоматично збирати базову інформацію про навчання, як-от ARN про роботу з навчання, середовище навчання та показники навчання. Можна додати додаткові деталі навчання, наприклад цільову функцію навчання та спостереження. Перегляньте наступний код:

objective_function = ObjectiveFunction(
    function=Function(
        function=ObjectiveFunctionEnum.MINIMIZE,
        facet=FacetEnum.LOSS,
    ),
    notes="This is a example objective function.",
)
training_details = TrainingDetails.from_model_overview(
    model_overview=model_overview,
    sagemaker_session=sagemaker_session,
    objective_function=objective_function,
    training_observations="Additional training observations could be put here."
)

print(training_details.training_job_details.training_arn) # Provides us with the SageMaker Model ARN
print(training_details.training_job_details.training_environment.container_image) # Provides us with the SageMaker training container URI
print([{"name": i.name, "value": i.value} for i in training_details.training_job_details.training_metrics]) # Provides us with the SageMaker Training Job metrics

Якщо у нас є доступні показники оцінювання, ми також можемо додати їх до картки моделі:

my_metric_group = MetricGroup(
    name="binary classification metrics",
    metric_data=[Metric(name="accuracy", type=MetricTypeEnum.NUMBER, value=0.5)]
)
evaluation_details = [
    EvaluationJob(
        name="Example evaluation job",
        evaluation_observation="Evaluation observations.",
        datasets=["s3://path/to/evaluation/data"],
        metric_groups=[my_metric_group],
    )
]

Ми також можемо додати додаткову інформацію про модель, яка може допомогти в керуванні моделлю:

intended_uses = IntendedUses(
    purpose_of_model="Test Model Card.",
    intended_uses="Not used except this test.",
    factors_affecting_model_efficiency="No.",
    risk_rating=RiskRatingEnum.LOW,
    explanations_for_risk_rating="Just an example.",
)
additional_information = AdditionalInformation(
    ethical_considerations="You model ethical consideration.",
    caveats_and_recommendations="Your model's caveats and recommendations.",
    custom_details={"custom details1": "details value"},
)

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

model_card_name = "sample-notebook-model-card"
my_card = ModelCard(
    name=model_card_name,
    status=ModelCardStatusEnum.DRAFT,
    model_overview=model_overview,
    training_details=training_details,
    intended_uses=intended_uses,
    evaluation_details=evaluation_details,
    additional_information=additional_information,
    sagemaker_session=sagemaker_session,
)
my_card.create()

SageMaker SDK також надає можливість оновлювати, завантажувати, перераховувати, експортувати та видаляти картку моделі.

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

Інформаційна панель моделі SageMaker

Інформаційна панель моделі — це централізоване сховище всіх моделей, створених в обліковому записі. Зазвичай моделі створюються під час навчання на SageMaker, або ви можете перенести свої навчені деінде моделі для розміщення на SageMaker.

Інформаційна панель моделі надає єдиний інтерфейс для ІТ-адміністраторів, менеджерів з управління ризиками моделей або бізнес-лідерів для перегляду всіх розгорнутих моделей і їхньої продуктивності. Ви можете переглядати свої кінцеві точки, завдання пакетного перетворення та моніторингові завдання, щоб отримати уявлення про продуктивність моделі. Організації можуть глибоко зануритися, щоб визначити, які моделі мають відсутні або неактивні монітори, і додати їх за допомогою API SageMaker, щоб переконатися, що всі моделі перевіряються на дрейф даних, дрейф моделі, дрейф зміщення та дрейф атрибуції функцій.

На наступному знімку екрана показано приклад інформаційної панелі моделі.

Покращуйте керування своїми моделями машинного навчання за допомогою Amazon SageMaker PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Інформаційна панель моделі надає огляд усіх ваших моделей, їхній рейтинг ризику та ефективність цих моделей у виробництві. Це робиться шляхом отримання інформації з усього SageMaker. Інформація про моніторинг продуктивності фіксується через Монітор моделі Amazon SageMaker, а також можна переглянути інформацію про моделі, викликані для пакетних прогнозів через завдання пакетного перетворення SageMaker. Зберігається інформація про походження, як-от те, як була навчена модель, використані дані тощо, а також інформація з карток моделі.

Model Monitor відстежує якість моделей SageMaker, які використовуються у виробництві, для визначення пакетів або кінцевих точок у реальному часі. Ви можете налаштувати безперервний моніторинг або заплановані моніторинги через API SageMaker, а також редагувати параметри сповіщень на інформаційній панелі моделі. Ви можете встановити сповіщення, які сповіщатимуть вас про відхилення в якості моделі. Раннє та проактивне виявлення цих відхилень дає вам змогу вживати коригувальних дій, таких як перенавчання моделей, аудит систем, що працюють на початковому етапі, або виправлення проблем із якістю без необхідності відстежувати моделі вручну чи створювати додаткові інструменти. Інформаційна панель моделі дає вам швидке уявлення про те, які моделі відстежуються та як вони працюють. Для отримання додаткової інформації про Model Monitor відвідайте веб-сайт Моніторинг моделей на предмет даних і якості моделі, упередженості та пояснюваності.

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

Покращуйте керування своїми моделями машинного навчання за допомогою Amazon SageMaker PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Це подання дозволяє створити картку моделі, якщо потрібно. Розклад моніторингу також можна активувати, дезактивувати або редагувати на інформаційній панелі моделі.

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

Давайте розглянемо приклад процесу налаштування моніторингу моделі. Основні кроки цього процесу:

  1. Захоплення даних, надісланих до кінцевої точки (або завдання пакетного перетворення).
  2. Встановіть базову лінію (для кожного з типів моніторингу).
  3. Створіть розклад монітора моделі, щоб порівнювати прогнози в реальному часі з базовою лінією, щоб повідомляти про порушення та ініціювати сповіщення.

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

Покращуйте керування своїми моделями машинного навчання за допомогою Amazon SageMaker PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai. Покращуйте керування своїми моделями машинного навчання за допомогою Amazon SageMaker PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

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

Висновок

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

Завдяки спеціально створеним інструментам управління ML у SageMaker організації можуть запровадити правильні механізми для покращення контролю та видимості проектів ML для своїх конкретних випадків використання. Спробуйте картки моделі та інформаційну панель моделі та залишайте свої коментарі із запитаннями та відгуками. Щоб дізнатися більше про картки моделі та інформаційну панель моделі, див керівництво для розробників.


Про авторів

Покращуйте керування своїми моделями машинного навчання за допомогою Amazon SageMaker PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Кіріт Тадака є архітектором рішень ML, який працює в команді SageMaker Service SA. До того, як приєднатися до AWS, Кіріт працював у стартапах зі штучним інтелектом на ранніх стадіях, а потім деякий час консультував на різних посадах у дослідженнях штучного інтелекту, MLOps і технічному керівництві.

Покращуйте керування своїми моделями машинного навчання за допомогою Amazon SageMaker PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Марк Карп є архітектором ML у команді SageMaker Service. Він зосереджується на допомозі клієнтам проектувати, розгортати та керувати робочими навантаженнями ML у масштабі. У вільний час він любить подорожувати та досліджувати нові місця.

Покращуйте керування своїми моделями машинного навчання за допомогою Amazon SageMaker PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Рагу Рамеша є архітектором рішень ML у команді Amazon SageMaker Service. Він зосереджується на допомозі клієнтам створювати, розгортати та переносити робочі навантаження ML на SageMaker у великих масштабах. Він спеціалізується на машинному навчанні, штучному інтелекті та комп’ютерному зорі, а також має ступінь магістра комп’ютерних наук в UT Dallas. У вільний час захоплюється подорожами та фотографією.

Покращуйте керування своїми моделями машинного навчання за допомогою Amazon SageMaker PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Рам Віттал є архітектором рішень ML Specialist в AWS. Він має понад 20 років досвіду розробки та створення розподілених, гібридних і хмарних програм. Він захоплений створенням безпечних і масштабованих рішень штучного інтелекту/ML і великих даних, які допомагають корпоративним клієнтам перейти до впровадження хмарних технологій та оптимізації для покращення бізнес-результатів. У вільний час він захоплюється тенісом, фотографією та бойовиками.

Покращуйте керування своїми моделями машинного навчання за допомогою Amazon SageMaker PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Сахіл Сайні є архітектором рішень ISV в Amazon Web Services. Він працює зі стратегічними клієнтами AWS і командами розробників продуктів, щоб допомогти їм із технологічними рішеннями, використовуючи сервіси AWS для AI/ML, контейнерів, HPC та IoT. Він допоміг створити платформи AI/ML для корпоративних клієнтів.

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

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