Semana Mundial de la Creatividad y la Innovación 2022: El Regreso – Parte 1

Semana Mundial de la Creatividad y la Innovación 2022: El Regreso – Parte 1


una nota de Udo Sglav: Lo que entregamos a nuestros clientes en SAS es un producto de mentes creativas que piensan de manera diferente, desafían la norma, asumen riesgos y aprenden del ensayo y error (el fracaso es el mejor maestro). Para el regreso de la Semana Mundial de la Creatividad y la Innovación, nos gustaría compartir algunas de nuestras innovaciones y colaboraciones recientes en I+D de análisis avanzado. Estoy muy emocionado de continuar mis conversaciones con Michelle Opp, especialista principal en investigación de operaciones, Arash Banadaki, desarrollador de estadísticas de investigación sénior, Gunce Walton, gerente de modelado econométrico y Javier Delgado, desarrollador de estadísticas de investigación sénior.

El despertar de la fuerza: aprovechamiento de la optimización para la planificación de pruebas de configuración

Udo: Cuénteme un poco sobre los antecedentes de este proyecto SAS Viya.

michelle: SAS tiene una amplia matriz de prueba que consta de diferentes combinaciones de proveedores de nube, versiones de Kubernetes, cadencias de SAS, etc. Para declarar que admitimos una configuración específica, debe probarse. Pero probar cada configuración requiere tiempo y dinero, y tampoco es un recurso infinito. Nos enfrentamos a una tarea difícilmente dominable en términos de tiempo y dinero para soportar la matriz que requiere la gestión de productos. El Centro de excelencia de análisis de SAS recientemente comenzó a trabajar con la División DevOps de SAS para desarrollar un plan que los ayude a optimizar sus configuraciones de prueba para aprovechar al máximo sus recursos.

Inicialmente, esto se presentó como un posible problema de diseño de experimentos. ¿Qué subconjunto de configuraciones de prueba deben elegir de todo el grupo de posibles configuraciones de prueba? Pero una vez que comenzamos nuestras conversaciones iniciales, nos dimos cuenta de que querían probarlo. todo de las configuraciones soportadas. Sin embargo, necesitaban que se escalonaran con el tiempo ya que no tenían el presupuesto o el tiempo para probar todo cada mes. Entonces nos dimos cuenta de que esto encajaría de forma natural en un problema de optimización. El modelo de optimización nos ayuda a determinar qué configuraciones deben probarse cada mes en un horizonte futuro específico. Por ejemplo, con fines de planificación, podemos crear un plan de prueba óptimo para los próximos seis meses. Sin embargo, el modelo de optimización se puede iterar periódicamente para adaptarse dinámicamente a la información y las prioridades cambiantes. Esto permite que el equipo ajuste su plan de prueba según sea necesario.

Udo: ¿Encontraste algún desafío para hacer despegar este proyecto?

michelle: Quizás la parte más complicada de este proyecto no sea el modelo de optimización en sí, sino la creación de los datos de entrada para estimar el valor de probar una configuración específica para un mes específico. Por ejemplo, ¿cuál es el valor relativo de probar Microsoft Azure? contra ¿Servicios web de Amazon? Esto requiere trabajar con varios equipos para aprovechar su experiencia. Juntos esperamos obtener datos de entrada significativos que puedan usarse para impulsar el modelo de optimización para producir resultados procesables. El modelo de optimización también puede incluir restricciones para tener en cuenta las reglas comerciales que deben cumplirse. Un ejemplo serían los acuerdos de socios que nos comprometen a admitir una configuración específica en una fecha específica.

Udo: ¿Qué técnicas innovadoras piensa utilizar?

Michelle: Desde un punto de vista puramente técnico, estamos viendo las técnicas innovadoras que necesitamos usar. Pero desde el punto de vista de la innovación de procesos, estamos muy emocionados de trabajar en este proyecto porque siempre es gratificante usar nuestras herramientas para resolver nuestros problemas en SAS. A menudo estamos tan concentrados en resolver los problemas de optimización de nuestros clientes que es fácil olvidar que hay muchos procesos internos y decisiones comerciales en SAS que también podrían beneficiarse enormemente de la optimización.

