¿Qué es el bosque aleatorio?

Empleados de la compañía que trabajan en la oficina de desarrollo y diseño de software.

¿Qué es el bosque aleatorio?

El bosque aleatorio es un algoritmo de aprendizaje automático de uso común, registrado por Leo Breiman y Adele Cutler, que combina el resultado de múltiples árboles de decisión para llegar a un resultado único. Su facilidad de uso y flexibilidad han impulsado su adopción, ya que maneja problemas de clasificación y regresión.

Árboles de decisión

Dado que el modelo de bosque aleatorio se compone de varios árboles de decisión, sería útil empezar describiendo brevemente el algoritmo del árbol de decisión. Los árboles de decisión comienzan con una pregunta básica, como "¿Debería navegar?" A partir de ahí, puede hacer una serie de preguntas para determinar una respuesta, como "¿El oleaje es prolongado?" o "¿Hay viento en alta mar?". Estas preguntas constituyen los nodos de decisión en el árbol, que funcionan como un medio para dividir los datos. Cada pregunta ayuda a un individuo a llegar a una decisión final, que sería señalada por el nodo hoja. Las observaciones que cumplan con los criterios seguirán el ramal "Sí" y las que no, seguirán la ruta alternativa. Los árboles de decisión buscan encontrar la mejor división para los subconjuntos de datos y, por lo general, se entrenan a través del algoritmo del árbol de clasificación y regresión (CART). Las métricas, como la impureza de Gini, la ganancia de información o el error cuadrático medio (MSE), pueden utilizarse para evaluar la calidad de la división.

Este árbol de decisión es un ejemplo de un problema de clasificación, donde las etiquetas de clase son "navegar" y "no navegar".

Si bien los árboles de decisión son algoritmos comunes de aprendizaje supervisado, pueden ser proclives a presentar problemas, como sesgos y sobreajuste. Sin embargo, cuando varios árboles de decisión forman un conjunto en el algoritmo de bosque aleatorio, predicen resultados más precisos, en especial cuando los árboles de decisión individuales no están correlacionados entre sí.

Métodos de conjunto

Los métodos de aprendizaje por conjuntos se componen de un conjunto de clasificadores, por ejemplo árboles de decisión, y sus predicciones se agregan para identificar el resultado más popular. Los métodos de conjunto más conocidos son el bagging (embolsado), también conocido como bootstrapping (o agregación de arranque), y el boosting (o estímulo). En 1996, Leo Breiman (enlace externo a ibm.com) presentó el método de embolsado. En este método, se selecciona una muestra aleatoria de datos en un conjunto de entrenamiento con reemplazo, lo que significa que los puntos de datos individuales se pueden elegir más de una vez. Después de generar varias muestras de datos, estos modelos se entrenan de forma independiente y en función del tipo de tarea, es decir. regresión o clasificación: el promedio o la mayoría de esas predicciones arrojan una estimación más precisa. Este enfoque se utiliza comúnmente para reducir la varianza dentro de un conjunto de datos ruidoso.

Algoritmo de bosque aleatorio

El algoritmo de bosque aleatorio es una extensión del método bagging o embolsado, ya que emplea tanto el embolsado como la aleatoriedad de características para crear un bosque de árboles de decisión que no están correlacionados. La aleatoriedad de características, también conocida como embolsado de características o “método aleatorio del subespacio” (enlace externo a ibm.com), genera un subconjunto aleatorio de características, lo que garantiza una baja correlación entre los árboles de decisión. Esta es una diferencia fundamental entre los árboles de decisión y los bosques aleatorios. Mientras que los árboles de decisión consideran todas las posibles divisiones de características, los bosques aleatorios solo seleccionan un subconjunto de esas características.

Si volvemos al ejemplo de "¿debo navegar?", es posible que las preguntas que yo pueda hacerme para determinar la predicción no sean tan exhaustivas como el conjunto de preguntas de otra persona. Al tener en cuenta toda la variabilidad potencial de los datos, podemos reducir el riesgo de sobreajuste, el sesgo y la varianza general, lo que se traduce en predicciones más precisas.

Diseño 3D de pelotas rodando en una pista

Las últimas novedades e insights sobre IA

Descubra insights y noticias de expertos sobre IA, la nube y mucho más en el boletín semanal Think. 

Cómo Funciona

Los algoritmos de bosque aleatorio tienen tres hiperparámetros principales, que deben configurarse antes del entrenamiento. Estos incluyen el tamaño del nodo, la cantidad de árboles y la cantidad de características muestreadas. A partir de ahí, el clasificador de bosque aleatorio se puede utilizar para resolver problemas de regresión o clasificación.

