| Vocero |
Transcripción |
| Clay Barker |
Gracias, mi nombre es Clay Barker. Soy desarrollador estadístico en el grupo JMP y hoy les hablaré sobre una nueva función de JMP Pro 16. Se llama selección de términos y he trabajado en ella con mis colegas Paris Faison y Ernest Pasour. |
| |
Por lo tanto, los datos de texto son cada vez más comunes en la práctica. Podemos tener reseñas de clientes sobre un producto que fabricamos, descripciones de algunos eventos o registros de mantenimiento de algunos de nuestros equipos. |
| |
Y en este ejemplo de aquí en mis diapositivas, esto es de la |
| |
Incidentes aéreos...conjunto de datos de incidentes que tenemos en datos de muestra. |
| |
Y cada fila de datos describe algún incidente aéreo, un accidente u otro tipo de mal funcionamiento. |
| |
Si nunca has utilizado la plataforma Text Explorer, te contamos que se introdujo en JMP 13 y que la utilizamos principalmente para resumir y analizar datos de texto. |
| |
Así, facilita tareas comunes como analizar las palabras y frases más frecuentes, y también simplifica acciones como agrupar documentos o buscar temas, como el análisis temático. Todo ello se basa en la matriz de términos del documento. |
| |
¿Qué es, entonces, la matriz de términos del documento? Lo más sencillo es pensar en ella como una matriz de variables indicadoras que señalan si cada documento incluye o no una palabra o frase en particular. |
| |
Y podemos ponderar eso según la frecuencia con la que aparece la palabra en cada documento. Así, cada documento es una fila en nuestra matriz de términos de documentos y cada columna es una palabra. |
| |
Entonces, para un ejemplo muy simple, la primera línea es "el empaque de la pizza fue frustrante". Entonces tenemos un 1 para el empaque, |
| |
Un 1 para pizza, un 1 para frustrante y un 0 para todas las demás palabras. De igual modo, en la segunda línea, tenemos un 1 para olor, genial, sabor y pizza, y ceros en el resto. Es simplemente un resumen de las palabras que aparecen en cada documento. |
| |
También he mencionado que hay un par de variaciones de la matriz de términos del documento. La más sencilla es la binaria; solo son unos y ceros. |
| |
Pero quizás queramos incluir información sobre la frecuencia con la que aparece cada palabra, así que aquí hay otra oración un poco más larga donde aparece "pizza" varias veces. |
| |
En la matriz binaria de términos de documentos, la columna de la pizza sigue siendo un 1 porque no nos importa con qué frecuencia aparece. Para el sistema ternario es un 2, porque el sistema ternario se compone de ceros, unos y doses. Es 0 si la palabra no aparece, es 1 si aparece una vez y es 2 si aparece más de una vez. |
| |
Independientemente de si aparece cuatro veces aquí, lo codificamos como un 2. Y la frecuencia es muy sencilla: es simplemente el número de veces que aparece cada palabra en ese documento. |
| |
Esos son tres muy sencillos, también ofrecemos ponderación TF-IDF, que es algo así como una frecuencia relativa, pero puede obtener más información sobre estos esquemas de ponderación en |
| |
Plataforma de exploración de texto. |
| |
¿Cuál es el siguiente paso? ¿Qué es lo siguiente que podrías querer usar? |
| |
Quizás quieras usar el texto para ayudarte a obtener algún resultado. Aquí he creado algunas reseñas de muebles, y cada reseña tiene una calificación de estrellas, ¿de acuerdo? |
| |
Entonces podríamos pensar que esas reseñas nos dan algunas pistas sobre por qué alguien calificaría un producto más alto o más bajo. Así que en esta primera línea, "las instrucciones fueron frustrantes" y el usuario solo nos calificó con un 3. Si eso... si ese patrón se repite mucho y mucha gente califica... |
| |
Muchas de las valoraciones bajas están relacionadas con las instrucciones, lo que podría indicarnos que debemos mejorar las instrucciones que incluimos con nuestros muebles. |
| |
Entonces, la idea simple es usar esos como un modelo de regresión. Vamos a... vamos a tomar nuestra matriz de términos de documentos, |
| |
Vamos a combinarlo con nuestra información de respuesta y simplemente vamos a realizar una regresión. |
| |
Y eso nos ayudará a comprender por qué a los clientes les gustan o no les gustan nuestros muebles, o cualquier otro producto que estemos fabricando. |
| |
Puede ayudarnos a clasificar objetos, basándonos en las descripciones, veremos algo de eso más adelante, o tal vez queramos entender por qué algunas máquinas fallan o no, basándonos en algunos de sus registros de mantenimiento. |
| |
Y la forma en que lo hacemos es realmente sencilla. |
| |
En realidad, solo estamos creando un modelo de regresión, donde cada una de nuestras X, o nuestras variables predictoras, es una de las columnas de la matriz de términos. Entonces, si estamos modelando calificaciones de productos, eso es una regresión lineal simple y si estamos |
| |
Si estamos modelando un resultado binario, como si un cliente recomendaría o no nuestro producto |
| |
Podría tener cientos de palabras y sería lógico no usarlas todas. No todos los datos serán útiles, así que aplicaremos una técnica de selección de variables a nuestro modelo de regresión y obtendremos un modelo más simple, fácil de interpretar y que se ajuste bien a los datos. |
| |
Y aquí, en la parte inferior, es fácil visualizar la combinación de esas variables indicadoras con nuestra calificación de respuesta, nuestra calificación por estrellas. |
| |
Nuestra solución, que estará disponible en JMP 16, consiste en integrar modelos de regresión en la plataforma Text Explorer. Si alguna vez ha utilizado la plataforma de regresión generalizada para la selección de variables, básicamente estamos incorporando esa plataforma dentro de Text Explorer. |
| |
Si tienes JMP Pro, verás la opción de selección de términos en el menú triangular rojo del Explorador de texto. |
| |
Esto es lo que realmente nos entusiasma. Permite crear y perfeccionar este tipo de modelos de regresión de forma fácil y rápida. |
| |
Entonces, cuando lancen esta plataforma, y veremos algunas demostraciones en un minuto, pero rápidamente, |
| |
Al comienzo del lanzamiento, simplemente se solicita información sobre nuestra respuesta y el tipo de modelo que queríamos adoptar. |
| |
Por lo tanto, puede manejar respuestas continuas, como una calificación por estrellas, y cuando se especifica una respuesta continua, proporciona un filtro para que pueda filtrar algunas de las filas, según la respuesta. |
| |
Y cuando tenemos una columna de respuesta nominal, seleccionamos el nivel objetivo. En este caso, ¿recomendaría nuestro producto, sí o no? Vamos a modelar... |
| |
Vamos a modelar la recomendación igual a no. |
| |
Y si tenemos una respuesta de varios niveles como azul, verde, amarillo, seleccionaremos el nivel que queremos modelar y veremos un ejemplo de esto en un minuto. |
| |
Luego, después de que especifiques la respuesta, le daremos a la plataforma información sobre el tipo de modelo que queremos ajustar. |
| |
Entonces, al seleccionar las variables, ¿utilizaremos la técnica de red elástica o la de lasso? Ambas son técnicas de selección de variables integradas en la regresión generalizada. ¿Y cómo realizaremos la validación? ¿Usaremos el AIC o el BIC? |
| |
Además, podemos especificar detalles sobre nuestra matriz de términos del documento. Podemos seleccionar la ponderación y también el número máximo de términos que queremos considerar. Por ejemplo, si queremos considerar las 200 palabras más frecuentes, actualmente está configurado en 200. |
| |
¿Qué sucede entonces cuando lo ejecutas y presionas el botón de ejecutar? Básicamente hace todo. |
| |
lo que necesitas hacer. Configura los datos correctamente en segundo plano para que no tengas que preocuparte por ello. Realiza la selección de variables, por lo que ahora tenemos un pequeño subconjunto de palabras que creemos que son útiles para predecir nuestra respuesta, y presenta los resultados de una manera sencilla. |
| |
para interpretar el informe, y es bastante interactivo, como veremos en un momento. Así que antes podías hacerlo de esta manera |
| |
guardar la matriz de términos del documento en su conjunto de datos, lanzar usted mismo una plataforma de regresión generalizada, |
| |
pero ya no tienes que hacer eso. Ahora todo se reduce a la selección. |
| |
Entonces, con respecto a las especificaciones del modelo, ¿cómo sabemos qué, cómo sabemos qué seleccionar? |
| |
Los métodos de estimación disponibles son la red elástica y el lasso. La forma fácil de recordar la diferencia entre ellos es |
| |
es que la red elástica tiende a seleccionar grupos de predictores correlacionados. Entonces, en este contexto, cuando todos nuestros predictores son palabras, |
| |
eso significa que tenderá a seleccionar grupos de palabras que tienden a aparecer juntas. Entonces, si piensas en instrucciones y manuales, |
| |
Esas palabras aparecen juntas con frecuencia debido a los manuales de instrucciones. Por lo tanto, esos dos predictores estarían altamente correlacionados y la red elástica probablemente seleccionaría ambos, mientras que el lasso probablemente seleccionaría instrucción o manual, pero no necesariamente ambos. |
| |
Como métodos de validación, tenemos el AIC y el BIC. |
| |
Entonces, la regla general es que el AIC tiende a sobreseleccionar modelos y el BIC tiende a subseleccionar. Entonces, en nuestras especificaciones, |
| |
Simplemente, el AIC tenderá a seleccionar un conjunto de palabras más grande, mientras que el BIC seleccionará un conjunto de palabras más pequeño. |
| |
Y personalmente tiendo a usar mucho el AIC en este contexto porque prefiero tener más palabras de las necesarias que menos, pero realmente eso es una cuestión de preferencia. |
| |
Y la ponderación de los términos del documento... |
| |
Me refiero al término "ponderación matricial" del documento. |
| |
Realmente depende de tu problema. Entonces, en este ejemplo, |
| |
La palabra "pintura" aparece varias veces en la reseña. Eso podría significar que el crítico fue muy... |
| |
tomó...la pintura era muy importante para ese crítico y eso puede ser significativo en nuestro modelo de regresión, por lo que querríamos usar una ponderación como frecuencia en lugar de binaria. |
| |
Entonces, una vez que inicie la selección de términos, terminará en un lugar como este, donde tenemos |
| |
Un resumen de todos los documentos a la izquierda y todas las palabras que hemos seleccionado a la derecha. Por ahora, no entraré en detalles; será más fácil de ver cuando empecemos con la demostración. |
| |
Otra función que consideramos muy útil es el resumen, que permite seleccionar términos para ajustar una secuencia de modelos. Todos los resultados se resumen en la parte superior y se puede alternar entre ellos fácilmente. Lo veremos en breve. |
| |
Así que echemos un vistazo a la plataforma. |
| |
Así que primero vamos a echar un vistazo a esto |
| |
Conjunto de datos de incidentes aéreos que se encuentra en la carpeta de datos de muestra de JMP. |
| |
Cada fila de nuestra tabla representa un incidente. Sabemos la magnitud de los daños sufridos por la aeronave, el tipo de lesiones y contamos con una descripción. Por lo tanto, la última columna describe con precisión lo ocurrido en el incidente. |
| |
Vamos a abrir el Explorador de texto, y si nunca lo has usado antes, a la izquierda tenemos los términos que aparecen con más frecuencia, y a la derecha tenemos las frases que aparecen con más frecuencia, es decir, grupos de palabras. |
| |
Así que queremos usar estas palabras para tal vez entender |
| |
lo cual... lo que hace que un choque cause más, ya sabes, más daños o tal vez lesiones más graves. Así que vamos a ir al menú del triángulo rojo y pedir la selección de términos. |
| |
Ahora vemos este lanzamiento que estábamos viendo hace un momento, y quiero saber más sobre los daños, ¿de acuerdo? Y en particular quiero... podría querer diferenciar entre incidentes en los que la aeronave fue destruida y aquellos en los que sufrió menos daños, así que seleccionaremos el nivel objetivo que se destruirá. |
| |
Debo mencionar que esta parada temprana es una función que ahorra tiempo. |
| |
Cuando hacemos selección de variables, puede llevar bastante tiempo para problemas mucho más grandes. Y si deja esta casilla marcada, dirá algo así como |
| |
Creemos que tenemos un modelo suficientemente bueno; vamos a detenernos antes de tiempo. Suelo desmarcar esa opción a menos que sepa que tengo un problema mucho mayor. |
| |
Así que lo dejaré con elastic net, AIC y le daremos a ejecutar. |
| |
Entonces, lo que está sucediendo ahora en segundo plano es que creó los datos que necesitaba para ajustar este modelo de regresión, y está ajustando el modelo de regresión en segundo plano, y ahora tengo mi resumen. Entonces, cada |
| |
Cada documento se resume en este panel izquierdo, así que este es el primer incidente aéreo, este es el segundo, que está en blanco. |
| |
El primer incidente ocurrió cuando el avión chocó contra un banco de nieve al costado de la pista. |
| |
Y tenemos todas las palabras importantes resaltadas, por lo que las palabras azules tienen coeficientes negativos, las palabras naranjas tienen coeficientes positivos. |
| |
Y si nos interesan las palabras, podemos mirar este panel de la derecha. Suelo ordenar por coeficiente, así que basta con hacer clic en la parte superior. |
| |
Entonces, en este caso, es menos probable que las palabras con coeficientes negativos se hayan destruido. Entonces si |
| |
El documento contiene la palabra aterrizaje, si el avión ha llegado al punto donde está aterrizando, probablemente no sea un incidente muy grave. Por lo tanto, es menos probable que estos sean |
| |
destruido. Por otro lado, podemos fijarnos en los términos más positivos, y estas son las palabras que más se asocian con la destrucción de la aeronave. |
| |
Y esas son palabras como fuego, testigos. Si están entrevistando a testigos para que describan el incidente, probablemente significa que quienquiera que estuviera en el avión no pudo ser entrevistado. |
| |
Así que fuego, radar, giro, noche, todas estas son palabras que están altamente asociadas con |
| |
con ser destruido. |
| |
Ahora bien, quizás también nos interese el nivel de lesiones, y específicamente, vamos a analizar los niveles de lesiones más graves. |
| |
Y volveremos a hacer la selección de trimestres. |
| |
Y lo aceptaré para que sea rápido. |
| |
Así que ahora podemos hacer lo mismo, pero fijándonos en el nivel de lesiones. |
| |
Por lo tanto, si la entrevista incluye al capitán o el aterrizaje, probablemente no se trate de lesiones muy graves. |
| |
Pero si de nuevo menciona el radar, la noche, las montañas, estas son palabras mucho más serias. Así que podemos ir rápidamente de un lado a otro entre estas dos... estas dos respuestas y ver qué palabras son predictivas de esas dos. |
| |
nivel de lesiones y nivel de daños. |
| |
Veamos otro ejemplo. |
| |
Este es uno que disfruto mucho. Antes hablaba de pizza en mis ejemplos. Ahora vamos a hablar de cerveza. Obviamente, son cosas que me apasionan. |
| |
Así que lo que tengo aquí es que... descargué una descripción de cada estilo de cerveza, según alguna reseña de cerveza. |
| |
cuerpo. |
| |
Así que cada cerveza tiene una descripción. |
| |
Y dice de dónde proviene la cerveza. Así que tenemos... |
| |
Estados Unidos, Alemania, Irlanda. |
| |
Utilice la selección de términos para ver |