InterSystems IRIS es una plataforma de IA / ML versátil en tiempo real

Autor: Sergey Lukyanchikov, ingeniero consultor de InterSystems



Llamadas informáticas AI / ML en tiempo real



Comencemos con ejemplos de la experiencia de la práctica de Data Science de la empresa InterSystems:



  • El portal del comprador "cargado" está conectado a un sistema de recomendación en línea. Hay una reestructuración de las acciones promocionales en la escala de la red minorista (por ejemplo, en lugar de una línea “plana” de acciones promocionales, ahora se utilizará la matriz de “tácticas de segmento”). ¿Qué sucede con los motores de recomendación? ¿Qué sucede con la presentación y actualización de datos en el mecanismo de recomendación (la cantidad de datos de entrada ha aumentado 25.000 veces)? ¿Qué sucede con el desarrollo de recomendaciones (la necesidad de reducir mil veces el umbral de filtrado de las reglas de recomendación debido a un aumento mil veces mayor en su número y "surtido")?
  • Existe un sistema para monitorear la probabilidad de desarrollar defectos en los nodos de los equipos. Se conectó un sistema de control de procesos al sistema de monitoreo, transmitiendo miles de parámetros del proceso tecnológico cada segundo. ¿Qué sucede con el sistema de seguimiento que solía trabajar con “muestras manuales” (es capaz de proporcionar un seguimiento de probabilidad cada segundo)? ¿Qué sucederá si aparece un nuevo bloque de varios cientos de columnas en los datos de entrada con las lecturas de los sensores agregados recientemente al sistema de control de proceso (será necesario y durante cuánto tiempo detener el sistema de monitoreo para incluir datos de nuevos sensores en el análisis)?
  • Se ha creado un complejo de mecanismos de IA / ML (recomendación, seguimiento, pronóstico), utilizando los resultados del trabajo de cada uno. ¿Cuántas horas hombre se requieren mensualmente para adaptar la operación de este complejo a los cambios en los datos de entrada? ¿Cuál es la "desaceleración" general con el apoyo del complejo en la toma de decisiones de gestión (la frecuencia de aparición de nueva información de apoyo con respecto a la frecuencia de aparición de nuevos datos de entrada)?


Resumiendo estos y muchos otros ejemplos, hemos llegado a la formulación de los desafíos que surgen en la transición al uso de mecanismos de aprendizaje automático e inteligencia artificial en tiempo real:



  • ¿Estamos satisfechos con la rapidez de creación y adaptación (a una situación cambiante) de los desarrollos de IA / ML en nuestra empresa?
  • ¿En qué medida las soluciones de IA / ML que utilizamos admiten la gestión empresarial en tiempo real?
  • ¿Las soluciones de IA / ML que utilizamos son capaces de adaptarse de forma independiente (sin desarrolladores) a los cambios en los datos y en las prácticas de gestión empresarial?


Nuestro artículo es una descripción detallada de las capacidades de la plataforma InterSystems IRIS en términos de soporte universal para el despliegue de mecanismos AI / ML, ensamblaje (integración) de soluciones AI / ML y entrenamiento (prueba) de soluciones AI / ML en flujos de datos intensivos. Pasaremos a la investigación de mercado, ejemplos prácticos de soluciones de IA / ML y aspectos conceptuales de lo que llamamos una plataforma de IA / ML en tiempo real en este artículo.



Lo que sabemos de las encuestas: aplicaciones en tiempo real



Los resultados de una encuesta de 2019 de aproximadamente 800 profesionales de TI realizada por Lightbend hablan por sí mismos:





Figura 1 Consumidores líderes de datos en tiempo real



Para citar fragmentos importantes de este informe de encuesta en nuestra traducción:



“… Las tendencias en la popularidad de las herramientas de integración de flujo de datos y, al mismo tiempo, el soporte a la computación en contenedores dan una respuesta sinérgica a la demanda del mercado de una propuesta más rápida, racional y dinámica de soluciones efectivas. Los flujos de datos permiten que la información se transfiera más rápido que los paquetes de datos tradicionales. A esto se suma la capacidad de aplicar rápidamente técnicas computacionales como recomendaciones basadas en IA / ML, creando una ventaja competitiva a través de una mayor satisfacción del cliente. La carrera hacia la agilidad también afecta a todos los roles en el paradigma DevOps, lo que hace que el desarrollo y la implementación de aplicaciones sean más eficientes. ... Ochocientos cuatro profesionales de TI proporcionaron información sobre el uso de flujos de datos en sus organizaciones.Los encuestados estaban ubicados principalmente en países occidentales (41% en Europa y 37% en América del Norte) y estaban distribuidos casi de manera uniforme entre empresas pequeñas, medianas y grandes. ...



