Mangaba JEPA Fraude (ULB): VICReg vs SIGReg (LeJEPA)

Encoders pré-treinados com JEPA em janelas de 32 transações do dataset ULB e cabeça de fine-tune supervisionado para detecção de fraude. Duas variantes, com o mesmo pipeline, mudando apenas o regularizador anti-colapso:

  • vicreg/: variância + covariância (VICReg), como no estudo de 29/10/2026.
  • sigreg/: SIGReg (LeJEPA), que testa se as projeções do embedding seguem uma gaussiana padrão.

Arquivos

  • encoder.pt: ctx (state dict do encoder), cfg (argumentos de treino) e meta.
  • fraud_best.pt: net (encoder + cabeça de fraude), cfg e meta.

Configuração

Item Valor
Encoder Transformer pré-norm, 4 camadas, dimensão 128, 4 cabeças
Preditor 2 camadas
Janela 32 transações consecutivas, positiva se tiver ao menos uma fraude
Pré-treino 2000 passos, lr 3e-4, máscara 40%, EMA inicial 0,996
Anti-colapso VICReg: var 1,0 e cov 0,04. SIGReg: peso 0,05, 256 projeções
Fine-tune 5 épocas, lr 1e-4 no encoder e 1e-3 na cabeça, BCE com peso de classe

Resultados (validação, época 5, uma semente)

Regularizador AP AUC recall@1%FPR
VICReg 0,801 0,913 0,779
SIGReg (LeJEPA) 0,806 0,913 0,779

A diferença de AP é 0,005. Com uma semente só, não é possível afirmar que um regularizador é melhor que o outro.

Limites

  • Uma semente por variante. Sem intervalo de confiança.
  • O fine-tune foi avaliado no conjunto de validação (--eval_split val). A época escolhida foi a última nas duas variantes, então a seleção não mudou o resultado, mas os números são otimistas.
  • O validação tem 68 positivos. Diferenças abaixo de cerca de 0,01 de AP não são confiáveis.
  • O ULB não tem identificador de cliente. As janelas misturam origens, então o modelo não representa o cenário de produção com sequências por cliente.
  • Não foi testado com dados reais de clientes.

Dados

Não redistribuímos o dataset. Use David-Egea/Creditcard-fraud-detection e respeite a licença original.

Uso

import torch
ck = torch.load("sigreg/fraud_best.pt", map_location="cpu", weights_only=False)
cfg, meta = ck["cfg"], ck["meta"]
# reconstruir o módulo com cfg["dim"], cfg["layers"], cfg["heads"] e carregar ck["net"]

O código de treino é privado. Para reprodução, consulte a Mangaba AI.

Mangaba AI · Estudo de novembro de 2026.

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Dataset used to train DHEIVER/jepa-sigreg-ulb