Hola, muchas gracias!!! Te paso el link para los datasets de todos los videos drive.google.com/drive/folders/1Jdg2ttdM8pvSdC2ndd5tS5rPI37uTC_t?usp=share_link
Hola, de hecho lo puedes usar con múltiples entradas. En el video lo hago con dos por efectos de graficación, es decir para poder visualizarlo en la gráfica
@@jacobavilacamacho7644 Hola gracias por responder, me podría ilustrar cómo modificar el código para poner múltiples entradas. me sería de gran utilidad... X = dataset.iloc[:, :-1].values alguien me dice que con esa línea. No obstante, mi cuestión es: ese :-1, qué me indica exactamente? todas las columnas excepto 1? agradezco cualquier ayuda
@@matematicasutiles6998 Hola, justo así agregas más variables a tu variable X. el slide con el -1 al final significa que mandaras a X las columnas iniciando desde la primera hasta la última menos 1, ya que la última columna va a ser tu variable Y. En python puede recorrer arreglos, listas y matrices desde el indice 0 a n-1 y al revés desde la columna n-1 hacia atrás con índices negativos
Hola, excelente video, gracias!!!; tengo una duda;, siguiendo este modelo, como podría realiza "n" experimentos seleccionando el 10% de manera aleatoria para entrenar el clasificador y el 10% para validación?
Hola Juan Carlos. Si nada más quieres usar el 10% para entrenar, en lugar del 90% restante cuando indicas que el test_size es del 10% podrías usar también train_size en la funcion train_test_split train_test_split(x, y, test_size=0.1, train_size=0.1, random_state = 0) El parámetro random_state hace que se selecciones de manera aleatorios los datos para entrenamiento y prueba o validación
Hola! Que pasaría si tenemos K=4 y resulta que 2 elementos pertenecen a una clase y los otros dos a la segunda clase. A que clase correspondería el elemento que deseo clasificar? Gracias!
Hola, pertenecería a cualquiera de las dos clases, dado que tenemos un 50% de probabilidad de pertenecer a cualquiera de los dos, sin embargo el modelo de KNN haría un nuevo cálculo para modificar las distancias y ver si hay cambios en la asignación. Lo más conveniente sería probar ahora con K = 3 y K = 5
Hola Bryan, el valor de 5 lo use como estándar, que es el mínimo recomendado por el mismo modelo. Pero puedes hacer pruebas con números mayores, también va a depender de la distribución de tus datos.
Sorry, Es importante entender como funciona y aplicarlo de manera práctica para interpretar los resultados sin tener que implementar el algoritmo a mano.
Muy buen video , excelente explicación y mostró toda la funcionalidad que hace este algoritmo :]
Muchas gracias
Excelente material, bastante claro y sencillo de entender. Gracias por el buen trabajo.
Hola José Moreno, muchos gracias. Saludos!!!!
buen video, donde podemos descargar el dataset?
Hola, muchas gracias!!!
Te paso el link para los datasets de todos los videos
drive.google.com/drive/folders/1Jdg2ttdM8pvSdC2ndd5tS5rPI37uTC_t?usp=share_link
Buenas, requiero usar el algoritmo con más de 3 entradas... dónde podría encontrar orientaciones al respecto...
Hola, de hecho lo puedes usar con múltiples entradas. En el video lo hago con dos por efectos de graficación, es decir para poder visualizarlo en la gráfica
@@jacobavilacamacho7644 Hola gracias por responder, me podría ilustrar cómo modificar el código para poner múltiples entradas. me sería de gran utilidad...
X = dataset.iloc[:, :-1].values
alguien me dice que con esa línea. No obstante, mi cuestión es: ese :-1, qué me indica exactamente? todas las columnas excepto 1? agradezco cualquier ayuda
@@matematicasutiles6998 Hola, justo así agregas más variables a tu variable X. el slide con el -1 al final significa que mandaras a X las columnas iniciando desde la primera hasta la última menos 1, ya que la última columna va a ser tu variable Y.
En python puede recorrer arreglos, listas y matrices desde el indice 0 a n-1 y al revés desde la columna n-1 hacia atrás con índices negativos
Hola, excelente video, gracias!!!; tengo una duda;, siguiendo este modelo, como podría realiza "n" experimentos seleccionando el 10% de manera aleatoria para entrenar el clasificador y el 10% para validación?
Hola Juan Carlos. Si nada más quieres usar el 10% para entrenar, en lugar del 90% restante cuando indicas que el test_size es del 10% podrías usar también train_size en la funcion train_test_split
train_test_split(x, y, test_size=0.1, train_size=0.1, random_state = 0)
El parámetro random_state hace que se selecciones de manera aleatorios los datos para entrenamiento y prueba o validación
@@jacobavilacamacho7644 Excelente, una gran ayuda. Muchas gracias.
Hola! Que pasaría si tenemos K=4 y resulta que 2 elementos pertenecen a una clase y los otros dos a la segunda clase. A que clase correspondería el elemento que deseo clasificar? Gracias!
Hola, pertenecería a cualquiera de las dos clases, dado que tenemos un 50% de probabilidad de pertenecer a cualquiera de los dos, sin embargo el modelo de KNN haría un nuevo cálculo para modificar las distancias y ver si hay cambios en la asignación. Lo más conveniente sería probar ahora con K = 3 y K = 5
disculpa, que valor pusiste en el stop de la funcion mershgrid? por que no se ve la parte del stop =
El valor máximo del conjunto de datos, en la columna 0 y en la columna 1, pero mejor te paso ese fragmento del código:
from matplotlib.colors import ListedColormap
X_set, y_set = x_test, y_test
X1, X2 = np.meshgrid(np.arange(start = X_set[:, 0].min() - 1, stop = X_set[:, 0].max() + 1, step = 0.01),
np.arange(start = X_set[:, 1].min() - 1, stop = X_set[:, 1].max() + 1, step = 0.01))
plt.contourf(X1, X2, knn.predict(np.array([X1.ravel(), X2.ravel()]).T).reshape(X1.shape),
alpha = 0.75, cmap = ListedColormap(('red', 'green')))
plt.xlim(X1.min(), X1.max())
plt.ylim(X2.min(), X2.max())
for i, j in enumerate(np.unique(y_set)):
plt.scatter(X_set[y_set == j, 0], X_set[y_set == j, 1],
c = ListedColormap(('red', 'green'))(i), label = j)
plt.title('K-NN (Datos de Prueba)')
plt.xlabel('Edad')
plt.ylabel('Salario Estimado')
plt.legend()
plt.show()
Hola , podrias pasame el dataseet que utilizaste?:(
Hola, Si claro. Descárgalo en esta liga:
drive.google.com/file/d/17Eb2XNuR9byDl7W5H22AoE8CBLGUO4YS/view?usp=sharing
Amigo , deberias sacar un video de como hacer este mismo procedimiento de K Vecinos pero en R
ME parece interesante. Lo hago
porque el numero de vecinos eliges 5?
Hola Bryan, el valor de 5 lo use como estándar, que es el mínimo recomendado por el mismo modelo. Pero puedes hacer pruebas con números mayores, también va a depender de la distribución de tus datos.
Me puede ayudar con una tarea o me puede dar clases?
Hola, de que se trata?
@@jacobavilacamacho7644 justo de lo que explica KNN
@@jacobavilacamacho7644 tiene un correo?
@@pegazo1404881 jacobavila @ gmail.com
Listo, correo enviado
Muchisimos fallos...
Cómo? en que? dime más detalles para que podamos hacer algo
25 minutos para usar KNN de Sklearn, así que chiste. Pensé que desarrollaría el algoritmo.
Sorry, Es importante entender como funciona y aplicarlo de manera práctica para interpretar los resultados sin tener que implementar el algoritmo a mano.