... La inteligencia artificial no es una exageración. El cincuenta y ocho por ciento de los que ya utilizan el procesamiento de flujo de datos en aplicaciones productivas de AI / ML confirman que su uso en AI / ML verá el mayor aumento en el próximo año (en comparación con otras aplicaciones).



  • La mayoría de los encuestados cree que el uso de AI / ML de los flujos de datos verá las mayores ganancias en el próximo año.
  • La aplicación en AI / ML crecerá no solo a través de tipos de escenarios relativamente nuevos, sino también a través de escenarios tradicionales en los que los datos en tiempo real se utilizan cada vez más.
  • Además de AI / ML, el nivel de entusiasmo entre los usuarios de las canalizaciones de datos de IoT es impresionante: el 48% de los que ya han integrado los datos de IoT afirman que la creación de scripts en estos datos verá un aumento significativo en el futuro cercano. ... "


A partir de esta encuesta bastante interesante, queda claro que la percepción de los escenarios de aprendizaje automático e inteligencia artificial como líderes en el consumo de flujos de datos ya está "en camino". Pero una observación no menos importante es la percepción de la IA / ML en tiempo real a través de la óptica de DevOps: aquí ya podemos empezar a hablar de la transformación de la cultura aún dominante de "IA / ML desechable con un conjunto de datos totalmente accesible".



Concepto de plataforma AI / ML en tiempo real



Una de las aplicaciones típicas de IA / ML en tiempo real es el control de procesos en la fabricación. Usando su ejemplo y teniendo en cuenta las reflexiones anteriores, formularemos el concepto de una plataforma AI / ML en tiempo real.



El uso de inteligencia artificial y aprendizaje automático en el control de procesos tiene varias características:



  • : ( , )
  • , , , , (, )
  • , « » , ,


Estas características nos obligan, además de recibir un procesamiento básico en tiempo real de la intensa "entrada de banda ancha" del proceso, a realizar (en paralelo) la aplicación, entrenamiento y control de calidad de los resultados del trabajo de los modelos AI / ML - también en tiempo real. El "marco" que nuestros modelos "ven" en la ventana deslizante de relevancia cambia constantemente, y con ello la calidad de los resultados del trabajo de los modelos de IA / ML entrenados en uno de los "marcos" en el pasado también cambia. Si la calidad de los resultados del trabajo de los modelos AI / ML se deteriora (por ejemplo: el valor del error de clasificación "alarma-normal" ha ido más allá de los límites que hemos definido), el entrenamiento adicional de modelos debe iniciarse automáticamente en un "marco" más relevante, y la elección del momento para comenzar el entrenamiento adicional de modelos debe tenerse en cuenta como la duración de la formación en sí,y la dinámica de deterioro de la calidad de la versión actual de los modelos (ya que las versiones actuales de los modelos continúan aplicándose mientras se entrenan los modelos y hasta que se forman sus versiones "recién entrenadas").



InterSystems IRIS tiene capacidades de plataforma clave para habilitar soluciones de AI / ML para el control de procesos en tiempo real. Estas capacidades se pueden dividir en tres grupos principales:



  • Implementación / entrega continua (CD) de mecanismos AI / ML nuevos o adaptados existentes en una solución productiva que opera en tiempo real en la plataforma InterSystems IRIS
  • Integración continua (CI) en una única solución productiva de flujos de datos entrantes de un proceso tecnológico, colas de datos para aplicación / entrenamiento / control de calidad de mecanismos de IA / ML e intercambios de datos / código / acciones de control con entornos de modelado matemático, que están orquestados en plataforma en tiempo real InterSystems IRIS
  • (-) (Continuous Training, CT) AI/ML-, , (« »), InterSystems IRIS


La clasificación de las capacidades de la plataforma en relación con el aprendizaje automático y la inteligencia artificial precisamente en tales grupos no es accidental. Citemos la publicación metodológica de Google, que proporciona una base conceptual para esta clasificación, en nuestra traducción:



“… El concepto DevOps, que es popular hoy en día, cubre el desarrollo y operación de sistemas de información a gran escala. Las ventajas de implementar este concepto son la reducción de los ciclos de desarrollo, la aceleración de la implementación del desarrollo y la planificación flexible del lanzamiento. Para aprovechar estos beneficios, DevOps implica al menos dos prácticas:



  • Integración continua (CI)
  • Entrega continua (CD)


Estas prácticas también se aplican a las plataformas AI / ML para garantizar la construcción confiable y eficiente de soluciones productivas de AI / ML.



Las plataformas de IA / ML se diferencian de otros sistemas de información en los siguientes aspectos:



  • Competencias del equipo: al crear una solución de IA / ML, el equipo generalmente incluye científicos de datos o "académicos" de ciencia de datos que realizan análisis de datos, desarrollo de modelos y validación. Estos miembros del equipo pueden ser o no desarrolladores profesionales de código productivo.
  • : AI/ML- . , , , , . « / », , .
  • : AI/ML- , . , .
  • : AI/ML- , . AI/ML- , . , - , .
  • Productivo: los motores AI / ML pueden carecer de rendimiento no solo debido a una programación ineficiente, sino también debido a la naturaleza en constante cambio de los datos de entrada. En otras palabras, el rendimiento de los motores AI / ML puede degradarse debido a una gama más amplia de razones que el rendimiento de los diseños convencionales. Esto lleva a la necesidad de monitorear (en línea) el desempeño de nuestros motores de AI / ML, así como enviar notificaciones o descartar resultados si los indicadores de desempeño no cumplen con las expectativas.


