Please enable JavaScript.
Coggle requires JavaScript to display documents.
3.7 KNN. 3.8 Árboles de Decisión. - Coggle Diagram
3.7 KNN.
3.8 Árboles de Decisión.
K: El número de vecinos más cercanos a considerar.
Regresión: Calcular el promedio de los valores entre los vecinos.
K-Nearest Neighbors (KNN) es un algoritmo de aprendizaje supervisado que se utiliza tanto para clasificación como para regresión. Funciona al encontrar los k puntos más cercanos a un dato de interés y asignar la etiqueta más común (en clasificación) o el promedio (en regresión).
Nodos: Representan características.
Los árboles de decisión son un modelo de aprendizaje supervisado que se utilizan tanto para clasificación como para regresión. Funcionan dividiendo repetidamente los datos en subconjuntos basados en características y umbrales específicos, creando una estructura similar a un árbol.
como se hace KNN ejemplo
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier
from sklearn.metrics import accuracy_score
Distancia: La métrica utilizada para medir la cercanía (e.g., Euclidiana, Manhattan).
Clasificación: Asignar la etiqueta más común entre los vecinos.
Ramas: Representan divisiones basadas en características.
Datos de ejemplo
data = {
'Feature1': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
'Feature2': [10, 9, 8, 7, 6, 5, 4, 3, 2, 1],
'Label': [0, 1, 0, 1, 0, 1, 0, 1, 0, 1]
}
df = pd.DataFrame(data)
Dividir en características y etiquetas
X = df[['Feature1', 'Feature2']]
y = df['Label']
Dividir en conjunto de entrenamiento y prueba
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)
Crear y entrenar el modelo KNN
knn = KNeighborsClassifier(n_neighbors=3)
knn.fit(X_train, y_train)
Hacer predicciones
y_pred = knn.predict(X_test)
Evaluar el modelo
accuracy = accuracy_score(y_test, y_pred)
print(f"Precisión: {accuracy}")
Hojas: Representan etiquetas o valores predictivos.
Criterios de División: Gini, Entropía, MSE.
Datos de ejemplo
data = {
'Feature1': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
'Feature2': [10, 9, 8, 7, 6, 5, 4, 3, 2, 1],
'Label': [0, 1, 0, 1, 0, 1, 0, 1, 0, 1]
df = pd.DataFrame(data)
Dividir en características y etiquetas
X = df[['Feature1', 'Feature2']]
y = df['Label']
Dividir en conjunto de entrenamiento y prueba
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)
Crear y entrenar el modelo de Árbol de Decisión
tree = DecisionTreeClassifier()
tree.fit(X_train, y_train)
Hacer predicciones
y_pred = tree.predict(X_test)
Evaluar el modelo
accuracy = accuracy_score(y_test, y_pred)
print(f"Precisión: {accuracy}")
Visualización del árbol de decisión
plt.figure(figsize=(20,10))
plot_tree(tree, filled=True, feature_names=['Feature1', 'Feature2'], class_names=['0', '1'])
plt.show()