InterSystems IRIS: unha plataforma universal de IA/ML en tempo real

Autor: Sergey Lukyanchikov, enxeñeiro consultor de InterSystems

Chamadas de computación AI/ML en tempo real

Comecemos con exemplos da experiencia da práctica de Data Science en InterSystems:

  • O portal de compradores cargado está conectado a un sistema de recomendación en liña. Haberá unha reestruturación das promocións en toda a rede de venda polo miúdo (por exemplo, en lugar dunha liña de promocións "plana", agora empregarase unha matriz de "tácticas de segmentos"). Que pasa cos motores de recomendación? Que ocorre co envío e actualización de datos ao motor de recomendación (o volume de datos de entrada aumentou 25000 veces)? Que ocorre co desenvolvemento das recomendacións (a necesidade de reducir mil veces o limiar de filtrado das regras de recomendación debido ao aumento de mil veces no seu número e "rango")?
  • Existe un sistema para controlar a probabilidade de que se produzan defectos nos compoñentes do equipamento. Un sistema de control de procesos automatizado conectouse ao sistema de monitorización, transmitindo miles de parámetros de proceso tecnolóxicos cada segundo. Que pasa co sistema de seguimento que anteriormente traballaba en "mostras manuais" (é capaz de proporcionar un seguimento de probabilidade segundo a segundo)? Que ocorrerá se nos datos de entrada aparece un novo bloque de varios centos de columnas con lecturas dos sensores engadidos recentemente ao sistema de control do proceso (será necesario e durante canto tempo deter o sistema de monitorización para incluír datos de novos sensores na análise? )?
  • Creouse un conxunto de mecanismos de IA/ML (recomendación, seguimento, previsión) que utilizan os resultados do traballo de cada un. Cantas horas-hombre son necesarias cada mes para adaptar o funcionamento deste complexo aos cambios nos datos de entrada? Cal é a "desaceleración" xeral cando está apoiada polo complexo de toma de decisións de xestión (a frecuencia de aparición de nova información de apoio en relación coa frecuencia de aparición de novos datos de entrada)?

Resumindo estes e moitos outros exemplos, chegamos á formulación dos retos que se presentan ao pasar ao uso de mecanismos de aprendizaxe automática e intelixencia artificial en tempo real:

  • Estamos satisfeitos coa velocidade de creación e adaptación (á situación cambiante) dos desenvolvementos de IA/ML na nosa empresa?
  • En que medida as solucións de IA/ML que usamos admiten a xestión empresarial en tempo real?
  • As solucións de IA/ML que usamos son capaces de adaptarse de forma independente (sen desenvolvedores) aos cambios nos datos e nas prácticas de xestión empresarial?

O noso artigo é unha visión xeral das capacidades da plataforma InterSystems IRIS en termos de soporte universal para o despregamento de mecanismos de IA/ML, a montaxe (integración) de solucións de IA/ML e a formación (probas) de solucións de IA/ML en uso intensivo. fluxos de datos. Neste artigo analizaremos a investigación de mercado, os estudos de caso de solucións de IA/ML e os aspectos conceptuais do que chamamos plataforma de IA/ML en tempo real.

O que sabemos polas enquisas: aplicacións en tempo real

Descubrimentos enquisarealizado entre case 800 profesionais de TI en 2019 por Lightbend, falan por si mesmos:

InterSystems IRIS: unha plataforma universal de IA/ML en tempo real
Figura 1 Principais consumidores de datos en tempo real

Citemos fragmentos importantes do informe sobre os resultados desta enquisa na nosa tradución:

“... As tendencias na popularidade das ferramentas para integrar fluxos de datos e, ao mesmo tempo, o apoio á informática en contedores dan unha resposta sinérxica á petición do mercado dunha proposta de solucións eficaces máis sensible, racional e dinámica. A transmisión de datos transfire información máis rápido que os paquetes de datos tradicionais. A isto súmase a capacidade de aplicar rapidamente métodos computacionais, como, por exemplo, recomendacións baseadas en IA/ML, creando vantaxes competitivas grazas a unha maior satisfacción do cliente. A carreira pola axilidade tamén afecta a todos os roles do paradigma DevOps, facendo que o desenvolvemento e a implantación de aplicacións sexan máis eficientes. … Oitocentos catro profesionais de TI proporcionaron información sobre o uso dos fluxos de datos nas súas organizacións. Os enquisados ​​situáronse predominantemente en países occidentais (41% en Europa e 37% en América do Norte) e distribuíronse case uniformemente entre pequenas, medianas e grandes empresas. ...

... A intelixencia artificial non é bombo. O cincuenta e oito por cento dos que xa utilizan o procesamento de fluxos de datos en aplicacións de IA/ML de produtividade confirman que o seu uso de AI/ML terá o maior crecemento no próximo ano (en comparación con outras aplicacións).

  • Segundo a maioría dos entrevistados, o uso de fluxos de datos en escenarios de IA/ML terá o maior crecemento no próximo ano.
  • As aplicacións en IA/ML crecerán non só debido a tipos relativamente novos de escenarios, senón tamén debido a escenarios tradicionais nos que se usan cada vez máis datos en tempo real.
  • Ademais da IA/ML, o nivel de entusiasmo entre os usuarios dos pipelines de datos de IoT é impresionante: o 48% dos que xa integraron datos de IoT di que a implementación de escenarios nestes datos verá un aumento significativo nun futuro próximo. ..."

