Machine learning e inteligencia artificial

Esperamos no tener que terminar en mundos donde películas como Terminator y Matrix se vuelven realidad. En esas películas, el auge de la inteligencia artificial (IA) casi provoca la caída de la humanidad, ya que las máquinas luchan para apoderarse de sus entornos. Una causa de preocupación en la informática actual es cómo el desarrollo de la IA es llevado a cabo principalmente por grandes empresas privadas, con poca regulación (o sin ella) y una supervisión central. ¡Esto no es para nada decir que la IA es algo malo! Los asistentes digitales de los smartphones pueden ayudar en muchas tareas cotidianas. En machine learning (ML) en las aplicaciones de navegación puede supervisar la conducción diaria del usuario para sugerirle rutas alternativas en función de las condiciones de la carretera o del tiempo. Los controles de la calefacción del hogar pueden ajustarse automáticamente según la temperatura exterior, la hora del día y la época del año (como el verano o el invierno).
En el inicio de esta parte final del libro, aprenderá acerca de los servicios de Azure para machine learning e inteligencia artificial. En un capítulo. Durante el almuerzo. Vamos a establecer algunas expectativas realistas: no se convertirá en experto en ML o IA en los próximos 45 minutos. Si come rápidamente su sándwich, puede aprender lo suficiente acerca de los muchos servicios que Azure ofrece para entender cómo integrar algunos de estos servicios de ML e IA en sus aplicaciones. Para muchos de los servicios de ML e IA de Azure se espera que tenga al menos algo de experiencia previa en algoritmos de datos, lenguajes de programación, procesamiento de lotes o comprensión de lenguaje, así que no espere convertirse en un experto en la próxima hora.
En este capítulo, realizaremos un arrollador recorrido de algunos de los servicios cognitivos de Azure que ofrecen características de ML e IA. Aprenderá a usar estos servicios para ejecutar machine learning básica en modelos de datos, y luego usará un poco del servicio de Azure Web Apps y Microsoft Bot Framework para aplicar algunos de los servicios de IA que puede ejecutar el bot de una pizzería para que los clientes puedan pedir pizza.

Descripción general y relación de IA y ML
¡Sujétese fuerte, porque estamos a punto de ir de 0 a 1000 km/h en solo unas páginas! A menudo, la IA y ML se solapan a medida que desarrolla aplicaciones en Azure. Vamos a explorar en qué consiste cada una y luego nos preocuparemos de estudiar cómo trabajan juntas.

Inteligencia artificial
La IA permite que los equipos completen tareas con algún grado de flexibilidad y conciencia, y ajusta sus decisiones basándose en factores externos o sin la necesidad de interacción humana. El objetivo normalmente no es desarrollar un sistema completamente autónomo que pueda evolucionar y desarrollar pensamientos por sí solo, sino usar un conjunto de modelos de datos y algoritmos para guiar el proceso de toma de decisiones.
Las IA comunes en equipos personales y smartphones incluyen a Siri, Cortana y el Asistente de Google. Tal como se muestra en la figura, estos recursos de IA le permiten comunicarse, a menudo mediante comandos de voz, para preguntar por direcciones, establecer recordatorios, buscar en la web y más.

Los asistentes digitales como estos normalmente no implican el uso de grandes cantidades de lo que pudiera considerar inteligencia. Estos escuchan y responden a la entrada que usted proporciona. Sin embargo, esas entradas pueden variar y no siempre ser comandos específicos. Piense en cómo un asistente digital le permite establecer un recordatorio. Puede usar una de las siguientes frases:
– “Recuérdame pasar a comprar leche a las 5”.
– “Dime que debo pasar a comprar leche de camino a casa”.
– “Necesito comprar leche cuando esté en la tienda”.
Si desarrolló una aplicación tradicional, deberá escribir código que pueda manipular todas las posibles variaciones de la forma en la que un usuario podría proporcionar instrucciones. Podría crear expresiones de uso habitual para ayudar a capturar algunas de las variaciones, ¿pero qué ocurre cuando el usuario dice una frase que usted no programó? ¿O si la interacción se realiza vía texto y la solicitud tiene un error de ortografía que no previó? Estos tipos de interacciones son excelentes para la IA. Tal como se muestra en la figura, la aplicación se programa con varias frases comunes y luego se puede hacer una conjetura fundada basándose en lo que se “piensa” que el usuario está pidiendo.

