Artigos
Prova de Conceito · Machine Learning

Classificação de Notas Bancárias com Machine Learning

Implementação de algoritmos K-Vizinhos Mais Próximos e Naive Bayes do zero, sem bibliotecas prontas, para autenticação de cédulas bancárias por Transformada Wavelet.

100%
Acurácia K-NN
Euclidiana & Chebyshev
98,54%
Acurácia NB
Naive Bayes Multivariado
140×
Mais rápido
NB vs K-NN em tempo de teste
1.372
Amostras
762 autênticas · 610 falsas

O Projeto

Objetivo

Implementar algoritmos de classificação supervisionada do zero, sem utilizar bibliotecas prontas como scikit-learn ou pandas, para resolver o problema de autenticação de notas bancárias. O desafio foi demonstrar compreensão profunda dos algoritmos através da implementação manual de cada detalhe matemático e computacional.

Dataset

  • Fonte: UCI Machine Learning Repository · Banknote Authentication . O conjunto é limpo, balanceado e adequado para comparação didática entre famílias clássicas de classificação.
  • Amostras: 1.372 notas bancárias digitalizadas
  • Distribuição: 762 autênticas, 610 falsas
  • Features: 4 coeficientes da Transformada Wavelet (Variância, Assimetria, Curtose, Entropia)

Algoritmos Implementados

K-Vizinhos Mais Próximos (K-NN)

Algoritmo baseado em instâncias que classifica novos exemplos com base na classe majoritária entre seus K vizinhos mais próximos no espaço de features.

  • • Distância Euclidiana → 100% acurácia
  • • Distância Manhattan → 99,93% acurácia
  • • Distância Chebyshev → 100% acurácia

Naive Bayes

Classificador probabilístico baseado no Teorema de Bayes, assumindo independência condicional entre features — premissa relaxada na variante multivariada com matriz de covariância.

  • • Univariado (independência total) → 83,97% acurácia
  • • Multivariado com Σ covariância → 98,54% acurácia

Resultados Detalhados

K-NN (Euclidiana) 100.00%
Precisão
100.00%
F1-Score
100.00%
Tempo (s)
0.2247
K-NN (Manhattan) 99.93%
Precisão
99.84%
F1-Score
99.93%
Tempo (s)
0.1670
K-NN (Chebyshev) 100.00%
Precisão
100.00%
F1-Score
100.00%
Tempo (s)
0.1846
Naive Bayes Univariado 83.97%
Precisão
78.90%
F1-Score
82.93%
Tempo (s)
0.0009
Naive Bayes Multivariado 98.54%
Precisão
98.20%
F1-Score
98.43%
Tempo (s)
0.0016

Acurácia — Comparativo Visual

K-NN (Euclidiana) 100.00%
K-NN (Manhattan) 99.93%
K-NN (Chebyshev) 100.00%
Naive Bayes Univariado 83.97%
Naive Bayes Multivariado 98.54%

Leitura imediata

O experimento mostra dois tipos de vitória: a vitória da precisão absoluta e a vitória do custo operacional sustentável.

100%
Máxima precisão
K-NN ainda faz sentido quando volume é baixo e erro custa muito caro — duas métricas de distância no topo.
140×
Velocidade de produção
Naive Bayes Multivariado: 98,54% de acurácia com tempo 140 vezes menor. Para escala, a escolha é clara.

Principais Descobertas

01

Importância das Features

A Transformada Wavelet foi crucial para extrair padrões discriminativos. Dados de qualidade definem o teto de performance — nenhum algoritmo compensa features ruins.

02

Trade-off Clássico

Precisão máxima (K-NN 100%) vs. Eficiência (Naive Bayes 140× mais rápido). A escolha depende do contexto — volume de dados, custo do erro e latência aceitável.

03

Correlações Importam

Naive Bayes Multivariado (98,54%) supera Univariado (83,97%) em 14 pontos percentuais ao capturar correlações entre features com a matriz de covariância completa.

Da Classificação de Notas aos Meta Prompts Modernos

O Princípio Universal: Medição é Essencial

Assim como alcançamos 100% de acurácia através de validação cruzada rigorosa, a engenharia de prompts modernos deve ser baseada em dados. Muitos desenvolvedores focam apenas em "criar" prompts complexos, esquecendo de medir sua precisão em cenários variados. Isso gera overfitting: o prompt funciona para um caso, mas falha em produção.

Framework para Medir Precisão de Meta Prompts

  1. 01 Definir Métricas: Acurácia factual, adesão a formatos, ausência de alucinações.
  2. 02 Criar Dataset de Teste: Casos comuns (80%), edge cases (15%), exemplos adversariais (5%).
  3. 03 Avaliação Sistemática: Automação de testes, LLM-as-a-Judge, cálculo de precisão/recall.
  4. 04 Iteração Baseada em Dados: Ajuste apenas onde as métricas indicam falha.

Meta Prompts vs. Fine-tuning: ROI

Meta prompts oferecem melhor ROI inicial para prototipagem rápida. No entanto, para tarefas críticas, específicas e de alto volume (como a classificação de notas), o fine-tuning ou modelos clássicos (K-NN, Naive Bayes) vencem a longo prazo devido à precisão, eficiência e controle.

A lição: transformar a engenharia de prompts de uma "arte baseada em intuição" para uma "ciência baseada em dados".

Recursos Disponíveis

Acesse todos os materiais produzidos nesta pesquisa.

Apresentação Completa

20 slides com toda a análise, resultados e conexões com meta prompts modernos.

Visualizar

Código-Fonte

Implementação completa dos 5 algoritmos em Python puro, sem bibliotecas prontas.

Acessar

Relatório Técnico

Documentação detalhada com fundamentação teórica e análise crítica dos resultados.

Baixar
Todos os artigos Próximo