Desta enquisa bastante interesante, está claro que a percepción dos escenarios de aprendizaxe automática e intelixencia artificial como líderes no consumo de fluxos de datos xa está "en camiño". Pero unha observación igualmente importante é a percepción da IA/ML en tempo real a través da lente de DevOps: aquí xa podemos comezar a falar da transformación da cultura aínda dominante de "IA/ML desbotables cun conxunto de datos totalmente accesible".

Concepto de plataforma AI/ML en tempo real

Unha área de aplicación típica para AI/ML en tempo real é o control de procesos na fabricación. Usando o seu exemplo e tendo en conta pensamentos anteriores, formularemos o concepto dunha plataforma de IA/ML en tempo real.
O uso da intelixencia artificial e da aprendizaxe automática no control de procesos ten unha serie de características:

  • Os datos sobre o estado do proceso tecnolóxico recíbense intensamente: con alta frecuencia e para unha ampla gama de parámetros (ata decenas de miles de valores de parámetros transmitidos por segundo desde o sistema de control do proceso)
  • Os datos sobre a identificación de defectos, sen esquecer os datos sobre o seu desenvolvemento, pola contra, son escasos e irregulares, caracterizados por unha tipificación insuficiente dos defectos e a súa localización no tempo (a miúdo representada por rexistros en papel)
  • Desde un punto de vista práctico, só se dispón dunha "xanela de relevancia" dos datos fonte para adestrar e aplicar modelos, que reflicta a dinámica do proceso tecnolóxico nun intervalo deslizante razoable que remata cos últimos valores lidos dos parámetros do proceso.

Estas características obrígannos, ademais de recibir e procesar en tempo real o intenso “sinal de entrada de banda ancha” do proceso tecnolóxico, a realizar (en paralelo) a aplicación, formación e control de calidade dos resultados da IA/ Modelos ML - tamén en tempo real. O "cadro" que "ve" os nosos modelos na xanela corrediza de relevancia está en constante cambio e, con el, a calidade dos resultados do traballo dos modelos de IA/ML adestrados nun dos "cadros" no pasado tamén cambia. . Se a calidade dos resultados do traballo dos modelos AI/ML se deteriora (por exemplo: o valor do erro de clasificación "alarma-norma" superou os límites que definimos), o adestramento adicional dos modelos debería iniciarse automaticamente o un "cadro" máis actual - e a elección do momento para lanzar formación adicional dos modelos debería ter en conta como a duración da propia formación e a dinámica de deterioración da calidade do traballo da versión actual dos modelos (xa que as versións actuais dos modelos seguen usándose mentres se adestran os modelos e ata que se formen as súas versións "recién adestradas").

InterSystems IRIS ten capacidades de plataforma clave para habilitar solucións de IA/ML para o control de procesos en tempo real. Estas capacidades pódense dividir en tres grupos principais:

  • Implementación continua (Despliegue/Entrega continua, CD) de mecanismos AI/ML novos ou adaptados existentes nunha solución produtiva que opera en tempo real na plataforma InterSystems IRIS
  • Integración continua (CI) nunha única solución produtiva de fluxos de datos de procesos tecnolóxicos entrantes, colas de datos para aplicación/formación/control de calidade de mecanismos de IA/ML e intercambios de accións de datos/código/control con contornos de modelado matemático, orquestrado en tempo real. plataforma InterSystems IRIS
  • (Auto-)formación continua (Continuous Training, CT) de mecanismos de IA/ML, realizada en contornos de modelado matemático utilizando datos, código e accións de control (“decisions made”) transmitidas pola plataforma InterSystems IRIS

A clasificación das capacidades da plataforma en relación coa aprendizaxe automática e a intelixencia artificial precisamente nestes grupos non é casual. Citemos o metodolóxico publicación Google, que proporciona unha base conceptual para esta clasificación, na nosa tradución:

“... O concepto DevOps, popular hoxe en día, abrangue o desenvolvemento e operación de sistemas de información a gran escala. As vantaxes de implementar este concepto son a redución da duración dos ciclos de desenvolvemento, o despregamento máis rápido dos desenvolvementos e a flexibilidade na planificación da versión. Para conseguir estes beneficios, DevOps implica a implementación de polo menos dúas prácticas:

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

Estas prácticas tamén se aplican ás plataformas de IA/ML para garantir unha montaxe fiable e eficaz de solucións produtivas de IA/ML.

