@@jacobavilacamacho7644 perfecto! Quedo al pendiente de ese video. Aún soy estudiante y apenas cursé estadística multivariada, donde aprendí PCA en minitab. Conozco algunas técnicas para seleccionar el número de pca, pero me gustaría aprenderlo en python! Gracias por tu aporte!
hola lo que yo no entiendo es el conjunto debe de estar previamente clasificado?? tengo un conjunto de 500 documentos de wikipedia que ya preprocese y tengo una matriz de 1855 rows x 8482 columns con tf-idf y quiero aplicarle PCA pero como? los ejemplos que encuentro en internet usan el conjunto de vinos y flores pero estan pre clasificados, que necesito para que mi matriz de 1855 rows x 8482 columns quede como la de vinos y flores?? que me falta??? alguien me puede ayudar??? se lo agradecere mucho!!
Hola Ana Laura, no necesitas preclasificarlos, si lo único que quieres es disminuir la dimensión de esos 8,482 variables. Ya con la reducción de la dimensión podrías meterlos a un clustering para obtener los diversos clusters o grupos que existan y ya tener una clasificación. Pero no necesitas hacerlo antes del PCA
@@jacobavilacamacho7644 es que lei que PCA es usado para encontrar relaciones semanticas principalmente de tipo hiponimia e hiperonimia, y hasta ahora parece que ya logre aplicar PCA pero por medio de extracción de eigenvectors y eigenvalues que según la teoria de PCA en ello consiste pero para recuperar información textual sería por algún método de recuperación de información? Hay algún libro que pueda consultar que refleje este tipo de info?? Gracias!
@@alezas1102 Es correcto, si lo que buscas es reducir la dimensión lo mejor es con los vectores propios (eigenvectors) para no perder información o demasiada información en la nuevas variables. El PCA es no supervisado, por lo que, como te comentaba ayer, no necesitas clasificar antes, si utilizaras el LDA, entonces si. En cuanto a algún libro, este trae toda la teoría: sci-hub.se/link.springer.com/book/10.1007/b98835
hola de nuevo yo preguntando... cuando ya obtuviste eigenvectores y todo eso pero a partir de un texto plano no etiquetado como sabes que vector es de que termino? algún método o algoritmo que me pudieras aconsejar? para buscar e implementar? Gracias
Hola Ana Laura, con el esquema de PCA, ordenas los vectores de mayor a menor en base a sus eigenvalues y seleccionas los n primeros de acuerdo a la cantidad de variables que quieres tener finalmente
Prof una cuestion que no entendi : si estoy trabajando con un dataset que no tiene una columna de cluster definida , antes de hallar los componentes principales hay que hallar los clusters de cada registro y colocarlo como columna en el dataset original? fue lo que yo hice porque encontre del dataset de Wines pero sin la columna de a que grupo pertenece cada uno , por lo cual primero halle los clusters con KMeans de cada uno y lo coloque como columna, luego ahi si empece a seguir el codigo para hallar los PCA. y la matriz de confusion me ha dado resultados similares al de este video..
Estuvo excelente lo que hiciste. En realidad la columna de la categoría nos sirve en este ejemplo para que, después de reducir la dimensionalidad de las variables independientes, podamos comprobar, en este caso, con la regresión logística, a que clase pertenece y validar que aunque las variables ya no son las mismas que las originales, el modelo funciona.
Gracias! Muy buena explicación Solamente una duda. 🙂 En general, no existe problema o se deben tomar medidas de ajuste si , por ejemplo: Los vinos se segmentan en más de 3 categorías? Digamos, 50
Que tal Gabriel. En un caso así de bastantes categorías la clasificación se podría hacer con árboles de decisión. El PCA no tendría problema, por que es la reducción de la dimensión, serían las variables independientes las que se van a reducir, pero ya reducido, entonces habría que clasificar con algún método para esa cantidad de categorías, de hecho la regresión logística también podría utilizarse sin ningún ajuste adicional, no habría problema
Hola Adriana. Si se pueden usar los vectores y valores propios, de hecho el algoritmo ordena dichos vectores de acuerdo a su valor propio de mayor a menor y de ahí seleccionas la cantidad de vectores representativos y es lo que te da el número de componente, sin embargo, en este esquema, al utilizar la clase PCA de sklearn, estoy utilizando la formula que menciona la documentación: n_components == min(n_samples, n_features) - 1 dado que tenemos 3 características , es el valor mínimo entre las muestras y las características, menos 1, nos da 2 componentes. scikit-learn.org/stable/modules/generated/sklearn.decomposition.PCA.html
Excelente
Muchas gracias
Qué genial. Mejor explicado imposible.... Ojalá te animes a sacar una continuación
Muchas gracias Patrick, en eso ando, creando nuevo material. Saludos
Un muy buen aporte, me ayudaste mucho
Muchas gracias Jessica y que bueno saber que te es de utilidad
Excelente vídeo! Justo lo que estaba buscando. Gracias!!!
Saludos y bendiciones desde España! Sigue asi 💪
Hola Isabel, muchas gracias. Que bueno que te sirvió
Muy buen vídeo, Me aclaro muchas cosas
Muchas gracias Julian
Exelente video! Gran explicación! Estaría bueno que explicaras algún método para seleccionar un buen número de componentes principales.
Hola Luis, gracias por tu comentario. Si lo voy a realizar
@@jacobavilacamacho7644 perfecto! Quedo al pendiente de ese video. Aún soy estudiante y apenas cursé estadística multivariada, donde aprendí PCA en minitab. Conozco algunas técnicas para seleccionar el número de pca, pero me gustaría aprenderlo en python! Gracias por tu aporte!
hola lo que yo no entiendo es el conjunto debe de estar previamente clasificado?? tengo un conjunto de 500 documentos de wikipedia que ya preprocese y tengo una matriz de 1855 rows x 8482 columns con tf-idf y quiero aplicarle PCA pero como? los ejemplos que encuentro en internet usan el conjunto de vinos y flores pero estan pre clasificados, que necesito para que mi matriz de 1855 rows x 8482 columns quede como la de vinos y flores?? que me falta??? alguien me puede ayudar??? se lo agradecere mucho!!
Hola Ana Laura, no necesitas preclasificarlos, si lo único que quieres es disminuir la dimensión de esos 8,482 variables. Ya con la reducción de la dimensión podrías meterlos a un clustering para obtener los diversos clusters o grupos que existan y ya tener una clasificación. Pero no necesitas hacerlo antes del PCA
@@jacobavilacamacho7644 es que lei que PCA es usado para encontrar relaciones semanticas principalmente de tipo hiponimia e hiperonimia, y hasta ahora parece que ya logre aplicar PCA pero por medio de extracción de eigenvectors y eigenvalues que según la teoria de PCA en ello consiste pero para recuperar información textual sería por algún método de recuperación de información? Hay algún libro que pueda consultar que refleje este tipo de info?? Gracias!
@@alezas1102 Es correcto, si lo que buscas es reducir la dimensión lo mejor es con los vectores propios (eigenvectors) para no perder información o demasiada información en la nuevas variables. El PCA es no supervisado, por lo que, como te comentaba ayer, no necesitas clasificar antes, si utilizaras el LDA, entonces si.
En cuanto a algún libro, este trae toda la teoría:
sci-hub.se/link.springer.com/book/10.1007/b98835
@@jacobavilacamacho7644 MUCHISIMAS GRACIAS :)
hola de nuevo yo preguntando... cuando ya obtuviste eigenvectores y todo eso pero a partir de un texto plano no etiquetado como sabes que vector es de que termino? algún método o algoritmo que me pudieras aconsejar? para buscar e implementar? Gracias
Hola Ana Laura, con el esquema de PCA, ordenas los vectores de mayor a menor en base a sus eigenvalues y seleccionas los n primeros de acuerdo a la cantidad de variables que quieres tener finalmente
@@jacobavilacamacho7644 Muchas gracias, lo hare!!
Prof una cuestion que no entendi : si estoy trabajando con un dataset que no tiene una columna de cluster definida , antes de hallar los componentes principales hay que hallar los clusters de cada registro y colocarlo como columna en el dataset original?
fue lo que yo hice porque encontre del dataset de Wines pero sin la columna de a que grupo pertenece cada uno , por lo cual primero halle los clusters con KMeans de cada uno y lo coloque como columna, luego ahi si empece a seguir el codigo para hallar los PCA. y la matriz de confusion me ha dado resultados similares al de este video..
Estuvo excelente lo que hiciste. En realidad la columna de la categoría nos sirve en este ejemplo para que, después de reducir la dimensionalidad de las variables independientes, podamos comprobar, en este caso, con la regresión logística, a que clase pertenece y validar que aunque las variables ya no son las mismas que las originales, el modelo funciona.
@@jacobavilacamacho7644 me ha quedado claro , gracias Master
Gracias! Muy buena explicación
Solamente una duda. 🙂
En general, no existe problema o se deben tomar medidas de ajuste si , por ejemplo:
Los vinos se segmentan en más de 3 categorías? Digamos, 50
Que tal Gabriel. En un caso así de bastantes categorías la clasificación se podría hacer con árboles de decisión. El PCA no tendría problema, por que es la reducción de la dimensión, serían las variables independientes las que se van a reducir, pero ya reducido, entonces habría que clasificar con algún método para esa cantidad de categorías, de hecho la regresión logística también podría utilizarse sin ningún ajuste adicional, no habría problema
Hola!, buen video, tengo una duda ¿Por qué para escoger la cantidad de componentes no usas los vectores y valores propios?
Hola Adriana. Si se pueden usar los vectores y valores propios, de hecho el algoritmo ordena dichos vectores de acuerdo a su valor propio de mayor a menor y de ahí seleccionas la cantidad de vectores representativos y es lo que te da el número de componente, sin embargo, en este esquema, al utilizar la clase PCA de sklearn, estoy utilizando la formula que menciona la documentación: n_components == min(n_samples, n_features) - 1
dado que tenemos 3 características , es el valor mínimo entre las muestras y las características, menos 1, nos da 2 componentes.
scikit-learn.org/stable/modules/generated/sklearn.decomposition.PCA.html
El archivo de vinos, ¿dónde se encuentra?
Te dejo la liga para descargarlo
drive.google.com/open?id=1GeH8W1zFuq9XH2qaS66JJEXJh2QuO292