Из-за множества статей, видео, аудиозаписей и других медиа-материалов, ежедневно создаваемых новостными компаниями, читатели всех типов — индивидуальные потребители, корпоративные подписчики и многие другие — часто сталкиваются с трудностями при поиске новостного контента, который наиболее актуален для них. Предоставление персонализированных новостей и впечатлений читателям может помочь решить эту проблему и создать более интересный опыт. Однако предоставление действительно персонализированных рекомендаций сопряжено с несколькими ключевыми проблемами:
- Учет разнообразных интересов пользователей – Новости могут охватывать множество тем, и даже в рамках определенных тем у читателей могут быть разные интересы.
- Обращение к ограниченной истории читателей – Многие читатели новостей имеют скудную историю активности. Чтобы обеспечить ценность, рекомендатели должны быстро изучать предпочтения на основе ограниченных данных.
- Актуальность и тенденции – Ежедневные циклы новостей означают, что рекомендации должны сочетать персонализированный контент с открытием новых популярных историй.
- Изменение интересов – Интересы читателей могут меняться со временем. Системы должны обнаруживать изменения и соответствующим образом адаптировать рекомендации.
- Объяснимость – Обеспечение прозрачности того, почему рекомендуются определенные истории, повышает доверие пользователей. Идеальная система рекомендаций новостей понимает человека и реагирует на более широкую новостную среду и аудиторию. Решение этих проблем является ключом к эффективному привлечению читателей к контенту, который они считают информативным и интересным.
В этом посте мы опишем, как Amazon персонализировать может стать основой масштабируемого приложения для рекомендации новостей. Это решение было внедрено у медиаклиента из списка Fortune 500 в первом полугодии 1 года и может быть повторно использовано для других клиентов, заинтересованных в создании рекомендателей новостей.
Обзор решения
Amazon Personalize отлично подходит для создания системы рекомендаций по новостям благодаря своей способности предоставлять персонализированные рекомендации в режиме реального времени и в пакетном режиме в любом масштабе. Amazon Personalize предлагает различные рецепты рекомендаций (алгоритмы), такие как рецепты «Персонализация пользователя» и «Тенденции сейчас», которые особенно подходят для обучения моделей рекомендаций новостей. Рецепт «Персонализация пользователя» анализирует предпочтения каждого пользователя на основе его взаимодействия с контентом с течением времени. В результате создаются настраиваемые новостные ленты, в которых освещаются темы и источники, наиболее актуальные для отдельного пользователя. Рецепт «Тенденции сейчас» дополняет это, определяя растущие тенденции и популярные новости в режиме реального времени для всех пользователей. Объединение рекомендаций из обоих рецептов позволяет механизму рекомендаций сбалансировать персонализацию и обнаружение актуальных и интересных историй.
На следующей диаграмме показана архитектура приложения рекомендации новостей на базе Amazon Personalize и поддержки сервисов AWS.
Это решение имеет следующие ограничения:
- Предоставление персонализированных рекомендаций для только что опубликованных статей (статей, опубликованных несколько минут назад) может оказаться сложной задачей. Далее в этом посте мы опишем, как смягчить это ограничение.
- Amazon Personalize имеет фиксированное количество взаимодействий и функций набора данных элементов, которые можно использовать для обучения модели.
- На момент написания Amazon Personalize не предоставляет объяснений рекомендаций на уровне пользователя.
Давайте рассмотрим каждый из основных компонентов решения.
Предпосылки
Для реализации этого решения необходимо следующее:
- Исторические данные о кликах пользователей в режиме реального времени для
interactions
Набор данных - Метаданные новостных статей за прошлые периоды и в реальном времени для
items
Набор данных
Прием и подготовка данных
Чтобы обучить модель в Amazon Personalize, вам необходимо предоставить данные для обучения. В этом решении вы используете два типа наборов обучающих данных Amazon Personalize: набор данных о взаимодействиях и набор данных элементов, interactions
набор данных содержит данные о взаимодействиях пользователя, элемента и временной метки, а items
набор данных содержит функции рекомендуемых статей.
Вы можете использовать два разных подхода к приему обучающих данных:
- Пакетная загрузка - Ты можешь использовать Клей AWS для преобразования и приема данных о взаимодействиях и элементах, находящихся в Простой сервис хранения Amazon (Amazon S3) в наборы данных Amazon Personalize. AWS Glue выполняет операции извлечения, преобразования и загрузки (ETL) для согласования данных со схемой наборов данных Amazon Personalize. По завершении процесса ETL выходной файл помещается обратно в Amazon S3 и готов для загрузки в Amazon Personalize через задание на импорт набора данных.
- Прием в реальном времени - Ты можешь использовать Потоки данных Amazon Kinesis и AWS Lambda для постепенного приема данных в реальном времени. Функция Lambda выполняет те же операции преобразования данных, что и задание пакетной загрузки, на уровне отдельной записи, и принимает данные в Amazon Personalize с помощью Путевентс и PutItems API-интерфейсы.
В этом решении вы также можете импортировать определенные атрибуты данных элементов и взаимодействий в Amazon DynamoDB. Вы можете использовать эти атрибуты во время вывода в реальном времени, чтобы фильтровать рекомендации по бизнес-правилам. Например, метаданные статьи могут содержать названия компаний и отраслей в статье. Чтобы заранее рекомендовать статьи о компаниях или отраслях, о которых читают пользователи, вы можете записать, как часто читатели читают статьи о конкретных компаниях и отраслях, и использовать эти данные для Персонализация фильтров Amazon для дальнейшей адаптации рекомендуемого контента. Подробнее о том, как использовать атрибуты данных элементов и взаимодействий в DynamoDB, мы поговорим позже в этом посте.
На следующей диаграмме показана архитектура приема данных.
Тренируй модель
Основная часть усилий по обучению модели должна быть сосредоточена на модели персонализации пользователей, поскольку она может использовать все три набора данных Amazon Personalize (тогда как модель Trending Now использует только interactions
набор данных). Мы рекомендуем проводить эксперименты, систематически меняющие различные аспекты тренировочного процесса. Для заказчика, реализовавшего это решение, команда провела более 30 экспериментов. Это включало в себя изменение interactions
и items
функции набора данных, корректировку продолжительности истории взаимодействий, предоставляемой модели, настройку гиперпараметров Amazon Personalize и оценку того, улучшил ли набор данных явного пользователя производительность в автономном режиме (по сравнению с увеличением времени обучения).
Каждый вариант модели оценивался на основе показателей, предоставленных Amazon Personalize для данных обучения, а также настраиваемых оффлайн-метрик в наборе тестовых данных. Стандартные показатели, которые следует учитывать, включают среднюю среднюю точность (MAP) @ K (где K — количество рекомендаций, представленных читателю), нормализованный дисконтированный совокупный выигрыш, средний обратный ранг и охват. Дополнительную информацию об этих показателях см. Оценка версии решения с помощью метрик. Мы рекомендуем отдавать приоритет MAP @ K из этих показателей, которые фиксируют среднее количество статей, на которые читатель нажал, из лучших рекомендованных ему статей, поскольку показатель MAP является хорошим показателем (реального) рейтинга кликов по статьям. K следует выбирать исходя из количества статей, которые читатель может просмотреть на настольной или мобильной веб-странице без необходимости прокрутки, что позволяет оценить эффективность рекомендаций с минимальными усилиями читателя. Внедрение пользовательских показателей, таких как уникальность рекомендаций (которая описывает, насколько уникальными были результаты рекомендаций среди пользователей-кандидатов), также может дать представление об эффективности рекомендаций.
С помощью Amazon Personalize экспериментальный процесс позволяет определить оптимальный набор функций набора данных как для моделей «Персонализация пользователя», так и для моделей «Тенденции сейчас». Модель «Тенденции сейчас» существует в рамках того же Amazon Personalize. группа наборов данных что и модель персонализации пользователя, поэтому она использует тот же набор interactions
особенности набора данных.
Генерируйте рекомендации в реальном времени
Когда читатель посещает веб-страницу новостной компании, API-вызов будет сделан рекомендателю новостей через Шлюз API Amazon. Это запускает функцию Lambda, которая вызывает конечные точки моделей Amazon Personalize для получения рекомендации в режиме реального времени. Во время вывода вы можете использовать фильтры для фильтрации исходных рекомендаций на основе атрибутов взаимодействия со статьей или читателем. Например, если атрибутом статьи является «Тема новостей» (например, спорт, образ жизни или политика), вы можете ограничить рекомендации конкретными темами новостей, если это является требованием продукта. Аналогичным образом вы можете использовать фильтры для событий взаимодействия с читателем, например исключая статьи, которые читатель уже прочитал.
Одной из ключевых проблем с рекомендациями в реальном времени является эффективное включение только что опубликованных статей (также называемых «холодными статьями») в выходные данные рекомендаций. Только что опубликованные статьи не содержат никаких исторических данных о взаимодействии, на которые обычно полагаются рекомендатели, а системам рекомендаций требуется достаточное время обработки, чтобы оценить, насколько релевантны только что опубликованные статьи конкретному пользователю (даже если только используются сигналы взаимоотношений пользователя и элемента).
Amazon Personalize может автоматически обнаруживать и рекомендовать новые статьи, добавленные в items
набор данных каждые 2 часа. Однако, поскольку этот вариант использования ориентирован на рекомендации новостей, вам нужен способ рекомендовать новые статьи, как только они будут опубликованы и готовы к прочтению читателями.
Один из способов решить эту проблему — разработать механизм случайной вставки только что опубликованных статей в окончательные рекомендации для каждого читателя. Вы можете добавить функцию, позволяющую контролировать, какой процент статей в окончательном наборе рекомендаций были только что опубликованными статьями, и, как и в исходных рекомендациях Amazon Personalize, вы можете фильтровать только что опубликованные статьи по атрибутам статьи (например, «Тема новостей» или «Тема новостей»). ), если это требование к продукту. Вы можете отслеживать взаимодействия с только что опубликованными статьями в DynamoDB, когда они начинают поступать в систему, и расставлять приоритеты для самых популярных только что опубликованных статей во время постобработки рекомендаций до тех пор, пока только что опубликованные статьи не будут обнаружены и обработаны моделями Amazon Personalize.
После того как вы получите окончательный набор рекомендуемых статей, эти выходные данные передаются в другую функцию постобработки Lambda, которая проверяет выходные данные на предмет соответствия заранее заданным бизнес-правилам. Сюда может входить проверка соответствия рекомендуемых статей спецификациям макета веб-страницы, например, если рекомендации обслуживаются во внешнем интерфейсе веб-браузера. При необходимости статьи можно изменить в рейтинге, чтобы обеспечить соблюдение бизнес-правил. Мы рекомендуем изменить рейтинг, внедрив функцию, которая позволяет статьям с более высоким рейтингом опускаться в рейтинге только на одно место за раз, пока не будут соблюдены все бизнес-правила, обеспечивая минимальную потерю релевантности для читателей. Окончательный список постобработанных статей возвращается веб-службе, инициировавшей запрос рекомендаций.
На следующей диаграмме показана архитектура этого этапа решения.
Создание пакетных рекомендаций
Персонализированные информационные панели новостей (посредством рекомендаций в режиме реального времени) требуют от читателя активного поиска новостей, но в нашей сегодняшней загруженной жизни иногда проще отправить вам самые важные новости. Чтобы доставить персонализированные новостные статьи в виде дайджеста по электронной почте, вы можете использовать Шаговые функции AWS рабочий процесс для создания пакетных рекомендаций. Рабочий процесс пакетных рекомендаций собирает и обрабатывает рекомендации из нашей модели персонализации пользователей или конечных точек модели «Тенденции сейчас», что дает гибкость в выборе того, какую комбинацию персонализированных и популярных статей команды хотят предложить своим читателям. Разработчики также имеют возможность использовать Amazon Personalize. пакетный вывод особенность; однако на момент написания создание пакетного задания вывода Amazon Personalize не поддерживает включение элементов, полученных после обучения пользовательской модели Amazon Personalize, а также не поддерживает рецепт «Тенденции сейчас».
Во время рабочего процесса пакетного вывода Step Functions список читателей делится на пакеты, обрабатывается параллельно и отправляется на уровень постобработки и проверки перед отправкой в службу создания электронной почты. Следующая диаграмма иллюстрирует этот рабочий процесс.
Масштабируйте рекомендательную систему
Для эффективного масштабирования вам также необходим рекомендатель новостей, способный приспособиться к растущему числу пользователей и увеличению трафика, не ухудшая впечатления читателей. Amazon Персонализируйте конечные точки модели изначально автоматический масштаб для удовлетворения возросшего трафика. Инженерам нужно только установить и отслеживать переменную минимального количества выделяемых транзакций в секунду (TPS) для каждой конечной точки Amazon Personalize.
Помимо Amazon Personalize, представленное здесь приложение для рекомендации новостей создано с использованием бессерверных сервисов AWS, что позволяет командам инженеров сосредоточиться на обеспечении наилучшего качества чтения, не беспокоясь об обслуживании инфраструктуры.
Заключение
В условиях экономики внимания становится все более важным предоставлять потребителям актуальный и своевременный контент. В этом посте мы обсудили, как вы можете использовать Amazon Personalize для создания масштабируемого средства рекомендации новостей, а также стратегии, которые организации могут реализовать для решения уникальных проблем, связанных с предоставлением рекомендаций по новостям.
Чтобы узнать больше об Amazon Personalize и о том, как он может помочь вашей организации в создании систем рекомендаций, посетите Руководство для разработчиков Amazon Personalize.
Счастливое строительство!
Об авторах
Бала Кришнамурти — старший специалист по данным в AWS Professional Services, где он помогает клиентам создавать и развертывать решения на базе искусственного интеллекта для решения их бизнес-задач. Он работал с клиентами в различных секторах, включая средства массовой информации и развлечения, финансовые услуги, здравоохранение и технологии. В свободное время он любит проводить время с семьей/друзьями, вести активный образ жизни, пробовать новые рестораны, путешествовать и начинать свой день с чашечки дымящегося горячего кофе.
Риши Джала — архитектор данных NoSQL в профессиональных услугах AWS. Он специализируется на проектировании и создании высокомасштабируемых приложений с использованием баз данных NoSQL, таких как Amazon DynamoDB. Увлеченный решением проблем клиентов, он предлагает индивидуальные решения для достижения успеха в цифровой среде.
- SEO-контент и PR-распределение. Получите усиление сегодня.
- PlatoData.Network Вертикальный генеративный ИИ. Расширьте возможности себя. Доступ здесь.
- ПлатонАйСтрим. Интеллект Web3. Расширение знаний. Доступ здесь.
- ПлатонЭСГ. Углерод, чистые технологии, Энергия, Окружающая среда, Солнечная, Управление отходами. Доступ здесь.
- ПлатонЗдоровье. Биотехнологии и клинические исследования. Доступ здесь.
- Источник: https://aws.amazon.com/blogs/machine-learning/build-a-news-recommender-application-with-amazon-personalize/
- :имеет
- :является
- :куда
- 100
- 2023
- 30
- 500
- 7
- 98
- a
- способность
- О нас
- вмещать
- соответственно
- через
- активный
- активно
- деятельность
- приспосабливать
- Добавить
- адрес
- регулировка
- После
- тому назад
- Поддержка
- алгоритмы
- выравнивать
- Выравнивает
- Все
- Позволяющий
- позволяет
- уже
- причислены
- Amazon
- Amazon персонализировать
- Amazon Web Services
- an
- анализы
- и
- Другой
- любой
- API
- API
- Применение
- Приложения
- подходы
- архитектура
- МЫ
- гайд
- статьи
- AS
- аспекты
- оценить
- At
- внимание
- Атрибуты
- аудитория
- аудио
- автоматический
- в среднем
- AWS
- Клей AWS
- Профессиональные услуги AWS
- назад
- Баланс
- основанный
- BE
- , так как:
- становиться
- было
- до
- не являетесь
- ЛУЧШЕЕ
- изоферменты печени
- шире
- браузер
- строить
- Строительство
- строит
- построенный
- бизнес
- занятый
- но
- by
- призывают
- под названием
- Объявления
- CAN
- кандидат
- перехватывает
- случаев
- определенный
- вызов
- проблемы
- сложные
- проверка
- контроль
- Проверки
- нажмите на
- климат
- Кофе
- холодный
- сочетание
- комбинируя
- Компании
- Компания
- Компании
- полный
- компоненты
- Соединительный
- Рассматривать
- Потребители
- потребление
- содержать
- содержит
- содержание
- контроль
- Корпоративное
- охват
- Создайте
- создали
- Создающий
- чашка
- изготовленный на заказ
- клиент
- Клиенты
- подгонянный
- циклы
- ежедневно
- Ежедневные новости
- щитки
- данным
- ученый данных
- базы данных
- Наборы данных
- день
- доставить
- доставки
- обеспечивает
- развертывание
- описывать
- описывает
- проектирование
- компьютера
- обнаруживать
- обнаруженный
- Определять
- Застройщик
- застройщиков
- диаграмма
- различный
- трудный
- Digest
- Интернет
- со скидкой
- открытие
- обсуждать
- обсуждается
- Разное
- Разделенный
- не
- Dont
- вниз
- управлять
- в течение
- каждый
- легче
- экономику
- фактически
- эффективность
- усилие
- Конечная точка
- обязательство
- привлечение
- Двигатель
- Проект и
- Инженеры
- обеспечивать
- Развлечения
- оценивать
- оценивается
- оценки
- Даже
- События
- Каждая
- развивается
- пример
- без учета
- существует
- опыт
- Впечатления
- экспериментальный
- Эксперименты
- объяснениями
- извлечение
- Осень
- Особенность
- Особенности
- несколько
- Файл
- фильтр
- фильтры
- окончательный
- финансовый
- финансовые услуги
- Найдите
- соответствовать
- фиксированной
- Трансформируемость
- Фокус
- внимание
- фокусируется
- после
- Что касается
- Для потребителей
- Fortune
- Бесплатно
- часто
- от
- Frontend
- функция
- Функции
- далее
- Gain
- порождать
- поколение
- получить
- Отдаете
- хорошо
- большой
- Рост
- Есть
- имеющий
- he
- здравоохранение
- помощь
- помогает
- здесь
- очень
- его
- исторический
- истории
- история
- ГОРЯЧИЙ
- ЧАСЫ
- Как
- How To
- Однако
- HTML
- HTTP
- HTTPS
- идеальный
- if
- иллюстрирует
- осуществлять
- в XNUMX году
- Осуществляющий
- Импортировать
- важную
- улучшенный
- in
- включают
- включены
- В том числе
- Увеличение
- расширились
- все больше и больше
- individual
- промышленности
- промышленность
- информация
- информативный
- Инфраструктура
- начальный
- начатый
- понимание
- взаимодействие
- взаимодействие
- заинтересованный
- интересы
- в
- IT
- пункты
- ЕГО
- работа
- JPG
- всего
- Основные
- пейзаж
- новее
- слой
- Планировка
- УЧИТЬСЯ
- Длина
- уровень
- стиль жизни
- ограничение
- недостатки
- Ограниченный
- Список
- Живет
- загрузка
- от
- сделанный
- Главная
- техническое обслуживание
- многих
- карта
- Май..
- значить
- механизм
- Медиа
- Встречайте
- встретивший
- Метаданные
- метрический
- Метрика
- минимальный
- минимальный
- Минут
- смягчать
- Мобильный телефон
- модель
- Модели
- монитор
- БОЛЕЕ
- самых
- Самые популярные
- множество
- должен
- имена
- изначально
- Необходимость
- необходимый
- Новые
- Новости
- нормально
- сейчас
- номер
- of
- Предложения
- оффлайн
- on
- ONE
- только
- Операционный отдел
- оптимальный
- Опция
- or
- организация
- организации
- оригинал
- Другое
- наши
- внешний
- выходной
- за
- Параллельные
- особенно
- страстный
- для
- процент
- производительность
- выполняет
- воплощение
- Олицетворять
- Персонализированные
- Часть
- Платон
- Платон Интеллектуальные данные
- ПлатонДанные
- политика
- бассейн
- Популярное
- После
- мощностью
- Питание
- Точность
- предпочтения
- Подготовить
- представлены
- разрабатывает
- Расставляйте приоритеты
- приоритезация
- Проблема
- проблемам
- процесс
- Обработанный
- обработка
- Продукт
- профессиональный
- обеспечивать
- при условии
- обеспечение
- полномочие
- опубликованный
- Push
- быстро
- ранг
- Ранжирование
- Стоимость
- Читать
- читатель
- читатели
- Reading
- готовый
- реальные
- реального времени
- данные в реальном времени
- рецепт
- рекомендовать
- Рекомендация
- рекомендаций
- Управление по борьбе с наркотиками (DEA)
- запись
- отношения
- относительный
- соответствующие
- полагаться
- Сообщается
- запросить
- требовать
- требование
- ресторан
- ограничивать
- Итоги
- повышение
- условиями,
- Бег
- то же
- масштабируемые
- Шкала
- Ученый
- пролистать
- Поиск
- Во-вторых
- Сектора юридического права
- посмотреть
- выберите
- выбранный
- старший
- послать
- служил
- Serverless
- обслуживание
- Услуги
- набор
- несколько
- Смены
- должен
- сигналы
- аналогичный
- Аналогичным образом
- просто
- So
- Решение
- Решения
- РЕШАТЬ
- Решение
- иногда
- скоро
- Источники
- пролет
- конкретный
- спецификации
- Расходы
- Спорт
- стандарт
- Начало
- пребывание
- Шаг
- диск
- Истории
- стратегий
- представленный
- Абоненты
- успех
- такие
- достаточный
- подходящее
- поддержка
- поддержки
- Поверхность
- система
- систематически
- системы
- Tackling
- портной
- с учетом
- взять
- команда
- команды
- Технологии
- тестXNUMX
- который
- Ассоциация
- их
- Их
- Эти
- они
- этой
- три
- Через
- время
- своевременно
- в
- сегодня
- топ
- Темы
- TPS
- трек
- трафик
- Train
- специалистов
- Обучение
- Новости обучения
- Сделки
- Transform
- трансформация
- Прозрачность
- путешествовать
- трендов
- Тенденции
- по-настоящему
- Доверие
- пытается
- настройка
- два
- Типы
- понимает
- созданного
- уникальность
- до
- использование
- прецедент
- используемый
- Информация о пользователе
- пользователей
- использования
- через
- Проверка
- ценностное
- переменная
- разнообразный
- разнообразие
- меняться
- версия
- с помощью
- Видео
- Вид
- Посещения
- от
- хотеть
- законопроект
- Путь..
- we
- Web
- веб-браузер
- веб-сервисы
- ЧТО Ж
- были
- Что
- когда
- в то время как
- будь то
- который
- зачем
- будете
- в
- без
- работавший
- рабочий
- беспокоиться
- письмо
- Ты
- ВАШЕ
- зефирнет