Sharing the Ultimate Boon: un viaje desde el modelado hasta la puntuaciónAbstracto
Encontrar el modelo correcto para predecir nuevos resultados dados nuevos datos es un logro importante. Pero muchas veces es un paso en un viaje donde el objetivo final es compartir el poder predictivo del modelo con una audiencia mucho mayor. JMP Pro tiene muchas herramientas para facilitar el ajuste, la comparación y la selección de modelos predictivos. JMP Pro 13 agregó Formula Depot: una forma eficiente de recopilar modelos, aplicarlos a nuevas tablas y acceder a las plataformas Model Comparison y Profiler. Para ayudar con la implementación de modelos en producción, Formula Depot también puede convertirlos en código de puntuación en varios lenguajes de programación diferentes. En este tutorial, usamos un caso de estudio de bienes raíces para ilustrar el flujo de trabajo de modelado predictivo. Recopilaremos datos, prepararemos los datos para el modelado, generaremos modelos predictivos, publicaremos modelos en Formula Depot y exploraremos y seleccionaremos los mejores modelos. Luego, generaremos un código de puntuación para respaldar la creación de aplicaciones web que pueden calcular los precios de la vivienda "en el acto". También exploraremos diferentes métodos para puntuar datos y proporcionaremos una descripción general de las arquitecturas de implementación actuales.
Contenido del tutorial
El resultado final del tutorial es una aplicación web con capacidades predictivas alojadas en AWS. Puedes encontrarlo aquí . Lo que sigue es una explicación del contenido asociado con el tutorial, tal como se puede encontrar en los archivos adjuntos a esta página.
El nivel de cliente (ver archivo adjunto RedFinWeb.zip) utiliza Oreja para la interfaz de usuario y capas abiertas para las capacidades de mapeo.Se implementa como un sitio web estático alojado en AWS S3 ; la interfaz recopila la entrada de datos del usuario mediante un formulario HTML personalizado; estos se utilizan como valores de entrada en la evaluación del modelo, que se desencadena por un DESCANSAR llamada a la capa de cómputo.
La capa informática (consulte el archivo adjunto RedFinServerless.zip) utiliza dos servicios de Amazon: Puerta de enlace API es el punto de entrada para las llamadas REST, que se asignan a un AWS lambda servicio. Lambda es la implementación de Amazon de la Arquitectura sin servidor paradigma, también conocido como función como servicio (FaaS). Serverless proporciona rendimiento a escala con bajos costos de administración para aplicaciones sin estado, de baja latencia y de alto rendimiento, lo que lo convierte en una excelente opción para calificar aplicaciones que son, por definición, vergonzosamente paralelo .
El servicio Lambda fue el destino de implementación final para el código de puntuación de Python generado por JMP. La implementación de aplicaciones en los servicios de AWS se puede realizar manualmente utilizando su consola de administración , pero para agilizar el proceso recomendamos el uso de uno de los muchos contenedores de código abierto disponibles. En este ejercicio, utilizamos el Marco de aplicaciones sin servidor .
Observe cómo el código de Python captura tanto las tareas de ingeniería de características (agrupación, binning, imputación) como el modelo construido sobre ellas. Esto permite que las mismas fuentes de datos sin procesar utilizadas para crear el modelo también se utilicen para obtener nuevos datos en producción, una consideración importante al crear una canalización de análisis mantenible.
Adjunto también encontrará un Cuaderno Jupyter (RedFinNotebook.zip) utilizado para probar el modelo antes de la implementación; una colección de modelos de Python generados por JMP para el escenario de vivienda (RedFinModels.zip); y la tabla JMP original con la limpieza de datos y scripts para generar los modelos. (RedFinData.zip). Este último archivo .zip también incluye una hoja de cálculo que ilustra cómo otras aplicaciones pueden llamar directamente al back-end REST para obtener puntajes, en este caso desde una fórmula de Excel.
Referencias
Acceso y manipulación de datosModelado PredictivoRe: Sharing the Ultimate Boon: un viaje desde el modelado hasta la puntuaciónLa idea es que la página web sea una interfaz de usuario a través de la cual obtiene los datos que deben puntuarse, por ejemplo, un diálogo en el que el usuario escribe algunos valores. Una vez que se envían los valores, el controlador de eventos los recopila y llama al código del modelo de JavaScript generado por JMP. El resultado se muestra de nuevo al usuario. El principal beneficio es que no hay necesidad de volver a conectar un servidor, por lo que es tan escalable como puede ser. La desventaja es que está limitado a anotar de una a unas pocas observaciones a la vez, pero dependiendo del caso de uso, esto no es un problema.
Para un ejemplo concreto, echa un vistazo a esto:
http://jmp.valentine.s3-website-us-east-1.amazonaws.com/
Aquí, en lugar de la entrada del usuario, la página web genera puntos aleatorios que deben clasificarse como dentro o fuera de una curva. La clasificación se realiza mediante un modelo de red neuronal JMP. La visualización se realiza con D3.js.
Otro ejemplo que muestra cómo usar una aplicación web para recopilar datos del usuario, calificar la entrada y presentar el resultado, está disponible en el archivo scoring_examples.zip adjunto al presentación 2016 .
La carpeta "WebApp" como una aplicación web completa que ilustra el concepto. Fue diseñado para ser utilizado por un botánico de investigación de campo, tratando de clasificar nuevos especímenes de flores de Iris en función de sus medidas (lo sé, lo sé, qué original... 
Re: Sharing the Ultimate Boon: un viaje desde el modelado hasta la puntuaciónHola,
Aprecio tu ayuda.la última vez que sugirió ejecutar dentro de un navegador detrás de HTML ...
¿Puede darme más detalles o un enlace a algo que me ayudaría a lograr algo tangible?
Gracias,
Jim
Re: Sharing the Ultimate Boon: un viaje desde el modelado hasta la puntuaciónHola @jgrayson ,
Está en su directorio de instalación, en Recursos/Puntuación. Por ejemplo, en mi máquina con Windows, está bajo
C:\Archivos de programa\SAS\JMPPRO\16\Resources\Scoring\JavaScript
Re: Sharing the Ultimate Boon: un viaje desde el modelado hasta la puntuaciónHola,
¿Puede decirme dónde encontrar el "jmp_score" para javascript?
Gracias,
Jim Grayson