¿Cómo elegir el algoritmo adecuado en ML?

Autor: | Última modificación: 16 de abril de 2024 | Tiempo de Lectura: 3 minutos
Temas en este post: ,

Algunos de nuestros reconocimientos:

Premios KeepCoding

Una de las preguntas que puedes tener a la hora de emprender un proyecto es cómo elegir el algoritmo adecuado en ML. Existen muchos modelos y cada uno de ellos tiene una función distinta, por tanto, es necesario tener en cuenta que uno de los factores más relevantes en las primeras etapas del proyecto es el cómo elegir el algoritmo adecuado en ML. Esto te permitirá ahorrar tiempo y dinero en cosas que, tal vez, no te van a funcionar, porque no están hechas para ello.

¿Existe el algoritmo adecuado en ML?

No hay un algoritmo mejor que otro para todos los problemas. Nuestro algoritmo es el gato de Schrödinger dentro de la caja y puede funcionar y no funcionar al mismo tiempo, pero tendremos que abrir la caja y probar el algoritmo para saber si es el algoritmo adecuado en ML. Por tanto, la decisión de qué algoritmo usar depende del caso de uso.

Hace unos años salió un informe de Microsoft que evaluaba el rendimiento de una serie de modelos en función de la cantidad de datos con los que se le alimentaba. El resultado fue que, con algunas contadas excepciones que terminan teniendo un rendimiento peor, en general, la mayoría de modelos acaban convergiendo si les damos los suficientes datos.

Esto sirve para demostrar que no existe un solo algoritmo adecuado en ML, sino que eso depende enormemente de los datos que tengamos.

¿Y cómo sabemos eso? Pues a priori no se puede hacer casi nada. Como mucho podremos descartar algunos basándonos en nuestra experiencia y trabajo con proyectos similares o del mismo tipo.

Entonces, si tenemos pocos datos o datos temporales, por ejemplo, podemos descartar los árboles, porque los árboles no funcionan bien a futuro.

Hay una serie de valoraciones a priori que se pueden hacer y que nos pueden ayudar a descartar 1, 2 o 3 modelos y, posteriormente, a elegir el algoritmo adecuado en ML. No obstante, las buenas prácticas de cómo enfrentarse a un problema de machine learning consisten en coger 5, 10 o 15 modelos (los que prefieras), preparar los datos y probarlos con cada uno de los modelos.

Posteriormente, podremos ir iterando, transformando y evaluando. De este modo, de esos 5, 10 o 15 modelos que inicialmente teníamos, depuramos algunos y hacemos una lista más pequeña de los que mejor rendimiento obtuvieron a partir del problema que teníamos. Todo ello teniendo en cuenta también el número de datos, las instancias y otros factores propios de tu conjunto de datos.

Luego, es con esa lista con la que se itera más profundamente hasta llegar a un modelo final.

Consideraciones a tener en cuenta para escoger el algoritmo adecuado en ML

Existen unas cuantas consideraciones especiales que debemos tener presentes en el momento de escoger el algoritmo adecuado en ML. Como ya hemos visto, esta es una tarea que requiere paciencia, ya que se trata de ir probando hasta encontrar el que tenga mejor rendimiento y mejor se adapte al problema específico que tengamos con el conjunto de datos y parámetros individuales de dicho conjunto.

Estas son las consideraciones:

  • El compromiso sesgo-varianza.
  • El ruido y número de muestras de entrenamiento, es decir, la calidad de los datos.
  • La complejidad de la solución.
  • La dimensionalidad del conjunto de entrada.

Hay algunos factores en los que nos podemos basar para seleccionar unos modelos u otros.

Scikit learn tiene un mapa muy interesante que nos sirve a modo de guía para intuir e ir deduciendo cuál es el algoritmo adecuado en ML que más nos conviene. Este mapa puede ser de muchísima ayuda y funciona como un diagrama de flujo en el que se nos van preguntando cosas y, dependiendo de la respuesta, escogemos un camino u otro.

algoritmo adecuado en ML

¿Quieres seguir aprendiendo?

El mundo del Big Data es muy amplio, pero ahora que conoces cómo elegir el algoritmo adecuado en ML ya estás un poco más cerca de dominarlo..

Si estás interesado en estas temáticas relacionadas con el Big Data y el ML, tenemos para ti el Big Data, Inteligencia Artificial & Machine Learning Full Stack Bootcamp, una formación intensiva de alto nivel en la que podrás aprender conceptualización tanto teórica como práctica. En pocos meses estarás capacitado para incursionar en uno de los mercados laborales más prolíficos del momento. ¡Anímate a solicitar más información!

Posts Relacionados

¡CONVOCATORIA ABIERTA!

Big Data, IA & Machine Learning

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado