Excelente video. Sin embargo, quiero recomendar un par de cositas en clustering: 1) La métrica WCSS mide la compactación global de todos los grupos o clusters. Sin embargo, esta métrica es poco eficiente para medir la separabilidad entre clusters, lo cual, representa una desventaja considerable. Otro problema de WCSS es que está basado en distancia Euclidiana, donde calcula la distancia entre los puntos que pertenecen a un cluster con partición dura con respecto al centroide de ese cluster, pero ignora que tan correlacionado está los puntos al centro. Por esta razón, desde el año 2010, se han propuesto mejoras del WCSS basado en correlación que permite medir la cantidad de superposición entre clusters. Lo anterior ayuda a mejorar el cálculo de la compactación entre clusters. 2) Es importante mencionar que el K-means es ineficiente para datos con más de 500.000 muestras (comprobado experimentalmente). Para esto, se ha propuesto el mini-batch K-means, que permite agrupar datos con gran cantidad de muestras. 3) Debes mencionar que K-means no es recomendable cuando los datos tiene outliers, debido a que el resultado del agrupamiento no suele ser representativo debido a la presencia de correlaciones intra-clase que afecta la separabilidad entre clusters. 4) Con solo usar WCSS no es suficiente para asegurar la calidad del agrupamiento de datos. En este caso, se requiere del uso de varias métricas de validación interna para clustering que permita asegurar el número apropiado de clusters. Lo anterior, se debe considerar para tener mayor seguridad de la elección del mejor modelo K-means. 5) Recomiendo explorar otras métricas como el índice de Dunn, el índice Davies-Boudin, etc...
Sugiero, además, hacer un video explicando las métricas de validación interna y externa en Clustering, considerando las ventajas y las limitantes de cada uno de ellos. Es importante explicar qué métricas son más eficientes para escenarios Big Data y cuáles no.
Hola de nuevo Javier! Sé que te contesté hace ya tiempo este comentario, pero quiero aprovecharlo para dar a conocer el video con la explicación más detallada que hice acerca de k-means profundizando en los puntos que me comentaste. Este se encuentra en m.th-cam.com/video/n98fnSEoRiM/w-d-xo.html. Una vez más, gracias por la retroalimentación ;)
@@RocioChavezCienciadeDatos Hola. Muchas gracias por compartir el enlace. Lo voy a mirar en la noche para ver que más ideas se me ocurre para aportar al tema del clustering.
yo pienso que para este caso en particular si es una buena solución, si obtienes un mejor resultado con otro método sería muy útil que nos pudieras compartir tu código en un colab notebook
Si te fue de utilidad este video y deseas ayudarme a seguir creando contenido, puedes hacerlo de varias formas: - Dando clic en "Me gusta" para incrementar la probabilidad de que el algoritmo de TH-cam promueva mi contenido - Dejándome un comentario - Suscribiéndote a mi canal - Compartiendo mi canal en tus redes sociales - Presionando el ícono "Gracias" y haciendo una donación
Hola José! Las variables no se corresponden directamente con las componentes. Estoy por crear un video explicando el Análisis de Componentes Principales para platicarles con detalle qué representan los componentes. Espero tenerlo listo muy pronto ;)
Es lo mas detallado y claro que vi en como implementar el algoritmo en Python, si bien creo que la mayoria se desenvuelve masomenos bien en ingles el que este en español es una gran ayuda para hacer foco en la explicacion y no pensar a la par en la correcta traduccion/interpretacion. Felicitaciones y muchas gracias por el gran aporte. Saludos.
Rocio , muchas gracias por darnos una explicación tan clara a personas como yo que recién comienzan en este fantástico mundo de Machine Learning y los modelos no Supervisados. Saludos desde Perú.
Eres una genia, me has salvado mi examen, adapte mi base de datos a tú video , tuve que dropear más datos pero al final todo resulto muy bien, muchas gracias por hacer más sencillo el aprendizaje del clustering :D
Thank you very much Rocio Chavez Ciencia de Datos. Though I don't understand your language, I understand the codes. It helped me a lot to complete my assignment.
Saludos y buena noche Rocio, en el video anterior de cluster jerárquico, no realizaste normalización, quisiera saber si fue por algún descuido, o porque las calificaciones de los estudiantes correspondían al mismo orden de magnitud, que eran números entre 0 y 10, saludos y gracias.
Para llevar a cabo el pre-procesamiento de tus datos y poder obtener información confiable en tus análisis, visita mi lista de reproducción llamada Pre-procesamiento de Datos en Python th-cam.com/play/PLUofJx5RUeFqAIVdzfnJayenwZFEGtCmg.html
@@rubendariojaramillo4246 Hola Rubén, En mi página web hay una pestaña llamada BLOG en la que están los videos organizados por temas. Mi página es rociochavezml.com Espero que esta información te sea de utilidad ;)
Muy buen video, muchas gracias por tu excelente explicación y sobre todo por tu paciencia. En mi proyecto personal aplico PCA en 2 componentes. Sin embargo, no tengo los datos separados por colores, están mezclados. No entiendo que estaría haciendo mal.
Excelente video!! .. Tengo una consulta, cuando pago la prueba PCA, tanto en la columna de cluster, componente 1 y componente 2, me aparecen valores basura (NaN). A que se debe esto? (Estoy trabajando con un dataset propio)
tus vídeos son muy buenos, muchas gracias (tengo una sugerencia, siempre mencionas lo de markdown y lo del encabezado creo que puedes obviarlo o dejar una referencia a otro vídeo explicando el tema)
Muchas gracias por la sugerencia, lo hago pensando en las personas que solamente vean uno de los videos para que lo puedan aplicar directamente y se animen a desarrollar código más fácilmente.
Gracias maestra! le comparto que estoy llevando un diplomado en Inteligencia artificial y usamos los mismos metodos pero con otro tipo de metricas en el PCA que en lo personal no entendi , y vi otro comentario por aca sobre la metrica WCSS, mi duda es la siguiente: Què material de apoyo o materia (estadistica, probabilidad, calculo, etc) me ayudarian a entender este tipo de metricas? En cuanto a codigo y su implementacion me quedo muy claro ahora con su explicacion. Gracias de nuevo y saludos!
Hola Diego! Estoy pensando ahondar mas en la explicación del PCA. Si me dices las métricas en el PCA que no entendiste, las podría incluir en mi próximo video acerca del tema
En cuanto al material de apoyo, el PCA tiene que ver con estadìstica. En esta pagina puedes encontrar mas información al respecto www.cienciadedatos.net/documentos/35_principal_component_analysis
Hola Rocio, muchas gracias por tu exlicacion tan clara. De verdad que se aprende contigo. Tengo una pregunta. Tienens algun video de como crear un indice utilicando PCA, mil gracias
Hola Rómulo! Todavía no he creado el video acerca de la creación del índice utilizando PCA. Solamente tengo todo lo correspondiente a la explicación matemática del PCA y algunos ejemplos de aplicación 🙂
Hola Rocío, buenísimo tu video. Muchísimas gracias por esta clara explicación! Tienes algún video en donde hables más a profundidad del análisis de componentes principales? Me parece que lo mencionas en alguna parte de este video. Saludos.
Hola Lupita! Gracias por tus palabras acerca del video. En el canal tengo varios videos con respecto al ACP, sólo que no he podido crear uno en el que explique como se calcula, pero sí hablo acerca algunas aplicaciones útiles ;)
Estimada, muchas gracias por su información, fue de mucha ayuda, pero tengo una consulta uno podria agregar condiciones al los cluster; ej que las demandas de los cluster sea parecida .
Muy bueno Rocío, muchas gracias por compartir... me enganche con tu explicación Rocío. Solo una consulta, que variables aportan a la clusterización de los vinos?
Hola, muy buena explicacion! Tenia dos dudas acerca del video que agradecería que pudieras responder, 1) Como consigo que al exportar la información de nuevo a formato .csv me salga cada columna separa? a mi me sale toda la información de manera continuada en una sola columna separada por comas. 2) Aunque sepamos que hay tres cluster claramente definidos como sabemos que información contiene cada cluster? en base a que están clasificados, que diferencia un cluster de otro? Gracias por tu tiempo.
Hola Diego! Acerca de tus dudas, me puedes enviar un mensaje a rociochavezmx@yahoo.com con el código que utilizaste para exportar tu información a csv y para explicarte como podrías obtener los centroides de cada cluster para que veas que es lo que caracteriza a cada uno, por favor?
Hola una consulta, supongamos que tengo un modelo como este en produccion explotado por un aplicativo, como hago para que al pasarle una etiqueta, me devuelva el cluster al cual pertenece una determinada etiqueta?, gracias
Muchas gracias por tu video profe. Yo tengo una duda, en el modelo que tu haces todas las variables son numéricas pero cómo sería en el caso de que tengamos variables con fechas o tipo string? Te gradecería mucho tu respuesta
Es necesario que trabajes en el pre_procesamiento de tus datos, con EDA (Exploratory Data Analysis) y (Feature engineering) para transformar tus datos sin procesar en características que se pueden usar para crear tu modelo predictivo usando ML. Así al final tendras una base de datos util para tu modelo.
en ese caso , lo que hice yo fue dropear todas las columnas que no me servian, con .drop y en el axis="columns" que te permite escribir el nombre de las columnas que quieres dropear en corchetes por ejemplo vinos_variables = vinos.drop(["nombre","edad","fecha_nacimiento"],axis="columns") para que así trabajes solo datos númericos.
Bien si eso te sirvió y no perdiste información valiosa, está bien. El riesgo de eliminar datos de filas I columnas, es que el modelo podría no ser tan eficiente si lo usas para predicaciones. Saludos.
hola en primer lugar me gustan muchos tus videos, pero tengo una duda cuando normalice un dataframe, me soltó 15 valores nulos, que antes no tenia, ahora al ejecutar el código para codo me arroja un error de valores nan o infinitos, que puedo hacer en este caso.
Muy bueno el video!. cómo pasamos a producción, a que se haga automático, imagino que es un python que lo haga todo, consu respectivo resultado, me comentas
Si quieres conocer mas acerca del método K-Means, puedes ver el video Clustering con K-Means. Explicación Matemática y Mucho más… th-cam.com/video/n98fnSEoRiM/w-d-xo.html
Rocio, excelente video, consulta realicé el ejercicio del video tal cual y al final los valores de los componente me dan exactamente igual a ti pero todos con signo contrario, por ejemplo para el primer registro componente 1=0.706336 y componente 2=0.253193 y así para cada uno de los registros, no entiendo si realicé algún paso mal o simplemente es un tema de interpretación ya que de todas formas los clúster son los mismos.
Muchas gracias Elias! Efectivamente, no hay problema si los signos son opuestos, lo importante es la formación de los clusters. Te recomiendo que veas la explicación matemática del algoritmo K-Means que tengo en mi canal
Extraordinario video me encanta, tengo una pregunta, el paquete que usas para graficar matplotPyt es gratuito y de código abierto o tiene costo? Está incluído en Anaconda? Gracias por este video y lo voy a compartir en mis redes sociales
@@RocioChavezCienciadeDatos muchas gracias por su respuesta y me parece excelente que todo sea opensource, yo prefiero usar Linux, tengo Lubuntu 19.10, gracias por este video y por contestar la pregunta saludos y que viva el código abierto!
En el caso que quisiera aplicar para datos con coordenadas X, Y, Z, y que estos coordenadas son la ubicación de muestras de Oro, cobre y plata, y otros elementos más, y quisiera agrupar tomando en cuenta que puntos están cerca, pero también que la media de esos datos sea similar osea de los grupos que se generen.
Hola Fredy, la media de los grupos que se generan vienen a ser los centroides. En el video "Clustering con K-Means. Explicación Matemática y Mucho más…" explico más acerca de éstos
Los centroides los puedes obtener agregando la línea de código clustering.cluster_centers_ después de haber aplicado el modelo k-means a los datos (min. 16:50 del video), es decir, de haber llevado a cabo la segmentación
Hola! Veo muy poco probable que el gráfico salga recto.. porque eso significaría que, en todas las corridas, la disminución del WCSS fuera exactamente igual a uno, ya que la disminución de la cantidad de clusters va de uno en uno.
Saludos Roció y que tan valido sería utilizar otro método de representación como un MDS o PCO para evitar la forma de herradura que suele originar el PCA. Gracias
Buen dia, una consulta, en el video veo que una vez realizas el kmeans, se lo aplicas a la data original, y es aqui que me salta la duda, he leido e investigado un poco, despues de esos aplicas una reduccion de dimensionalidad por PCA, entiendo para la facil visualizacion de los patrones en 2D, sin embargo encuentro, que primeramente lo que se deberia hacer es la reduccion de la dimensionalidad y luego si la clusterizacion, podrias por favor aclararme esa duda. Gracias
Hola Julián! Efectivamente, cuando se tienen muchas características, es preferible llevar a cabo la reducción de la dimensionalidad con el PCA antes de llevar a cabo el algoritmo, principalmente con la finalidad de reducir los tiempos de procesamiento y los recursos computacionales, o bien, de darnos una idea de cómo son nuestros datos para ver cuál técnica de clustering aplicar. En el video "Análisis de Componentes Principales | Explicación Matemática" platico un poco más al respecto
only integers, slices (`:`), ellipsis (`...`), numpy.newaxis (`None`) and integer or boolean arrays are valid indices , in the part of color_theme with np.array, help me pls
Hi, i was the same problem my friend. One solution is the use of the way that you normalized your data; You must normalized your data with 1-2 lines of code (very simple), search the code ! . Remember... A data normalized correctly is when the variance es igual 1 and the plus of the Main es 0.
Como se hace cuándo te dan dos valores de x y no tenes una variable y. Por ejemplo un cliente tiene 2 coordendas x1 y x2 donde x1 es lo primero q ve y x2 lo segundo q ve en la pagina web. Me podria orientar
Hola Elizabeth! Yo lo que haría sería manejarlo como dos clientes, por ejemplo, Juan1 y Juan2 para que no se repitan los individuos y después de llevar a cabo el clustering analizarlo con detalle con base en otras variables que tengas (por ejemplo el día o la hora de la visita a tu página) para saber qué es lo que podría estar influyendo en su cambio de intereses
Muchas gracias Rocio por tan magnifico video, pero tengo una pregunta, ya que se supone que no sabemos cuantos clusters queremos crear , porque razon le decimos al programa que cree 10 Clusters? , mi unica conclusion es que lo escribes de manera aleatoria y luego en el codo de jambu decides hasta que numero de clusters quieres llegar... Es esto correcto o me equivoco?
Hola Kevin! Así es, tu le puedes pedir que te calcule tantos clusters cómo filas tengas, sin embargo, es preferible comenzar con pocos clusters para no consumir muchos recursos y si ves que no se formó el codo, aumentas la cantidad de clusters a formar.
Hola Rubén! Puedes incluir este código después de que realizaste el K-Means. Al objeto en donde guardamos el resultado del K-Means lo llamamos "clustering" y los centroides están en cluster_centers_ del objeto clustering. Te los dá en órden centers = clustering.cluster_centers_ centers
Y como se sabe a que variable pertenece cada uno de los tres colores que arroja el PCA? como se interpreta este ejemplo en particular?. Muchas gracias y excelente vídeo :)
Hola Felipe! El cluster 0 se colorea de azul, el 1 de verde y el 2 de naranja, se sigue la secuencia que le diste a los colores en el objeto color_theme. En este ejemplo, los puntos que tienen valores negativos tanto en la componente principal 1 como en la dos pertenecen al cluster 1, por lo que se colorearon de verde
Hola profesora una duda....la optimizacion del modelo..durante la fase de entrenamiento, es que internamente el modelo se ajusta moviendo los centroides en funcion de disminuir la distancia intracluster y aumentar la distancia entre los grupos...es asi?
Hola Rubén! Efectivamente lo que se busca es reducir la distancia que hay entre los individuos dentro del cluster y que los clusters esten lo mas separado posible. En el video Clustering con K-Means. Explicación Matemática y Mucho más… th-cam.com/video/n98fnSEoRiM/w-d-xo.html Explico con un ejemplo matemático cómo es que funciona el algoritmo. Te recomiendo que lo veas ;)
@@RocioChavezCienciadeDatos muchisimas gracias profesora, solo una consulta mas...tienes algun video sobre clusterizacion mediante Gaussian Mixture Mode?, gracias...
Obtén el código de éste y todos mis videos en www.patreon.com/rociochavezcienciadedatos
La mejor explicación en español sobre cómo graficar el codo y los cluster , simplemente la mejor ❤
de las mejores explicaciones que he visto en muchos años programando
Por lejos el mejor canal de ciencia de Datos. Impecable su explicación y claridad.
Hola soy Cris rios de facebook. Viendo tus videos he aprendido mucho. Ya empece a trabajar como científico de datos para una empresa.
Muchas Felicidades Cris! Éxito en tu nuevo trabajo ;)
Tantos tutoriales en internet y este es el primero que de verdad explica desde el cero como hacer esto, mil y un gracias.
Este es el mejor video de programación que eh visto en mis 6 años de carrera , muchísimas gracias eres una genio.
Excelente video. Sin embargo, quiero recomendar un par de cositas en clustering: 1) La métrica WCSS mide la compactación global de todos los grupos o clusters. Sin embargo, esta métrica es poco eficiente para medir la separabilidad entre clusters, lo cual, representa una desventaja considerable. Otro problema de WCSS es que está basado en distancia Euclidiana, donde calcula la distancia entre los puntos que pertenecen a un cluster con partición dura con respecto al centroide de ese cluster, pero ignora que tan correlacionado está los puntos al centro. Por esta razón, desde el año 2010, se han propuesto mejoras del WCSS basado en correlación que permite medir la cantidad de superposición entre clusters. Lo anterior ayuda a mejorar el cálculo de la compactación entre clusters. 2) Es importante mencionar que el K-means es ineficiente para datos con más de 500.000 muestras (comprobado experimentalmente). Para esto, se ha propuesto el mini-batch K-means, que permite agrupar datos con gran cantidad de muestras. 3) Debes mencionar que K-means no es recomendable cuando los datos tiene outliers, debido a que el resultado del agrupamiento no suele ser representativo debido a la presencia de correlaciones intra-clase que afecta la separabilidad entre clusters. 4) Con solo usar WCSS no es suficiente para asegurar la calidad del agrupamiento de datos. En este caso, se requiere del uso de varias métricas de validación interna para clustering que permita asegurar el número apropiado de clusters. Lo anterior, se debe considerar para tener mayor seguridad de la elección del mejor modelo K-means. 5) Recomiendo explorar otras métricas como el índice de Dunn, el índice Davies-Boudin, etc...
Sugiero, además, hacer un video explicando las métricas de validación interna y externa en Clustering, considerando las ventajas y las limitantes de cada uno de ellos. Es importante explicar qué métricas son más eficientes para escenarios Big Data y cuáles no.
Muchas gracias por tus aportaciones Javier, las tomaré en cuenta para ir profundizando más en los siguientes videos ;)
Hola de nuevo Javier! Sé que te contesté hace ya tiempo este comentario, pero quiero aprovecharlo para dar a conocer el video con la explicación más detallada que hice acerca de k-means profundizando en los puntos que me comentaste. Este se encuentra en m.th-cam.com/video/n98fnSEoRiM/w-d-xo.html. Una vez más, gracias por la retroalimentación ;)
@@RocioChavezCienciadeDatos Hola. Muchas gracias por compartir el enlace. Lo voy a mirar en la noche para ver que más ideas se me ocurre para aportar al tema del clustering.
yo pienso que para este caso en particular si es una buena solución, si obtienes un mejor resultado con otro método sería muy útil que nos pudieras compartir tu código en un colab notebook
Si te fue de utilidad este video y deseas ayudarme a seguir creando contenido, puedes hacerlo de varias formas:
- Dando clic en "Me gusta" para incrementar la probabilidad de que el algoritmo de TH-cam promueva mi contenido
- Dejándome un comentario
- Suscribiéndote a mi canal
- Compartiendo mi canal en tus redes sociales
- Presionando el ícono "Gracias" y haciendo una donación
Gracias por el video y la explicación tiene algunos ejemplos aplicados a pesquerías?
Excelente explicación. Por favor me indicarías qué análisis realizar para saber qué tan bien predijo el modelo. El método metrics sirve para esto?
Gracias, me fue de utilidad para entender el método kmeans.
Muchas gracias por la información, tengo una consulta. Como puedo saber cual de todas las variables es el componente 1 y 2
Hola José! Las variables no se corresponden directamente con las componentes. Estoy por crear un video explicando el Análisis de Componentes Principales para platicarles con detalle qué representan los componentes. Espero tenerlo listo muy pronto ;)
Felicitaciones por la explicación paso a paso del método, realmente excelente, lo mejor que he visto hasta ahora, me aclaraste un millon de dudas
Maravillosa explicación. Dios bendiga tu inteligencia Rocío.
Es lo mas detallado y claro que vi en como implementar el algoritmo en Python, si bien creo que la mayoria se desenvuelve masomenos bien en ingles el que este en español es una gran ayuda para hacer foco en la explicacion y no pensar a la par en la correcta traduccion/interpretacion. Felicitaciones y muchas gracias por el gran aporte. Saludos.
Muchas gracias por tus palabras Ernesto! ;)
Espectacular explicación, y excelente voz.
Señora Rocío es una crack, mi profesor no me enseñó de la mejor manera. Pero usted es un pan de dios❤️
Estoy entrando a una materia de la maestría donde vamos a ver estos temas, y tus videos me serán súper utiles, muchas gracias una vez más.
Saludos
Hola Beto! Me da gusto que te sean de utilidad los videos. Éxito en tu maestría!! ;)
Rocio , muchas gracias por darnos una explicación tan clara a personas como yo que recién comienzan en este fantástico mundo de Machine Learning y los modelos no Supervisados. Saludos desde Perú.
Eres una genia, me has salvado mi examen, adapte mi base de datos a tú video , tuve que dropear más datos pero al final todo resulto muy bien, muchas gracias por hacer más sencillo el aprendizaje del clustering :D
Sigue compartiendo contenido Rocío, es muy interesante. Saludos!
Gracias por tus aportes, sinceramente son de muchísimo valor y además de como lo explicas, mil gracias. Ganaste un seguidor +
Thank you very much Rocio Chavez Ciencia de Datos.
Though I don't understand your language, I understand the codes. It helped me a lot to complete my assignment.
Me encanto, super bien explicado y en espanõl fue le éxito total! excelente trabajo
que maravilla de vídeo, me encanta como explicas todo paso a paso
Saludos y buena noche Rocio, en el video anterior de cluster jerárquico, no realizaste normalización, quisiera saber si fue por algún descuido, o porque las calificaciones de los estudiantes correspondían al mismo orden de magnitud, que eran números entre 0 y 10, saludos y gracias.
Hola! Fue porque ya no era necesario debido a que, como bien lo mencionas, todas las calificaciones se encuentran en la misma escala
Excelente tutorial Rocio!! Me ha servido mucho! Te lo agradezco enormemente! Un abrazo!!!
Como siempre Rocío excelente explicando..
Thanks!
Muchas gracias Cynthia! ;)
Excelente contenido, muy bien explicado. ¡Muchas gracias!
Muchas gracias! Se nota que sabe mucho. Me suscribo.
Wow! Súper detallado!
Muchas gracias por compartir tu conocimiento!
Muy buen video! Siempre explicado de una manera muy clara.
Cynthia! Muchas gracias ;)
que buen video me salvaste de un taller de business analyst en la universidad
Buena explicación, felicitaciones y gracias por compartir tus conocimientos.
Es un placer Mijael! ;)
Muchas gracias Doctora 👍🏼. Saludos desde Chile
Es un placer Marco. Saludos desde México!!! ;)
Muy buena explicación...Gracias por tan excelentes contribuciones..
Parabéns, sua didática é extremamente simples e ao mesmo tempo muito explicativa. Top.
Excelente! Principalmente como resolviste el hecho de que tengan muchas variables.
Excelente explicación justo estoy usando ese método para un proyecto muchas gracias me ayuda mucho!!!
Muchas gracias por el video, muy buena y clara explicación.
Excelente video y todo muy muy bien explicado. Muchas gracias
Para llevar a cabo el pre-procesamiento de tus datos y poder obtener información confiable en tus análisis, visita mi lista de reproducción llamada Pre-procesamiento de Datos en Python th-cam.com/play/PLUofJx5RUeFqAIVdzfnJayenwZFEGtCmg.html
Por favor deseo estudiar todos los videos de tu canal, recomiendas un orden? puedes hacer por favor un video sugiriendo el orden?
@@rubendariojaramillo4246 Hola Rubén, En mi página web hay una pestaña llamada BLOG en la que están los videos organizados por temas. Mi página es rociochavezml.com Espero que esta información te sea de utilidad ;)
Muy buen video, muchas gracias por tu excelente explicación y sobre todo por tu paciencia. En mi proyecto personal aplico PCA en 2 componentes. Sin embargo, no tengo los datos separados por colores, están mezclados. No entiendo que estaría haciendo mal.
Hola Tomas! Probablemente tu datos no sean separables linealmente
Excelente video. Muy bien explicado y ejemplificado. Me suscribo.
Muchas gracias por compartir!!! Excelente video!!!
Excelente video!! .. Tengo una consulta, cuando pago la prueba PCA, tanto en la columna de cluster, componente 1 y componente 2, me aparecen valores basura (NaN). A que se debe esto? (Estoy trabajando con un dataset propio)
Que excelente explicación y mayor aún la aportación!, muchísimas gracias.
Jorge Márquez Salguero es un placer! ;)
tus vídeos son muy buenos, muchas gracias (tengo una sugerencia, siempre mencionas lo de markdown y lo del encabezado creo que puedes obviarlo o dejar una referencia a otro vídeo explicando el tema)
Muchas gracias por la sugerencia, lo hago pensando en las personas que solamente vean uno de los videos para que lo puedan aplicar directamente y se animen a desarrollar código más fácilmente.
@@RocioChavezCienciadeDatos Gracias, favor siga explicando de la misma manera sin obviar, explica super bien.
Muchas gracias, muy buena explicación :D
¡Gracias! Fue una explicación muy clara.
Excelente aporte este video, todo muy claro :)
Muchas gracias por compartir tus conocimientos, saludos
Gustavo Escaff es un placer ;)
Excelente caso de uso!
Gracias Rocio , una pregunta , se puede tambien hacer Kmeans con datos que tienen coordenadas XYZ osea datos espaciales, de ser asi como se haria
Muy buen video y eres muy buena explicando, muchas gracias
Gracias maestra! le comparto que estoy llevando un diplomado en Inteligencia artificial y usamos los mismos metodos pero con otro tipo de metricas en el PCA que en lo personal no entendi , y vi otro comentario por aca sobre la metrica WCSS, mi duda es la siguiente:
Què material de apoyo o materia (estadistica, probabilidad, calculo, etc) me ayudarian a entender este tipo de metricas?
En cuanto a codigo y su implementacion me quedo muy claro ahora con su explicacion. Gracias de nuevo y saludos!
Hola Diego! Estoy pensando ahondar mas en la explicación del PCA. Si me dices las métricas en el PCA que no entendiste, las podría incluir en mi próximo video acerca del tema
En cuanto al material de apoyo, el PCA tiene que ver con estadìstica. En esta pagina puedes encontrar mas información al respecto www.cienciadedatos.net/documentos/35_principal_component_analysis
Excelente tutorial, muy bien explicado, muchas gracias
Hola Rocio, muchas gracias por tu exlicacion tan clara. De verdad que se aprende contigo. Tengo una pregunta. Tienens algun video de como crear un indice utilicando PCA, mil gracias
Hola Rómulo! Todavía no he creado el video acerca de la creación del índice utilizando PCA. Solamente tengo todo lo correspondiente a la explicación matemática del PCA y algunos ejemplos de aplicación 🙂
Hermoso, bello tutorial 👏👏👏👏👏
Si estás interesado en adquirir alguno de mis cursos en línea, vista mi página web rociochavezml.com/cursos-en-linea/ ;)
Hola Rocío, buenísimo tu video. Muchísimas gracias por esta clara explicación!
Tienes algún video en donde hables más a profundidad del análisis de componentes principales? Me parece que lo mencionas en alguna parte de este video. Saludos.
Hola Lupita! Gracias por tus palabras acerca del video. En el canal tengo varios videos con respecto al ACP, sólo que no he podido crear uno en el que explique como se calcula, pero sí hablo acerca algunas aplicaciones útiles ;)
Buenísimo video!
Estimada, muchas gracias por su información, fue de mucha ayuda, pero tengo una consulta uno podria agregar condiciones al los cluster; ej que las demandas de los cluster sea parecida .
Muchas gracias por el gran aporte, creo que faltó revisar el tema de centroides
hola, porque pones en el bucle for range(1,11); ?????
Muy bueno Rocío, muchas gracias por compartir... me enganche con tu explicación Rocío. Solo una consulta, que variables aportan a la clusterización de los vinos?
Hola Jean! Para responder a tu pregunta habría que ver cuales son los centroides, es decir, los valores promedio de las variables de cada cluster
Como puedo saber que variables a considerado como component
es principales
Hola, muy buena explicacion!
Tenia dos dudas acerca del video que agradecería que pudieras responder,
1) Como consigo que al exportar la información de nuevo a formato .csv me salga cada columna separa? a mi me sale toda la información de manera continuada en una sola columna separada por comas.
2) Aunque sepamos que hay tres cluster claramente definidos como sabemos que información contiene cada cluster? en base a que están clasificados, que diferencia un cluster de otro?
Gracias por tu tiempo.
Hola Diego! Acerca de tus dudas, me puedes enviar un mensaje a rociochavezmx@yahoo.com con el código que utilizaste para exportar tu información a csv y para explicarte como podrías obtener los centroides de cada cluster para que veas que es lo que caracteriza a cada uno, por favor?
Excelente contribucion, gracias espero igual compartir c
Muchas gracias por compartir Nilton! ;)
Este video es oro! gracias!
Muito obrigado, este vídeo me ajudou bastante.
Parabéns a explicação está clara.
Muchas gracias 👏🏿👏🏿👏🏿👏🏿
É um prazer Macaio! ;)
Hola una consulta, supongamos que tengo un modelo como este en produccion explotado por un aplicativo, como hago para que al pasarle una etiqueta, me devuelva el cluster al cual pertenece una determinada etiqueta?, gracias
Muchas gracias por tu video profe. Yo tengo una duda, en el modelo que tu haces todas las variables son numéricas pero cómo sería en el caso de que tengamos variables con fechas o tipo string? Te gradecería mucho tu respuesta
Es necesario que trabajes en el pre_procesamiento de tus datos, con EDA (Exploratory Data Analysis) y (Feature engineering) para transformar tus datos sin procesar en características que se pueden usar para crear tu modelo predictivo usando ML. Así al final tendras una base de datos util para tu modelo.
en ese caso , lo que hice yo fue dropear todas las columnas que no me servian, con .drop y en el axis="columns" que te permite escribir el nombre de las columnas que quieres dropear en corchetes por ejemplo vinos_variables = vinos.drop(["nombre","edad","fecha_nacimiento"],axis="columns") para que así trabajes solo datos númericos.
Bien si eso te sirvió y no perdiste información valiosa, está bien. El riesgo de eliminar datos de filas I columnas, es que el modelo podría no ser tan eficiente si lo usas para predicaciones. Saludos.
hola en primer lugar me gustan muchos tus videos, pero tengo una duda cuando normalice un dataframe, me soltó 15 valores nulos, que antes no tenia, ahora al ejecutar el código para codo me arroja un error de valores nan o infinitos, que puedo hacer en este caso.
simplemente hermoso, gracias full ayuda
Cómo puedo interpretar el componente 1 y 2 respecto a mis variables iniciales? quisiera ver qué regla siguen
Muy bueno el video!. cómo pasamos a producción, a que se haga automático, imagino que es un python que lo haga todo, consu respectivo resultado, me comentas
Explicação mais que perfeita. Obrigado.
Excelente video
Si quieres conocer mas acerca del método K-Means, puedes ver el video Clustering con K-Means. Explicación Matemática y Mucho más… th-cam.com/video/n98fnSEoRiM/w-d-xo.html
Rocio, excelente video, consulta realicé el ejercicio del video tal cual y al final los valores de los componente me dan exactamente igual a ti pero todos con signo contrario, por ejemplo para el primer registro componente 1=0.706336 y componente 2=0.253193 y así para cada uno de los registros, no entiendo si realicé algún paso mal o simplemente es un tema de interpretación ya que de todas formas los clúster son los mismos.
Muchas gracias Elias! Efectivamente, no hay problema si los signos son opuestos, lo importante es la formación de los clusters. Te recomiendo que veas la explicación matemática del algoritmo K-Means que tengo en mi canal
increible tutorial
Excelente video.
excelente, una pregunta el pago mensual tiene alguna clausula por un año o 3 meses o algo por el estilo, o pago los meses que quiero estar
gracias
Hola! Te refieres a patreon, verdad? Es pago por mes. Si requieres solamente un mes, cancelas antes de que se llegue el siguiente cobro :)
Extraordinario video me encanta, tengo una pregunta, el paquete que usas para graficar matplotPyt es gratuito y de código abierto o tiene costo? Está incluído en Anaconda?
Gracias por este video y lo voy a compartir en mis redes sociales
Hola Adalberto! Todos los paquetes están en Anaconda. Yo tengo instalada la versión 2019.10 para Windows. Gracias por compartir ;)
@@RocioChavezCienciadeDatos muchas gracias por su respuesta y me parece excelente que todo sea opensource, yo prefiero usar Linux, tengo Lubuntu 19.10, gracias por este video y por contestar la pregunta saludos y que viva el código abierto!
Genial video, muchas gracias.
En el caso que quisiera aplicar para datos con coordenadas X, Y, Z, y que estos coordenadas son la ubicación de muestras de Oro, cobre y plata, y otros elementos más, y quisiera agrupar tomando en cuenta que puntos están cerca, pero también que la media de esos datos sea similar osea de los grupos que se generen.
Hola Fredy, la media de los grupos que se generan vienen a ser los centroides. En el video "Clustering con K-Means. Explicación Matemática y Mucho más…" explico más acerca de éstos
Los centroides los puedes obtener agregando la línea de código clustering.cluster_centers_ después de haber aplicado el modelo k-means a los datos (min. 16:50 del video), es decir, de haber llevado a cabo la segmentación
increíble video :)
Saludos Rocio, que pasa si en el grafico del codo de jambu es recto???
Hola! Veo muy poco probable que el gráfico salga recto.. porque eso significaría que, en todas las corridas, la disminución del WCSS fuera exactamente igual a uno, ya que la disminución de la cantidad de clusters va de uno en uno.
@@RocioChavezCienciadeDatos me ha pasado!, Que se tiene que hacer en ese caso?
@@Jeff-dx6zt Por favor envíame un correo a rociochavezmx@yahoo.com y con gusto lo revisamos ;)
@@RocioChavezCienciadeDatos ya se lo mande!
@@lulo5920 Muchas gracias. Lo reviso ;)
Saludos Roció y que tan valido sería utilizar otro método de representación como un MDS o PCO para evitar la forma de herradura que suele originar el PCA. Gracias
Hola César! No conozco los métodos que me mencionas, por lo que no sabría decirte :(
muchísimas gracias
Buen dia, una consulta, en el video veo que una vez realizas el kmeans, se lo aplicas a la data original, y es aqui que me salta la duda, he leido e investigado un poco, despues de esos aplicas una reduccion de dimensionalidad por PCA, entiendo para la facil visualizacion de los patrones en 2D, sin embargo encuentro, que primeramente lo que se deberia hacer es la reduccion de la dimensionalidad y luego si la clusterizacion, podrias por favor aclararme esa duda. Gracias
Hola Julián! Efectivamente, cuando se tienen muchas características, es preferible llevar a cabo la reducción de la dimensionalidad con el PCA antes de llevar a cabo el algoritmo, principalmente con la finalidad de reducir los tiempos de procesamiento y los recursos computacionales, o bien, de darnos una idea de cómo son nuestros datos para ver cuál técnica de clustering aplicar. En el video "Análisis de Componentes Principales | Explicación Matemática" platico un poco más al respecto
only integers, slices (`:`), ellipsis (`...`), numpy.newaxis (`None`) and integer or boolean arrays are valid indices , in the part of color_theme with np.array, help me pls
Hi, i was the same problem my friend. One solution is the use of the way that you normalized your data; You must normalized your data with 1-2 lines of code (very simple), search the code ! . Remember... A data normalized correctly is when the variance es igual 1 and the plus of the Main es 0.
Como se hace cuándo te dan dos valores de x y no tenes una variable y. Por ejemplo un cliente tiene 2 coordendas x1 y x2 donde x1 es lo primero q ve y x2 lo segundo q ve en la pagina web. Me podria orientar
Hola Elizabeth! Yo lo que haría sería manejarlo como dos clientes, por ejemplo, Juan1 y Juan2 para que no se repitan los individuos y después de llevar a cabo el clustering analizarlo con detalle con base en otras variables que tengas (por ejemplo el día o la hora de la visita a tu página) para saber qué es lo que podría estar influyendo en su cambio de intereses
Excelente video
Podría agregar la explicación de como observar los centroides de cada Cluster?
Muchas gracias Rocio por tan magnifico video, pero tengo una pregunta, ya que se supone que no sabemos cuantos clusters queremos crear , porque razon le decimos al programa que cree 10 Clusters? , mi unica conclusion es que lo escribes de manera aleatoria y luego en el codo de jambu decides hasta que numero de clusters quieres llegar... Es esto correcto o me equivoco?
Hola Kevin! Así es, tu le puedes pedir que te calcule tantos clusters cómo filas tengas, sin embargo, es preferible comenzar con pocos clusters para no consumir muchos recursos y si ves que no se formó el codo, aumentas la cantidad de clusters a formar.
Hola profesora, como puedes calcular las distancias medias de cada cluster?, gracias...
Hola Rubén! Puedes incluir este código después de que realizaste el K-Means. Al objeto en donde guardamos el resultado del K-Means lo llamamos "clustering" y los centroides están en cluster_centers_ del objeto clustering. Te los dá en órden
centers = clustering.cluster_centers_
centers
Hola Profesora, una consulta, como puedo calcular el centroide de cada cluster?
Saludos :)
Hola Kevin! Puedes obtenerlos con clustering.cluster_centers_ de la misma manera que se obtuvieron las etiquetas correspondientes a los clusters
Y como se sabe a que variable pertenece cada uno de los tres colores que arroja el PCA? como se interpreta este ejemplo en particular?. Muchas gracias y excelente vídeo :)
Hola Felipe! El cluster 0 se colorea de azul, el 1 de verde y el 2 de naranja, se sigue la secuencia que le diste a los colores en el objeto color_theme. En este ejemplo, los puntos que tienen valores negativos tanto en la componente principal 1 como en la dos pertenecen al cluster 1, por lo que se colorearon de verde
Bien explicado! :)
Hola profesora una duda....la optimizacion del modelo..durante la fase de entrenamiento, es que internamente el modelo se ajusta moviendo los centroides en funcion de disminuir la distancia intracluster y aumentar la distancia entre los grupos...es asi?
Hola Rubén! Efectivamente lo que se busca es reducir la distancia que hay entre los individuos dentro del cluster y que los clusters esten lo mas separado posible. En el video Clustering con K-Means. Explicación Matemática y Mucho más… th-cam.com/video/n98fnSEoRiM/w-d-xo.html Explico con un ejemplo matemático cómo es que funciona el algoritmo. Te recomiendo que lo veas ;)
@@RocioChavezCienciadeDatos muchisimas gracias profesora, solo una consulta mas...tienes algun video sobre clusterizacion mediante Gaussian Mixture Mode?, gracias...
@@rubengarcia-xt9qe Todavía no.. Espero retomar pronto la creación de videos de machine learning y hablar también acerca del tema ;)
Muchas gracias!