| Vocero |
Transcripción |
| Kira Alhorn |
Bien, bienvenidos a mi charla, Un recorrido por el Explorador de texto para comprender las necesidades de los clientes. Estoy muy contento de... |
| |
Estoy presente en esta Cumbre de Descubrimiento de JMP en formato virtual. Mi nombre es Kira Alhorn y soy estadística en WL Gore and Associates. |
| |
Y, antes de comenzar con la presentación propiamente dicha, me gustaría presentarles brevemente nuestra empresa. WL Gore and Associates es una empresa global de ciencia de materiales, estamos produciendo |
| |
Soluciones muy diferentes para industrias muy diferentes, desde la aeroespacial hasta los productos médicos y lo que quizás les resulte familiar a la mayoría de ustedes. |
| |
es nuestra marca Gore-tex. Así que en eso nos centraremos hoy, y la marca Gore-tex produce laminados de tejidos duraderos, impermeables y transpirables. |
| |
Estos laminados se venden a nuestros clientes o socios de marca que fabrican productos con ellos. Más concretamente, hoy nos centraremos en el calzado. |
| |
Este es un breve resumen de mi charla. Comenzaré con los antecedentes y la motivación. ¿Qué vamos a analizar? Analizaremos las descripciones de los zapatos y por qué nos interesan. |
| |
Después, el resto de la charla se realizará en JMP. Usaré JMP 15 Pro y les mostraré cómo usar el Explorador de texto. |
| |
para analizar las descripciones de nuestros zapatos. Cómo encontrar temas en esos textos, o en las descripciones de los zapatos, para que esos temas puedan usarse para encontrar descripciones de zapatos comunes o temas comunes en las descripciones de los zapatos y compararlos con las diferentes categorías de zapatos que tenemos. |
| |
Y finalmente, esta será solo una introducción muy breve, utilizamos algunos modelos predictivos para validar nuestros hallazgos y para obtener una visión más... obtendremos una visión más profunda de cómo las diferentes descripciones de zapatos categorizan los zapatos. |
| |
Así que imagínate tu propio armario y los zapatos que tienes en él. |
| |
Y cada uno de ustedes tendrá al menos una pequeña o bastante grande colección de zapatos diferentes en su armario, y la pregunta es, ¿por qué tienen tantos zapatos? |
| |
Y que tus zapatos tengan que ir acorde con tu estilo y que tal vez necesites diferentes colores, etc., esta no es la única razón por la que tienes zapatos diferentes. |
| |
La otra razón es que necesitas zapatos diferentes. Imagina que tienes un par de zapatillas para correr, varios pares de zapatos para uso casual y quizás botas de senderismo. |
| |
Y existen porque cada uno de los zapatos tiene características diferentes o ligeramente diferentes que hacen que este zapato sea utilizable para este uso final y usted requiere esas características para ese uso final. |
| |
Entonces, lo que nos preguntábamos es si, al analizar las descripciones de los zapatos de nuestros socios de marca, podríamos encontrar de alguna manera qué hace que cada zapato sea único. Así que aquí verán una colección. |
| |
de diferentes categorías de calzado que ahora nos corresponden para diferentes usos finales del calzado. |
| |
La pregunta ahora es: si un cliente quiere fabricar un nuevo calzado de senderismo, por ejemplo, ¿qué configuración de características deberíamos ofrecer en el laminado que vendemos para un calzado destinado a la práctica de senderismo? |
| |
¿Podrían esas descripciones de zapatos proporcionarnos un prototipo que podamos ofrecer a nuestros clientes? |
| |
Y, por supuesto, otro aspecto interesante es cómo se diferencian los distintos tipos de calzado. ¿Cuál es la diferencia entre una zapatilla de senderismo y una zapatilla de calle? ¿Por qué necesitamos esas diferencias? |
| |
Y esa era nuestra intención cuando comenzamos a analizar los datos. |
| |
Por lo tanto, me gustaría ir a JMP. |
| |
Y en JMP, primero quiero mostrarles cómo se ven los datos que hemos recopilado. |
| |
Lo que hicimos fue simplemente visitar las páginas web de nuestros socios de marca y recopilar las descripciones de los zapatos de esos paquetes. |
| |
Para cada categoría de calzado tenemos un cierto número de descripciones de zapatos y, como verán, simplemente copiamos la descripción completa en nuestra tabla de datos. |
| |
Esto puede ser bastante largo, puede ser bastante corto, pero no hicimos más que simplemente copiar. |
| |
Pero por otro lado, como puedes imaginar, con ese campo de texto no podemos hacer mucho. |
| |
O al menos parece que no podemos, porque JMP ofrece grandes posibilidades para lograrlo. ¿Y qué significa lograrlo? Queremos extraer información de ese texto extenso y dividirla en fragmentos más fáciles de digerir. |
| |
Y esos trozos digeribles |
| |
Se puede extraer usando el Explorador de texto. Así que quiero ir al Explorador de texto e insertar la descripción del zapato en las columnas de texto. |
| |
Y aquí hay muchas opciones. Esas opciones se incorporan a los algoritmos que procesan las descripciones de nuestros zapatos, o como las llamamos en el lenguaje de análisis de texto, los documentos de descripción. |
| |
Y esto consiste en dividir los documentos en fragmentos de información más pequeños, como ya mencioné, en porciones más fáciles de digerir. |
| |
Y lo que verán son fragmentos digeribles, a saber, tenemos esos términos, que son la unidad más pequeña de información, y tenemos esas frases que son términos que a menudo aparecen juntos y que podrían tener un significado si se combinan. |
| |
Así que aquí puedes ver el término más utilizado. |
| |
En todos los documentos, y por ende en todas las descripciones de calzado, aparece el término comodidad. |
| |
Lo primero que hicimos fue revisar todas las frases y analizarlas. ¿Hay alguna que tenga sentido? |
| |
Y la primera ya tiene sentido. Así que aquí vemos que los términos Gore y tex aparecen como términos individuales, pero por supuesto, tiene sentido que se analice el término Gore-tex y no Gore y tex. |
| |
Así que puedes añadir todas las frases que tengan sentido a la lista de términos. Añadimos la frase y, como verás, ahora tenemos el término Gore-tex en lugar del término único Gore. |
| |
Ese fue el primer paso de nuestro procesamiento de datos. El segundo paso fue verificar la lista de términos para ver si hay duplicados o |
| |
si hay algún término que no tenga sentido. Y JMP ya tiene un procesamiento realmente excelente, porque JMP ya excluye muchas palabras que no tienen sentido, como y, un, |
| |
o que no te dan ninguna información. Sin embargo, siempre quedarán algunos términos que no tienen sentido, como esta S, por ejemplo. |
| |
¿Qué harías con una S? ¿Qué te dice eso sobre un zapato? Así que tuvimos que revisar todos los términos, y si hay un término que no tiene sentido, lo llamamos palabra vacía, y lo editamos en la lista de palabras vacías para excluirlo del análisis. |
| |
Esa era una cosa. La otra cosa que mencioné fue que necesitamos verificar si hay duplicados y verán aquí, por ejemplo, que tenemos el término Gore-Tex. |
| |
y el término GTX. Y GTX es solo una abreviatura del término Gore-tex, así que no deberíamos analizarlos por separado, deberíamos combinarlos. |
| |
Entonces tienes la función Recodificar, que es prácticamente lo mismo que para las columnas, y esta es una gran herramienta para combinarlas. |
| |
??? datos. Así que aquí ves la función Recode, y las agrupo a ambas. |
| |
Y ahora verán que se trata de un único término (Gore-tex), y que de hecho es el término más frecuente en nuestros datos. |
| |
Entonces. |
| |
Empezamos con 4000 términos y, tras la limpieza, nos quedamos con solo 100. Como ven, nos quedan 100 términos con los que podemos realizar un análisis exhaustivo. Son muy útiles para comprender mejor la descripción de un zapato. |
| |
Así que puedes usar esa lista para ver cuáles son los términos más frecuentes, pero JMP también ofrece una herramienta de visualización muy sencilla. |
| |
Al hacer clic en el triángulo rojo, puedes añadir una nube de palabras. Esta nube te muestra, según el tamaño de la palabra, su frecuencia en todos los documentos, es decir, en todas las descripciones de calzado. Así, Gore-tex, comodidad y ligereza son los términos más comunes en las descripciones de calzado que hemos recopilado. |
| |
Pero tal vez recuerden que esto no es exactamente lo que nos preguntábamos, ¿verdad? Así que nos preguntábamos, ¿qué hay de los zapatos para diferentes usuarios finales? |
| |
Para ello, podemos añadir fácilmente el filtro de datos local y utilizar el uso final del calzado como filtro. Por ejemplo, podría interesarme saber cuáles son los términos más frecuentes en todas las descripciones de calzado de invierno para calle. |
| |
Y no es de extrañar que los términos invierno y cálido aparezcan con frecuencia en las descripciones de calzado de invierno para la calle. |
| |
Por otro lado, si tomamos como ejemplo las zapatillas de trail running, se observa un enfoque diferente. Estas no necesitan ser cálidas, pero sí transpirables, ligeras y ajustarse bien. |
| |
Estas nubes de palabras son muy, muy útiles para comprender mejor nuestra pregunta inicial: ¿qué describe la configuración de características de los diferentes tipos de zapatos? |
| |
Y no nos quedamos ahí. Queríamos ir un paso más allá. |
| |
Un paso más allá, si ya tienes todos tus datos preparados, ¿puedes modelar para encontrar este prototipo de configuraciones de zapatos? Para ello, JMP ofrece diferentes opciones, y nosotros optamos por la descomposición en valores singulares (SVD). |
| |
SVD está realizando un análisis de componentes principales de nuestra matriz de términos de documentos. |
| |
¿Y qué significa eso? Las matrices de términos del documento incluyen para cada documento, por lo que, para cada descripción de zapato, |
| |
la frecuencia de cada término. Por ejemplo, para la primera descripción del zapato, se contaría con qué frecuencia aparece el término Gore-tex, con qué frecuencia aparece el término comodidad, y así sucesivamente. Como pueden imaginar, se trata de una matriz enorme. |
| |
La idea ahora es, mediante el análisis de componentes principales, que reduce la dimensión de la matriz de términos del documento, obtener un mejor control de los datos. |
| |
Y, para poder visualizar mejor los datos. |
| |
Y, basándonos en esa reducción de dimensiones, ahora podemos realizar algunos modelos. ¿Y qué tipo de modelos nos interesan? Nos interesaba saber qué características definen un zapato para un uso final específico. |
| |
Para llegar a ese punto, analizamos si las descripciones de los zapatos contenían algún tema en particular. Y, de ser así, ¿corresponden esos temas a usos finales específicos? |
| |
En un mundo ideal, encontraríamos nueve temas en nuestros datos, y esos nueve temas representarían exactamente una categoría de calzado. Así, tendríamos una configuración prototipo o una configuración de características para cada zapato. |
| |
Veamos qué sucede si busco nueve temas. Haré clic aquí en el análisis de temas e ingresaré un 9, ya que me interesan nueve categorías diferentes de zapatos. |
| |
Y lo que obtengo entonces es una lista de temas con los términos que aparecen con frecuencia en esos temas. Por ejemplo, el tema uno incluye zapatos. |
| |
que incluyen en sus descripciones términos como superfit, textil, cálido, etc. Por lo tanto, mi primera impresión es que deben ser zapatos de calle o de invierno. |
| |
El tema dos, por ejemplo, consiste en descripciones de calzado que incluyen los términos cabaña, senderismo, varios días, etc., por lo que parece tratarse de calzado de senderismo. |
| |
Pero claro, como estadístico, no me conformo con dar solo una intuición. Realmente quiero saber a qué tema pertenece cada categoría de zapatos. Y para ello, estoy haciendo una distribución simple de las categorías de zapatos y añadiré aquí el filtro de datos local para mostrar solo |
| |
categorías |
| |
que son... |
| |
Mostrar únicamente los zapatos seleccionados. |
| |
¿Qué significa eso? ¿Cómo puedo usarlo? JMP ofrece aquí los gráficos de puntuaciones de temas y estos gráficos de puntuaciones de temas |
| |
Asigna un punto por cada descripción de zapato para cada tema. |
| |
Por lo tanto, cuanto mayor sea la puntuación en la descripción del zapato, más representativo será este zapato de ese tema en particular. |
| |
Entonces, lo que hago es, simplemente selecciono todos esos zapatos que tienen puntuaciones altas para el tema uno y veré en eso |
| |
El histograma muestra que se trata de zapatos de calle y de invierno. Así que, básicamente, mi intuición era correcta. Esos zapatos de tela, con tecnología Superfit, son los zapatos de calle y de invierno. |
| |
Y en el segundo tema, recuerden que esperábamos que fueran zapatos de senderismo. Como pueden ver en el histograma, se trata de zapatos de senderismo. |
| |
Y ahora puedes hacerlo para todos los temas, y lo he incluido en el diario. |
| |
Y verás algunas dificultades al hacer todo eso. Así que, al asignar una o más categorías de zapatos a cada tema, verás dos problemas. |
| |
El problema número uno, representado aquí, es que ciertas categorías de calzado, como el montañismo, no están representadas por un solo tema, sino por varios. |
| |
Y también observarás que esos temas se superponen, por lo que la palabra crampón, por ejemplo, aparece en ambos. |
| |
Lo que significa que parece que tenemos demasiados temas aquí. |
| |
Lo ideal sería tener un tema por categoría de calzado, y si vemos que hay temas que se superponen y corresponden a varias categorías, nueve parecen demasiados. |
| |
Pero esto por supuesto tiene que tener otro ???, así que si los zapatos de montañismo corresponden a más de un tema, tiene que haber temas que no sean tan claramente identificables. |
| |
Así que miren, por ejemplo, este tema número cinco. Y así, como los zapatos más representativos. Verán que es una colección enorme. |
| |
Existen zapatillas progresivas, zapatillas para correr en asfalto, zapatillas urbanas, etc. En general, son categorías que se superponen y no se diferencian entre sí. Entonces, ¿cuál es la diferencia entre una zapatilla para correr por senderos y una zapatilla para correr en asfalto? |
| |
O bien, pasemos al siguiente paso: ¿cuál es la diferencia entre correr por senderos y hacer senderismo? |
| |
Existen ciertas similitudes entre esos zapatos y, si existen esas similitudes, no se puede identificar claramente la configuración de características específica para esa categoría de zapatos. |
| |
Eso también es un aprendizaje muy valioso. Se trata, por supuesto, de gestionar tu cartera de diferentes laminados. Quieres saber si necesitas un laminado específico para ese uso final concreto o si es similar a otros laminados que ya tienes. |
| |
Así que lo que terminamos haciendo fue obtener una colección final de temas donde ninguno correspondiera a más de una categoría, y lo hicimos manualmente. Analizamos diferentes cantidades de temas y terminamos teniendo cinco. |
| |
Como verán, esos cinco temas corresponden a una cierta cantidad de categorías, pero veremos que no todas las categorías de calzado pueden estar representadas por ellas. |
| |
Así que tuvimos dos aprendizajes. El aprendizaje número uno fue que tenemos algunos prototipos de descripciones de zapatos para esos |
| |
categorías de calzado. Y por otro lado, todas las categorías de calzado no mencionadas aquí podrían no estar muy diferenciadas o podrían no tener esta única configuración. |
| |
en la descripción de sus zapatos. |
| |
Y esa era solo una de las opciones que ofrece Text Explorer. También hay otras, pero nos centramos en esta y funcionó bastante bien. |
| |
Y con esto, me gustaría dejar Text Explorer y ofrecerles una breve visión general de lo que podrían hacer con la matriz de términos del documento temático. |
| |
Aquí tengo el mismo conjunto de datos que antes, pero he exportado la matriz de términos del documento. Así que verás muchas columnas nuevas que se muestran para cada término. |
| |
la frecuencia de ese término en la descripción de un determinado zapato. |
| |
Y probamos con diferentes versiones, así que teníamos una matriz de términos de documentos que indicaba las frecuencias; teníamos otra que indicaba si estaba contenido o no; y así sucesivamente. Y al final nos quedamos con esa versión. |
| |
Aprovechando las funcionalidades de JMP Pro, creamos una columna de validación para dividir nuestro conjunto de datos en datos de entrenamiento, validación y prueba. Los datos de entrenamiento y validación se utilizan para entrenar nuestro modelo predictivo, y los datos de prueba se utilizan para realizar pruebas. |
| |
Y cuando hablamos de modelado predictivo, ¿cuál es nuestro objetivo aquí? Lo que hicimos antes fue una especie de técnica no supervisada porque |
| |
Antes solo buscábamos temas y luego los comparábamos con las categorías de zapatos. Ahora queremos ser un poco más proactivos, así que, teniendo la descripción del zapato, ¿podemos predecir una categoría de forma explícita? |
| |
Experimentamos con diferentes técnicas de modelado predictivo que ofrece JMP 15 Pro y terminamos con un bosque de remuestreo (bootstrap forest). Aquí solo quiero darles una idea de cómo podrían ser los resultados y para qué podríamos usarlos. |
| |
Así que verás los resultados en la matriz de confusión en el conjunto de datos de prueba, ¿cuál era la categoría, cierta descripción del zapato y qué predije usando mi bosque bootstrap? |
| |
Y, curiosamente, verás prácticamente los mismos resultados que vimos antes. Así que hay ciertas categorías que se pueden diferenciar claramente de otras, |
| |
Hay algunas que ya tienen una configuración de características única, y otras que no. Por ejemplo, fíjate en las zapatillas para correr en carretera. |
| |
Ya descubrimos en nuestro primer análisis que no están definidos de forma unívoca. Y veremos aquí también que, según predigo, muchas zapatillas que se anuncian como zapatillas para correr en carretera son, en realidad, otro tipo de calzado. |
| |
Esto confirma los hallazgos previos. Observamos que las categorías de calzado que se describieron con precisión mediante la técnica no supervisada también se describen con precisión aquí, y que aquellas que no se diferenciaron bien tampoco se diferencian significativamente en este caso. |
| |
Fue bastante interesante verlo, y hay muchas otras cosas que se podrían hacer ahora utilizando este análisis. Se podría hacer, por ejemplo, |
| |
Un análisis, ¿cuáles son... cuáles son los problemas más importantes cuando quiero diferenciar ciertos zapatos? Entonces, esa es la contribución de la columna: ¿qué términos contribuyen más a la hora de diferenciar categorías de zapatos? |
| |
O bien, podrías explorar con mayor detalle qué categorías de calzado pueden diferenciarse claramente y cuáles no, utilizando las curvas ROC. |
| |
Y por último, pero no menos importante, podrías usar este modelo para predicciones. Así que podrías ingresar aquí ciertas configuraciones de características o la descripción del zapato. |
| |
y luego predecir la probabilidad de que esta descripción pertenezca a una determinada categoría de calzado. En este caso, por ejemplo, predeciríamos que este calzado podría ser para correr en carretera. |
| |
Debido a la falta de tiempo, no entraré en más detalles, pero me gustaría resumir brevemente. Entonces, ¿cuáles fueron nuestros hallazgos clave? Los hallazgos clave fueron que |
| |
El Explorador de texto es una herramienta excelente, totalmente intuitiva, que permite extraer rápidamente información de datos de texto no estructurados. |
| |
¿Dónde se diferencian? ¿Dónde no? ¿Qué características se buscan en esos zapatos? Pero, de alguna manera, los resultados confirmaron lo que esperábamos. |
| |
Y esta confirmación, podríamos hacerla usando técnicas no supervisadas o una técnica supervisada, así que comparamos el análisis de temas, usando el SVD y el modelo predictivo aquí con un bosque bootstrap, y otros podrían funcionar igualmente bien. |
| |
Finalmente, me gustaría agradecer al grupo ??? que planteó ese problema. Recopilaron todos los datos y limpiaron todos los datos y tuvieron excelentes discusiones sobre |
| |
el sentido o la falta de sentido de las diferentes técnicas. Así que sin ellas, no habrías escuchado esa charla ahora. Y además, |
| |
Me gustaría agradecer a Jonas, un antiguo compañero de la Universidad Técnica de Dortmund, que me asesoró en el análisis de textos. |
| |
Finalmente, me gustaría agradecerles su atención y con gusto responderé cualquier pregunta, ya sea por correo electrónico o en la Comunidad de Usuarios de JMP. No duden en escribirme. |