Поиск информации в репозитории текстовых документов произвольной формы может быть похож на поиск иголки в стоге сена. Традиционным подходом может быть использование подсчета слов или другого базового анализа для анализа документов, но благодаря возможностям Amazon AI и инструментам машинного обучения (ML) мы можем получить более глубокое понимание контента.
Amazon Comprehend — это полностью управляемый сервис, который использует обработку естественного языка (NLP) для извлечения информации о содержании документов. Amazon Comprehend формирует ценную информацию, распознавая сущности, ключевые фразы, тональность, темы и пользовательские элементы в документе. Amazon Comprehend может создавать новые идеи, основанные на понимании структуры документа и взаимоотношений сущностей. Например, с помощью Amazon Comprehend вы можете сканировать весь репозиторий документов на наличие ключевых фраз.
Amazon Comprehend позволяет специалистам, не связанным с машинным обучением, легко выполнять задачи, которые обычно занимают часы времени. Amazon Comprehend экономит большую часть времени, необходимого для очистки, построения и обучения вашей собственной модели. Для создания более глубоких пользовательских моделей в NLP или любой другой области Amazon SageMaker позволяет создавать, обучать и развертывать модели в гораздо более традиционном рабочем процессе машинного обучения, если это необходимо.
В этой статье мы используем Amazon Comprehend и другие сервисы AWS для анализа и извлечения новой информации из репозитория документов. Затем мы используем Amazon QuickSight для создания простого, но мощного визуального облака слов, позволяющего легко определять темы и тенденции.
Обзор решения
На следующей диаграмме показана архитектура решения.
Для начала мы собираем данные для анализа и загружаем их в корзину Amazon Simple Storage Service (Amazon S3) в учетной записи AWS. В этом примере мы используем файлы в текстовом формате. Затем данные анализируются Amazon Comprehend. Amazon Comprehend создает выходные данные в формате JSON, которые необходимо преобразовать и обработать в формат базы данных с помощью AWS Glue. Мы проверяем данные и извлекаем определенные таблицы форматированных данных с помощью Amazon Athena для анализа QuickSight с использованием облака слов. Дополнительную информацию о визуализациях см. в разделе Визуализация данных в Amazon QuickSight.
Предварительные условия
Для этого пошагового руководства у вас должны быть следующие предварительные условия:
Загрузить данные в корзину S3
Загрузите свои данные в корзину S3. В этом посте мы используем текст Конституции США в формате UTF-8 в качестве входного файла. После этого вы готовы анализировать данные и создавать визуализации.
Анализируйте данные с помощью Amazon Comprehend
Существует множество типов текстовой и графической информации, которую можно обрабатывать с помощью Amazon Comprehend. Помимо текстовых файлов, вы можете использовать Amazon Comprehend для одношаговой классификации и распознавания объектов, чтобы принимать в качестве входных данных файлы изображений, файлы PDF и файлы Microsoft Word, которые не обсуждаются в этом посте.
Чтобы проанализировать данные, выполните следующие действия:
- В консоли Amazon Comprehend выберите Вакансии по анализу в панели навигации.
- Выбирать Создать задание анализа.
- Введите название своей работы.
- Для Тип анализавыбирать Ключевые слова.
- Для Языквыбирать Английский.
- Для Расположение входных данныхукажите созданную вами папку в качестве предварительного условия.
- Для Расположение выходных данныхукажите созданную вами папку в качестве предварительного условия.
- Выбирать Создайте роль IAM.
- Введите суффикс к имени роли.
- Выбирать Создать работу.
Задание будет запущено, и его статус отобразится на Вакансии по анализу страница.
Подождите, пока задание анализа завершится. Amazon Comprehend создаст файл и поместит его в указанную вами папку выходных данных. Файл имеет формат .gz или GZIP.
Этот файл необходимо скачать и преобразовать в несжатый формат. Вы можете загрузить объект из папки данных или корзины S3 с помощью консоли Amazon S3.
- На консоли Amazon S3 выберите объект и выберите Скачать. Если вы хотите загрузить объект в определенную папку, выберите Скачать на Действия меню.
- После загрузки файла на локальный компьютер откройте заархивированный файл и сохраните его как несжатый файл.
Несжатый файл необходимо загрузить в выходную папку, прежде чем сканер AWS Glue сможет его обработать. В этом примере мы загружаем несжатый файл в ту же выходную папку, которую будем использовать на последующих шагах.
- На консоли Amazon S3 перейдите к корзине S3 и выберите Загрузить.
- Выбирать Добавить файлы.
- Выберите несжатые файлы с вашего локального компьютера.
- Выбирать Загрузить.
После загрузки файла удалите исходный заархивированный файл.
- На консоли Amazon S3 выберите корзину и выберите Удалить.
- Подтвердите имя файла, чтобы окончательно удалить его, введя имя файла в текстовое поле.
- Выбирать Удалить объекты.
В выходной папке останется один файл: несжатый файл.
Преобразование данных JSON в формат таблицы с помощью AWS Glue
На этом этапе вы подготавливаете выходные данные Amazon Comprehend для использования в качестве входных данных в Athena. Выходные данные Amazon Comprehend имеют формат JSON. Вы можете использовать AWS Glue для преобразования JSON в структуру базы данных, которая в конечном итоге будет прочитана QuickSight.
- В консоли AWS Glue выберите Краулеры в панели навигации.
- Выбирать Создать сканер.
- Введите имя для своего сканера.
- Выбирать Следующий.
- Для Ваши данные уже сопоставлены с таблицами Glue?выбирать Еще нет.
- Добавьте источник данных.
- Для Путь S3введите местоположение папки выходных данных Amazon Comprehend.
Обязательно добавьте завершающий /
к имени пути. AWS Glue выполнит поиск всех файлов по пути к папке.
- Выбирать Сканировать все подпапки.
- Выбирать Добавьте источник данных S3.
- Создайте новую роль AWS Identity and Access Management (IAM) для сканера.
- Введите имя роли IAM.
- Выбирать Обновить выбранную роль IAM чтобы убедиться, что новая роль назначена сканеру.
- Выбирать Следующий для ввода выходной информации (базы данных).
- Выбирать Добавить базу данных.
- Введите имя базы данных.
- Выбирать Следующий.
- Выбирать Создать сканер.
- Выбирать Запустить сканер для запуска сканера.
Статус сканера можно отслеживать в консоли AWS Glue.
Используйте Athena для подготовки таблиц для QuickSight.
Athena извлечет данные из таблиц базы данных, созданных сканером AWS Glue, чтобы предоставить формат, который QuickSight будет использовать для создания облака слов.
- На консоли Athena выберите Редактор запросов в панели навигации.
- Для Источник данныхвыбирать Каталог данных AwsData.
- Для База данныхвыберите базу данных, созданную искателем.
Чтобы создать таблицу, совместимую с QuickSight, данные должны быть отделены от массивов.
- Первым шагом является создание временной базы данных с соответствующими данными Amazon Comprehend:
- Следующее утверждение ограничивается фразами, состоящими как минимум из трех слов и групп по частоте фраз:
Используйте QuickSight для визуализации вывода
Наконец, вы можете создать визуальный результат анализа.
- В консоли QuickSight выберите Новый анализ.
- Выбирать Новый набор данных.
- Для Создать набор данныхвыбирать Из новых источников данных.
- Выбирать Афина в качестве источника данных.
- Введите имя источника данных и выберите Создать источник данных.
- Выбирать Визуализируйте.
Убедитесь, что QuickSight имеет доступ к сегментам S3, в которых хранятся таблицы Athena.
- В консоли QuickSight выберите значок профиля пользователя и выберите Управление QuickSight.
- Выбирать Безопасность и разрешения.
- Ищите раздел Доступ QuickSight к сервисам AWS.
Настроив доступ к сервисам AWS, QuickSight может получить доступ к данным в этих сервисах. Доступ пользователей и групп можно контролировать с помощью опций.
- Убедитесь, что Amazon S3 предоставлен доступ.
Теперь вы можете создать облако слов.
- Выберите облако слов под Визуальные типы.
- Перетащите текст в Группа по и считать до Размер.
Выберите меню параметров (три точки) в визуализации, чтобы получить доступ к параметрам редактирования. Например, вы можете захотеть скрыть от отображения термин «другое». Вы также можете редактировать такие элементы, как заголовок и подзаголовок вашего визуального элемента. Чтобы загрузить облако слов в формате PDF, выберите Скачать на панели инструментов QuickSight.
Очистить
Чтобы избежать текущих расходов, удалите все неиспользуемые данные, процессы или ресурсы, предоставленные на соответствующей сервисной консоли.
Заключение
Amazon Comprehend использует NLP для получения информации о содержании документов. Он развивает понимание, распознавая сущности, ключевые фразы, язык, настроения и другие общие элементы в документе. Вы можете использовать Amazon Comprehend для создания новых продуктов на основе понимания структуры документов. Например, с помощью Amazon Comprehend вы можете сканировать весь репозиторий документов на наличие ключевых фраз.
В этом посте описаны шаги по созданию облака слов для визуализации анализа текстового контента из Amazon Comprehend с использованием инструментов AWS и QuickSight для визуализации данных.
Давайте оставаться на связи через раздел комментариев!
Об авторах
Крис Гедман является лидером продаж в сфере розничной торговли и потребительских товаров на востоке США в Amazon Web Services. Когда он не работает, он любит проводить время со своими друзьями и семьей, особенно летом на Кейп-Коде. Крис — временно вышедший на пенсию воин-ниндзя, но сейчас ему нравится наблюдать за своими двумя сыновьями и тренировать их.
Кларк Лефавур является руководителем архитектора решений в Amazon Web Services, занимающегося поддержкой корпоративных клиентов в восточном регионе. Кларк живет в Новой Англии и любит проводить время, создавая рецепты на кухне.