El algoritmo de bosque aleatorio se compone de una colección de árboles de decisión y cada árbol en el conjunto está compuesto por una muestra de datos extraída de un conjunto de entrenamiento con reemplazo, llamado bootstrapping. De esa muestra de entrenamiento, un tercio de ella se reserva como datos de prueba, lo que se conoce como la muestra fuera de bolsa (oob), a la que volveremos más adelante. Luego, se inyecta otra instancia de aleatoriedad mediante el embolsado de características, lo que agrega más diversidad al conjunto de datos y reduce la correlación entre los árboles de decisión. Dependiendo del tipo de problema, la determinación de la predicción variará. Para una tarea de regresión, se promediarán los árboles de decisión individuales, y para una tarea de clasificación, el voto mayoritario, es decir, la variable categórica más frecuente, arrojará la clase prevista. Finalmente, la muestra fuera de la bolsa (oob) se utiliza para la validación cruzada, finalizando esa predicción.

Ventajas y desafíos del bosque aleatorio

El algoritmo de bosque aleatorio presenta una cantidad de ventajas y desafíos clave cuando se utiliza para problemas de clasificación o regresión. Por ejemplo:

Beneficios principales

  • Menor riesgo de sobreajuste: Los árboles de decisión corren el riesgo de presentar sobreajustes, ya que tienden a ajustar estrechamente a todas las muestras dentro de los datos de entrenamiento. Sin embargo, cuando hay una gran cantidad de árboles de decisión en un bosque aleatorio, el clasificador no sobreajustará el modelo, ya que el promedio de árboles no correlacionados reduce la varianza general y el error de predicción.
  • Proporciona flexibilidad: Dado que el bosque aleatorio puede manejar tareas de regresión y clasificación con un alto grado de precisión, es un método popular entre los científicos de datos. El embolsado de características también convierte al clasificador de bosque aleatorio en una herramienta eficaz para estimar los valores faltantes, ya que mantiene la precisión cuando falta una parte de los datos.
  • Facilidad para determinar la importancia de las características: El bosque aleatorio facilita la evaluación de la importancia, o la contribución, de las variables al modelo. Hay algunas formas de evaluar la importancia de las características. La importancia de Gini y la disminución media de la impureza (MDI) se utilizan generalmente para medir cuánto disminuye la precisión del modelo cuando se excluye una variable dada. Sin embargo, la importancia de la permutación, también conocida como precisión de disminución media (MDA), es otra medida de importancia. MDA identifica la disminución promedio de la precisión mediante la permutación aleatoria de los valores de las características en muestras de OOB.

Principales desafíos

  • Proceso que requiere mucho tiempo: Dado que los algoritmos de bosque aleatorio pueden manejar grandes conjuntos de datos, pueden proporcionar predicciones más precisas, pero pueden ser lentos para procesar los datos, ya que están calculando datos para cada árbol de decisión individual.
  • Requiere más recursos: Dado que los bosques aleatorios procesan conjuntos de datos más grandes, necesitarán más recursos para almacenar esos datos.
  • Mayor complejidad: La predicción de un único árbol de decisión es más fácil de interpretar que la de un bosque de ellos.
Mixture of Experts | 28 de agosto, episodio 70

Decodificación de la IA: Resumen semanal de noticias

Únase a nuestro panel de ingenieros, investigadores, responsables de producto y otros profesionales de talla mundial que se abren paso entre el revuelo de la IA para ofrecerle las últimas noticias e insights al respecto.

Aplicaciones del bosque aleatorio

El algoritmo de bosque aleatorio se ha aplicado en numerosas industrias, lo que les permitió tomar mejores decisiones empresariales. Algunos casos de uso incluyen:

  • Finanzas: Es un algoritmo preferido sobre otros ya que reduce el tiempo dedicado a la gestión de los datos y tareas de procesamiento previo. Se puede utilizar para evaluar a los clientes con alto riesgo crediticio, para detectar fraudes y problemas de opciones de precios.
  • Atención médica:  El algoritmo de bosque aleatorio tiene aplicaciones dentro de la biología computacional (enlace externo a ibm.com), lo que permite a los médicos abordar problemas como la clasificación de expresiones génicas, el descubrimiento de biomarcadores y la anotación de secuencias. Como resultado, los médicos pueden hacer estimaciones sobre las respuestas de los fármacos a medicamentos específicos.
  • Comercio electrónico: Se puede utilizar para motores de recomendación con fines de venta cruzada.
Soluciones relacionadas
IBM watsonx.ai

Entrene, valide, ajuste y despliegue IA generativa, modelos fundacionales y capacidades de machine learning con IBM watsonx.ai, un estudio empresarial de próxima generación para creadores de IA. Diseñe aplicaciones de IA en menos tiempo y con menos datos.

Descubra watsonx.ai
Soluciones de inteligencia artificial

Ponga la IA a trabajar en su negocio con la experiencia en IA líder en la industria y la cartera de soluciones de IBM a su lado.

Explore las soluciones de IA
Consultoría y servicios de IA

Reinvente los flujos de trabajo y las operaciones críticas añadiendo IA para maximizar las experiencias, la toma de decisiones en tiempo real y el valor empresarial.

Conozca los servicios de IA
Dé el siguiente paso

Obtenga acceso único a capacidades que abarcan el ciclo de vida del desarrollo de IA. Produzca potentes soluciones de IA con interfaces fáciles de usar, flujos de trabajo y acceso a API y SDK estándar de la industria.

Explore watsonx.ai Reserve una demostración en vivo