Las plataformas AI / ML son similares a otros sistemas de información en el sentido de que ambos necesitan una integración de código continua con control de versiones, pruebas unitarias, pruebas de integración e implementación de desarrollo continuo. Sin embargo, en el caso de AI / ML, existen algunas diferencias importantes:



  • CI (Continuous Integration, ) – AI/ML-.
  • CD (Continuous Delivery/Deployment, ) , , AI/ML-.
  • CT (Continuous Training, ) – [. : DevOps, CT , , Continuous Testing], AI/ML-, AI/ML-. …»


Podemos afirmar que el aprendizaje automático y la inteligencia artificial que trabajan con datos en tiempo real requieren un conjunto más amplio de herramientas y competencias (desde el desarrollo de código hasta la orquestación de entornos de modelado matemático), una integración más estrecha entre todas las áreas funcionales y temáticas, una organización más eficiente de los seres humanos y recursos de la máquina.



Escenario en tiempo real: reconocimiento del desarrollo de defectos en bombas de alimentación



Continuando con el uso del área de control de procesos tecnológicos como ejemplo, consideraremos un problema específico (ya lo mencionamos al principio): se requiere brindar monitoreo en tiempo real del desarrollo de defectos en bombas en base al flujo de valores de los parámetros tecnológicos del proceso e informes del personal de reparación sobre los defectos detectados.





Figura 2 Formulación de la tarea de seguimiento del desarrollo de defectos



Una característica de la mayoría de las tareas establecidas de esta manera en la práctica es que la regularidad y rapidez de la recepción de datos (APCS) debe considerarse en el contexto de la aparición (y registro) episódica e irregular de defectos de varios tipos. En otras palabras: los datos del sistema de control de procesos vienen una vez por segundo, son correctos y precisos, y se toman notas sobre los defectos con un lápiz químico con la fecha en el cuaderno general del taller (por ejemplo: "12.01 - fluyen hacia la tapa desde el tercer lado del rodamiento").



Por lo tanto, el enunciado del problema se puede complementar con la siguiente restricción importante: solo tenemos una "etiqueta" de un tipo específico de defecto (es decir, un ejemplo de un tipo específico de defecto está representado por datos del sistema de control para una fecha específica, y no tenemos más ejemplos de este tipo de defecto). Esta limitación nos lleva inmediatamente más allá del marco del aprendizaje automático clásico (aprendizaje supervisado), para el cual debería haber muchas "etiquetas".





Figura 3 Aclaración de la tarea de seguimiento del desarrollo de defectos



¿Podemos de alguna manera "multiplicar" la única "etiqueta" que tenemos a nuestra disposición? Si podemos. El estado actual de la bomba se caracteriza por el grado de similitud con los defectos registrados. Incluso sin el uso de métodos cuantitativos, a nivel de percepción visual, observando la dinámica de los valores de los datos que llegan del sistema de control del proceso, ya puede aprender mucho:





Figura 4 Dinámica del estado de la bomba en el contexto de una "marca" de un defecto de un tipo dado



Pero percepción visual (al menos por ahora) - no es el generador de "etiquetas" más apropiado en nuestro escenario acelerado. Evaluaremos la similitud del estado actual de la bomba con los defectos informados mediante una prueba estadística.





Figura 5 Aplicación de una prueba estadística a los datos entrantes en el contexto de una "etiqueta" de defecto



La prueba estadística determina la probabilidad de que los registros con los valores de los parámetros del proceso tecnológico en el “paquete-flujo” recibido del sistema de control del proceso sean similares a los registros de la “etiqueta” de un defecto de cierto tipo. El valor de probabilidad (índice de similitud estadística) calculado como resultado de la aplicación de la prueba estadística se convierte en un valor de 0 o 1, convirtiéndose en una "etiqueta" para el aprendizaje automático en cada registro específico del paquete que se examina como. Es decir, después de procesar el paquete recién recibido de registros de estado de la bomba con una prueba estadística, tenemos la oportunidad (a) de agregar este paquete al conjunto de entrenamiento para entrenar el modelo AI / ML y (b) para controlar la calidad de la versión actual del modelo cuando se aplica. a este paquete.





Figura 6 Aplicación de un modelo de aprendizaje automático a los datos entrantes en el contexto de una "etiqueta" de defecto



