Начать работу с Amazon Machine Learning

Создать бесплатный аккаунт

Получите доступ к бесплатному пакету уровень бесплатного пользования AWS в течение двенадцати месяцев и используйте возможности базовой поддержки AWS Basic Support, в том числе круглосуточный доступ к сервису поддержки клиентов, форумы поддержки и многое другое.

Обратите внимание, что в настоящий момент сервис Amazon Machine Learning недоступен на уровне бесплатного пользования AWS.

Вопрос: Что такое Amazon Machine Learning?

Amazon Machine Learning – это машинный сервис, позволяющий легко создавать прогнозирующие приложения, в том числе приложения для обнаружения мошенничества, предсказания спроса и прогнозов поведения пользователей. Amazon Machine Learning использует мощные алгоритмы, позволяющие создавать модели машинного обучения путем нахождения шаблонов в существующих данных и их использования для составления прогнозов по новым данным, как только они становятся доступны. Консоль управления AWS и API предоставляют инструменты визуализации данных и моделей, а также мастеров, помогающих создавать модели машинного обучения, определять их качество и выполнять тонкую настройку прогнозов в соответствии с потребностями приложений. После создания моделей можно получать прогнозы для ваших приложений, используя простой API. Создавать собственный код для формирования прогнозов и управлять какой-либо инфраструктурой не требуется. Amazon Machine Learning – это хорошо масштабируемый сервис, который может ежедневно формировать миллиарды прогнозов, выдавая их с высокой производительностью в режиме реального времени. При использовании сервиса Amazon Machine Learning плата за настройку не взимается, вы платите только за используемые ресурсы. Это позволяет начать работу в небольшом объеме и наращивать используемые ресурсы по мере развития вашего приложения.

Вопрос: Для чего предназначен сервис Amazon Machine Learning?

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

Вопрос: Что такое машинное обучение?

Машинное обучение (ML) – это технология, помогающая на основе накопленных данных принимать обоснованные бизнес-решения. Алгоритмы ML находят в данных шаблоны и создают математические модели на их основе. После этого вы сможете использовать модели для прогнозирования на основе будущих данных. Например, одним из возможных применений машинного обучения является обнаружение мошеннических транзакций на основе примеров как успешных, так и неудавшихся покупок в прошлом.

Вопрос: Как начать работу с Amazon Machine Learning?

Лучший способ начать работу с Amazon Machine Learning – использовать учебное пособие в Руководстве разработчика по Amazon Machine Learning. В учебном пособии подробно описано, как создать модель машинного обучения на основании учебного набора данных, как оценить эту модель и использовать ее для создания прогнозов. После выполнения учебного задания на основе данного пособия вы сможете использовать Amazon Machine Learning для создания своих собственных моделей машинного обучения. Подробнее см. в Руководстве разработчика по Amazon Machine Learning и Справочнике по API Amazon Machine Learning.

Вопрос: Что такое обучающие данные?

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

Вопрос: Что такое целевой атрибут?

Целевой атрибут – это специальный атрибут в обучающих данных, содержащий информацию, которую Amazon Machine Learning пытается спрогнозировать. Предположим, что вы хотите создать модель, создающую прогноз относительно того, является ли транзакция мошеннической или нет. Ваши обучающие данные содержат метаданные прошлых транзакций, целевой атрибут которых установлен как «1», если транзакция в конечном итоге была отвергнута банком, и как «0» в противоположном случае. Используя Amazon Machine Learning, вы находите шаблоны, связывающие целевой атрибут с метаданными транзакции (то есть всеми остальными атрибутами). Модели машинного обучения, основанные на этих шаблонах, вы используете для прогнозирования по данным, не содержащим целевого атрибута. Для рассматриваемого примера это означает, что прогноз, является ли транзакция мошеннической или нет, формируется на основе ее метаданных, известных до того, как транзакция будет отвергнута или принята банком.

Вопрос: Какой алгоритм использует Amazon Machine Learning для формирования моделей?

В настоящее время Amazon Machine Learning для формирования моделей использует стандартный для отрасли алгоритм логистической регрессии.

Вопрос: В каких регионах AWS доступен сервис Amazon Machine Learning?

Список регионов AWS с поддержкой сервиса Amazon Machine Learning см. в Таблице регионов AWS для всей глобальной инфраструктуры AWS.  См. также Регионы и адреса серверов в Общих справочных материалах по AWS.

Вопрос: Какова доступность сервиса Amazon Machine Learning?

Сервис Amazon Machine Learning обеспечивает высокую доступность. Плановые простои и перерывы на обслуживание отсутствуют. API для обучения модели, ее оценки и пакетных прогнозов работает на базе надежных ЦОД Amazon с высокой степенью доступности, стек сервиса реплицируется в трех ЦОД в каждом регионе AWS, что обеспечивает отказоустойчивость в случае выхода сервера из строя или аварийного отключения зоны доступности.

