Clasificador Random Forest: que es y como funciona

Aprende qué es y cómo funciona el clasificador Random Forest con ejemplos e implementación de código.

ÍNDICE

Qué es y para qué se utiliza

El clasificador Random Forest es un algoritmo de aprendizaje automático que combina las salidas de diferentes árboles de decisión con el fin de obtener un único y optimizado resultado.

Si nos ponemos técnicos, IBM lo define como “un algoritmo de aprendizaje supervisado no paramétrico, que se utiliza tanto para tareas de clasificación como de regresión”.

Regresión vs Clasificación

Tanto la regresión como la clasificación forman parte del aprendizaje supervisado de datos (los datos están etiquetados). Sin ponernos muy técnicos y para entenderlo de una manera simple.: podemos decir que el objetivo de la clasificación es, como bien dice su nombre, predecir a qué clase pertenece un conjunto de datos. En cambio, el objetivo de la regresión es predecir valores continuos.

Elementos principales de un árbol de decisión

Un árbol de decisión es una estructura jerárquica compuesta por tres elementos principales: la raíz, los nodos y las ramas. Dentro de los nodos tenemos dos tipos: los nodos internos y los nodo hoja. La diferencia entre estos dos es que los últimos no tienen hijos, por lo tanto, el árbol no se sigue extendiendo a través de ellos.

En el algoritmo, los nodos internos representan las diversas características o atributos que se deben considerar al tomar una decisión. Las ramas indican las elecciones basadas en condiciones específicas, como la probabilidad de que ocurra algo. Los nodos terminales señalan el resultado final de la decisión.

1

Cómo funciona el algoritmo

Como su nombre indica, se trata de un bosque, por lo que en lugar de tener un solo árbol, el Random Forest crea varios árboles. Para entrenarlos toma muestras aleatorias del conjunto de datos (como se trata de un algoritmo supervisado los datos tienen que estar etiquetados).

Cada árbol “aprende” a tomar decisiones basadas en las características de las muestras. Cuando se quiere hacer una predicción, se “preguntaría” a cada árbol del bosque y se quedaría con la solución más votada. Es decir, si estamos hablando de si el tomate es o no es una fruta y de cinco árboles tres dijeran que si, la solución del Random Forest sería que si.

Aquí os dejamos un ejemplo de implementación de esta clasificador creado por una IA.

# Importa las bibliotecas necesarias
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier
from sklearn.metrics import accuracy_score

# Carga el conjunto de datos Iris
iris = load_iris()
X = iris.data
y = iris.target

# Divide el conjunto de datos en conjuntos de entrenamiento y prueba
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# Crea un modelo Random Forest
rf_model = RandomForestClassifier(n_estimators=100, random_state=42)

# Entrena el modelo en el conjunto de entrenamiento
rf_model.fit(X_train, y_train)

# Realiza predicciones en el conjunto de prueba
y_pred = rf_model.predict(X_test)

# Evalúa la precisión del modelo
accuracy = accuracy_score(y_test, y_pred)
print(f"Precisión del modelo: {accuracy:.2f}")

Quieres saber más…

No olvides que este contenido y mucho más, lo tienes disponible en nuestra web. Así que, no lo pienses y regístrate en KOPURU, donde encontrarás artículos, desafíos para desarrollar tus capacidades y mucho más!

Scroll al inicio