Laboratorio de Modelado por Tramos

Usa dos reglas lineales separadas en x = c y evalúa valores y saltos.

Cargando simulación interactiva...

Lección

La teoría — Laboratorio de Modelado por Tramos

Una función definida a trozos no es una regla con una excepción; son dos reglas completas más la indicación de cuál se aplica dónde. Aquí una regla lineal gobierna todo lo que está por debajo de un punto de ruptura c y una segunda gobierna todo a partir de c. La pregunta interesante nunca es qué hace cada trozo —son simples rectas— sino qué ocurre en la costura.

Qué significa cada símbolo

c
el punto de ruptura: la entrada en la que cambia la regla.
f(c⁻)
hacia dónde se dirige el trozo izquierdo cuando x se acerca a c por debajo. Es un límite, no un valor: en c la regla izquierda ya no rige.
f(c⁺)
el valor que el trozo derecho toma realmente en c, que es también el valor de la función allí.
jump
f(c⁺) − f(c⁻). Cero exactamente cuando los dos trozos se encuentran.

De dónde viene la fórmula

  1. Escribe la definición con su condición al lado: f(x) = m₁x + b₁ para x < c, y f(x) = m₂x + b₂ para x ≥ c. Fíjate en qué trozo posee el punto de ruptura: aquí el derecho, y por eso la gráfica muestra un círculo hueco en la rama izquierda y uno relleno en la derecha.
  2. En c la función tiene un valor dado por la regla derecha, m₂c + b₂. La regla izquierda no tiene valor allí, pero sí destino: cuando x sube hacia c, m₁x + b₁ se aproxima a m₁c + b₁. Ese es el límite por la izquierda.
  3. La continuidad en un punto significa que los límites por ambos lados y el valor coinciden. Aquí el límite por la derecha y el valor son lo mismo, así que dos de los tres son automáticos y toda la condición se reduce a una ecuación: m₁c + b₁ = m₂c + b₂.
  4. Una ecuación, y cualquier coeficiente puede moverse para satisfacerla: b₂ = (m₁ − m₂)c + b₁. La continuidad, por tanto, siempre está disponible y nunca es gratis: hay que gastar un parámetro en ella. Cuando no se hace, lo que sobra es exactamente lo que la lectura llama salto: (m₂c + b₂) − (m₁c + b₁).

Cómo leer lo que ves

El segmento azul es la regla izquierda y el naranja la derecha, y cada uno se dibuja hasta donde su propia condición lo permite. En el punto de ruptura la rama azul termina en un círculo hueco —un destino que nunca ocupa— y la naranja empieza con un punto relleno, que es el valor real de f(c). Cuando ambos coinciden los círculos se superponen y la fila del salto marca 0. El punto verde azulado es f(x₀) para lo que pongas en la casilla de evaluación, y las tres últimas filas convierten el dibujo en números: si los trozos se encuentran, cuánto cambia la pendiente al cruzar, y si el escalón hacia abajo crea un tramo de entradas que cuestan más que el propio punto de ruptura.

Supone
Ambos trozos son rectas, hay exactamente un punto de ruptura y está en un lugar conocido. El convenio semiabierto importa y es una elección: la regla derecha posee x = c, así que f(c) es m₂c + b₂. Invierte el convenio y cambia el valor en el único punto c, pero no el salto.
Falla cuando
El problema serio llega cuando c no se conoce, sino que se estima. Un punto de ruptura estimado con los mismos datos con los que se ajustan las rectas es un parámetro elegido para minimizar el error, de modo que los errores estándar habituales de la regresión quedan demasiado pequeños y el ajuste parece mejor de lo que es; para eso existen los métodos de regresión segmentada. Y un modelo de dos trozos no dice nada sobre un tercer régimen: prolongar cualquiera de las rectas más allá del rango observado supone una regla que nunca se comprobó.

La continuidad en el punto de ruptura hay que fabricarla 🖖

La fila del salto merece especial atención: tres de los cuatro valores predefinidos muestran en ella un valor distinto de cero. Al llegar al punto de corte, el taxi pasa de 13 a 12; el descuento baja 2,5 y la curva de enfriamiento, 4,8. En los tres casos hay una disminución, de modo que entrar en el tramo de tarifa más barata hace que el total baje. Aquí la continuidad no viene dada; es una coincidencia exacta que debes conseguir. Para ello, tiene que cumplirse m₁c + b₁ = m₂c + b₂. El valor predefinido de los impuestos satisface esta condición de forma deliberada: su segunda ordenada en el origen es −2, el resultado de despejar b₂ en la condición de continuidad. Cambia de 8 a 9 la segunda ordenada en el origen del valor predefinido del taxi y su salto también será 0.

Una función, dos reglas 🖖

