K-Means performance
We can use elbow for optimal K method.
Introducción a machine learning
Introducción a machine learning
Qué es machine learning y su historia
Framework de ciencia de datos: herramientas para machine learning
Tipos de modelos de machine learning
Reto: procesando un dataset
Algoritmos simples de machine learning
La “receta” para aplicar algoritmos de machine learning
Regresión lineal
Regresión logística
Árboles de decisión
Algoritmos de aprendizaje no supervisado
Reto: explora diferentes ejemplos de modelos y qué pueden hacer
Deep learning
Cómo funcionan las redes neuronales
Cómo es el entrenamiento de las redes neuronales
Cómo mejorar las predicciones de redes neuronales
Conclusiones
Qué más aprender de inteligencia artificial
Cómo profundizar en machine learning y deep learning
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
Aportes 9
Preguntas 1
We can use elbow for optimal K method.
Hola a todos. Les comparto un herramienta que desarrolle que te permite visualizar el algoritmo de K-means. Adjunto una captura y el link del proyecto.
https://pegadro.github.io/kmeans-visualizer/
Otro apote a la clase:
https://www.youtube.com/watch?v=2kfY0R34Dy0&ab_channel=AprendeInnovando
Los centroides in k-means representan posiciones en el espacio que se supone que representan cada una de las features de entrada.
Muy interesante, de esta forma puedo determinar una ruta optima para la entrega de muchos paquetes
Copienlo en Collab y pruebenlo k-means
from sklearn.cluster import KMeans
import numpy as np
from sklearn import datasets
import pandas as pd
import matplotlib.pyplot as plt
from sklearn import metrics
DATOS = datasets.load_wine()
DataTarget = DATOS.target
col_list = DATOS.feature_names
DataToTrain = pd.DataFrame(DATOS.data, columns = col_list)
print(col_list)
K_optimo = 0;
Mejor = 0
for K in range(2,8):
# Variamos K
model = KMeans(n_clusters= K, max_iter=1000)
#Se entrena modelo
model.fit(DataToTrain)
y_labels = model.labels_
#Creamos prediccion
y_kmeans = model.predict(DataToTrain)
# Revisamos la precicion del modelo
accuracy = metrics.adjusted_rand_score(DataTarget, y_kmeans)
print(K,' ',accuracy)
if accuracy > Mejor:
K_optimo = K
Mejor = accuracy
print(’’)
print(f’Max accuracy: {round(Mejor,3)}% \nUsando K: {K_optimo} ')
K = K_optimo
model = KMeans(n_clusters= K, max_iter=1000)
model.fit(DataToTrain)
y_labels = model.labels_
#Creamos prediccion
y_means = model.predict(DataToTrain)
#GRAFIQUE 2 FEATURES PARA VER SI HAY RELACION
plt.scatter(DataToTrain[‘alcohol’], DataToTrain[‘hue’], c=y_means, s=30)
plt.xlabel(‘Alcohol’, fontsize = 10)
plt.ylabel(‘Hue’, fontsize = 10)
Un hilo interesante a leer sobre el uso del Elbow Plot
~
This video makes a good exposition about k means
Un saludo desde El Salvador, os dejo un ejemplo de K-means
from sklearn.cluster import KMeans
import numpy as np
from sklearn import datasets
import pandas as pd
import matplotlib.pyplot as plt
from sklearn import metrics
DATOS = datasets.load_wine()
DataTarget = DATOS.target
col_list = DATOS.feature_names
DataToTrain = pd.DataFrame(DATOS.data, columns = col_list)
print(col_list)
K_optimo = 0;
Mejor = 0
for K in range(2,8):
# Variamos K
model = KMeans(n_clusters= K, max_iter=1000)
#Se entrena modelo
model.fit(DataToTrain)
y_labels = model.labels_
#Creamos prediccion
y_kmeans = model.predict(DataToTrain)
# Revisamos la precicion del modelo
accuracy = metrics.adjusted_rand_score(DataTarget, y_kmeans)
print(K,' ',accuracy)
if accuracy > Mejor:
K_optimo = K
Mejor = accuracy
print(’’)
print(f’Max accuracy: {round(Mejor,3)}% \nUsando K: {K_optimo} ')
#SEGUNDA PARTE PREDICCION
#==========================
K = K_optimo
model = KMeans(n_clusters= K, max_iter=1000)
model.fit(DataToTrain)
y_labels = model.labels_
#Creamos prediccion
y_means = model.predict(DataToTrain)
#====================
plt.scatter(DataToTrain[‘alcohol’], DataToTrain[‘hue’], c=y_means, s=30)
plt.xlabel(‘Alcohol’, fontsize = 10)
plt.ylabel(‘Hue’, fontsize = 10)
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?
o inicia sesión.