Вопрос: Какие меры обеспечения безопасности использует сервис Amazon Machine Learning?

Amazon Machine Learning обеспечивает шифрование моделей машинного обучения и других системных артефактов как при хранении, так и при пересылке. Запросы к API сервиса Amazon Machine Learning и связь с консолью выполняются через безопасное SSL-соединение. Для управления доступом пользователей IAM к конкретным действиям и ресурсам Amazon Machine Learning можно использовать сервис AWS Identity and Access Management (AWS IAM).

К началу >>

Вопрос: Где можно хранить данные?

Amazon Machine Learning может читать ваши данные из трех источников: (a) одного или нескольких файлов в Amazon S3, (b) результатов поискового запроса Amazon Redshift или (c) результатов поискового запроса Amazon Relational Database Service (RDS), если он выполнен по базе данных с ядром MySQL. Данные других продуктов, как правило, можно экспортировать в формате CSV в корзину Amazon S3, при этом они становятся доступными для сервиса Amazon Machine Learning. Подробные указания по настройке разрешений, позволяющих сервису Amazon Machine Learning получить доступ к поддерживаемым хранилищам данных, см. в Руководстве разработчика по Amazon Machine Learning.

Вопрос: Есть ли ограничения на размер пакета данных, который используется для обучения?

Amazon Machine Learning может обучать модели на наборах данных объемом вплоть до 100 ГБ.

Вопрос: Как узнать, есть ли в моих данных ошибки?

Ошибки форматирования данных можно найти с помощью Amazon Machine Learning. Функция анализа данных в консоли сервиса Amazon Machine Learning помогает найти более серьезные ошибки в ваших данных, например пустые поля или поля, содержащие недопустимые значения. Amazon Machine Learning сможет обучать модели машинного обучения (ML) и формировать точные прогнозы, даже если в данных будет присутствовать небольшое количество ошибок обоих видов. Ваши запросы на прогнозы будут успешны даже в том случае, если некоторую часть данных наблюдения составляют некорректные или недопустимые данные.

Вопрос: Что делать, если у меня неполные данные или отсутствует некоторая информация?

Следует всегда стремиться к тому, чтобы данные были по возможности полными и точными. Алгоритм обучения Amazon Machine Learning допускает наличие небольших объемов неполной или отсутствующей информации без значительного ухудшения качеств модели; при увеличении количества ошибок в данных качество итоговой модели может ухудшиться. Amazon Machine Learning прекращает обрабатывать запросы, обучающие модель, если количество записей, обработка которых не удалась, превысит 10 000 или 10 % от общего количества записей в наборе данных, в зависимости от того, что произойдет раньше.

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

Вопрос: Как определить, точные ли прогнозы дает модель?

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

Вопрос: Каким образом можно настроить модель, если она не дает желаемых результатов?

Лучший способ улучшения качества модели – это использование при обучении большего количества данных высокого качества. Хорошими способами повышения точности прогнозирования моделей является добавление данных наблюдений, добавление дополнительных типов информации (признаков) и преобразование данных для оптимизации процесса обучения (конструирование признаков). Amazon Machine Learning позволяет создать несколько прототипов моделей. С помощью встроенных процессоров данных сервиса Amazon Machine Learning можно конструировать несколько стандартных признаков простым редактированием строк набора правил, написанных на встроенном языке создания «рецептов». Кроме того, Amazon Machine Learning может автоматически создавать предполагаемый «рецепт» преобразования на основе ваших данных в тот момент, когда вы создаете новый объект источника данных, указывающий на ваш набор данных, – и этот «рецепт» будет автоматически оптимизирован на основе содержимого ваших данных.

Amazon Machine Learning также предоставляет несколько параметров для настройки процесса обучения: (a) целевой размер модели, (b) количество проходов по данным и (c) тип и степень регуляризации, применяемой к модели. Сервис Amazon Machine Learning с настройками по умолчанию хорошо решает многие реальные задачи машинного обучения, но эти настройки могут быть изменены в соответствии с потребностями или с консоли, или с помощью API.

В завершение укажем один важный аспект настройки модели, который надо учесть: каким образом прогнозы, формируемые вашей моделью машинного обучения, будут интерпретироваться вашим приложением и как можно оптимизировать эту интерпретацию для соответствия целям бизнеса. Amazon Machine Learning обеспечивает настройку интерпретации порога отсечения для моделей бинарной классификации, позволяя достичь обоснованного компромисса между разными видами ошибок, которые может допускать обученная модель. Например, некоторые приложения устойчивы к ложным обнаружениям ошибок, но весьма чувствительны к ложным пропускам ошибок. Консоль сервиса Amazon Machine Learning поможет вам настроить порог отсечения в соответствии с конкретными требованиями. Подробнее см. в разделе Оценка моделей машинного обучения (ML) Руководства разработчика по Amazon Machine Learning.

