УДК 004.056

Особенности построения модели классификации транзакций для выявления мошеннических операций

Приходько Даниил Андреевич – студент магистратуры факультета Физики, математики и информатики Курского государственного университета.

Аннотация: В статье изучены особенности построения модели классификации транзакций для поиска и выявления мошеннических действий в сети. Актуальность обусловлена ростом числа финансовых манипуляций, что напрямую связано с увеличением количества киберугроз и потерь в мировой экономике. Выявление рисков позволяет всем участникам банковского процесса снизить уязвимость при совершении онлайн-операций.

Целью исследования является разработка инструмента решения задач обнаружения мошеннических транзакций сети криптовалюты Ethereum.

Методика исследования базируется на анализе теоретических положений, эмпирическая часть основана на разработке программы с использованием языка Python 3 и среды Jupyter Notebook.

В результате написания статьи были выделены преимущества использования системы эффективного обнаружения и классификации мошеннических транзакций в сети криптовалюты Ethereum на основе архитектуры MLPClassifier.

Ключевые слова: MLP, мошенничество, операция, банк, криптовалюта, угроза.

Введение

В настоящее время человечество вступило в эру глобализации и цифровизации, что привело к совершению безналичных платежей. Однако подобные транзакционные операции (далее ТО) имеют особую уязвимость к несанкционированному взлому, что часто приводит к получению доступа к счету третьими лицами и хищению финансовых ресурсов. Поэтому особую важность приобретает процесс соблюдения основ безопасности при совершении ТО [1, c. 532].

Актуальность

В последние годы число мошеннических действий (МД) с использованием криптовалюты возросло. Поэтому возникает острая необходимость регуляции оборота цифровых активов со стороны государства и банковских структур. Выявление новых алгоритмов для классификации ТО позволит усовершенствовать методы обнаружения финансовых махинаций.

Материалы и методы исследования

Основаны на проведении литературного обзора по проблеме. Эмпирическая часть базируется на разработке программы с использованием языка Python 3 и среды Jupyter Notebook.

Основные этапы работы системы:

Подготовка данных:

  • Данные для тренировки и тестирования подвергаются предварительной обработке и масштабированию с помощью StandardScaler.
  • Использование метода KFold для разделения данных на учебные и тестовые наборы в 10 итераций для оценки результатов на различных подвыборках.

Оценка результатов:

  • Использование матрицы несоответствий (Confusion Matrix) для каждого тестового набора для получения метрик, таких как точность, F1-мера, Kappa, Precision и Recall.
  • Определение средних значений метрик для оценки общей эффективности системы.

Вывод результатов:

  • Вывод результатов для каждой из 10 итераций, включая средние значения метрик.
  • Визуализация матрицы несоответствий для худших и лучших результатов.

Обзор литературы

Для того чтобы предотвратить несанкционированные действия при совершении ТО создаются специальные алгоритмы машинного обучения. Примером может являться антифорд-система, которая оснащена форд-мониторингом. Это позволило снизить количество МД в сети. Поэтому эта проблема сказывается на появлении дополнительных издержек у финансовых компаний, а платежные системы могут предъявлять им штрафные санкции. Для осуществления добросовестной работы всем участникам ТО необходимо внедрять модернизированные способы предотвращения транзакционных девиаций [2, c. 56].

В литературных положениях имеется множество упоминаний о несанкционированном взломе ТО. К примеру, обзор Клифтона Фуа и соавторов, которые изучали автоматизацию выявления и мониторинга данного процесса. В работе авторов описано преимущество логистической регрессии и байесовской сети, которые показывают их наиболее конкурентоспособные качества в деле анализа сети Ethereum [3].

Результаты исследования

В результате проведенного исследования система на базе MLPClassifier показала высокую точность и эффективность в выявлении МД в сети Ethereum.

Средние значения метрик свидетельствуют о хорошей воспроизводимости и стабильности результатов на различных тестовых наборах.

Визуализация матрицы корреляции позволяет быстро оценить взаимосвязь между числовыми переменными в вашем датасете. Цветовая шкала указывает на силу и направление корреляции. Это может помочь вам выявить взаимные зависимости и определить, какие переменные могут быть важными при разработке модели.

Этот код иллюстрирует использование библиотек numpy и seaborn для создания и визуализации матрицы корреляции в виде тепловой карты (листинг 1, рисунок 1).

corr = df.corr()

mask = np.zeros_like(corr)

mask[np.triu_indices_from(mask)]=True

with sns.axes_style('white'):

fig, ax = plt.subplots(figsize=(18,10))

sns.heatmap(corr, mask=mask, annot=False, cmap='CMRmap', center=0, linewidths=0.1, square=True)

