Detectando anomalias em e-commerce: como o algoritmo Isolation Tree pode proteger sua empresa

Iago Modesto Brandão
3 min readApr 20, 2023

--

English version available here

Introdução

No ambiente de e-commerce, é crucial identificar possíveis comportamentos anômalos dos clientes, pois eles podem indicar um ataque malicioso. Esses comportamentos podem incluir compras em excesso, tentativas de login com senhas incorretas ou mesmo tentativas de fraudes financeiras. Se não forem tratados, esses comportamentos anômalos podem causar danos significativos à empresa, incluindo perda financeira e danos à reputação da marca.

Uma solução para identificar e tratar esses comportamentos anômalos é usar o algoritmo de Isolation Tree. Este algoritmo é baseado na criação de árvores de decisão que dividem o conjunto de dados em subconjuntos menores, identificando assim possíveis outliers, ou seja, dados que fogem do padrão normal de comportamento. Esse algoritmo é particularmente útil para identificar possíveis fraudes em cartões de crédito ou contas de usuários.

Código — Mãos à obra

Um exemplo de código usando o algoritmo Isolation Tree pode ser o seguinte:

from sklearn.ensemble import IsolationForest

hist_observations = [[700.1], [450], [100], [200], [140], [250], [200], [320]]
new_observations = [[0.1], [0], [90],[195], [800],[122]]

clf = (
IsolationForest(random_state=10,
contamination = 'auto')
.fit(hist_observations)
)

clf.predict(new_observations)

Este código cria um modelo de Isolation Tree em Python. Inserimos uma um conjunto de dados de observações históricas (hist_observations) e um conjunto de novas observações (new_observations), ajusta o modelo aos dados históricos e prevê anomalias nas novas observações. O modelo Isolation Tree retorna -1 para os dados que são considerados anômalos e 1 para os dados normais.

Note que, para prevenir ataques em tempo real, as novas observações poderiam ser recebidas também em tempo real!

Executando o código, teremos o resultado abaixo, indicando que todos os novos registros são anômalos, ou seja, muito diferentes do observados historicamente, exceto o valor 195 .

# Entrada [[0.1], [0], [90],[195], [800],[122]]

# Saída do clf.predict(new_observations)
array([-1, -1, -1, 1, -1, -1])

Considerações finais

O modelo Isolation Tree é uma ferramenta muito útil para identificar os primeiros e principais comportamentos anômalos em ambientes de negócios online, mas vale lembrar que ele deve ser usado em conjunto com outras soluções de segurança, já que o algoritmo pode não detectar 100% de todos os tipos de fraudes e atividades maliciosas.

Em conclusão, identificar e tratar comportamentos anômalos é fundamental em um ambiente de e-commerce para evitar danos financeiros e à reputação da empresa. O uso do algoritmo Isolation Tree é uma solução viável para esse problema, permitindo que as empresas identifiquem possíveis fraudes e protejam seus negócios contra comportamentos mal intencionados.

Crie conexões:

Gostou do conteúdo? Vamos tomar um café, me adicione no LinkedIn para trocarmos ideias e compartilharmos conhecimentos!

https://www.linkedin.com/in/iagombrandao

Referências

Liu, F., Xie, X., & Zhou, L. (2019). Anomaly Detection for E-commerce Platform Based on Improved Isolation Forest Algorithm

Chen, X., Luo, C., & Wang, H. (2021). Anomaly detection for e-commerce user behavior based on improved Isolation Forest algorithm

--

--

Iago Modesto Brandão

Passionate by tech and all possibilities, come with us to learn more and develop the next step of the world?