Журнал "Information Security/ Информационная безопасность" #5, 2019

Вслед за успехом Embed- ding-подхода в NLP-задачах он стал применяться и в других областях, напри- мер в рекомендательных системах, где продукты также представлялись в виде векторов через схо- жие подходы. векторами двух слов можно определить близость их значе- ний. Под близостью в этом слу- чае следует понимать сочетае- мость слов. Кроме того, полу- ченное векторное представле- ние может улавливать некото- рые семантические свойства слов. Пример из работы автора word2vec показан на рис. 1. Если из вектора слова "жен- щина" вычесть вектор слова "мужчина", а затем к слову "король" добавить этот вектор разности (Female на рис. 2), то получим вектор, очень близкий к слову "королева". Также если из вектора слова "королева" вычесть вектор "женщина", а затем разность (Royal на рис. 2) вычесть из слова "король", то получим вектор близкий к слову "мужчина". Есть также синтаксические связи – соотношения множе- ственного и единственного чисел. Вслед за успехом Embedding- подхода в NLP-задачах он стал применяться и в других обла- стях, например в рекоменда- тельных системах, где продукты также представлялись в виде векторов через схожие подхо- ды. Еще одна область активного применения Embedding – коди- рование категориальных при- знаков большой размерности. Задача противодействия мошенничеству В существенной доле мошен- нических кейсов в качестве канала вывода средств исполь- зуются банковские карты. Для эффективного противодействия таким кейсам фрода важно уметь определять "близость" клиента-отправителя и получа- теля (вероятность возникнове- ния/типичность транзакций между такими клиентами). Кли- ент-отправитель в нашей задаче – это всегда клиент Сбербанка, клиент-получатель – это или клиент Сбербанка, если пере- вод осуществляется на карту Сбербанка, или же реквизиты карты стороннего банка. В последнем случае мы все равно будем отождествлять эту карту с некоторым неизвестным нам клиентом-получателем. При разработке модели Entity Embedding (в нашем случае client2vec) мы ставили целью, чтобы итоговое векторное про- странство в качестве "близости" как минимум уловило относи- тельное геолокационное распо- ложение клиентов, а как мак- симум – схожесть поведенче- ских паттернов. Полученные векторные описания и расстоя- ние между ними будут исполь- зоваться в качестве дополни- тельных признаков в суще- ствующих моделях противодей- ствия мошенничеству. Может показаться, что вместо Entity Embedding можно ограни- читься определением прибли- зительных геокоординат отпра- вителя и получателя и исполь- зовать это расстояние в каче- стве признаков модели. Но этот подход сопряжен с рядом недо- статков: l если для клиентов Сбербанка еще можно определить геокоор- динаты за счет использования собственных банкоматов, то для карт сторонних банков такая информация будет крайне неполной; l очень разная плотность насе- ления по стране и, как след- ствие, "нормальное" для Сибири расстояние между разными кли- ентами будет скорее аномаль- ным для европейской части страны, особенно в крупнейших городах. Кроме того, мы не получим векторного представления кли- ентов, которое также может нести дополнительную инфор- мацию, полезную для моделей ФМ. Как мы увидим дальше, пред- ложенный подход к созданию модели позволяет решить поставленную задачу без использования геолокационных данных и обойти указанные ограничения. Использованный подход для создания векторных представлений клиентов За основу была взята модель Continuous Bag of Words (CBOW), которая выступает одним из алгоритмов реализа- ции word2vec и широко приме- няется в NLP-задачах. Суть алгоритма заключается в том, что мы по контексту слова пытаемся его предсказать (рис. 3). Например, для фразы "кошка высоко забралась на дерево" возьмем слово "забра- лась". Это будет наше слово w (t), тогда w (t - 2) = кошка, w (t - 1) = забралась, w (t + 1) = на, w (t + 2) = дерево. Модель учит- ся предсказывать слово w (t) по его контексту, а результат рабо- ты модели – "сжатые" вектор- ные представления слов (тот самый Embedding). С математической точки зре- ния это реализуется через ней- ронную сеть с одним скрытым и выходным слоем. Для обуче- ния модели все слова пред- ставляются в виде 1-Hot-Enco- ding (Input на рис. 4). 1-Hot- Encoding – вектор размерности, равной числу уникальных слов, где все координаты равны 0, кроме одной позиции, равной индексу этого слова в словаре. На этой позиции координата равна 1. При обучении модели весо- вые коэффициенты внутреннего • 31 ТЕХНОЛОГИИ www.itsec.ru Рис. 1. Как работает word2vec 1 Рис. 2. Как работает word2vec 2 Рис. 3. Общая идея подхода Continuous Bag of Words (CBOW) 1 https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/rvecs.pdf 2 http://arxiv.org/abs/1810.04882

RkJQdWJsaXNoZXIy Mzk4NzYw