Sensibilidad

Cómo medir el impacto de cada variable en una función o modelo

La sensibilidad describe cuánto cambia la salida de una función cuando cambia una entrada. Es una forma de cuantificar la influencia de cada variable en un sistema.

👉 En machine learning, la sensibilidad permite entender qué variables importan más y cómo afectan al modelo.

Definición corta

La sensibilidad mide cuánto cambia la salida de una función respecto a cambios en sus entradas.

Definición detallada

Para una función f(x)f(x)f(x), la sensibilidad respecto a xxx es:dfdx\frac{df}{dx}

Para funciones multivariables:fxi\frac{\partial f}{\partial x_i}

👉 Es directamente una derivada (o derivada parcial).

Intuición

La sensibilidad responde:

👉 “Si cambio esta variable, ¿cuánto cambia el resultado?”


Entrada cambia ligeramente  

Salida cambia

Sensibilidad mide ese cambio

Interpretación geométrica

  • alta sensibilidad → pendiente grande
  • baja sensibilidad → pendiente pequeña

👉 Está relacionada con la inclinación de la función.

Ejemplo simple

f(x)=x2f(x) = x^2

f(x)=2xf'(x) = 2x

👉 En x=10x = 10x=10: sensibilidad = 20 (alta)
👉 En x=1x = 1x=1: sensibilidad = 2 (baja)


🔄 Relación con otros conceptos

  • Derivada
  • Derivada parcial
  • Gradiente
  • Jacobiano

🧠 Sensibilidad en múltiples variables

f(x,y)=x2+y2f(x, y) = x^2 + y^2

fx=2xfy=2y\frac{\partial f}{\partial x} = 2x \quad \frac{\partial f}{\partial y} = 2y


👉 Cada variable tiene su propia sensibilidad.


📊 Ejemplo conceptual

Variable A → gran impacto  
Variable B → poco impacto

Sensibilidad en machine learning

🔹 1. Interpretabilidad

Permite identificar:

  • variables importantes
  • features relevantes

🔹 2. Gradiente

El gradiente es:

👉 un vector de sensibilidades

🔹 3. Backpropagation

Calcula sensibilidades:

👉 de cada peso

🔹 4. Robustez

Modelos con alta sensibilidad:

👉 pueden ser inestables


🔹 5. Adversarial attacks

Pequeños cambios → grandes efectos


👉 alta sensibilidad local.

Ejemplo conceptual

Pequeño cambio en input  

Gran cambio en output
→ alta sensibilidad

📊 Ejemplo paso a paso

f(x,y)=x2+3xyf(x, y) = x^2 + 3xyf(x,y)=x2+3xy

fx=2x+3y\frac{\partial f}{\partial x} = 2x + 3y∂x∂f​=2x+3y fy=3x\frac{\partial f}{\partial y} = 3x∂y∂f​=3x

👉 sensibilidad depende de ambas variables.

Sensibilidad relativa

A veces se usa:sensibilidad relativa=xf(x)dfdx\text{sensibilidad relativa} = \frac{x}{f(x)} \cdot \frac{df}{dx}sensibilidad relativa=f(x)x​⋅dxdf​

👉 mide impacto proporcional.

Ejemplo en Python

import numpy as np
def f(x):
return x**2
def sensitivity(x, h=1e-5):
return (f(x + h) - f(x)) / h
print("Sensibilidad:", sensitivity(2))

Ejemplo en PyTorch

import torch
x = torch.tensor(2.0, requires_grad=True)
y = x**2
y.backward()
print("Sensibilidad:", x.grad)

Ejemplo multivariable

import torch
x = torch.tensor([2.0, 3.0], requires_grad=True)
y = x[0]**2 + x[1]**2
y.backward()
print("Sensibilidades:", x.grad)

Qué muestra este ejemplo

  • Relación con derivadas
  • Impacto de variables
  • Base de interpretabilidad

Errores comunes

Confundir sensibilidad con importancia global

Es local, depende del punto.

Ignorar escala de variables

Puede distorsionar resultados.

No considerar múltiples variables

Cada una tiene su impacto.

Ejemplo conceptual en ML

Entrada  

Modelo

Gradiente

Sensibilidad por variable

Interpretación profunda

La sensibilidad permite:

  • entender cómo responden los modelos
  • identificar variables clave
  • analizar estabilidad
  • detectar vulnerabilidades

👉 Es esencial para interpretar y mejorar modelos.

Conclusión

La sensibilidad mide el impacto de cada variable en la salida de una función. Es fundamental para el análisis, la interpretabilidad y la optimización en machine learning.

👉 Es la forma matemática de responder: “¿qué importa realmente?”

Related Concepts