As plataformas de IA/ML difiren doutros sistemas de información nos seguintes aspectos:

  • Competencias do equipo: ao crear unha solución de IA/ML, o equipo adoita incluír científicos de datos ou expertos "académicos" no campo da investigación de datos que realizan análises de datos, desenvolven e proban modelos. Estes membros do equipo poden non ser desenvolvedores profesionais de código produtivo.
  • Desenvolvemento: os motores AI/ML son de natureza experimental. Para resolver un problema da forma máis eficiente, é necesario pasar por varias combinacións de variables de entrada, algoritmos, métodos de modelado e parámetros do modelo. A complexidade desta busca reside en rastrexar "o que funcionou/non funcionou", garantindo a reproducibilidade dos episodios, a xeneralización dos desenvolvementos para implementacións repetidas.
  • Probas: probar motores AI/ML require unha gama máis ampla de probas que a maioría dos outros desenvolvementos. Ademais das probas unitarias e de integración estándar, compróbase a validez dos datos e a calidade dos resultados da aplicación do modelo a mostras de adestramento e control.
  • Implantación: o despregamento de solucións de IA/ML non se limita aos servizos preditivos que usan un modelo de adestramento unha vez. As solucións de IA/ML constrúense en canalizacións de varias etapas que realizan adestramento e aplicación de modelos automatizados. A implantación deste tipo de conducións implica automatizar accións non triviais que tradicionalmente realizan manualmente os científicos de datos para poder adestrar e probar modelos.
  • Produtividade: os motores AI/ML poden carecer de produtividade non só pola programación ineficiente, senón tamén pola natureza en constante cambio dos datos de entrada. Noutras palabras, o rendemento dos mecanismos de IA/ML pode degradarse debido a unha gama máis ampla de razóns que o desempeño dos desenvolvementos convencionais. O que leva á necesidade de supervisar (en liña) o rendemento dos nosos motores de IA/ML, así como enviar alertas ou rexeitar os resultados se os indicadores de rendemento non cumpren as expectativas.

As plataformas de IA/ML son similares a outros sistemas de información, xa que ambos requiren unha integración continua de código con control de versións, probas unitarias, probas de integración e implementación de desenvolvemento continuo. Non obstante, no caso de AI/ML, hai varias diferenzas importantes:

  • CI (integración continua) xa non se limita a probar e validar o código dos compoñentes despregados; tamén inclúe probar e validar datos e modelos de IA/ML.
  • CD (Continuous Delivery/Deployment, continuous deployment) non se limita a escribir e lanzar paquetes ou servizos, senón que implica unha plataforma para a composición, formación e aplicación de solucións de IA/ML.
  • CT (Formación Continua, formación continua) é un elemento novo [aprox. autor do artigo: un novo elemento en relación co concepto tradicional de DevOps, no que a TC é, por regra xeral, Continuous Testing], inherente ás plataformas de IA/ML, responsable da xestión autónoma dos mecanismos de formación e aplicación da IA. Modelos /ML. ..."

Podemos afirmar que a aprendizaxe automática e a intelixencia artificial que traballan con datos en tempo real requiren un conxunto máis amplo de ferramentas e competencias (desde o desenvolvemento de código ata a orquestración de contornos de modelado matemático), unha integración máis estreita entre todas as áreas funcionais e temáticas, unha organización máis eficiente do recursos da máquina.

Escenario en tempo real: recoñecendo o desenvolvemento de defectos nas bombas de alimentación

Continuando usando a área de control do proceso como exemplo, considere un problema específico (xa mencionamos ao principio): necesitamos proporcionar un seguimento en tempo real do desenvolvemento de defectos nas bombas en función do fluxo dos valores dos parámetros do proceso. e informes do persoal de reparación sobre os defectos detectados.

InterSystems IRIS: unha plataforma universal de IA/ML en tempo real
Figura 2 Formulación do problema para o seguimento do desenvolvemento de defectos

Unha característica da maioría das tarefas que se plantexan deste xeito na práctica é que a regularidade e eficiencia da recepción de datos (APCS) deben considerarse no contexto da aparición (e rexistro) episódica e irregular de defectos de varios tipos. Noutras palabras: os datos do sistema de control de procesos chegan unha vez por segundo, correctos e precisos, e as notas sobre os defectos realízanse cun lapis químico indicando a data nun caderno xeral do taller (por exemplo: “12.01 – fuga na portada). desde o lado do 3º rodamento”).

Así, podemos complementar a formulación do problema coa seguinte limitación importante: só temos unha "etiqueta" dun defecto dun tipo específico (é dicir, un exemplo dun defecto dun tipo específico está representado por datos do control do proceso). sistema nunha data específica - e non temos máis exemplos dun defecto deste tipo en particular). Esta limitación lévanos inmediatamente máis aló do ámbito da aprendizaxe automática clásica (aprendizaxe supervisada), para o que debería haber moitas "etiquetas".

InterSystems IRIS: unha plataforma universal de IA/ML en tempo real
Figura 3 Aclaración da tarefa de vixilancia do desenvolvemento dos defectos

Podemos "multiplicar" dalgún xeito a única "etiqueta" á nosa disposición? Si podemos. O estado actual da bomba caracterízase polo grao de semellanza cos defectos rexistrados. Mesmo sen o uso de métodos cuantitativos, a nivel de percepción visual, observando a dinámica dos valores de datos que chegan do sistema de control do proceso, xa se pode aprender moito:

InterSystems IRIS: unha plataforma universal de IA/ML en tempo real
Figura 4 Dinámica do estado da bomba no fondo dunha "marca" dun defecto dun tipo determinado

Pero a percepción visual (polo menos por agora) non é o xerador máis axeitado de "etiquetas" no noso escenario que cambia rapidamente. Avaliaremos a semellanza da condición actual da bomba cos defectos informados mediante unha proba estatística.

InterSystems IRIS: unha plataforma universal de IA/ML en tempo real
Figura 5 Aplicación dunha proba estatística aos datos entrantes no fondo dunha "etiqueta" de defecto