Un modelo definido por partes usa una regla lineal antes del punto de cambio c y otra distinta después — como un taxímetro que cobra una tarifa al principio y otra más barata más adelante. Los dos tramos se unen de forma suave solo cuando coinciden en c: continua exactamente cuando m1·c + b1 = m2·c + b2. Si no, la lectura muestra un salto: la gráfica salta hacia arriba o hacia abajo en la unión.

El pico que impulsa el aprendizaje profundo 🖖

La función de activación detrás de la mayoría de las redes neuronales modernas, ReLU, no es más que una función lineal por partes: pendiente 0 mientras x es negativo y pendiente 1 en cuanto se vuelve positivo, unidas en el punto de cambio x = 0. Allí es continua, pero no tiene derivada: una esquina afilada, no una curva suave. Apila millones de estas unidades y toda la red sigue calculando una única y enorme función lineal por partes continua.

Un descuento puede hacer que ocho cueste más que diez 🖖

Carga el ajuste de descuento por volumen y mira la última fila de la lectura. La tarifa cae de 1,2 a 0,7 en diez unidades y el total cae con ella: diez unidades cuestan 9,5 mientras que ocho cuestan 9,6. La fila da toda la región: desde 7,916667 unidades hasta el punto de ruptura, pagas más de lo que pagarías pidiendo simplemente diez. Todo salto hacia abajo crea un intervalo así, y es una cosa rara de escribir en una lista de precios, porque premia a quien quiere ocho por pedir diez y llevarse las dos de más gratis. Esa es la razón práctica para comprobar la continuidad, y no una decorativa. Cambia al ajuste de enfriamiento y la fila dice que no existe tal región: una rama descendente nunca sube por encima del valor hacia el que se dirige.

Problema resuelto al detalle

  1. Un salto de tarifa en 5 y el tramo en el que comprar más cuesta menos 6 pasos

    Una tarifa cobra 2x + 3 por debajo de un punto de cambio en 5 y 0,8x + 8 por encima. Calcula el valor en 7 y luego halla el intervalo en el que comprar más cuesta menos.

    1. Dos rectas y una regla que indica cuál se aplica. La única precaución necesaria está en el límite: exactamente en x = 5 se aplica el segundo tramo.

    2. Al aproximarse al punto de cambio desde ambos lados, el límite por la izquierda y el valor real no coinciden, y la magnitud de la discrepancia es el salto.

    3. Las pendientes tampoco coinciden, y lo hacen de forma independiente. Una función puede ser continua con un punto anguloso, o dar un salto sin punto anguloso; esta hace ambas cosas.

    4. Pasemos ahora a la pregunta interesante: averiguar dónde el primer tramo ha superado ya el valor en el que comienza el segundo tramo.

    5. Esa desigualdad se cumple desde 4,5 hasta el punto de cambio, y en todo ese intervalo la compra más económica es la de mayor cantidad.

    6. Vale la pena escribir la condición que eliminaría dicho intervalo, pues es la que satisface cualquier estructura tarifaria bien diseñada.

    Respuesta

    13,6; y entre 4,5 y 5 siempre conviene comprar 5. El segundo tramo comienza en 12 mientras el primer tramo aún sigue subiendo por encima de ese valor, de modo que cualquiera en ese intervalo paga más por menos. Este intervalo no es un artefacto de redondeo: representa el 10% de todo el primer tramo y es exactamente lo que produce una tarifa discontinua. Las tarifas reales lo evitan haciendo que los tramos coincidan: la continuidad requiere que b₂ − b₁ = (m₁ − m₂)c, lo que aquí exigiría que 5 fuera igual a 6. Los tramos marginales del impuesto sobre la renta se construyen así a propósito, motivo por el cual la creencia popular de que un aumento de sueldo puede reducir el salario neto es falsa en el impuesto sobre la renta y verdadera en casi cualquier descuento por volumen que se haya publicado.

Referencias (2)

Problemas de ejemplo

  • modelo de tarifa de taxi - 2x + 3 por debajo del punto de corte, situado en 5, y 0,8x + 8 por encima. Al cruzarlo, el valor baja de 13 a 12. Cambia esa segunda ordenada en el origen de 8 a 9 y el salto se anulará.
  • modelo de descuento por volumen - 1,2 por unidad hasta llegar a diez; después, 0,7 con una ordenada en el origen de 2,5. Diez unidades cuestan 9,50 y ocho, 9,60. A partir de 7,916667 unidades, cualquier cantidad sale más cara que pedir diez directamente.
  • fases de enfriamiento - Un modelo decreciente, primero -0,5 y después -0,1, con una caída de 4,8 en el punto de corte. Es el único valor predefinido para el que la herramienta no muestra ninguna región de sobrecoste, pues una rama decreciente no puede superar su valor anterior.
  • tramo impositivo marginal - El único ajuste sin salto: 20% hasta 10 y 40% por encima, con la segunda ordenada en −2 para que los tramos encajen exactamente