(Aún) no es verdadera inteligencia, incluso en formas complejas de IA; en cambio, es una conjetura fundada que se basa en un modelo de datos con el que se ha entrenado a la IA. Este modelo de datos puede incluir muchas variaciones y frases, y puede ser capaz de aprender nuevos significados con el tiempo. ¿Cómo se aprende y de dónde provienen estos modelos de datos? Ahí es donde ML se vuelve importante.

Machine learning
Una de las grandes palabras de moda en la informática durante los últimos años ha sido macrodatos. El concepto es que los sistemas informáticos, en especial en la nube, son un gran recurso para procesar grandes cantidades de datos. Cantidades muy grandes de datos. Estos trabajos de procesamiento pueden ejecutarse por unos minutos o por horas, según la cantidad de los datos y los cálculos que se requieren, además de permitirle preparar y analizar grandes volúmenes de datos para determinar patrones y correlaciones específicos. Estos aprendizajes forman modelos de datos que otras aplicaciones o IA pueden usar como ayuda para tomar decisiones. Tal como se muestra en la figura, ML implica algunos pasos e incluye entradas y salidas.

Así es como funciona la forma más básica de ML:
1 Para comenzar con el proceso, se proporcionan grandes cantidades de datos sin procesar como entrada.
2 Estos datos se procesan y preparan en un formato. práctico que permite enfocarse en los puntos de datos específicos que se requieren para el análisis
3 Los algoritmos de ML se aplican a los datos. Aquí es donde se produce el verdadero cálculo numérico. Los algoritmos están diseñados para detectar
y procesar similitudes o diferencias en el gran número de puntos de datos.
4 Basándose en el análisis de los algoritmos, se produce un modelo de datos que define patrones dentro de los datos. Estos modelos de datos pueden refinarse con el tiempo si partes del modelo resultan ser incorrectas o estar incompletas cuando se aplican datos adicionales del mundo real.
5 Las aplicaciones usan los modelos de datos para procesar sus propios conjuntos de datos. Estos conjuntos de datos normalmente son mucho más pequeños que los datos sin procesar que se proporcionan a los algoritmos de ML. Si el modelo de datos es válido, entonces incluso con una pequeña entrada de datos de la aplicación, puede determinarse el resultado o la correlación correcta.
ML a menudo implica algoritmos complejos diseñados para procesar todos los puntos de datos proporcionados. Hadoop y Apache Spark son dos pilas de aplicaciones comunes que se usan para procesar macrodatos. Azure HDInsight es un servicio administrado que le permite analizar los grandes conjuntos de datos procesados por estas pilas de aplicaciones. Para profundizar un poco más en el análisis y los algoritmos, los científicos de datos utilizan comúnmente el lenguaje de programación R para ayudar a desarrollar los modelos requeridos. No se preocupe demasiado por saber qué es Hadoop o R. El punto clave es que Azure puede ejecutar las herramientas comunes de ML que se aceptan ampliamente en la industria.

La unión de IA y ML
Una aplicación común en un smartphone es la aplicación de navegación, tal como se muestra en la figura. Su proveedor, por ejemplo Google, puede rastrear la ruta que toma cada día para ir al trabajo, a qué hora sale normalmente de casa y cuánto tarda en llegar.
En este ejemplo de Google Maps se muestra cómo la IA y ML trabajan juntos. La IA se aplica para saber cuándo generar una notificación basada en los datos recibidos después del procesamiento del modelo de datos de ML. Otro ejemplo del trabajo conjunto entre IA y ML es la idea previa de establecer un recordatorio para comprar leche. Si la IA se entrenara con modelos de datos de ML, el asistente sabría que probablemente compra leche en la tienda de abarrotes, por lo que no se lo recordará si va a la ferretería. El modelo de datos de ML también podría ayudar a la IA a entender que existe una mayor probabilidad de que usted desee recibir un recordatorio a las 5:00 p.m., no a las 5:00 a.m., por lo que no lo despertará a las 5:00 a.m. para que vaya a comprar leche. Si su smartphone rastrea que sube a su automóvil a las 5:00 p.m. y se marcha del trabajo, ML generará un modelo de datos que predice que va camino a casa, por lo que esa hora será un buen momento para que la IA le recuerde que debe comprar leche.

Estos ejemplos básicos, pero poderosos, muestran cómo se usa ML para mejorar la IA. Usted entrena la IA proporcionando un conjunto de puntos de datos que ML procesa para mejorar la precisión o la toma de decisiones.

Herramientas de ML de Azure para científicos de datos
Quiero hablar rápidamente de algunas formas en las que se puede hacer el trabajo de cálculos numéricos y ML en el mundo real. Para que todos puedan acceder a este capítulo, los ejercicios usan Microsoft Bot Framework para IA, y ML con Language Understanding Intelligent Service (LUIS). Para hacer el trabajo sucio con ML, debemos enfocarnos un poco más en el procesamiento de datos y los algoritmos.

En Azure, un par de componentes geniales le ayudarán a profundizar en los datos a escala masiva. El primero es Azure Machine Learning, un servicio basado en la web que le permite desarrollar experiencias visualmente mediante la incorporación de conjuntos de datos y modelos de análisis. Estos experimentos pueden usar orígenes de datos como Hadoop y SQL, además del soporte de programación adicional que proporcionan lenguajes como R y Python. Puede arrastrar y soltar los orígenes de datos, las técnicas de preparación de datos y los algoritmos de ML. Puede ajustar esos algoritmos y luego revisar y ajustar los modelos de datos producidos.
Azure Machine Learning proporciona un obstáculo bajo para ingresar a los recursos informáticos de gran escala disponibles en Azure. Un beneficio principal de la realización de un cálculo de datos de ML en Azure es que puede tener acceso a una gran cantidad de potencia de proceso y usarlo solo durante el tiempo necesario para realizar los cálculos. En los entornos tradicionales, esos costosos recursos informáticos se mantendrían inactivos por periodos prolongados entre trabajos de procesamiento de datos.
Otro recurso genial que le ayuda a realizar ML y cálculos numéricos serios en Azure son las máquinas virtuales de ciencia de datos (DSVM). Estas VM están disponibles para Linux y Windows. Vienen con muchas aplicaciones comunes preinstaladas, como Jupyter Notebooks, Anaconda Python y R Server o SQL Server.

No es necesario instalar todas las herramientas y dependencias en su equipo local, puede crear una DSVM con tantos recursos de CPU y memoria como necesite para procesar rápidamente sus datos, y luego eliminar la VM cuando se haya completado el trabajo de procesamiento y tenga los modelos de datos que necesita.

Azure Cognitive Services
Bien, ¿qué hay de los servicios de IA para hacer sus aplicaciones más inteligentes? En Azure, un conjunto de servicios relacionados componen el conjunto de aplicaciones de Cognitive Services. Los servicios abarcan algunas áreas comunes de la IA que le permiten integrar rápidamente estos recursos inteligentes en sus aplicaciones, divididas en las siguientes áreas generales:
– Visión
– Voz
– Lenguaje
– Decisión
– Búsqueda
Más de dos docenas de servicios forman parte de la familia de Cognitive Services. Algunos de ellos son
– Visión, que incluye
–Computer Vision para análisis de imágenes, subtítulos y etiquetado.
–Face para analizar y detectar rostros en imágenes.
– Voz, que incluye
–Speech Services para analizar y convertir la voz en texto, y viceversa.
–Speaker Recognition para identificar y verificar al orador.
– Lenguaje, que incluye
–Language Understanding (LUIS) para comprender y procesar la interacción con los usuarios. Exploraremos LUIS en el laboratorio al final de este capítulo.
–Translator Text para analizar y corregir errores ortográficos o realizar traducciones.
– Decisión, que incluye
–Content Moderator para revisar y moderar fotos, videos y texto.
–Personalizer para analizar patrones y ofrecer recomendaciones a los clientes.
– Búsqueda, que incluye
–Bing Custom Search para implementar la búsqueda en sus datos personalizados y dentro de las aplicaciones.
–Bing Autosuggest para proporcionar sugerencias automáticas cuando los usuarios ingresan frases de búsqueda y consultas.
Como puede ver, muchos servicios de Azure combinan características de IA y ML. Este capítulo se enfoca en el lenguaje, específicamente en LUIS. Este servicio se usa comúnmente para crear un bot inteligente que pueda ayudar a los clientes en su sitio web. A continuación, puede desarrollar una aplicación que use los servicios de IA en Azure que pueda interpretar frases y preguntas, además de proporcionar la respuesta apropiada para guiar a un usuario a través de un proceso de pedido o una solicitud de soporte.

Creación de un bot inteligente para ayudar con pedidos de pizza
Un bot es una aplicación que está programada para responder a las tareas y las entradas de un usuario. Si esto suena muy similar a cualquier aplicación normal, es porque bueno, es bastante similar. La diferencia está en cómo la aplicación de bot determina la respuesta.
Un bot básico y común a menudo no es más que una aplicación que ofrece alguna forma de automatización. Cuando un usuario envía un mensaje, establece una etiqueta en un mensaje de correo electrónico o envía un término para búsqueda, el bot lleva a cabo tareas programadas que realizan una acción específica. Aquí no hay una verdadera IA o ML; la aplicación del bot solo responde a la entrada del usuario.
Con el marco correcto, un bot puede ampliarse y se le puede conceder un poco más de libertad e inteligencia. Al comienzo de nuestra descripción general de IA, analicé cómo una aplicación típica debe preprogramarse con todas las entradas de usuario previstas y cuál sería la salida correspondiente. Sin embargo, si por ejemplo el usuario proporciona una frase de entrada diferente o comete un error ortográfico, no hay flexibilidad.
Microsoft produce el Bot Framework, que permite a un bot de Azure integrar fácilmente los SDK de Bot Builder y conectarlos a Azure Cognitive Services. Con una experiencia mínima en códigos, puede crear bots inteligentes que usen el poder de Azure para entregar una gran experiencia al cliente. ¡No intente crear Skynet a menos que haya visto el final de Terminator!

Creación de un bot de Azure Web App
Vamos a implementar un bot e integrarlo con algunos servicios de IA y ML. El bot se ejecuta en Azure Web App y usa Microsoft Bot Framework para conectarse a LUIS y permitir que un cliente pida una pizza. En la figura se describe lo que estos ejercicios crearán y los servicios que se usan.

Pruébelo ahora
Para crear un bot de aplicación web de Azure, complete los pasos siguientes:
1 Abra Azure Portal y seleccione Crear un recurso en la esquina superior izquierda.
2 Busque y seleccione Bot de Web App y, a continuación, seleccione Crear.
3 Escriba un nombre para su bot, como azuremol; luego, cree un nuevo grupo de recursos y dele un nombre, como azuremolchapter17.
4 Seleccione la región más apropiada para usted y elija el nivel de precios F0. El bot no procesará muchos mensajes, por lo que el nivel gratuito (F0) está bien.
5 Seleccione una plantilla de bot y elija el lenguaje de SDK de Node.js.
6 Cree un bot básico, ya que proporcionaremos nuestro propio código de aplicación de ejemplo en un ejercicio posterior. Este paso crea una aplicación LUIS que puede utilizar para realizar entrenamiento de idiomas y ML.
7 Elija la región más adecuada para su aplicación LUIS y cree una nueva cuenta de LUIS.
8 Proporcione un nombre para la cuenta de LUIS, como azuremol. Esta cuenta de LUIS se encarga de la opinión del usuario para nuestro bot.
9 Elija Plan de servicio de la aplicación y cree un nuevo plan. Proporcione un nombre, como azuremol, y nuevamente, seleccione la región más apropiada para usted.
10 Desactive Información de la aplicación, porque su bot no lo usará. Al igual que con los capítulos anteriores sobre aplicaciones web, para el uso de producción le recomendamos aprovechar el poder de App Insights para obtener visibilidad en el rendimiento de su aplicación mediante la transmisión de datos y análisis directamente desde el código.
11 Acepte la opción para crear automáticamente la ID y contraseña de la aplicación de Microsoft, acepte el acuerdo y elija Crear.
Tardará unos minutos en crear el bot de aplicación web y sus componentes asociados. Ocurren muchas cosas en segundo plano:
– Se crea un plan de Azure App Service.
– Se implementa una aplicación web, junto con una aplicación web Node.js de ejemplo.
– Se crea una aplicación LUIS y las claves de conexión se configuran con su aplicación web.
– Se crea un bot con Microsoft Bot Connector y las claves de conexión se configuran desde su aplicación web.