Unha proba estatística determina a probabilidade de que os rexistros cos valores dos parámetros tecnolóxicos do proceso no "paquete de fluxo" recibidos do sistema de control do proceso sexan similares aos rexistros da "etiqueta" dun defecto dun determinado tipo. O valor de probabilidade (índice de semellanza estatística) calculado como resultado da aplicación dunha proba estatística convértese nun valor de 0 ou 1, converténdose nunha "etiqueta" para a aprendizaxe automática en cada rexistro específico do paquete que se está examinando para determinar a semellanza. É dicir, despois de procesar un paquete recentemente recibido de rexistros de estado da bomba cunha proba estatística, temos a oportunidade de (a) engadir este paquete ao conxunto de adestramento para adestrar o modelo AI/ML e (b) realizar o control de calidade do versión actual do modelo ao usalo neste paquete.

InterSystems IRIS: unha plataforma universal de IA/ML en tempo real
Figura 6 Aplicación dun modelo de aprendizaxe automática aos datos entrantes no fondo dunha "etiqueta" de defecto

Nun dos nosos anteriores seminarios web Amosamos e explicamos como a plataforma InterSystems IRIS permítelle implementar calquera mecanismo de IA/ML en forma de procesos de negocio de execución continua que controlan a fiabilidade dos resultados do modelado e adaptan os parámetros do modelo. Ao implementar un prototipo do noso escenario con bombas, utilizamos toda a funcionalidade de InterSystems IRIS presentada durante o seminario web - implementando no proceso do analizador como parte da nosa solución non a aprendizaxe supervisada clásica, senón a aprendizaxe de reforzo, que xestiona automaticamente a selección dos modelos de adestramento. . A mostra de adestramento contén rexistros sobre os que xorde un "consenso de detección" despois de aplicar tanto a proba estatística como a versión actual do modelo, é dicir, tanto a proba estatística (despois de transformar o índice de semellanza a 0 ou 1) como o modelo que produciu o resultado. sobre estes rexistros 1. Durante a nova formación do modelo, durante a súa validación (o modelo recén adestrado aplícase á súa propia mostra de adestramento, con aplicación preliminar dunha proba estatística a ela), rexistros que "non conservaron" o resultado 1 despois do procesado. pola proba estatística (debido á presenza constante no adestramento dunha mostra de rexistros da "etiqueta" orixinal do defecto), son eliminados do conxunto de adestramento e unha nova versión do modelo aprende a partir da "etiqueta" do defecto. defecto máis os rexistros "retidos" do fluxo.

InterSystems IRIS: unha plataforma universal de IA/ML en tempo real
Figura 7 Robotización de cálculos AI/ML en InterSystems IRIS

Se é necesario unha especie de "segunda opinión" sobre a calidade da detección obtida durante os cálculos locais en InterSystems IRIS, créase un proceso de asesoramento para realizar adestramento e aplicación de modelos nun conxunto de datos de control mediante servizos na nube (por exemplo, Microsoft Azure, Amazon Web Services, Google Cloud Platform, etc.):

InterSystems IRIS: unha plataforma universal de IA/ML en tempo real
Figura 8 Segunda opinión de Microsoft Azure orquestrada por InterSystems IRIS

O prototipo do noso escenario en InterSystems IRIS está deseñado como un sistema baseado en axentes de procesos analíticos que interactúan cun obxecto de equipo (bomba), contornas de modelado matemático (Python, R e Julia) e garanten a autoaprendizaxe de toda a IA/IA implicada. Mecanismos de ML: en fluxos de datos en tempo real.

InterSystems IRIS: unha plataforma universal de IA/ML en tempo real
Figura 9 Funcionalidade principal da solución AI/ML en tempo real en InterSystems IRIS

O resultado práctico do noso prototipo:

  • Defecto de mostra recoñecido polo modelo (12 de xaneiro):

InterSystems IRIS: unha plataforma universal de IA/ML en tempo real

  • Un defecto en desenvolvemento recoñecido polo modelo que non estaba incluído na mostra (o 11 de setembro, o propio defecto foi identificado polo equipo de reparación só dous días despois, o 13 de setembro):

InterSystems IRIS: unha plataforma universal de IA/ML en tempo real
A simulación sobre datos reais que conteñen varios episodios dun mesmo defecto demostrou que a nosa solución, implementada na plataforma InterSystems IRIS, permite identificar o desenvolvemento de defectos deste tipo varios días antes de que sexan detectados polo equipo de reparación.

InterSystems IRIS: unha plataforma de computación AI/ML universal en tempo real

A plataforma IRIS de InterSystems simplifica o desenvolvemento, implantación e operación de solucións de datos en tempo real. InterSystems IRIS é capaz de realizar simultaneamente o procesamento de datos transaccionais e analíticos; admite vistas de datos sincronizadas segundo varios modelos (incluídos relacionais, xerárquicos, obxecto e documento); actuar como plataforma para integrar unha ampla gama de fontes de datos e aplicacións individuais; proporcionar análises avanzadas en tempo real sobre datos estruturados e non estruturados. InterSystems IRIS tamén ofrece mecanismos para usar ferramentas analíticas externas e permite unha combinación flexible de hospedaxe na nube e en servidores locais.