Листинг 1. Созданий матрицы корреляции.

1

Рисунок 1. Тепловая карта по набору данных. [4]

Сравнение распределения классов до и после оверсемплинга:

  • non_fraud и fraud вычисляют количество безотказных и МД в исходном тренировочном наборе перед оверсемплингом.
  • no и yes определяют количество безотказных и МД в тренировочном наборе после оверсэмплинга.

Ожидается, что после оверсемплинга распределение классов будет сбалансированным, что улучшит эффективность модели при обучении на исправленном тренировочном наборе. В данном случае, мы ожидаем повышения количества МД в тренировочном наборе, на рисунке 2 (рисунок 2).

2

Рисунок 2. Полученные значения после примирения Oversample.

Ожидается, что этот код (листинг 1) будет обучать MLPC модель на нормализованных данных, используя K-Fold Cross-Validation, и сохранять метрики качества модели для каждого фолда. Также, выведет ConfusionMatrix для худшего и лучшего результата за все фолды. Это позволит оценить эффективность модели на разных частях учебного набора (листинг 1).

nn_params = {"hidden_layer_sizes": (100, 100), "solver": "adam"}

# x_tr_resample, y_tr_resample

nn_model = MLPClassifier(nn_params)

nn_model.fit(X, y)

kf = KFold(n_splits=10, random_state = 23, shuffle=True)

cm_metric_list = []

nn_cm_worst = None

nn_cm_best = None

nn_cm_list = []

for train_index, test_index in kf.split(X):

# X_train, X_test = X.iloc[train_index], X.iloc[test_index]

# y_train, y_test = y.iloc[train_index], y.iloc[test_index]

# scaler = StandardScaler().fit(X_train)

# X_train = scaler.transform(X_train)

# X_test = scaler.transform(X_test)

t_df = norm.fit_transform(X_test)

nn_model.fit(norm_df, y_train)

cm = ConfusionMatrix(actual_vector = y_test.values, predict_vector = nn_model.predict(t_df))

cm_metric_list.append({"Accuracy":cm.Overall_ACC, "F1": cm.F1[1], "Kappa": cm.Kappa, "Precision":cm.PPV[1]

, "Recall": cm.TPR[1]})

cm.relabel({1: "Fraud", 0:"Non-Fraud"})

nn_cm_list.append(cm)

if nn_cm_worst is None:

nn_cm_worst = cm

else:

if cm.Overall_ACC < nn_cm_worst.Overall_ACC:

nn_cm_worst = cm

if nn_cm_best is None:

nn_cm_best = cm

else:

if cm.Overall_ACC > nn_cm_best.Overall_ACC:

nn_cm_best = cm

Листинг 2. Реализация модели MLPC и запуск визуализации результатов классификации.

Определение худших и лучших результатов позволяет определить сценарии, в которых система может показать меньшую эффективность или высокую надежность (рисунок 3, 4).

3

Рисунок 3. Вывод результатов модели MLPC в худшем случае классификации.

4

Рисунок 4. Вывод результатов модели MLPC в худшем случае классификации.

Заключение

Таким образом, выбор MLP обоснован не только точностью, но и его способностью моделировать реальные паттерны и обобщать на новые данные. В данном контексте, где задача сложна и подвержена изменениям со временем, MLP представляет собой мощный инструмент для обнаружения МД в сети Ethereum.

Список литературы

  1. Кирина, А. В. Применение методов машинного обучения в целях выявления мошеннических транзакций / А. В. Кирина, Д. В. Домашова // Угрозы и риски финансовой безопасности в контексте цифровой трансформации : Материалы VII Международной научно-практической конференции Международного сетевого института в сфере ПОД/ФТ, Москва, 24 ноября 2021 года. – Москва: Национальный исследовательский ядерный университет "МИФИ", 2021. – С. 532-538. – EDN CACUNI.
  2. Радионова М.В., Корзухин А.А., Саушев Н.А. Математические методы оценки финансовых транзакций на предмет мошенничества // Вестник Пермского университета. Сер. «Экономика». 2021. Том 16. № 1. С. 54–66. doi: 10.17072/1994-9960-2021-1-54-66.
  3. Федеральное бюро расследований США. Виртуальная валюта биткойн: Unique Features Present Distinct Challenges for Deterring Illicit Activity. 2012. Available at: http://www.wired.com/images_blogs/threatlevel/2012/05/Bitcoin-FBI.pdf. Data obrashhenija 27.05.2022.
  4. Ethereum Fraud Detection Dataset. Kaggle: Your Machine Learning and Data Science Community. URL: https://www.kaggle.com/datasets/gescobero/ethereum-fraud-dataset (дата обращения: 13.09.2023).

Интересная статья? Поделись ей с другими: