El motor neuronal
Una red pequeña entrenada solo con sus propios datos propone decisiones rutinarias con una probabilidad y un motivo. Las reglas son dueñas de las bandas de acción, las salvaguardas se aplican en código después de la red, y las faltas se quedan en modo asistencia para siempre.
Qué decide
Una única red multicabeza (un tronco ReLU con una cabeza sigmoide por decisión, unos dos mil parámetros, NumPy puro, pesos distribuidos como un único archivo versionado) responde cinco preguntas:
- Las características son líneas base de comportamiento: puntuaciones z frente al propio historial de 30 días de la persona, tardanza relativa a los compañeros, contexto de calendario. Los identificadores de empleado en bruto y las tasas históricas de anulación se excluyen deliberadamente para que el modelo no pueda aprender que a una persona concreta siempre se la perdona.
| flag_checkin | ¿querría un administrador que este check-in se marcara? |
|---|---|
| uphold_strike | ¿no revertiría un administrador esta falta? (nunca automatizado) |
| auto_approve_pto | ¿aprobaría un administrador esta solicitud de permiso? |
| nudge_effective | ¿producirá un aviso ahora un check-in en 30 minutos? |
| noshow_risk | ¿faltará esta persona por completo a su check-in hoy? |
Modos y bandas
Cada punto de decisión registra las características, la acción de la regla y, más tarde, el resultado. Ese registro es el conjunto de entrenamiento. El modo efectivo se fija globalmente y puede anularse por cabeza y por equipo.
- Banda automática: probabilidad de 0.85 o más (neural.auto_threshold). Banda de revisión: de 0.40 a 0.85 (neural.review_low). Por debajo, ninguna acción.
- Cualquier fallo en la ruta neuronal degrada a la propia decisión de la regla; nunca puede romper una ruta de envío del bot.
neural.mode neural.mode_auto_approve_pto neural.auto_threshold neural.review_low neural.max_actions_per_week neural.min_tenure_days
| off | solo registro; deciden las reglas |
|---|---|
| shadow | además guarda la probabilidad calibrada del modelo; no cambia nada |
| assist | las decisiones en la banda de revisión aparecen en una cola de administradores |
| auto | una decisión en la banda automática con todas las salvaguardas superadas se ejecuta, se registra y puede deshacerse |
Salvaguardas, aplicadas en código
Cada decisión automática se registra con su probabilidad y su motivo, se anuncia a los administradores como hecha en lugar de plantearse como pregunta, y es reversible. La aprobación o denegación de un administrador en el chat se convierte en la etiqueta de referencia de esa decisión.
- Las faltas nunca se emiten de forma autónoma; uphold_strike se limita a asistencia sea cual sea la configuración.
- No se actúa sobre nadie de la lista de exclusión de mensajes directos, sea cual sea la probabilidad.
- Como máximo cinco acciones automáticas por empleado y semana por defecto.
- Ninguna acción sobre quien tenga menos de 14 días de antigüedad; todavía no hay línea base.
- Si más de la mitad de los compañeros de una persona llegan tarde hoy, se suprimen todas las acciones relacionadas con la tardanza: eso es una avería, no una conducta indebida. Un único empleado tardío nunca cuenta como evidencia de sí mismo.
- La aprobación automática de permisos se limita a bajas y medios días, nunca concede permiso más allá del saldo, nunca toca una solicitud con fecha pasada y puede bloquearse mientras quien solicita tenga tareas abiertas (pto.require_handover). Las vacaciones siempre pasan por una persona.
- Una comprobación de salvaguarda que da error falla en cerrado.
Entrenamiento
- Los resultados se etiquetan solos cada hora: un aviso se etiqueta según si le siguió un check-in en 30 minutos; el riesgo de ausencia, según si el día terminó con un check-in; una falta es un positivo débil solo tras 72 horas sin reversión y con evidencia de que un administrador estuvo realmente activo.
- Dos veces al día (13:00 y 19:00 UTC) se rellena el historial, se entrena un candidato y se compara con el campeón. Los candidatos que nunca se promocionaron se retiran a los siete días; los archivos permanecen en disco para que siempre sea posible volver atrás.
- La arquitectura la elige el número de etiquetas, no la ambición: con menos de 300 filas se rechaza el entrenamiento; con menos de 1500 es regresión logística; con menos de 5000, una capa oculta; más allá, dos. Las particiones son temporales, nunca aleatorias.
- Un candidato mejor se promociona automáticamente solo mientras el modo siga siendo sombra; una vez que el modelo puede actuar, la promoción es un clic humano. Cada cambio se audita.
Monitor de deriva
Cada mañana a las 07:00 se ejecutan dos comprobaciones de salud. La deriva de características compara los últimos 14 días de vectores de características registrados con las estadísticas de entrenamiento del campeón; cualquier característica cuya media se haya movido más de media desviación estándar de entrenamiento se nombra en una alerta a los administradores. La vigilancia de bucles de retroalimentación se dispara cuando un empleado absorbe más del 40% de las decisiones positivas en 14 días, porque eso es un bucle formándose, no un mal empleado.
Señales sobre personas
La página Neural también incluye analítica de personas determinista y explicable sin ningún modelo: las etiquetas reales de rotación son demasiado escasas para que una probabilidad entrenada sea honesta. Cada puntuación es una suma ponderada de factores con evidencia, comparada con la propia línea base de la persona (los 14 días recientes frente a las 6 semanas anteriores), nunca con los compañeros.
- El riesgo de rotación (0 a 100: bajo, observación, elevado, alto) y un índice de lealtad (nuevo, en construcción, sólido, fuerte, excepcional; con menos de 90 días siempre se lee nuevo) llevan cada uno su lista de factores.
- El periodo de gracia tras un permiso y la detección de cambios de horario suprimen los falsos positivos clásicos; las puntuaciones sin confianza nunca alertan.
- Solo para administradores y orientativo: nada de esto actúa, escribe a un empleado, aparece en un informe de empleado ni toca la retribución. Las alertas van al centro de notificaciones de administración, deduplicadas a una por persona cada 14 días.
neural.drift_recent_days neural.drift_baseline_days neural.quitrisk_alert_band
| Caída o pico de horas | observación al 25%, alerta al 40% |
|---|---|
| Tardanza en aumento | observación a +20 puntos, alerta a +40 |
| Caída del progreso | observación al 25%, alerta al 50% |
| Respuesta más lenta | observación a 20 puntos, alerta a 35 |
| Eficiencia en descenso | pendiente de ocho semanas, observación a 1.5 por semana, alerta a 3 |
| Permiso largo programado | solo contexto, cero puntos de riesgo |
| Consumo acelerado de permisos | ocho o más días laborables en dos o más bloques en 60 días |