As aplicacións construídas na plataforma InterSystems IRIS están implantadas en diversos sectores, axudando ás empresas a conseguir importantes beneficios económicos desde unha perspectiva estratéxica e operativa, aumentando a toma de decisións informadas e superando as diferenzas entre eventos, análises e accións.

InterSystems IRIS: unha plataforma universal de IA/ML en tempo real
Figura 10 Arquitectura InterSystems IRIS no contexto da IA/ML en tempo real

Do mesmo xeito que o diagrama anterior, o seguinte diagrama combina o novo "sistema de coordenadas" (CD/CI/CT) cun diagrama do fluxo de información entre os elementos de traballo da plataforma. A visualización comeza co macromecanismo CD e continúa cos macromecanismos CI e CT.

InterSystems IRIS: unha plataforma universal de IA/ML en tempo real
Figura 11 Diagrama de fluxos de información entre elementos AI/ML da plataforma InterSystems IRIS

A esencia do mecanismo de CD en InterSystems IRIS: os usuarios da plataforma (desenvolvedores de solucións AI/ML) adaptan e/ou crean novos desenvolvementos AI/ML utilizando un editor de código especializado para mecanismos AI/ML: Jupyter (nome completo: Jupyter Notebook; para brevidade, os documentos creados neste editor tamén se chaman ás veces). En Jupyter, un programador ten a oportunidade de escribir, depurar e verificar o rendemento (incluído o uso de gráficos) dun desenvolvemento específico de IA/ML antes de que se coloque ("despregue") en InterSystems IRIS. Está claro que un novo desenvolvemento creado deste xeito só recibirá depuración básica (xa que, en particular, Jupyter non funciona con fluxos de datos en tempo real) - isto está na orde das cousas, porque o principal resultado do desenvolvemento en Jupyter é a confirmación da operatividade fundamental dun mecanismo separado de IA/ML ("mostra o resultado esperado nunha mostra de datos"). Do mesmo xeito, un mecanismo xa colocado na plataforma (consulte os seguintes macro-mecanismos) antes da depuración en Jupyter pode requirir unha "reversión" a un formulario "pre-plataforma" (lendo datos de ficheiros, traballando con datos a través de xDBC en lugar de táboas, interacción directa con globais: matrices de datos multidimensionais InterSystems IRIS, etc.).

Un aspecto importante da implementación de CD en InterSystems IRIS: implementouse a integración bidireccional entre a plataforma e Jupyter, permitindo que o contido en Python, R e Julia sexa transferido á plataforma (e, posteriormente, procesado na plataforma) (os tres están programando). linguaxes nas principais linguas de código aberto correspondentes). contornos de modelado matemático de orixe). Así, os desenvolvedores de contidos de AI/ML teñen a oportunidade de levar a cabo unha "implementación continua" deste contido na plataforma, traballando no seu editor Jupyter familiar, con bibliotecas coñecidas dispoñibles en Python, R, Julia e realizando depuración básica (se é necesario). fóra da plataforma.

Pasemos ao mecanismo de macro CI en InterSystems IRIS. O diagrama mostra o proceso macro do "robotizador en tempo real" (un complexo de estruturas de datos, procesos de negocio e fragmentos de código orquestrados por eles en linguaxes matemáticas e ObjectScript, a linguaxe de desenvolvemento nativa de InterSystems IRIS). A tarefa deste macroproceso é manter as colas de datos necesarias para o funcionamento dos mecanismos de IA/ML (baseados en fluxos de datos transmitidos á plataforma en tempo real), tomar decisións sobre a secuencia de aplicación e a “variedade” de AI/ML. Os mecanismos de ML (tamén son “algoritmos matemáticos”, “modelos”, etc. – poden chamarse de forma diferente dependendo das especificidades da implementación e das preferencias terminolóxicas), manteñen as estruturas de datos actualizadas para analizar os resultados do traballo de AI/ Mecanismos de ML (cubos, táboas, matrices de datos multidimensionais, etc.) etc. – para informes, paneis, etc.).

Un aspecto importante da implementación de CI especificamente en InterSystems IRIS: implementouse a integración bidireccional entre a plataforma e os contornos de modelado matemático, o que lle permite executar contido aloxado na plataforma en Python, R e Julia nos seus respectivos contornos e recibir de volta a execución. resultados. Esta integración implícase tanto en "modo terminal" (é dicir, o contido AI/ML formúlase como código ObjectScript que fai chamadas ao ambiente) como en "modo de proceso de negocio" (é dicir, o contido AI/ML formúlase como un proceso de negocio). usando un editor gráfico, ou ás veces usando Jupyter, ou usando un IDE - IRIS Studio, Eclipse, Visual Studio Code). A dispoñibilidade de procesos comerciais para a edición en Jupyter reflíctese a través da conexión entre IRIS a nivel de CI e Jupyter a nivel de CD. A continuación ofrécese unha visión máis detallada da integración con contornos de modelado matemático. Nesta fase, na nosa opinión, hai todas as razóns para garantir que a plataforma dispoña de todas as ferramentas necesarias para implementar a "integración continua" dos desenvolvementos de IA/ML (procedentes da "implementación continua") en solucións de IA/ML en tempo real.

