Síntesis
Las fuentes presentan alta redundancia: una misma entidad aparece múltiples veces con variantes ortográficas del nombre, distinto orden de tokens y cobertura parcial de fotografía. El sistema ejecuta una resolución de entidades que consolida todos los registros en una ficha canónica por persona, con linaje completo y sin fusiones espurias entre identidades distintas.
01 · Visión general
Resumen ejecutivo
- 5 fuentes heterogéneas aportaron 227.964 reportes crudos.
- La redundancia inter-fuente es elevada: una misma entidad se repite con variantes de nombre, permutación del orden de tokens y cobertura parcial de foto.
- El proceso de record linkage resuelve los registros en 79.359 identidades únicas — una reducción del −62,5 %.
- Opera en dos capas de evidencia complementarias: (1) matching por atributos determinístico y probabilístico (cédula, hash de imagen, teléfono+apellido, nombre con corroboración) y (2) verificación biométrica por embeddings faciales.
- Esquema no destructivo: cada registro de origen se conserva inmutable y toda fusión es reversible vía linaje (provenance).
- Las coincidencias de baja confianza se derivan a arbitraje humano antes de fusionar.
02 · Datos
Snapshot de los datos
La ingesta está activa sobre cinco fuentes independientes. Cada reporte se persiste sin transformación en una capa cruda inmutable (source_record); el pipeline de unificación opera sobre proyecciones normalizadas, nunca sobre el dato original.
De dónde vienen (las 5 fuentes)
| Fuente | Qué es | Reportes |
|---|---|---|
| reconexion | App/API de Reconexión (producción) | 79.290 |
| mapa-app | Base del «mapa» de desaparecidos | 78.470 |
| desaparecidos-tv | Listado de desaparecidos-tv | 41.944 |
| azure | API «Venezuela Dedupe Review» (Azure) | 28.250 |
| partner-demo | Prueba de la API de aliados | 10 |
| TOTAL | 227.964 |
Estado actual
227.964
Reportes crudos
211.545
Normalizados
reportes → personas
79.359
Personas únicas
−62,5 % por dedup
61.905
Buscadas
17.454
Encontradas
61.104
Rostros analizados
creciendo
46.598
Fichas con foto
publicables, creciendo
32.761
Fichas sin foto
solo datos
33
Grupo más grande
reportes de una misma persona
Síntesis
Tasa de unicidad ≈ 1/3: por cada ~3 reportes ingresados, ~1 corresponde a una entidad nueva y ~2 son co-referencias que se consolidan. Más de la mitad del universo ya tiene embedding facial asociado.
03 · Tecnología
Snapshot de la tecnología
La arquitectura combina componentes estándar de la industria, cada uno especializado: almacenamiento relacional para el modelo de identidades, un índice vectorial para búsqueda de vecinos más cercanos (ANN) sobre embeddings faciales, y los modelos de visión por computadora para detección y reconocimiento.
| Pieza | Para qué sirve | Tecnología |
|---|---|---|
| Base de datos | Guarda y ordena reportes y personas únicas | PostgreSQL 17 |
| Buscador de caras | Compara una cara contra millones en milisegundos | Qdrant (vectorial, 512-d, coseno) |
| IA de rostros | Detecta y reconoce caras en las fotos | InsightFace · buffalo_l |
| API / servicios | Conecta todo y expone consultas seguras | FastAPI (Python) |
| Servidor | Donde corre todo | Linux Debian 13, multinúcleo |
| Tablero en vivo | Ver avance y verificar a mano | Dashboard web propio |
Detalle técnico
Modelo de 3 capas en PostgreSQL: source_record (crudo inmutable) → persona (normalizada con claves fonéticas metaphone/soundex, teléfono E.164 y hash de imagen) → canonical_identity (golden record con public_uid estable). Búsqueda facial sobre Qdrant (colección de 512-d, distancia coseno). Indexado facial multiproceso fijando 1 hilo de ONNX por núcleo. Idempotencia por (fuente, id) y hash de dataset. Nada se borra; uniones reversibles vía procedencia.
04 · Proceso A
Deduplicación, fase a fase
Principio rector: la fusión exige evidencia suficiente y se aplica en orden decreciente de fiabilidad de la señal. El criterio es conservador —se prioriza precisión sobre recall—: ante ambigüedad no se fusiona, porque un falso positivo colapsa dos identidades distintas y elimina de facto a una persona del registro, el error de mayor costo en este dominio.
Fase 1 — Recepción y resguardo
Cada reporte se persiste sin alteración en la capa cruda (
source_record). Constituye la base de auditoría y la condición que hace toda fusión reversible.Fase 2 — Normalización
Cada registro se proyecta a una forma canónica comparable: case folding y eliminación de diacríticos, segmentación de nombre/apellido, normalización telefónica a E.164 y derivación de claves fonéticas (Double Metaphone/Soundex) que colapsan variantes homófonas. Ej.: «José» y «jose» convergen a la misma clave de bloqueo.
Fase 3 — Matching determinístico (automático)
Se fusionan registros que coinciden en un identificador específico y de alta fiabilidad:
- Cédula idéntica.
- Hash de imagen idéntico (mismo archivo, aunque resida en otro host/CDN).
- Teléfono + apellido (el apellido evita colisiones entre familiares que comparten un mismo número de contacto).
Fase 4 — Matching por nombre con corroboración
Ante coincidencia de nombre con orden de tokens permutado («Pérez Juan» ≈ «Juan Pérez»), la fusión requiere al menos un atributo corroborante —misma zona o edad dentro de ±5 años— y se veta si el sexo difiere. Regla auditada con panel multi-revisor: precisión ≥ 99 %.
Fase 5 — Arbitraje humano
Los casos ambiguos (nombres frecuentes en zonas densas) no se fusionan de forma automática: se aíslan para revisión. La decisión humana es soberana y persiste sobre cualquier reprocesamiento posterior.
Fase 6 — Survivorship (golden record)
Al consolidar un clúster se construye una única ficha seleccionando, por atributo, el mejor valor disponible (estrategia tipo MDM): nombre más completo, foto de mayor calidad, cédula, ubicación y estado (buscado/encontrado).
Lo que NO hacemos
No se fusiona por nombre aislado (homónimos) ni por identificadores de baja entropía (p. ej. teléfonos placeholder como +0000000 compartidos por cientos de registros). Esas señales generan clústeres degenerados («súper-grupos») que mezclan identidades distintas.
05 · Proceso B
Reconocimiento facial, fase a fase
Principio: cuando dos registros disponen de foto, la verificación biométrica compara los rostros para confirmar co-referencia de identidad, incluso ante divergencia textual o datos faltantes. Es la capa de evidencia complementaria al record linkage.
Cadena de 3 modelos (InsightFace buffalo_l)
| # | Modelo | Qué hace |
|---|---|---|
| 1 | Detección (SCRFD / det_10g) | Localiza cada rostro y su bounding box. Soporta múltiples caras por imagen. |
| 2 | Alineación (2d106det, 106 landmarks) | Normaliza la pose mediante 106 puntos faciales, garantizando una representación invariante a la orientación. |
| 3 | Reconocimiento (ArcFace / w600k_r50) | Genera el embedding facial (vector de 512 dimensiones). La proximidad entre embeddings indica co-referencia. |
Pipeline de inferencia
- Adquisición de la imagen desde los servidores/CDN públicos.
- Modelo 1 (detección): localiza cada rostro y su bounding box.
- Modelo 2 (alineación): normaliza la pose mediante 106 landmarks.
- Modelo 3 (reconocimiento): genera el embedding (vector de 512-d).
- El embedding se indexa en el motor vectorial (Qdrant).
- Se consulta por similitud coseno contra el corpus (búsqueda ANN), obteniendo un score en [0, 1].
Umbral de decisión
| Similitud | Decisión |
|---|---|
| ≥ 65 % | Misma persona — alta confianza, se fusiona |
| 51 – 65 % | Misma persona — confianza media, se fusiona |
| 45 – 51 % | Borde — no se fusiona, va a revisión humana |
| < 45 % | No es la misma cara — descartada |
El umbral operativo de fusión es 51 % de similitud coseno, alineado con el del bot de verificación. En el survivorship, la ficha conserva el rostro de mayor calidad (resolución/nitidez) entre las coincidencias.
Margen de error
El reconocimiento facial tiene alta exactitud pero no es infalible. Principales fuentes de error: alta similitud inter-clase entre parientes (fotos grupales/familiares); degradación de la señal (baja resolución, oclusión por lentes/gorra/mascarilla, baja iluminación); deriva morfológica en menores (el rostro cambia rápido entre tomas); gemelos; y singletons (una sola foto, sin par para corroborar).
Mitigaciones: (1) umbral conservador (51 %); (2) banda de incertidumbre (45–51 %) excluida de la fusión automática; (3) arbitraje humano en el tablero con overlay de bounding box (verde = match, amarillo = no-match); (4) reversibilidad total. El facial acelera y corrobora; la decisión final en casos límite es humana.
06 · Estado
Resultados y trabajo en curso
Ya consolidado — deduplicación por datos (completo)
- 79.359 identidades únicas resueltas a partir de 227.964 reportes (−62,5 %).
- 0 duplicados residuales verificables por las señales deterministas (hash de imagen, cédula, teléfono+apellido).
- Sin clústeres degenerados: la cardinalidad máxima de un clúster es 33 registros de una misma persona.
- Precisión del matching por nombre, auditada con panel multi-revisor: ≥ 99 %.
En proceso — reconocimiento facial (en curso)
- 61.104 embeddings faciales computados · 46.598 fichas con foto publicable y creciendo.
- Recuperación de 43.201 imágenes inicialmente inaccesibles (alojadas en un host privado bloqueado; localizadas en un mirror público) — actualmente en cola de extracción de embeddings.
- Etapa final: una pasada de fusión por similitud facial resolverá los casos que la evidencia textual no pudo confirmar (mismo rostro, atributos divergentes).
Seguimiento en vivo
El progreso es observable en el tablero: throughput, avance por etapa y la verificación facial caso por caso.
07 · Ética
Garantías y privacidad
- No destructivo. Cada registro de origen se conserva inmutable; las fusiones son reversibles vía linaje.
- Conservador ante el error. La fusión exige evidencia; los casos de baja confianza pasan por arbitraje humano.
- Minimización de datos. No se exponen teléfonos ni datos de contacto; el uso es estrictamente asistivo de reunificación.
- Idempotencia. El reprocesamiento de una fuente no genera duplicados (clave natural
(fuente, id)+ hash de dataset).
Consulta también la Política de privacidad y los Términos y condiciones.
08 · Referencia
Glosario
- Record linkage / resolución de entidades
- Proceso de identificar y consolidar registros que refieren a la misma persona real.
- Matching determinístico / probabilístico
- Determinístico: fusión por igualdad exacta de un identificador fiable. Probabilístico: fusión por similitud con atributos corroborantes.
- Identidad canónica (golden record)
- Registro consolidado que agrega todos los reportes de una persona bajo un
public_uidestable. - Embedding facial
- Vector de 512 dimensiones que codifica un rostro; la cercanía en distancia coseno indica co-referencia.
- Umbral 51 %
- Punto de corte de similitud coseno a partir del cual se acepta la co-referencia facial.
- Survivorship
- Reglas de selección del mejor valor por atributo al construir el golden record (estilo MDM).
- Idempotencia
- Propiedad por la cual reprocesar una misma fuente no produce registros duplicados.
- Margen de error
- Casos límite del reconocimiento facial (alta similitud inter-clase, degradación de señal, menores, gemelos, singletons).
Documento generado a partir del estado real de la base terremoto. Las cifras de reconocimiento facial aumentan mientras el proceso continúa.