A medida que desarrollamos herramientas analíticas en JMP, inevitablemente debemos tomar decisiones sobre cómo priorizar:
¿Deberíamos hacer que el producto sea más poderoso agregando más músculo? ¿Deberíamos hacerlo más sexy, más emocionante? ¿Deberíamos concentrarnos en el alivio del dolor, haciéndolo menos frustrante, menos oneroso? En el lenguaje de las palabras A largas, ¿deberíamos optar por anabólicos, afrodisíacos o analgésicos?
John Sall cree que la respuesta es analgésica. El alivio del dolor debe ser la fuerza motivadora central para el desarrollo. Por supuesto, los tres no son mutuamente excluyentes. Agregar una característica de potencia emocionante también podría aliviar el dolor. Pero el alivio del dolor es fundamental, porque el dolor es la condición que realmente puede congelarnos, desmotivarnos, hacernos detenernos en una perspectiva menos que completa de lo que nuestros datos pueden decirnos.
Transcripción generada automáticamente ...
Altavoz
Transcripción
Jeff Perkinson Cuando se trata de desarrollar funciones de JMP, John Sall, nuestro próximo orador, tiene una forma interesante de pensar en cómo priorizamos. Tenemos que priorizar las características que ... en qué características queremos invertir. Entonces, ¿cómo pensamos en lo que es más importante? ¿Son las características que hacen que nuestro producto sea más potente en lo que deberíamos trabajar? ¿Qué hay de las características que lo hacen más atractivo o más sexy o las características que se centran en el alivio del dolor, aliviando la carga del análisis? Bueno, John piensa que el alivio del dolor debería ser el principal motivador de nuestro equipo de I + D. John es el cofundador de SAS. Es el arquitecto principal de JMP, que fundó hace más de 30 años. Para los científicos e ingenieros que tienen datos y necesitan una forma de explorarlos, necesitan ... necesitan una forma de explorarlos visualmente fácilmente en el escritorio. Va a hablar sobre las fuerzas impulsoras detrás del desarrollo de JMP y las formas en que encontramos las características en las que queremos trabajar. Con eso, me gustaría darte la bienvenida, John. Gracias. John Sall Gracias, Jeff. Y aquí estamos en vivo desde el nuevo centro de conferencias digital en Cary, Carolina del Norte, donde podemos acomodar a mucha más gente. Así que atenuemos un poco las luces. Bueno, realmente no estoy aquí en un centro de conferencias digital. Realmente estoy en casa. Entonces conseguí una oficina en casa. ¡Ups! Ése no. Como todos nosotros. Estoy en casa, dando esta conferencia. Pero cambiemos a un fondo corporativo y comencemos. Entonces, ¿de qué debería hablar? Bueno, cuando tenemos lanzamientos de JMP, en esos años en que la alianza de conferencias junto con JMP lanza, de eso es de lo que hablamos, pero en los años alternos siempre elijo un tema. Así que elegí grandes estadísticas un año, o datos fantasmas el año siguiente o características secretas hace dos años. Hoy mi tema son las palabras grandes que comienzan con la letra A. Bueno, estas son palabras que caracterizan temas para el desarrollo de JMP. Déjame compartir mi pantalla. Y minimizar aquí. Compartir. Entonces, ¿cuál es el tema más importante? Y aquí están las tres palabras que comienzan con ... las palabras grandes que comienzan con la letra A. Como Jeff acaba de mencionar, primero es anabólico. Bueno, lo anabólico se trata de hacer crecer los músculos, lo que hace que JMP sea más poderoso. Los procesos anabólicos construyen órganos y tejidos y estos procesos producen crecimiento y diferenciación de células para aumentar el tamaño corporal. Entonces, aumentar el poder de JMP sería la oportunidad y eso es, por supuesto, muy importante, pero el próximo afrodisíaco, hacer que JMP sea más sexy, más emocionante, la emoción del descubrimiento. Así que queremos que eso también sea un atributo. Pero también nos preocupamos por su progreso durante el flujo de trabajo, por lo que analgésico es la tercera palabra y eso significa alivio del dolor. alivio del dolor. Así que quiero que la gente exprese cosas como las siguientes citas imaginarias, \! "La versión 15 me acaba de servir ... me ahorró horas o incluso días de trabajo que solía tener que trabajar. \!" Eso es mucho alivio del dolor. O \! "Solía tener que hacer cada uno individualmente y ahora todo es de una sola vez. \!" Mucho alivio del dolor allí. O \! "Solía tener que usar varias otras herramientas para hacer todo, pero ahora puedo hacerlo todo en JMP. \!" ¡O! "Les mostré a mis colegas cómo lo hacía tan fácilmente. Y estaban asombrados. \! " O \! "Solía tener que programar todo esto manualmente, y ahora son solo unos pocos clics del mouse y listo. \!" O \! "JMP me mantiene en flujo, manteniendo mi atención en analizar los datos en lugar de desviarlos demasiado a los detalles operativos. \!" Estas son las expresiones de alivio del dolor que queremos escuchar. Ahora bien, ¿por qué el dolor y la frustración son verdaderos desmotivadores? El flujo es importante. No te distraes cuando fluyes. Cuando está en flujo, es más probable que aprenda algo de los datos y haga descubrimientos. Ahora, potenciar también es importante, pero las nuevas funciones tienden a ser utilizadas solo por unos pocos y las antiguas por muchos. Por eso, queremos que las funciones antiguas funcionen mejor para reducir el dolor de usarlas. Y, por supuesto, la productividad depende en gran medida de la eficacia de nuestras herramientas con respecto al uso del tiempo. Entonces, si podemos hacer que sea más fácil y rápido llegar a los resultados, eso es una gran victoria. Así que veamos muchos ejemplos. Primero, los scripts que vienen con las tablas de datos. Así que aquí puede ver uno al lado del otro, un ejemplo de una versión anterior de JMP. Creo que es JMP 14 o 13, donde solía mantener presionada la tecla del mouse en este botón y luego aparecía un elemento de menú y luego encontraba un botón de ejecución para ejecutar ese script. Pero la nueva forma solo tiene un botón de reproducción justo al lado del guión. Así que simplemente haz clic en ese botón de reproducción y te ahorra tener que abrir un menú. Bueno, eso no es una gran victoria, crees que la diferencia entre hacer clic en un botón y abrir un menú no es mucha. Pero también es una gran ventaja para los nuevos usuarios, porque los nuevos usuarios ya no tienen que entender que un botón de acceso rápido se ejecutará debajo. Pero ahí está el botón de reproducción con el guión. Y entonces hay un mayor entendimiento de que estos son guiones. Y la capacidad de almacenar scripts con sus datos es un gran problema en JMP y queremos que las personas lo aprendan de inmediato y no tengan que pescar alrededor de dos o mirar un consejo para saber que así es. Y es una gran comodidad poder almacenar todos sus scripts dentro de la tabla de datos y no encontrar otros lugares para almacenarlos. Entonces, para los nuevos usuarios, el botón de reproducción. Entonces, eso es algo de alivio del dolor solo con ese simple cambio. Y este es un cambio que lamentamos no haber hecho mucho antes en JMP. Hablemos de preparar datos. Y una de las cosas más importantes que debe hacer cuando prepara datos es unir datos de varias fuentes. Ahora JMP, incluso desde la versión uno, tenía que unirse a la utilidad. Pero esto todavía implica un diálogo complejo y trabajar con múltiples tablas de datos. Así que aquí está el ejemplo clásico en el que estoy alquilando películas y tenemos nuestra tabla de transacciones de alquiler de películas que tiene el cliente, el número de artículo, la fecha del pedido, el año del pedido, y luego tenemos nuestro inventario de películas para alquilar, detalles sobre cada una. película. Y luego tenemos los clientes ... información sobre los clientes y así sucesivamente. Y queremos hacer preguntas, involucrar las tres tablas, como qué géneros prevalecen en qué géneros de películas. Bueno, eso implica pasar por las tres tablas y, por supuesto, el comando de combinación es la forma de hacerlo. Tomo los datos de las transacciones y los fusiono con los clientes. Y, por supuesto, la identificación del cliente es la columna coincidente y quiero incluir las no coincidencias del lado de la transacción. Entonces, si no tengo los datos del cliente, aún así no pierdo los datos de mis transacciones. Y eso se llama unión externa izquierda, y eso crea la nueva tabla de datos. Y ahora, a esa tabla de datos, quiero unirla a los datos del inventario. Así que me uno a eso por el número de artículo que coincido entonces y que también quiero una combinación externa izquierda y ahora tengo otra tabla. Y ahora, en lugar de tener tres tablas, tengo cinco tablas, los resultados de esa combinación, pero ahora puedo responder a la pregunta de género por género, qué género tiende a alquilar más de qué tipo de película. Y también implicó la creación de todas estas nuevas tablas de datos intermedios. Resulta que hay una forma mucho más fácil de hacerlo y el dolor de estos pasos adicionales y tablas adicionales se puede reducir enormemente. Así que déjame deshacer esta mesa en esta mesa. Y quiero señalar bajo el comando de tablas, hay un comando llamado generador de consultas JMP y esto muestra la función de continuación para unir tablas, que es mucho más fácil que todos esos diálogos de unión, pero también crea una nueva tabla de datos. Pero hace un par de lanzamientos, presentamos algo aún mejor que reduce aún más el dolor y eso es unión virtual. Entonces, si miro esta tabla de transacciones, noté que ya está unida. Entonces, lo que sucedió es que cuando preparé la tabla de inventario de películas, se identifica de manera única por el número de artículo. Entonces le doy el número de artículo y luego un ID de enlace que dice que está identificado de manera única por eso y esa es la forma en que puedo indexar esa tabla. Y de manera similar, tengo un ID de artículo para identificar los datos del cliente. Y cuando preparo los datos de mi transacción, tengo estos dos que tienen, en cierto sentido, claves externas, una referencia de enlace y hace referencia a una tabla de datos diferente por el, el ... el ID de identificación entre ellos. Entonces, lo vincula automáticamente y ya tengo todo lo que necesito para responder esa pregunta. Entonces puedo hacer para cada género, puedo encontrar el género de la película que quiero hacer. Y entonces puedo ver aquí con las películas de acción que gustan más a los hombres y las películas familiares a las mujeres y las comedias románticas más a las mujeres y así sucesivamente. Así que respondí a mi pregunta sobre tres tablas sin la necesidad de pasar por todas las combinaciones, porque está unida virtualmente al hacer coincidir esas columnas de ID en las tablas. Así que he aliviado mucho el dolor con eso. Así que cerremos eso, de hecho. Así que la unión de la tabla de datos ha implicado, creo, mucho alivio del dolor por las versiones. Recodificar, esa es una de las otras cosas principales que hacemos cuando preparamos conjuntos de datos. Comenzamos con una recodificación muy simple hace muchos lanzamientos donde solo teníamos un campo para el valor anterior y el nuevo valor y el nuevo valor se inició con el mismo valor que el anterior y luego puedo cortar y pegar o editar esos valores en para recodificar en una nueva columna o en la columna existente. Y recodificar cada lanzamiento ha pasado por mejoras dramáticas y estamos muy emocionados con el estado actual de eso. Entonces, veamos este conjunto de datos de hospitales, hospitales de distrito. Y ahora la recodificación está a la derecha en el botón derecho o en el menú contextual en el encabezado de la columna. Y puedo revisar y seleccionar un montón de cosas y agruparlas con un nuevo valor, como clínica. Pero creo que también hay muchos atajos. Y uno de mis atajos favoritos es agrupar valores similares. Y entonces puedo dar un umbral del número de diferencias de personajes y así sucesivamente y automáticamente agrupará todas esas cosas. Por lo tanto, agrupará todos los hospitales de distrito con grafías ligeramente diferentes en uno. Y todavía puedo ... parece que se perdió uno. Pero está bien, ahora puedo agrupar ese uno con los demás y todos, todos los hospitales rurales se han agrupado automáticamente por los que coinciden y parece que puedo emparejar uno adicional aquí. Y ahora, de repente, tengo algo. He ahorrado mucho esfuerzo en hacer toda esa recodificación. Y, por supuesto, en JMP 15 agregamos nuevas funciones, que no mostraré aquí, pero quiero señalarlo. Si tiene otro conjunto de datos con todos los ... demostró que ... los mejores nombres de categoría para esas categorías, puedo pasar por un proceso de coincidencia y hacer que elija la coincidencia más cercana cuando encuentre una coincidencia para todas esas cosas. Así que recode ha pasado por una gran evolución a lo largo de los lanzamientos para reducir el dolor en esa operación. Y por supuesto, piénsalo. ¿Cuánto tiempo dedicamos a preparar los datos frente a analizarlos? A menudo, entre el 70 y el 90% de nuestro tiempo lo dedicamos a preparar los datos. Y así, reducir el dolor de eso y reducir el tiempo en que eso se convierte en grandes victorias. Entonces, alivio del dolor al recodificar. Haciendo clic en valores. Aquí está el conjunto de datos de ciudades. Y supongamos que cuando miro los detalles de algunas de estas cosas, como podría ser un valor atípico para algo, quiero verlo con más detalle. Y así puedo convertir eso en un enlace. Así que vamos a convertirlo en una página wiki de Wikimedia. Voy a copiar ese texto allí e ir a la información de la columna y luego convertirlo en un enlace, que es el controlador de expresiones. Y ahora puedo tomar esta tabla y convertirla en una dirección web. Así que iré a wikipedia.org y luego tomaré el nombre de esa ciudad y lo cambiaré a mayúsculas y minúsculas y puedo probarlo en esa fila y mostrar Albany. Y ahora diré ... Oh, vale. Y ahora puedo hacer clic en cualquier ciudad y luego obtener el artículo de Wikipedia sobre esa ciudad. O puede cambiarlo a coordenadas del mapa. Entonces puedo ... copiemos ese texto y vayamos a la información de la columna y ahora, en lugar de eso, haré caso del título sobre eso. Veamos si eso se analiza bien. Y ahora puedo hacer clic en Denver y consultará Denver y Google Maps. Bien, he convertido cosas en enlaces para hacer ... Puedo hacer búsquedas, puedo hacer solicitudes de mapas, etc. Incluso puedo pegar este discurso en él y hacer clic en él y hacer que diga el nombre de la ciudad. Y entonces esto creo que da un gran poder para poder almacenar enlaces en nuestras tablas de datos que enlazan con páginas web o hacer otras cosas, cualquier cosa que pueda expresar con ACL, puede hacer con esos controladores de eventos. Eso puede reducir mucho el dolor. Entonces, una de mis técnicas favoritas de reducción del dolor es la transmisión, y aquí es donde mantienes presionada la tecla de comando o la tecla de control para hacer múltiples, donde tienes muchos análisis que son similares. De acuerdo, esto funciona no solo para los comandos de menú, sino para muchos botones y para cambiar el tamaño de los marcos de los gráficos y hacer otras cosas, pegar cosas en gráficos, etc. Así que hagamos un ejemplo de eso. Y hagamos clic en ... o simplemente hagamos una distribución en todas estas columnas. Y digamos que quería deshacerme de este diagrama de caja. Y si mantuviera presionado ese elemento del menú, eliminaría el diagrama de caja para ese elemento. Pero lo que quiero hacer es eliminar el diagrama de caja de todos los elementos. Entonces, lo que voy a hacer es mantener presionada la tecla de comando y desmarcar el diagrama de caja y ahora está desmarcado para todas esas cosas. Ahora puedo desmarcar los cuantiles y desmarcará todo, porque ha tomado ese comando y transmitido a todos los objetos activos en esa ventana, y para aquellos objetos activos que entienden ese comando, el comando cuantiles por ejemplo, luego obedecerá. que ese comando. Ahora eso incluso funciona para algunas cosas que tienen que ver con incitar diálogos. Así que veamos las estadísticas resumidas. Déjame mantener presionada la tecla de comando y personalizar las estadísticas de resumen. Y digamos que no quiero los límites de confianza, pero quiero el número de valores perdidos. Y diré, está bien, y eso se aplicará a todos ... todas las cosas. Para hacer eso, tuvo que tomar los resultados de ese diálogo, hacer un guión y luego transmitir ese guión a todos los demás lugares en esa ventana. Eso no pasa todo el tiempo. A veces, cuando recibe un aviso, recibirá un aviso para cada análisis. Para cada lanzamiento, tratamos de implementar algunos detalles más, donde el diálogo se realiza antes de la transmisión para que se transmita el mismo diálogo en todos los lugares disponibles. Y, por supuesto, todo lo demás puedo transmitir un cambio y cambiará, ya sabes, el tamaño de todos estos elementos, o puedo transmitir cambiando el color de fondo, y puedo cambiar todos los colores de fondo a naranja en todas las parcelas que que parecen relevantes para ese cuadro de marco. Entonces esta transmisión se convierte en una herramienta muy poderosa. Entonces, eso nos ha ahorrado mucho dolor a la mayoría de nosotros, pero todavía hay casos en los que puede tener 40,000 por grupos, como llegó a principios de este año, y él quiere hacer una predicción inversa sobre los 40,000 y le solicita 40,000 veces. . Eso se arreglará para la versión 16. Eso es un gran alivio del dolor para ese usuario. Guardando columnas de fórmula. Me encantan las columnas de fórmulas. Cuando ajusta un modelo, puede guardar una columna de predicciones. Pero en esa predicción, hay una fórmula en vivo para que pueda examinar esa fórmula, puede modificarla, puede aplicarla a los nuevos datos que ingresan. Puede perfilarlo en la fórmula de guardado. Puede hacerlo si tiene JMP Pro, puede ir al depósito de fórmulas y hacer muchas otras cosas. Puede generar código a partir de él y así sucesivamente. Entonces, la capacidad de guardar fórmulas es algo importante, pero a veces, si lo tiene por grupos, por ejemplo, guardar fórmulas tiene mucha sutileza adicional. Por ejemplo, ajustemos, estos son los datos de diabetes, donde ajustamos la respuesta contra todos estos predictores y queremos hacerlo por separado para cada género. Así que hagámoslo. Y entonces tenemos dos por grupos para el género uno y el género dos. Y ahora digamos que queremos guardar el valor predicho, de hecho, para ambos. Ahora, en los viejos tiempos, antes de someternos a esto a muchos métodos de alivio del dolor, lo que sucedería cuando lo guardara, iría a una tabla de datos local. Si miras en la ventana de la tabla de datos debajo de rehacer, muestra la tabla por grupo. Entonces, realmente para género = 1, hay 235 en esta tabla de datos virtuales aquí, que puede mostrar para género = 1. Aquí hay una variable de tabla que muestra el grupo por. Y lo guardaría en esta tabla temporal en lugar de en la tabla real que tiene que está realmente guardada. Pero hace algún tiempo, cuando guardó la fórmula de predicción, la guardamos en la tabla de datos reales. Y si miro esto, lo guardé para género = 1, y si miro la fórmula para eso, muestra que si género = 1, esa era la cláusula by group, entonces tiene esta combinación lineal que forma una predicción para esa variable. Y luego, si hago gender = 2 o si mantengo presionada la tecla de comando para transmitir la fórmula de predicción, ahora tiene ambas y tengo ambas cláusulas disponibles para el género 1 y el género 2. Entonces está agregando una cláusula cada vez a esa salida por grupo. Por cierto, sucede lo mismo cuando guardas otras cosas, cuando guardo una columna de residuales y mantengamos presionada la tecla de comando esta vez. Si guardo una columna de residuos, la guardará para cada grupo, guardará el residual apropiado para eso por grupo. Es como si hubiera restado la fórmula predicha de la respuesta original, pero esta vez sin ser una columna de fórmula. En casi todos los lugares de JMP, no lo hemos hecho en todas partes, pero lo hemos hecho en la mayoría de los lugares, guardando en un grupo por o, en algunos casos, a través de una cláusula where, luego lo guardará en la tabla de datos original con la condición en la declaración if. Bien, eso ha ahorrado mucho esfuerzo. Si eso no hubiera estado disponible, tt se guardó en una tabla temporal y luego tendría que cortar y pegar esa fórmula y hacer tablas if en la tabla original. Entonces hemos resuelto estos problemas. Ahora supongamos que lo guardé de nuevo, hice todo el proceso nuevamente e hice otra cosa, digamos con diferentes variables, algunas de ellas eliminadas y ahora lo guardé nuevamente. Entonces, guardo la fórmula de predicción, esta vez manteniendo presionada la tecla de transmisión, en realidad está creando una nueva en lugar de guardarla en la anterior y agrega un 2 después. Bueno, ¿cómo sabe que no debe guardarlo en el antiguo? Bueno, cada ajuste tiene una identificación. Y si miro las propiedades por ID, tiene el número, un número único que se regenera para cada ajuste, y siempre que tenga un ID diferente, los diferentes por grupos tendrán el mismo ID con uno por partición. Pero siempre que tenga el mismo ID, lo guardará en la misma cosa. De lo contrario, creará un nuevo lugar para formar para guardarlo. Además, siempre que digamos valores predictivos, especialmente fórmulas de predicción, se creará un atributo el, el creador y en algunos casos otra información. En este caso tiene la variable objetivo y, eso es lo que predice y el creador ajusta mínimos cuadrados. Y luego, cuando haga otras plataformas, como si tiene una comparación de modelos de JMP Pro, esa comparación de modelos comprenderá qué valores predijeron en relación con qué creador, en qué objetivo. Y así puede realizar un seguimiento de toda esa información para esas plataformas de valor agregado. Por lo tanto, las columnas de fórmula funcionan agregando nuevas cláusulas y se utilizan otras propiedades, incluido el by ID. Y las cláusulas de predicción, si las guarda en variables categóricas, guarda todo un rango de variables para tener las probabilidades de cada nivel de respuesta, y todo lo que está contenido con todos los metadatos y necesidades. Y eso debería ahorrar mucho dolor. Entonces, eliminando efectos de los modelos. Bueno, veamos un ejemplo de ajuste de altura por peso. Bueno, aquí hay un ejemplo de un polinomio de alto grado. Este es un polinomio de séptimo orden que encaja mejor que los polinomios de sexto orden y así sucesivamente. ¿Pero confiarías en que encaje? Resulta que si le da al modelo mucha flexibilidad introduciendo términos polinomiales altos o simplemente introduciendo más variables, le da muchas más oportunidades de ajuste. Y en este caso, se permite la flexibilidad de hacer una inmersión profunda entre los datos anteriores y el último punto de datos solo para ajustar mejor ese último punto de datos. Y entonces está sobreajustado. Es así ... está usando ese parámetro para ajustar el ruido en lugar de ajustar los datos en sí. Por lo tanto, el sobreajuste es un problema cada vez que tienes modelos grandes. Así que quieres ajustar la señal, no el ruido. De acuerdo, los modelos grandes tienden a introducir más variación en la predicción, porque la predicción, después de todo, es una función de la variable y que están usando, pero también esa variable y es una parte sistemática de esa variable más la parte del error. de esa variable si esa parte variable es aleatoria, entonces su predicción implica esa aleatoriedad. Y si le permite demasiada flexibilidad, terminará con un problema de sobreajuste que predecirá mucho peor al incluir todas las variables en ese modelo. Entonces, la cura para eso es encoger el modelo, reducir el tamaño del modelo o reducir el tamaño de los coeficientes en el modelo, de modo que menos de esa variación del término aleatorio del modelo se transmita al valor predicho. Por tanto, en los problemas pequeños del DOE, esto no es un problema porque los datos son pequeños y están bien equilibrados para ajustarse exactamente al modelo que está buscando. Pero para los datos de observación en cualquier modelo grande, el sobreajuste es un problema real. Por lo tanto, los usuarios a menudo no apreciaban eso hasta que presentamos la validación cruzada en JMP Pro. Entonces, si tiene JMP Pro, puede configurar una columna de validación, que retendrá algunos de los datos para estimar el error en ese conjunto de datos retenido. Y aquí hay un ejemplo en el que tengo ... Estoy tratando de predecir las propiedades del hormigón en función de todos estos ingredientes en el hormigón, y tengo un modelo enorme para ello. Y si solo ejecuto ese modelo, pero retengo algunos de los datos y miro el cuadrado R en eso, estoy a favor de SLUMP, tengo un gran ajuste. Tengo un R cuadrado de 79, pero en el conjunto de validación que encajo, tengo un R cuadrado que es negativo. Cualquier cuadrado R negativo significa que se ajusta peor que simplemente ajustar la media. Entonces, si me ajustara a la media, tendría un R cuadrado de cero. Si encajo todo este modelo, tengo un cuadrado R que es mucho peor que eso. Entonces, con los modelos grandes, puedes ir peor que simplemente ajustarse a la media, es peor que Es algo antiinformativo porque el modelo es muy grande y no tuvimos ningún esfuerzo y redujimos el tamaño del modelo. El modelo ha estado dominado por el ruido y no por la señal. Entonces este es un problema al que debes prestar atención. Entonces, lo importante es poder reducir el tamaño del modelo. Y ahora introdujimos un comando de diálogo modelo para hacer eso. Entremos en la diabetes con el modelo. Puedo ejecutar este modelo y si, digamos, quiero eliminar muchas de estas cosas, no son muy importantes. Ya sabes, la edad tiene una contribución totalmente no significativa al modelo, y por eso quiero eliminar la edad. Bueno, entonces lo haría, podría volver a ajustar el modelo y recordarlo o y luego eliminar la edad. O hay, puedo volver al diálogo del modelo directamente aquí y ajustar la edad y eliminarlo, pero es posible que tenga una larga lista de modelos aquí y el ir y venir para hacer estas cosas es una buena cantidad de trabajo. Y entonces en lugar de hacer eso ... veamos, que estoy haciendo aqui. Hace varios lanzamientos, presentamos un nuevo informe llamado resumen de efectos. Y con el resumen de efectos, simplifica trivialmente el subconjunto del modelo para que prediga mejor y le dé menos flexibilidad. Entonces puedo decir, bueno, la edad, puedo eliminar eso. O bien, hay muchas variables. Eliminemos tres más. LDL, bueno, eso parece más significativo. Y entonces puedo guardar ese modelo. Guardémoslo en la tabla de datos. Y vuelvo más tarde y digo, bueno, déjame recordar ese modelo que tiene esto. De hecho, puedo deshacer lo anterior. Y entonces puedo deshacer eso y me devuelve tres de las variables y puedo deshacer eso y me devuelve la edad. Entonces, cuando utilizo el resumen de efectos para editar el modelo, almacena una memoria de todas esas cosas. Y si miro ese guión, puedo ver esta historia. Entonces, cada vez que realicé un modelo, se almacenó una cláusula de historial. Y cuando hago el deshacer, lo deshago de nuevo al historial. Así que quitarlo es fácil. También puedo agregar cosas. Si restara estas dos cosas, podría volver a sumarlas. Podría agregar, digamos, la edad. No es algo bueno, pero puedo hacerlo. También puedo editar el modelo recuperando una versión pequeña del modelo y del diálogo del modelo y agregar efectos compuestos, etc. Ahora, otra cosa que sucede con los modelos grandes y (déjame deshacer esto). Con modelos grandes, estás haciendo muchas pruebas de hipótesis. Entonces, si tiene una gran cantidad de pruebas de hipótesis, hay algunos ajustes que debe considerar y uno de ellos se llama tasa de descubrimiento falso. Entonces, en lugar de tratar todos estos valores p como si fueran pruebas independientes, quiero aplicar un ajuste para que esos valores p se ajusten para el sesgo de pruebas múltiples, para el sesgo de selección involucrado en el subconjunto del modelo. Y entonces puedo aplicarle una corrección de tasa de descubrimiento falso. Entonces, en lugar del valor p regular, tengo el valor p ajustado por el descubrimiento falso para eso. Y ahora estoy siendo más realista. Así que esto me ayudará con el problema de sobreajuste y la hipótesis ... el problema del sesgo de selección al hacer muchas pruebas múltiples. Entonces, ahora hagamos el siguiente tema y eso es transforma. Suponga que desea hacer un modelo, pero en lugar de y, desea ajustar el logaritmo de y. Bueno, antes lo que haría es crear una nueva columna en el conjunto de datos, Log y, y luego para Log y, especifique un ... haz una fórmula. Y puedo registrarlo. Y ahora puedo volver a la especificación de mi modelo y hacer eso Log y luego conseguí mi ajuste. Oh, falta, ¿qué hice? Olvidé ingresar el objetivo, el argumento. Y ahora puedo ajustar el registro de Y Y ahora lo he hecho. Pero hagamos el perfilador. Mi generador de perfiles está en términos del registro de Y. Permítanme guardar el valor predicho. Mi fórmula de predicción está en términos del logaritmo de y, y ahora voy a tener que editar eso manualmente ... esa fórmula y tomar el exponencial de eso para traerlo de vuelta a la escala original. Así que eso es mucho dolor al hacer transformaciones de esa manera. Bueno, hace varios lanzamientos presentamos transformaciones. Entonces puedo tomar esa transformación y transformarla en el registro y ahora usarla directamente allí como una transformación y no es parte de la tabla de datos. Es una variable virtual con una fórmula, pero no se agrega a la tabla de datos. Y ahora puedo ajustar mi modelo al Log y. Eliminemos la edad para que se ajuste un poco mejor. ¡Ups! Tenía eso seleccionado también. Y ahora encajo la respuesta Log y. Entonces, si hago un perfil de eso, ¿qué obtengo? Perfilado de factores, perfilador. En lugar de perfilar el registro de y, perfila y. El generador de perfiles lo ve como una transformación y dice, bueno, puedo invertir esa transformación y volver a la escala original. Y eso es lo que hace. Se deshace, se transforma a través del logaritmo de y para tomar la predicción y ponerla en la escala original. Y lo hará con la mayoría de las transformaciones que pueden relajarse. Si una transformación involucra múltiples variables y así sucesivamente, no puede hacerlo y solo hará las transformaciones. Entonces, lo mismo original cuando guardo una columna. Cuando guardo la fórmula de predicción, guarda una fórmula de predicción en la escala de y en lugar del logaritmo de y. Y estas cosas son un increíble ahorro de tiempo y ahorran mucho esfuerzo en el uso de transformaciones. Entonces hay ... Déjame ir a la diabetes de nuevo y hacer otra ... considerar otra transformación. Cuando está haciendo variable, hay una transformación de Box-Cox que puede obtener. Y entre los perfiles de factores, la opción Box-Cox le dice que si transformara toda una gama de funciones de potencia, ¿qué, qué sería lo mejor que podría hacer? ¿Debería ser simplemente sin transformar? Ese sería un valor lambda de Box-Cox de uno. Si hiciera cero, eso sería equivalente a tomar un registro. Si hiciera -1, eso sería equivalente a tomar el recíproco. El poder del -1. Si lo hiciera alrededor de .5, eso sería equivalente a sacar la raíz cuadrada de eso. Y le está diciendo que este modelo encajaría mejor en una escala de transformación ajustada para esa transformación, si fuera más a lo largo de la transformación de raíz cuadrada, donde lambda era .453. Ese es el valor óptimo en la transformación de Box-Cox. Y puede acercarlo con una lupa para obtenerlo con mayor precisión. Entonces, ahora puedo transformar, y hace varias versiones que puedo ... Agregué varias columnas. Uno es reajustar con transform, lo que creará una nueva ventana con la respuesta de transform. Y otro está reemplazando a transform y voy a hacer eso. Y en lugar de .453, solo tomaré la transformación de raíz cuadrada (.5) y ahora ajusto el modelo con esa transformación. Y ahora lambda best está alrededor de 1, que es donde debería estar, porque ya está transformado de una vez por la transformación Box-Cox. Y ahora puedo guardar el valor previsto de eso y perfilarlo y así sucesivamente. E incluso puedo deshacerlo. Entonces, si no me gusta esa transformación y quiero volver al original, puedo volver al original y reajustar. Entonces, hemos ahorrado mucho dolor al transformar las respuestas. Así que ahora hay un dolor especial, un lugar especial de dolor cuando tienes muchos datos. Y hemos hecho un gran esfuerzo para tratar de resolver grandes problemas con menos dolor. Ya sea que tenga muchas filas, muchas columnas, muchos grupos, muchos modelos para probar, en el mundo actual vivimos en un mundo de big data con grandes problemas. Entonces, si tenemos análisis que fueron diseñados originalmente para manejar problemas pequeños, puede que no sea apropiado para problemas grandes, y el problema central con los problemas grandes es que hay demasiada salida para clasificar. Si ajustando el mismo modelo a 1,000 variables, tengo 1,000 informes para clasificar. Si estoy buscando valores atípicos entre 1000 columnas, solo hay valores atípicos, ya sabes, informes separados para cada columna, etc. Quiero poder pasar de manera más eficiente a través de una gran cantidad de grandes conjuntos de datos. Así que desarrollamos el menú de selección, que está destinado a resolver este gran tipo de problemas. Y además, hay muchos lugares en JMP que también resuelven mejor los grandes problemas. Por ejemplo, series de tiempo. La nueva plataforma de pronóstico de series de tiempo pronosticará muchas series de tiempo, en lugar de solo una. Entonces, los elementos de la plataforma de detección exploran valores atípicos, exploran valores perdidos, exploran patrones. Estos son para realizar verificaciones de datos y luego buscar asociaciones, cribado de respuestas, cribado de procesos, cribado de predictores. Y, por supuesto, el pronóstico de la serie temporal es un elemento nuevo. No está en el menú de proyección, pero está organizado para manejar grandes problemas. Y todas estas cosas aprovechan, no solo las formas más compactas de representar los resultados para que no tenga que tener miles de informes, sino que también son eficientes desde el punto de vista informático. Usan subprocesos múltiples, por lo que aprovecha los múltiples núcleos de su CPU para hacerlo muy rápido. Digamos que tienes muchos datos de proceso; tienes 568 variables. Entonces, ¿cuál de estas variables parece saludable? La selección de procesos bien está diseñada para responder a eso. Y entonces puede ordenar por estabilidad u ordenar por capacidad (Ppk) o cuáles están mal o ordenar por medidas de gráficos de control, cuentas fuera de control, etc. Pero lo que es incluso… incluso me gustan más, son algunas de las herramientas que muestran todos los procesos en un gráfico. Y hay dos de ellos que amo. Uno es el gráfico de objetivos que muestra cómo se comporta cada proceso con respecto a los límites de especificaciones y si es un proceso capaz, está en esta zona verde aquí. Si es marginal, está en la zona amarilla. Si no lo está, está en la zona roja, y si está en lo alto, tiene demasiada variación. Si está a un lado del otro, entonces hay un problema. Con... Está fuera del centro, está fuera del objetivo. Pero si está en la zona verde, entonces es un buen proceso, y con la versión 15 presentamos los graphlets, la ayuda flotante para que pueda ver cada proceso mientras pasa el mouse sobre él. Y luego, la otra trama que me encanta al resumir todas estas cosas y reducir el dolor de mirar todos estos informes es este gráfico de rendimiento del proceso. Entonces, en el eje vertical, le dice si está dentro de los límites de las especificaciones por la capacidad Ppk. Entonces, si está por encima de esta línea en 1.33, entonces se ve bien en cuanto a la distribución de valores con respecto a los límites de especificaciones. Estás dentro de los límites de las especificaciones. Si ... entonces el índice de estabilidad está en el eje x. Entonces, si es un proceso bastante inestable, incluso si puede ser capaz pero inestable. Entonces, si miras ese proceso, podría tener algo de estabilidad que vaga por algunos. Y si estás en la zona amarilla, eres capaz pero inestable y así sucesivamente. La zona roja es la zona mala en la que eres incapaz e inestable. Por eso, revisar cientos o miles de procesos es fácil ahora, donde solía ser un gran dolor. La pregunta es, ¿qué fue lo que más cambió? Aquí hay algunos datos de la encuesta en los que durante muchos años diferentes, hizo una pregunta sobre sus actividades. ¿Fuiste a acampar? ¿O apostar en un casino? ¿O tenías un resfriado? Ya sabes, todas estas actividades y quieres saber cuál de todas estas actividades (y creo que hay 95 actividades diferentes) cuál de ellas hizo la mayor diferencia. Y lo que está buscando, ya sabe ... una cosa que puede hacer es revisar una por una y ajustar esa actividad por año de encuesta. En lugar de mirar uno a la vez. Puedo ver la selección de respuestas y solo mirar un gráfico para ver qué cambió más. Y esto muestra un gráfico de las 95 cosas. Primero, la importancia en términos del logaritmo negativo del valor P, que llamamos valor logarítmico, que se ajusta por la tasa de descubrimiento falso. Y entonces se encarga de algo de ese sesgo de selección porque está ordenando todos esos valores p. y seleccionando el trasero ... los valores de P bajos. Y encuentro que alquilar una cinta de video fue lo que más cambió, una cinta de video, y por supuesto se volvieron obsoletos. Entonces, por supuesto, cambió. Otra cinta de video cambió mucho, las cosas recolectadas para reciclar cambió mucho, la gente entretenida en mi casa cambió mucho. Y aquí está el que es menos significativo, pero de gran tamaño de efecto, ¿usa Internet? Y, por supuesto, esta encuesta se inició antes de que existiera Internet. Y así, cambió mucho. Entonces, la pregunta sobre qué fue lo que más cambió ahora es fácil, donde solía ser difícil. Otra pregunta que hiciste sobre big data, dónde están los valores faltantes. Entonces aquí hay 280 variables. ¿Dónde están los valores perdidos? ¿Tengo que preocuparme por ellos? Y puedo mirar el informe de exploración de valores perdidos y ver que, bueno, solo hay cinco de estas variables con valores perdidos. Y algunos de ellos solo tienen una variable, un valor faltante, pero algunos de ellos tienen mucho. Entonces, cuando hago un análisis, un análisis multivariado, probablemente no quiero incluir 376 de 452 variables. O si quiero incluir J, puedo revisar e imputar esos valores faltantes haciendo eso, está bien. Entonces, la siguiente pregunta, ¿los datos tienen valores atípicos? Bueno, tengo 387 medidas, las hago en este proceso. Y quiero averiguar si hay valores atípicos allí. Así que ahora tenemos la posibilidad de hacerlo en el menú de proyección. Puedo hacer esto más o menos sensible. Hagámoslo más sensible para que haya menos valores atípicos y vuelva a escanear. Puedo mirar los nueves. Muy a menudo, se usa una cadena de nueves para representar un valor faltante y esos nueves pueden ser nueves reales, pero pueden ser solo un indicador de un valor faltante. Y entonces puedo, para esos, puedo decir que agreguemos esos nueves a los códigos de valor que faltan y ahora la memoria ha cambiado. Y ahora puedo volver a subir (hay muchas variables aquí) y volver a escanear y hay menos valores faltantes de los que preocuparme. Por eso, explorar los valores atípicos solía ser un fastidio. Todavía puede ser un gran trabajo, pero es mucho más fácil de lo que solía ser. Ahora, en la versión 15, agregamos otra plataforma de detección. ¿Los datos tienen patrones sospechosos? Y aquí hay algunos datos de laboratorio de ensayos clínicos. Estos son datos de patrones de laboratorio de nicardipina. Hay 27 resultados de laboratorio que quizás quiera ver. Entonces invoco la nueva plataforma, exploro los valores perdidos. Y esto me va a demostrar, ¿tengo una racha de valores? Entonces tengo el valor .03536 pero hay siete seguidos, comenzando en la fila. 2065. Puedo colorear esas celdas, y puedo mirar esos valores, y tal vez sea el último valor transferido, lo que puede no ser sospechoso. En este caso, es el ... es la misma persona. Entonces, tal vez el último valor transferido sea algo razonable, pero es un evento raro, raro si ha distribuido estas cosas ... si, si asume una distribución aleatoria para estas cosas. También la secuencia duplicada más larga. Entonces, para esta variable, comenzamos en la fila 2816 y también comenzamos en la fila 3034, hay cuatro en una fila que tienen los mismos valores. Entonces, si coloreo esas cosas, hay cuatro seguidas allí. Y si voy a la siguiente secuencia, hay cuatro seguidos que tienen los mismos valores. Entonces, eso podría ser un síntoma de cortar y pegar los mismos valores de un lugar a otro. Así que explorar patrones es buscar esas cosas. Y hay muchas otras cosas en las que puede ver los detalles de cada una de esas 27 variables y buscar síntomas de cosas sospechosas o efectos negativos de la forma en que procesó los datos, etc. Por lo tanto, explore los patrones como parte de la resolución de grandes problemas. Entonces, alivio del dolor. Gran parte de nuestro desarrollo se centra en hacer que el flujo de análisis sea más fluido, menos oneroso, menos laborioso y menos doloroso. Analgésicos. Ahora bien, no siempre sabemos qué es doloroso. De modo que dependemos de los comentarios sobre en qué enfocarnos. Cuando recibimos esos correos electrónicos que tuve que responder a un mensaje cientos de veces, lo escuchamos y sentimos el dolor y lo arreglamos para que ahora pueda transmitir en un grupo con miles de cosas y transmitir los resultados de uno. dialogar en lugar de dialogar muchas veces. Así que enviarlo lo hizo mejor para todos los demás, porque no lo captamos la primera vez. Así que por favor envíenos sus comentarios. Con todas las mejoras que ya hemos realizado, creemos que el proceso de preparación y análisis de datos ya se ha vuelto mucho más fluido, mucho menos interrumpido, más fluido. Entonces, en lugar de perder su tiempo superando obstáculos, pasa su tiempo aprendiendo de sus datos, entendiendo sus datos. analítica. Uno se preguntaría si provienen de la misma raíz, por supuesto, no nos gusta abreviar esas dos palabras. Analytics viene del griego analyein, y no sé cómo pronunciarlo. Pero en griego significa romper, liberar o dejar en libertad. Y es tomar algo complicado y dividirlo en pedazos para que podamos entenderlo. Y eso es, por supuesto, exactamente lo que hacemos al analizar datos, ciencia de datos. Y los analgésicos provienen de una combinación diferente de palabras \! "Y- \!" que significa sin, y \! "algesis, \!" que es la sensación de dolor. Así que el mismo prefijo, diferente ... raíces un poco diferentes. Y no las abrevie. anabólico y afrodisíaco. Nos preocupamos por el poder. Mucho de lo que hacemos es brindarle herramientas más poderosas para analizar datos, gran parte de eso en JMP Pro, así como en JMP. Y esperamos que los datos lo hagan emocionante, ya sabe, la emoción del descubrimiento. La emoción de aprender a usar las funciones de potencia en JMP y creemos que es emocionante. Sabes, es afrodisíaco. Así que el poder y la emoción también son valiosos para nosotros. No es solo un alivio del dolor. Entonces, ¿qué vamos a hacer el año que viene? Bueno, palabras grandes que comienzan con la letra B. Comience con A, el siguiente es B, ¿verdad? Bueno, el año que viene tenemos JMP 16 en camino. Y de eso es de lo que vamos a hablar. Quién sabe de qué vamos a hablar el año siguiente. Así que muchas gracias. Y esperamos que sufra muy poco dolor al analizar sus datos. Jeff Perkinson Muchas gracias, John. Nosotros apreciamos eso. Fue una charla fantástica y habiendo presenciado mucho del dolor a lo largo de los años, es que todo lo que dices es absolutamente cierto. El alivio del dolor es algo importante para nosotros. Tuvimos una pregunta que vino, en realidad, una serie de preguntas; hemos respondido a algunas de ellas en las preguntas y respuestas, pero ¿qué quería ofrecerles como alivio del dolor y proporcionar algo de atracción y hacer que JMP sea más poderoso? John Sall Bueno, creo que el gran placer de todos es Graph Builder. Se siente increíblemente poderoso simplemente arrastrar esas variables y hacer algunos otros clics y tiene el gráfico que desea, y puede cambiarlo tan fácilmente. Así que es emocionante. Es una característica poderosa y es un alivio del dolor; solía ser más difícil de hacer. Entonces creo que eso es lo favorito de todos. Pero, por supuesto, hay ... JMP es un producto rico y estamos orgullosos de todo lo que contiene. Diseño de experimentos, todo el gran poder involucrado allí y hemos tratado de facilitar ese proceso también. Y tantas cosas me vienen a la mente. Jeff Perkinson Muy bien. Muchas gracias, John, te lo agradezco. Si ha disfrutado de esta charla, tengo dos sugerencias para usted. Uno, publicaremos esto