E o principal mecanismo macro: TC. Sen ela, non haberá plataforma AI/ML (aínda que "en tempo real" implementarase a través de CD/CI). A esencia da TC é o traballo da plataforma con "artefactos" de aprendizaxe automática e intelixencia artificial directamente en sesións de traballo de contornos de modelado matemático: modelos, táboas de distribución, vectores matriciales, capas de redes neuronais, etc. Este "traballo", na maioría dos casos, consiste en crear os artefactos mencionados en ambientes (no caso dos modelos, por exemplo, a "creación" consiste en establecer a especificación do modelo e a posterior selección dos valores dos seus parámetros - o chamado "adestramento" do modelo), a súa aplicación (para modelos: cálculo coa súa axuda de valores "modelos" de variables obxectivo - previsións, pertenza a categorías, probabilidade dun evento, etc.) e mellora de xa artefactos creados e aplicados (por exemplo, redefinindo un conxunto de variables de entrada do modelo en función dos resultados da aplicación, para mellorar a precisión da previsión, como opción). O punto clave para comprender o papel da TC é a súa "abstracción" das realidades de CD e CI: CT implementará todos os artefactos, centrándose nas especificidades computacionais e matemáticas da solución AI/ML dentro das capacidades proporcionadas por ambientes específicos. A responsabilidade de "proporcionar entradas" e "entregar saídas" será responsabilidade de CD e CI.

Un aspecto importante da implementación de CT especificamente en InterSystems IRIS: utilizando a integración con contornos de modelado matemático xa mencionado anteriormente, a plataforma ten a capacidade de extraer eses mesmos artefactos das sesións de traballo que se executan baixo o seu control en contornos matemáticos e (o máis importante) transformar. en obxectos de datos da plataforma. Por exemplo, unha táboa de distribución que se acaba de crear nunha sesión de Python en funcionamento pódese transferir (sen deter a sesión de Python) á plataforma en forma, por exemplo, dunha matriz de datos global (unha matriz de datos IRIS de InterSystems multidimensional) e empregada. para cálculos noutro mecanismo AI/ML- (implementado na linguaxe doutro entorno -por exemplo, en R)- ou nunha táboa virtual. Outro exemplo: paralelamente ao "modo normal" de funcionamento do modelo (na sesión de traballo de Python), lévase a cabo "auto-ML" nos seus datos de entrada: selección automática de variables de entrada óptimas e valores de parámetros. E xunto coa formación "regular", un modelo produtivo en tempo real tamén recibe unha "proposta de optimización" da súa especificación, na que cambia o conxunto de variables de entrada, cambian os valores dos parámetros (xa non como resultado da formación). en Python, pero como resultado do adestramento cunha versión "alternativa" de si mesma, como a pila H2O), permitindo que a solución global de IA/ML faga fronte de forma autónoma a cambios inesperados na natureza dos datos de entrada e fenómenos que se están a modelar. .

Coñecemos máis en detalle a funcionalidade AI/ML da plataforma de InterSystems IRIS, usando o exemplo dun prototipo real.

No diagrama de abaixo, no lado esquerdo da diapositiva hai unha parte do proceso empresarial que implementa a execución de scripts en Python e R. Na parte central hai rexistros visuais da execución dalgúns destes scripts, respectivamente, en Python e R. Inmediatamente detrás deles hai exemplos de contidos nunha e outra linguaxe, trasladados para a súa execución aos contornos axeitados. Ao final á dereita aparecen visualizacións baseadas nos resultados da execución do script. As visualizacións na parte superior realizáronse en IRIS Analytics (os datos foron tomados de Python na plataforma de datos IRIS de InterSystems e mostráronse nun panel mediante a plataforma), na parte inferior realizáronse directamente na sesión de traballo R e saíronse desde alí a ficheiros gráficos. . Un aspecto importante: o fragmento presentado no prototipo encárgase de adestrar o modelo (clasificación dos estados do equipamento) sobre os datos recibidos en tempo real do proceso do simulador do equipamento, previa orde do proceso de monitor de calidade de clasificación observado durante a aplicación do modelo. A implementación dunha solución de IA/ML en forma dun conxunto de procesos interactivos ("axentes") será discutido máis adiante.

InterSystems IRIS: unha plataforma universal de IA/ML en tempo real
Figura 12 Interacción con Python, R e Julia en InterSystems IRIS

Os procesos da plataforma (tamén son "procesos de negocio", "procesos analíticos", "canalizacións", etc. - dependendo do contexto), en primeiro lugar, edítanse no editor gráfico de procesos de negocio na propia plataforma, e nun forma que tanto o seu diagrama de bloques como o correspondente mecanismo AI/ML (código de programa) se crean simultáneamente. Cando dicimos que "se obtén un mecanismo de IA/ML", inicialmente queremos dicir hibridación (dentro dun proceso): o contido nas linguaxes dos contornos de modelado matemático é adxacente ao contido en SQL (incluíndo extensións de IntegratedML), en InterSystems ObjectScript, con outras linguaxes admitidas. Ademais, o proceso da plataforma ofrece oportunidades moi amplas para "renderizar" en forma de fragmentos aniñados xerarquicamente (como se pode ver no exemplo do diagrama a continuación), o que lle permite organizar de forma eficaz incluso contido moi complexo sen nunca "caer". do formato gráfico (en formatos “non gráficos”). » métodos/clases/procedementos, etc.). É dicir, se é necesario (e está previsto na maioría dos proxectos), pódese implementar absolutamente toda a solución de IA/ML nun formato gráfico de autodocumentación. Teña en conta que na parte central do diagrama a continuación, que representa un "nivel de anidación" superior, está claro que ademais do traballo real de adestramento do modelo (usando Python e R), unha análise do chamado Engádese a curva ROC do modelo adestrado, que permite avaliar visualmente (e computacionalmente) a calidade do adestramento, e esta análise implícase na linguaxe Julia (realizada, en consecuencia, no entorno matemático Julia).

