Обнаружение мошенничества в машинном обучении: что вам нужно знать [2022]

Опубликовано: 2021-01-02

Еда, одежда, аксессуары или мебель. Все, что вы раньше покупали в магазинах на оживленных улицах, теперь можно купить в Интернете. Электронная коммерция — это многомиллиардная индустрия, и она только растет. Излишне говорить, что это тоже находится в руках криминального мира. Онлайн-преступники присутствуют во всех онлайн-секторах, которые вы можете назвать.

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

Некоторые виды интернет-мошенничества:

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

С помощью ИИ можно проанализировать различные особенности внешнего вида удостоверения личности, чтобы определить подлинность документа. Это позволяет компаниям устанавливать собственные критерии безопасности при выполнении запросов, требующих определенных документов, удостоверяющих личность.

    • Мошенничество с банковскими кредитами. Это может произойти, если человек свяжется с вами и предложит схему кредита с подозрительно выгодными условиями. Здесь человек, связывающийся с вами, попросит ваши банковские реквизиты или предоплату, не имея надлежащей информации о компании и даже не используя международный контактный номер. ИИ может легко справиться с такими мошенничествами, используя предыдущие записи о заявках на получение кредита, чтобы отфильтровать неплательщиков по кредиту.
  • Электронный фишинг. Это своего рода киберпреступность, когда пользователям рекламируются поддельные сайты и сообщения с просьбой поделиться личными данными. Если человек не слишком осторожен, он может ввести любые конфиденциальные данные, которые могут сделать его уязвимым для угроз. Лучший способ избежать этого мошенничества — это самому пользователю быть осторожным, однако ИИ может выполнять работу по обнаружению мошеннических электронных писем, фильтруя их с использованием базовых алгоритмов машинного обучения, таких как регрессия.
  • Мошенничество с кредитными картами. Это самый распространенный вид мошенничества с платежами. Это связано с тем, что все данные хранятся в Интернете, что облегчает доступ преступникам и хакерам. Карты, отправленные по почте, также могут быть легко перехвачены. Один из способов фильтрации таких мошеннических транзакций с помощью машинного обучения обсуждается ниже.
  • Кража личности. Машинное обучение для обнаружения кражи личных данных помогает проверять ценные документы, удостоверяющие личность, такие как паспорта, карты PAN или водительские права в режиме реального времени. Более того, биометрическая информация иногда может потребоваться для еще большего повышения безопасности. Эти методы безопасности требуют личной аутентификации, что в значительной степени снижает вероятность мошенничества.

Также читайте о: Зарплата инженера по машинному обучению в Индии

Модель для прогнозирования мошенничества с использованием данных кредитных карт

Здесь очень известный набор данных Kaggle используется для демонстрации того, как работает обнаружение мошенничества с использованием простой модели нейронной сети.

Импорт:

импортировать панд как pd

импортировать numpy как np

импортировать тензорный поток как tf

импортировать керас

из sklearn.preprocessing импортировать StandardScaler

из keras.models импорт последовательный

из keras.layers импорт плотный

из sklearn.model_selection импорта train_test_split

из sklearn.metrics импортаclassification_report _

Взгляните на набор данных здесь . Столбец « Сумма » нормализован, как и все другие функции, а столбец « Время » удален, поскольку он не имеет значения.

данные = pd.read_csv ( 'creditcard.csv' )

data [ 'Amount_norm' ] = StandardScaler () .fit_transform ( data [ 'Amount' ] .values.reshape ( -1 , 1 ))

data= data.drop ([ 'Сумма' ], ось= 1 )

данные = data.drop ([ 'Время' ], ось = 1 )

данные=данные [: -1 ]

данные.информация()

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

Нашей целью является столбец « Класс », который определяет, является ли конкретная транзакция по кредитной карте мошенничеством или нет. Таким образом, набор данных соответственно делится на обучающий и тестовый, сохраняя обычное соотношение разделения 80:20. ( random_state исправлено, чтобы помочь вам воспроизвести разделенные данные)

X = data.iloc [:, data.columns != 'Класс' ]

y = data.iloc [:, data.columns == 'Класс' ]

X_train , X_test , y_train , y_test = train_test_split ( X , y , test_size = 0.2 , random_state= 0 )

Мы используем последовательную модель из библиотеки keras для построения нейронной сети с тремя плотными слоями. Выходной слой содержит только один нейрон, который будет использовать сигмовидную функцию для получения положительного или отрицательного класса.

Затем модель компилируется с помощью оптимизатора adam , хотя настоятельно рекомендуется попробовать различные значения гиперпараметров самостоятельно, таких как количество единиц в каждом слое, активация, оптимизатор и т. д., чтобы увидеть, что лучше всего подходит для данного набор данных.

модель = последовательная ()

model.add ( плотный ( единиц = 16 , активация = 'relu' , input_dim = 29 ))

model.add ( плотный ( единицы = 16 , активация = 'relu' ))

model.add ( плотный ( единицы = 1 , активация = 'сигмоид' ))

модель. скомпилировать ( оптимизатор = 'adam' , loss = 'binary_crossentropy' , metrics = [ 'accuracy' ])

model.fit ( X_train , y_train , batch_size = 32 , эпохи = 15 )

Это результат после запуска модели в течение нескольких эпох.

Мы видим, что модель очень быстро дает точность 99,97%. Ниже y_pred содержит прогнозы, сделанные нашей моделью на тестовых данных, и показана четкая сводка ее производительности.

y_pred = model.predict ( X_test )

y_pred = ( y_pred > 0,5 )

печать ( классификационный_отчет ( y_test , y_pred ))

Читайте: Идеи проекта машинного обучения для начинающих

Заключение

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

Если вам интересно узнать больше о машинном обучении, ознакомьтесь с дипломом PG IIIT-B и upGrad в области машинного обучения и искусственного интеллекта, который предназначен для работающих профессионалов и предлагает более 450 часов тщательного обучения, более 30 тематических исследований и заданий, IIIT- Статус B Alumni, более 5 практических практических проектов и помощь в трудоустройстве в ведущих фирмах.

Возглавьте технологическую революцию, управляемую искусственным интеллектом

ДИПЛОМ PG В ОБЛАСТИ МАШИННОГО ОБУЧЕНИЯ И ИСКУССТВЕННОГО ИНТЕЛЛЕКТА
Узнать больше