El auge de la computación GPU

Udo: ¿Por qué es importante habilitar el cálculo de GPU para los usuarios de SAS IML?

Arash: Los clientes utilizan el software IML de SAS para escribir programas personalizados en un lenguaje de matriz interactivo de alto nivel. El lenguaje ofrece cientos de funciones, incluidas muchas operaciones de álgebra lineal. Algunos de los cálculos son computacionalmente intensivos para matrices grandes. Las unidades de procesamiento de gráficos (GPU) pueden realizar operaciones de álgebra lineal increíblemente rápido. Hemos identificado varias funciones en SAS IML que se benefician de la computación GPU, lo que permite a los programadores usar GPU para realizar cálculos más rápidos con cambios mínimos en sus programas existentes. Las mejoras de GPU están disponibles en PROC IML e iml Action en SAS Viya.

Udo: Me dijeron que los resultados de los cálculos son impresionantes, ¿por qué?

Arash: Cierto, los resultados son muy impresionantes. Las GPU son muy buenas para procesar números, especialmente para matrices grandes. Por ejemplo, un cálculo matricial típico es la resolución de un gran sistema de ecuaciones. Este cálculo puede demorar varios minutos para matrices grandes cuando se usa un algoritmo de subproceso único en una CPU. Sin embargo, el cálculo preciso en una GPU podría ser 100 veces más rápido.

Udo: ¿Qué diferentes equipos trabajaron juntos en este proyecto?

Arash: Hemos colaborado con el grupo SAS Analytics Foundation. Este grupo es responsable de desarrollar una biblioteca en SAS que admita operaciones de álgebra lineal aceleradas por GPU y multiproceso. El equipo de SAS IML utiliza la biblioteca para acelerar las operaciones de álgebra lineal. Además, el equipo de servidores y servicios de SAS, en coordinación con nuestro equipo de pruebas, ha sido fundamental para brindar soporte de GPU para servidores de cómputo en entornos de Kubernetes. Estas colaboraciones benefician a cualquier programa SAS IML que se ejecute en SAS Viya.

Udo: ¿Por qué crees que tu proyecto es innovador?

Arash: Las GPU se han abaratado en los últimos años y están disponibles en la mayoría de los servicios de computación en la nube. En consecuencia, SAS quiere utilizar el procesamiento paralelo en las GPU. Deep Learning Action y un puñado de otras SAS Viya Actions ya usan GPU. Aún así, SAS IML es el primer producto SAS tradicional que brinda el poder de las GPU a los programadores de SAS que desarrollan un algoritmo personalizado.

Una nueva esperanza: aprendizaje profundo en la inferencia causal

Udo: ¿Qué problema de muy alto nivel ayuda a resolver PROC DEEPCAUSAL?

Gunz: Siempre que pregunte por qué o qué pasaría si, busque respuestas de causa y efecto. PROC DEEPCAUSAL en SAS Econometrics ayuda a estimar el efecto de una variable de tratamiento o política en una variable de resultado mediante la estimación de 11 tipos de efectos causales o parámetros de efecto de tratamiento. Además de estimar estos parámetros, PROC DEEPCAUSAL también realiza una evaluación y comparación de políticas para seleccionar la política óptima.

Udo: ¿Cómo trabajaron juntos los equipos de SAS Deep Learning, SAS Econometrics y SAS/STAT en esto?

Gunz: El equipo de STAT tiene una amplia gama de herramientas y experiencia en análisis de causa raíz. Compartimos bastante conocimiento con ellos durante el desarrollo de PROC DEEPCAUSAL y esta colaboración continúa. La técnica que conforma PROC DEEPCAUSAL consta de dos fases. En la primera etapa, se construyen redes neuronales profundas (DNN) apropiadas para estimar los parámetros de interés para las inferencias causales. La segunda fase utiliza las estimaciones del paso anterior y crea nuevos DNN para la optimización de políticas. Trabajamos con el equipo de Deep Learning para crear una PoC para este proyecto que llama al conjunto de acciones deepLearn del equipo de Deep Learning. Gracias a esta colaboración, pudimos lanzar PROC DEEPCAUSAL en un tiempo relativamente corto.