InterSystems IRIS: unha plataforma universal de IA/ML en tempo real
Figura 13 Entorno visual para a composición de solucións AI/ML en InterSystems IRIS

Como se mencionou anteriormente, o desenvolvemento inicial e (nalgúns casos) a adaptación dos mecanismos de IA/ML xa implementados na plataforma farase/pode realizarse fóra da plataforma no editor Jupyter. No diagrama de abaixo vemos un exemplo de adaptación dun proceso de plataforma existente (o mesmo que no diagrama anterior): así se ve o fragmento encargado de adestrar o modelo en Jupyter. O contido de Python está dispoñible para editar, depurar e producir gráficos directamente en Jupyter. Os cambios (se é necesario) pódense realizar coa sincronización instantánea no proceso da plataforma, incluída a súa versión produtiva. Pódese transferir contido novo á plataforma dun xeito similar (xerase automaticamente un novo proceso de plataforma).

InterSystems IRIS: unha plataforma universal de IA/ML en tempo real
Figura 14 Usando Jupyter Notebook para editar o motor AI/ML na plataforma InterSystems IRIS

A adaptación dun proceso de plataforma pódese realizar non só nun formato gráfico ou portátil, senón tamén no formato "total" IDE (Integrated Development Environment). Estes IDE son IRIS Studio (estudio IRIS nativo), Visual Studio Code (extensión InterSystems IRIS para VSCode) e Eclipse (complemento Atelier). Nalgúns casos, é posible que un equipo de desenvolvemento use os tres IDE ao mesmo tempo. O seguinte diagrama mostra un exemplo de edición do mesmo proceso en IRIS Studio, en Visual Studio Code e en Eclipse. Absolutamente todo o contido está dispoñible para editar: Python/R/Julia/SQL, ObjectScript e procesos de negocio.

InterSystems IRIS: unha plataforma universal de IA/ML en tempo real
Figura 15 Desenvolvemento do proceso de negocio InterSystems IRIS en varios IDE

Mención especial merecen as ferramentas para describir e executar os procesos de negocio de InterSystems IRIS en Business Process Language (BPL). BPL fai posible o uso de "componentes de integración preparados" (actividades) nos procesos de negocio - o que, de feito, dá todas as razóns para dicir que a "integración continua" está implementada en InterSystems IRIS. Os compoñentes do proceso de negocio preparados (actividades e conexións entre eles) son un poderoso acelerador para montar unha solución de IA/ML. E non só asembleas: grazas ás actividades e conexións entre elas a través de desenvolvementos e mecanismos dispares de IA/ML, xorde unha “capa de xestión autónoma”, capaz de tomar decisións segundo a situación, en tempo real.

InterSystems IRIS: unha plataforma universal de IA/ML en tempo real
Figura 16 Compoñentes de procesos de negocio listos para a integración continua (CI) na plataforma InterSystems IRIS

O concepto de sistemas de axentes (tamén coñecidos como "sistemas multiaxentes") ten unha forte posición na robotización, e a plataforma InterSystems IRIS apóiao organicamente a través da construción "produto-proceso". Ademais das posibilidades ilimitadas de "encher" cada proceso coa funcionalidade necesaria para a solución global, dotar ao sistema de procesos da plataforma coa propiedade de "axencia" permite crear solucións eficaces para fenómenos simulados extremadamente inestables (comportamento de biosistemas, procesos tecnolóxicos parcialmente observables, etc.).

InterSystems IRIS: unha plataforma universal de IA/ML en tempo real
Figura 16 Funcionamento dunha solución de IA/ML como sistema de procesos de negocio baseado en axentes en InterSystems IRIS

Continuamos coa nosa revisión de InterSystems IRIS cunha historia sobre o uso aplicado da plataforma para resolver clases enteiras de problemas en tempo real (pódese atopar unha introdución bastante detallada a algunhas das mellores prácticas da plataforma AI/ML en InterSystems IRIS nun dos nosos anteriores seminarios web).

Despois do diagrama anterior, a continuación móstrase un diagrama máis detallado do sistema de axentes. O diagrama mostra o mesmo prototipo, os catro procesos de axentes son visibles, as relacións entre eles están debuxadas esquemáticamente: XERADOR - procesa a creación de datos por sensores do equipo, BUFFER - xestiona as colas de datos, ANALIZADOR - realiza a aprendizaxe automática, MONITOR - supervisa o calidade da aprendizaxe automática e envía un sinal sobre a necesidade de reciclar o modelo.

InterSystems IRIS: unha plataforma universal de IA/ML en tempo real
Figura 17 Composición dunha solución de IA/ML en forma de sistema de procesos de negocio baseado en axentes en InterSystems IRIS