Lenguaje e intención de comprensión con LUIS
Una de las áreas de Azure Cognitive Service que observamos anteriormente es el lenguaje. Esto tiene sentido, porque a menudo se usa alguna forma de lenguaje para interactuar con una IA. Puede usar LUIS para procesar un mensaje o una frase del usuario y determinar su intención. Esa intención ayuda a que su aplicación proporcione una respuesta apropiada. Vamos a ampliar su bot con LUIS.

Pruébelo ahora
Para crear una aplicación LUIS y usar ML para entrenarla, complete los pasos siguientes
1 Abra un navegador web para www.luis.ai, e inicie sesión con las mismas credenciales de Microsoft que su suscripción de Azure.
2 Seleccione Ir a mis aplicaciones y elija su aplicación, como azuremol. El nombre de su aplicación LUIS probablemente tendrá algunos caracteres numéricos anexados desde el nombre de bot que especificó en Azure Portal.
Se crearon algunas intenciones preconfiguradas, sin embargo, le recomendamos sobrescribir la aplicación LUIS con un ejemplo más enfocado en la pizzería.
3 Descargue el archivo azuremol.json desde GitHub en https://github.com/fouldsy/ azure-mol-samples-2nd-ed/blob/master/17/luisapp/azuremol.json a su equipo local. Para facilitar las cosas, seleccione el botón Sin procesar en GitHub para ver solo los contenidos del archivo.
4 De regreso en su aplicación LUIS, elija Administrar la aplicación, y luego seleccione Versiones.
5 Elija importar una versión, examine y seleccione el archivo azuremol.json que descargó, introduzca el nombre de versión 1.0 y luego seleccione Listo.
6 Regrese a Crear en el menú superior para ver las intenciones importadas de la aplicación de ejemplo. Elija una o dos de las intenciones, tales como greetings u orderFood, y observe algunas de las frases de ejemplo que un cliente podría usar para comunicarse con el bot.
7 Antes de que pueda ver la aplicación en acción, debe entrenarla. Seleccione Entrenar y espere unos segundos para que se complete el proceso. En la figura se muestran los procesos de ML en funcionamiento para entrenar a su aplicación LUIS.

En una aplicación real, más compleja, este proceso de entrenamiento podría tardar más en completarse, ya que todas sus intenciones y entidades serán procesadas por los algoritmos de ML para desarrollar el modelo de datos necesario para que su aplicación responda de forma apropiada a la comunicación con el cliente.
8 Con la aplicación LUIS entrenada, seleccione Probar y escriba un par de saludos, como hola. Bajo cada uno de sus mensajes se encuentra la intención con la mejor puntuación, junto con la probabilidad de que el mensaje o la expresión que ingresó coincida con la intención. Estos saludos básicos deben coincidir correctamente con la intención greetings.
9 Intente ingresar otro saludo, como (buenas) tardes o (buenas) noches. Los saludos de una palabra basados en el momento del día pueden devolver una intención con la mejor puntuación incorrecta, como orderStatus. Pruebe algunas otras frases hasta que estas no coincidan con la intención esperada, lo que indica que la aplicación LUIS no entiende completamente lo que dice. Seleccione uno de sus mensajes incorrectos, como días y elija Inspeccionar.
10 En el menú Inspeccionar, elija editar la intención con la mejor puntuación incorrecta. En el menú desplegable, elija greetings o la intención más apropiada para la frase incorrecta.
11 Ha hecho un cambio en la aplicación, así que vuelva a elegir Entrenar la aplicación LUIS. En la figura 17.8 se muestra cómo proporcionar entradas adicionales para que los algoritmos de ML procesen el modelo de datos y refinen la comprensión e intención del lenguaje.
12 En la ventana de mensajes de prueba, ingrese nuevamente el mensaje incorrecto, como días. Esta vez, el intento con la mejor puntuación debiera identificarlo como greetings.
13 Para hacer que la aplicación LUIS actualizada esté disponible para el bot de aplicación web, elija la opción Publicar en el menú superior. Acepte todos los valores predeterminados y elija publicar en una ranura de producción. El proceso de publicación tardará unos segundos en completarse.

