1. El Problema Algorítmico
La positividad tóxica no es solo un fenómeno cultural: es un patrón de datos. Cada frase del tipo «¡tú puedes!», «las vibras negativas atraen cosas negativas» o «elige ser feliz» deja una huella semántica, emocional y conductual medible en las plataformas digitales que la distribuyen. Held (2002) describió la tiranía de la actitud positiva como un mandato cultural; dos décadas después, ese mandato tiene estructura algorítmica, se entrena con clics, se optimiza con engagement y se distribuye a escala masiva.
La pregunta técnica central de esta propuesta es: ¿cómo diseñar sistemas de Machine Learning capaces de distinguir entre psicología positiva legítima —que valida el dolor como parte del proceso— y positividad tóxica —que lo invalida y culpabiliza al sujeto que lo siente? Berrío Chavarría y Betancur Hincapié (2024) documentan que las métricas de aprobación refuerzan la represión emocional como norma de interacción. Esta propuesta convierte ese hallazgo en una agenda de ingeniería.
2. Arquitectura del Pipeline de Detección
Se propone un pipeline de cinco etapas que procesa contenido en tiempo real y en diferido, combinando análisis de texto, imagen, audio y comportamiento de red social. La arquitectura es modular: cada plataforma puede adoptar los módulos compatibles con su infraestructura sin necesidad de implementar el sistema completo.
INGESTA Y PREPROCESAMIENTO MULTIMODAL
Extracción de texto (captions, comentarios, transcripciones de audio/video), metadatos (hashtags, geolocalización, tipo de cuenta), señales visuales (paleta de color, presencia de emojis, tipografía aspiracional) y métricas de red (velocidad de difusión, perfil del difusor). Normalización lingüística multiidioma vía spaCy + langdetect.
EXTRACCIÓN DE CARACTERÍSTICAS SEMÁNTICAS
Embeddings contextuales con RoBERTa o XLM-RoBERTa (multilingüe) para capturar semántica pragmática. Análisis de función discursiva: ¿el mensaje valida o invalida una emoción? Detección de patrones de culpabilización (blame-shifting) con modelos de argumentación entrenados sobre corpus de counseling.
CLASIFICACIÓN: DETECTOR DE POSITIVIDAD TÓXICA
Modelo de clasificación binaria fine-tuneado sobre un corpus anotado de mensajes de positividad tóxica vs. psicología positiva legítima. Arquitectura: Transformer + cabeza de clasificación. Score de toxicidad positiva (0–1) con umbral ajustable. Complementado con Perspective API (Google/Jigsaw) para detección de invalidación emocional y lenguaje de culpabilización.
ANÁLISIS DE IMPACTO EN RED
Grafos de difusión con NetworkX + Neo4j para identificar nodos de alta influencia (cuentas que amplifican positividad tóxica a audiencias vulnerables). Segmentación por edad del receptor usando metadatos demográficos. Cálculo del Emotional Harm Propagation Score (EHPS): métrica propietaria que pondera el score de toxicidad por el alcance estimado y la vulnerabilidad del público objetivo.
CAPA DE INTERVENCIÓN GRADUADA
Cuatro niveles de respuesta según EHPS: (1) etiquetado informativo, (2) reducción de amplificación algorítmica, (3) adjunción de recurso de salud mental, (4) revisión humana para cuentas de alto impacto sostenido. El sistema nunca elimina contenido unilateralmente: prioriza la transparencia y el acceso a contexto.
3. APIs de Machine Learning por Plataforma
Cada plataforma presenta infraestructuras, capacidades de acceso a datos y bases de usuarios distintas. La siguiente tabla sistematiza las APIs y modelos recomendados para cada caso, priorizando herramientas disponibles y auditables:
| API / Herramienta | Función en el pipeline | Plataformas objetivo | Tipo |
|---|---|---|---|
| Perspective API | Detección de invalidación emocional, toxicidad relacional, lenguaje de culpabilización | Todas | Google / Jigsaw · Pública |
| OpenAI Moderation API | Clasificación de contenido dañino en categorías granulares; complemento para casos límite | Todas | OpenAI · Pública |
| HuggingFace Transformers (RoBERTa / XLM-RoBERTa) | Fine-tuning del clasificador de positividad tóxica; inferencia multilingüe en tiempo real | Todas | Open Source |
| Azure Text Analytics (Emotion Detection) | Análisis de emociones en comentarios y respuestas; detección de usuarios en angustia | Facebook, Instagram, YouTube | Microsoft Azure · API pública |
| AWS Comprehend | Análisis de sentimiento a escala masiva; extracción de frases clave de positividad tóxica | TikTok, X, YouTube | Amazon Web Services · API pública |
| Google Cloud Video Intelligence | Análisis de contenido visual en reels/videos: paleta aspiracional, texto en pantalla, expresiones faciales | TikTok, Instagram, YouTube | Google Cloud · API pública |
| Whisper (OpenAI) | Transcripción de audio en videos para análisis de texto de contenido hablado de positividad tóxica | TikTok, YouTube, Instagram Reels | Open Source |
| Meta Llama 3 (fine-tuned) | Clasificación contextual avanzada; generación de etiquetas explicativas para el usuario | Meta / Facebook / Instagram | Open Source (Meta) |
| NetworkX + Neo4j | Análisis de grafos de difusión; cálculo del EHPS; identificación de cuentas amplificadoras | Todas | Open Source |
4. Propuestas por Plataforma
📘 META / FACEBOOK
Integración con Graph API para análisis de páginas de «bienestar» y grupos de MLM. El clasificador analiza publicaciones, comentarios y anuncios pagados que usen lenguaje de culpabilización emocional.
- Etiquetado contextual en grupos de alto riesgo
- Auditoría semestral de páginas +100k seguidores con contenido de bienestar
- Reducción algorítmica de alcance para contenido con EHPS alto
🎵 TIKTOK
Pipeline multimodal: texto de caption + transcripción de audio (Whisper) + análisis visual (Cloud Video Intelligence). Detección de trending sounds asociados a narrativas tóxicas.
- Análisis en tiempo real de videos antes de distribución masiva
- Etiqueta «Perspectiva adicional disponible» con enlace a recurso validado
- Frenado algorítmico para videos con EHPS ≥ 0.75 dirigidos a menores
Análisis de hashtags sistémicamente asociados a positividad tóxica (#goodvibesonly, #noexcuses, #lawofattraction). Clasificador visual para estética «aspiracional toxica» en imágenes.
- Restricción de recomendación de cuentas con patrón tóxico sostenido
- Prompt de validación emocional al usuario que interactúa con contenido EHPS alto
- Verificación de credenciales para cuentas de «salud mental» con +50k seguidores
▶️ YOUTUBE
Transcripción automática de contenido de self-help, motivacional y wellness con Whisper + análisis NLP. Análisis de comentarios con Azure Text Analytics para detectar angustia en respuestas.
- Ficha informativa en videos de alta difusión con claims de salud mental no verificados
- Panel de creadores: reporte de impacto emocional estimado de su contenido
- Enlace automático a recursos de salud mental cuando el detector identifica angustia en comentarios
✕ X (TWITTER)
Análisis de stream en tiempo real de hilos virales con lenguaje de culpabilización emocional. Monitoreo de cuentas verificadas que difunden positividad tóxica con alto impacto.
- Etiqueta «Contexto adicional» en hilos virales con EHPS alto
- Herramienta de reporte específica para «contenido que invalida emociones»
- Informe mensual público de patrones de positividad tóxica detectados
Detección de «hustle culture» tóxico: mensajes que glorifican el agotamiento, culpabilizan el descanso o invisibilizan el sufrimiento laboral. Análisis de posts de CEOs y líderes de opinión con alto alcance.
- Clasificador específico para narrativas de hiperproductividad dañina
- Recurso de bienestar laboral integrado en feeds con contenido EHPS alto
- Reporte anónimo de entornos laborales promovidos como tóxicamente positivos
5. Implementación Técnica: Ejemplos de Código
// MÓDULO 1 — Clasificador de Positividad Tóxica (Python · HuggingFace)
# ─── Clasificador de Positividad Tóxica ─────────────────────── # Fine-tuning de RoBERTa para detección de invalidación emocional # Requiere: transformers, datasets, torch from transformers import AutoTokenizer, AutoModelForSequenceClassification from torch.nn.functional import softmax import torch # Etiquetas del corpus anotado: # 0 = psicología positiva legítima (valida emociones) # 1 = positividad tóxica (invalida / culpabiliza) MODEL_ID = "xlm-roberta-base" # Multilingüe (ES, EN, PT, FR...) tokenizer = AutoTokenizer.from_pretrained(MODEL_ID) model = AutoModelForSequenceClassification.from_pretrained( "./checkpoints/toxic_positivity_v2", # Fine-tuned num_labels=2 ) model.eval() def score_content(text: str) -> dict: """ Retorna: toxic_score (0–1): probabilidad de positividad tóxica label : 'TOXIC_POSITIVE' | 'LEGITIMATE_POSITIVE' confidence : confianza del modelo """ inputs = tokenizer(text, return_tensors="pt", truncation=True, max_length=256) with torch.no_grad(): logits = model(**inputs).logits probs = softmax(logits, dim=-1)[0] toxic_prob = probs[1].item() return { "toxic_score" : round(toxic_prob, 4), "label" : "TOXIC_POSITIVE" if toxic_prob >= 0.65 else "LEGITIMATE_POSITIVE", "confidence" : round(probs[int(toxic_prob >= 0.65)].item(), 4) } # ─── Ejemplos ──────────────────────────────────────────────── print(score_content("Está bien sentirse triste; tus emociones son válidas.")) # → {'toxic_score': 0.08, 'label': 'LEGITIMATE_POSITIVE', 'confidence': 0.92} print(score_content("¡Deja de quejarte! Las vibras negativas atraen fracaso.")) # → {'toxic_score': 0.94, 'label': 'TOXIC_POSITIVE', 'confidence': 0.94}
// MÓDULO 2 — Emotional Harm Propagation Score (EHPS)
# ─── Emotional Harm Propagation Score ──────────────────────── # Combina toxicidad del contenido + alcance + vulnerabilidad # del público para calcular el riesgo real de daño emocional from dataclasses import dataclass import math @dataclass class ContentMetrics: toxic_score : float # 0–1 (clasificador anterior) reach_estimate : int # usuarios únicos alcanzados minor_audience_pct: float # % audiencia <18 años (0–1) velocity : float # shares/hora (viralidad) account_credibility: float # 0–1 (verified, historia, credenciales) def compute_ehps(m: ContentMetrics) -> float: """ EHPS = toxic_score × log10(reach + 1) # escala logarítmica de alcance × (1 + minor_audience_pct) # amplificación por audiencia vulnerable × velocity_factor # urgencia de intervención × (1 - account_credibility) # descuento por credibilidad real Rango resultante: 0 (sin riesgo) → ∞ (intervención urgente) Umbral operativo recomendado: EHPS ≥ 3.5 → intervención automática """ velocity_factor = 1 + math.log1p(m.velocity / 10) ehps = ( m.toxic_score * math.log10(m.reach_estimate + 1) * (1 + m.minor_audience_pct) * velocity_factor * (1 - m.account_credibility) ) return round(ehps, 3) def intervention_level(ehps: float) -> str: if ehps < 1.0: return "NONE — Sin intervención" elif ehps < 2.0: return "LEVEL_1 — Etiqueta informativa" elif ehps < 3.5: return "LEVEL_2 — Reducción de alcance algorítmico" elif ehps < 5.0: return "LEVEL_3 — Recurso de salud mental adjunto" else : return "LEVEL_4 — Revisión humana urgente" # ─── Caso simulado: cuenta MLM, 800k seguidores, 40% menores ── metrics = ContentMetrics( toxic_score=0.91, reach_estimate=820_000, minor_audience_pct=0.40, velocity=3400, # shares/hora account_credibility=0.05 ) score = compute_ehps(metrics) print(f"EHPS: {score} → {intervention_level(score)}") # → EHPS: 7.842 → LEVEL_4 — Revisión humana urgente
// MÓDULO 3 — Integración con Perspective API (Invalidación Emocional)
# ─── Perspective API (Google/Jigsaw) ───────────────────────── # Detecta atributos de toxicidad relacional complementarios # Documentación: https://developers.perspectiveapi.com/ import requests, os PERSPECTIVE_KEY = os.environ["PERSPECTIVE_API_KEY"] ENDPOINT = "https://commentanalyzer.googleapis.com/v1alpha1/comments:analyze" def analyze_with_perspective(text: str, lang: str = "es") -> dict: """ Atributos relevantes para positividad tóxica: - TOXICITY : toxicidad general - INSULT : invalidación/menosprecio emocional - IDENTITY_ATTACK : culpabilización por identidad (ej. "los pobres no trabajan") - INFLAMMATORY : provocación emocional """ payload = { "comment": {"text": text}, "languages": [lang], "requestedAttributes": { "TOXICITY" : {}, "INSULT" : {}, "IDENTITY_ATTACK" : {}, "INFLAMMATORY" : {} } } r = requests.post( ENDPOINT, params={"key": PERSPECTIVE_KEY}, json=payload ) scores = r.json()["attributeScores"] return { attr: round(data["summaryScore"]["value"], 3) for attr, data in scores.items() } # ─── Ejemplo ────────────────────────────────────────────────── result = analyze_with_perspective( "Si no eres exitoso es porque no tienes suficiente mentalidad ganadora." ) print(result) # { # 'TOXICITY': 0.78, 'INSULT': 0.71, # 'IDENTITY_ATTACK': 0.65, 'INFLAMMATORY': 0.82 # }
// MÓDULO 4 — Pipeline Completo de Intervención
# ─── Pipeline Completo de Intervención ─────────────────────── # Orquesta todos los módulos y toma decisiones de intervención from toxic_positivity_classifier import score_content from ehps_calculator import compute_ehps, intervention_level, ContentMetrics from perspective_integration import analyze_with_perspective from platform_adapters import TikTokAdapter, MetaAdapter, YouTubeAdapter MENTAL_HEALTH_RESOURCES = { "es": "https://www.crisistext.org | Línea de Bienestar: 800-290-0024", "en": "https://www.crisistextline.org | Text HOME to 741741", "pt": "https://www.cvv.org.br | CVV: 188" } class ToxicPositivityPipeline: def __init__(self, platform: str): self.platform = platform self.adapter = { "tiktok" : TikTokAdapter, "meta" : MetaAdapter, "youtube" : YouTubeAdapter }[platform]() def process(self, content_id: str) -> dict: # 1. Extracción raw = self.adapter.fetch(content_id) text = raw["text"] + " " + raw.get("transcript", "") lang = raw.get("lang", "es") # 2. Scoring tp_result = score_content(text) pv_result = analyze_with_perspective(text, lang) # 3. Score combinado (promedio ponderado) combined_toxic = ( tp_result["toxic_score"] * 0.5 + pv_result["TOXICITY"] * 0.25 + pv_result["INSULT"] * 0.15 + pv_result["INFLAMMATORY"] * 0.10 ) # 4. EHPS metrics = ContentMetrics( toxic_score=combined_toxic, reach_estimate=raw["reach"], minor_audience_pct=raw["minor_pct"], velocity=raw["shares_per_hour"], account_credibility=raw["credibility_score"] ) ehps = compute_ehps(metrics) level = intervention_level(ehps) # 5. Intervención if ehps >= 5.0: self.adapter.flag_for_review(content_id, ehps) elif ehps >= 3.5: self.adapter.attach_resource( content_id, MENTAL_HEALTH_RESOURCES[lang]) elif ehps >= 2.0: self.adapter.reduce_reach(content_id, factor=0.4) elif ehps >= 1.0: self.adapter.add_label( content_id, "Este contenido puede no reflejar experiencias diversas") return {"content_id": content_id, "ehps": ehps, "level": level, "platform": self.platform}
6. Métricas de Evaluación del Sistema
La efectividad del sistema debe medirse con métricas tanto técnicas como de impacto en salud mental. Se proponen las siguientes para la evaluación semestral obligatoria de cada plataforma:
(objetivo ≥ 0.87)
falsos positivos
de inferencia
emocional propagado
autoreportado (encuesta)
contenido LEVEL 1–3
7. Consideraciones Éticas y Límites del Sistema
Un sistema de este tipo conlleva riesgos que deben gestionarse explícitamente. La primera consideración es la libertad de expresión: el sistema nunca elimina contenido de forma automática, sino que actúa sobre la amplificación algorítmica y añade contexto. La decisión de publicar permanece siempre en el creador. David y Congleton (2013) subrayan que la agilidad emocional requiere autonomía, y un sistema que censure contenido reproduciría la misma invalidación que busca combatir, aunque en sentido inverso.
La segunda consideración es el sesgo del clasificador: los modelos de lenguaje pueden aprender sesgos culturales que penalicen formas legítimas de resiliencia cultural. El corpus de entrenamiento debe incluir diversidad lingüística y cultural, y el sistema debe someterse a auditorías de sesgo racial, económico y lingüístico con periodicidad trimestral.
La tercera consideración es la transparencia: cualquier intervención debe ser visible para el creador de contenido, que debe recibir una explicación comprensible de por qué su publicación fue etiquetada o reducida en alcance, junto con la posibilidad de apelar la decisión ante un panel humano. Arroll (2023) argumenta que la opacidad en sí misma constituye una forma de microtrauma institucional.
8. Conclusión: Código con Responsabilidad Emocional
La positividad tóxica ha encontrado en las plataformas digitales su mayor aliado estructural. Held (2002) la describió como una tiranía cultural; veinte años después, esa tiranía tiene servidores, modelos de negocio y pipelines de recomendación. La propuesta presentada aquí no busca que los algoritmos sean árbitros de la felicidad, sino que dejen de serlo involuntariamente.
Ford et al. (2018) demostraron que aceptar las emociones negativas reduce la psicopatología de manera medible. Si las plataformas aplican ese principio a sus propios sistemas de distribución de contenido, el resultado no es censura: es arquitectura emocional responsable. Un algoritmo que aprende a no amplificar la culpabilización no restringe la expresión humana; la hace más honesta.
El código es política. Y esta propuesta es una política escrita en Python.
Referencias
- Arroll, M. (2023). Microtraumas: Cuando no sabes qué está mal, pero nada se siente bien. Aguilar.
- Berrío Chavarría, A. y Betancur Hincapié, S. (2024). Relación entre positividad tóxica y salud mental. Universidad de Antioquia.
- Byrne, R. (2006). El Secreto. Atria Books.
- Campbell-Sills, L., Barlow, D. H., Brown, T. A., y Hofmann, S. G. (2006). Effects of suppression and acceptance on emotional responses. Behaviour Research and Therapy, 44(9), 1251–1263.
- David, S., y Congleton, C. (2013). Emotional agility. Harvard Business Review, 91(11), 125–129.
- Ford, B. Q., Lam, P., John, O. P., y Mauss, I. B. (2018). The psychological health benefits of accepting negative emotions. Journal of Personality and Social Psychology, 115(6), 1075–1092.
- González, F. (2025). La toxicidad del pensamiento positivo según la ACT. Mente y Ciencia.
- Gorski, D. (2010). Elizabeth Edwards and Kim Tinkham: A tale of two victims of breast cancer. Respectful Insolence.
- Gross, J. J., y John, O. P. (2003). Individual differences in two emotion regulation processes. Journal of Personality and Social Psychology, 85(2), 348–362.
- Hayes, S. C., Strosahl, K. D., y Wilson, K. G. (2011). Acceptance and commitment therapy (2.ª ed.). Guilford Press.
- Held, B. S. (2002). The tyranny of the positive attitude in America. Journal of Clinical Psychology, 58(9), 965–991.
- Jigsaw / Google (2017–2025). Perspective API Documentation. https://developers.perspectiveapi.com/
- Lhoest, Q., et al. (2021). Datasets: A community library for natural language processing. arXiv:2109.02846.
- Pinazo Maquera, C. Z. y Guzmán Díaz, D. A. (2021). Vaivén: Propuesta comunicacional para discursos alternativos del éxito. XXII Coloquio PUCP.
- Ruiz Monterroso, E. M. (2022). Supresión emocional y síntomas somáticos. Colegio de Psicólogos de Guatemala.
- Sawhney, V. (2025). Cómo mitigar el impacto negativo de la positividad tóxica. Harvard Business Review. Editorial Reverté.





Deja un comentario