O diagrama seguinte ilustra o funcionamento autónomo doutro prototipo robótico (recoñecemento da cor emocional dos textos) durante algún tempo. Na parte superior atópase a evolución do indicador de calidade da formación do modelo (a calidade está crecendo), na parte inferior está a dinámica do indicador de calidade da aplicación do modelo e os feitos do adestramento repetido (rayas vermellas). Como podes ver, a solución aprendeu por si mesma de forma eficiente e autónoma e funciona nun determinado nivel de calidade (os valores de puntuación de calidade non baixan do 80%).

InterSystems IRIS: unha plataforma universal de IA/ML en tempo real
Figura 18 (auto-)formación (TC) continua na plataforma InterSystems IRIS

Tamén mencionamos "auto-ML" anteriormente, pero o diagrama a continuación mostra o uso desta funcionalidade en detalle usando o exemplo doutro prototipo. O diagrama gráfico dun fragmento dun proceso empresarial mostra a actividade que desencadea o modelado na pila H2O, mostra os resultados deste modelado (o claro predominio do modelo resultante sobre os modelos “man-made”, segundo o diagrama comparativo de curvas ROC, así como a identificación automatizada das "variables máis influentes" dispoñibles no conxunto de datos orixinal). Un punto importante aquí é o aforro de tempo e recursos expertos que se consegue mediante o "auto-ML": o que fai o proceso da nosa plataforma en medio minuto (achar e adestrar o modelo óptimo) pode levar un experto dunha semana a un mes.

InterSystems IRIS: unha plataforma universal de IA/ML en tempo real
Figura 19 Integración de “auto-ML” nunha solución AI/ML na plataforma InterSystems IRIS

O diagrama de abaixo perde un pouco o punto, pero é unha boa forma de rematar a historia sobre as clases de problemas en tempo real que se están solucionando: lembrámosvos que con todas as capacidades da plataforma InterSystems IRIS, os modelos de adestramento baixo o seu control é non obrigatorio. A plataforma pode recibir desde o exterior a denominada especificación PMML do modelo, adestrada nunha ferramenta que non está baixo o control da plataforma -e aplicar este modelo en tempo real desde o momento en que se importa. Especificacións de PMML. É importante ter en conta que non todos os artefactos AI/ML poden reducirse a unha especificación PMML, aínda que a maioría dos artefactos máis comúns o permitan. Así, a plataforma InterSystems IRIS é "bucle aberto" e non significa "escravitude de plataformas" para os usuarios.

InterSystems IRIS: unha plataforma universal de IA/ML en tempo real
Figura 20 Integración de “auto-ML” nunha solución AI/ML na plataforma InterSystems IRIS

Imos enumerar as vantaxes adicionais da plataforma de InterSystems IRIS (para maior claridade, en relación co control de procesos), que son de gran importancia na automatización da intelixencia artificial e na aprendizaxe automática en tempo real:

  • Desenvolveu ferramentas de integración con calquera fonte de datos e consumidores (sistema de control de procesos/SCADA, equipos, MRO, ERP, etc.)
  • Integrado DBMS multimodelo para o procesamento transaccional e analítico de alto rendemento (transacción híbrida/procesamento analítico, HTAP) de calquera volume de datos do proceso tecnolóxico
  • Ferramentas de desenvolvemento para o despregamento continuo de motores AI/ML para solucións en tempo real baseadas en Python, R, Julia
  • Procesos de negocio adaptativos para a integración continua e (auto)aprendizaxe de motores de solución de IA/ML en tempo real
  • Ferramentas de Business Intelligence integradas para visualizar os datos do proceso e os resultados dunha solución de IA/ML
  • Xestión de API para entregar os resultados da solución AI/ML a sistemas de control de procesos/SCADA, sistemas de información e análise, envío de alertas, etc.

As solucións de IA/ML na plataforma InterSystems IRIS encaixan facilmente na infraestrutura de TI existente. A plataforma IRIS de InterSystems garante unha alta fiabilidade das solucións de IA/ML ao admitir configuracións tolerantes a fallos e tolerantes a desastres e unha implantación flexible en contornas virtuais, servidores físicos, nubes públicas e privadas e contedores Docker.

Así, InterSystems IRIS é unha plataforma de computación AI/ML en tempo real universal. A universalidade da nosa plataforma confírmase na práctica pola ausencia de restricións de facto sobre a complexidade dos cálculos implementados, a capacidade de InterSystems IRIS para combinar (en tempo real) o procesamento de escenarios dunha gran variedade de industrias e a excepcional adaptabilidade de calquera funcións e mecanismos da plataforma ás necesidades específicas dos usuarios.

InterSystems IRIS: unha plataforma universal de IA/ML en tempo real
Figura 21 InterSystems IRIS: unha plataforma de computación AI/ML universal en tempo real

Para unha interacción máis substancial cos nosos lectores que estean interesados ​​no material aquí presentado, recomendamos non limitarse a lelo e continuar co diálogo "en directo". Estaremos encantados de proporcionar apoio coa formulación de escenarios de IA/ML en tempo real en relación coas especificidades da súa empresa, realizar prototipos conxuntos na plataforma InterSystems IRIS, formular e implementar na práctica unha folla de ruta para introducir a intelixencia artificial e a aprendizaxe automática. nos seus procesos de produción e xestión. O noso equipo de expertos en IA/ML Correo electrónico de contacto: [protexido por correo electrónico].

Fonte: www.habr.com

Engadir un comentario