Вопрос: Можно ли экспортировать модель из Amazon Machine Learning?

Нет.

Вопрос: Можно ли импортировать существующую модель в Amazon Machine Learning

Нет.

Вопрос: Будет ли сервис Amazon Machine Learning при создании модели машинного обучения создавать постоянную копию данных?

Нет. Сервису Amazon Machine Learning необходим доступ к данным только на чтение для обнаружения и выделения из них шаблонов. Шаблоны затем сохраняются в модели машинного обучения (ML). Модели машинного обучения (ML) не являются копиями ваших данных. При использовании данных, хранимых в Amazon Redshift или Amazon RDS, Amazon Machine Learning экспортирует результаты запросов в указанное вами местоположение в корзине S3 и затем читает полученные результаты из S3. Вы сохраняете все права на временную копию данных и можете удалить ее после завершения работы сервиса Amazon Machine Learning.

К началу >>

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

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

Любая модель машинного обучения (ML), созданная сервисом Amazon Machine Learning, может быть использована как в режиме пакетного API, так и в режиме API реального времени. Выбор остается за вами и зависит только от требований приложения. Обычно пакетный API используется для обработки больших объемов записей данных, а API реального времени используется при работе интерактивных интернет-приложений, мобильных приложений и приложений рабочего стола.

Вопрос: С какой скоростью API реального времени сервиса Amazon Machine Learning формирует прогнозы?

Большинство запросов на прогнозы в режиме реального времени возвращают ответ в течение 100 миллисекунд, это достаточно быстро для интерактивных интернет-приложений, мобильных приложений и приложений рабочего стола. Точное время формирования прогноза через API реального времени зависит от размеров записи входных данных и того, насколько сложным является «рецепт» обработки для модели ML, формирующей прогнозы.

Вопрос: Какое количество одновременных запросов API реального времени поддерживает сервис Amazon Machine Learning?

Каждой модели машинного обучения (ML), используемой для прогнозирования в режиме реального времени, назначается URL сервера. По умолчанию каждый такой URL сервера может обработать до 200 транзакций в секунду. Если такая производительность для вашего приложения недостаточна, обратитесь в службу поддержки.

Вопрос: С какой скоростью Amazon Machine Learning возвращает пакетные прогнозы?

API пакетного прогнозирования работает быстро и эффективно. Время, через которое возвращается пакетный прогноз, зависит от нескольких факторов, среди которых (a) размер входящих данных, (b) сложность «рецепта» обработки данных для модели ML, формирующей прогнозы, и (c) количества других пакетных заданий (на обработку данных, обучение модели, оценку модели и других запросов на пакетную обработку), одновременно работающих в вашем аккаунте. По умолчанию Amazon Machine Learning выполняет до пяти пакетных заданий одновременно. Если такая производительность для вашего приложения недостаточна, обратитесь в службу поддержки.

Вопрос: Как можно отслеживать эффективность прогнозирования?

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

Объем трафика прогнозирования можно отслеживать по значениям метрик Amazon CloudWatch, которые публикуются сервисом Amazon Machine Learning в вашем аккаунте. Для каждой модели машинного обучения (ML), получившей запрос на пакетное прогнозирование либо на прогнозирование в режиме реального времени, Amazon Machine Learning опубликует количество записей данных, для которых прогнозы были успешно сформированы, и количество записей данных, при интерпретации которых произошла ошибка и прогнозы не были сформированы.

В соответствии с отраслевыми рекомендациями для мониторинга качества вашей модели ML за период времени следует периодически захватывать случайный образец записей данных, переданных в ваше приложение для прогнозирования, получить реальные ответы (целевые значения) и затем с помощью Amazon Machine Learning оценить полученный набор данных. Amazon Machine Learning рассчитает метрику качества модели, сравнив целевые значения с прогнозируемыми. Если обнаружится, что метрика качества с течением времени ухудшается, скорее всего, нужно провести обучение новой модели по новым точкам данных, так как данные, использовавшиеся первоначально для обучения модели, уже не соответствуют действительности. Например, если вы используете модель машинного обучения (ML) для обнаружения мошеннических транзакций, то с течением времени ее качество может ухудшаться, поскольку появляются новые способы мошенничества, неизвестные во время обучения модели. Этой тенденции можно противостоять путем обучения новой модели машинного обучения (ML) на примерах новых мошеннических транзакций, что позволит Amazon Machine Learning дополнительно выделить шаблоны, идентифицирующие такие транзакции.

К началу >>