Часть 1. Введение в использование сетевой информации в транзакциях электронной торговли
Граф и сеть, упомянутые в этой статье, представляют собой отношения или взаимодействия между объектами (учетными записями клиентов, устройствами, способами оплаты и т. д.), участвующими в типичной среде онлайн-покупок или электронной коммерции. Графики помогают фиксировать связанные данные между объектами в дополнение к конкретным функциям транзакций, которые передаются в модели машинного обучения, используемые для различных задач. Это особенно полезно для обнаружения аномалий, поскольку мошенники или злоумышленники, как правило, используют несколько организаций и учетных записей клиентов одновременно. Нейронная сеть графов (GNN) расширяет возможности использования графов, применяя нейронные сети и методы глубокого обучения в процессе обучения и вывода на основе графов.
В части 1 этого поста (текущая статья) мы рассмотрим терминологию, используемую в методах графового и сетевого анализа, и дадим краткое введение в применение этих методов в электронной коммерции. Затем в Часть 2 мы рассмотрим несколько популярных методов на основе графов и методов GNN, которые можно использовать в различных приложениях, включая обнаружение аномалий в электронной коммерции.
Эта статья является дополнением к предыдущему сообщению в блоге (автором) под названием Глубокое обучение для обнаружения мошенничества в розничных транзакциях», и здесь мы намерены обсудить связь графа и сетевой информации с глубоким методы обучения для более полного изучения информации, скрытой в электронной коммерции и розничных транзакциях.
Что такое графическая информация в электронной торговле?
В среде электронной коммерции участвуют различные организации. Транзакция, представленная в виде графика, состоит из взаимодействия между учетной записью клиента, устройством, используемым для совершения покупки, способом оплаты, адресами и т. д.
Учетная запись клиента может быть связана с несколькими объектами, а отношения между учетной записью клиента и другими объектами, которые, в свою очередь, связаны с другим набором учетных записей клиентов (см. рис. 1), полезны для обнаружения аномалий, когда целью является снижение потери из-за мошенничества и злоупотреблений. Графическое представление и рассуждения GNN помогают обнаруживать аномалии, эффективно используя локальную (уровня 1 или соседних) сетевую информацию о транзакции и дополнительно исследуя более глобальную информацию (соединения более высокого уровня и удаленные соседи).
Граф состоит из узлов и ребер. Когда узлы или объекты относятся к одному типу, такой граф называется однородным. С другой стороны, граф с несколькими типами узлов и/или несколькими типами ребер между ними называется гетерогенным графом (или гетерографом). Граф транзакций электронной коммерции — это неоднородный граф, в котором транзакция может быть представлена связями между различными типами узлов, представляющих учетную запись клиента, способ оплаты, устройство, адрес и т. д., а ребра между этими узлами различаются и охватывают различные виды информации. Например, связь между учетной записью клиента и устройством отличается от типа связи между учетной записью клиента и способом оплаты.
Нам также необходимо учитывать измерение времени на графике электронной коммерции. Это связано с тем, что транзакции электронной коммерции каждый раз разные, а модели аномалий или MO (modus operandi) развиваются с течением времени. Таким образом, динамический граф (в отличие от статического графа) лучше улавливает изменяющуюся топологию графа, взаимодействия и атрибуты узлов. Ниже приведены некоторые примеры изменяющегося характера графика: новый клиент совершает покупку, используется новое устройство, используется другой способ оплаты, другое устройство или другой адрес.
Существует неизбежная задержка в получении данных о производительности и обратной связи, включая истинные метки для обнаружения аномалий. Например, законному клиенту требуется время, чтобы идентифицировать и, следовательно, сообщить о несанкционированных транзакциях из истории своей кредитной карты. Затем такие отчеты отправляются из банка продавцу. Продавцы возвращают средства с комиссией, что приводит к убыткам из-за мошенничества. Такая информация хранится в виде атрибутов в определенных узлах графа.
Рассмотрим два способа подготовки данных для построения графиков или проведения анализа графов:
- График в основном доступен. Предположим, что система управления электронной коммерцией уже отслеживает взаимодействия между набором выбранных объектов в транзакции. Затем мы можем использовать весь граф или применить некоторую форму случайной выборки по краям (используя алгоритм роста области) для поиска соседних узлов. Это создает эффективные подграфы, а затем нам нужно сгенерировать вложения графов для дальнейшего анализа.
- Когда граф недоступен для анализа графа, можно использовать доступные базы данных (например, реляционные таблицы) для определения строительных блоков (узлов и ребер) и, следовательно, построения графа.
Постановка задачи в графическом анализе
Предположим, что большинство исторических данных или прошлых транзакций (каждая из которых переведена в узлы и ребра графа) имеют метки. После того, как граф сформирован, следующим шагом в графовой аналитике является:
- Классификация узлов или «классификация сущностей». Цель — выяснить, является ли узел данного графа аномалией.
- Классификация ссылок или «классификация краев». Чтобы выяснить, является ли взаимодействие между узлами аномальным.
- Предсказание ссылок. В результате последующего анализа графа мы можем назначить предсказанные или спроецированные метки каждому узлу или краю графа. Мы также можем использовать такие прогнозы для восстановления недостающих фактов или меток. В «прогнозировании ссылок» мы хотим предсказать, какие узлы, вероятно, будут связаны или подключены. С помощью этого метода также можно обнаружить или восстановить отсутствующее соединение между узлами.
- Классификация графа. Чтобы выяснить, относится ли граф или подграф транзакции электронной торговли (включая узел и его набор соседей до определенной степени соседства) к определенному классу. Для этого функция решения на выходе может быть, например, классификатором нейронной сети, который использует атрибуты графа и встраивания узлов в качестве входных данных.
Связанные темы и методы
Чтобы получить всесторонний обзор методов анализа графов, мы сначала рассмотрим другие связанные термины и методы:
- Сетевые показатели и извлечение признаков графа. Тема включает использование традиционных графических и сетевых атрибутов или показателей, таких как кластеры узлов, характерная длина пути, степень узла, средний коэффициент кластеризации, локальная эффективность, центральность PageRank. Это полезные числовые графы и сетевые функции, которые можно использовать вместе с другими атрибутами в качестве входных данных для традиционной модели машинного обучения. (см. это, это и то)
- «Интеллектуальный анализ графов» или «обнаружение знаний графов»: это общая тема, которая может означать различные виды анализа данных, методы и процедуры обучения и вывода по данным графов для извлечения полезной информации. Один из таких методов анализа графов называется «распространение меток» (аналогично предсказанию объектов), в котором мы начинаем с известных меток узлов, а затем используем структуру графа для выявления подозрительных соседних узлов, которые еще не обнаружены как аномалия. Еще одна ветка этой темы — поиск повторяющихся подграфов и полезных шаблонов.
- Кластеризация графа: поскольку плотные кластеры сильно коррелируют с аномальной активностью, мы можем использовать график «кластеризация плотности» для обнаружения аномалий. «Обнаружение сообщества» — это аналогичный метод, который используется для группировки графа в плотно связанные подмножества; другими словами, он используется для идентификации плотно связанных кластеров узлов.
- Оценка подобия графа: для данного графа «ранжирование сходства» — это проблема предсказания того, насколько похожи два узла в графе. Прогнозирование связи между двумя узлами на графе — это приложение. Точно так же обнаружение «сетевого сходства» определяет, насколько похожи две подсети (или подграфа).
Топология графа и атрибуты
Помимо явных узлов и ребер графа, которые мы представили ранее, транзакция также имеет другие числовые характеристики, полезные для обнаружения аномалий. В анализе графов такая информация также называется метаданными графа, вспомогательной информацией или атрибутами графа, которые отличаются от топологии графа или структуры. В целом, не каждый полезный атрибут графа демонстрирует явную связь с другими сущностями или с другими транзакциями. Например, сумма транзакции в долларах, метка транзакции и приобретенные товары или продукты (в которых каждый продукт имеет уникальный номер UPC или GTIN). Рассмотрим три простых варианта работы с такими атрибутами:
- Один из способов работы с этими атрибутами — при необходимости дискретизировать каждый из них, а затем рассматривать их как дополнительные узлы графа. Однако недостатком этого подхода является то, что он сделает структуру графа очень большой, сложной и дорогостоящей в вычислительном отношении. Например, обычно на сайте электронной коммерции продается огромное количество товаров или UPC, и хотя информация об отношении UPC к другим объектам на графе потенциально полезна, рассмотрение их как дополнительных узлов графа увеличивает общий размер графа. .
- Другой способ состоит в том, чтобы включить такие атрибуты, как функции узла, и применить представление и анализ полностью гетерогенного графа, в котором каждый узел имеет свои собственные атрибуты. Мы также можем использовать некоторые из этих атрибутов в качестве граничных функций.
- Третий способ заключается в использовании таких атрибутов в самом конце процесса обнаружения (например, при использовании GNN для целей классификации графов мы можем использовать эти атрибуты в качестве дополнительных входных данных для модели принятия решений, где окончательное решение принимается на основе особенности узла).
Встраивание графов, или «обучение представлению графов»
Графики содержат дискретную информацию (узлы и ребра), но большинство методов машинного обучения (ML), включая методы нейронных сетей (NN), работают или предпочитают входные данные с непрерывными значениями. Чтобы решить эту проблему и, что более важно, обеспечить подходящий способ распространения информации о взаимодействии по графу, используется «встраивание графа», которое относится к генерации непрерывного представления информации о графе в сочетании с атрибутами узла.
Начнем с пары терминов и предположений. Во-первых, «окрестность k-hop» или окрестность радиуса k узла — это набор соседних узлов на расстоянии, меньшем или равном k. Далее давайте определим подграф: подграф окрестностей радиуса k узла — это подграф, индуцированный окрестностями радиуса k узла и самим узлом. Основное допущение в графическом представлении состоит в том, что нет опорной точки и отсутствует порядок узлов.
При встраивании графа информация многомерного графа (структура, а также другие числовые характеристики, включая атрибуты узла) отображается в пространство более низкой размерности. Начнем с графа G = (V, E), где каждый узел множества V имеет некоторые характеристики, а E — множество ребер. По сути, мы сначала могли бы объединить все атрибуты или функции узла в большой числовой вектор, а затем использовать функцию отображения или преобразования (например, NN или GNN), чтобы найти скрытый вектор более низкой размерности для кодирования информации об узле и сети. Путем изучения представлений каждый узел отображается в K-мерный вектор вложения таким образом, что аналогичные узлы в графе находятся близко друг к другу в K-мерном пространстве вложения. . Для нахождения вектора вложения мы распространяем и агрегируем информацию по графу, где в конце вектор вложения для каждого узла содержит и кодирует его собственную информацию, а также сетевую информацию от всех его соседних узлов.
Методы встраивания графов можно разделить на несколько категорий, включая методы на основе матричной факторизации, обхода графа и случайного блуждания, а также методы на основе нейронных сетей. См. Perozzi, et al. (2014), а также обзоры Goyal and Ferrara (2017), Cai, et al. (2018), Mengjia Xu (2020) и Wu, et al. (2020).
Как только у нас есть числовой вектор признаков, назначенный каждому узлу, мы выполняем агрегацию или преобразование (например, усреднение), используя k-hop окрестности каждого узла, чтобы создать контекстное встраивание. Функция агрегирования работает с набором соседних узлов и должна быть инвариантной к перестановке (т. е. нечувствительной к порядку узлов).
Краткое содержание части 1
Использование встраивания графов и методов GNN для обнаружения аномалий, злоупотреблений и мошенничества позволяет нам извлекать и передавать ценные данные сети взаимодействия и графа в качестве входных данных для модели машинного обучения. Такие методы машинного обучения, использующие данные о соединении, могут помочь повысить эффективность обнаружения по сравнению с обычными методами. В этой статье мы рассмотрели, как данные сети электронной коммерции несут полезную информацию для выполнения задач по обнаружению аномалий. В Части 2 этого сообщения в блоге мы продолжим обсуждение, кратко представим несколько популярных методов встраивания графов и GNN, а также коснемся проблем, связанных с развертыванием таких методов в реальных задачах.
Я хотел бы поблагодарить Генри Чена, Прию Венкат и Джеймса Танга (из Walmart) за содержательные комментарии, которые помогли улучшить эту статью.