cosine_similarity
Installation
SKILL.md
cosine_similarity
La similitud coseno mide el ángulo entre dos vectores de embedding. Es la métrica estándar para comparar embeddings faciales porque es invariante a la escala (magnitud del vector).
When to use
Usar para comparar cualquier par de embeddings faciales en el face_match_agent.
Instructions
- Asegurarse que ambos embeddings están normalizados a norma unitaria (L2 norm = 1).
- Normalización:
embedding = embedding / np.linalg.norm(embedding). - Calcular similitud:
similarity = float(np.dot(embedding_1, embedding_2)). - Rango de valores: -1 (opuesto) a 1 (idéntico). Para caras diferentes: típicamente < 0.3.
- Mapear a porcentaje para UI:
score_pct = (similarity + 1) / 2 * 100. - Registrar el score raw y el score mapeado en el evento de auditoría.
- Si hay múltiples embeddings (varios frames de selfie), calcular la media de similitudes.
Notes
- Para distancia euclidiana:
distance = np.linalg.norm(e1 - e2). Usar solo si los modelos están calibrados para esta métrica. - NumPy
np.dotsobre vectores normalizados es equivalente asklearn.metrics.pairwise.cosine_similaritypero más rápido.
Related skills
More from davidcastagnetoa/skills
traefik
Reverse proxy moderno con autodiscovery nativo en Kubernetes y Let's Encrypt
62easyocr
OCR alternativo a PaddleOCR, excelente en caracteres especiales y múltiples scripts
32prisma-nestjs-patterns
>
26c4_model_structurizr
Diagramas de arquitectura C4 como código con Structurizr DSL, versionados en Git
23asyncpg
Cliente PostgreSQL async de alto rendimiento para el backend FastAPI del pipeline KYC
14insightface_arcface
Reconocimiento facial de estado del arte con ArcFace R100 para comparar selfie con foto del documento
14