Recuerde, el bot se ejecuta en una aplicación web, tal como las ranuras de producción y los espacios de ensayo que conoció en el capítulo 3. En el mundo real, debe publicar en un espacio de ensayo, verificar que todo funcione según lo esperado y luego publicar en la ranura de producción. Las mismas características de PaaS que le permitieron probar y mover el código web entre los ciclos de vida de implementación y producción también benefician al ciclo de vida de su bot de aplicación web con tecnología de LUIS.
En este ejemplo básico, ML pudo reconocer la entrada de datos de (buenos) días como un saludo y entender que saludos similares como (buenas) noches, también son saludos. ML funciona mejor cuando se puede ingresar un conjunto grande de datos al modelo de datos, por lo que es importante probar exhaustivamente y ayudar a entrenar su aplicación. La IA, en este caso la aplicación LUIS, solo es tan buena como el tamaño y la calidad de los datos proporcionados a los algoritmos de ML.

Creación y ejecución de un bot de aplicación web con LUIS
Ahora tiene un bot de aplicación web en Azure y una aplicación LUIS que manipula el procesamiento del lenguaje y devuelve la intención del cliente. Para integrar ambos, se debe modificar el código del bot para usar LUIS. Los SDK están disponibles para los lenguajes de programación C# y Node.js. Creo que Node.js hace que sea un poco más rápido y fácil entender lo que ocurre en el código, si esto es nuevo para usted. Si está familiarizado con C#, está invitado a explorar el SDK de C# cuando haya terminado este capítulo. Por ahora, usemos una aplicación básica de Node.js del repositorio de ejemplo GitHub para ver el bot en acción con LUIS.

Pruébelo ahora
Para actualizar su bot de aplicación web con el bot de LUIS entrenado, complete los pasos siguientes:
1 En Azure Portal, seleccione Grupos de recursos en el menú de la izquierda y elija su grupo de recursos, como azuremolchapter17; a continuación, seleccione su bot de aplicación web, como azuremol.
Utilicemos un bot de ejemplo de nuestro repositorio de ejemplos de GitHub. El bot de ejemplo está escrito en Node.js, pero al igual que con las aplicaciones de ejemplo anteriores, no se preocupe si eso no es lo suyo.
2 Para implementar el bot de ejemplo, abra Cloud Shell. Si fuera necesario, clone el repositorio de ejemplos de GitHub en su Cloud Shell de la siguiente manera:
git clone https://github.com/fouldsy/azure-mol-samples-2nd-ed.git
3 Cambie al directorio para iniciar el capítulo:
cd azure-mol-samples-2nd-ed/17/webappbot
4 Inicialice el repositorio Git y agregue los archivos de bot:
git init && git add . && git commit -m «Pizza»
5 Para cargar el bot de ejemplo, cree una conexión a su aplicación web. El siguiente comando obtiene el repositorio de la aplicación web y configura su repositorio Git de ejemplo local para conectarse con él. En capítulos anteriores, tuvo que buscar esta dirección; pero por ahora espero que haya empezado a explorar qué más puede hacer la CLI de Azure y se haya dado cuenta de que gran parte de esta información se puede obtener rápidamente.
git remote add webappbot \
$(az webapp deployment source config-local-git \
–resource-group azuremolchapter17 \
–name azuremol \
–output tsv)
6 Inserte el bot Node.js de ejemplo en su aplicación web con el siguiente comando:
git push webappbot master
7 Cuando se le solicite, ingrese la contraseña para el usuario de Git que creó y utilizó en capítulos anteriores.

Si no escribió su contraseña de Git en una nota rápida
Si olvidó la contraseña, puede restablecerla. Primero, obtenga el nombre de usuario de su cuenta de implementación de Git local:
az webapp deployment user show –query publishingUserName
Para restablecer la contraseña, introduzca el nombre de su cuenta desde el comando anterior y, a continuación, siga las instrucciones para configurar una nueva contraseña. El siguiente ejemplo restablece la contraseña de la cuenta de usuario denominada azuremol:
az webapp deployment user set –user-name azuremol

Demos un vistazo a la figura para ver lo que ha implementado. La aplicación LUIS ahora está entrenada con algoritmos de ML y su modelo de datos está listo para que la aplicación Node.js permita a los clientes interactuar y pedir pizza.