en uno de nuestros seminarios web anterioresmostramos y explicamos cómo la plataforma InterSystems IRIS le permite implementar cualquier mecanismo de IA / ML en forma de procesos comerciales de ejecución continua que controlan la confiabilidad de los resultados del modelado y adaptan los parámetros del modelo. Al implementar un prototipo de nuestro escenario con bombas, utilizamos toda la funcionalidad de InterSystems IRIS presentada durante el webinar, implementando en el proceso del analizador como parte de nuestra solución no el aprendizaje supervisado clásico, sino el aprendizaje reforzado, que gestiona automáticamente la muestra para modelos de entrenamiento. La muestra de entrenamiento contiene registros en los que surge un "consenso de detección" después de aplicar tanto la prueba estadística como la versión actual del modelo, es decir, la prueba estadística (después de transformar el índice de similitud en 0 o 1),y el modelo produjo el resultado 1 en dichos registros. Con un nuevo entrenamiento del modelo, durante su validación (el modelo recién entrenado se aplica a su propia muestra de entrenamiento, con la aplicación preliminar de la prueba estadística), registros que “no se mantuvieron” después de procesar el resultado de la prueba estadística 1 ( debido a la presencia constante en el conjunto de entrenamiento de registros de la "etiqueta" inicial del defecto), se eliminan del conjunto de entrenamiento, y la nueva versión del modelo aprende de la "etiqueta" del defecto más los registros "retenidos" del flujo.El resultado 1 "no retenido" después de ser procesado por la prueba estadística (debido a la presencia constante en el conjunto de entrenamiento de registros de la "marca" inicial del defecto) se elimina del conjunto de entrenamiento, y la nueva versión del modelo aprende de la "marca" del defecto más en los registros "retenidos" de fluir.El resultado 1 "no retenido" después de ser procesado por la prueba estadística (debido a la presencia constante en el conjunto de entrenamiento de registros de la "marca" inicial del defecto) se elimina del conjunto de entrenamiento, y la nueva versión del modelo aprende de la "marca" del defecto más en los registros "retenidos" de fluir.





Figura 7 Robotización de computación AI / ML en InterSystems IRIS



Si existe la necesidad de una especie de "segunda opinión" sobre la calidad de detección obtenida durante los cálculos locales en InterSystems IRIS, se crea un proceso de asesor para realizar el entrenamiento y la aplicación de modelos en un conjunto de datos de control con utilizando servicios en la nube (por ejemplo, Microsoft Azure, Amazon Web Services, Google Cloud Platform, etc.):





Figura 8 Segunda opinión de Microsoft Azure orquestada por InterSystems IRIS



El prototipo de nuestro script en InterSystems IRIS se realiza en forma de un sistema basado en agentes de procesos analíticos que interactúan con el objeto del equipo (bomba), entornos de modelado matemático (Python, R y Julia) y proporcionan autoaprendizaje de todos los mecanismos de IA / ML involucrados, en flujos de datos en tiempo real. ...





Figura 9 La funcionalidad principal de una solución de AI / ML en tiempo real en InterSystems IRIS El



resultado práctico de nuestro prototipo:



  • Patrón de defecto reconocido por el modelo (12 de enero):




  • Un defecto en desarrollo reconocido por el modelo que no se incluyó en la muestra (el 11 de septiembre, el equipo de reparación determinó el defecto en sí solo dos días después, el 13 de septiembre):




La simulación sobre datos reales que contienen varios episodios del mismo defecto ha demostrado que nuestra solución, implementada en la plataforma InterSystems IRIS, nos permite detectar el desarrollo de defectos de este tipo varios días antes de que sean descubiertos por el equipo de reparación.



InterSystems IRIS: plataforma informática universal de IA / ML en tiempo real



La plataforma InterSystems IRIS simplifica el desarrollo, implementación y operación de soluciones de datos en tiempo real. InterSystems IRIS es capaz de realizar simultáneamente procesamiento de datos transaccionales y analíticos; mantener vistas de datos sincronizadas de acuerdo con varios modelos (incluidos los relacionales, jerárquicos, de objetos y de documentos); actuar como una plataforma para integrar una amplia gama de fuentes de datos y aplicaciones individuales; proporcionar análisis avanzados en tiempo real sobre datos estructurados y no estructurados. InterSystems IRIS también proporciona mecanismos para el uso de herramientas analíticas externas, le permite combinar de manera flexible el alojamiento en la nube y los servidores locales.



Las aplicaciones creadas en la plataforma InterSystems IRIS se han implementado en una variedad de industrias, ayudando a las empresas a generar un valor económico significativo desde una perspectiva estratégica y operativa, aumentando la conciencia sobre la toma de decisiones y reduciendo la brecha entre eventos, análisis y acciones.





Figura 10 Arquitectura de InterSystems IRIS en el contexto AI / ML en tiempo real



Al igual que el diagrama anterior, el diagrama siguiente combina el nuevo "sistema de coordenadas" (CD / CI / CT) con el flujo de información entre los elementos de trabajo de la plataforma. La imagen comienza con el macromecanismo de CD y continúa con los macromecanismos de CI y CT.





Figura 11 Diagrama de flujos de información entre elementos AI / ML de la plataforma InterSystems IRIS



