¿Qué son las funciones convexas?

Autor: | Última modificación: 11 de enero de 2023 | Tiempo de Lectura: 3 minutos
Temas en este post: ,

Las funciones convexas son funciones con la capacidad de ser fácilmente derivables y, por tanto, fácilmente optimizables. A continuación, veremos cómo trabajan estas funciones y cómo pueden emplearse.

Funciones convexas

Que una loss function sea convexa nos permite que sea fácil de derivar, lo cual nos permite, a su vez, optimizarla de forma simple.

La idea que se tiene en mente con modelos de machine learning es que la loss function o función de pérdida casi siempre o siempre tiene que ser convexa. No obstante, existirán también los casos en los que requereriremos resolver problemas con funciones que no son convexas.

¿Qué funciones convexas hay?

  • Hemos visto que la least squares o mínimo cuadrado es convexa.
  • La loss function de los SVM o support vector machines se denomina hinge loss y también es convexa.
  • La función sigmoid o logistic regression también es convexa.

No siempre estas funciones van a ser convexas, pero se busca que más o menos así sea, porque así es más fácil optimizarlas.

Hay funciones que son mucho más complejas que las habituales y no se usan casi nunca, que no son funciones convexas. Entre esas funciones se encuentra la cauchy loss, que, al no ser convexa y debido a cómo está formulada matemáticamente, ofrece algunas posibilidades que quizás las funciones convexas no puedan ofrecer.

Vamos a ver un ejemplo. Supongamos que tenemos una serie de puntos en un eje de coordenadas. En ese mismo eje tenemos un grupo pequeño de puntos que se sale de la tendencia de los datos generales. Este grupo de datos se presenta como extraño ante todo el conjunto de datos, ya que es el que está aislado, que no concuerda con ninguna agrupación de datos.

Podemos deducir o intuir que a lo mejor es ruido. En este caso específico, la cauchy loss es muy buena con los outliers, que son los puntos que se desvían de los límites o coordenadas originales. El único y gran problema que tiene la cauchy loss es que no es convexa, por tanto su optimización se vuelve muy compeja y tediosa.

¿Cuál es el mínimo de outliers que deberíamos tener para usar una función de cauchy loss ?

El mínimo de outliers que deberíamos tener para usar una función de cauchy loss depende mucho de las particularidades de cada modelo y de la necesidad que se tenga con el modelo de machine learning. No hay ningún modelo mejor para todos los casos, del mismo modo que no hay una respuesta clara para esta pregunta.

Es mucho mejor que tardemos nuestro tiempo en investigar cómo podemos organizar nuestros datos, en lugar de empezar a probar cosas que no tenemos la certeza de que vayan a funcionar.

No es simplemente decir que hemos probado muchos modelos y estamos esperando respuestas del cielo. La idea es que aprendamos a evaluar cuándo tenemos el conocimiento suficiente del modelo.

Otros mecanismos

Hay otros mecanismos, como la regularización, para mejorar el rendimiento de nuestros modelos sin sacrificar otras características ni cambiar cosas, como la función de pérdida que, aunque no es convexa, es mucho mejor para estos casos.

Puede que te estés preguntando si lo contrario de convexa sería la función cóncava. La respuesta es sí y no. Sí porque las funciones que derivan de este nombre deben su origen a la forma que da raíz a la palabra; no porque este es un concepto que va más allá de decir funciones convexas o no convexas (cóncavas).

El teorema que ayuda a que una función de un modelo sea convexa o no convexa lo que explica es que, si tenemos un conjunto, no debe haber ninguna recta si cogemos un punto de uno y otro extremo. Es decir, si una recta está por fuera de un conjunto, ya no se cataloga dentro de las funciones convexas.

Lo que intentamos hacer, por tanto, es que en todo el dominio esta función sea derivable.

¿Cómo avanzar?

El Big Data es una de las áreas en las que más trabajos se ofertan. Para poder acceder a este tipo de opciones laborales, tenemos para ti el Big Data, Inteligencia Artificial & Machine Learning Full Stack Bootcamp, una formación intensiva e íntegra en la que adquirirás todos los conocimientos teóricos y prácticos que te permitirán obtener el trabajo de tus sueños en pocos meses. ¡No esperes más para impulsar tu carrera y solicita información ahora!

👉 Descubre más del Big Data, Inteligencia Artificial & Machine Learning Full Stack Bootcamp ¡Descarga el temario!

👉 Prueba el Bootcamp Gratis por una Semana ¡Empieza ahora mismo!

👉 Conoce nuestros otros Bootcamps en Programación y Tecnología

[email protected]

¿Trabajo? Aprende a programar y consíguelo.

¡No te pierdas la próxima edición del Aprende a Programar desde Cero Full Stack Jr. Bootcamp!

 

Prepárate en 4 meses, aprende las últimas tecnologías y consigue trabajo desde ya. 

 

Solo en España hay más de 120.400 puestos tech sin cubrir, y con un sueldo 11.000€ por encima de la media nacional. ¡Es tu momento!

 

🗓️ Próxima edición: 13 de febrero

 

Reserva tu plaza descubre las becas disponibles.