De regreso en Azure Portal para su bot de aplicación web, seleccione Probar en chat web. La primera vez que se conecta al bot este tarda unos segundos, pero luego debiera poder interactuar, ver la lista de pizzas en el menú y crear un pedido, tal como se muestra en la figura.

Espero que estos ejercicios básicos le hayan entregado una idea de lo que Azure puede ofrecer para IA y ML. El bot de aplicación web con LUIS puede expandirse para incluir Azure Cognitive Services adicionales como Spell Check y Translator. Estos servicios le permiten interpretar palabras y frases si el usuario las escribe incorrectamente, o permite que su bot converse en varios idiomas. O bien, podría usar Face API y Personalizer para detectar qué cliente hizo un pedido basándose en el reconocimiento facial de la cámara y automáticamente recomendar pizzas que podrían gustarle.
ML era parte de la aplicación LUIS, sin embargo hay muchos otros recursos y herramientas de ML disponibles en Azure. La capacidad de procesar grandes conjuntos de datos y modelos de datos de ML en recursos de procesamiento de Azure de alto rendimiento reduce la entrada para que usted pueda desarrollar aplicaciones respaldadas por algunos conjuntos de datos serios. Las aplicaciones son más exactas y eficientes, y no se debe comprar ningún hardware o herramientas especiales para instalarlas, ya que los DSVM incluyen todos los componentes necesarios. No todas las aplicaciones son adecuadas para IA y ML, sin embargo, a medida que los clientes esperan más características inteligentes con respecto a lo que su negocio puede ofrecer, estos servicios Azure a menudo pueden ayudarlo a diferenciarse.

Procesamiento de cargas de trabajo por lotes
Las otras dos áreas de Azure que podría ser de interés en términos de macrodatos e informática para ML son los servicios de Azure Batch y HPC. Azure Batch le permite realizar tareas de procesamiento grandes y repetitivas sin necesidad de administrar clústeres de programadores para el trabajo. Batch ejecuta tareas en VM con su propia administración y programador para ayudarlo, así como los conjuntos de escala incluyen autoescalado y equilibrio de cargas para VM. Aunque Batch no tiene relación directa con ML, si necesita otras tareas de procesamiento informático grandes, Batch es una excelente opción.
También existen en Azure componentes de informática de alto rendimiento (HPC) para VM de gran tamaño o acceso a VM de unidad de procesamiento gráfico (GPU). También se pueden usar herramientas y conjuntos de aplicaciones específicos como DataSynapse y Microsoft HPC Pack para ejecutar aplicaciones que demandan el uso de grandes cantidades de potencia de proceso.
Áreas como ML, Azure Batch y HPC son ejemplos excelentes de cómo usar proveedores de informática en la nube como Azure para ejecutar tareas de procesamiento de gran tamaño. Usted solo paga por los recursos informáticos que usa, por lo que no es necesario comprar y mantener equipos costosos para un uso mínimo.

Laboratorio: Cómo agregar canales para la comunicación de un bot
En los ejemplos anteriores, se comunicó con su bot a través de una ventana de prueba en Azure Portal. Los canales le permiten ampliar la forma en la que puede interactuar con el bot. Puede permitir que el bot se comunique con Skype o Facebook Messenger, o con aplicaciones como Microsoft Teams y Slack. Azure Bot Service simplifica los pasos necesarios para integrar un bot con esos servicios externos:

1 En Azure Portal, seleccione el bot de aplicación web y luego elija Canales.
2 Elija un canal que le guste, como Skype.
Otros canales a menudo requieren que cree una conexión de desarrollador, como Facebook o Slack. Skype le permite copiar y pegar algún código HTML para que funcione.
3 Proporcione la información que se le solicite como la ID de aplicación del bot. Podrá encontrar esta ID en Configuración para la administración del bot.
4 Si es necesario, use el editor de código en línea para crear una página HTML básica, como default.htm, en el directorio wwwroot, y pegue cualquier código incrustado para su canal. Puede abrir la aplicación web desde Azure Portal y luego seleccionar su URL para abrir la página default.htm que indica su código de canal, como http://azuremol.azurewebsites.net/default.htm.

Por ahora finalizamos el post de hoy