La esencia del mecanismo de CD en InterSystems IRIS: los usuarios de la plataforma (desarrolladores de soluciones de AI / ML) adaptan los desarrollos de AI / ML existentes y / o crean nuevos utilizando un editor especializado de código de programa de mecanismos de AI / ML: Jupyter (nombre completo: Jupyter Notebook; también, por brevedad, los documentos creados en este editor a veces se llaman). En Jupyter, un desarrollador tiene la capacidad de escribir, depurar y asegurarse de que un desarrollo de AI / ML específico funcione (incluido el uso de gráficos) antes de implementarlo ("implementarlo") en InterSystems IRIS. Está claro que un nuevo desarrollo creado de esta manera recibirá solo una depuración básica (ya que, en particular, Jupyter no funciona con flujos de datos en tiempo real): esta es la orden del día,después de todo, el principal resultado del desarrollo en Jupyter es la confirmación del desempeño fundamental de un mecanismo AI / ML separado ("muestra el resultado esperado en una muestra de datos"). De manera similar, un mecanismo ya colocado en la plataforma (consulte los siguientes macro-mecanismos) antes de depurar en Jupyter puede requerir una "reversión" a una vista de "pre-plataforma" (leer datos de archivos, trabajar con datos a través de xDBC en lugar de tablas, interacción directa con globales - matrices de datos multidimensionales InterSystems IRIS - etc.).trabajar con datos a través de xDBC en lugar de tablas, interacción directa con globales (matrices de datos multidimensionales de InterSystems IRIS, etc.).trabajar con datos a través de xDBC en lugar de tablas, interacción directa con globales (matrices de datos multidimensionales de InterSystems IRIS, etc.).



Un aspecto importante de la implementación de CD en InterSystems IRIS: se implementa una integración bidireccional entre la plataforma y Jupyter, que permite transferir contenido a la plataforma (y, en el futuro, procesar en la plataforma) contenido en Python, R y Julia (los tres son lenguajes de programación en los correspondientes lenguajes abiertos líderes). entornos fuente de modelado matemático). Por lo tanto, los desarrolladores de contenido AI / ML tienen la capacidad de "implementar continuamente" este contenido en la plataforma, trabajando en su editor Jupyter habitual, con las bibliotecas familiares disponibles en Python, R, Julia, y realizando una depuración básica (si es necesario) fuera de la plataforma. ...