Udo: ¿Hasta qué punto es una solución resiliente y escalable?

Gunz: PROC DEEPCAUSAL utiliza DNN para estimar el análisis de políticas. Las DNN superan varias dificultades técnicas en la era de los grandes datos. Estos incluyen el enorme conjunto de posibles covariables discretas o continuas y las relaciones no lineales desconocidas entre las covariables, el resultado y la asignación del tratamiento. Un problema con la aplicación de DNN a la inferencia causal es la interpretabilidad. Para resolver este problema, PROC DEEPCAUSAL aplica las DNN sobre un marco semiparamétrico de dos niveles y proporciona resultados de inferencia para los parámetros de interés a través de las funciones de influencia correspondientes.

Lo mejor de ambos mundos: una historia con visión de futuro

Udo: Escuché que estaba trabajando con el equipo de SAS Visual Forecasting en una función de lenguaje externo de código abierto. Me puede decir mas acerca de eso

javier: Claro, esta función le permite integrar su software Python y/o R existente en sus flujos de trabajo de SAS Visual Forecasting. Nuestros clientes y/o audiencia, después de presentar las capacidades y características de escalabilidad de nuestro marco SAS Visual Forecasting, a menudo nos preguntaban si podían usar este marco para ejecutar sus propios modelos escritos en Python y R. Nos complace decir que el paquete EXTLANG de SAS Visual Forecasting lo hace posible. También puede comparar modelos de pronóstico de código abierto con nuestros propios modelos integrados.

Udo: Hasta donde yo sé, hubo colaboración entre departamentos, ¿cómo sucedió eso?

javier: Una preocupación que genera la ejecución de lenguajes de programación de propósito general como Python y R es el hecho de que los usuarios malintencionados pueden ejecutar programas que no podrían ejecutar en un lenguaje estrictamente controlado como SAS. Por lo tanto, trabajamos desde el principio con nuestros especialistas en seguridad y los excelentes desarrolladores de nuestro equipo SAS CAS para garantizar que le permitiéramos ejecutar Python y R de la forma más segura posible. Esto incluye asegurarse de que esta función esté deshabilitada de forma predeterminada y permitir que los administradores de CAS controlen quién puede ejecutar programas EXTLANG, qué programas deben ejecutarse y más.

Udo: ¿Qué tiene de importante esta innovación?

javier: Un caso de uso común para ejecutar programas de Python y R a través de SAS Visual Forecasting es aprovechar el hecho de que los programas que se ejecutan a través de SAS Visual Forecasting se ejecutan automáticamente de acuerdo con las variables «POR» en la división de trabajos. Las variables BY describen la serie temporal, que luego se ejecuta de forma independiente en todos los procesadores disponibles configurados en el CAS. El hecho de que no haya comunicación entre procesos, combinado con una estrategia de barajado de datos optimizada, nos permite lograr una escalabilidad casi lineal con cargas de trabajo que consisten en decenas e incluso cientos de miles de series temporales.

Related post

La innovación tecnológica del agua y el futuro de las energías renovables

La innovación tecnológica del agua y el futuro de…

Una parte importante del futuro de la energía renovable está ligada al litio, y la carrera para asegurar recursos abundantes y…
La compañía de carbón líder en el mundo se beneficia de la crisis energética mundial

La compañía de carbón líder en el mundo se…

Glencore, el transportador de carbón más grande del mundo, está a punto de beneficiarse de casi $ 9 mil millones de…
Cenas fáciles entre semana – SAS Life

Cenas fáciles entre semana – SAS Life

Una cosa que escucho de la mayoría de mis pacientes es la necesidad de ideas rápidas y fáciles para la cena.…

Leave a Reply

Tu dirección de correo electrónico no será publicada.