Pasando al macro mecanismo de CI en InterSystems IRIS. El diagrama muestra el macroproceso de un "robot en tiempo real" (un complejo de estructuras de datos, procesos de negocio y fragmentos de código orquestados por ellos en los lenguajes Mathred y ObjectScript, el lenguaje nativo del desarrollo de InterSystems IRIS). La tarea de este macroproceso es mantener las colas de datos necesarias para el funcionamiento de los mecanismos AI / ML (basados ​​en flujos de datos transmitidos a la plataforma en tiempo real), tomar decisiones sobre la secuencia de aplicación y el "rango" de los mecanismos AI / ML (también son "algoritmos matemáticos", modelos ", etc. - se pueden llamar de manera diferente según las especificaciones de implementación y las preferencias terminológicas), mantener actualizadas las estructuras de datos para analizar los resultados de los mecanismos de AI / ML (cubos, tablas, matrices de datos multidimensionales, etc.).- para informes, cuadros de mando, etc.).



Un aspecto importante de la implementación de CI en InterSystems IRIS: se implementa una integración bidireccional entre la plataforma y los entornos de modelado matemático, que permite ejecutar contenido colocado en la plataforma en Python, R y Julia en sus respectivos entornos con el retorno de los resultados de ejecución. Esta integración se implementa tanto en "modo terminal" (es decir, el contenido AI / ML se formula como código ObjectScript que realiza llamadas al medio matemático) y en "modo de proceso empresarial" (es decir, se formula contenido AI / ML como un proceso de negocio usando un editor gráfico, oa veces usando Jupyter, o usando IDE - IRIS Studio, Eclipse, Visual Studio Code). La disponibilidad editable de los procesos comerciales en Jupyter se refleja en el vínculo entre IRIS en el nivel de CI y Jupyter en el nivel de CD.A continuación se ofrece una descripción general más detallada de la integración con entornos de modelado matemático. En esta etapa, en nuestra opinión, hay muchas razones para fijar la presencia en la plataforma de todas las herramientas necesarias para la implementación de la "integración continua" de los desarrollos de AI / ML (provenientes de un "despliegue continuo") en soluciones de AI / ML en tiempo real.



Y el principal macro mecanismo: CT. Sin él, la plataforma AI / ML no funcionará (aunque se implementará "tiempo real" a través de CD / CI). La esencia de CT es el trabajo de la plataforma con los “artefactos” del aprendizaje automático y la inteligencia artificial directamente en las sesiones de trabajo de los entornos de modelado matemático: modelos, tablas de distribución, vectores matriciales, capas de redes neuronales, etc. Este "trabajo", en la mayoría de los casos, consiste en la creación de los artefactos mencionados en los entornos (en el caso de modelos, por ejemplo, la "creación" consiste en especificar la especificación del modelo y la posterior selección de los valores de sus parámetros - el llamado "entrenamiento" del modelo), su aplicación (por modelos: el cálculo con su ayuda de valores de "modelo" de las variables objetivo - pronósticos, pertenencia a una categoría, la probabilidad de un evento, etc.) y la mejora de artefactos ya creados y aplicados (por ejemplo, redefiniendo el conjunto de variables de entrada del modelo en función de los resultados de la aplicación, para aumentar la precisión de la predicción, como opción). El punto clave para comprender el papel de CT es su "abstracción" de las realidades de CD y CI: CT implementará todos los artefactos, centrándose en las especificaciones matemáticas y computacionales de una solución AI / ML dentro de las capacidades proporcionadas por entornos específicos. CD y CI serán responsables de “suministrar insumos” y “entregar resultados”.centrándose en las especificaciones matemáticas y computacionales de una solución AI / ML dentro de las capacidades proporcionadas por entornos específicos. CD y CI serán responsables de “suministrar insumos” y “entregar resultados”.centrándose en las especificaciones matemáticas y computacionales de una solución AI / ML dentro de las capacidades proporcionadas por entornos específicos. CD y CI serán responsables de “suministrar insumos” y “entregar resultados”.



Un aspecto importante de la implementación de CT en InterSystems IRIS: utilizando la integración ya mencionada con entornos de modelado matemático, la plataforma tiene la capacidad de extraer de las sesiones de trabajo que se ejecutan bajo su control en el entorno matemático, los mismos artefactos y (lo más importante) convertirlos en objetos de datos de plataforma. Por ejemplo, una tabla de distribución que se acaba de crear en una sesión de trabajo de Python puede transferirse (sin detener una sesión en Python) a la plataforma en forma de, por ejemplo, un global (matriz de datos multidimensionales InterSystems IRIS) - y usarse para cálculos en otra AI / ML- mecanismo (ya implementado en el lenguaje de otro entorno, por ejemplo, en R), o una tabla virtual. Otro ejemplo: en paralelo con el "modo normal" del modelo (en una sesión de trabajo de Python), se realiza "auto-ML" en sus datos de entrada:selección automática de variables de entrada óptimas y valores de parámetros. Y junto con el entrenamiento "full-time", un modelo productivo en tiempo real también recibe una "propuesta de optimización" de su especificación - en la que el conjunto de variables de entrada cambia, los valores de los parámetros cambian (ya no como resultado del entrenamiento en Python, sino como resultado del entrenamiento de una "alternativa ”Versión del mismo, por ejemplo, en la pila H2O), permitiendo que la solución general AI / ML afronte de forma autónoma cambios imprevistos en la naturaleza de los datos de entrada y los fenómenos simulados.y como resultado de entrenar una versión "alternativa" del mismo, por ejemplo, en la pila H2O), permitiendo que la solución general AI / ML afronte de manera autónoma cambios imprevistos en la naturaleza de los datos de entrada y los fenómenos simulados.y como resultado de entrenar una versión "alternativa" del mismo, por ejemplo, en la pila H2O), permitiendo que la solución general AI / ML afronte de manera autónoma cambios imprevistos en la naturaleza de los datos de entrada y los fenómenos simulados.



Conozcamos con más detalle la funcionalidad de la plataforma AI / ML de InterSystems IRIS, usando el ejemplo de un prototipo de la vida real.



En el diagrama a continuación, en el lado izquierdo de la diapositiva, hay una parte del proceso empresarial que implementa la ejecución de scripts en Python y R. En la parte central, hay registros visuales de ejecución de algunos de estos scripts, respectivamente, en Python y R. Inmediatamente después de ellos hay ejemplos de contenido en uno y otro idioma transferido para su ejecución a los entornos adecuados. Al final a la derecha: visualizaciones basadas en los resultados de la ejecución del script. Las visualizaciones en la parte superior se realizan en IRIS Analytics (los datos se toman de Python a la plataforma de datos InterSystems IRIS y se muestran en el panel de control mediante las herramientas de la plataforma), en la parte inferior, se realizan directamente en la sesión de trabajo de R y se envían desde allí a archivos gráficos. Un aspecto importante: el fragmento presentado en el prototipo es responsable de entrenar el modelo (clasificación de estados del equipo) sobre los datos recibidos en tiempo real del proceso del simulador del equipo,por orden del proceso-monitor de la calidad de la clasificación, observada durante la aplicación del modelo. La implementación de una solución AI / ML en forma de un conjunto de procesos interactivos ("agentes") se discutirá a continuación.





Figura 12 Interacción con Python, R y Julia en los



procesos de la plataforma InterSystems IRIS (también son "procesos de negocio", "procesos analíticos", "pipelines", etc. - dependiendo del contexto), en primer lugar, son editables en un editor gráfico procesos de negocio en la propia plataforma, y ​​de tal forma que se creen tanto su diagrama de bloques como el correspondiente mecanismo AI / ML (código de programa). Cuando decimos que "se obtiene un motor AI / ML", inicialmente nos referimos a la hibridación (dentro de un proceso): el contenido en los lenguajes de modelado matemático es adyacente al contenido en SQL (incluidas las extensiones de IntegratedML), en InterSystems ObjectScript, con otros lenguajes compatibles. Además, el proceso de la plataforma ofrece amplias oportunidades para "renderizar" en forma de fragmentos anidados jerárquicamente (como se puede ver en el ejemplo del diagrama a continuación), lo que hace posible organizar de manera eficaz incluso contenido muy complejo sin "caer" del formato gráfico (en "no gráficos »Métodos / clases / procedimientos, etc.). Es decir, si es necesario (y está previsto en la mayoría de los proyectos), absolutamente todas las soluciones de AI / ML se pueden implementar en un formato gráfico de auto recomendación. Tenga en cuenta que en la parte central del diagrama a continuación, que muestra un "nivel de anidamiento" más alto, puede ver que además del trabajo real de entrenamiento del modelo (usando Python y R), se agrega un análisis de la llamada curva ROC del modelo entrenado.lo que permite evaluar visualmente (y también computacionalmente) la calidad de la formación, y este análisis se implementa en el lenguaje Julia (ejecutado, respectivamente, en el marco Julia).





Figura 13 Entorno visual para la composición de soluciones de AI / ML en InterSystems IRIS



Como se mencionó anteriormente, el desarrollo inicial y (en algunos casos) la adaptación de los mecanismos de AI / ML ya implementados en la plataforma se pueden hacer fuera de la plataforma en el editor de Jupyter. En el diagrama a continuación, vemos un ejemplo de adaptación de un proceso de plataforma existente (el mismo que en el diagrama de arriba); así es como se ve el fragmento que es responsable de entrenar el modelo en Jupyter. El contenido de Python está disponible para editar, depurar y generar gráficos directamente en Jupyter. Se pueden realizar cambios (si es necesario) con sincronización instantánea en el proceso de la plataforma, incluida su versión de producción. Del mismo modo, se puede transferir contenido nuevo a la plataforma (se genera automáticamente un proceso de plataforma nueva).





Figura 14 Uso de Jupyter Notebook para editar el motor AI / ML en la



plataforma InterSystems IRIS La adaptación del proceso de la plataforma se puede realizar no solo en formato gráfico o de cuaderno, sino también en el formato IDE (entorno de desarrollo integrado) “total”. Estos IDE son IRIS Studio (estudio nativo de IRIS), Visual Studio Code (extensión de InterSystems IRIS para VSCode) y Eclipse (complemento de Atelier). En algunos casos, es posible que un equipo de desarrollo utilice los tres IDE al mismo tiempo. El siguiente diagrama muestra un ejemplo de edición del mismo proceso en IRIS studio, en Visual Studio Code y en Eclipse. Absolutamente todo el contenido está disponible para su edición: Python / R / Julia / SQL, ObjectScript y el proceso empresarial.





Figura 15 Desarrollo de un proceso empresarial de InterSystems IRIS en varios IDE



Los medios para describir y ejecutar los procesos de negocio de InterSystems IRIS en Business Process Language (BPL) merecen una mención especial. BPL hace posible el uso de “componentes de integración listos para usar” (actividades) en los procesos comerciales, lo que, de hecho, da motivos para afirmar que la “integración continua” se implementa en InterSystems IRIS. Los componentes listos para usar de un proceso empresarial (actividades y conexiones entre ellos) son el acelerador más poderoso para ensamblar una solución de IA / ML. Y no solo montajes: gracias a las actividades y conexiones entre ellos, aparece una "capa de gestión autónoma" sobre los dispares desarrollos y mecanismos de IA / ML, capaz de tomar decisiones según la situación, en tiempo real.





Figura 16 Componentes listos de los procesos comerciales para la integración continua (CI) en la plataforma InterSystems IRIS



El concepto de sistemas de agentes (también conocido como "sistemas de agentes múltiples") tiene una posición sólida en la robotización, y la plataforma InterSystems IRIS lo respalda orgánicamente a través de la construcción de "producto-proceso". Además de las posibilidades ilimitadas para "rellenar" cada proceso con la funcionalidad necesaria para una solución general, dotar al sistema de procesos de plataforma con la propiedad de "agencia" le permite crear soluciones efectivas para fenómenos modelados extremadamente inestables (comportamiento de social / biosistemas, procesos tecnológicos parcialmente observables, etc.).





Figura 17 Trabajo de una solución de IA / ML en forma de un sistema de procesos de negocio basado en agentes en InterSystems IRIS



Continuamos nuestra revisión de InterSystems IRIS con una historia sobre el uso aplicado de la plataforma para resolver clases enteras de problemas en tiempo real (un conocimiento bastante detallado de algunas de las mejores prácticas de la plataforma AI / ML en InterSystems IRIS ocurre en uno de nuestros seminarios web anteriores ).



Inmediatamente después del diagrama anterior, a continuación se muestra un diagrama más detallado del sistema de agentes. El diagrama muestra el mismo prototipo, los cuatro procesos de agentes son visibles, la relación entre ellos se dibuja esquemáticamente: GENERADOR: calcula la creación de datos por los sensores del equipo, BÚFER: administra las colas de datos, ANALIZADOR: realiza el aprendizaje automático en sí mismo, MONITOR: controla la calidad del aprendizaje automático y proporciona señal sobre la necesidad de volver a entrenar el modelo.





Figura 18 Composición de una solución de IA / ML en forma de un sistema de procesos de negocio basado en agentes en InterSystems IRIS



El siguiente diagrama ilustra el funcionamiento autónomo de otro prototipo robótico (reconocimiento de la coloración emocional de los textos) durante algún tiempo. En la parte superior - la evolución del indicador de calidad de aprendizaje del modelo (la calidad está creciendo), en la parte inferior - la dinámica del indicador de calidad del modelo y los hechos de formación repetida (barras rojas). Como puede ver, la solución es autodidacta de manera eficiente y autónoma, y ​​opera al nivel de calidad especificado (los valores del indicador de calidad no descienden por debajo del 80%).





Figura 19 (auto) aprendizaje (CT) continuo en la plataforma InterSystems IRIS



También mencionamos "auto-ML" anteriormente, pero el diagrama a continuación muestra el uso de esta funcionalidad en detalle usando otro prototipo como ejemplo. El diagrama gráfico de un fragmento de un proceso de negocio muestra la actividad que lanza una simulación en la pila de H2O, muestra los resultados de esta simulación (el dominio obvio del modelo resultante sobre los modelos "hechos por el hombre", según el diagrama comparativo de curvas ROC, así como la identificación automatizada de las "variables más influyentes" disponibles en conjunto de datos original). Un punto importante aquí es el ahorro de tiempo y recursos expertos, que se logra gracias al "auto-ML": lo que hace nuestro proceso de plataforma en medio minuto (encontrar y entrenar el modelo óptimo) puede llevar a un experto de una semana a un mes.





Figura 20 Integración de "auto-ML" en una solución de AI / ML basada en la plataforma InterSystems IRIS



El diagrama a continuación "reduce un poco el clímax", pero esta es una buena manera de completar la historia sobre las clases de tareas en tiempo real que se están resolviendo: le recordamos que con todas las capacidades de la plataforma InterSystems IRIS, el entrenamiento de modelos bajo su control es opcional. La plataforma puede obtener desde el exterior la denominada especificación del modelo PMML, entrenada en una herramienta fuera del control de la plataforma, y ​​aplicar este modelo en tiempo real desde el momento en que se importa su especificación PMML.... Es importante tener en cuenta que no todos los artefactos de AI / ML se pueden reducir a la especificación PMML, incluso si la mayoría de los artefactos más comunes lo permiten. Por lo tanto, la plataforma InterSystems IRIS es de "bucle abierto" y no significa "esclavitud de la plataforma" para los usuarios.





Figura 21 Aplicación del modelo según la especificación PMML en la plataforma InterSystems IRIS Enumeremos



las ventajas adicionales de la plataforma InterSystems IRIS (para mayor claridad, en relación con el control de procesos), que son de gran importancia en la automatización de la inteligencia artificial y el aprendizaje automático en tiempo real:



  • Herramientas de integración avanzadas con cualquier fuente de datos y consumidores (APCS / SCADA, equipos, MRO, ERP, etc.)
  • - (Hybrid Transaction/Analytical Processing, HTAP)
  • AI/ML- Python, R, Julia
  • - (-) AI/ML-
  • Business Intelligence AI/ML-
  • API AI/ML- /SCADA, - , . .


Las soluciones de AI / ML basadas en la plataforma InterSystems IRIS se adaptan fácilmente a la infraestructura de TI existente. La plataforma InterSystems IRIS proporciona una alta confiabilidad de las soluciones AI / ML al admitir configuraciones tolerantes a fallas y tolerantes a desastres y una implementación flexible en entornos virtuales, servidores físicos, nubes públicas y privadas y contenedores Docker.



Por lo tanto, InterSystems IRIS es una plataforma informática de AI / ML versátil en tiempo real. La versatilidad de nuestra plataforma se confirma en la práctica por la ausencia de restricciones de facto sobre la complejidad de los cálculos implementados, la capacidad de InterSystems IRIS para combinar (en tiempo real) el procesamiento de escenarios de una amplia variedad de industrias, la adaptabilidad excepcional de cualquier función y mecanismo de la plataforma para las necesidades específicas del usuario.





Figura 22 InterSystems IRIS - una plataforma informática universal de IA / ML en tiempo real



Para una interacción más sustancial con aquellos de nuestros lectores que estén interesados ​​en el material presentado aquí, le recomendamos que vaya más allá de leerlo y continúe el diálogo "en vivo". Proporcionaremos fácilmente soporte con la formulación de escenarios de IA / ML en tiempo real en relación con las características específicas de su empresa, realizaremos prototipos conjuntos en la plataforma InterSystems IRIS, formaremos e implementaremos en la práctica una hoja de ruta para la introducción de inteligencia artificial y aprendizaje automático en sus procesos de producción y gestión. La dirección de correo electrónico de contacto de nuestro grupo de expertos en IA / ML es MLToolkit@intersystems.com .



All Articles