0% encontró este documento útil (0 votos)
1K vistas1604 páginas

Final

Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
1K vistas1604 páginas

Final

Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

RESUMEN

Machine Learning Studio es una herramienta colaborativa de

arrastrar y colocar que permite compilar, probar e implementar


soluciones de análisis predictivo que usan los datos. Machine Learning

Studio publica modelos como servicios web que pueden usarse


fácilmente en aplicaciones personalizadas o herramientas de BI como

Excel.

Machine Learning Studio es el lugar en el que confluyen la ciencia de

datos, el análisis predictivo, los recursos en la nube y sus datos.

1
Ahora que ha creado una cuenta y un área de trabajo de Machine
Learning Studio, puede empezar a crear sus propios experimentos
personalizados y publicarlos como servicios web.
RESUMEN
Ha hecho un gran avance en este módulo. QnA Maker es una manera

fácil de proporcionar respuestas a preguntas habituales mediante el


uso de documentos existentes o listas de preguntas más frecuentes. La

integración del servicio QnA Maker con un bot de chat puede ayudar

a los usuarios a interactuar más fácilmente con las listas de preguntas


más frecuentes de manera conversacional. De este modo, se evitan

tener que realizar búsquedas en documentos largos en un explorador.

Limpieza

Para evitar costes inesperados en la cuenta de Azure, elimine el grupo


1
de recursos LearnRG. De este modo, se eliminarán los recursos que ha

creado en este módulo. Estos son los pasos que se deben seguir:

1. Busque el grupo de recursos LearnRG. Haga clic en Grupos de


recursos en la barra lateral de Azure para encontrarlo

rápidamente.

2. Seleccione el grupo de recursos y haga clic con el botón

derecho en la fila, o bien use el botón de puntos suspensivos

(…) situado en el extremo derecho de la fila para abrir el menú.

3. Haga clic en Eliminar grupo de recursos.

4. Escriba el nombre del grupo de recursos y haga clic


en Eliminar. Azure quitará todos los recursos.
EJERCICIO: AGRUPACIÓN
EN CLÚSTERES K-MEANS
Vamos a probar la agrupación en clústeres k-means en

Azure Notebooks.

En los ejercicios de este módulo se usa Azure Notebooks. Es un


recurso de uso gratuito.

Si los vínculos siguientes no funcionan, tiene que configurar una

cuenta gratuita de Azure Notebooks y clonar el proyecto para este


módulo. Vea el repositorio de Python en GitHub o el repositorio de R

1 en GitHub para obtener instrucciones para comenzar.

1. Los usuarios de Python deben ir a la biblioteca.

2. Seleccione el ejercicio 12. Clustering - [Link].

3. Luego seleccione Run on Free Compute (Ejecutar en un


proceso gratuito).

4. Los usuarios de R deben ir a la biblioteca.

5. Seleccione el ejercicio 12. Clustering - [Link].

6. Después, seleccione "Run on Free Compute" (Ejecutar en un

proceso gratuito).
EJERCICIO: REDES
NEURONALES
AVANZADAS
Ahora se creará una red neuronal con Keras. Se comprobará si se

puede mejorar la precisión mediante otras funciones de activación. En


los ejercicios de este módulo se usa Azure Notebooks. Es un recurso
de uso gratuito.

Si los vínculos siguientes no funcionan, tiene que configurar una

cuenta gratuita de Azure Notebooks y clonar el proyecto para este


1 módulo. Vea el repositorio de Python en GitHub o el repositorio de R
en GitHub para obtener instrucciones para comenzar.

1. Los usuarios de Python deben ir a la biblioteca.

2. Seleccione el ejercicio 09. Neural Networks Advanced -


[Link].

3. Luego seleccione Run on Free Compute (Ejecutar en un

proceso gratuito).

4. Los usuarios de R deben ir a la biblioteca.

• Seleccione el ejercicio 09. Neural Networks Advanced -


[Link]és, seleccione "Run on Free

Compute" (Ejecutar en un proceso gratuito). n y


optimizadores.
EJERCICIO: RNN
A continuación se probarán las RNN en Azure Notebooks.

En los ejercicios de este módulo se usa Azure Notebooks. Es un

recurso de uso gratuito.

Si los vínculos siguientes no funcionan, tiene que configurar una


cuenta gratuita de Azure Notebooks y clonar el proyecto para este
módulo. Vea el repositorio de Python en GitHub o el repositorio de R
en GitHub para obtener instrucciones para comenzar.

1. Los usuarios de Python deben ir a la biblioteca.

1
2. Seleccione el ejercicio 11. Recurrent Neural Networks -
[Link].

3. Luego seleccione Run on Free Compute (Ejecutar en un


proceso gratuito).

4. Los usuarios de R deben ir a la biblioteca.

5. Seleccione el ejercicio 11. Recurrent Neural Networks -


[Link].

6. Después, seleccione "Run on Free Compute" (Ejecutar en un


proceso gratuito).
RESUMEN
En este módulo ha obtenido información sobre las metodologías de

gobernanza de Azure, la supervisión y los informes en Azure, y los


estándares de privacidad, cumplimiento y protección de datos en
Azure.

Más información

Aquí tiene algunos recursos para obtener más información sobre lo

1 que se ha tratado hoy:

• Declaración de privacidad de Microsoft

• Microsoft Trust Center

• Portal de confianza de servicios

• Azure Service Health

• Azure Monitor

• Estado de Azure
RESUMEN
En este módulo se ha analizado mucha información.

• Ha aprendido cómo iniciar sesión en Azure mediante una


cuenta de Azure.

• Ha revisado las características de Azure Portal y sus opciones


de personalización.

• Ha creado, personalizado y compartido un panel.


1
Sin embargo, esto es solo el principio. Azure tiene mucho más que
ofrecerle, con independencia de la función que desempeñe en su
organización. Si es un desarrollador, Azure proporciona una manera

fácil de probar nuevas plataformas y crear aplicaciones sofisticadas. Si


es administrador, usará Azure Portal, la CLI de Azure o las

herramientas de Azure PowerShell para administrar la infraestructura


basada en la nube. Si es un arquitecto, puede usar Azure para probar

rápidamente nuevas ideas de arquitectura.

Para continuar con la exploración de Azure, seleccione una o más

rutas a través del contenido que tenga la estructura específica para lo


que quiera aprender.
RESUMEN
Ahora, la aplicación de tres niveles se ejecuta en Azure en la región

Este de EE. UU. Una región es uno o varios centros de datos de Azure
dentro de una ubicación geográfica específica.

Cada nivel solo puede acceder a los servicios de un nivel inferior. La

máquina virtual que se ejecuta en el nivel web tiene una dirección IP


pública porque recibe tráfico de Internet. Las máquinas virtuales de
los niveles inferiores (de aplicación y de datos), tienen direcciones IP
1
privadas porque no se comunican directamente a través de Internet.

Las redes virtuales permiten agrupar y aislar sistemas relacionados.

Puede definir grupos de seguridad de red para controlar qué tráfico


puede pasar a través de una red virtual.

La configuración que ha visto aquí es un buen punto de partida. Pero


cuando implemente el sitio de comercio electrónico en producción en
la nube, es probable que experimente los mismos problemas que

experimentó en la implementación local.


RESUMEN
Con el equilibrio de carga en funcionamiento, el sitio de comercio

electrónico tiene ahora una alta disponibilidad y resistencia. Si realiza


tareas de mantenimiento o recibe un repunte del tráfico, el
equilibrador de carga puede distribuir el tráfico a otro sistema
disponible.

Aunque puede configurar su propio equilibrador de carga en una


máquina virtual, Azure Load Balancer reduce el mantenimiento ya que
1
no hay ninguna infraestructura o software que mantener.

DNS asigna nombres descriptivos a las direcciones IP, de forma


parecida a como una agenda de teléfonos asigna nombres de
personas o empresas a números de teléfono. Puede aportar su propio

servidor DNS o usar Azure DNS.


RESUMEN
Ha aprendido tan solo algunas de las formas en que los servicios de

red de Azure pueden ayudar a reducir la latencia y a hacer que las


aplicaciones y los servicios tengan una mayor disponibilidad.

Con el equilibrio de carga y la distribución global en marcha, el sitio

de comercio electrónico está listo para presentarse al mundo. Los


usuarios acceden al dominio que está más cercano geográficamente.
Cada dominio tiene conmutación por error integrada, lo cual ayuda a
1
que todos los usuarios tengan una gran experiencia. Las cifras ya
muestran un aumento del tráfico y el negocio está en alza.
RESUMEN
En este módulo se han tratado varios temas importantes.

• Ha obtenido información acerca de las opciones de compra y


la cuenta gratuita de Azure.

• Ha creado una cuenta gratuita de Azure y ha obtenido


información sobre iniciar sesión con esa cuenta.

• Ha visto cómo se administran la facturación, las suscripciones y


1
el soporte técnico en Azure.

Más información

• Preguntas frecuentes sobre la cuenta gratuita de Azure

• Exploración de opciones de compra flexibles para Azure

• Administración de la cuenta de Azure

• Límites y cuotas de suscripción de Azure

• Planes de soporte técnico de Azure

• Soporte técnico de la comunidad de Azure


AI azul

¿Por qué Azure para AI?

Azure es una plataforma flexible que permite a su organización


aprovechar los servicios y capacidades de Microsoft AI. Puede crear la

próxima generación de aplicaciones inteligentes donde viven sus

datos: en la nube, en las instalaciones y con sus dispositivos en el borde


inteligente.

Solo Azure te da poder con:

• Décadas de investigación innovadora para lograr la paridad


humana en visión, habla y lenguaje.

• Tecnología de IA con la que se ejecuta Microsoft.


1

• Las ofertas más completas de cumplimiento y seguridad.


MINERÍA DE
CONOCIMIENTO
¿Qué es la minería del conocimiento?

Los datos del mundo real son desordenados. A menudo abarca tipos

de medios, como documentos de texto, archivos PDF, imágenes y


bases de datos. Cambia constantemente, crece constantemente y

conlleva un conocimiento valioso de formas que no son fácilmente

utilizables. Minería de conocimiento se refiere a la capacidad de


recuperar información y extraer información dentro de una gran
cantidad de datos. Azure Search permite la extracción de conocimiento
1
mediante el uso de capacidades de inteligencia artificial integradas
para descubrir información latente de todo su contenido: documentos,
imágenes y medios. Azure Search es el único servicio de búsqueda en

la nube con capacidades de inteligencia artificial integradas que le


permiten descubrir patrones y relaciones en su contenido, comprender
sentimientos, extraer frases clave y más. Las organizaciones de

atención al cliente, por ejemplo, a menudo usan la minería de

conocimiento para extraer datos e inteligencia de la documentación


del caso. Pueden analizar el sentimiento del cliente para mejorar la
productividad del agente y la experiencia del cliente.
Con la aplicación de cámara AI para ver, puede sostener su teléfono

para escuchar información sobre el espacio que lo rodea, convirtiendo


el mundo visual en una experiencia audible. Puedes reconocer y
localizar los rostros de las personas con las que estás, junto con sus
características faciales y su edad, emoción y mucho más. Finalmente,

puede escuchar fragmentos de texto para obtener instrucciones de

audio en documentos completos.

Ahora, terminemos todo lo que has aprendido con una verificación de


conocimiento.

1
Bienvenido(a) al módulo de:

Análisis
de datos
Bienvenido(a) al módulo de:

Azure
Bienvenido(a) al módulo de:

Bot
Bienvenido(a) al módulo de:

Comunicación
Bienvenido(a) al módulo de:

Inteligencia
Artificial
Bienvenido(a) al módulo de:

Internet
de las cosas
RESUMEN
Vamos a repasar rápidamente lo que hemos aprendido en este

módulo.

En este módulo ha aprendido cómo, por qué y cuándo se debe usar el


servicio Power BI. Ha usado Inicio de Power BI y el panel de navegación

para buscar su contenido: paneles, informes y aplicaciones. Ha abierto

un panel y agregado comentarios y alertas. En ese panel ha


1
seleccionado iconos para abrir y ver informes. Con un informe abierto,
se ha movido entre las páginas del informe, ha cambiado las opciones
de visualización, ha exportado filtros y marcadores, y ha visto y
exportado los datos subyacentes. En la unidad final, aprendió a

compartir y colaborar con compañeros de trabajo.


RESUMEN
Ha aprendido cómo filtrar los datos para encontrar la información más

pertinente para tomar mejores decisiones empresariales. Hemos


analizado informes de varias páginas y hemos visto cómo navegar a
cada página. Hemos configurado marcadores y aprendido a exportar a
PowerPoint y Excel.

1
RESUMEN
Enhorabuena, ahora sabe cómo insertar datos en Power BI Desktop y

cómo darles forma o transformar esos datos para poder crear objetos
visuales atractivos.

1
En Power BI, puede crear una relación para crear una conexión lógica

entre distintos orígenes de datos. Una relación permite a Power BI


conectar tablas entre sí para poder crear objetos visuales e informes.
En este módulo se describen las relaciones centradas en datos y cómo

crear relaciones cuando no existe ninguna.

Nota

Una de las principales ventajas de Power BI es que no es


necesario acoplar los datos en una sola tabla, sino que se pueden
usar varias tablas de distintos orígenes y definir la relación entre
ellas.

También creará sus propios cálculos personalizados y asignará nuevas


métricas para ver segmentos específicos de los datos.

1 Administración de las
relaciones de datos
La vista de modelo de Power BI Desktop permite establecer

visualmente la relación entre las tablas o los elementos. Use la


vista modelo para obtener una vista de los datos en forma de
diagrama. Estas son las tareas de esta unidad:
RESUMEN
Enhorabuena. En este módulo, ha aprendido a crear relaciones

entre orígenes de datos y a optimizar datos. Estas aptitudes le


ayudarán a extraer datos limpios de distintos orígenes.

1
Puede mostrar títulos grandes, leyendas o párrafos cortos en
Cuadros de texto, que también pueden incluir vínculos y
direcciones URL.

Si selecciona Imagen, se abrirá un explorador de archivos, donde

podrá seleccionar la imagen del equipo o de otro origen en red.


Al cambiar el tamaño de una imagen, el informe mantendrá su
relación de aspecto de forma predeterminada.

Puede insertar cinco tipos de Formas, incluidos rectángulos y

1 flechas. Las formas pueden ser opacas o transparentes, con un


borde de color. Esto último es útil para crear bordes en torno a
grupos de visualizaciones.

Administración de la
superposición de
elementos
Cuando hay varios elementos en un informe, Power BI permite

controlar cómo se superponen entre sí. Este orden de capas se


conoce como orden Z.
Para administrar el orden Z de los elementos de un informe,

seleccione un elemento y use los botones Traer adelante y Enviar


atrás de la pestaña Herramientas de objetos visuales.

Reutilización de un diseño
de informe
Las páginas individuales de un informe pueden ser complejas, con
1
varias visualizaciones que interactúan de manera específica y que
tienen un formato concreto. En ocasiones, al crear un informe, puede

que quiera utilizar los mismos objetos visuales y diseños en dos


páginas diferentes. Por ejemplo, si acaba de crear una página de

informe con los ingresos brutos, probablemente querrá tener una


página casi idéntica con los ingresos netos.
RESUMEN
Los objetos visuales permiten comunicar de mejor forma la

información que se oculta tras los datos sin procesar. Los objetos
visuales pueden resaltar tendencias escondidas de formas que los
datos tabulares no pueden. Power BI incluye muchos objetos visuales
atractivos que se pueden usar para arrojar luz sobre los datos y contar

mejores relatos.

Más información
1
• Gráficos de medidor radial en Power BI

• Cambiar cómo interactúan los objetos visuales en un


informe de Power BI

• Procedimiento: Mostrar datos de países de dos letras en


un mapa de Power BI

• Sugerencias y trucos para el formato de color en Power BI

• Tutorial: Adición de opciones de formato a un objeto


visual personalizado de Power BI .

• Prácticas recomendadas de diseño para informes y objetos

visuales
2
Volver a realizar todo ese trabajo sería un engorro, pero con
Power BI Desktop puede duplicar una página de informe.

Haga clic con el botón derecho en la pestaña que quiera copiar


y seleccione Duplicar página.

Para obtener más información, vea Tutorial: Agregar opciones de


formato a un objeto visual personalizado de Power BI .

1
El servicio Power BI es la extensión natural de Power BI Desktop,
y sus características permiten cargar informes, crear paneles y
formular preguntas sobre los datos mediante un lenguaje
natural. El servicio puede usarse también para establecer las
horas de actualización de los datos, compartir datos con la
organización y crear Service Packs personalizados.

Inicio de sesión en el
servicio Power BI
Para poder iniciar sesión en Power BI, necesitará una cuenta.
Para obtener una evaluación gratuita, vaya
1 a [Link] y regístrese con su dirección de correo
electrónico.

Para obtener información detallada sobre cómo configurar una


cuenta, vea Inicio de sesión en el servicio Power BI .

Conclusiones rápidas en
Power BI
El servicio Power BI puede buscar información de forma
automática en un panel, informe o conjunto de datos.
RESUMEN
El servicio Power BI está lleno de excelentes maneras de explorar

datos, compartir información e interactuar con objetos visuales.


Todo está disponible a través de un explorador para que pueda
conectarse desde dondequiera que esté.

1
1

Publicación y uso
compartido en Power BI
BIENVENIDA
Publique y comparta informes y paneles de Power BI con sus
compañeros de equipo de la organización o con todos los
usuarios de la web.
En este módulo, aprenderá a:
 Publicar informes
 Imprimir y exportar informes

 Compilar aplicaciones
 Integrar con OneDrive

2  Publicar en la web

Requisitos previos

Acceso a Power BI Desktop

Introducción a los paquetes de contenido, seguridad y grupos


5 min

Publicación de informes de Power BI Desktop 6 min

Impresión y exportación de paneles e informes 7 min

Presentación de Power BI Mobile 5 min

Creación de áreas de trabajo en Power BI 6 min


Compilación de aplicaciones 5 min

Uso de aplicaciones 5 min

Integración de OneDrive para la Empresa con Power BI 5 min

Publicación en la web 5 min

Comprobación de conocimientos 10 min

3
Introducción a los
paquetes de contenido,
seguridad y grupos
Lo más seguro es que quiera compartir informes y paneles con
sus compañeros de trabajo y amigos en algún momento. Con
Power BI, publicar y compartir informes y paneles es muy
sencillo.

Tareas de este módulo:

4  Publicar informes
 Imprimir y exportar informes
 Compilar aplicaciones
 Integrar con OneDrive
 Publicar en la web
Uso compartido y
colaboración con
compañeros en Power BI
Power BI ofrece varias formas de compartir y colaborar con
compañeros en paneles, informes y datos. A saber:

• Publicación de informes de Power BI Desktop en el


servicio Power BI.
• Creación de aplicaciones que empaqueten un panel, un
informe y un conjunto de información para enviarlos a
sus compañeros para que lo usen como punto de partida
y mejorarlo aún más.
• Creación de grupos, que se pueden usar como modelo
1 de seguridad para identificar un subconjunto de los
usuarios que tienen acceso a los paneles, los informes y
los conjuntos de datos que cree.
• Publicación en la web para que los informes activos se
puedan insertar en una página web.

Publicación de informes
de Power BI Desktop
Publicar informes en la servicio Power BI es rápido y sencillo.
Cuando vuelva a publicar un informe en el servicio Power BI, se
le pedirá que confirme que quiere reemplazar los informes y los
conjuntos de datos anteriores.

Al seleccionar Reemplazar, los informes y los conjuntos de datos


del servicio Power BI se sobrescriben con los nuevos informes y
conjuntos de datos.

Para obtener más información, vea Exportar datos de


visualizaciones .

Presentación de Power BI
1
Mobile
Para llevar un seguimiento de los datos mientras está en movimiento,
puede usar una de las aplicaciones móviles táctiles de Power BI apta

para dispositivos iOS, Android o Windows.


RESUMEN
Publicar informes en la web y compartirlos con todo el mundo es

sencillo con Power BI Desktop.

1
RESUMEN

Considere el escenario de la sección anterior. El objetivo es

implementar modelos de aprendizaje automático entrenados en


producción en dispositivos perimetrales de una manera escalable.
Puede crear y entrenar el modelo mediante técnicas tradicionales. Sin
una estrategia de implementación basada en contenedores, tendría
dificultades para trabajar con distintas dependencias a fin de satisfacer

varias implementaciones de destino en el perímetro. Al implementar el

detector de anomalías como un contenedor, puede superar los


1
desafíos de la implementación en entornos perimetrales complejos a

escala.
RESUMEN
En este módulo, se han explorado las ventajas de usar Azure para

almacenar los datos. Azure proporciona las siguientes características:

• Almacenamiento de datos estructurados y no estructurados

• Alta seguridad compatible con los estándares de


cumplimiento globales

• Funcionalidades de equilibrio de carga, alta disponibilidad y


1
redundancia

• Posibilidad de enviar grandes volúmenes de datos


directamente en el explorador mediante características como
Azure Blob Storage

Por último, las funcionalidades de almacenamiento de datos de Azure


la convierten en una plataforma ideal para hospedar cualquier
aplicación o portal grande de ámbito global.
RESUMEN
Se ha descrito la calculadora de precios de Azure y cómo se

puede usar para estimar los costos en Azure y comparar los


precios entre las distintas ofertas de servicio. Hemos examinado
las opciones de ahorro, cómo exportar las estimaciones de
precios y las herramientas de Azure disponibles para mantener el

control del gasto en la nube.

• Azure Advisor proporciona recomendaciones en muchas


1
áreas, incluido el costo.

• Azure Cost Management permite generar informes y


proporciona información de facturación, para que pueda

visibilizar dónde gasta su dinero.

Después analizamos procedimientos recomendados para


ayudarle a ahorrar dinero en infraestructura y licencias.

Más información

• Configurar los límites de gasto de Azure

• Presupuestos de Azure

• Explore opciones de compra flexibles para Azure


RESUMEN
A continuación se resumirá lo que se ha aprendido en este módulo.

• Aprendizaje profundo simplemente significa el uso de redes

neuronales con muchas capas

o Al tener muchas capas, estas redes tienen más espacio


para aprender información abstracta, como el aspecto
de una nariz o un perro.

o Los algoritmos de aprendizaje profundo pueden tener

1 tiempos de entrenamiento muy largos.

o Hay diferentes formas de organizarlos.

• Las redes neuronales convolucionales se suelen usar para el


procesamiento de imágenes.

• Las redes neuronales recurrentes se suelen usar para los


datos en una secuencia, como música, texto y datos de series
temporales.

o Las RNN tienen un tipo especial de memoria para los


puntos de datos que se han detectado recientemente.

o Hay diferentes variantes de RNN, cada una con

distintas ventajas.
RESUMEN
La clasificación de imágenes desempeña un papel cada vez más

importante en el sector como un medio para automatizar tareas


como la comprobación de contenido ofensivo en las imágenes que se
cargan en los sitios web y la inspección de componentes que salen de
las líneas de montaje en busca de defectos. Crear manualmente un

modelo de clasificación de imágenes, es decir, programarlo desde


cero en Python, R o en otro lenguaje, resulta costoso y requiere

1 experiencia. Custom Vision Service permite crear modelos de


clasificación de imágenes sofisticadas prácticamente a cualquier

persona. Y después de crear y entrenar un modelo, una aplicación

que lo use solo está a unas líneas de código de distancia.


RESUMEN
Hemos leído que los algoritmos de aprendizaje no supervisado
pueden dividir los datos en categorías sin haber sido entrenados
1 nunca y sin tener etiquetas que juzguen su precisión. Estos métodos

son normalmente muy útiles con grandes conjuntos de datos sin


etiquetar o con problemas ambiguos. El aprendizaje no supervisado
se suele utilizar en los campos de la ciencia y la estadística.

Hemos conocido la agrupación en clústeres k-means, a la que se

pueden asignar datos sin etiquetar para que identifique una serie de
clústeres en esos datos. k-means se puede realizar en unos segundos.

Después de este módulo, debe ser capaz de:

• Definir el aprendizaje no supervisado

• Aplicar la agrupación en clústeres k-means para predecir

agrupaciones en los datos

¡Listo! Ha completado el módulo sobre aprendizaje no supervisado.


RESUMEN
Computer Vision API es una herramienta eficaz para el procesamiento

de imágenes. El uso de este servicio, en lugar de crear el suyo propio,


tiene la ventaja de ahorrarle costos de desarrollo y de mantenimiento
considerables. Debe concentrarse en escribir la lógica de negocios
para tomar una decisión relevante para su negocio y dejar que

Computer Vision API extraiga información enriquecida de las


imágenes para categorizar y procesar los datos visuales.

1
En este módulo hemos analizado imágenes, extraído texto y
generado miniaturas. Para llamar a Computer Vision API, hemos
creado una cuenta de Cognitive Services en nuestra suscripción de

Azure. Esta cuenta nos ha proporcionado las claves de acceso que

necesitábamos para realizar llamadas.

En el siguiente paso, tómese tiempo para realizar las mismas llamadas


con sus propias imágenes. Luego, ajuste los parámetros en cada

llamada para ver el efecto que tienen en los resultados. Puede ir más
allá y probar las otras operaciones en la API, como, por

ejemplo, describe y tag.


¡Felicidades!
Has concluido el módulo de Analítica de datos.
¡Felicidades!
Has concluido el módulo de Azure.
¡Felicidades!
Has concluido el módulo de Bot.
¡Felicidades!
Has concluido el módulo de Comunicación.
¡Felicidades!
Has concluido el módulo de Inteligencia Artificial.
¡Felicidades!
Has concluido el módulo de Internet de las cosas.
RESUMEN
Azure puede proporcionarnos una ayuda inmediata para hacer

frente a los problemas de seguridad. Uno de los primeros pasos


que debemos tomar es evaluar cuánta ayuda de Azure podemos
usar en función de si vamos a emplear IaaS, PaaS o SaaS.

Azure Security Center centraliza gran parte de la ayuda que Azure


tiene que ofrecer. Proporciona un único panel, que ofrece una
vista sobre muchos de los servicios y ayuda a garantizar que está
1
siguiendo los procedimientos recomendados. Los algoritmos de
aprendizaje automático que se actualizan continuamente le
ayudan a identificar si las amenazas más recientes van a atacar a

sus recursos. Y ayuda a su organización a mitigar las amenazas.

Este módulo es simplemente introductorio. La seguridad es un


tema amplio y complejo, por lo que sea cual sea su enfoque en la
nube, es necesaria una formación continua en materia de

seguridad. Pero este módulo debe encaminarle en la dirección

correcta, para que sepa lo que necesita aprender a continuación.


Contenedores en Azure

Azure admite contenedores de Docker (un modelo de contenedor

estandarizado), y hay varias maneras de administrar los contenedores


en Azure.

 Azure Container Instances (ACI)

 Azure Kubernetes Service (AKS)

Azure Container Instances

Azure Container Instances (ACI) ofrece la forma más rápida y sencilla


de ejecutar un contenedor en Azure. No tiene que administrar ninguna
máquina virtual ni configurar ningún servicio adicional. Es una oferta

PaaS que permite cargar los contenedores y ejecutarlos directamente


1
mediante el escalado elástico automático.

Azure Kubernetes Service

La tarea de automatizar y administrar una gran cantidad de


contenedores (y de interactuar con ellos) se conoce como

orquestación. Azure Kubernetes Service (AKS) es un servicio de


orquestación completa para contenedores con arquitecturas
distribuidas con varios contenedores.
Uso de contenedores en las soluciones

Los contenedores se usan normalmente para crear soluciones

mediante una arquitectura de microservicios. Esta arquitectura es


donde se dividen las soluciones en partes más pequeñas e

independientes. Por ejemplo, se puede dividir un sitio web en un

contenedor que hospeda el front-end, otro que hospeda el back-end


y un tercero para el almacenamiento. De esta forma, puede separar
partes de la aplicación en secciones lógicas que se pueden mantener,
escalar o actualizar independientemente.

1
RESUMEN
Azure proporciona varios servicios para llevar a cabo el proceso en la

nube, pero la elección del servicio correcto depende de sus


necesidades empresariales. Tenga en cuenta que algunas
funcionalidades pueden utilizarse para lo mismo. Por ejemplo, puede
usar contenedores de Azure o Azure Functions como parte de una

arquitectura sin servidor. Sin embargo, en última instancia, tomar la


decisión adecuada depende de la funcionalidad del servicio y las

1 habilidades de su equipo de desarrollo.

Más información

• Para obtener más información sobre los servicios de proceso


disponibles en Azure, consulte algunas de las páginas

siguientes.

• Introducción a las opciones de proceso de Azure

• Escenarios típicos para ejecutar máquinas virtuales de Azure


1

Publicación de un
experimento de Machine
Learning con Microsoft Azure
Machine Learning Studio
BIENVENIDA
Machine Learning desempeña un papel importante en las aplicaciones
que aprovechan la inteligencia artificial. Microsoft proporciona

Machine Learning Studio y Machine Learning Services para ayudarle a


aprovechar las ventajas de los modelos prediseñados o crear modelos

de aprendizaje de automático personalizados propios. Obtenga


información sobre cómo crear una cuenta en Azure Machine Learning

Studio, crear un experimento de ejemplo y, después, publicarlo e


implementarlo para usarlo como un servicio web.

2
Requisitos previos

 Aspectos básicos de Azure

Creación de una cuenta de Azure Machine Learning Studio 28


min

Creación de un experimento en Azure Machine Learning Studio

41 min
RESUMEN
El equipo de garantía de productos necesitaba una forma más eficaz

de realizar la inspección visual final de los productos antes de su envío.


Necesitaba diseñar la solución para un proceso automatizado que

evaluara de forma precisa las características físicas de los distintos


productos para garantizar el estándar de calidad. El enfoque también

necesitaba cumplir los requisitos arquitectónicos y tenía que ser algo


que el equipo de desarrollo de software pudiera implementar.

El servicio Azure Custom Vision le ha permitido diseñar una solución


que automatiza la inspección visual de los productos. El servicio es

compatible con la arquitectura de red o de soluciones existente y


1
funciona con las herramientas y el lenguaje de software con los que el
equipo de desarrolladores está familiarizado. Mediante la evaluación

de los requisitos de Custom Vision API, ha podido planear los flujos de


trabajo de la imagen para Training y Prediction. También ha podido
diseñar la solución adecuada para su problema.

Imagínese cuánto tiempo y dinero ahorrará al librarse de la tarea de

inspección manual. Otra ventaja del servicio Custom Vision es que no

es necesario crear los modelos de Machine Learning desde cero.

Ha sido fácil crear el diseño de una solución para Training API y

Prediction API. La autenticación del servicio Custom Vision funciona


igual que la autenticación del servicio Computer Vision. No necesitará

miles de imágenes para cada tipo de producto a fin de satisfacer los


objetivos de calidad de la inspección. El servicio Custom Vision es

exactamente lo que necesitaba. Ahorrará mucho dinero a la empresa.

Más información

• ¿Qué es Azure Custom Vision?

• Referencia sobre Custom Vision Prediction API

• Referencia sobre Custom Vision Training API

• Migración a Custom Vision API 3.0

2
RESUMEN
En este módulo, ha aprendido que el reconocimiento del hablante se

compone de dos aspectos principales: la verificación y la identificación.

Speaker Verification API puede verificar y autenticar automáticamente


los usuarios a través de su voz. Cada voz tiene características únicas
que se pueden usar para identificar a una persona, de manera similar a
una huella dactilar. El uso de la voz para controlar el acceso no solo
ofrece una mayor seguridad, sino que también simplifica la experiencia

de autenticación para los clientes.

1
Speaker Identification API puede identificar automáticamente a la
persona que habla en un archivo de audio dentro de un grupo de

posibles hablantes. La API compara el audio de entrada con el grupo


de hablantes proporcionado y, si encuentra una coincidencia, devuelve

la identidad del hablante. Todos los hablantes que quiere comparar


deben someterse primero a un proceso de inscripción para grabar su

voz en el sistema y para que se cree una huella de voz.

Limpieza

Para evitar costos inesperados en la cuenta de Azure, elimine el grupo


de recursos mslearn-speakerapi. La eliminación de este grupo quitará
todos los recursos que se han creado en este módulo. Estos son los
pasos que debe seguir:
1. Inicie sesión en Azure Portal .

2. En el panel izquierdo, haga clic en Grupos de recursos y

busque el grupo de recursos mslearn-speakerapi.

3. Selecciónelo y haga clic con el botón derecho en la fila, o bien


pulse el botón de puntos suspensivos (…) para abrir el menú

contextual.

4. Haga clic en Eliminar grupo de recursos.

5. Escriba el nombre del grupo de recursos mslearn-


speakerapi y, luego, haga clic en Eliminar. Azure quitará todos
los recursos de forma automática.

2
RESUMEN
Como ha visto en este módulo, es fácil agregar filtros de texto a las

aplicaciones y los servicios con Microsoft Azure Content Moderator.


Con Text Moderation API, puede hacer lo siguiente:

• Analizar el texto para buscar contenido no deseado.

• Clasificar el contenido que podría resultar ofensivo.

• Obtener información sobre la posible información de


identificación personal que se comparte para que pueda
protegerla.

1 Limpieza

Para evitar costes inesperados en la cuenta de Azure, elimine el grupo

de recursos LearnRG. La eliminación de este grupo quitará todos los


recursos que se han creado en este módulo. Estos son los pasos que

debe seguir:

1. Inicie sesión en Azure Portal .

2. En el panel izquierdo, seleccione Grupos de recursos y busque


el grupo de recursos LearnRG.

3. Selecciónelo y haga clic con el botón derecho en la fila, o bien


pulse el botón de puntos suspensivos (…) para abrir el menú

contextual.

4. Haga clic en Eliminar grupo de recursos.


5. Escriba el nombre del grupo de recursos LearnRG y, luego,

seleccione Eliminar. Azure quitará todos los recursos de forma


automática.

2
USO DE LA AGRUPACIÓN
EN CLÚSTERES K-MEANS
PARA AGRUPAR DATOS
La agrupación en clústeres k-means hace honor a su nombre: separa

los ejemplos en un número k de clústeres (por lo que si k es 5, dividirá


los ejemplos en 5 clústeres) y dividirá los ejemplos por el promedio
(media) de los clústeres.

Lo único que k-means debe ejecutar es el conjunto de datos y el

número de clústeres que el usuario quiere planear.


1
Es muy común que los profesionales de la inteligencia artificial decidan
el número de clústeres mediante la ejecución de k-means con varios

números diferentes de clústeres. Los resultados se visualizan a


continuación para comprobar la decisión de los usuarios. Hay una
función de costo para determinar la tasa de errores, pero analizar el
costo de k-means suele ser ambiguo en lo que se refiere al número

correcto de clústeres.
Los puntos de inicio de los

clústeres empiezan de
forma aleatoria. Luego, k-

means tiene dos pasos:

1. Los ejemplos se

asignan al clúster al que


están más cerca.

2. Los puntos de inicio de los clústeres se mueven al valor medio

de los ejemplos agrupados en ese clúster.

Estos pasos se repiten varias veces y se completa la agrupación en


clústeres.
2
A continuación, usaremos k-means en Azure Notebooks.
RESUMEN
Se ha descrito gran cantidad de información sobre el reconocimiento

facial. Puede usar la interfaz de pruebas web para obtener información


sobre cómo funcionan las llamadas a la API. Además, considere la

posibilidad de usar una aplicación cliente para recorrer los conceptos.


Pruebe este tutorial de C# con una aplicación de inicio de ejemplo.

La detección de caras es solo una parte de Vision API general de Azure


Cognitive Services. Puede usarla en las aplicaciones para aprovechar las

funciones de reconocimiento facial que proporciona Microsoft. Si la

1 funcionalidad integrada no satisface sus necesidades por completo,


use la ciencia de datos para crear servicios de reconocimiento facial

propios, o bien las funciones de visión personalizadas.

Limpieza

Para evitar costes inesperados en la cuenta de Azure, elimine el grupo


de recursos mslearn-faceapi para quitar todos los recursos que se han
creado en este módulo. Estos son los pasos que se deben seguir:

1. Para encontrar rápidamente el grupo de recursos mslearn-

faceapi, haga clic en Grupos de recursos en la barra lateral de


Azure.
2. Seleccione el grupo de recursos y haga clic con el botón

derecho en la fila, o bien use el botón ... situado en el extremo


derecho de la fila para abrir el menú contextual.

3. Haga clic en Eliminar grupo de recursos.

4. Escriba el nombre del grupo de recursos y haga clic

en Eliminar. Azure desaprovisiona de forma automática todos

los recursos.

2
RESUMEN Y LIMPIEZA
En este módulo ha avanzado mucho. QnA Maker es una manera fácil

de proporcionar respuestas a preguntas habituales mediante


documentos existentes o listas de preguntas frecuentes.

La integración del servicio QnA Maker con un bot en Azure puede

facilitar la interacción de los usuarios con listas de preguntas frecuentes


a modo de conversación, para no tener que buscar en documentos de
gran tamaño en un explorador.

Limpieza

1
Para evitar costos inesperados en la cuenta de Azure, elimine el grupo
de recursos mslearn-factbot. Con esto se eliminan todos los recursos
creados en este módulo. Estos son los pasos:

1. Busque el grupo de recursos mslearn-factbot. Puede

seleccionar Grupos de recursos en la barra lateral de Azure

para encontrarlo rápidamente o bien usar la barra de búsqueda


global de la parte superior de la ventana del portal.

2. Seleccione el grupo de recursos y haga clic con el botón


derecho en la fila o use el botón de puntos suspensivos (…) del

extremo derecho de la fila para abrir el menú.

3. Haga clic en Eliminar grupo de recursos.


4. Escriba el nombre del grupo de recursos y haga clic

en Eliminar. Azure quita todos los recursos, incluida la base de


conocimiento de QnA Maker.

Más información

Se puede hacer mucho más para aprovechar la eficacia de Azure Bot

Service.

• Incorporación de cuadros de diálogo

• Agregar compatibilidad con FormFlow

• Compatibilidad con el lenguaje natural con Microsoft


Language Understanding and Intelligence Services (LUIS).

Con estas y otras características, puede compilar bots sofisticados que


2
respondan a las consultas y los comandos de los usuarios e interactúen
de manera fluida, no lineal y a modo de conversación.

Para obtener más información y para ver ideas para empezar, vea el

artículo de información general sobre Microsoft Bot Framework.

Si quiere que el bot sea más inteligente, considere la posibilidad de


expandir la base de conocimiento con otras preguntas y respuestas.
Por ejemplo, puede usar las preguntas frecuentes en línea para que
Bot Framework entrene al bot para que responda a preguntas sobre el

propio Framework.
RESUMEN
Language Understanding Intelligent Service (LUIS) permite que la

aplicación entienda lo que las personas quieren en sus propias


palabras. Con LUIS puede compilar aplicaciones que reciben la entrada

del usuario en lenguaje natural y extraen significado de ella.

En este módulo, ha creado una sencilla aplicación de LUIS. Después ha


agregado algunas intenciones, expresiones y entidades para probar
cómo interactúa con un usuario. La idea de compilar esta aplicación de

LUIS era integrarla en una aplicación de bot. Para integrar LUIS en sus

1 propias aplicaciones de inteligencia artificial, consulte la


documentación de la API para saber cómo realizar dicha integración.

Limpieza

1. Para evitar costes inesperados en la cuenta de Azure, elimine el


grupo de recursos LearnRG. La eliminación de este grupo
quitará todos los recursos que se han creado en este módulo.
Estos son los pasos que debe seguir:

2. Inicie sesión en Azure Portal .

3. En el panel izquierdo, seleccione Grupos de recursos y busque

el grupo de recursos LearnRG.


4. Selecciónelo y haga clic con el botón derecho en la fila, o bien

pulse el botón de puntos suspensivos (…) para abrir el menú


contextual.

5. Haga clic en Eliminar grupo de recursos.

6. Escriba el nombre del grupo de recursos LearnRG y, luego,

seleccione Eliminar. Azure quitará todos los recursos de forma

automática.

2
RESUMEN
Speech Translation API permite agregar a las aplicaciones,

herramientas y dispositivos una traducción de voz de varios idiomas de


un extremo a otro en tiempo real. La misma API se puede usar para la

traducción de voz a voz y la conversión de voz a texto.

Con Speech Translation API, las aplicaciones cliente usan audio de voz
con el servicio de Voz y reciben de vuelta una secuencia de resultados.
Estos resultados incluyen el texto reconocido en el idioma de origen.

Se pueden proporcionar traducciones provisionales hasta que se

1 complete una expresión, momento en el que se proporciona una


traducción final.

En Speech Translation API se usan las mismas tecnologías que ofrecen

varios servicios y productos de Microsoft. Miles de empresas en todo


el mundo ya usan este servicio en sus aplicaciones y flujos de trabajo.

Limpieza

Para evitar costos imprevistos en su cuenta de Azure, elimine los


grupos de recursos que se han creado mientras se trabajaba en los

ejercicios de este módulo. La eliminación de este grupo quitará todos

los recursos que se han creado en este módulo. Estos son los pasos
que debe seguir:
1. En el menú de la izquierda de Azure Portal, seleccione Grupos

de recursos y, después, busque el grupo de recursos que se ha


creado para este módulo.

2. Seleccione el grupo de recursos y haga clic con el botón

derecho en la fila, o bien pulse el botón de puntos

suspensivos (…) situado al final de la fila para abrir el menú


contextual.

3. Seleccione Eliminar grupo de recursos.

4. Escriba el nombre del grupo de recursos y, luego, haga clic

en Eliminar. Azure quitará todos los recursos de forma

automática.

2
RESUMEN

En este módulo En este módulo, hemos hablado sobre qué es la


informática en la nube y cuáles son sus características clave. Entre otros
aspectos, hemos tratado los siguientes:

Los diferentes tipos de modelos en la nube disponibles y las

consideraciones que hay que tener en cuenta al usarlos.

1
Algunos de los términos y conceptos clave, como alta disponibilidad,

agilidad, elasticidad, tolerancia a errores y gastos de capital frente a


gastos operativos.

Los diferentes servicios en la nube disponibles, las ventajas de usar

estos diferentes tipos y las responsabilidades de administración de

cada tipo de servicio.

Los modelos en la nube, como público, privado e híbrido, y las


características clave de cada uno.

Los distintos tipos de servicio en la nube disponibles: IaaS, PaaS y SaaS;

las características clave de cada servicio y las situaciones en las que se

recomienda usar uno u otro.


Un enchufe conectado para representar la electricidad que se va a

ofrecer

Microsoft Azure

Azure es la plataforma de informática en la nube de Microsoft. Azure


proporciona más de cien servicios que permiten hacer de todo, desde

ejecutar las aplicaciones existentes en máquinas virtuales hasta


explorar nuevos paradigmas de software, como los bots inteligentes y

la realidad mixta.

Estos son solo algunos tipos de servicios que encontrará en Azure:

• Los servicios de procesos, como las máquinas virtuales y los


2 contenedores, que pueden ejecutar las aplicaciones.
• Los servicios de base de datos que proporcionan opciones
relacionales y NoSQL.
• Los servicios de identidad que facilitarán la autenticación y
protección de los usuarios.
• Los servicios de redes que conectan el centro de datos a la
nube, proporcionan alta disponibilidad u hospedan el dominio

DNS.
• Las soluciones de almacenamiento que pueden hospedar
cantidades masivas de datos estructurados y no estructurados.

• Inteligencia artificial y aprendizaje automático pueden analizar

datos, texto, imágenes, comprender el habla y hacer

predicciones mediante datos, lo que permite el mundo de la


agricultura o la salud, entre otros.
• Y mucho más.
1

Procesamiento y traducción
de voz con Azure Cognitive
Speech Services
BIENVENIDA
Azure Cognitive Services proporciona funciones para habilitar los
servicios de voz en las aplicaciones. Obtenga información sobre cómo

integrar Cognitive Speech Services para convertir voz en texto y


reconocer hablantes específicos en las aplicaciones.

Requisitos previos

 Aspectos básicos de Azure

Traducción de voz en tiempo real con Azure Cognitive Services


2
52 min

Reconocimiento de voces específicas con las API de Speaker

Recognition en Azure Cognitive Services 52 min


1

Evaluación de texto con Azure


Cognitive Language Services
BIENVENIDA
Obtenga información sobre cómo usar Cognitive Language Services
para analizar el texto, determinar la intención, detectar temas para

adultos y procesar la entrada de lenguaje natural.

Requisitos previos

 Aspectos básicos de Azure

Clasificación y moderación de texto con Azure Content

Moderator 31 min
2
Incorporación de inteligencia conversacional a las aplicaciones
mediante Language Understanding Intelligent Service (LUIS) 54

min

Detección de opiniones en texto con Text Analytics API 48 min


1

Procesamiento y clasificación
de imágenes con los servicios
de Azure Cognitive Vision
BIENVENIDA
Microsoft Cognitive Services ofrece funciones pregeneradas para
habilitar la funcionalidad de Computer Vision en las aplicaciones.

Obtenga información sobre cómo usar los servicios de Cognitive Vision


para detectar caras, etiquetar y clasificar imágenes, e identificar

objetos.

Requisitos previos

 Aspectos básicos de Azure

2
Identificación de caras y expresiones con Computer Vision API
en Azure Cognitive Services 47 min

Procesamiento de imágenes con el servicio Computer Vision 32


min

Clasificación de imágenes con Microsoft Custom Vision Service


40 min

Evaluación de los requisitos para implementar las API de


Custom Vision 46 min
1

Creación de bots inteligentes


con Azure Bot Service
BIENVENIDA
Con Bots, se puede permitir a los usuarios interactuar con aplicaciones
informáticas de forma conversacional mediante texto, gráficos o voz.

Puede ser un sencillo diálogo de preguntas y respuestas, o un bot


sofisticado que permita a los usuarios interactuar con los servicios de

una forma inteligente mediante la coincidencia de patrones, el


seguimiento de estados y técnicas de inteligencia artificial bien

integradas con los servicios empresariales existentes. Obtenga


información sobre cómo crear un bot de chat y agregarle inteligencia

2 mediante la integración de QnA Maker y LUIS.

Requisitos previos

 Aspectos básicos de Azure

Compilación de un bot de chat de Preguntas más frecuentes


con QnA Maker y Azure Bot Service 48 min
RESUMEN
Se han analizado varias características que puede usar para

organizar y controlar los recursos de Azure.

Se ha descrito cómo funcionan los grupos de recursos y algunas


maneras de usarlos para organizar los recursos.

Se ha visto cómo las etiquetas permiten agregar información

contextual personalizada a los recursos, para su uso en áreas

1 como la facturación y el filtrado.

También, cómo se podrían usar directivas para aplicar estándares


a todos los recursos de Azure.

Se han usado bloqueos de recursos para impedir la eliminación

accidental de los recursos críticos.

Mediante el uso de estas herramientas en la totalidad del entorno


de Azure, tendrá una mayor organización en los recursos de
Azure.
Limpieza

A continuación se limpiarán los recursos que se han creado.


Como todo el contenido se ha implementado en un único
grupo de recursos, la limpieza es fácil.

1. Para continuar, abra Azure Portal en un explorador web si


todavía no lo ha hecho. En el cuadro de búsqueda de la
barra de navegación superior, busque msftlearn-core-
infrastructure-rg y haga clic en el grupo de recursos.
2. En el panel Información general, haga clic en Eliminar
grupo de recursos. Escriba el nombre del grupo de
recursos msftlearn-core-infrastructure-rg para confirmar
y haga clic en Eliminar.
2

Acaba de ver algunos ejemplos (recomendaciones minoristas,

mantenimiento predictivo y detección de riesgos) de cómo se aplica el


aprendizaje automático en diferentes industrias para mejorar los
resultados comerciales, así como los beneficios de los servicios y
características que ofrece Microsoft Azure AI para satisfacer sus

necesidades. objetivos de negocios.

¿Cómo funciona el aprendizaje automático?

Para simplificar y acelerar el aprendizaje automático, Azure Machine

Learning se ha basado en los siguientes principios de diseño:

 Permita que los científicos de datos utilicen un conjunto familiar


y rico de herramientas de ciencia de datos.
 Simplifique el uso de marcos de aprendizaje automático y
1
aprendizaje automático populares.
 Acelere el tiempo de valor al ofrecer capacidades de ciclo de
vida de aprendizaje automático de extremo a extremo.

Hay tres pasos principales para usar el aprendizaje


automático:
El servicio Azure Machine Learning proporciona un entorno basado en

la nube que puede usar para desarrollar, capacitar, probar,


implementar, administrar y rastrear modelos de aprendizaje
automático.

2
Con el servicio Azure Machine Learning, los científicos de datos pueden

construir modelos más rápido con el aprendizaje automático, aumentar


la productividad con las capacidades de DevOps para el aprendizaje
automático e implementar fácilmente modelos en la nube y en el
borde.

En la siguiente unidad, cubriremos aplicaciones y agentes de IA.

1
APPS Y AGENTES
¿Qué son las aplicaciones y agentes de IA?

Una aplicación de inteligencia artificial es simplemente una

aplicación web o móvil con capacidades de inteligencia artificial, como


el procesamiento de la visión o el lenguaje. Por ejemplo, una aplicación
de servicios financieros que utiliza el reconocimiento facial como parte
de su proceso de inicio de sesión móvil es una aplicación móvil con
capacidades de inteligencia artificial. Un agente de IA es un programa

de máquina que utiliza capacidades de IA para interactuar con un


usuario humano. Por ejemplo, un bot de chat utilizado por una
2
empresa para gestionar solicitudes de servicio al cliente en vivo

basadas en la web es un ejemplo de un agente de inteligencia


artificial. Microsoft ofrece servicios inteligentes de aplicaciones de
inteligencia artificial con Azure Cognitive Services y desarrolla agentes
de inteligencia artificial con Azure Bot Services. Nuestros modelos de

inteligencia artificial que potencian estas aplicaciones y agentes


inteligentes se pueden personalizar para su negocio utilizando sus

propios datos y se pueden implementar en cualquier lugar.

Microsoft ofrece experiencias innovadoras en sus aplicaciones con


Azure Cognitive Services y Azure Bot Service. Los principales modelos

de IA se están utilizando en todas las industrias y en una variedad de

productos diferentes hoy en día, como Office 365, Xbox y Bing.


Para realizar los ejercicios de este modo, deberá tener instalado

Power BI Desktop y una cuenta del servicio Power BI configurada.

Descargar Power BI Desktop

Puede descargar Power BI Desktop desde la Web o como aplicación de


Microsoft Store en la pestaña Windows.

Estrategia de

descarga Vínculo Notas

Aplicación de la Tienda Se mantendrá actualizada


Tienda Windows Windows automáticamente

Descarga desde la Descargar Se debe actualizar periódicamente

1 Web .msi de manera manual

Iniciar sesión en el servicio Power BI

Para poder iniciar sesión en Power BI, necesitará una cuenta. Para
obtener una evaluación gratuita, vaya a [Link] y regístrese
con su dirección de correo electrónico.

Para más información sobre cómo configurar una cuenta, consulte


Inicio de sesión en el servicio Power BI.

Descarga de datos de ejemplo

Para seguir los ejemplos de los vídeos y en las páginas, descargue el


libro de Excel de ejemplo aquí e impórtelo en Power BI Desktop
(Obtener datos > Excel).
Exploración de Power BI
Desktop
La idea de crear y compartir informes es un concepto abstracto. Tendrá

mucho más sentido si explora Power BI Desktop de manera práctica. El


primer paso es iniciar y explorar la interfaz de usuario (UI).

En esta unidad, aprenderá a:

 Iniciar Power BI Desktop.


 Explorar la interfaz de usuario.

2
Nota

Para seguir los ejemplos de los vídeos y en esta página, descargue


la base de datos de Access de ejemplo aquí e impórtelo en
Power BI Desktop (Obtener datos > Excel).

Para crear una tabla calculada, vaya a Vista de datos en Power BI

Desktop, que puede activar en el lado izquierdo del lienzo del


informe. Seleccione Nueva tabla en la pestaña Modelado para
abrir la barra de fórmulas.

Escriba el nombre de la nueva tabla, inserte un signo igual e


indique el cálculo que quiere usar para formar la tabla. La nueva
tabla aparecerá en el panel Campos del modelo.

Una vez creada la tabla calculada, puede usarla como cualquier


otra tabla en las relaciones, las fórmulas y los informes.

Para obtener más información, vea: Uso de tablas calculadas en


Power BI Desktop .
Exploración de datos
basados en tiempo
Analizar datos basados en tiempo con Power BI es fácil. Las

herramientas de modelado de Power BI Desktop generan


automáticamente campos que permiten explorar en
profundidad los períodos de tiempo.

Estas son las tareas de esta unidad:

2
Esta unidad comienza con la base de las visualizaciones, los objetos

visuales sencillos que todo el mundo conoce, para garantizar que


conoce sus particularidades. En el resto del módulo encontrará
información más avanzada, o como poco menos habitual, para mejorar

sus conocimientos para crear informes.

1
La visualización de datos es una de las partes principales y uno de los
bloques de creación básicos de Power BI. La creación de objetos
visuales es una de las formas más eficaces de hallar y compartir
información.

Descubrirá una amplia variedad de visualizaciones en Power BI, que

ofrece características como gráficos de barras, gráficos circulares y


mapas sencillos, así como ofertas más elaboradas, como cascadas,

embudos y medidores. Power BI Desktop ofrece también un amplio

abanico de herramientas de formato de páginas (como las formas o las

imágenes), que contribuyen a que el informe cobre vida.


Creación y personalización
de visualizaciones sencillas
En esta unidad se explica cómo crear gráficos de barras, gráficos

circulares y gráficos de rectángulos, y cómo personalizarlos para


adaptarlos a los informes.

2
Puede que quiera visualizar dos medidas con diferentes escalas,
como ingresos y unidades. Use un gráfico combinado para
mostrar una línea y una barra con diferentes escalas de eje.
Power BI admite muchos tipos diferentes de gráficos
combinados de forma predeterminada, incluidos gráficos de
líneas y de columnas apiladas.

Para dividir cada columna por categoría, arrastre una categoría

al campo Serie de columnas. Al hacerlo, cada barra se


coloreará de forma proporcional con respecto a los valores
dentro de cada categoría.

Creación de
segmentaciones de datos
Las segmentaciones de datos son uno de los tipos más eficaces
de visualizaciones, especialmente cuando forman parte de un
informe muy cargado. Una segmentación de datos es un filtro
visual en lienzo que permite a los usuarios del informe
segmentar los datos según un valor concreto. Entre los
ejemplos de filtro están por año o por ubicación geográfica.

2
Para agregar una segmentación de datos a un informe,
seleccione Segmentación de datos en el panel Visualizaciones.

Arrastre el campo por el que quiera segmentar y colóquelo en


la parte superior del marcador de posición de segmentación de
datos. La visualización se convierte en una lista de elementos
con casillas. Estos elementos son los filtros. Active la casilla
1 situada junto al elemento que quiera segmentar y Power BI
filtrará (o segmentará) todos los demás objetos visuales de la
misma página del informe.

Existen varias opciones disponibles que ayudan a dar formato a


la segmentación de datos. Puede configurarlo para que acepte
varias entradas a la vez, o bien puede usar el modo Selección
única para usarlas una a una. También puede agregar una
opción Seleccionar todo a los elementos de la segmentación
de datos, lo que resulta útil si tiene una lista larga. Cambie la
orientación de la segmentación de datos del valor vertical
predeterminado a horizontal; se convertirá en una barra de
selección en lugar de en una lista de comprobación.

Cuando hay varias visualizaciones en la misma página de un


informe, Power BI Desktop permite controlar cómo fluyen las
2
interacciones entre los objetos visuales. Para más información,
vea Cambiar cómo interactúan los objetos visuales en un
informe de Power BI .

Asignación de
visualizaciones
Power BI tiene dos tipos diferentes de visualizaciones de mapa:
un mapa de burbujas, que coloca una burbuja sobre un punto
geográfico, y un mapa de formas, que muestra el contorno del
área que se quiere visualizar.
Si tiene información numérica en una tabla (como, por ejemplo,
una relación de ingresos), aparecerá una suma total en la parte
inferior. Puede ordenar manualmente por cada columna si
selecciona el encabezado de columna para cambiar el orden
entre ascendente y descendente. Si una columna no es lo
suficientemente ancha como para mostrar todo el contenido,
seleccione y arrastre el encabezado de columna para

expandirlo.

En el panel Visualizaciones, el orden de los campos en el cubo


Valores determina el orden en que aparecen en la tabla.

Una matriz es similar a una tabla, pero tiene encabezados de

categoría diferentes en las filas y columnas. Al igual que sucede


con las tablas, la información numérica se sumará
automáticamente en la parte inferior derecha de la matriz.
Existen muchas opciones cosméticas disponibles para las
matrices, como el ajuste automático del tamaño de las
2 columnas, la alternancia entre los totales de fila y de columna, el
establecimiento de colores, etc.

Creación de gráficos de
dispersión, cascada y
embudo
Use un gráfico de dispersión para comparar dos medidas
diferentes, como ventas por unidad frente a ingresos.
Los gráficos de cascada se suelen usar para mostrar los cambios que
se producen en un valor específico con el tiempo.

Las cascadas solo tienen dos opciones de cubo: Categoría y Eje Y.

Arrastre un campo basado en tiempo (como Año) al cubo Categoría y

arrastre el valor del que quiera llevar un seguimiento al cubo Eje Y.

Los períodos de tiempo en los que se haya producido un aumento


del valor se muestran de forma predeterminada de color verde,

mientras que los períodos con una disminución del valor aparecen de

color rojo.
Los gráficos de embudo se suelen usar para mostrar los cambios que

tienen lugar durante un proceso específico, como una canalización de


ventas o los esfuerzos de retención de sitios web.

2
Los gráficos de cascada y de embudo se pueden segmentar y
personalizar.

Modificación de colores
en gráficos y objetos
visuales
A veces, puede que quiera modificar los colores que se usan en
los gráficos u objetos visuales. Power BI le confiere el control de
cómo se muestran los colores. Para empezar, seleccione un
objeto visual y, después, seleccione el icono de pincel del panel
Visualizaciones.
Para crear un gráfico en blanco, seleccione Gráfico de
dispersión en el panel Visualizaciones. Arrastre y coloque los dos
1 campos que quiera comparar desde el panel Campos hasta los
cubos de opciones Eje X y Eje Y. En este punto, es probable que
el gráfico de dispersión tenga una burbuja pequeña en el centro
del objeto visual. Debe agregar una medida al cubo Detalles para
indicar cómo quiere segmentar los datos. Por ejemplo, si va a

comparar las ventas de artículos y los ingresos, probablemente


quiera dividir los datos por categoría, fabricante o mes de venta.

Al agregar otro campo al cubo Leyenda, se aplicará un código de


color a las burbujas según el valor del campo. También puede
agregar un campo al cubo Tamaño para modificar el tamaño de
la burbuja en función de ese valor.
Los gráficos de dispersión tienen muchas opciones de formato
visual también, como la activación de un contorno en cada
burbuja de color y la alternancia de etiquetas individuales.
Asimismo, se pueden cambiar los colores de datos de otros tipos
de gráficos.

2
Mantenga el puntero sobre un icono del panel y seleccione los
puntos suspensivos para ver las posibles acciones del icono.
Seleccione Abrir en modo de enfoque para expandir el icono y
abarcar el espacio completo del panel.

1
El modo de enfoque permite ver con más detalle los objetos
visuales y las leyendas. Por ejemplo, es posible que algunas de
las columnas no se muestren debido al espacio que está
disponible en el icono.
En el modo de enfoque, puede anclar el objeto visual
directamente en un panel diferente si selecciona el icono de
anclaje. Para salir del modo de enfoque, seleccione el icono Salir
del modo de enfoque en la esquina superior izquierda.

El proceso es similar cuando se está viendo un informe. Los


objetos visuales siguen siendo interactivos en el modo de
enfoque, aunque perderá temporalmente cualquier efecto de
filtro cruzado entre objetos visuales.

Edición de los detalles del


icono y adición de widgets
Después de crear un panel, puede dar formato a los iconos en el
servicio Power BI.

2
El método más sencillo para mostrar todo el panel en una
pantalla es seleccionar el botón Modo de pantalla completa
en la esquina superior derecha del panel.

Al seleccionar el botón Modo de pantalla completa, se quitan


todos los elementos de cromo de alrededor del panel, lo que
aumenta la cantidad de espacio visible.

En Modo de pantalla completa, puede seleccionar Ajustar a la


pantalla para reducir todos los iconos a una sola pantalla. Este
modo sin barras de desplazamiento se denomina normalmente
Modo TV y es útil para ofrecer presentaciones.

También puede seleccionar el icono de hamburguesa para


contraer el panel de navegación en el lado izquierdo de la
página. Para expandir el panel de navegación, vuelva a
seleccionar el icono.
Si quiere que un panel tenga siempre la barra de navegación
contraída, anexe lo siguiente al final de la dirección URL:
2
?collapseNavigation=true

Los usuarios que siguen ese vínculo abrirán el panel con una
barra de navegación contraída.
Cuando haya terminado de redactar el informe, seleccione el
botón Publicar en la pestaña Inicio.

Power BI empaqueta el informe y los datos (incluidas las


visualizaciones, las consultas y las medidas personalizadas) y los
carga en el servicio Power BI.
Nota
1
Los informes de Power BI Desktop se suelen conocer como
archivos .pbix, que es la extensión que se les confiere en
Microsoft Windows.

Una vez completada la carga, aparece un cuadro de diálogo que


informa de que el proceso de publicación se realizó
correctamente y donde, asimismo, se proporciona un vínculo al
informe en el servicio Power BI.

Impresión y exportación
de paneles e informes
En ocasiones, es posible que quiera imprimir un informe o un
panel para una reunión o para compartirlos con otros usuarios.
Power BI proporciona varias maneras de conseguir estas copias
impresas.

2
Empiece en el servicio Power BI. En Mi área de trabajo, creará
una aplicación que incluye el panel, el informe y el conjunto de
datos. Luego, compartirá la aplicación con los usuarios de la
organización para que puedan reutilizar esos artefactos. En la
vista de lista del área de trabajo, decida qué paneles e informes
quiere incluir en la aplicación.

Seleccione el botón Publicar aplicación en la esquina superior


derecha para iniciar el proceso de creación y publicación de una
aplicación desde el área de trabajo.

En Configuración, rellene el nombre y la descripción para ayudar


1 a los usuarios a encontrar la aplicación. Puede establecer un color
de tema para personalizarla. También puede agregar un vínculo
que lleve a un sitio de soporte.

Elija si quiere distribuir la aplicación a personas concretas o a


grupos y, tras ello, dé un título a la aplicación. Indique una
descripción detallada en el cuadro Descripción para que los
usuarios sepan lo que la aplicación ofrece.
2

En la parte inferior del cuadro de diálogo, puede cargar una


imagen relativa a la aplicación y, luego, seleccionar el panel que
se va a incluir en la aplicación. Al publicar la aplicación, esta se
agrega a la galería de contenido de la organización.

Para obtener más información, vea Publicación de una aplicación


en Power BI .

Uso de aplicaciones
En esta lección, creará una instancia de una aplicación para todos

los usuarios de un grupo.


OneDrive para la Empresa es una ubicación de almacenamiento
en potencia del contenido de Power BI que proporciona el
historial de versiones. Puede compartir sus archivos con un grupo
de Office365 para permitir que varias personas trabajen en los
mismos archivos de Power BI o de Excel.

Para conectarse a un archivo PBIX (Power BI Desktop) en


OneDrive para la Empresa, inicie sesión en el servicio Power BI y
1 seleccione Obtener datos. En Crear contenido, seleccione
Archivos y, luego, OneDrive para la Empresa. Resalte el archivo
y, después, seleccione Conectar.

El contenido aparece en la barra de navegación de la izquierda.


Los cambios de archivo en la página OneDrive para la Empresa
se reflejarán automáticamente en el entorno de Power BI y se
registrarán en el historial de versiones.
Para obtener más información, vea Conexión a archivos
almacenados en OneDrive del área de trabajo de la aplicación
Power BI .

Publicación en la web
En esta lección, va a compartir un informe de Power BI en una
página web o por correo electrónico. Esta característica de
Power BI suele conocerse como Publicar en la web.

2
RESUMEN

Considere el escenario de ciudad inteligente de ejemplo que se ha

presentado. La ciudad intenta optimizar el tráfico mediante datos de


sensores y cámaras. La solución se debe extender más allá del servicio
de telemetría básico. Necesita un centro de mensajería centralizado
para la comunicación bidireccional en la nube. Tendrá que autenticar,
administrar y aprovisionar millones de dispositivos de forma confiable

y segura. Además, necesitará supervisar el estado de estos dispositivos


1
en el tiempo para garantizar un tiempo de actividad constante. En esta

situación, IoT Hub puede ayudar a resolver el problema del


desarrollador porque proporciona el marco de trabajo para crear
funciones auxiliares, como la seguridad, el aprovisionamiento, etc.
Sin IoT Hub, el desarrollador tendría que crear personalmente toda la
funcionalidad. Con IoT Hub, puede centrarse en el problema

empresarial concreto (y proporcionar soluciones para toda la ciudad).

IoT Hub simplifica el desarrollo de soluciones de IoT al proporcionar


funcionalidades críticas de cualquier solución de IoT en cualquier
segmento industrial.

La resolución de problemas de toda la ciudad requiere otro tipo de


diseño. Un enfoque de ingeniería basado en el diseño de sistemas
podría ofrecer soluciones a problemas complejos como la
administración del tráfico, la reducción de emisiones de efecto

2 invernadero del tráfico, etc. El diseño de sistemas basados en


soluciones necesita la capacidad de administrar un gran número de

mensajes en tiempo real entre los distintos actores autónomos. IoT


Hub proporciona la capacidad de controlar ese tipo de mensajes.
RESUMEN

Considere el ejemplo de un desarrollador que va a implementar

aplicaciones de IoT en la nube para una aplicación de automatización


de fábrica. El desarrollador quiere simular el comportamiento de la
máquina, pero también el del entorno que la rodea. El módulo de
simulador de sensor de temperatura precompilado puede ayudar a
resolver este problema cuando se implementa en el perímetro. Sin este

módulo, el desarrollador no podrá probar la solución de forma

adecuada porque resulta caro adquirir datos del ambiente y de la


1
máquina. Al usar el módulo de sensor simulado creado previamente, el

desarrollador puede estar más seguro de que la aplicación funcionará

según lo estipulado.

En este módulo, se podrían explorar los temas de ingeniería siguientes:

Previsión del comportamiento de un componente o sistema: uso de


datos del sensor simulado para predecir el comportamiento de un

sistema para las pruebas.


Consideraciones de diseño: uso de datos simulados para diseñar

características del sistema.

Utilización de restricciones y tolerancias, y condiciones de


funcionamiento específicas: uso de datos simulados para comprender

las limitaciones de límite o umbral de una solución.

Consideraciones de seguridad: uso de datos simulados para

comprender las limitaciones de seguridad y límites del sistema.

Creación de herramientas que ayudan a compilar la solución: el sensor

de temperatura actúa como una herramienta para compilar la solución

real.

2
1

Creación de bots inteligentes


con Azure Bot Service
BIENVENIDA
Con Bots, se puede permitir a los usuarios interactuar con aplicaciones

informáticas de forma conversacional mediante texto, gráficos o voz.

Puede ser un sencillo diálogo de preguntas y respuestas, o un bot

sofisticado que permita a los usuarios interactuar con los servicios de


una forma inteligente mediante la coincidencia de patrones, el
seguimiento de estados y técnicas de inteligencia artificial bien
integradas con los servicios empresariales existentes. Obtenga
información sobre cómo crear un bot de chat y agregarle inteligencia

mediante la integración de QnA Maker y LUIS.

Requisitos previos
2
• Aspectos básicos de Azure
RESUMEN
Buen trabajo. Ha terminado la parte más difícil del curso.

Ya ha visto los aspectos básicos de las redes neuronales. No se


preocupe si en esta fase se siente algo confuso: las redes neuronales
no son intuitivas, ni siquiera para los expertos. También hay mucha
1
jerga y es normal pensar que es difícil. A continuación se resumirá lo
que se ha descrito.

Ha aprendido que:

• Las redes neuronales se componen de nodos.

o Cada nodo recibe información, la combina mediante


adiciones sencillas, más algún tipo de función de

activación, y envía el resultado a otros nodos


(normalmente) en la "capa" siguiente.

o Las conexiones entre los nodos se


denominan bordes y multiplican los valores que pasan

por ellos por su peso (número).


o Finalmente, esta información llega a la capa de salida y

los valores mostrados por estos nodos finales se


interpretan como una categoría de predicción como
"oreja" o "perro".

• El entrenamiento de una red neuronal consiste esencialmente

en el cambio de pesos hasta que se realicen las predicciones


precisas de forma confiable.

• Los pesos se cambian mediante descenso de gradiente. En


cada paso de este proceso:

o La red neuronal procesa un ejemplo de entrenamiento


(propagación directa).

o La predicción se compara con la realidad


2
o La propagación inversa identifica qué pesos se deben
cambiar y cuánto

o Para calcular el error de cada borde, la propagación


inversa se desplaza hacia atrás, desde la salida hacia el
nodo de entrada.

Ahora que ha revisado este módulo, debe ser capaz de:

• Obtener información sobre estructuras de red neuronal, capas,

bordes y pesos.

• Visualizar predicciones y refinar los modelos de red

[Link] distintos tipos de funciones de activación y

optimizadores.
RESUMEN
¡Enhorabuena! Ha creado un modelo de análisis predictivo sencillo
con Azure Machine Learning Studio. Resumamos lo que ha realizado.
Ha usado un conjunto de datos importado ("ingerir datos") para crear

un experimento. Después ha definido la lógica en el diseñador visual y

1 ha entrenado el modelo. Por último, ha probado y publicado el

experimento como un servicio web. Este fue un ejemplo sencillo, pero


los pasos que llevó a cabo son comunes a cualquier solución de

inteligencia artificial que cree.

Desarrollar un modelo como este es un proceso iterativo: a medida que


se modifican las diversas funciones y sus parámetros, sus resultados
convergen hasta que esté satisfecho con un modelo entrenado y
efectivo. A continuación, puede vincular este modelo a otros servicios
avanzados de inteligencia artificial en Azure o puede usar esta solución

como parte de una estructura de aplicación más grande para satisfacer

las necesidades empresariales.

Más información

• Documentación de Azure Machine Learning Studio


• Diagrama de las funcionalidades de Azure Machine Learning

Studio (PDF)

• Conjuntos de datos de ejemplo para Azure Machine Learning


Studio

Obtenga más información con una serie de vídeos de Channel 9

• [Link]

2
RESUMEN
En Microsoft proporciona más presencia global que cualquier otro

proveedor en la nube, con más de 54 regiones distribuidas en todo el


mundo. Esta infraestructura le ofrece la escala necesaria para acercar
las aplicaciones a los usuarios en todo el mundo. Azure también ha
dedicado regiones para admitir el uso de la administración pública y

las aplicaciones que deben implementarse en China para que pueda


asegurar la residencia y seguridad de los datos y cumplir los

1 requisitos de resistencia para los clientes independientemente del


tipo de requisitos empresariales que tenga.

Más información

Visite los siguientes vínculos para obtener más información sobre


algunos de los temas analizados en este módulo.

• Regiones de Azure

• Zonas geográficas de Azure

• Acuerdos de Nivel de Servicio de Azure

• Diseño de aplicaciones resistentes de Azure

• Criterios para elegir un servicio de proceso de Azure


2
RESUMEN
Buen trabajo. Con este primer sitio web en nuestro haber, ya nos

hemos compuesto una idea de cómo funciona Azure y lo fácil que es


poner en marcha un sistema, configurar algunos programas de
software y deshacerse de todo cuando ya no sea necesario.

Azure proporciona servicios que pueden ayudarnos a transformar el


modo en que la organización ofrece nuevas características a los
usuarios de formas que no serían posibles sin el poder de la nube.
1
Limpieza

El espacio aislado limpia los recursos automáticamente cuando haya

terminado con este módulo.

Al trabajar en una suscripción propia, se recomienda identificar al final

de un proyecto si aún necesita los recursos creados. Dejar recursos en


funcionamiento puede costarle dinero. Puede eliminar los recursos de

forma individual o eliminar el grupo de recursos para eliminar todo el

conjunto de recursos.

Continuación del recorrido por Azure

Microsoft Learn proporciona rutas de aprendizaje basadas en su rol e


intereses.
Ha dado el primer paso en la ruta de aprendizaje sobre los aspectos
básicos de Azure. Continúe avanzando para aprender cómo los
servicios de Azure, como los procesos, el almacenamiento, las redes y

la seguridad, pueden ayudarle a aprovechar el poder de la nube y crear


la próxima gran idea innovadora.

Si actualmente es usuario de AWS y quiere obtener más información


sobre los servicios de Azure, consulte el Centro de arquitectura de

Azure y vea el artículo en el que comparamos AWS y los servicios de


Azure.

2
APLICACIONES COMUNES
DE APRENDIZAJE
PROFUNDO
Cada vez que usa un asistente de voz en el teléfono móvil o hay una

sugerencia para etiquetar a un amigo en una fotografía en un medio


social, eso es el aprendizaje profundo.

Procesamiento de lenguaje natural

El procesamiento de lenguaje natural (NLP) usa modelos de

inteligencia artificial para analizar el idioma. NLP incluye revisión


1
ortográfica, traducción entre idiomas, reconocimiento de voz, bots de
chat, análisis de sentimiento, extracción de frases clave y muchas otras

áreas.
Visión informática

La visión informática, que a veces se denomina reconocimiento de

imágenes, puede analizar imágenes y extraer características de ellas


(como objetos, colores, ubicaciones o animales). La visión informática

se puede extender a vídeos para obtener información en tiempo real.

Algunos servicios combinan la visión informática con el reconocimiento


de voz para el análisis de vídeo.

La visión informática ha mejorado considerablemente la capacidad de

usar motores de búsqueda para las imágenes. Permite a los usuarios


entrenar fácilmente sus propios modelos de visión informática en el

explorador. Después, los usuarios pueden usar estos modelos en


aplicaciones individuales propias, por ejemplo para comprobar si se

cumple la normativa de uso obligatorio del casco en zonas de trabajo


peligrosas.
Recomendaciones

Programas de televisión que le pueden interesar, nuevos productos

basados en compras anteriores, amigos para agregar a sus redes y


anuncios que aparecen al explorar la web son aplicaciones de los

sistemas de recomendaciones de aprendizaje profundo.

A continuación se ofrecerá una introducción a las redes neuronales

convolucionales (CNN).

3
EJERCICIO: REGRESIÓN
LOGÍSTICA
En los ejercicios de este módulo se usa Azure Notebooks. Es un

recurso de uso gratuito.

Si los vínculos siguientes no funcionan, tiene que configurar una cuenta


gratuita de Azure Notebooks y clonar el proyecto para este módulo.

Vea el repositorio de Python en GitHub o el repositorio de R en


GitHub para obtener instrucciones para comenzar.

1. Los usuarios de Python deben ir a la biblioteca.

1
2. Seleccione el ejercicio 05. Logistic Regression - [Link].

3. Luego seleccione Run on Free Compute (Ejecutar en un


proceso gratuito).

4. Los usuarios de R deben ir a la biblioteca.

5. Seleccione el ejercicio 05. Logistic Regression - [Link].

6. Luego seleccione Run on Free Compute (Ejecutar en un

proceso gratuito).
REVISIÓN DE LA FUNCIÓN
DE COSTOS Y EL
DESCENSO DE GRADIENTE
En el ejercicio anterior se ha visto al algoritmo de regresión logística

optimizar el número de ejemplos clasificados correctamente. La


optimización se logra mediante dos métodos que se producen en

segundo plano en IA: función de costo y descenso de gradiente.

Actualización sobre la función de costo

 El costo es la métrica de error y se quiere obtener un valor lo


2 más bajo posible.
 El costo se determina con la función de costo.

 Cada algoritmo tiene una función de costo distinta.

Descenso de gradiente

El descenso de gradiente optimiza los modelos para minimizar su


costo. Es el algoritmo de optimización más usado en IA y se emplea de

algún modo en prácticamente todos los conjuntos de entrenamiento

de modelos. Hay variaciones para las distintas aplicaciones, pero todas

usan los mismos conceptos básicos.

El descenso de gradiente modifica las predicciones de los modelos para

reducir el error mediante el cálculo, aunque no es necesario


profundizar en las matemáticas para realizar inteligencia artificial.
3
1

Curso de iniciación sobre


aprendizaje automático
BIENVENIDA
Introducción de alto nivel a la inteligencia artificial (IA) y al aprendizaje
automático. Los módulos están dirigidos a personas con poco o ningún

conocimiento de informática y estadísticas.

Trataremos los conceptos esenciales de la IA y mostraremos cómo


aplicar soluciones de aprendizaje automático personalizadas con
herramientas gratuitas y fáciles de usar. Conocerá métodos sencillos

pero eficaces empleados por los profesionales de la IA para realizar

predicciones sobre objetos, personas y el futuro.


2
A continuación, trataremos temas interesantes y complejos de los que
puede haber oído hablar, como redes neuronales, visión artificial,

aprendizaje profundo y aprendizaje no supervisado.

Requisitos previos

 Ninguno

Predicción de valores numéricos mediante regresión 56 min

Predicción de categorías con la clasificación de aprendizaje

automático 1 h

Realización de predicciones a partir de datos complejos con


redes neuronales 38 min
Uso de modelos de aprendizaje profundo para realizar

predicciones sobre datos especializados 44 min

Uso del aprendizaje no supervisado para analizar datos sin


etiquetar 27 min

3
Como vio en el video, Azure Cognitive Search ingirió datos en forma

de archivos PDF en Azure Blob Storage. Luego, con la extracción de la


frase clave y el reconocimiento de la entidad con nombre, la detección
del idioma y la traducción automática, los servicios cognitivos
enriquecieron los datos y crearon un modelo de riesgo del Reglamento

General de Protección de Datos (GDPR) personalizado. Cuando se

conectó a las aplicaciones web de Azure, creó una experiencia de


búsqueda que permitió a dos millones de usuarios administrar más de

cinco millones de contratos.

Aquí hay un diagrama del proceso de minería de conocimiento similar


al proceso utilizado por iCertis. Este diagrama ilustra cómo se ingiere,
descifra, enriquece e indexa el contenido para permitir la extracción de

datos y la búsqueda a través de diversas aplicaciones (como sitios web


1
y chatbots).

Ahora que ha visto un ejemplo de cómo funciona la minería del

conocimiento, aquí hay algunos otros ejemplos de la industria en los


que la minería del conocimiento se aplica para resolver un problema

comercial.
Las organizaciones de atención médica enfrentan el desafío de

demasiados datos clínicos. Grandes volúmenes de datos pueden incluir


nombres de pacientes, datos demográficos, años de registros médicos
e historial médico, diagnósticos y resultados de laboratorio. Con la
minería de conocimientos, los proveedores de atención médica pueden

examinar grandes cantidades de datos para identificar infecciones

antes, predecir qué pacientes tienen más probabilidades de tener


ciertos problemas y permitir que los médicos atiendan mejor a los

pacientes.

En los servicios financieros, las empresas deben abordar el desafío de


dar sentido a grandes volúmenes de documentos, formularios,
contratos y más. Las técnicas de procesamiento del lenguaje natural

combinadas con modelos especializados de comprensión de

2 contenido permiten a las organizaciones de servicios financieros


comprender y atender mejor a sus clientes de manera personalizada.

Las compañías de petróleo y gas tienen equipos de geólogos y otros


especialistas que necesitan comprender los datos sísmicos y
geológicos. A menudo tienen décadas de archivos con imágenes y

notas de campo escritas a mano. Necesitan conectar lugares, expertos


en dominios y eventos, y sintetizar esta información para tomar
decisiones informadas.

Ahora que hemos visto cuán poderosas son las capacidades de minería
de conocimiento de IA de Azure, profundizaremos en las capacidades

de IA relacionadas con el aprendizaje automático.


APRENDIZAJE
AUTOMÁTICO
¿Qué es el aprendizaje automático?

El aprendizaje automático es una técnica de ciencia de datos que

permite a las computadoras aprender a usar los datos existentes, sin


ser programados explícitamente, para pronosticar comportamientos,

resultados y tendencias futuros.

Las capacidades avanzadas de aprendizaje automático de Azure le


permiten a su empresa construir, entrenar e implementar rápida y
fácilmente modelos de aprendizaje automático usando Azure Machine
3
Learning, Azure Databricks y ONNX (Open Neural Network
Exchange). Puede usar las herramientas y los marcos de su elección sin
estar limitado a tecnologías específicas, desarrollar modelos más

rápido utilizando el aprendizaje automático y administrar modelos a


través de la nube y el borde.
1

Aspectos básicos de Azure


BIENVENIDA
¿Está interesado en la nube, pero no está muy seguro de cómo puede
ayudarle? Esta ruta es el lugar para comenzar.

En esta ruta de aprendizaje conseguirá lo siguiente:

Aprender conceptos como alta disponibilidad, escalabilidad,

elasticidad, agilidad, tolerancia a errores y recuperación ante desastres.

Entender las ventajas de la informática en la nube con Azure y cómo

esta le puede ahorrar tiempo y dinero.


2
Comparar y contrastar estrategias básicas para realizar la transición a
la nube de Azure

Explorar la gran variedad de servicios disponibles en Azure, incluidos


los de procesos, redes, almacenamiento y seguridad.

Requisitos previos

 Ninguno

Conceptos de la nube: Principios de la informática en la nube

1 h 2 min

Creación de una cuenta de Azure 39 min


Servicios principales Cloud Services: Introducción a Azure 36

min

Principales servicios en la nube: arquitectura de Azure y


garantías de servicio 45 min

Cloud Services básico: administración de servicios con Azure

Portal 1 h 13 min

Servicios principales Cloud Services: Opciones de proceso de


Azure 38 min

Principales Cloud Services: Opciones de almacenamiento de


datos de Azure 25 min

Cloud Services básico: opciones de redes de Azure 28 min


3
Seguridad, responsabilidad y confianza en Azure 1 h 16 min

Aplicación y supervisión de estándares de infraestructura con

Azure Policy 46 min

Control y organización de los recursos de Azure con Azure


Resource Manager 46 min

Predicción de los costos y optimización del gasto en Azure 1 h

14 min
RESUMEN
Vamos a repasar rápidamente lo que hemos aprendido en este
módulo.

Microsoft Power BI es una colección de servicios de software,


aplicaciones y conectores que funcionan conjuntamente para

convertir los datos en información interactiva. Puede usar datos de

1 orígenes básicos únicos, como un libro de Microsoft Excel, o


extraerlos de varias bases de datos y orígenes en la nube para crear
informes y conjuntos de datos complejos. Power BI puede ser tan
sencillo como desee o tan complejo como lo exija su empresa
internacional.

Power BI consta de tres elementos principales: Power BI Desktop, el


servicio Power BI y Power BI Mobile. Estos elementos funcionan de

forma conjunta para permitirle crear datos, interactuar con ellos,


compartirlos y utilizarlos como desee.

También hemos analizado los bloques de creación básicos de Power

BI:

• Visualizaciones: representaciones visuales de los datos, a

veces denominadas sencillamente "objetos visuales".


• Conjuntos de datos: colecciones de datos que Power BI

utiliza para crear visualizaciones.

• Informes: colecciones de objetos visuales de un conjunto de


datos que pueden ocupar una o varias páginas.

• Paneles: colecciones de objetos visuales de una página de

extensión, creados a partir de un informe.

• Iconos: visualizaciones únicas dentro de un informe o panel.

En el servicio Power BI, instalamos una aplicación con solo unos


clics. Esa aplicación, una colección de objetos visuales e informes lista
para su uso, permite conectarnos fácilmente a un servicio de

software para rellenar la aplicación y hacer que los datos cobren vida.

2 Por último, configuramos una programación de actualización para


nuestros datos, para asegurarnos de que los datos estén actualizados
la próxima vez que accedamos al servicio Power BI.

Pasos siguientes

¡Enhorabuena! Ha completado el primer módulo de la ruta de


aprendizaje de Power BI. Ahora cuenta con una base sólida de

conocimientos para pasar al módulo siguiente, que le guiará por los


pasos para crear su primer informe.

Anteriormente, ya mencionamos esto, pero vale la pena recalcarlo:


esta ruta de aprendizaje amplía sus conocimientos siguiendo el flujo

de trabajo habitual de Power BI:

• Integrar datos en Power BI Desktop y crear un informe.


• Publicarlo en el servicio Power BI, donde creará nuevas

visualizaciones o confeccionará paneles.

• Compartir sus paneles con otros usuarios, especialmente con


personas que se estén desplazando.

• Ver informes y paneles compartidos e interactuar con ellos en

aplicaciones de Power BI Mobile.

Es posible que usted no se encargue de todos esos procesos; algunas


personas solo ven los paneles creados por otros en el servicio, y ellos

solamente usarán el servicio. No hay problema. Pronto tendremos un


módulo dedicado a mostrarle cómo navegar y utilizar fácilmente el
servicio Power BI, para que pueda ver informes y aplicaciones e
interactuar con ellos.

3
Sin embargo, en el módulo siguiente se continúa con el flujo de
trabajo de Power BI, en el que se explica cómo crear un informe y
publicarlo en el servicio Power BI. Obtendrá información sobre cómo

se crean los informes y paneles y cómo se conectan a los datos.


Incluso puede decidir crear un informe o panel propio.
RESUMEN
Vamos a repasar rápidamente lo que hemos aprendido en este
módulo.

Microsoft Power BI es una colección de servicios de software,


aplicaciones y conectores que funcionan conjuntamente para

convertir los datos en información interactiva. Puede usar datos de

1 orígenes básicos únicos, como un libro de Microsoft Excel, o


extraerlos de varias bases de datos y orígenes en la nube para crear
informes y conjuntos de datos complejos. Power BI puede ser tan
sencillo como desee o tan complejo como lo exija su empresa
internacional.

Power BI consta de tres elementos principales: Power BI Desktop, el


servicio Power BI y Power BI Mobile. Estos elementos funcionan de

forma conjunta para permitirle crear datos, interactuar con ellos,


compartirlos y utilizarlos como desee.

También hemos analizado los bloques de creación básicos de Power

BI:

• Visualizaciones: representaciones visuales de los datos, a

veces denominadas sencillamente "objetos visuales".


• Conjuntos de datos: colecciones de datos que Power BI

utiliza para crear visualizaciones.

• Informes: colecciones de objetos visuales de un conjunto de


datos que pueden ocupar una o varias páginas.

• Paneles: colecciones de objetos visuales de una página de

extensión, creados a partir de un informe.

• Iconos: visualizaciones únicas dentro de un informe o panel.

En el servicio Power BI, instalamos una aplicación con solo unos


clics. Esa aplicación, una colección de objetos visuales e informes lista
para su uso, permite conectarnos fácilmente a un servicio de

software para rellenar la aplicación y hacer que los datos cobren vida.

2 Por último, configuramos una programación de actualización para


nuestros datos, para asegurarnos de que los datos estén actualizados
la próxima vez que accedamos al servicio Power BI.

Pasos siguientes

¡Enhorabuena! Ha completado el primer módulo de la ruta de


aprendizaje de Power BI. Ahora cuenta con una base sólida de

conocimientos para pasar al módulo siguiente, que le guiará por los


pasos para crear su primer informe.

Anteriormente, ya mencionamos esto, pero vale la pena recalcarlo:


esta ruta de aprendizaje amplía sus conocimientos siguiendo el flujo

de trabajo habitual de Power BI:

• Integrar datos en Power BI Desktop y crear un informe.


• Publicarlo en el servicio Power BI, donde creará nuevas

visualizaciones o confeccionará paneles.

• Compartir sus paneles con otros usuarios, especialmente con


personas que se estén desplazando.

• Ver informes y paneles compartidos e interactuar con ellos en

aplicaciones de Power BI Mobile.

Es posible que usted no se encargue de todos esos procesos; algunas


personas solo ven los paneles creados por otros en el servicio, y ellos

solamente usarán el servicio. No hay problema. Pronto tendremos un


módulo dedicado a mostrarle cómo navegar y utilizar fácilmente el
servicio Power BI, para que pueda ver informes y aplicaciones e
interactuar con ellos.

3
Sin embargo, en el módulo siguiente se continúa con el flujo de
trabajo de Power BI, en el que se explica cómo crear un informe y
publicarlo en el servicio Power BI. Obtendrá información sobre cómo

se crean los informes y paneles y cómo se conectan a los datos.


Incluso puede decidir crear un informe o panel propio.
RESUMEN
Vamos a repasar rápidamente lo que hemos aprendido en este
módulo.

Microsoft Power BI es una colección de servicios de software,


aplicaciones y conectores que funcionan conjuntamente para

convertir los datos en información interactiva. Puede usar datos de

1 orígenes básicos únicos, como un libro de Microsoft Excel, o


extraerlos de varias bases de datos y orígenes en la nube para crear
informes y conjuntos de datos complejos. Power BI puede ser tan
sencillo como desee o tan complejo como lo exija su empresa
internacional.

Power BI consta de tres elementos principales: Power BI Desktop, el


servicio Power BI y Power BI Mobile. Estos elementos funcionan de

forma conjunta para permitirle crear datos, interactuar con ellos,


compartirlos y utilizarlos como desee.

También hemos analizado los bloques de creación básicos de Power

BI:

• Visualizaciones: representaciones visuales de los datos, a

veces denominadas sencillamente "objetos visuales".


• Conjuntos de datos: colecciones de datos que Power BI

utiliza para crear visualizaciones.

• Informes: colecciones de objetos visuales de un conjunto de


datos que pueden ocupar una o varias páginas.

• Paneles: colecciones de objetos visuales de una página de

extensión, creados a partir de un informe.

• Iconos: visualizaciones únicas dentro de un informe o panel.

En el servicio Power BI, instalamos una aplicación con solo unos


clics. Esa aplicación, una colección de objetos visuales e informes lista
para su uso, permite conectarnos fácilmente a un servicio de

software para rellenar la aplicación y hacer que los datos cobren vida.

2 Por último, configuramos una programación de actualización para


nuestros datos, para asegurarnos de que los datos estén actualizados
la próxima vez que accedamos al servicio Power BI.

Pasos siguientes

¡Enhorabuena! Ha completado el primer módulo de la ruta de


aprendizaje de Power BI. Ahora cuenta con una base sólida de

conocimientos para pasar al módulo siguiente, que le guiará por los


pasos para crear su primer informe.

Anteriormente, ya mencionamos esto, pero vale la pena recalcarlo:


esta ruta de aprendizaje amplía sus conocimientos siguiendo el flujo

de trabajo habitual de Power BI:

• Integrar datos en Power BI Desktop y crear un informe.


• Publicarlo en el servicio Power BI, donde creará nuevas

visualizaciones o confeccionará paneles.

• Compartir sus paneles con otros usuarios, especialmente con


personas que se estén desplazando.

• Ver informes y paneles compartidos e interactuar con ellos en

aplicaciones de Power BI Mobile.

Es posible que usted no se encargue de todos esos procesos; algunas


personas solo ven los paneles creados por otros en el servicio, y ellos

solamente usarán el servicio. No hay problema. Pronto tendremos un


módulo dedicado a mostrarle cómo navegar y utilizar fácilmente el
servicio Power BI, para que pueda ver informes y aplicaciones e
interactuar con ellos.

3
Sin embargo, en el módulo siguiente se continúa con el flujo de
trabajo de Power BI, en el que se explica cómo crear un informe y
publicarlo en el servicio Power BI. Obtendrá información sobre cómo

se crean los informes y paneles y cómo se conectan a los datos.


Incluso puede decidir crear un informe o panel propio.
Nota

Para seguir con la hoja de cálculo de Excel de este vídeo, descargue el


.xlsx aquí.

Puede que un diseño de tabla que se vea bien no sea óptimo


para las consultas automatizadas. Por ejemplo, la hoja de cálculo
siguiente tiene encabezados que abarcan varias columnas.

Limpiar datos

Afortunadamente, el Editor de Power Query tiene herramientas


que lo ayudarán a transformar rápidamente tablas de varias
columnas en conjuntos de datos que puede usar.
Transponer datos

Con el uso de Transpose (Transponer) en el Editor de


Power Query, puede intercambiar filas en columnas para que los
datos tengan un mejor formato.

Dar formato a los datos


2

Es posible que tenga que darle formato a los datos para que
Power BI pueda clasificar en categorías e identificar
correctamente los datos. Con algunas transformaciones, limpiará
los datos de un conjunto de datos que puede usar en Power BI.
Entre los ejemplos de transformaciones eficaces se incluyen la
promoción de filas a encabezados, el uso de Rellenar para
reemplazar los valores null y Anular la dinamización de
columnas.

Con Power BI, puede experimentar con las transformaciones y


determinar cuál de ellas transformará los datos en el formato de
columna más utilizable. Recuerde que en la sección Pasos
aplicados del Editor de Power Query se registran todas sus
acciones. Si una transformación no funciona según lo previsto,
seleccione la X junto al paso y deshágalo.
Después de limpiar los datos y dejarlos en un formato utilizable,
puede empezar a crear objetos visuales atractivos en Power BI.

Para más información, consulte Tutorial: Combinación de datos


3 de ventas de Excel y una fuente de OData .
Nota

Para seguir los ejemplos de los vídeos y en esta página, descargue


la base de datos de Access de ejemplo aquí e impórtelo en
Power BI Desktop (Obtener datos > Excel).

Al crear una visualización de tabla en el informe mediante un

campo de fecha, Power BI Desktop incluye automáticamente los


desgloses por período de tiempo. Por ejemplo, Power BI ha
divido automáticamente el campo de fecha único de la tabla
Fecha en año, trimestre, mes y día.

Los objetos visuales muestran datos en el nivel de año de forma

predeterminada, pero este comportamiento se puede cambiar


activando Explorar en profundidad en la esquina superior
derecha del objeto visual.
Al seleccionar las barras o líneas del gráfico, el sistema explorará
en profundidad hasta el siguiente nivel de jerarquía de tiempo,
por ejemplo, de años a trimestres. Puede seguir explorando en
profundidad hasta alcanzar el nivel más granular de la jerarquía:
días. Para retroceder en la jerarquía de tiempo, seleccione
Explorar agrupando datos en la esquina superior izquierda del
objeto visual.

También puede explorar en profundidad todos los datos que se


muestran en el objeto visual, en lugar de hacerlo a través de un
período seleccionado. Para ello, use el icono de flecha doble Ir al
siguiente nivel de la jerarquía.
Siempre que el modelo tenga un campo de fecha, Power BI
generará automáticamente distintas vistas correspondientes
cada jerarquía de tiempo.

3
Use el menú Vista de página de la pestaña Vista para cambiar
la escala de las páginas del informe. Las opciones disponibles son
Ajustar a la página (predeterminada), Ajustar al ancho y
Tamaño real.

1
También se puede cambiar el tamaño de la página. El tamaño de

página de informe está establecido de forma predeterminada en


16:9. Para cambiar el tamaño de página, asegúrese de que no hay
objetos visuales seleccionados, seleccione el icono de pincel en
el panel Visualizaciones y, después, seleccione Tamaño de
página para expandir esa sección.
2 Entre las opciones de tamaño de página se incluyen 4:3 (más bien
una relación de aspecto cuadrada) y Dinámica (la página se
estirará para rellenar el espacio disponible). También hay
disponible una opción de tamaño Carta estándar para los
informes. Puede que haya que cambiar el tamaño de los objetos
visuales después de cambiar el tamaño de página para garantizar
que están completamente dentro del lienzo.

Puede especificar un tamaño de página personalizado

(estableciendo el tamaño en pulgadas o píxeles) y también


cambiar el color de fondo de todo el informe.
Otra opción consiste en seleccionar Cortana, que ajusta el
tamaño del informe para que se pueda usar como resultado en
las búsquedas que usan Cortana.

Agregar elementos
estáticos
Aparte de objetos visuales enlazados a datos, también se pueden

agregar elementos estáticos, como cuadros de texto, imágenes y


formas, para mejorar el diseño visual de los informes. Para
agregar un elemento visual, seleccione Cuadro de texto,
Imagen o Formas en la pestaña Inicio.

3
En la sección Conjuntos de datos, seleccione los puntos
suspensivos situados junto al conjunto de datos que le interese
y, después, seleccione Obtener conclusiones rápidas.

1
Al seleccionar Obtener conclusiones rápidas, Power BI busca
patrones en los datos. Después de unos 15 segundos, la
notificación cambia para que sepa que Power BI encontró
información.
Al seleccionar el botón Ver conclusiones en la notificación,
aparecerá una página de objetos visuales. Puede desplazarse
hacia abajo en la página para ver y estudiar los objetos visuales.

Como con cualquier otro objeto visual, puede interactuar con los
objetos visuales de la página Conclusiones rápidas. También
puede anclar cualquiera de ellos en un panel o filtrar para revelar
información adicional.

Con Conclusiones rápidas, puede dejar que Power BI se


encargue de detectar valores atípicos y tendencias en los datos.
Use esas conclusiones de los paneles o siga refinando y filtrando
para obtener la información que necesita.

Para obtener más información, vea Generación automática de


conclusiones de datos con Power BI .
Creación y configuración
de un panel
Los paneles de Power BI son colecciones de visualizaciones de

una página que se crean en el servicio Power BI. Los paneles


pueden crearse anclando objetos visuales de los informes.

3
Los usuarios verán las preguntas sugeridas cuando formulen una
pregunta.

Para agregar sus propias preguntas, seleccione los puntos

suspensivos junto al panel que quiera usar. Seleccione


Configuración en el menú. Puede deshabilitar por completo el
cuadro de entrada de Preguntas y respuestas en la sección
Paneles de la página Configuración.
1
Para agregar preguntas, seleccione la sección Conjuntos de
datos. Se muestran todos los conjuntos de datos que están
asociados al panel. Seleccione en la lista el conjunto de datos que
está asociado a su panel, seleccione Preguntas y respuestas
destacadas y, después, seleccione el vínculo Agregar una
pregunta. Escriba la pregunta en el cuadro de entrada y
seleccione Aplicar.

Cuando alguien seleccione el cuadro de entrada de búsqueda,

verá las entradas sugeridas en la parte superior de la lista de


opciones. Las preguntas personalizadas son una forma valiosa de
que los usuarios del panel reflexionen sobre el tipo de datos que
están disponibles y cómo usarlos de la mejor manera.

Para obtener más información, vea Crear las preguntas


destacadas para Preguntas y respuestas de Power BI .
Uso compartido de
paneles con su
organización
Los informes de Power BI le ayudarán a encontrar datos,
recopilarlos en un modelo de datos y crear informes y
visualizaciones. Estas características son aun más eficaces cuando

las conclusiones se comparten con otras personas de su


organización.

3
Para compartir un panel, ábralo en el servicio Power BI y
seleccione el vínculo Compartir en la esquina superior izquierda.

En la página Compartir panel, seleccione la sección Compartir.


En el campo Dirección de correo electrónico, escriba los
nombres de las personas a las que quiere conceder acceso al
panel. También puede copiar y pegar las direcciones de correo
electrónico en este campo, o usar una lista de distribución, un
1 grupo de seguridad o un grupo de Office 365.
2

Si selecciona la casilla Enviar notificación por correo


electrónico a los destinatarios, los destinatarios recibirán un
correo electrónico con un vínculo al panel compartido. Puede
agregar una nota opcional al correo electrónico.
Nota

Los destinatarios que aún no tengan una cuenta de Power BI


deberán realizar el proceso de registro antes de ver el panel.
Todas las personas con las que comparta un panel pueden ver e
interactuar con el panel de la misma manera que usted. Sin
embargo, solo tienen acceso de lectura a los informes
subyacentes y no pueden acceder a los conjuntos de datos ocultos.

Para obtener más información, vea Uso compartido de informes


y paneles de Power BI con compañeros y otros usuarios .

Visualización de objetos
visuales e iconos en
pantalla completa
3 Al examinar paneles o informes en el servicio Power BI, puede resultar
útil expandir y centrarse en un gráfico u objeto visual concreto. Puede
hacerlo de dos maneras diferentes.
Para modificar un icono, mantenga el puntero sobre los puntos
suspensivos y selecciónelos para ver las opciones que se
muestran en la captura de pantalla siguiente.

Seleccione el icono del lápiz para abrir el panel Detalles del


icono. En este panel, puede cambiar el Título o el Subtítulo del
icono, o incluir la hora de su última actualización.
2

De forma predeterminada, al seleccionar un icono del panel, se


abrirá el informe desde el que se originó. Este comportamiento
puede cambiarse en el campo Establecer vínculo personalizado
del panel Detalles del icono. Un uso común de esta característica
es redirigir a los usuarios a la página principal de la organización
cuando seleccionan una imagen de logotipo.

Adición de imágenes y
texto al panel
También se pueden agregar iconos que contengan imágenes,
vídeos en línea, cuadros de texto o contenido web. Al seleccionar
el vínculo Agregar icono en la esquina superior izquierda de un
panel, aparece el cuadro de diálogo Agregar icono.

Por ejemplo, cuando se agrega un cuadro de texto, aparece un


3 panel Detalles del icono en el lado derecho, donde se pueden
editar los detalles. También está disponible una sección para
definir o modificar el contenido del icono, que incluye opciones
como un editor de texto enriquecido para un cuadro de texto.

Con los iconos y la capacidad de editar los detalles, se puede


personalizar el panel y hacer que aparezca del modo deseado.

Para obtener más información, vea Editar o quitar un icono de


panel .

Obtención de más espacio


en el panel
Es posible que tenga más contenido del que cabe en un lienzo.
Puede administrar la distribución del espacio del panel para
obtener una vista completa de su contenido.
Inicie sesión en su cuenta con la información de la cuenta del
servicio Power BI. La primera pantalla muestra todo el contenido
al que tiene acceso, incluidos informes, paneles y grupos. El área
de trabajo también incluye paneles de ejemplo que puede
explorar para inspirarse.

Pulse en cualquier panel para abrirlo. En un panel, puede pulsar


un icono de panel para centrarse en él en una vista más grande.
1 Fíjese en la información que se revela al pulsar el botón Anotar
en la esquina superior derecha. La característica Anotar permite
dibujar en un icono enfocado para resaltar las áreas de interés.
Las herramientas de anotación aparecen dispuestas a lo largo de
la parte inferior de la pantalla.
2

Para compartir el icono anotado, pulse el vínculo Compartir


situado en la esquina superior derecha.

Para obtener más información, vea ¿Qué son las aplicaciones


móviles de Power BI?
Creación de áreas de
trabajo en Power BI
En esta unidad, creará un grupo que define un conjunto de usuarios
con acceso a paneles, informes y datos específicos.

3
Empiece en Mi área de trabajo, seleccione el grupo que creó
anteriormente, seleccione Mi organización para examinar los
paquetes de contenido y, después, conéctese a la aplicación.

Power BI importa los paneles, informes y conjuntos de datos


que se incluyen en la aplicación.

1 Cuando selecciona el conjunto de datos, Power BI le pregunta si


quiere personalizar la aplicación. Cree una copia de la aplicación
para usarla para realizar cambios y mantenerla desconectada de
la versión publicada de la aplicación. Al crear una copia, no
recibirá actualizaciones automáticamente si el creador de la
aplicación efectúa algún cambio en la versión publicada de la
aplicación. Si lo quiere, puede editar el panel, el informe e
incluso el conjunto de datos.
Actualización de
aplicaciones
Para editar una aplicación creada anteriormente y ver cómo
otras personas usan la aplicación, empiece en el servicio
2 Power BI, en Mi área de trabajo. Siempre que realice cambios
en el panel, recibirá un recordatorio de que ha cambiado algo
que ha compartido con otros usuarios en una aplicación.
Power BI le pedirá que actualice la versión compartida.

Vuelva al icono de configuración y seleccione Ver


aplicación para ver las aplicaciones que ya ha publicado. Al
seleccionar Editar, volverá a la pantalla donde puede editar el
título y la descripción. Esta vez, la pantalla incluye un
botón Actualizar.
Power BI procesa esos cambios y publica la aplicación
actualizada en la galería de aplicaciones. Todos los usuarios que
se hayan conectado a la aplicación recibirán un mensaje que
informa de que la aplicación ha cambiado, y tendrán la
posibilidad de aceptar los cambios o conservar la versión
anterior. Como propietario de la aplicación, puede administrar
las versiones que los compañeros utilizan.

Para obtener más información, vea Cambiar la aplicación


publicada.

3 INTEGRACIÓN DE ONEDRIVE
PARA LA EMPRESA CON
POWER BI
Puede usar sus grupos de Office 365 y Power BI para colaborar
y compartir con Microsoft OneDrive para la Empresa.
En el servicio Power BI, seleccione el informe que quiera
compartir para que se muestre en el lienzo. Luego, en el menú,
seleccione Archivo > Publicar en la web. Se abrirá un cuadro de
diálogo en el que se explica que recibirá un para insertar que le
permitirá incluir el informe en un sitio web o en un correo
electrónico.

Al seleccionar Crear código para insertar, Power BI abre otro


cuadro de diálogo que indica que está a punto de compartir los
datos con todos los usuarios de Internet. Compruebe que el uso
compartido público es aceptable antes de continuar.

Power BI abre un cuadro de diálogo con dos vínculos:

 Un vínculo, que se puede compartir por correo


electrónico, que muestra el informe como una página
web.
 Un código HTML (un vínculo dentro de un IFrame) para
que el informe se pueda insertar directamente en una
página web
En el vínculo HTML, puede elegir uno de los tamaños
predefinidos del informe insertado, o bien modificar el código
del IFrame y personalizar su tamaño.

Puede pegar el vínculo de correo electrónico en un explorador y


ver el informe como una página web. Puede interactuar con esa
página web tal y como lo haría si estuviera viendo el informe en
Power BI. En la siguiente imagen se muestra una página Publicar
en la web cuando su vínculo correspondiente se ha copiado
directamente desde ese cuadro de diálogo en un explorador.

También puede insertar el vínculo de IFrame en una entrada de


blog, en un sitio web o en Sway.

Si quiere eliminar un código insertado que ha creado, Power BI


puede ayudarle. En Power BI, seleccione el icono de engranaje en
la esquina superior derecha y, después, seleccione Administrar
códigos para insertar.

En el área de trabajo Power BI se muestran los códigos para


insertar que ha creado.
Para obtener más información, vea Publicar en la web de
Power BI .

3
RESUMEN
Se describirá el escenario de la empresa de logística para el transporte

de frutas y otros productos perecederos. Las distintas partes


interesadas (productores, minoristas, operadores de transporte y

clientes) quieren garantizar la calidad del producto en tiempo real.

En este escenario, IoT de Azure puede ayudar a crear una solución


segura para todas las partes interesadas. La solución aprovisiona,
conecta, supervisa y controla todos los recursos de IoT de un extremo

a otro a través de la nube. Sin la solución de IoT de Azure aprovisionada


1
a través de la nube, las partes interesadas no podrían garantizar la
calidad del producto en tiempo real.

Para proporcionar valor empresarial, la solución de IoT de Azure realiza

el seguimiento de la temperatura, la humedad, etc., durante el proceso


de transporte. La solución se extiende más allá de la telemetría al
proporcionar análisis y soluciones perimetrales para ofrecer el estado

en tiempo real a las partes interesadas.


Como empresa de logística que atiende a varias partes interesadas
(productores, minoristas, clientes finales), la implementación de IoT le
permite aplicar principios de ingeniería a todo el proceso. IoT funciona

como un mecanismo de captura de datos (por ejemplo, sensores


individuales en camiones) lo que lleva a entender el proceso de un
2
extremo a otro. Una vez entendido, el proceso se puede modelar y

mejorar mediante la implementación de análisis. A través de los datos


del sensor, se puede comprender la seguridad de la fruta (por ejemplo,
asegurándose de que el producto sigue siendo seguro para el

consumo).
3
1

Predicción de los costos y


optimización del gasto en
Azure
BIENVENIDA
Los costos son uno de los aspectos más importantes de la nube y

pueden tener un efecto considerable en la empresa. Azure dispone de

diversas herramientas para ayudarlo a entender mejor el gasto en la

nube y algunos procedimientos recomendados que puede aprovechar


para ahorrar dinero.

En este módulo, aprenderá a:

 Distinguir las distintas opciones que tiene para adquirir

servicios de Azure
 Estimar los costos con la calculadora de precios de Azure
 Predecir y optimizar costos con Azure Cost Management y
2
Azure Advisor
 Aplicar procedimientos recomendados para ahorrar en costos
de infraestructura

 Aplicar procedimientos recomendados para ahorrar en costos


de licencias

Requisitos previos

 Comprender las opciones de los componentes de

infraestructura de Azure

Introducción 2 min

Adquisición de productos y servicios de Azure 5 min

Factores que afectan al costo 5 min


Ejercicio: Estimación de los costos con la calculadora de precios

de Azure 15 min

Ejercicio: Predicción y optimización con Cost Management y


Azure Advisor 15 min

Ejercicio: Estimación del costo total de propiedad con la

calculadora de TCO de Azure 8 min

Ahorro en costos de infraestructura 10 min

Ahorro en costos de licencia 10 min

Resumen 4 min

3
INTRODUCCIÓN
Al planear una solución en la nube, siempre se presenta el reto de
equilibrar el costo frente al rendimiento. Puede parecer un juego de
adivinanzas saber si las opciones seleccionadas permanecerán dentro
del presupuesto, o bien si habrá una sorpresa en la próxima factura.

Debe poder responder con confianza a varias preguntas:

4 • ¿Cuánto va a costar esta solución durante este ejercicio?

• ¿Hay alguna configuración alternativa que se pueda usar para


ahorrar dinero?

• ¿Puede estimar cómo afectaría un cambio al costo y


rendimiento sin colocarla en un sistema de producción?

En este módulo, exploraremos las herramientas que puede usar para


responder a estas preguntas y más.

Objetivos de aprendizaje

En este módulo, aprenderá a:

• Distinguir las distintas opciones que tiene para adquirir


servicios de Azure
• Estimar los costos con la calculadora de precios de Azure

• Predecir y optimizar costos con Azure Cost Management y

Azure Advisor

• Aplicar procedimientos recomendados para ahorrar en costos

de infraestructura

• Aplicar procedimientos recomendados para ahorrar en costos


de licencias

5
ADQUISICIÓN DE
PRODUCTOS Y SERVICIOS
DE AZURE
Los productos y servicios de Azure se organizan por categoría, que

tiene varios recursos que se pueden aprovisionar. El usuario selecciona


los productos y servicios de Azure que se ajustan a sus requisitos y se

factura a la cuenta según el modelo de pago por uso de Azure.

Medidores de uso

Al aprovisionar un recurso de Azure, se crea una o varias instancias de


medidor para ese recurso. Los medidores realizan un seguimiento del
uso de los recursos y se generan un registro de uso, el cual se utiliza

para calcular la factura.

Por ejemplo, una sola máquina virtual aprovisionada en Azure puede

tener los siguientes medidores para realizar el seguimiento de su uso:

 Horas de proceso

 Horas de dirección IP
 Transferencia de datos de entrada

 Transferencia de datos de salida


 Disco administrado Estándar
 Operaciones de disco administrado estándar
 E/S estándar: disco

 E/S estándar: lectura de blobs en bloques

 E/S estándar: escritura de blobs en bloques


 E/S estándar: Eliminación de blob en bloques

Los medidores y los precios varían según el producto y, a menudo,

tienen diferentes niveles de precios según el tamaño o la capacidad del


recurso. Vea la documentación para obtener detalles concretos sobre
el precio de cada área de servicio.

Al final de cada ciclo de facturación mensual, los valores de uso se


7
cobran al método de pago y se restablecen los medidores. Puede
consultar la página de facturación de Azure Portal en cualquier
momento para obtener un rápido resumen del uso actual y ver facturas
de ciclos de facturación anteriores.

La conclusión principal es que los recursos siempre se cobran según el


uso. Por ejemplo, si desasigna una máquina virtual, no se factura por

las horas de proceso, las lecturas o escrituras de E/S ni la dirección IP


privada, ya que la máquina virtual no se está ejecutando ni tiene ningún

recurso de proceso asignado. Pero sí se incurre en costos de

almacenamiento por los discos.

Nota

Desasignar una máquina virtual no es lo mismo que eliminar una


máquina virtual. La desasignación significa que la máquina virtual no
está asignada a una CPU o red de un centro de datos. Pero los discos

persistentes permanecen y el recurso está presente en la suscripción. Es


similar a apagar el equipo físico.

8
FACTORES QUE AFECTAN
AL COSTO
Del mismo modo que los costos de equipamiento locales, hay varios

elementos que afectan a los costos mensuales al usar los servicios de

Azure. Echemos un vistazo a algunos de los factores principales, como


el tipo de recursos, los servicios, la ubicación del usuario y la zona de

facturación.

Tipo de recurso

Los costos son específicos de los recursos, por lo que el uso que realiza
un medidor y el número de medidores asociados a un recurso varía
9
según el tipo de recurso.

Nota

Cada medidor sigue un determinado tipo de uso. Por ejemplo, un


medidor podría realizar un seguimiento del uso de ancho de banda
(tráfico de red entrante o saliente en bits por segundo), el número de

operaciones, el tamaño (capacidad de almacenamiento en bytes) o

elementos similares.

El uso del que realiza el seguimiento un medidor se correlaciona con un

número de unidades facturables. Esas unidades se facturan a la cuenta


por cada período de facturación, y la tarifa por unidad facturable

depende del tipo de recurso que se use.


Servicios

Las tarifas de uso y los períodos de facturación de Azure pueden diferir

entre los clientes Enterprise, Web Direct y Proveedor de soluciones en


la nube (CSP). Algunos tipos de suscripciones también incluyen

provisiones de uso que afectan a los costos.

El equipo de Azure desarrolla y ofrece productos y servicios propios,

mientras que los productos y servicios de otros proveedores están


disponibles en Azure Marketplace . A cada una de estas categorías se
aplica una estructura de facturación diferente.

Ubicación

Azure tiene centros de datos por


todo el mundo. Los costos de uso
10
varían entre ubicaciones que ofrecen

determinados productos, servicios y


recursos de Azure en función de los costos de infraestructura local,
demanda y popularidad.

Por ejemplo, es posible que, para compilar la solución de Azure,

aprovisione recursos en ubicaciones que ofrezcan los precios más


bajos, pero este enfoque exigiría la transferencia de datos entre

ubicaciones si los recursos dependientes y sus usuarios se encuentran


en distintas partes del mundo. Si hay medidores que realizan el
seguimiento del volumen de datos que se mueve entre los recursos

que aprovisiona, los ahorros potenciales que conseguiría al elegir la

ubicación más económica se verían contrarrestados por el costo

adicional de transferir datos entre esos recursos.


Zonas de facturación de Azure

El ancho de banda hace referencia a los datos que entran y salen de los

centros de datos de Azure. La mayoría de las veces, las transferencias


de datos entrantes (datos que van al interior de los centros de datos)

son gratuitas. En cuanto a las transferencias de datos salientes (datos

que salen de los centros de datos de Azure), el precio de la


transferencia de datos se basa en zonas de facturación.

Una zona es una agrupación

geográfica de regiones de
Azure para fines de facturación.
Hay las siguientes zonas, que
incluyen los países indicados (regiones).

11 Zona Áreas

Zona 1 Estados Unidos, Gobierno de EE. UU., Europa,


Canadá, Reino Unido, Francia, Suiza

Zona 2 Asia Oriental, Asia Suroriental Japón, Australia,


India, Corea

Zona 3 Brasil, Sudáfrica, Emiratos Árabes Unidos

Zona 1 de Alemania Alemania

En la mayoría de las zonas, los primeros 5 GB salientes del mes son


gratuitos. Después de eso, se factura un precio fijo por GB.
Nota

Una zona de facturación no es igual que una zona de disponibilidad. En

Azure, el término zona es solo para fines de facturación, mientras que el


término completo zona de disponibilidad hace referencia a la protección

ante errores que proporciona Azure a los centros de datos.

12
EJERCICIO: ESTIMACIÓN
DE LOS COSTOS CON LA
CALCULADORA DE
PRECIOS DE AZURE
Imagine que se le ha pedido compilar un sistema en Azure y una
cotización de lo que podría costar su ejecución durante los próximos
12 meses. Ya sabe que los precios de Azure son completamente
transparentes y que se le factura mensualmente solo por los servicios

que usa. ¿Cómo puede obtener esa cotización sin implementar ni


ejecutar esos servicios o sin calcular manualmente los precios desde las
13
páginas de precios de los servicios de Azure?

Introducción a la calculadora de precios de Azure

Para que las estimaciones sean fáciles de crear para los clientes,

Microsoft desarrolló la calculadora de precios de Azure. La


calculadora de precios de Azure es una herramienta gratuita basada en
la web que le permite ingresar servicios de Azure y modificar las

propiedades y opciones de los servicios. Produce los costos por servicio


y el costo total para la estimación completa.

Las opciones que se pueden configurar en la calculadora de precios


varían entre productos, pero las opciones de configuración básicas

incluyen:
Opción Descripción

Región Indica las regiones desde las que se

puede aprovisionar un producto.


Sudeste Asiático, Centro de Canadá,

Oeste de EE. UU. y Norte de Europa se

encuentran entre las posibles regiones


disponibles para algunos recursos.

Nivel Establece el tipo de nivel que quiere


asignar a un recurso seleccionado, como
Gratis, Básico, etc.

Opciones de facturación Resalta las opciones de facturación

disponibles para diferentes tipos de


14
cliente y las suscripciones de un
producto elegido.

Opciones de soporte Permite elegir entre opciones de precios


técnico de soporte técnico incluido o de pago

para un producto seleccionado.

Programas y ofertas Permite elegir entre las ofertas de


precios disponibles según el tipo de

cliente o suscripción.

Precios de Indica los precios de desarrollo y

desarrollo/pruebas de pruebas disponibles para un producto.


Azure Los precios de desarrollo y pruebas se

aplican solo cuando se ejecutan recursos


en una suscripción de Azure basada en
una oferta de desarrollo y pruebas.

Pruebe la calculadora de precios de Azure

En otra ventana o pestaña del explorador, abra la calculadora de


precios de Azure. En la página de la calculadora de precios, verá varias

pestañas:

1. Products. (Productos) En esta pestaña llevará a cabo la mayor

parte de la actividad. En esta pestaña se muestran todos los


servicios de Azure y es donde agregará o quitará servicios para
formular la cotización.

2. Escenarios de ejemplo Esta pestaña contiene varios ejemplos


de infraestructura implicada en soluciones comunes basadas en
15
la nube. Puede agregar todos los componentes de todo el

escenario para calcular el costo.

3. Estimaciones guardadas. Esta pestaña tiene todas las

estimaciones que guardó anteriormente. Revisaremos este


proceso en un momento.

4. FAQ. (Preguntas más frecuentes) Tal como se indica, esta


pestaña contiene respuestas a algunas preguntas frecuentes.

Comencemos con la pestaña Products (Productos). En el lado


izquierdo podrá ver la lista completa de categorías de servicio. Al hacer

clic en cualquiera de las categorías se mostrarán los servicios de esa

categoría. También hay un cuadro de búsqueda en el que puede buscar


en todos los servicios el que necesita. Si hace clic en el servicio, lo
agregará a la cotización. Puede agregar un solo servicio o puede

agregar todos los que necesite, incluidos múltiplos del mismo servicio
(por ejemplo, varias máquinas virtuales).

Después de agregar los servicios, querrá conocer el precio. Desplácese

hacia la parte inferior de la página para ver los detalles personalizables

del servicio que se aplican a los precios. En las máquinas virtuales, por
ejemplo, puede seleccionar los detalles como la región, el sistema
operativo y el tamaño de instancia, y todos estos factores afectarán el

precio de la máquina virtual. Verá un subtotal correspondiente al


servicio. Y si se desplaza más abajo, verá el total de todos los servicios

que se incluyen en la cotización. Junto con el total, verá botones donde


puede exportar, guardar y compartir la cotización.

Cotización de una solución


16
En el escenario original, imaginemos que este sistema se va a ejecutar
en dos máquinas virtuales de Azure y se va a conectar a una instancia

de Azure SQL Database. También queremos un equilibrador de carga


de capa 7 para garantizar que disponemos de capacidades de
equilibrio de carga mejoradas. En la siguiente ilustración se muestra

una puerta de enlace de aplicaciones conectada a dos máquinas


virtuales que están conectadas a su vez a una sola instancia de Azure
SQL Database.
Podemos usar la calculadora de precios de Azure para saber cuánto

costará la solución y exportar la cotización para compartirla con el


equipo. En la pestaña Escenarios de ejemplo, puede agregar todos los
recursos implicados con una solución común al problema que está

tratando de resolver para calcular todos los costos potenciales.


También puede agregar productos individuales desde la

17 pestaña Productos para crear una cotización de la solución


personalizada.

Sugerencia

Asegúrese de que la calculadora esté limpia, es decir, que no se muestre


nada en la cotización. Si hay algo en la estimación, haga clic en el icono
de la papelera en cada elemento para restablecer la estimación.

En la pestaña Productos de la calculadora de precios de Azure, haga


clic en estos servicios para agregarlos a la estimación:

 Máquinas virtuales en la categoría Proceso


 Azure SQL Database en la categoría Bases de datos
 Application Gateway en la categoría Redes
En la pestaña Estimaciones guardadas se pueden configurar los

detalles de cada uno de los servicios para obtener un cálculo concreto


de los costos. Use la región Oeste de EE. UU. para todos los recursos.

 Virtual Machines. (Máquinas virtuales) Este proyecto es una

aplicación [Link], por lo que hay que usar una máquina

virtual con SO Windows. Esta aplicación no requiere una gran


cantidad de potencia de procesamiento, así que seleccione el
tamaño de instancia D2 v3. Se necesitan dos máquinas virtuales

que se ejecuten continuamente (730 horas al mes). Para estas


máquinas virtuales se va a usar almacenamiento SSD estándar

y un solo disco por máquina virtual de tamaño E10, para un


total de dos discos.
 SQL Database. Para la base de datos, se va a aprovisionar

18 un solo tipo de base de datos mediante el modelo de


núcleos virtuales. Lo que queremos es una base de datos Gen

5 de uso general con ocho núcleos virtuales. Necesitaremos 32


GB de almacenamiento.
 Application Gateway. Para Application Gateway, usaremos el
nivel Firewall de aplicaciones web, por lo que tenemos algo de

protección para el entorno. Y vamos a ir con solo dos instancias


y tamaño mediano, debido a que la carga no será alta.

Esperamos procesar 1 TB de datos al mes. No esperamos

procesar datos de Europa (Zona 1).

Si busca en la estimación, debería ver un coste resumido

correspondiente a cada servicio agregado y un total de la estimación


completa. Puede intentar jugar con algunas de las opciones,
especialmente la ubicación en la que coloca estos recursos para ver

cómo aumenta y disminuye la estimación.

Sugerencia

Si dispone de recursos indiferentes a la ubicación, puede ahorrar mucho


dinero si los coloca en regiones menos costosas. La comprobación de la

calculadora de precios puede ayudarle a determinar el lugar más

rentable para colocar estos servicios.

Compartir y guardar la estimación

Ahora tenemos una estimación para la solución. Podemos guardarla


para poder volver a ella más adelante y ajustarla si fuera preciso.

También podemos exportarla a Excel para un análisis más detallado o


compartirla mediante una dirección URL.
19
Para exportar la cotización, haga clic en Export en la parte inferior de
esta. La exportación descargará la cotización en formato de Excel (.xlsx)

e incluirá todos los servicios que agregó.

Es posible compartir la hoja de cálculo de Excel o hacer clic en el


botón Share de la calculadora. De este modo, tendrá una dirección URL
que podrá usar para compartir la cotización. Cualquier usuario con este

vínculo podrá tener acceso a ella, lo que facilita compartirla con el

equipo.

Si inició sesión con su cuenta de Azure, puede guardar la cotización y

volver a ella más adelante. Haga clic en el botón Guardar. Si inició

sesión, debería ver una notificación de que se guardó la cotización. Si


no inició sesión, verá un mensaje que le indicará que inicie sesión para
guardar la cotización. Después de guardarla, desplácese a la parte

superior de la página y seleccione la pestaña Cotizaciones guardadas.


Ahí verá la cotización. Puede seleccionarla para usarla o eliminarla si ya
no la necesita.

Pudimos llegar a una estimación de costos para un conjunto de

servicios de Azure sin gastar dinero. No tuvimos que crear nada y


tenemos una cotización que puede compartir completamente y en la
que podemos realizar un mayor análisis y modificaciones posteriores a
futuro. Puede usar esto no solo para crear cotizaciones para sistemas

en los que sabe cuáles son los servicios específicos que planea usar,
sino también para comparar cómo los distintos servicios pueden
afectar los costos totales. Un ejemplo es Microsoft SQL Server en una

máquina virtual frente a Azure SQL Database.

20
EJERCICIO: PREDICCIÓN Y
OPTIMIZACIÓN CON
COST MANAGEMENT Y
AZURE ADVISOR
Aprendimos cómo se calculan los costos antes de implementar
servicios en Azure, pero, ¿qué sucede si ya tiene los recursos
implementados? ¿Cómo puede tener visibilidad sobre los costos que
ya está acumulando? Si hubiéramos implementado la solución anterior

en Azure y ahora quisiéramos asegurarnos de que el tamaño de las


máquinas virtuales fuese el correcto y predecir de cuánto sería nuestra
21
factura, ¿cómo podríamos hacerlo? Echemos un vistazo a algunas

herramientas en Azure que puede usar para ayudar a solucionar este


problema.

¿Qué es Azure Advisor?

Azure Advisor es un servicio gratuito integrado en Azure que ofrece


recomendaciones sobre alta disponibilidad, seguridad, rendimiento y

costo. Advisor analiza los servicios implementados y busca maneras de

mejorar su entorno a través de esas cuatro áreas. Nos centraremos en


las recomendaciones de costo, pero le sugerimos que se dé unos

momentos para revisar también las otras recomendaciones.

Advisor hace recomendaciones de costo en las áreas siguientes:


1. Reducción de los costos mediante la eliminación de

circuitos de Azure ExpressRoute no


aprovisionados. Identifica los circuitos ExpressRoute que han
permanecido en el estado de proveedor de No
aprovisionado durante más de un mes y recomienda eliminar el

circuito si no piensa realizar el aprovisionamiento del circuito

con el proveedor de conectividad.

2. Compra de instancias reservadas para ahorrar dinero a

través de pago por uso. Esto revisará el uso de la máquina


virtual durante los últimos 30 días y determinará si podría

ahorrar dinero en el futuro mediante la adquisición de


instancias reservadas. Advisor le mostrará las regiones y los
tamaños en los que, potencialmente, puede ahorrar más, así

22 como el ahorro estimado que podría lograr al comprar


instancias reservadas.

3. Ajuste del tamaño o apagado de máquinas virtuales


infrautilizadas. Esto supervisa la utilización de las máquinas
virtuales durante 14 días e identifica las que están
infrautilizadas. Se considera que una máquina virtual está

infrautilizada si su uso promedio de CPU es del 5 % o menos y


el de la red es de 7 MB o menos durante cuatro o más días. El

umbral de uso de CPU promedio se puede ajustar hasta un 20


por ciento. Mediante la identificación de estas máquinas

virtuales, puede decidir cambiarles el tamaño a un tipo de

instancia más pequeño, lo que reduce los costos.


Nota

Si no tiene una suscripción de Azure, cree una cuenta gratuita antes


de empezar.

Veamos dónde puede encontrar Azure Advisor en el portal.

1. Inicie sesión en Azure Portal con la cuenta de Microsoft.

2. Expanda el panel de navegación izquierdo en el menú superior

izquierdo y haga clic en Todos los servicios.

3. Haga clic en la categoría Administración y gobernanza y


busque Advisor. También puede escribir Advisor en el cuadro

del filtro de servicios para filtrar solo ese nombre.

4. Haga clic en Advisor y se le dirigirá al panel de


23
recomendaciones de Advisor donde podrá ver todas las
recomendaciones para la suscripción. Verá un cuadro para cada
categoría de recomendaciones.

Nota

Es posible que no tenga ninguna recomendación relacionada con el costo


en Advisor. Esto se podría deber a que las valoraciones todavía no se

completaron o simplemente a que no hay ninguna recomendación de


Advisor.
24
Al hacer clic en el cuadro Costo, irá a las recomendaciones detalladas

donde puede ver las recomendaciones que tiene Advisor.


Si hace clic en cualquier recomendación, irá a los detalles de esa

recomendación específica. A continuación, podrá realizar una acción


específica, como ajustar el tamaño de las máquinas virtuales para
reducir el gasto.

25
Estas recomendaciones hacen referencia a áreas en las que podría estar
gastando dinero de manera ineficaz. Son un excelente lugar para
comenzar y seguir revisitando cuando busque lugares para reducir los
costos. En nuestro ejemplo, tenemos una oportunidad para ahorrar
aproximadamente USD 700 al mes si tomamos estas recomendaciones.
Estos ahorros se suman, así que asegúrese de revisar esto
periódicamente para obtener recomendaciones a través de las cuatro
áreas.

Azure Cost Management

Azure Cost Management es otra herramienta gratuita integrada de

Azure que se puede usar para obtener mayor información sobre dónde
va su inversión en la nube. Puede ver desgloses históricos de los

servicios en los que está gastando su dinero y cómo se está realizando


un seguimiento de los presupuestos que ha establecido. Puede

establecer presupuestos, programar informes y analizar las áreas de


costos.

26 Como puede ver, Azure ofrece herramientas sin ningún costo que

puede usar para realizar el seguimiento y predecir el gasto en la nube,


así como para identificar dónde es posible que el entorno sea ineficaz
desde una perspectiva del costo. Se recomienda adoptar como práctica
habitual la revisión de los informes y las recomendaciones que ponen
a su disposición estas herramientas para poder desbloquear ahorros
en la superficie de nube.
EJERCICIO: ESTIMACIÓN
DEL COSTO TOTAL DE
PROPIEDAD CON LA
CALCULADORA DE TCO
DE AZURE
La calculadora de precios y el asesor de administración de costos
pueden ayudar a predecir y analizar los gastos de los servicios nuevos

o existentes.

27 Si está comenzando a migrar a la nube, una herramienta útil para


predecir el ahorro de costos es la calculadora de costo total de
propiedad (TCO). Para usar la calculadora de TCO, es preciso realizar
cuatro pasos.

Paso 1: Abrir la calculadora de TCO

Comience por abrir el sitio web Calculadora de costo total de


propiedad .

Paso 2: Definir las cargas de trabajo

Comience por especificar detalles sobre la infraestructura local en la

calculadora de TCO conforme a cuatro grupos:


Grupo Descripción

Servidores Especifique detalles de la infraestructura de

servidores local actual.

Bases de datos Especifique detalles de la infraestructura de

bases de datos local en la sección Origen. En


la sección Destino, seleccione el servicio de

Azure correspondiente que le gustaría usar.

Almacenamiento Especifique los detalles de la infraestructura


de almacenamiento local.

Redes Especifique la cantidad de ancho de banda


de red que se usa actualmente en el entorno
28 local.

Paso 3: Ajustar supuestos

Ajuste los valores de supuestos que realiza la calculadora de TCO, que


pueden variar entre clientes. Para mejorar la precisión de la calculadora

de TCO, debe ajustar los valores para que coincidan con los costos de
la infraestructura local actual. Los supuestos que se pueden
personalizar incluyen:

 Costos de almacenamiento
 Costos de personal de TI
 Costos de hardware
 Costos de software

 Costos de electricidad
 Costos de virtualización
 Costos de centro de datos

 Costos de redes
 Costos de bases de datos

Paso 4: Ver el informe

La calculadora de TCO genera un informe detallado basado en los

detalles especificados y los ajustes realizados. El informe permite

comparar los costos de la infraestructura local con los costos del uso
de servicios y productos de Azure para hospedar la infraestructura en

la nube.

29
AHORRO EN COSTOS DE
INFRAESTRUCTURA
Hemos aprendido a crear estimaciones de costos para los entornos

que se quieren crear, se han descrito algunas herramientas para


obtener detalles sobre en qué estamos invirtiendo dinero y se han

proyectado futuros gastos. El próximo desafío consiste en ver cómo

reducir esos costos de infraestructura.

Uso de crédito de Azure

30 Los suscriptores de Visual Studio pueden activar una ventaja de crédito


mensual que permite experimentar, desarrollar y probar nuevas

soluciones en Azure. Use créditos de Azure para probar nuevos


servicios, como App Service, máquinas virtuales de Windows 10, bases
de datos de Azure SQL Server, Containers, Cognitive Services,
Functions, Data Lake, etc., sin incurrir en ningún gasto monetario.

Al activar esta ventaja, dispone de una suscripción de Azure

independiente en su cuenta con un saldo de crédito mensual que se

renueva todos los meses mientras sigue siendo suscriptor activo de


Visual Studio.

El importe del crédito varía según el nivel del programa y debería ver
la documentación para obtener más detalles sobre cuánto crédito se

recibe por un nivel de suscripción determinado. Por ejemplo:


 50 $ al mes para VS Professional

 150 $ al mes para Enterprise

Importante

El crédito mensual de Azure para suscriptores de Visual Studio es


para desarrollo y pruebas únicamente y no conlleva ningún SLA con

respaldo financiero. Azure suspende cualquier instancia (servicio de

máquina virtual o en la nube) que se ejecuta sin interrupción durante


más de 120 horas o si se determina que la instancia se está usando para

producción. Esta ventaja está disponible para suscriptores de Visual


Studio siempre que sea posible; no hay ninguna garantía de
disponibilidad de la capacidad.

Usar límites de gasto

31
De forma predeterminada, las suscripciones de Azure que tienen

créditos mensuales asociados (lo que incluye las cuentas de prueba),

tienen un límite de gasto para garantizar que no se cobre una vez que
se ha agotado el crédito. Esta característica es útil para los equipos de
desarrollo que exploran nuevas arquitecturas de solución, ya que
garantiza que no tengan una factura inesperadamente grande al final
del mes.

Nota

Los límites de gasto de Azure no son lo mismo que las cuotas y los límites

de suscripción, servicio o grupo de recursos.

Azure proporciona la característica de límites de gasto para ayudar a

evitar que se agote el crédito de la cuenta en cada período de


facturación. Si el uso de Azure da lugar a cargos que agotan todo el

crédito mensual incluido, los servicios implementados se deshabilitan


y se desactivan durante el resto de ese período de facturación. Una vez
que se inicia un nuevo período de facturación, si hay créditos
disponibles, los recursos se vuelven a activar e implementar.

Cuando se alcanza el límite de gasto de la suscripción, se recibe una


notificación por correo electrónico. Además, Azure Portal incluye
notificaciones sobre el crédito gastado. Puede ajustar el límite de gasto
como quiera o incluso desactivarlo.

Importante

La característica de límite de gasto es específica de las suscripciones que


incluyen una cobertura de crédito mensual de Azure. No está disponible

32 en las suscripciones de solo pago.

Uso de instancias reservadas

Si tiene cargas de trabajo de máquina virtual que son estáticas y


predecibles, especialmente las que se ejecutan de forma permanente
todo el año, el uso de instancias reservadas es una manera fantástica

de ahorrar potencialmente hasta un 70-80 % del costo de pago por


uso, en función del tamaño de máquina virtual. En la siguiente

ilustración se muestra que el uso de instancias reservadas de Azure


ahorra hasta un 72 %, y el de instancias reservadas y la Ventaja híbrida

de Azure hasta un 80 % en costos.


Se compromete a las instancias reservadas en términos de uno o tres
años. El pago se puede realizar en su totalidad durante todo el período

de compromiso, o bien se puede facturar mensualmente. Después de


realizar la reserva, Microsoft la hace coincidir con las instancias en

ejecución y reduce las horas transcurridas desde la realización de la


33
reserva. Las reservas se pueden adquirir a través de Azure Portal.

Además, como las instancias reservadas son un descuento de proceso,

están disponibles tanto para máquinas virtuales Windows como Linux.

Elegir regiones y ubicaciones de bajo costo

El costo de los recursos, los servicios y los productos de Azure puede


variar entre regiones y ubicaciones, así que, si es posible, debe usarlos

en las ubicaciones y regiones donde cuesten menos.

Nota

Algunos recursos se miden y se facturan según la cantidad de ancho de


banda de red saliente que usan. Debe aprovisionar los recursos
conectados que se midan por ancho de banda en la misma región para

reducir el tráfico de salida entre ellos.


Investigación de las ofertas de ahorro de costos disponibles

Manténgase al día de las últimas ofertas de clientes y suscripciones de

Azure, y cambie a las que le proporcionen el mayor ahorro de costos.

Puede consultar la página de actualizaciones de Azure para obtener

información sobre las últimas actualizaciones de productos, servicios y

características de Azure, así como hojas de ruta y anuncios de


productos.

Ajustar el tamaño de las máquinas virtuales infrautilizadas

Recuerde de nuestro anterior debate que Azure Cost Management y


Azure Advisor pueden recomendar que se apaguen las máquinas

virtuales o se ajuste su tamaño. Ajustar el tamaño de una máquina


virtual es el proceso de cambiar su tamaño para que sea el correcto.
34
Imaginemos que tiene un servidor que se ejecuta como un controlador
de dominio con el tamaño Standard_D4sv3, pero su máquina virtual

presenta un 90 % de inactividad la mayor parte del tiempo. Al cambiar

el tamaño de esta máquina virtual a Standard_D2sv3, reduce su costo


de proceso un 50 %. Los costos son lineales y dobles por cada tamaño

mayor en la misma serie. En este caso, puede incluso beneficiarse del

cambio de serie de las instancias para ir a una serie de máquinas

virtuales menos costosa. La siguiente ilustración muestra un ahorro del


50 % logrado al reducir un tamaño en la misma serie.
Las máquinas virtuales de tamaño grande son un gasto innecesario

habitual en Azure y que tiene fácil solución. Puede cambiar el tamaño


de una máquina virtual a través de Azure Portal, Azure PowerShell o la
CLI de Azure.

Sugerencia

Al cambiarse el tamaño de una máquina virtual, esta se detiene y, una


35
vez cambia su tamaño, se reinicia. Esto puede tardar unos minutos en
función de la importancia del cambio de tamaño. Planee una

interrupción o cambie su tráfico a otra instancia mientras realiza esta

tarea.

Desasignar máquinas virtuales en las horas de inactividad

Si tiene cargas de trabajo de máquina virtual que solo se usan durante

determinados periodos, pero las ejecuta cada hora de cada día, está

perdiendo dinero. Estas máquinas virtuales son magníficas candidatas

para apagarse cuando no se usan y para que sus copias de seguridad


sean programadas, lo que ahorra costos de proceso mientras la

máquina virtual está desasignada.


Este enfoque es una excelente estrategia para los entornos de

desarrollo. Muchas veces el desarrollo puede producirse solo durante


las horas laborables, lo que ofrece la flexibilidad necesaria para
desasignar estos sistemas en las horas de inactividad y evita que se
acumulen los costos de proceso. Ahora Azure tiene una solución de
automatización totalmente disponible para que pueda aprovecharla en

su entorno.

También puede usar la característica de apagado automático en una

máquina virtual para programar apagados automatizados.

36

Eliminación de las máquinas virtuales sin usar

Tal vez suene obvio este consejo, pero si no usa un servicio, debe
apagarlo. No es raro encontrar sistemas de prueba de concepto o que

no son de producción que se han dejado para un proyecto que ya no

es necesario. Revise su entorno con regularidad y trabaje para

identificar estos sistemas. Apagar estos sistemas puede tener un


beneficio multifacético, permitiéndole ahorrar en costos de
infraestructura y suponiéndole, además, posibles ahorros en licencias y

operaciones.

Migrar a los servicios PaaS o SaaS

Por último, al mover cargas de trabajo a la nube, una evolución natural


es empezar con servicios de infraestructura como servicio (IaaS) y, a

continuación, moverlos a servicios de plataforma como servicio (PaaS)

según corresponda, en un proceso iterativo.

Los servicios PaaS suelen suponer ahorros sustanciales tanto en costos

de recursos como en costos operativos. El desafío consiste en que,

según el tipo de servicio, se requieren niveles de esfuerzo variables para

migrar a estos servicios desde una perspectiva de tiempo y de recursos.


Es posible que pueda migrar fácilmente una base de datos de SQL

37 Server a Azure SQL Database, pero puede suponer un esfuerzo


considerablemente mayor migrar la aplicación de varios niveles a un

contenedor o una arquitectura sin servidor. Es recomendable evaluar


de forma continua la arquitectura de las aplicaciones para determinar
si con los servicios PaaS se consigue más eficacia.

Con Azure es más fácil probar estos servicios sin demasiado riesgo. Le

ofrece la posibilidad de probar nuevos patrones de arquitectura de


forma relativamente fácil. Dicho esto, suele ser un proceso más largo y
puede que no sea útil de forma inmediata si busca resultados rápidos
desde una perspectiva de ahorro de costos. El Centro de arquitectura

de Azure es un lugar ideal para obtener ideas con las que transformar

la aplicación, así como procedimientos recomendados en una amplia


gama de arquitecturas y servicios de Azure.

Siguiente unidad: Ahorro en costos de licencia


AHORRO EN COSTOS DE
LICENCIA
Las licencias son otro aspecto que puede afectar considerablemente

al gasto en la nube. Veamos algunas maneras de reducir los costos de

licencia.

Linux frente a Windows

Muchos de los servicios de Azure que se implementan ofrecen la


opción de ejecutarse en Windows o Linux. En algunos casos, el costo

del producto puede variar según el sistema operativo que se elija. Si se

tiene elección y la aplicación no depende del sistema operativo


38
subyacente, es útil comparar los precios para determinar si se puede

ahorrar dinero.

Ventaja híbrida de Azure para Windows Server

Muchos clientes han invertido en licencias de Windows Server y les


gustaría reasignar esta inversión en Azure. La Ventaja híbrida de Azure
ofrece a los clientes el derecho a usar estas licencias para máquinas

virtuales en Azure.

Para poder optar a esta ventaja, las licencias de Windows deben estar

cubiertas por Software Assurance. También se aplicarán las directrices


siguientes:
 Cada licencia de dos procesadores o cada conjunto de licencia

de 16 núcleos tiene derecho a dos instancias de hasta 8 núcleos


o a una instancia de hasta 16 núcleos.
 Las licencias de Standard Edition solo se pueden usar una vez
en el entorno local o en Azure. Esto significa que no se puede

usar la misma licencia para una máquina virtual de Azure y un

equipo local.
 Las ventajas de Datacenter Edition permiten el uso simultáneo

de forma local y en Azure, de modo que la licencia cubre dos

equipos con Windows.

Nota

La mayoría de los clientes normalmente cuentan con licencia por núcleo,


por lo que se usa ese modelo para el cálculo. Si tiene preguntas sobre
39
qué licencias tiene, póngase en contacto con su revendedor de licencias

o el equipo de cuentas de Microsoft.

La aplicación del beneficio es sencilla. Se puede activar y desactivar en


cualquier momento con las máquinas virtuales existentes, o bien
aplicarse durante la implementación de máquinas virtuales nuevas. La

Ventaja híbrida (especialmente cuando se combina con instancias


reservadas) puede proporcionar ahorros de licencia importantes.

Ventaja híbrida de Azure para SQL Server

La Ventaja híbrida de Azure para SQL Server ayuda a maximizar el valor

de las inversiones actuales en licencias y a acelerar el proceso de

migración a la nube. Se trata de una ventaja basada en Azure que

permite usar las licencias de SQL Server con Software Assurance para
pagar una tarifa reducida.
Puede usar esta ventaja aunque el recurso de Azure esté activo, pero la

tarifa reducida solo se aplica desde el momento en que se selecciona


en el portal. No se emite ningún crédito con carácter retroactivo.

Opciones basadas en núcleos virtuales de Azure SQL Database

Para Azure SQL Database, la Ventaja híbrida de Azure funciona del

siguiente modo:

 Si tiene licencias Standard Edition por núcleo con Software


Assurance activo, puede obtener un núcleo virtual en el nivel de

servicio de uso general por cada núcleo de licencia que tenga

en el entorno local.
 Si tiene licencias Enterprise Edition por núcleo con Software
Assurance activo, puede obtener un núcleo virtual en el nivel de

40 servicio Crítico para la empresa por cada núcleo de licencia que


tenga en el entorno local. Solo los clientes con licencias
Enterprise Edition pueden optar a la Ventaja híbrida de Azure

para SQL Server para el nivel de servicio Crítico para la empresa.


 Si tiene licencias Enterprise Edition altamente virtualizadas por
núcleo con Software Assurance activo, puede obtener cuatro

núcleos virtuales en el nivel de servicio de uso general por cada


núcleo de licencia que tenga en el entorno local. Dicha ventaja
relativa a los núcleos virtuales es una ventaja de virtualización
única disponible solo en Azure SQL Database.

La ilustración siguiente muestra las opciones basadas en núcleos

virtuales disponibles en cada nivel de servicio con la Ventaja híbrida de


Azure para licencias de SQL Server.
Para SQL Server en Azure Virtual Machines, la Ventaja híbrida de Azure

funciona del siguiente modo:

 Si tiene licencias Enterprise Edition por núcleo con Software


Assurance activo, puede obtener un núcleo de SQL Server
Enterprise Edition en Azure Virtual Machines por cada núcleo
41 de licencia que tenga en el entorno local.
 Si tiene licencias Standard Edition por núcleo con Software

Assurance activo, puede obtener un núcleo de SQL Server

Standard Edition en Azure Virtual Machines por cada núcleo de


licencia que tenga en el entorno local.

Tal disposición de las licencias puede suponer un impacto significativo


en el gasto de Azure con cargas de trabajo de SQL Server.

Uso de ofertas de suscripción de Desarrollo/pruebas

Las ofertas Desarrollo/pruebas - Enterprise y Desarrollo/pruebas -


Pago por uso son una de las ventajas que se pueden aprovechar para

ahorrar costos en los entornos que no sean de producción. Esta ventaja

proporciona varios descuentos, especialmente para las cargas de

trabajo de Windows, lo que elimina los gastos de licencia y solo se


cobra la tarifa de Linux para las máquinas virtuales. Esto también

incluye SQL Server y cualquier otro software de Microsoft cubierto por


una suscripción de Visual Studio (anteriormente conocida como
MSDN).

Hay algunos requisitos para esta ventaja: uno es que solo es para las

cargas de trabajo que no sean de producción, y otro que los usuarios


de estos entornos (excepto los evaluadores) deben estar cubiertos por
una suscripción de Visual Studio. En resumen, para las cargas de
trabajo que no sean de producción, esta ventaja permite ahorrar en las

cargas de trabajo de Windows, SQL Server y otras máquinas virtuales


de Microsoft.

Para obtener detalles completos de cada oferta, consulte los vínculos


anteriores. Si es cliente con un Contrato Enterprise, podría aprovechar
42
la oferta Desarrollo/pruebas - Enterprise y, si es cliente sin un Contrato
Enterprise que usa cuentas de pago por uso, podría aprovechar la

oferta Desarrollo/pruebas - Pago por uso.

Traiga su propia licencia de SQL Server

Si es un cliente con un contrato Enterprise y ya ha invertido en licencias

de SQL Server y se han liberado como parte del traslado de los recursos
a Azure, puede aprovisionar imágenes del tipo Traiga su propia
licencia (BYOL) desde Azure Marketplace, lo que permite aprovechar
las ventajas de estas licencias sin usar y reducir el costo de la máquina

virtual de Azure. Siempre ha sido posible usar dichas licencias mediante

el aprovisionamiento de una máquina virtual de Windows y la

instalación manual de SQL Server, pero este proceso simplifica la


creación gracias al aprovechamiento de imágenes con certificación de
Microsoft. Busque BYOL en Marketplace para encontrar estas

imágenes.

43

Importante

Se necesita una suscripción al contrato Enterprise para usar estas


imágenes BYOL certificadas.

Uso de SQL Server Developer Edition

Muchos usuarios desconocen que SQL Server Developer Edition es un


producto gratuito para uso de no producción. Developer Edition tiene

las mismas características que Enterprise Edition, pero, para las cargas
de trabajo que no sean de producción, se puede ahorrar

considerablemente en los costos de licencia.


Busque imágenes de SQL Server Developer Edition en Azure

Marketplace y úselas con fines de desarrollo o pruebas para eliminar el


costo adicional de SQL Server en estos casos.

Sugerencia

Para obtener toda la información sobre las licencias, vea

la documentación de la guía de precios.

Uso de tamaños de instancia restringidos para las cargas de trabajo


de base de datos

Muchos clientes tienen elevados requisitos de memoria,


almacenamiento o ancho de banda de E/S, pero bajos recuentos de

núcleos de CPU. Debido a esta solicitud popular, Microsoft ha puesto


los tamaños de máquina virtual más populares (DS, ES, GS y MS) a
44
disposición como tamaños nuevos que restringen el número de vCPU

a la mitad o un cuarto del tamaño de la máquina virtual original,


manteniendo la misma memoria, almacenamiento y ancho de banda

de E/S.

Tamaño de vCP Memo Disc Rendimie Coste Costo


máquina U ria os nto de por año total
virtual máx. E/S máx. de la por
licencia año
de SQL (proce
Server so +
Enterpr licenci
ise as)
Standard_DS 16 112 32 51 200

14v2 GB IOPS o

768 MB/s

Standard_DS 4 112 32 51 200 75 % 57 %

14-4v2 GB IOPS o menos menos

768 MB/s

Standard_GS 32 448 64 80 000


5 IOPS o 2
GB/s

Standard_GS 8 448 64 80 000 75 % 42 %


5-8 IOPS o 2 menos inferio

GB/s r
45

Dado que los productos de base de datos como SQL Server y Oracle
cuentan con licencia por CPU, los clientes pueden reducir los costos de
licencia en un 75 % y seguir manteniendo el alto rendimiento que su

base de datos requiere.


RESUMEN
Se ha descrito la calculadora de precios de Azure y cómo se puede
usar para estimar los costos en Azure y comparar los precios entre las

distintas ofertas de servicio. Hemos examinado las opciones de ahorro,

cómo exportar las estimaciones de precios y las herramientas de Azure

disponibles para mantener el control del gasto en la nube.

• Azure Advisor proporciona recomendaciones en muchas áreas,


incluido el costo.

• Azure Cost Management permite generar informes y


proporciona información de facturación, para que pueda

visibilizar dónde gasta su dinero.

46 Después analizamos procedimientos recomendados para ayudarle a

ahorrar dinero en infraestructura y licencias.


RESUMEN Y RECURSOS
Aplicar las capacidades de IA a su negocio es esencial para acelerar su

transformación digital. La minería de conocimiento y el aprendizaje


automático lo ayudan a comprender mejor y utilizar sus datos. Los

servicios cognitivos y los bots pueden mejorar las aplicaciones con


modelos existentes o personalizados. A medida que Microsoft explora

posibilidades adicionales con la tecnología de inteligencia artificial,


también invertimos en abordar desafíos éticos y crear inteligencia

artificial para siempre.

1 Ahora que ha revisado este módulo, debería poder:

• Comprenda la visión de Microsoft para Azure AI.

• Identifique formas en que puede usar la IA de Azure.

• Defina qué es Azure AI, cómo funciona y cómo está construido.

Para llevar clave

Estas son las tres conclusiones principales de este módulo:

1. Azure Cognitive Search aplica las capacidades de IA a la minería

de conocimiento para descubrir información de grandes

cantidades de datos.
2. Las herramientas de Azure Machine Learning permiten a los

desarrolladores desarrollar e implementar rápidamente


modelos de inteligencia artificial que utilizan datos existentes,
sin ser reprogramados explícitamente, para pronosticar
comportamientos, resultados y tendencias futuros.

3. Microsoft usa Azure Cognitive Services (aplicaciones AI) y Azure


Bot Services (agentes AI) para infundir capacidades AI en
aplicaciones y servicios web y móviles.

Recursos

Usa estos recursos para descubrir más.

Sugerencia

2 Para abrir un hipervínculo, haga clic con el botón derecho y elija "Abrir
en una pestaña o ventana nueva". De esa manera, puede consultar el
recurso y volver fácilmente al módulo.

• Página del producto Azure AI

• Estudios de caso de Azure

• Blog de Microsoft Azure

• Canal 9 AI Show

• AI para bien

• Ver aplicación de IA

• El libro computado del futuro


• FATE: Justicia, responsabilidad, transparencia y ética en la IA

Historias de clientes de AI:

• Centro médico del hospital de niños de Cincinnati

• Elastacloud

• Royal Dutch Shell

• Busque más historias de clientes en [Link]

3
La seguridad es una responsabilidad compartida

El primer cambio que hará es pasar de centros de datos locales a

infraestructura como servicio (IaaS). Mediante IaaS está aprovechando


el servicio de nivel inferior y pidiéndole a Azure que cree máquinas

virtuales y redes virtuales. En este nivel, todavía es responsabilidad suya

aplicar revisiones y proteger los sistemas operativos y el software, así


como configurar la red para que sea segura. En Contoso Shipping, está
sacándole el máximo partido a IaaS cuando empieza a usar las
máquinas virtuales de Azure en lugar de los servidores físicos locales.

Además de las ventajas operativas, puede conseguir la ventaja de


seguridad que supone externalizar lo relacionado con la protección de
los elementos físicos de la red.

1 El cambio a la plataforma como servicio (PaaS) externaliza varios

problemas de seguridad. En este nivel, Azure se hace cargo del sistema


operativo y de la mayoría del software principal como, por ejemplo, los
sistemas de administración de bases de datos. Todo se actualiza con
las revisiones de seguridad más recientes y se puede integrar con Azure
Active Directory para los controles de acceso. PaaS también incluye

muchas ventajas operativas. En lugar de crear infraestructuras y


subredes completas para los entornos de forma manual, puede
"seleccionar y hacer clic" en Azure Portal o ejecutar scripts

automatizados para activar o desactivar sistemas protegidos y

complejos, y para escalarlos según sea necesario. Contoso Shipping usa

Azure Event Hubs para la ingesta de datos de telemetría de drones y


camionetas —, así como una aplicación web con un back-end de Azure
Cosmos DB con sus aplicaciones móviles —; estos son ejemplos de
PaaS.
Con el software como servicio (SaaS), puede externalizar prácticamente

todo. SaaS es un software que se ejecuta con una infraestructura de


Internet. El proveedor controla el código, pero está configurado para
que lo use el cliente. Al igual que muchas empresas, Contoso Shipping
usa Office 365, que es un buen ejemplo de SaaS.

Para todos los tipos de implementación de nube, es propietario de los

datos y las identidades. Es responsable de ayudar a proteger los datos


y las identidades, los recursos locales y los componentes en la nube
que controla (lo que varía según el tipo de servicio).

Independientemente del tipo de implementación, siempre conserva la

responsabilidad de los siguientes elementos:


 Datos

 Puntos de conexión
 Cuentas
 Administración de acceso

3
ENTRENAMIENTO DE
REDES NEURONALES CON
VELOCIDADES DE
APRENDIZAJE Y
VECTORES "ONE-HOT"
Cuando los datos se desplazan a través de los bordes, se multiplican
por un valor denominado peso. Cada borde tiene un peso diferente

que comienza como un valor aleatorio. El valor de los pesos puede ser

1 positivo o negativo. Los pesos se optimizan mediante descenso de


gradiente para proporcionar resultados precisos.

Recordatorio de las funciones de costos

 El costo es la métrica de error y se quiere obtener un valor lo

más bajo posible.


 El costo se determina con la función de costo.
 Cada algoritmo tiene diferentes funciones de costo.

Recordatorio del descenso de gradiente

 El descenso de gradiente optimiza los modelos de IA para

minimizar su costo mediante cálculo.


 No es necesario que entienda el cálculo.
Velocidad de aprendizaje

Mediante el cálculo, el descenso de gradiente cambia repetidamente


las variables que usan los algoritmos para reducir la tasa de errores.

Cuánto cambian las variables cada vez se denomina velocidad de


aprendizaje.

2
Las velocidades de aprendizaje son especialmente importantes para los

modelos complejos: si una velocidad de aprendizaje es demasiado


reducida, el entrenamiento tardará mucho tiempo. Si es demasiado

grande, es improbable que el entrenamiento llegue a ser preciso.

En la práctica, es recomendable buscar una velocidad de aprendizaje

adecuada, en lugar de dedicar tiempo a intentar encontrar una


velocidad óptima. Una velocidad de aprendizaje adecuada es lo

suficientemente grande para que el modelo se entrene de forma eficaz,


pero no tan reducida que impida encontrar un valor mínimo. Es
absolutamente aceptable buscar una velocidad de aprendizaje
adecuada mediante prueba y error.

Uso de una categoría como característica: vectores "one-hot"

A menudo puede tener una categoría en el conjunto de datos que

quiera usar como

una característica,
como un país de
origen de productos.

3 Para usar una


categoría como una
característica,

represente la
categoría como
un vector one-

hot (de acceso frecuente).


Un vector "one-hot" es un vector (lista) en el que cada posición de la

lista representa una categoría distinta. El vector se rellena con varios 0


y un 1. En el ejemplo anterior, se representan cuatro animales, donde
un 1 en la primera posición representa un gato y un 1 en la cuarta
posición representa un conejo. Ahora la categoría la puede usar un

modelo de aprendizaje automático.

A continuación verá un ejercicio en el que codificará una red neuronal


simple.

4
CLASIFICACIÓN BINARIA
CON REGRESIÓN
LOGÍSTICA
En el aprendizaje automático, cuando se predice la categoría de un

ejemplo, se etiqueta el ejemplo con una categoría. Las etiquetas no


tienen que ser binarias: una etiqueta puede ser una raza de un perro o
la especie de un árbol. Los filtros de correo no deseado son otro

ejemplo de clasificación (correo no deseado o no).

Cómo predicen etiquetas los modelos de clasificación


1
Para crear un modelo de clasificación, es necesario usar ejemplos de
entrenamiento ya etiquetados. El modelo aprende de estos ejemplos

etiquetados y puede predecir etiquetas de nuevos ejemplos sin


etiquetar.

Por tanto, si se quieren predecir razas de perros, se podría crear un


conjunto de datos con las características de los perros (altura, peso,

color del pelo, forma de las orejas, etc.) y etiquetar los ejemplos. Si se

etiquetan suficientes ejemplos de un conjunto de datos de perros lo


suficientemente grande, se puede crear un modelo de Machine
Learning capaz de predecir la raza de cualquier perro nuevo que se

encuentre.
Entrenamiento

En los ejercicios, los modelos creados se "entrenan" automáticamente


para mejorar su precisión.

El diagrama anterior muestra un algoritmo que intenta encontrar la


línea que mejor separa los puntos azules de los verdes. Como puede

ver arriba, el algoritmo cambia sus variables (el punto inicial y el


gradiente de la línea) hasta que encuentra la línea que lo hace con más
precisión. Este proceso de ajuste de estas variables se

denomina entrenamiento. Una vez que el algoritmo ha completado el

entrenamiento y se puede usar para predecir nuevos ejemplos, se


denomina modelo.

El entrenamiento puede funcionar de muchas maneras diferentes. Un


método habitual es empezar con una estimación aleatoria (en este

caso, una línea aleatoria) y ver si los ajustes (por ejemplo, un gradiente
más o menos pronunciado) ofrecen un mejor resultado. Este proceso
se repite hasta que los ajustes no mejoran el modelo, hasta que las

mejoras de un cambio son pequeñas o hasta que se alcanza algún tipo


de límite de intentos.

Regresión logística

La regresión logística es un algoritmo de clasificación binaria, lo que

significa que predice dos categorías (por ejemplo, sí o no, ganar o

perder, etc.). No se deje engañar por que "regresión" aparezca en el


nombre, esto significa simplemente que predice la probabilidad de una

categoría.

En el gráfico siguiente se compara la satisfacción del cliente con


distintos porcentajes de cacao mediante la regresión logística.

3
La regresión logística puede trazar una curva que ayude a predecir la

probabilidad de que un cliente esté satisfecho según el porcentaje de


cacao de la tableta de chocolate. En segundo plano, la regresión
logística usa una eficaz ecuación que puede trazar curvas complejas
para separar de forma precisa los ejemplos en categorías.

La regresión logística es una excelente introducción sencilla a los


algoritmos de clasificación. Igual que las variaciones de la regresión
lineal de las que se ha hablado, las variaciones de la regresión logística
pueden modelar algunos datos bastante complicados e incluso

predecir varias categorías.

A continuación se propone un ejercicio de programación: se va a usar


la regresión logística para predecir qué equipo va a ganar un partido
de fútbol.
4
CLASIFICACIÓN BINARIA
CON REGRESIÓN
LOGÍSTICA
En el aprendizaje automático, cuando se predice la categoría de un

ejemplo, se etiqueta el ejemplo con una categoría. Las etiquetas no


tienen que ser binarias: una etiqueta puede ser una raza de un perro o
la especie de un árbol. Los filtros de correo no deseado son otro

ejemplo de clasificación (correo no deseado o no).

Cómo predicen etiquetas los modelos de clasificación


1
Para crear un modelo de clasificación, es necesario usar ejemplos de
entrenamiento ya etiquetados. El modelo aprende de estos ejemplos

etiquetados y puede predecir etiquetas de nuevos ejemplos sin


etiquetar.

Por tanto, si se quieren predecir razas de perros, se podría crear un


conjunto de datos con las características de los perros (altura, peso,

color del pelo, forma de las orejas, etc.) y etiquetar los ejemplos. Si se

etiquetan suficientes ejemplos de un conjunto de datos de perros lo


suficientemente grande, se puede crear un modelo de Machine
Learning capaz de predecir la raza de cualquier perro nuevo que se

encuentre.
Entrenamiento

En los ejercicios, los modelos creados se "entrenan" automáticamente


para mejorar su precisión.

El diagrama anterior muestra un algoritmo que intenta encontrar la


línea que mejor separa los puntos azules de los verdes. Como puede

ver arriba, el algoritmo cambia sus variables (el punto inicial y el


gradiente de la línea) hasta que encuentra la línea que lo hace con más
precisión. Este proceso de ajuste de estas variables se

denomina entrenamiento. Una vez que el algoritmo ha completado el

entrenamiento y se puede usar para predecir nuevos ejemplos, se


denomina modelo.

El entrenamiento puede funcionar de muchas maneras diferentes. Un


método habitual es empezar con una estimación aleatoria (en este

caso, una línea aleatoria) y ver si los ajustes (por ejemplo, un gradiente
más o menos pronunciado) ofrecen un mejor resultado. Este proceso
se repite hasta que los ajustes no mejoran el modelo, hasta que las

mejoras de un cambio son pequeñas o hasta que se alcanza algún tipo


de límite de intentos.

Regresión logística

La regresión logística es un algoritmo de clasificación binaria, lo que

significa que predice dos categorías (por ejemplo, sí o no, ganar o

perder, etc.). No se deje engañar por que "regresión" aparezca en el


nombre, esto significa simplemente que predice la probabilidad de una

categoría.

En el gráfico siguiente se compara la satisfacción del cliente con


distintos porcentajes de cacao mediante la regresión logística.

3
La regresión logística puede trazar una curva que ayude a predecir la

probabilidad de que un cliente esté satisfecho según el porcentaje de


cacao de la tableta de chocolate. En segundo plano, la regresión
logística usa una eficaz ecuación que puede trazar curvas complejas
para separar de forma precisa los ejemplos en categorías.

La regresión logística es una excelente introducción sencilla a los


algoritmos de clasificación. Igual que las variaciones de la regresión
lineal de las que se ha hablado, las variaciones de la regresión logística
pueden modelar algunos datos bastante complicados e incluso

predecir varias categorías.

A continuación se propone un ejercicio de programación: se va a usar


la regresión logística para predecir qué equipo va a ganar un partido
de fútbol.
4
INTRODUCCIÓN A LAS
CNN
Las redes neuronales convolucionales (CNN) son una clase de redes

neuronales profundas que se usan con más frecuencia en aplicaciones

de visión informática.

Convolucional hace referencia al procesamiento previo de los datos


que la red realiza de forma automática. Tradicionalmente esta tarea la

han programado los científicos de datos. La red neuronal puede

aprender a realizar el procesamiento previo y aplicar filtros para tareas


como la detección de bordes.
1

En la imagen anterior, las capas convolucionales preparan los datos de


la imagen antes de que la analice una red neuronal grande.

El procesamiento previo permite transformar los datos a un estado en

el que la red neuronal pueda analizarlos con más facilidad y


proporcionar resultados muy precisos.
You Only Look Once: YOLO

YOLO es un popular algoritmo de CNN escrito en Python que se usa

para la detección de objetos en tiempo real. YOLO usa una sola red
neuronal en una imagen, para predecir rectángulos delimitadores y

probabilidades de clase.

Al tener toda la canalización de detección en una sola red neuronal,


YOLO cuenta con importantes ventajas de rendimiento. YOLO puede

realizar un análisis preciso de más de 9000 categorías de objetos

diferentes en tiempo real.

YOLO puede analizar todos los fotogramas de la mayoría de las


cámaras. Puede lograr el equilibrio si aumenta la velocidad del análisis
y disminuye ligeramente la precisión. Pero el rendimiento de YOLO es

bastante correcto si el análisis es de entre 30 y 60 imágenes por

segundo.
Softmax

Softmax es una función de activación que se usa en redes neuronales.

Las CNN suele usar softmax en las capas finales de un modelo de


clasificación porque genera probabilidades para varias clases. Esto ha

demostrado ser correcto para las clasificaciones multiclase en las que

se usan CNN y otras redes neuronales profundas.

Como puede ver más arriba, Softmax genera varias probabilidades con

un máximo de 1. La probabilidad de que los datos que ha analizado


softmax representen un león se proporciona como 0,98, mientras que

el siguiente resultado más próximo es un lobo (0,008), por lo que se


predecirá que la imagen original es un león.

Conjuntos de validación

El uso de un conjunto de datos de aprendizaje de gran tamaño puede

llevar mucho tiempo y recursos, solo para averiguar al final del


entrenamiento que se ha producido un sobreajuste y que tiene poca
precisión en el conjunto de prueba. Los conjuntos de validación se usan
junto con el conjunto de entrenamiento durante el entrenamiento, en
lugar de los conjuntos de pruebas que se usan después del

entrenamiento.

El conjunto de validación proporciona un resultado no sesgado que el


algoritmo puede usar para detectar el sobreajuste mientras se produce.

Si el error de los conjuntos de validación comienza a aumentar en una

cantidad concreta, es posible que se deba al sobreajuste, y el


entrenamiento se puede detener. Este proceso se denomina detención
anticipada.

4
El tamaño del conjunto de validación varía en función de la aplicación.

Un buen punto de partida consiste en asignar el 60 % de los datos a


un conjunto de entrenamiento, un 20 % a un conjunto de validación y
un 20 % a un conjunto de prueba.

A continuación, creará la primera CNN en Azure Notebooks, con


conjuntos de validación y softmax.
INTRODUCCIÓN A LAS
RNN
Algunos problemas pueden requerir que se analicen los datos

recientes para facilitar el análisis actual, por ejemplo el de la escritura a

mano conectada.

Una red neuronal recurrente (RNN) es una clase de red neuronal que
destaca cuando los datos se pueden tratar como una secuencia, como

texto, música,
reconocimiento de voz,
escritura a mano conectada
1
o datos durante un período

de tiempo.

Una RNN puede analizar o


predecir una palabra en función de las palabras anteriores de una

oración, lo que permite una conexión entre la información anterior y la

actual. Las RNN son redes neuronales con bucles y permiten almacenar
temporalmente los datos para ayudar con el análisis posterior.
Las RNN contienen celdas, donde se almacena el estado adicional. Este

estado adicional es útil porque la RNN puede recordar información


importante que se usa para las predicciones, como el pasado. Si al
principio de una oración el usuario ha escrito "Nos "íbamos" a
marchar", una RNN puede recordar que el verbo "íbamos" está en

pasado dentro de una unidad, por lo que podría representar salida

"Íbamos a volar a Canadá" en lugar de "Íbamos a volado a Canadá".

Las RNN tienen problemas cuando hay una gran separación entre los

datos anteriores relevantes y los datos actuales. Para solucionar este


problema, los profesionales de la inteligencia artificial suelen usar dos

tipos similares de RNN: redes de memoria a corto y largo


plazo (LSTM) y redes de unidades recurrentes cerradas (GRU).

LSTM
2
Las LSTM son un tipo especial de RNN que mejora drásticamente la
capacidad del modelo para conectar los datos anteriores a los actuales

cuando hay una separación larga. Por ejemplo, una RNN estándar
podría tener problemas para predecir con precisión la frase "En cuanto
a la composición musical y un buen estilo general, mi artista favorito

tendría que ser Mozart", porque puede haber una gran separación
entre la información sobre el contexto de la palabra artista: es posible
que el contexto haya sido antes sobre un pintor.

Las LSTM son bastante complejas en segundo plano, de modo que por

ahora no se abordarán los detalles más profundos. Mientras que una

RNN normal contiene una sola capa por celda, las LSTM contienen
cuatro capas que interactúan entre ellas.
GRU

Con las GRU, lo que necesita saber por ahora es que tienen algunas

ventajas con respecto a las redes LSTM para los problemas de


secuencia porque son más sencillas. El tiempo de entrenamiento
disminuye con la simplificación, lo que permite mejores resultados en

algunas circunstancias porque el entrenamiento es más eficaz en


general.

Resumen

En esta sección, se ha descrito lo siguiente:

 Red neuronal recurrente (RNN): una clase de red neuronal


que destaca en el análisis y la predicción de los datos de una

secuencia.
 LSTM: una variación de las RNN muy adecuada para conectar

datos anteriores a datos actuales en los que hay una separación


larga.
 GRU: una variación de LSTM más simple, lo que significa una
disminución en el tiempo de entrenamiento, lo que en

ocasiones puede ser bastante beneficioso.

A continuación se creará un modelo de RNN en Azure Notebooks.

4
EJERCICIO: MÁQUINAS DE
VECTORES DE SOPORTE
AVANZADAS
Vamos a ver lo fácil que es crear un modelo de SVM y cambiar su

kernel. Vamos a usar modelos de SVM para clasificar dos tipos de


proteínas en función de sus distintas características.

En los ejercicios de este módulo se usa Azure Notebooks. Es un recurso

de uso gratuito.

Si los vínculos siguientes no funcionan, tiene que configurar una cuenta


1
gratuita de Azure Notebooks y clonar el proyecto para este módulo.
Vea el repositorio de Python en GitHub o el repositorio de R en
GitHub para obtener instrucciones para comenzar.

1. Los usuarios de Python deben ir a la biblioteca.

2. Seleccione el ejercicio 07. Advanced SVMs - [Link].

3. Luego seleccione Run on Free Compute (Ejecutar en un

proceso gratuito).

4. Los usuarios de R deben ir a la biblioteca.

5. Seleccione el ejercicio 07. Advanced SVMs - [Link].

6. Luego seleccione Run on Free Compute (Ejecutar en un

proceso gratuito).
RESUMEN
Enhorabuena. Ha terminado la introducción al módulo de

clasificación. Dedique un momento a leer este resumen de lo tratado:

• Clasificación: asignación de etiquetas a datos nuevos. Por

ejemplo, predecir si un futuro partido de fútbol se va a ganar o


perder.

• Regresión logística: algoritmo de clasificación común que


genera una línea de mejor ajuste para datos de eventos

anteriores.

2
o Se puede usar para dar la probabilidad de que algo sea
cierto o de que se produzca un evento.

• La IA suele aprender de forma iterativa: a partir de una mala


aproximación y mediante el cambio de variables (como la

inclinación de la línea) hasta que un modelo se hace preciso.

o El mundo real es muy variable y, por tanto, no se puede

esperar que los modelos sean 100 % precisos.

• Máquinas de vectores de soporte: algoritmo de clasificación

que encuentra un hiperplano que separa puntos de datos de

clases diferentes entre sí.

o En 2D esto es como intentar dibujar una línea, mientras

que en 3D es como intentar colocar un plano 2D.


o Hay distintos métodos para ajustar hiperplanos.

Hemos aprendido que durante el entrenamiento, la IA sabe cómo de

bien lo está haciendo al comparar sus predicciones con la realidad


mediante una función de costo. Minimizar este costo significa

aumentar la precisión. Para ello, la IA suele usar el "descenso de

gradiente": un procedimiento en el que se realizan pequeños cambios


en los parámetros de un modelo cada vez que se ejecuta. Cada vez los
cambios realizados dan lugar a un rendimiento ligeramente mejor, y el
proceso se repite hasta que no se esperan más mejoras.

También hemos aprendido todo sobre las pruebas de los modelos.

Recuerde que un conjunto de datos grande normalmente se divide en


datos para entrenar el modelo y datos para probarlo una vez
entrenado. Hemos aprendido que es posible que los modelos tengan
3
un "ajuste deficiente" (que tengan un rendimiento deficiente en todos
los conjuntos de datos) o que tengan un "sobreajuste" (que tengan un
buen rendimiento en los datos de entrenamiento, pero uno malo en
los datos de prueba). Recuerde, a veces puede ser mejor aceptar un
pequeño error que ser muy estricto y sobreajustar los datos de

entrenamiento.

Ahora que ha revisado este módulo, debe ser capaz de:

• Definir una clasificación.

• Crear modelos de máquinas de vectores de soporte y regresión

logística.

• Describir en qué consisten el entrenamiento, el error irreducible

y el error de Bayes.
En la siguiente sección se habla de una de las áreas más interesantes

de la tecnología en este momento: las redes neuronales.

4
1

Explore lo que Power BI


puede hacer por usted
BIENVENIDA
Como consumidor, trabajará en el servicio Power BI para revisar e
interactuar con el contenido que se ha compartido con usted. En este

módulo se proporciona la información básica que necesita para


trabajar de manera eficiente en el servicio Power BI.

Estos son los objetivos de aprendizaje de este módulo:

 Comprender la terminología y los conceptos básicos del


servicio Power BI.

2  Buscar contenido en los paneles, informes y aplicaciones.


 Ver y exportar datos de informes y paneles.
 Ver los filtros que se usan en un informe.

 Explicar la relación entre los paneles y los informes,


visualizaciones e iconos.
 Mostrar los menús de acción para los iconos y los detalles de

las visualizaciones de informes.

 Contraer y expandir el panel de navegación y los paneles de

filtros y marcadores.

 Suscribirse a un panel y a un informe.


 Establecer una alerta de datos.
 Colaborar mediante los comentarios de los paneles.

Requisitos previos

 Acceder al servicio Power BI


¿Qué puedo hacer con el servicio Power BI como consumidor?

12 min

Ver el contenido en el servicio Power BI 10 min

Explorar con paneles, informes y aplicaciones en Power BI 15


min

Colaborar y compartir en Power BI 15 min

Buscar y ver paneles e informes 7 min

Comprobación de conocimientos 5 min

Resumen 5 min

3
¿Qué puedo hacer con el
servicio Power BI como
consumidor?
Todos vivimos en una cultura de datos donde las decisiones
empresariales se basan en hechos, no en opiniones. Necesitamos datos
que nos ayuden a tomar estas decisiones.

4
1

Obtención de datos con


Power BI Desktop
BIENVENIDA
¿Cómo puede buscar, recopilar y limpiar datos de distintos orígenes?
Power BI es una herramienta que permite extraer conclusiones de los

datos. Aprenderá trucos para facilitar la recopilación de datos.

En este módulo, aprenderá a:

• Explorar las herramientas y características centradas en los


datos de Power BI.

• Explorar maneras de encontrar datos.


2
Requisitos previos

Acceso a Power BI Desktop

Información general de Power BI Desktop 5 min

Exploración de Power BI Desktop 10 min

Conexión a orígenes de datos 10 min

Obtención de datos de Excel 5 min

Transformación de los datos para incluirlos en un informe 10


min

Combinación de datos de varios orígenes 10 min


Limpieza de los datos para incluirlos en un informe 10 min

Comprobación de conocimientos 10 min

Resumen 5 min

3
Información general de
Power BI Desktop
Power BI Desktop es una aplicación gratuita para PC que le permite
recopilar, transformar y visualizar sus datos. En este módulo, aprenderá

a buscar y recopilar datos de distintos orígenes y a limpiar o


transformar esos datos. También aprenderá trucos para facilitar la

recopilación de datos.

Power BI Desktop y el servicio Power BI trabajan en conjunto. Puede

crear informes y paneles en Power BI Desktop y después publicarlos en


el servicio Power BI para que otros usuarios los utilicen.
4
Estas son las tareas que completará en este módulo:
Nota

Para seguir los ejemplos de los vídeos y en esta página, descargue la base

de datos de Access de ejemplo aquí e impórtelo en Power BI Desktop


(Obtener datos > Base de datos > Base de datos de Access).

Puede conectar Power BI Desktop a muchos tipos de orígenes de


datos, como bases de datos locales, libros de Microsoft Excel y servicios

en la nube. Actualmente, hay aproximadamente 60 conectores


específicos para Power BI para servicios en la nube como GitHub y
Marketo. También se puede conectar a orígenes genéricos a través de
XML, CSV, texto y ODBC. Power BI incluso extraerá datos tabulares
directamente desde la dirección URL de un sitio web.
Establecer conexión con los datos

1
Cuando inicia Power BI Desktop, puede elegir Obtener datos en la
cinta de opciones de la pestaña Inicio.

En Power BI Desktop, hay disponibles varios tipos de orígenes de


datos. Seleccione un origen para establecer una conexión. En función
de la selección, se le pedirá que busque el origen en su equipo o en la
red. Es posible que se le pida iniciar sesión en un servicio para

autenticar su solicitud.

Elegir datos para importar

Una vez que se conecte, la primera ventana que verá será la del
Navegador. La ventana Navegador muestra las tablas o entidades
del origen de datos y, si selecciona una tabla o una entidad, tendrá

una vista previa del contenido. Luego puede importar de inmediato

las tablas o entidades seleccionadas mediante la selección de Cargar


o puede seleccionar Transformar datos para transformar los datos y

limpiarlos antes de la importación.


Una vez que seleccione las tablas que quiere incluir en

Power BI Desktop, seleccione el botón Cargar. Es posible que quiera

realizar cambios en esas tablas antes de poder cargarlas. Por ejemplo,


si solo quiere un subconjunto de clientes o un país o una región
específicos, seleccione el botón Editar y filtre los datos antes de
cargarlos.

Independientemente del tipo de datos que necesite, es probable que


encuentre una manera de importarlos en Power BI Desktop.
Obtención de datos de
Excel
Es probable que haya usado Microsoft Excel para crear o ver informes

o para crear gráficos circulares u otros objetos visuales. Obtener datos


de Excel y llevarlos a Power BI es un proceso sencillo.

En esta unidad, llevará libros de Excel a Power BI.

4
Nota

Para seguir los ejemplos de los vídeos y en esta página, descargue la


base de datos de Access de ejemplo aquí e impórtelo en Power BI
Desktop (Obtener datos > Base de datos > Base de datos de Access). La
carpeta FactData1 está aquí.

Adición de más orígenes


de datos
Para agregar más orígenes en un informe existente, en la cinta de
opciones Inicio, seleccione Editar consultas y, luego, seleccione
Nuevo origen. Puede usar muchos orígenes de datos
potenciales en Power BI Desktop, incluidas carpetas. Al
conectarse a una carpeta, puede importar datos de varios
1
archivos Excel o CSV a la vez.

El Editor de Power Query le permite aplicar filtros a los datos. Por

ejemplo, al seleccionar la flecha desplegable junto a una


columna, se abre una lista de comprobación de los filtros de
texto. Borrar un filtro permite quitar los valores del modelo antes
de cargar los datos en Power BI.
Importante

2 El filtrado en el Editor de Power Query cambia los datos que se van


a cargar en Power BI. Más adelante, cuando aplique los filtros en
la vista Datos o en la vista Informe, esos filtros solo se aplicarán a
lo que se ve en los objetos visuales, pero no cambiarán el conjunto
de datos subyacente.

Combinar y anexar consultas

También es posible combinar y anexar consultas. En otras


palabras, Power BI extrae los datos que selecciona de varias
tablas o archivos a una tabla única. Use la herramienta Anexar
consultas para agregar los datos de una tabla nueva a una
consulta existente. Power BI Desktop intenta coincidir con las
columnas de sus consultas, lo que luego puede ajustar según sea
necesario en el Editor de Power Query.

3
Escribir consultas personalizadas

Puede usar la herramienta Agregar columna personalizada para

escribir expresiones de consulta personalizadas nuevas con el


poderoso lenguaje M.
Para más información, consulte Tutorial: Dar forma a los datos y
combinarlos en Power BI Desktop .

Limpieza de los datos para


incluirlos en un informe
Si bien Power BI puede importar sus datos desde prácticamente
cualquier origen, sus herramientas de visualización y modelado
funcionan mejor con los datos en columna. En algunas ocasiones, los

datos no tendrán el formato de columna simple, que es lo que suele


pasar con las hojas de cálculo de Excel.

En esta unidad, limpiará los datos en columnas con el Editor de


Power Query.

4
1

Modelado de datos en
Power BI
BIENVENIDA
Conecte Power BI a varios orígenes de datos para crear informes.
Defina la relación entre los orígenes de datos.

En este módulo, aprenderá a:

 Crear relaciones entre orígenes de datos

 Crear un campo con columnas calculadas

 Optimizar datos ocultando campos y ordenando datos de


visualización

2  Crear una medida para realizar cálculos de los datos


 Usar una tabla calculada para crear una relación entre dos
tablas

 Dar formato a los datos basados en tiempo para poder explorar


en profundidad para obtener más detalles

Requisitos previos

Acceso a Power BI Desktop

Introducción al modelado de datos 5 min

Administración de las relaciones de datos 8 min

Creación de columnas calculadas 7 min

Optimización de los modelos de datos 8 min


Creación de medidas calculadas 15 min

Creación de tablas calculadas 4 min

Exploración de datos basados en tiempo 5 min

Comprobación de conocimientos 10 min

Resumen 5 min

3
Introducción al modelado
de datos
A menudo, se conectará a varios orígenes de datos para crear informes.
Todos esos datos deben funcionar de manera conjunta para crear un

informe coherente. Por modelado se entiende preparar los datos


conectados para usarlos.

Tareas de este módulo:

 Crear relaciones entre orígenes de datos

 Crear un campo con columnas calculadas

4  Optimizar datos ocultando campos y ordenando datos de


visualización

 Crear una medida para realizar cálculos de los datos


 Usar una tabla calculada para crear una relación entre dos
tablas
 Dar formato a los datos basados en tiempo para poder explorar
en profundidad para obtener más detalles
Nota

Para seguir los ejemplos de los vídeos y en esta página, descargue


la base de datos de Access de ejemplo aquí e impórtelo en
Power BI Desktop (Obtener datos > Excel).

Ocultación de campos
Para ocultar un campo en el panel Campos de Power BI Desktop,

haga clic con el botón derecho en la columna y seleccione


Ocultar. Los campos ocultos no se eliminan. Si ha usado un
campo oculto en algún objeto visual existente, los datos seguirán
estando allí; lo único que sucede es que el campo oculto no
aparece en el panel Campos.
1
Si ve tablas en la vista Modelo, los campos ocultos aparecen
atenuados. Los datos de esas tablas seguirán estando disponibles
y siendo parte del modelo. Para volver a mostrar cualquier campo
que haya ocultado, haga clic con el botón derecho en el campo
y seleccione Mostrar.

Ordenación de los datos de visualización por otro

campo

La herramienta Ordenar por columna, disponible en la pestaña

Modelado, resulta útil para garantizar que los datos van a


mostrarse en el orden previsto.

Como ejemplo común, los datos que incluyen el nombre del mes
se ordenan alfabéticamente de forma predeterminada; así, por
ejemplo, agosto aparecería antes de febrero.
En este caso, el problema se puede solucionar si selecciona el
campo en la lista Campos, selecciona Ordenar por columna en
la pestaña Modelado y, luego, elige un campo por el que
ordenar. La opción de ordenación por categoría NroMes
ordenará los meses del modo previsto.

Establecer el tipo de datos de un campo es otra forma de


optimizar la información para poder tratarla correctamente. Para
cambiar un tipo de datos desde el lienzo del informe, seleccione
la columna en el panel Campos y, después, use el menú
desplegable Formato para seleccionar una de las opciones de
formato. Los objetos visuales que haya creado y que muestren
ese campo se actualizarán automáticamente.

Para obtener más información, vea Ordenar por columnas en


Power BI Desktop .

Creación de medidas
calculadas
En Power BI, las medidas son cálculos definidos en los datos que
se realizan en el momento de la consulta. Las medidas se calculan
al interactuar con los informes, y no se almacenan en la base de
datos.

4
Estas son las tareas de esta unidad:
Nota

Para seguir los ejemplos de los vídeos y en esta página, descargue


la base de datos de Access de ejemplo aquí e impórtelo en
Power BI Desktop (Obtener datos > Excel).

Creación de una medida


Para crear una medida, en la vista Informe, seleccione Nueva

medida en la pestaña Modelado.

En la barra de fórmulas, puede escribir la expresión DAX que

define la medida. A medida que escriba el cálculo, Power BI irá


sugiriendo funciones DAX y campos de datos relevantes.
También verá una información sobre herramientas que explica
algunos de los parámetros de sintaxis y de función.
Si el cálculo es prolongado, puede insertar saltos de línea extra
en el editor de expresiones; para ello, presione Alt+Entrar.

Aplicación de una medida

Después de crear una medida, aparecerá en una de las tablas del

panel Campos, que se encuentra en el lado derecho de la


pantalla. Power BI inserta la nueva medida en la tabla que esté
seleccionada actualmente. Si bien no importa dónde se
encuentre exactamente la medida en los datos, puede moverla
fácilmente si la selecciona y usa el menú desplegable Tabla
principal.

Puede usar una medida como cualquier otra columna de a tabla:

solo tiene que arrastrarla y colocarla en el lienzo del informe o en


3
los campos de visualización. Las medidas también se integran sin
problemas con las segmentaciones de datos para segmentar
datos sobre la marcha, lo que significa que puede definir una
medida una vez y usarla en muchas visualizaciones diferentes.

Para obtener más información, vea Tutorial: Creación de medidas


propias en Power BI Desktop .

Creación de tablas
calculadas
Las tablas calculadas son una función de DAX. La mayoría de las
veces, los datos se pueden importar al modelo desde un origen
de datos externo. Sin embargo, las tablas calculadas
proporcionan los datos y cálculos intermedios que quiere que se
almacenen como parte del modelo en lugar de como parte de
una consulta. Puede usar tablas calculadas para combinar dos
tablas, por ejemplo.

Estas son las tareas de esta unidad:

4
1

Uso de objetos visuales en


Power BI
BIENVENIDA
Cree y personalice objetos visuales para mostrar datos de forma
atractiva e interesante.

En este módulo, aprenderá a:

 Explorar objetos visuales de Power BI

 Crear objetos visuales

Requisitos previos

2 Acceso a Power BI Desktop

Introducción a los objetos visuales en Power BI 3 min

Creación y personalización de visualizaciones sencillas 9 min

Creación de segmentaciones de datos 9 min

Asignación de visualizaciones 5 min

Matrices y tablas 8 min

Creación de gráficos de dispersión, cascada y embudo 9 min

Modificación de colores en gráficos y objetos visuales 6 min

Diseño y formato de páginas 12 min


Comprobación de conocimientos 10 min

Resumen 5 min

3
Introducción a los objetos
visuales en Power BI
Los objetos visuales permiten presentar los datos de una manera
atractiva e interesante y ayudan a mostrar los componentes

importantes. Power BI tiene un gran número de objetos visuales


atractivos y muchos más que se publican con frecuencia.

Estas son las tareas que completará en este módulo:

 Explorar objetos visuales de Power BI

 Crear objetos visuales

4
Existen dos maneras de crear una visualización en Power BI Desktop:

• Arrastrar nombres de campos desde el panel Campos y


colocarlos en el lienzo del informe. La visualización se muestra
de forma predeterminada como una tabla de datos.

• En el panel Visualizaciones, seleccione el tipo de visualización


que quiere crear. Con este método, el objeto visual
1 predeterminado es un marcador de posición en blanco similar
al tipo de objeto visual que ha seleccionado.

Una vez creado el gráfico o el mapa, puede empezar a arrastrar


campos de datos a la parte inferior del panel Visualizaciones para
crear y organizar el objeto visual. Los campos disponibles cambiarán
en función del tipo de visualización que haya seleccionado. A medida
que vaya arrastrando y colocando campos de datos, la visualización
se actualizará automáticamente para reflejar los cambios.
2

Para cambiar el tamaño del objeto visual, selecciónelo y arrastre los


controladores correspondientes hacia dentro o hacia fuera. También
puede mover la visualización a cualquier parte del lienzo; para ello,
selecciónela y arrástrela donde quiera. Si quiere convertir un tipo de
objeto visual en otro, seleccione el objeto visual que quiera cambiar y,
después, seleccione otro objeto visual en el panel Visualizaciones.
Power BI intenta convertir los campos seleccionados en el nuevo tipo
de objeto visual de la forma más precisa posible.

Al mantener el mouse sobre diversas partes de los objetos visuales,


aparecerá una información sobre herramientas con detalles sobre ese
segmento, como las etiquetas y el valor total.
Seleccione el icono de pincel en el panel Visualizaciones para realizar
cambios cosméticos en el objeto visual. Algunos ejemplos de cambios
cosméticos son la alineación del fondo, el texto del título y los colores
de los datos.

Las opciones disponibles para realizar cambios cosméticos en el


objeto visual variarán en función del tipo de objeto visual
seleccionado.

Nota

En general, los objetos visuales se usan para comparar dos o más valores
distintos, pero hay veces en que, al crear informes, puede que quiera
llevar un seguimiento de una sola métrica a lo largo del tiempo. Para
obtener más información, vea Gráficos de medidor radial en Power BI
.

Creación de gráficos
combinados
Los gráficos combinados son una forma eficaz de ver varias medidas
que tienen distintas escalas en una misma visualización.

4
Importante

Al trabajar con países o regiones, use la abreviatura de tres letras


para garantizar que la geocodificación funciona correctamente.
No use abreviaturas de dos letras, ya que es posible que algunos
países o regiones no se reconozcan correctamente.

Si solo tiene abreviaturas de dos letras, vaya a esta entrada de

blog externa para aprender a asociar abreviaturas de país o


1
región de dos letras con abreviaturas de país o región de tres
letras.

Creación de mapas de
burbujas
Para crear un mapa de burbujas, seleccione la opción Mapa en

el panel Visualizaciones. En las opciones de Visualizaciones,


agregue un valor al cubo Ubicación para usar un objeto visual de
mapa.
Power BI acepta muchos tipos de valores de ubicación. Así,
reconoce nombres de ciudades, códigos de aeropuertos o datos
específicos de latitud y longitud. Agregue un campo al cubo
Tamaño para cambiar el tamaño de la burbuja de cada ubicación
2 del mapa.
Creación de mapas de
formas
Para crear un mapa de formas, seleccione la opción Mapa

coroplético en el panel Visualizaciones. Al igual que en los


mapas de burbujas, deberá agregar un valor al cubo Ubicación
para usar este objeto visual. Agregue un campo al cubo Tamaño
para cambiar la intensidad del color de relleno.

Un icono de advertencia en la esquina superior izquierda del

objeto visual indica que el mapa necesita más datos de ubicación


para trazar los valores de forma precisa. Se trata de un problema
común cuando los datos del campo Ubicación son ambiguos,
como cuando se usa un nombre de área como Washington, que
puede hacer referencia a un estado o a un distrito.

Una manera de resolver el problema de los datos de ubicación es


cambiar el nombre de la columna para que sea más específico,
como Estado. Otra forma consiste en restablecer manualmente la
categoría de datos, seleccionando para ello Categoría de datos
en la pestaña Modelado. En la lista Categoría de datos, puede
asignar una categoría a los datos, como "Estado" o "Ciudad".

Matrices y tablas
Power BI Desktop se puede usar para crear objetos visuales
gráficos y tabulares.

4
1

Exploración de datos en
Power BI
BIENVENIDA
Convierta sus datos de inteligencia empresarial en conclusiones de

datos mediante la creación y la configuración de paneles de Power BI.

En este módulo, aprenderá a:

 Cargar informes
 Crear paneles

 Formular preguntas sobre los datos

Requisitos previos

2 Acceso a Power BI Desktop

Introducción al servicio Power BI 6 min

Conclusiones rápidas en Power BI 7 min

Creación y configuración de un panel 5 min

Formulación de preguntas sobre los datos con lenguaje natural


5 min

Creación de sugerencias de Preguntas y respuestas


personalizadas 4 min

Uso compartido de paneles con su organización 5 min

Visualización de objetos visuales e iconos en pantalla completa

3 min
Edición de los detalles del icono y adición de widgets 5 min

Obtención de más espacio en el panel 3 min

Comprobación de conocimientos 5 min

Resumen 5 min

3
Introducción al servicio
Power BI
En la unidad se explora el servicio Power BI y se muestra cómo
convertir los datos de inteligencia empresarial en conclusiones de
datos.

Estas son las tareas que completará en este módulo:

 Cargar informes

 Crear paneles

 Formular preguntas sobre los datos

4
Anclar un objeto visual a un panel es muy parecido a anclar una
imagen a un tablero de corcho en la pared: el objeto visual se fija
en un punto concreto para que los demás puedan verlo. Para
anclar un objeto visual, abra su informe en el servicio Power BI.
Mantenga el puntero sobre el objeto visual que quiere anclar y
seleccione el icono de chincheta.

Puede seleccionar un panel de destino para el objeto visual en el


menú desplegable o crear un panel nuevo. Es posible anclar
visualizaciones de varios informes y páginas en un solo panel, lo
1 que le permite combinar distintos orígenes y conjuntos de datos
en una única página de información.

En los paneles se puede anclar cualquier tipo de visualización,


como grafos, mapas, imágenes y formas. Una vez que el objeto
visual se ha anclado a un panel, se denomina icono.
Los paneles aparecen en la sección Paneles en el lado izquierdo
del servicio Power BI. Para ver un panel, selecciónelo en la lista.

2 El diseño de los objetos visuales puede cambiarse como se


quiera. Para cambiar el tamaño de un icono, arrastre los
controladores hacia dentro o hacia fuera. Para mover un icono,
simplemente selecciónelo y arrástrelo hasta otra ubicación del
panel. Mantenga el puntero sobre un icono y seleccione el icono
de lápiz para abrir el formulario Detalles del icono. En este
formulario podrá cambiar la información de los campos Título o
Subtítulo.
Seleccione un icono del panel para ver el informe a partir del cual
se ha originado. También puede cambiar ese vínculo en el campo
Establecer vínculo personalizado del formulario Detalles del
icono.
3
Los iconos de un panel se pueden anclar en otro. Esto es útil, por
ejemplo, si tiene una colección de paneles y quiere crear un panel
de resumen. El proceso es el mismo: mantenga el puntero sobre
el icono y seleccione el icono de chincheta. Es muy fácil crear y
modificar los paneles. El panel de una página puede
personalizarse para mostrar de manera exacta la información
deseada.

Para obtener más información, consulte Introducción a los


paneles para los diseñadores de Power BI .
Formulación de preguntas
sobre los datos con
lenguaje natural
A veces, la manera más rápida de obtener respuestas acerca de los

datos es formular preguntas en la característica Preguntas y


respuestas de Power BI.

4
En el servicio Power BI, seleccione Exportar en el lado superior
izquierdo del servicio y, después, seleccione Imprimir esta
página para abrir el cuadro de diálogo Imprimir.

Exportación datos desde


un objeto visual
También se pueden exportar datos desde cualquier objeto visual
en el servicio Power BI. Seleccione los puntos suspensivos de un
objeto visual y, después, seleccione Exportar datos. Puede
1 guardar en un archivo de Microsoft Excel o en un archivo .csv.

Puede imprimir o exportar también directamente desde un


informe. Cuando ve un informe en el servicio Power BI, seleccione
Exportar > Imprimir para abrir el cuadro de diálogo Imprimir.
Actualización y
publicación de nuevo de
los datos manualmente
Para actualizar los informes y conjuntos de datos que ya se han
2 publicado desde Power BI Desktop en el servicio Power BI,
seleccione Publicar en la pestaña Inicio.
_______Cuando haya terminado de redactar el informe, seleccione
el botón Publicar en la pestaña Inicio.

Power BI empaqueta el informe y los datos (incluidas las


visualizaciones, las consultas y las medidas personalizadas) y los
carga en el servicio Power BI.
Nota
3
Los informes de Power BI Desktop se suelen conocer como
archivos .pbix, que es la extensión que se les confiere en
Microsoft Windows.

Una vez completada la carga, aparece un cuadro de diálogo que


informa de que el proceso de publicación se realizó
correctamente y donde, asimismo, se proporciona un vínculo al
informe en el servicio Power BI.

Impresión y exportación
de paneles e informes
En ocasiones, es posible que quiera imprimir un informe o un
panel para una reunión o para compartirlos con otros usuarios.
Power BI proporciona varias maneras de conseguir estas copias
impresas.

4
Las áreas de trabajo son lugares donde colaborar con
compañeros para crear y refinar colecciones de paneles, informes
e informes paginados. En Power BI Hay dos tipos de grupos:
• Áreas de trabajo clásicas: los grupos se basan en grupos de

Office 365. Si ha estado usando grupos de Office 365 para


administrar el correo electrónico, el calendario y los
documentos del grupo, verá que Power BI ofrece las mismas

características. Al crear un grupo en Power BI, en realidad está


creando un grupo de Office 365.
• Áreas de trabajo nuevas: ahora son el área de trabajo
predeterminada en Power BI. Asigne roles de área de trabajo a
grupos de usuarios, sean grupos de seguridad, listas de

distribución, grupos de Office 365 o usuarios individuales.


o Cree un área de trabajo en Power BI sin crear un grupo de
1
Office 365.
o Use roles de áreas de trabajo más granulares para
administrar los permisos en un área de trabajo de forma más

flexible.
o El administrador de Power BI controla quién puede crear
áreas de trabajo en Power BI.

Configuración de un área
de trabajo nueva
En Configuración del área de trabajo en el portal de
administración, los administradores pueden usar la opción
Creación de áreas de trabajo (versión preliminar de la nueva
experiencia de áreas de trabajo) para permitir que todos o nadie
en una organización creen áreas de trabajo. También se puede
limitar la creación a miembros de grupos de seguridad concretos.

Configuración de un área
de trabajo clásica
Imagine que configura un nuevo grupo financiero. Comience en
Mi área de trabajo con los paneles, informes y conjuntos de
datos que haya creado o que alguien haya compartido con usted.

Expanda Mi área de trabajo y seleccione Crear un grupo.


Dé un nombre al grupo, por ejemplo, "Finance". Power BI se
asegura de que el nombre no exista en el dominio.

3
Establezca el nivel de privacidad; para ello, decida si cualquier
usuario de la organización o solo los miembros del grupo pueden
ver el contenido de dicho grupo.

En el cuadro de diálogo Crear un grupo, escriba las direcciones


de correo electrónico, grupos de seguridad y listas de
distribución que correspondan. Seleccione Agregar para
convertir el conjunto de usuarios en miembros del grupo y,
después, seleccione Guardar para guardar el grupo.

Para obtener más información, vea Crear áreas de trabajo clásicas


en Power BI y Organización del trabajo en las nuevas áreas de
trabajo en Power BI .

4
Compilación de
aplicaciones
En esta lección, creará una aplicación con los artefactos que ya

existen en Power BI y, después, la compartirá con sus


compañeros.
1

Uso del aprendizaje no


supervisado para analizar
datos sin etiquetar
BIENVENIDA
Use métodos de aprendizaje no supervisado para predecir

agrupaciones en los datos. Use variaciones de la agrupación en

clústeres k-means y la agrupación en clústeres espectrales para analizar

y visualizar conjuntos de datos difíciles.

Objetivos de este módulo:

 Definir el aprendizaje no supervisado


 Aplicar la agrupación en clústeres k-means para predecir

agrupaciones en los datos

Requisitos previos
2
Ninguno

Introducción 4 min

Uso de la agrupación en clústeres k-means para agrupar datos


5 min

Ejercicio: Agrupación en clústeres k-means 15 min

Resumen 8 min
INTRODUCCIÓN
Es posible que haya usado anteriormente algoritmos de aprendizaje
supervisados en los que tenemos etiquetas para nuestros ejemplos.
Cuando un conjunto de datos no tiene etiquetas, podemos usar el
aprendizaje no supervisado para encontrar algún tipo de estructura en

los datos para descubrir patrones o agrupaciones.

El aprendizaje supervisado es mucho más común que el aprendizaje no


3
supervisado, pero el primero puede ayudarnos a analizar rápidamente
un conjunto de datos con poco esfuerzo.

En el ejemplo anterior, el algoritmo encuentra cuatro grupos en los

datos sin etiquetar, que normalmente se denominan clústeres.

El aprendizaje no supervisado se usa normalmente en la ciencia y en la

industria para el análisis de clústeres y la detección de anomalías.

Análisis de clústeres

El análisis de clústeres es un método de búsqueda de agrupaciones —


conocidas como clústeres— en conjuntos de datos. Como los
conjuntos de datos no tienen etiqueta, el análisis de clústeres intenta

agrupar ejemplos similares con las características del ejemplo.

En la práctica, la agrupación en clústeres suele usarse para el análisis


de redes sociales, la agrupación en clústeres de equipos, el análisis

científico en biología y astronomía, y el análisis de clientes.

Hay muchos tipos de análisis de clústeres, pero los profesionales de

inteligencia artificial tienden a usar la agrupación en clústeres k-means


para un análisis rápido. Para un aprendizaje no supervisado exhaustivo,

pueden usarse muchas herramientas: máquinas de vectores de soporte


(clústeres de vectores de soporte), redes neuronales, etc. A
continuación, veremos la agrupación en clústeres k-means.

Trataremos los aspectos básicos del aprendizaje no supervisado y

4 presentaremos algunos algoritmos de aprendizaje no supervisados


nuevos.

En este módulo, aprenderá a:

• Definir el aprendizaje no supervisado

• Aplicar la agrupación en clústeres k-means para predecir

agrupaciones en los datos.


1

Estrategia y soluciones de
inteligencia artificial (IA) de
Microsoft Azure
BIENVENIDA
Este módulo proporciona una descripción general de la IA de Azure y

demuestra cómo las herramientas, los servicios y la infraestructura de

Microsoft pueden ayudar a hacer que la IA sea real para su

organización, ya sea que desee desbloquear información de sus datos


latentes con minería de conocimiento, desarrollar sus propios modelos
de IA con aprendizaje automático, o crear aplicaciones inmersivas con
IA.

En este módulo, usted:

 Comprenda la visión de Microsoft para Azure AI.


 Identifique formas en que puede usar la IA de Azure.
2
 Defina qué es Azure AI, cómo funciona y cómo está construido.

Requisitos previos

Ninguno

Introducción a la inteligencia artificial de Azure 10 min

Minería de conocimiento 12 min

Aprendizaje automático 10 min

Aplicaciones y agentes 15 min

Impacto AI y ética 6 min

Verificación de conocimiento 4 min


Resumen y recursos 2 min

3
INTRODUCCIÓN A LA
INTELIGENCIA ARTIFICIAL DE
AZURE
¿Qué es la inteligencia artificial?

• La inteligencia artificial (IA) es la capacidad de una máquina

4 para imitar el comportamiento humano inteligente: desde el

análisis, el aprendizaje, el razonamiento y la resolución de


problemas, y más. A través de la inteligencia artificial, las
máquinas pueden analizar datos, textos e imágenes,

comprender el habla, interactuar de manera natural y hacer


predicciones utilizando datos, como cuándo una máquina
necesita mantenimiento o qué tipo de producto podría querer
comprar un cliente.

• En este módulo, usted:

• Comprenda la visión de Microsoft para Azure AI.

• Identifique formas en que puede usar la IA de Azure.

• Defina qué es Azure AI, cómo funciona y cómo está construido.


Antes de seguir avanzando, vamos a definir brevemente la informática

en la nube.

¿Qué es la informática en la nube?

La informática en la nube es la prestación de servicios informáticos a


través de Internet mediante un modelo de precios de pago por uso.

Dicho de otro modo, es una manera de alquilar potencia de proceso y

almacenamiento del centro de datos de otra persona.

En lugar de mantener las CPU y el almacenamiento en un centro de


datos, se alquilan durante el tiempo que sea necesario. El proveedor de

nube se encarga de mantener la infraestructura subyacente por usted.

Los recursos de la nube se pueden tratar igual que los recursos de un


1 centro de datos propio. Cuando haya terminado con ellos, solo hay que
devolverlos. Únicamente se le cobrará por lo que use.

Aunque todo esto es estupendo, el verdadero valor de la nube es que

permite resolver rápidamente los desafíos empresariales más difíciles y


proporcionar soluciones de vanguardia a los usuarios.

¿Por qué debería migrar a la nube?

La nube ayuda a moverse con más rapidez y a innovar de maneras que

antes eran prácticamente imposibles.

En este mundo digital cambiante, surgen dos tendencias:

 Los equipos están proporcionando nuevas características a los

usuarios a velocidades récord.


 Los usuarios finales esperan una experiencia cada vez más

amplia y envolvente con sus dispositivos y con el software.

Las versiones de software antes se programaban en plazos de meses o


incluso años. Hoy en día, los equipos lanzan características en lotes más

pequeños. Las versiones se suelen programar ahora en plazos de días

o semanas. Algunos equipos incluso entregan actualizaciones de


software de forma continua (a veces con varias versiones el mismo día).

Piense en todas las formas en que interactúa con los dispositivos y que

no eran posibles hace unos años. Muchos dispositivos pueden


reconocer su cara y responder a comandos de voz. La realidad
aumentada cambia la manera en que interactúa con el mundo físico.
Incluso los electrodomésticos están empezando a actuar de manera
inteligente. Estos son solo algunos ejemplos, muchos de los cuales se
2
desarrollan en la nube.

Para desarrollar sus servicios y ofrecer experiencias de usuario

innovadoras y novedosas más rápidamente, la nube proporciona


acceso a petición para:

 Un grupo casi ilimitado de componentes de proceso,


almacenamiento y redes sin procesar.

 Reconocimiento de voz y otros servicios cognitivos que ayudan


a hacer que su aplicación destaque entre la multitud.

 Servicios de análisis que le permiten dar sentido a los datos de

telemetría que devuelven el software y los dispositivos.

Veamos cómo se integra Azure con la informática en la nube.


¿Qué puedo hacer en Azure?

Azure proporciona más de 100 servicios que permiten hacer todo tipo

de cosas: desde ejecutar aplicaciones en máquinas virtuales hasta


explorar nuevos paradigmas de software, como bots inteligentes y

realidad mixta.

Muchos equipos comienzan a explorar la nube mediante la migración

de sus aplicaciones existentes a máquinas virtuales que se ejecutan en


Azure. Si bien este es un buen comienzo, la nube es algo más que "un

lugar diferente donde ejecutar las máquinas virtuales".

Por ejemplo, Azure proporciona servicios de inteligencia artificial y


aprendizaje automático que pueden comunicarse naturalmente con los
usuarios mediante la vista, el oído y la voz. También facilita soluciones

3 de almacenamiento que crecen dinámicamente para dar cabida a


grandes cantidades de datos. Los servicios de Azure permiten
soluciones que no serían factibles sin la potencia de la nube.
PASEO POR LOS
SERVICIOS DE AZURE
Azure puede ayudarle a afrontar complicados retos empresariales.

Usted pone los requisitos, la creatividad y sus herramientas de


desarrollo de software favoritas. Azure le ofrece una gran

infraestructura global que siempre está disponible para compilar

aplicaciones.

Realizaremos un recorrido rápido por los servicios generales que ofrece


Azure.
4
EJERCICIO:
INTRODUCCIÓN A LAS
REDES NEURONALES
A continuación se realizará otro ejercicio de programación: la creación

de una red neuronal básica con Keras.

En los ejercicios de este módulo se usa Azure Notebooks. Es un recurso


de uso gratuito.

Si los vínculos siguientes no funcionan, tiene que configurar una cuenta


gratuita de Azure Notebooks y clonar el proyecto para este módulo.
1
Vea el repositorio de Python en GitHub o el repositorio de R en
GitHub para obtener instrucciones para comenzar.

1. Los usuarios de Python deben ir a la biblioteca.

2. Seleccione el ejercicio 08. Neural Networks Introduction -


[Link].

3. Luego seleccione Run on Free Compute (Ejecutar en un

proceso gratuito).

4. Los usuarios de R deben ir a la biblioteca.

5. Seleccione el ejercicio 08. Neural Networks Introduction -


[Link].
6. Después, seleccione "Run on Free Compute" (Ejecutar en un

proceso gratuito).

2
MEJORA DE LAS REDES
NEURONALES CON
FUNCIONES DE
ACTIVACIÓN Y
OPTIMIZADORES
Los bordes no siempre están activos: los nodos se pueden "desactivar"
a ellos mismos si todos los valores de los datos que han llegado al nodo

son demasiado bajos. Los nodos se activan y desactivan mediante una


función de activación, elegida por el usuario.
3
En la práctica, las funciones de activación son similares al uso de varios
kernels en máquinas de vectores de soporte. No es necesario conocer

los detalles de su funcionamiento, solo que tendrá que probar varias


funciones de activación y ver cuál ofrece el mejor resultado.

Si tiene una red neuronal grande, es posible que parezca que muchos
datos van a viajar a través de ella. Pero en muchas ocasiones no pasa

ningún dato por un nodo: está desactivado. Esto se debe a que las
funciones de activación regulan el resultado de los nodos. Los usuarios

eligen las funciones de activación para diferentes capas.


Elección de una función de activación

Hay muchas funciones de activación que se pueden aplicar a una red

neuronal. ReLu y tanh son dos de las funciones de activación más


populares que se usan actualmente con las redes neuronales.

Optimizadores

Como puede imaginar, el descenso de gradiente puede ser muy

costoso a nivel computacional en una red neuronal grande, ya que lo


que se intenta es optimizar muchos pesos. Incluso con el aumento

actual de la capacidad de procesamiento, el descenso de gradiente

normal no suele ser práctico con las redes neuronales.

Para que esto sea más rápido, se puede usar una variación del descenso
de gradiente llamada descenso de gradiente estocástico (SGD).
4
SGD

SGD solo usa un ejemplo aleatorio del conjunto de entrenamiento para


calcular el costo (el descenso de gradiente normal usa todos los
ejemplos del conjunto de entrenamiento). A nivel computacional, esto
es mucho más rápido y puede proporcionar mejores resultados que el
descenso de gradiente normal en la misma cantidad de tiempo.

Hay diferentes variaciones de SGD que puede probar,

como Adam y RMSProp. De nuevo, no es necesario saber cómo


funcionan, solo tiene que saber que existen y que puede probar
distintos tipos de SGD para mejorar los modelos.

Si una red neuronal tarda mucho tiempo en entrenarse, puede probar

SGD en su lugar. El uso de SGD en lugar del descenso de gradiente


normal es similar al cambio del kernel en una SVM: una opción

integrada que debe seleccionar.

Propagación directa e inversa

La propagación directa y la inversa son la forma que tienen las redes


neuronales de optimizar sus pesos y generar resultados precisos. No

se preocupe por los detalles: este es un buen diagrama en el que se

muestra cómo funcionan.

Eso es todo. A continuación, se realizará un ejercicio de programación

en Azure Notebooks: redes neuronales avanzadas (no se preocupe, se

le guiará a través del proceso).

5
EJERCICIO: CNN
A continuación se probará la creación de una CNN simple en Azure

Notebooks. Se usará una CNN para reconocer dígitos manuscritos.

En los ejercicios de este módulo se usa Azure Notebooks. Es un recurso


de uso gratuito.

Si los vínculos siguientes no funcionan, tiene que configurar una cuenta


gratuita de Azure Notebooks y clonar el proyecto para este módulo.
Vea el repositorio de Python en GitHub o el repositorio de R en
GitHub para obtener instrucciones para comenzar.

1. Los usuarios de Python deben ir a la biblioteca.


1

2. Seleccione el ejercicio 10. Convolutional Neural Networks -


[Link].

3. Luego seleccione Run on Free Compute (Ejecutar en un

proceso gratuito).

4. Los usuarios de R deben ir a la biblioteca.

5. Seleccione el ejercicio 10. Convolutional Neural Networks -

[Link].

6. Después, seleccione "Run on Free Compute" (Ejecutar en un

proceso gratuito).
REVISIÓN DE LAS
HERRAMIENTAS
POPULARES QUE SE USAN
PARA EL APRENDIZAJE
PROFUNDO
Hay muchas herramientas modernas para el aprendizaje profundo.
Servicios como el análisis de texto, la visión personalizada y el

moderador de contenido permiten aplicaciones personalizadas del


aprendizaje profundo con facilidad. Las herramientas de ingeniería
2
como TensorFlow, Keras y PyTorch también son bibliotecas de código
abierto muy conocidas.

TensorFlow

TensorFlow es una biblioteca de Python que se puede extender a varios


lenguajes. TensorFlow se puede ejecutar en diferentes tipos de
procesadores, desde GPU y CPU en la nube y de escritorio, hasta
pequeños dispositivos de IoT y el explorador. TensorFlow tiene muchas

funcionalidades diferentes, pero destaca principalmente en redes


neuronales y aprendizaje profundo.

A veces se considera una biblioteca de "bajo nivel" porque en otras

(como Keras) se usa TensorFlow en segundo plano para crear modelos

y analizar datos.

Keras

Keras es una biblioteca de Python general para redes neuronales. Keras

usa TensorFlow y algunas otras bibliotecas para facilitar la creación de


redes neuronales profundas, lo que reduce el número de acciones que
tiene que llevar a cabo un usuario para crear un modelo correcto.

Es habitual que los profesionales de la inteligencia artificial usen Keras


para probar si un determinado tipo de modelo se podría aplicar

correctamente a un problema. Si el modelo de Keras muestra potencial,


es posible que merezca la pena invertir tiempo en crear y ajustar un
modelo con TensorFlow.

PyTorch
PyTorch es una plataforma de investigación de aprendizaje profundo

que ofrece flexibilidad y rendimiento. PyTorch todavía se encuentra en


una fase de desarrollo inicial: la versión 1.0 no se ha publicado aún.

A pesar de esto, PyTorch es muy popular y se conoce especialmente


por su facilidad de uso y sus modelos de CNN personalizables. También

contiene muchas herramientas para el procesamiento previo de datos,

4 lo que reemplaza a NumPy, que normalmente se usa en el resto de


casos.

NumPy

NumPy es una biblioteca de Python de código abierto que proporciona

un amplio kit de herramientas de funciones matemáticas y


compatibilidad para estructuras de datos de gran tamaño. De forma
similar a como se ha usado en este curso, NumPy es extremadamente

popular para el procesamiento previo de los datos antes de crear


modelos de inteligencia artificial sofisticados.

5
PREDICCIÓN DE
CATEGORÍAS CON
MÁQUINAS DE VECTORES
DE SOPORTE
Las máquinas de vectores de soporte (SVM) son una de las soluciones
más elegantes del aprendizaje automático, además de ser herramientas
vitales para la biología y muchas otras áreas de la ciencia y la industria.
Se pueden usar para problemas de clasificación y regresión, y se

pueden codificar fácilmente en Python y R. En este módulo se usan


1 para la clasificación.

Hiperplanos

Un hiperplano es un límite que divide puntos de datos: las SVM

intentan encontrar un hiperplano que separe los distintos tipos de


puntos de datos con la mayor precisión posible. En el ejemplo siguiente
se han separado los puntos de la parte inferior izquierda (azules) de los

de la parte superior derecha (verdes) mediante la línea negra

(hiperplano). Los puntos de datos se clasifican en función del lado de


la línea negra en el que se encuentren.
2
Es como el ejercicio de programación de regresión logística, aunque la

SVM intenta hacer que el margen entre las dos líneas sea lo más grande
posible. Esto se conoce como SVM de margen máximo. Se hace para
que la SVM sea lo más precisa posible cuando se especifiquen nuevos
datos.

Vectores de soporte y márgenes

La SVM calcula los hiperplanos y los márgenes mediante los puntos de

datos de las distintas categorías más cercanas.

Estos puntos de datos se denominan vectores de soporte: de ahí es de

donde viene el nombre de las SVM.


3
Los puntos de datos del margen se denominan vectores de soporte (de

ahí que el modelo se denomine máquina de vectores de soporte). Las


SVM también pueden funcionar bien con grandes conjuntos de datos
complejos no lineales.
4
Los nuevos ejemplos especificados en un modelo de SVM se etiquetan

con una categoría en función del lado del margen en el que se


encuentren. Si se quiere, es posible aumentar el número de
hiperplanos, lo que permite varios tipos distintos de etiquetas. Esto

resulta útil en la clasificación de texto e imágenes. Las SVM se han


aplicado extensamente en biología en áreas como la clasificación
precisa de proteínas y secuencias de ADN.

Error

Es importante entender que todos los datos tienen variabilidad, lo que

significa que la precisión de un modelo normalmente no puede


alcanzar el 100 %.
5

Observe los puntos de datos atípicos (indicados por los guiones rojos

que los rodean). Estos valores atípicos son ejemplos de datos que el
modelo no puede predecir con precisión. Este error se conoce como
"error irreducible" o "error de Bayes".
MEJORA DE LAS
PREDICCIONES DE
CATEGORIZACIÓN CON
MÁQUINAS DE VECTORES
DE SOPORTE
En un ejercicio de programación anterior se hizo una SVM lineal
porque se ajusta bien al conjunto de datos simple. Las SVM también

funcionan bien con conjuntos de datos complejos y sin etiquetar, ya

1 que los vectores de soporte ayudan a optimizar los márgenes a fin de


minimizar las clasificaciones incorrectas.

Anteriormente se ha hablado de tener un margen inflexible (un área


alrededor del hiperplano donde no pasan puntos de datos). La SVM

anterior ha movido el hiperplano (línea) para intentar maximizar el


ancho de este margen.

El problema de este enfoque es que los datos del mundo real tienen
ruido, lo que significa que es normal que algún que otro punto de

datos se encuentre cerca del "mejor" hiperplano. Si se usa un margen


inflexible, se mueve el hiperplano para evitar estos puntos de datos
ruidosos. Esto es similar al sobreajuste.

Se puede usar una SVM de margen flexible en su lugar para aumentar


la precisión. El margen flexible usa una función de costo diferente al
método de margen máximo que ya se ha usado. Esta función de costo

da una penalización menor para los puntos de datos sueltos.

El gráfico anterior es un ejemplo de SVM de margen inflexible. El


hiperplano (línea negra) está realizando un buen trabajo a la hora de
2
separar puntos azules y verdes. Sin embargo, si se hubiera especificado

el punto verde con la etiqueta "infracción" y se hubiera vuelto a


entrenar la SVM, esta línea tendría que moverse considerablemente, ya
que se encuentra dentro del margen. Si se acercara aún más a los
puntos rojos, la SVM podría no separar los puntos correctamente y
notificar que se ha producido un error, aunque una tasa de precisión
del 100 % es improbable en la mayoría de los conjuntos de datos. Una

SVM de margen flexible permite cierto grado de etiquetado incorrecto,

por lo que puede resultar más útil en este caso.


El gráfico anterior es una SVM de margen flexible, donde el algoritmo
se penaliza menos para los puntos de datos que se encuentran dentro

del margen. Como tal, un práctico hiperplano se adapta a los datos, en


lugar de resultar distorsionado por unos cuantos puntos de datos.
3
En la práctica, se recomienda experimentar con varios tipos diferentes
de modelos para probar y lograr una mayor precisión. Las SVM
avanzadas son fáciles de usar en conjuntos de datos complejos. No es
necesario conocer los detalles en profundidad, pero es bueno tener
una idea de lo que pueden hacer las distintas herramientas si se da con

un conjunto de datos difícil. Una de las herramientas más conocidas


son los kernels.

Kernels

Las SVM pueden optimizar las predicciones mediante métodos de


kernel: un tipo de algoritmo que analiza patrones. El truco del kernel es
el método de kernel más usado. Emplea el cálculo para separar los

datos y calcular una línea de mejor ajuste que puede ser no lineal.
Hay varios tipos de kernels que se pueden usar para el truco del kernel,

incluidos kernels lineales, polinómicos, gaussianos y sigmoideos (con


forma de S). Tienen propiedades diferentes que proporcionan distintos
márgenes para separar los ejemplos. Aunque los profesionales tienden
a probar los kernels polinómicos y gaussianos en primer lugar, no

existe una mejor elección general de kernel.

Los parámetros, como los kernels, que se pueden establecer antes de


entrenar un modelo se conocen como hiperparámetros. Cambian la
manera en que un algoritmo entrena y actúa, por lo que los

profesionales suelen modificarlos para ajustar un modelo para que


tenga un mejor rendimiento. Aunque los profesionales tienden a
probar primero ciertos hiperparámetros, como los kernels polinómicos

y gaussianos, no hay una mejor elección general de hiperparámetros.

4
Kernel lineal

Kernel polinómico
Kernel RBF

Solo necesita saber los distintos kernels que existen y debería probar
varios de ellos para tratar de mejorar la precisión de los modelos.
Afortunadamente, es muy fácil probar diferentes hiperparámetros, así

que vamos a intentarlo.


1

Ingeniero de inteligencia
artificial en dispositivos
perimetrales
BIENVENIDA
La interacción entre la inteligencia artificial, la nube y los dispositivos
perimetrales es un campo que evoluciona rápidamente. Actualmente,

muchas soluciones de Internet de las cosas se basan en la telemetría


básica. La función de telemetría captura los datos de los dispositivos

perimetrales y los almacena en un almacén de datos. Nuestro enfoque


va más allá de la telemetría básica. Queremos modelar los problemas

del mundo real a través de algoritmos de aprendizaje automático y


aprendizaje profundo, e implementar el modelo obtenido en

2 dispositivos perimetrales mediante la inteligencia artificial y la nube. El

modelo se entrena en la nube y se implementa en un dispositivo


perimetral. La implementación en el dispositivo perimetral proporciona

un bucle de comentarios que permite mejorar el proceso empresarial


(transformación digital).

En esta ruta de aprendizaje, adoptamos un enfoque de ingeniería


interdisciplinaria. Queremos crear una plantilla estándar para varias

áreas complejas de la implementación de la inteligencia artificial en

dispositivos perimetrales como drones, vehículos autónomos, etc. En la


ruta de aprendizaje se presentan estrategias de implementación para

un panorama de aplicaciones de inteligencia artificial complejas en


constante cambio. Los contenedores son fundamentales para este

enfoque. Cuando se implementan en dispositivos perimetrales, los


contenedores pueden encapsular entornos de implementación para
una gran variedad de hardware. CICD (integración continua:

implementación continua) es una extensión lógica para la


implementación de contenedores en dispositivos perimetrales. En
módulos futuros de esta ruta de aprendizaje, puede que incluyamos
otras técnicas, como la informática sin servidor o la implementación en

unidades de microcontrolador.

El enfoque orientado a la ingeniería se basa en temas y pedagogías de


la formación en ingeniería como los siguientes:

 Diseño de sistemas
 Experimentación y solución de problemas
 Mejora mediante la experimentación
 Implementación y análisis a través de pruebas
 Impacto en otros campos de la ingeniería
3
 Previsión del comportamiento de un componente o sistema

 Consideraciones de diseño

 Trabajo con restricciones y tolerancias, así como condiciones de


funcionamiento específicas, como las restricciones de

dispositivos
 Consideraciones de seguridad
 Creación de herramientas que ayudan a crear soluciones
 Mejora de los procesos: uso de dispositivos perimetrales
(Internet de la cosas) para proporcionar un bucle de

comentarios de análisis del proceso empresarial con el objetivo


de impulsar los procesos

 Impacto social de la ingeniería


 Impacto estético del diseño y la ingeniería

 Implementaciones a escala
 Solución de problemas empresariales complejos mediante una

implementación de un extremo a otro de inteligencia artificial,


dispositivos perimetrales y la nube.

En última instancia, las tecnologías de inteligencia artificial, la nube y

dispositivos perimetrales implementadas como contenedores en modo

CICD son capaces de transformar sectores enteros mediante la creación


de ecosistemas de autoaprendizaje y adaptados a un sector que
abarcan toda la cadena de valor. Queremos diseñar un conjunto de

plantillas o metodologías para la implementación de la inteligencia


artificial en dispositivos perimetrales en el ámbito de la nube. En esta

ruta de aprendizaje se ofrece lo siguiente:

 Más información sobre la creación de soluciones con el Internet


de las cosas y la nube
4
 Descripción del proceso de implementación de soluciones
basadas en el Internet de las cosas en dispositivos perimetrales
 Aprendizaje del proceso de implementación de modelos en
dispositivos perimetrales mediante contenedores
 Exploración del uso de DevOps para dispositivos perimetrales

Contenido producido en colaboración con la Universidad de Oxford

– Ajit Jaokar Artificial Intelligence:Cloud and Edge


Implementations course (Inteligencia artificial: curso de

implementaciones de la nube y dispositivos perimetrales).

Requisitos previos

 Ninguno

Introducción a IoT de Azure 31 min


Introducción a Azure IoT Hub 28 min

Introducción a Azure IoT Edge 29 min

Implementación de un módulo precompilado en el dispositivo


perimetral 56 min

Entrenamiento y empaquetado de un módulo de Azure

Machine Learning para la implementación en un dispositivo IoT

Edge 1 h 26 min

5
1

Cloud Services básico:


opciones de redes de Azure
BIENVENIDA
La ejecución de aplicaciones o servicios en la nube requiere una red

rápida y segura. Obtenga información sobre algunos de los conceptos

básicos de redes de Azure y sobre cómo ayudan a mejorar la resistencia

y a reducir la latencia.

En este módulo:

• Obtendrá información sobre cómo las redes virtuales ayudan a


aislar los recursos de red y de proceso

• Aprenda cómo Azure Load Balancer ayuda a mejorar la


resistencia o la capacidad para recuperarse tras una caída del
2 servicio

• Obtendrá información sobre cómo Traffic Manager puede


enrutar el tráfico a diferentes puntos de conexión, incluido el

punto de conexión con la menor latencia para el usuario


Requisitos previos
Ninguno

Introducción 1 min

Implementación del sitio en Azure 12 min


Escalado con Azure Load Balancer 7 min
Reducción de la latencia con Azure Traffic Manager 7 min

Resumen 1 min
INTRODUCCIÓN
Acaba de empezar a trabajar en una startup que está cambiando el
sector de las vitaminas gracias a personalizaciones sencillas y
suscripciones mensuales asequibles. Mientras que el negocio florece
en el sitio de comercio electrónico, el centro de datos empieza a luchar

por satisfacer la demanda de los usuarios. Se producen errores en el


servicio cuando demasiados usuarios inician sesión al mismo tiempo, y
3 tiene que hacer frente a más ventanas de mantenimiento programadas
y sin programar de lo que le gustaría.

El sitio se encuentra en Silicon Valley, así que el retraso de red es


especialmente grave para los usuarios que se encuentran en otras
regiones, como Europa y Asia.

Por lo tanto, convence al equipo para migrar el sitio a la nube a fin de

ahorrar costos. Pero, ¿cómo puede ayudar concretamente Azure a que

el sitio se ejecute mejor?

Resulta que la administración de redes en Azure no difiere mucho de


la administración de redes locales. Vamos a ver por qué.

Objetivos de aprendizaje

En este módulo, aprenderá lo siguiente:


• Cómo una red virtual de Azure proporciona comunicación de

red segura entre recursos como máquinas virtuales y otras


redes

• Qué significan alta disponibilidad y resistencia y cómo Azure

Load Balancer puede aumentar la resistencia en una única


región geográfica

• Qué es la latencia y cómo Traffic Manager ayuda a reducir la


latencia de red y proporciona resistencia entre ubicaciones

geográficas

4
IMPLEMENTACIÓN DEL
SITIO EN AZURE
Probablemente, el primer paso sea volver a crear la configuración

local en la nube.

Esta configuración básica le dará una idea de cómo se configuran las


redes y cómo se mueve el tráfico de red de entrada y salida de Azure.

El sitio de comercio electrónico de un solo vistazo

Los sistemas empresariales de mayor tamaño suelen constar de varias


aplicaciones y servicios interconectados que funcionan de forma

5 conjunta. Es posible que tenga un sistema web front-end en el que se


muestre el inventario y permita a los clientes crear un pedido. Este se
podría comunicar con varios servicios web para proporcionar los datos

de inventario, administrar los perfiles de usuario, procesar las tarjetas


de crédito y solicitar que se completen las solicitudes de los pedidos
procesados.

Existen varias estrategias y patrones que los diseñadores y arquitectos

de software usan para facilitar el diseño, la compilación, la

administración y el mantenimiento de estos sistemas complejos.

Veamos algunos de ellos, empezando por las arquitecturas de


acoplamiento flexible.
Acabas de ver cómo Telefónica pudo modernizar su negocio y utilizar

la inteligencia artificial para transformar la forma en que interactúan


con sus clientes.

1
IMPACTO Y ÉTICA DE LA
IA
Las tecnologías de IA plantean cuestiones éticas y sociales

complejas. Por ejemplo:

 ¿Cómo podemos usar mejor la inteligencia artificial para ayudar


a los usuarios y ofrecerles a las personas conocimientos

mejorados, evitando al mismo tiempo exponerlos a diferentes

tipos de discriminación en salud, vivienda, aplicación de la ley y


empleo?
 ¿Cómo podemos equilibrar la necesidad de eficiencia y

2 exploración con justicia y sensibilidad para los usuarios? A


medida que avanzamos hacia depender de agentes inteligentes
en nuestra vida cotidiana, ¿cómo nos aseguramos de que las

personas y las comunidades puedan confiar en estos sistemas?

Debemos abordar estos desafíos éticos a medida que exploramos


oportunidades futuras impulsadas por una asociación entre
computadoras y humanos. En última instancia, la pregunta no es solo

qué pueden hacer las computadoras, sino qué deben hacer las
computadoras.

En Microsoft, seis principios éticos guían el desarrollo y uso de la


inteligencia artificial con las personas en el centro de todo lo que

hacemos.
 Justicia : los sistemas de IA deben tratar a todas las personas

de manera justa.
 Confiabilidad y seguridad : los sistemas de inteligencia
artificial deben funcionar de manera confiable y segura.
 Inclusividad : los sistemas de inteligencia artificial deberían

empoderar a todos y comprometer a las personas.

 Privacidad y seguridad : los sistemas de inteligencia artificial


deben ser seguros y respetar la privacidad.

 Transparencia : los sistemas de IA deben ser entendibles.

 Rendición de cuentas : los sistemas de IA deben tener

rendición de cuentas algorítmica.

La ética de la inteligencia artificial en Microsoft

El grupo de investigación FATE (equidad, responsabilidad,


3
transparencia y ética) en Microsoft estudia las complejas implicaciones

sociales de la inteligencia artificial, el aprendizaje automático, la ciencia


de datos, la experimentación a gran escala y la creciente
automatización. Su objetivo es desarrollar técnicas computacionales
que sean innovadoras y éticas a la vez que se basan en el contexto más
profundo que rodea estos temas desde la sociología, la historia y los

estudios de ciencia y tecnología.

Actualmente, FATE está trabajando en proyectos de investigación

colaborativa que abordan la necesidad de transparencia,

responsabilidad y equidad en los sistemas de inteligencia artificial y


aprendizaje automático. FATE publica en una variedad de disciplinas,

incluyendo aprendizaje automático, recuperación de información,


sistemas, sociología, ciencias políticas y estudios de ciencia y

tecnología.
AI para bien

Microsoft AI for Good invierte en programas que aumentan el acceso

a las tecnologías de nube e IA a través de subvenciones, educación,


investigación y asociaciones estratégicas.

Accesibilidad

AI for Accessibility promueve la inclusión a través de tecnología


inteligente y permite a las personas obtener independencia y lograr
más. Por ejemplo, Seeing AI utiliza tecnología de IA para ayudar a la
comunidad de baja visión a ver mejor el mundo a su alrededor.

4
Humanitario

AI for Humanitarian Action, un nuevo programa de $ 40 millones y 5

años, tiene como objetivo aprovechar el poder de AI para recuperarse

de los desastres, abordar las necesidades de los niños, proteger a los


refugiados y las personas desplazadas y promover el respeto de los
derechos humanos. Por ejemplo, Operation Smile, un socio sin fines de
lucro, utiliza un algoritmo de modelado facial y Microsoft Pix para

mejorar sus resultados quirúrgicos y ayudar a más niños que necesitan

cirugías faciales.
Tierra

AI for Earth permite a las personas y organizaciones innovar en las

formas en que monitoreamos, modelamos y, en última instancia,


gestionamos los sistemas naturales de la Tierra. El programa se centra

en cuatro áreas vitales para un futuro sostenible: agricultura, agua,

biodiversidad y cambio climático. Por ejemplo, Project Premonition


comenzó como un esfuerzo para rastrear enfermedades emergentes
mediante el uso de IA, drones y software en la nube de Microsoft. Al
necesitar datos rápidos y confiables, los científicos comenzaron a

analizar la sangre de los mosquitos para adelantarse a las


enfermedades infecciosas y ahora están volcando sus esfuerzos hacia
la biodiversidad.

5
Ver IA

Ver IA es un proyecto de investigación de Microsoft que combina el

poder de la nube y la IA para ofrecer una aplicación inteligente


diseñada para ayudarlo a navegar su día.
Buscar y ver paneles e
informes
Escenario

¡Enhorabuena! Le acaban de nombrar director de ventas de una

empresa de fabricación de ropa llamada Van Arsdel. Su primera


tarea es ver los paneles e informes de marketing y ventas.

Procedimiento

Adición de la aplicación de ejemplo de marketing y ventas

1 Nota

Para agregar una aplicación, necesitará Power BI Pro. Puede


probar Power BI Pro gratis durante 60 días
en [Link]

1. Inicie sesión en [Link]

2. Seleccione la pestaña Aplicaciones situada a la izquierda.


3. Seleccione el botón Obtener aplicaciones.

4. Seleccione el vínculo "Buscar más aplicaciones y servicios de


consultoría en AppSource" en la parte inferior del menú.

5. Busque Ejemplo de marketing y ventas.


2
6. Seleccione el vínculo "Obtener ahora" y espere a que la

aplicación se instale.
7. En la pantalla Empezar a trabajar con la nueva aplicación,

seleccione el botón Explorar aplicación. Se abre el panel de la


aplicación.

Abrir y ver el panel y el informe

1. Vea el panel de la aplicación Marketing y ventas.


2. Seleccione el gráfico de columnas o los iconos del gráfico
de líneas para abrir el informe detallado asociado.
3. Para volver al panel, seleccione la flecha atrás en el
explorador.
Crear una alerta
1. En el panel de la aplicación Marketing y ventas, pase el
puntero sobre el icono de volumen total de la categoría

(esquina superior izquierda del lienzo) y seleccione los puntos

suspensivos "...".
2. Seleccione Administrar alertas.
3. Seleccione + Agregar regla de alertas.

4. Desplácese hacia abajo hasta el campo Umbral y escriba 49000.

5. Active la casilla de verificación Cada 24 horas como máximo.


6. Active la casilla de verificación Enviarme también un correo
electrónico.
7. Seleccione Guardar y cerrar.

Nota

3
Puesto que el volumen total de categoría ya está por encima de
49 000, recibirá un correo electrónico en 24 horas.

Agregar un comentario en el panel

1. Mueva el puntero sobre el icono Total de unidades (esquina

superior derecha), seleccione los puntos suspensivos "..." y, a


continuación, seleccione Agregar un comentario.

2. Agregue un comentario al icono del objeto visual, del tipo


"¿Incluiremos aquí el segmento de invierno?".
3. Seleccione Publicar y, a continuación, Cerrar.
4. Junto al título Total de unidades, seleccione el icono de

conversación que se acaba de aparecer para ver el comentario.


Opciones de visualización de informe y accesibilidad

Los informes se ven en muchos dispositivos diferentes, con


diferentes tamaños y aspectos de pantalla. El menú Ver tiene
muchas opciones que controlan cómo se muestra la página del
informe. Seleccione la opción más adecuada para el tamaño de
la pantalla, la audiencia o sus preferencias personales. Pruebe lo
siguiente:

1. Seleccione el icono Total de unidades para abrir el


informe asociado.
2. En la barra de menús superior, seleccione Ver.

3. Las tres primeras opciones controlan la presentación del


4
informe. Seleccione cada una de las tres opciones para
obtener información sobre cómo funcionan.
o Para mostrar la página del informe en el mayor tamaño

posible sin tener que recurrir a las barras de


desplazamiento, seleccione Ajustar a la página.
o Para ocupar todo el ancho del espacio disponible,
seleccione Ajustar al ancho.

o Para ver el informe en la mejor resolución (y si no le


importa la posibilidad de que haya barras de

desplazamiento dobles), seleccione Tamaño real.

4. Hay varias opciones de accesibilidad disponibles en el


menú Ver. Esta configuración hace que los informes sean
más fáciles de utilizar por personas con daltonismo u otros
problemas visuales. Desde el menú Ver,
seleccione Colores de alto contraste y elija una de las
opciones. En el ejemplo siguiente, hemos elegido Alto
contraste 2.

5
Nota

Para seguir el ejemplo de este vídeo, descargue el libro de Excel de

ejemplo aquí.
En esta unidad se explica cómo puede importar un archivo de libro de

Excel que contiene una tabla sencilla de una unidad local a Power BI.
Luego sabrá cómo empezar a explorar los datos de esa tabla en

Power BI mediante la creación de un informe.

Nota

Hasta ahora, hemos importado datos mediante Power BI


Desktop. Esta página de la unidad se realiza desde el servicio
Power BI.

Comprobación de que los


datos estén en formato de
tabla
Para que Power BI importe datos desde el libro, tienen que estar
en formato de tabla. En Excel, puede resaltar un rango de celdas
y, en la pestaña Insertar de la cinta de opciones de Excel,
seleccione Tabla.
Asegúrese de que cada columna tenga un nombre adecuado, lo
que le permitirá encontrar más fácilmente los datos que quiere
al crear los informes en Power BI.

2 Importar desde una


unidad local
No importa dónde conserve los archivos, Power BI simplificará su
importación. En Power BI, puede ir a Obtener datos > Archivos
> Archivo local para seleccionar el archivo de Excel que quiere.
Una vez que el archivo se importa a Power BI, puede empezar a
crear informes.

No es necesario que los archivos esté en una unidad local. Si


guarda los archivos en OneDrive o en el sitio del equipo de
SharePoint, mucho mejor.

Crear informes
Una vez que se importan los datos del libro, se crea un conjunto
de datos en Power BI, el que aparecerá en Conjuntos de datos.

Ahora puede empezar a explorar los datos mediante la creación

de informes y paneles. Seleccione el icono Abrir menú junto al


conjunto de datos y, luego, seleccione Explorar. Aparece un
lienzo de informe en blanco nuevo. A la derecha, en Campos,
están sus tablas y columnas. Seleccione los campos para el
usuario para el que quiere crear una visualización en el lienzo.

4 Puede cambiar el tipo de visualización y aplicar filtros y otras

propiedades en Visualizaciones.

Si usa cualquiera de las características de inteligencia empresarial


avanzadas de Excel, como Power Query, Power Pivot o
Power View, también puede importar esos datos en Power BI.

Para más información, consulte Obtención de datos de archivos

de libro de Excel.
Transformación de los
datos para incluirlos en un
informe
A veces, es posible que los datos tengan datos adicionales o
datos con formato incorrecto. Power BI Desktop incluye la
herramienta Editor de Power Query, que puede ayudarlo a darle
forma a los datos y a transformarlos, para que estén listos para
los modelos y las visualizaciones.

En esta unidad, transformará los datos con el Editor de


Power Query.

5
Nota

Para seguir los ejemplos de los vídeos y en esta página, descargue la

base de datos de Access de ejemplo aquí e impórtelo en Power BI


Desktop (Obtener datos > Base de datos > Base de datos de Access).

Inicio del Editor de Power


Query
Para empezar, seleccione Editar en la ventana Navegador para iniciar

el Editor de Power Query. También puede iniciar el Editor de


Power Query directamente desde Power BI Desktop con el botón
Editar consultas de la cinta de opciones Inicio.

Después de cargar los datos en el Editor de Power Query, verá la


pantalla siguiente.
1. En la cinta de opciones, los botones activos le permiten

interactuar con los datos de la consulta.

2. En el panel de la izquierda, se muestran las consultas (una

para cada tabla o entidad) y están disponibles para


seleccionarlas, verlas y darles forma.

3. En el panel del control, se muestran los datos de la consulta


seleccionada que ya están disponibles para darles forma.

4. La ventana Configuración de la consulta muestra las


propiedades de la consulta y los pasos aplicados.

Transformar datos
En el panel central, si se hace clic con el botón secundario en una
2
columna, se muestran las transformaciones disponibles. Entre los
ejemplos de las transformaciones disponibles se incluyen la

eliminación de una columna de la tabla, la duplicación de la columna


con un nombre nuevo o el reemplazo de los valores. En este menú,

también puede dividir las columnas de texto en múltiplos por


delimitadores comunes.
3 La cinta de opciones del Editor de Power Query contiene
herramientas adicionales que pueden ayudarlo a cambiar el tipo de

datos de las columnas, agregar una notación científica o extraer


elementos de las fechas, como puede ser un día de semana.

Sugerencia

Si comete un error, puede deshacer cualquier paso en la lista Pasos


aplicados.

A medida que aplica las transformaciones, cada paso aparece en la

lista Pasos aplicados del panel de configuración de consulta. Puede

usar esta lista para deshacer o revisar cambios específicos o, incluso,


cambiar el nombre de un paso. Para guardar las transformaciones,

seleccione Cerrar y aplicar en la pestaña Inicio.


Después de seleccionar Cerrar y aplicar, el Editor de Power Query
aplica los cambios de consulta y los aplica en Power BI Desktop.

Para más información, consulte Inicio rápido: Uso de Power Query en


4 Power BI Desktop .

Combinación de datos de
varios orígenes
Con Power BI Desktop, puede usar la herramienta Editor de
Power Query para combinar datos de varios orígenes en un único
informe.

En esta unidad, combinará datos de distintos orígenes mediante


el Editor de consultas.
5
Nota

Para seguir los ejemplos de los vídeos y en esta página, descargue la base
de datos de Access de ejemplo aquí e impórtelo en Power BI Desktop
(Obtener datos > Excel).

En la vista Modelo, fíjese en que un bloque representa cada tabla


y sus columnas, y que las líneas entre ellas representan
relaciones.

Agregar y quitar relaciones no tiene misterio. Para quitar una


relación, haga clic con el botón derecho en la relación y
seleccione Eliminar. Para crear una relación, arrastre y coloque
los campos que quiera vincular entre las tablas.
Para ocultar una tabla o una columna concreta del informe, haga
clic con el botón derecho en la tabla o columna en cuestión en la
vista de modelo y seleccione Ocultar en la vista de informes.

Para obtener una vista más detallada de las relaciones entre


datos, en la pestaña Inicio, seleccione Administrar relaciones.
En el cuadro de diálogo Administrar relaciones, las relaciones
aparecen como una lista en lugar de como un diagrama visual.

En este cuadro de diálogo, puede seleccionar Detección


automática para buscar relaciones en los datos nuevos o
actualizados. Seleccione Editar para editar las relaciones
manualmente. Encontrará opciones avanzadas en la sección
Editar para establecer la Cardinalidad y la Dirección de filtro
cruzado de las relaciones.

En la siguiente tabla se explican las opciones de cardinalidad.

Opciones de

cardinalidad Ejemplo

Varios a uno Relación predeterminada más habitual. La columna de


una tabla puede tener más de una instancia de un

valor. La tabla relacionada (o tabla de búsqueda) solo

tiene una instancia de un valor.


Opciones de
cardinalidad Ejemplo

Uno a uno La columna de una tabla solo tiene una instancia de

un valor determinado y la otra tabla relacionada, solo

una instancia de un valor determinado.

De forma predeterminada, estableceremos relaciones de filtro


cruzado en ambas direcciones. El filtrado cruzado en una sola
dirección limita algunas de las funcionalidades de modelado de
una relación.

Establecer unas relaciones precisas entre los datos permite crear

cálculos complejos en varios elementos de datos.


4
Para obtener más información, vea: Crear y administrar relaciones
en Power BI Desktop .

Creación de columnas
calculadas
A veces, los datos que está analizando no contienen un campo

que necesita. La respuesta puede estar en las columnas


calculadas. Para crear una columna calculada, puede transformar
dos o más elementos de datos existentes. Así, puede crear una
columna combinando dos columnas en una. Estas son las tareas
de esta unidad:
5
Nota

Para seguir los ejemplos de los vídeos y en esta página, descargue


la base de datos de Access de ejemplo aquí e impórtelo en
Power BI Desktop (Obtener datos > Excel).

Una razón para crear una columna calculada es establecer una

relación entre las tablas cuando no existe ningún campo único.


La falta de una relación es obvia cuando se crea un objeto visual
de tabla simple en Power BI Desktop y se obtiene el mismo valor
en todas las entradas.

Por ejemplo, para crear una relación con campos únicos en los
datos, puede crear una columna calculada denominada
"CountryZip", combinando para ello los valores de las columnas
País y Código postal.
Para crear una columna calculada, seleccione Vista de datos en
Power BI Desktop en el lado izquierdo del lienzo del informe.

2
Seleccione Nueva columna en la pestaña Modelado para

habilitar la barra de fórmulas. Puede especificar cálculos


mediante DAX (Lenguaje de expresiones de análisis de datos).
DAX es un lenguaje de fórmulas eficaz, que también se encuentra
en Excel, que permite crear cálculos en firme. A medida que
escriba una fórmula, Power BI Desktop mostrará fórmulas o
elementos de datos coincidentes a modo de ayuda para crear la
fórmula más rápidamente.

En la barra de fórmulas de Power BI se sugieren funciones DAX


específicas y columnas de datos relacionadas a medida que
escriba la expresión.
Una vez creadas las columnas calculadas en cada tabla, se
pueden usar como clave única para establecer una relación entre
ellas. Si va a la vista Relaciones, puede arrastrar el campo de una
tabla a la otra para crear la relación.

Cuando vuelva a la vista Informe, observe que aparece un valor


distinto en cada distrito.
4
Para obtener más información sobre las columnas calculadas,
incluido el uso de instrucciones IF, vea Tutorial: Creación de
columnas calculadas en Power BI Desktop .

Optimización de los
modelos de datos
Los datos importados suelen contener campos que no son
necesarios en las tareas de informes y visualización. Tales datos
pueden contener información innecesaria o estar disponibles en
otra columna. Power BI Desktop tiene herramientas para
optimizar los datos y hacer que sean más fáciles de usar a la hora
de crear informes y objetos visuales. Tareas de este módulo:
5
Nota

Actualmente, Preguntas y respuestas de Power BI solo puede


responder a consultas formuladas en inglés; sin embargo, existe
una versión preliminar para español que su administrador de
Power BI puede habilitar.

Exploración de Preguntas
y respuestas
Puede usar Preguntas y respuestas para explorar los datos
mediante funciones de lenguaje intuitivas y naturales de Power
BI y recibir respuestas en forma de gráficos.
1

Formular una pregunta


Formule una pregunta sobre sus datos en Preguntas y respuestas
con un lenguaje natural. Por lenguaje natural nos referimos al
lenguaje normal que los seres humanos usan para comunicarse
entre sí cada día. Por ejemplo: "¿Cuál es el total de unidades por
región?"

2 Preguntas y respuestas está disponible en paneles e informes de


Power BI. Para abrir la pantalla de Preguntas y respuestas, vaya al
panel y coloque el cursor en el cuadro de pregunta.
Si las etiquetas del eje y los valores de los objetos visuales
incluyen las palabras ventas, cuenta, mes y oportunidades, puede
formular preguntas con seguridad. Por ejemplo, "¿Qué cuenta
tiene la mayor oportunidad?" o "Mostrar las ventas por mes
como un gráfico de barras".

En el lateral de la pantalla se proporcionan otros elementos útiles.


Para cada conjunto de datos, Preguntas y respuestas muestra las
palabras clave y en ocasiones algunas sugerencias o ejemplos de

preguntas. Seleccione cualquiera de estos para agregarlos al


cuadro de pregunta.

Otra forma en que Preguntas y Respuestas le ayuda a formular


preguntas es mediante indicaciones, el completado automático
3
y pistas visuales.
Objetos visuales de
Preguntas y respuestas
Preguntas y respuestas escoge el mejor objeto visual en función

de los datos que se muestran. Por ejemplo, los números podrían


mostrarse como un gráfico de líneas, mientras que las ciudades
es más probable que se muestren como un mapa.

También puede indicar a Preguntas y respuestas qué objeto


visual debe utilizar agregándolo a su pregunta. Preguntas y
respuestas le facilitará una lista de tipos de objetos visuales
factibles. En el ejemplo anterior, podría preguntar, "¿Cuál es el

4 total de unidades por región en un gráfico circular?".

Para obtener más información, vea Creación de un objeto visual


con Preguntas y respuestas de Power BI .
Creación de sugerencias
de Preguntas y respuestas
personalizadas
Con Power BI, puede agregar sus propias sugerencias de preguntas

para otras personas que usen el cuadro de consulta de lenguaje


natural.

5
1

Uso de modelos de
aprendizaje profundo para
realizar predicciones sobre
datos especializados
BIENVENIDA
Use redes neuronales convolucionales y redes neuronales recurrentes

para analizar y predecir imágenes y texto con TensorFlow y Keras.

En este módulo, aprenderá a:

 Aplicar redes neuronales convolucionales a datos de imagen.

 Realizar predicciones de texto mediante redes neuronales


recurrentes.

Requisitos previos

Ninguno

2
Introducción 4 min

Aplicaciones comunes de aprendizaje profundo 3 min

Introducción a las CNN 5 min

Ejercicio: CNN 10 min

Revisión de las herramientas populares que se usan para el

aprendizaje profundo 3 min

Introducción a las RNN 5 min

Ejercicio: RNN 12 min

Resumen 2 min
INTRODUCCIÓN
El aprendizaje profundo ha experimentado un avance significativo en
los últimos años y se ha convertido en el área de última generación en

el campo de la inteligencia artificial. El aprendizaje profundo toma lo


que se ha hecho con las redes neuronales, lo amplía y lo mejora.

Es una familia de algoritmos de aprendizaje automático basados en


representaciones de datos de aprendizaje, en lugar de algoritmos que

resuelven específicamente una tarea. Por ejemplo, un modelo de visión

informática de aprendizaje profundo puede predecir objetos en una


3
imagen.

Del aprendizaje profundo procede todo el furor reciente sobre la

inteligencia artificial. Los últimos avances con el filtrado de redes


sociales, la visión informática, el reconocimiento de voz y el
procesamiento de lenguaje natural han generado aplicaciones fáciles

de usar que muchas usuarios utilizan en su vida diaria, puede que sin

ni siquiera saberlo.

El aprendizaje profundo usa variaciones de redes neuronales con varias


capas ocultas y en cada una transforma ligeramente los datos; en
última instancia, las distintas capas pueden reconocer características

diferentes, como un ojo en una imagen. Este proceso es la red neuronal


que aprende lo que representan los datos de entrada. Permite al

aprendizaje profundo obtener información sobre límites de clase


sofisticados y tendencias de datos que incluso los expertos humanos

podrían no ser capaces de aprender.

Los algoritmos de aprendizaje profundo pueden aprender por sí


mismos qué características se deben representar en cada capa de la

red. Pero la entrada del usuario determina el tamaño y el número de

capas ocultas y las funciones de activación que usan las capas.

Tipos de aprendizaje profundo

Las redes neuronales recurrentes (RNN) y las redes neuronales

profundas componen la mayoría de las aplicaciones de aprendizaje

profundo. Hay muchas variaciones de redes neuronales profundas para


adaptarse a distintas aplicaciones, pero en su núcleo son muy similares
a las redes neuronales que ya se han descrito.

4
Las RNN son una clase de red neuronal, que también se conoce como

modelos de secuencia. Son útiles para analizar y predecir datos que


están en una secuencia, como texto o música. Los avances en la

aplicación de RNN han ampliado correctamente su uso a videojuegos


complejos, como DotA 2.

Las redes neuronales profundas son redes neuronales con varias capas

ocultas; en ocasiones, las RNN se pueden considerar una red neuronal


profunda. Las redes neuronales convolucionales (CNN) son la otra
variante principal de las redes neuronales profundas que se usan en la
actualidad, principalmente para aplicaciones de visión informática,

pero también para reconocimiento de voz.


Las redes neuronales profundas son especialmente propensas al

sobreajuste y los tiempos de entrenamiento largos. Por este motivo, es


mejor dedicar una buena proporción del tiempo a preparar los datos,
para evitar entrenar un modelo durante dos días y después comprobar
que el conjunto de datos necesita más trabajo.

En este módulo, se realizará una introducción general de lo que existe


en el aprendizaje profundo y los tipos de problemas a los que se
podrían aplicar distintos tipos de modelos de aprendizaje profundo.

En este módulo, aprenderá a:

• Aplicar redes neuronales convolucionales a datos de imagen.

• Realizar predicciones de texto mediante redes neuronales


recurrentes.
5
1

Predicción de categorías con


la clasificación de aprendizaje
automático
BIENVENIDA
Use modelos de Machine Learning para clasificar datos. Cree un

modelo de regresión logística y modelos de máquinas de vectores de

soporte para predecir categorías como ganar o perder y especies de

árboles.

En este módulo, aprenderá a:

 Definir una clasificación.


 Crear modelos de máquinas de vectores de soporte y regresión

logística.
 Describir en qué consisten el entrenamiento, el error irreducible
y el error de Bayes.
2

Requisitos previos

Ninguno

Introducción 4 min

Clasificación binaria con regresión logística 7 min

Ejercicio: regresión logística 8 min

Revisión de la función de costos y el descenso de gradiente 3

min

Predicción de categorías con máquinas de vectores de soporte


6 min
Ejercicio: máquinas de vectores de soporte 8 min

Análisis de la precisión del modelo con datos de prueba 5 min

Mejora de las predicciones de categorización con máquinas de


vectores de soporte 5 min

Ejercicio: máquinas de vectores de soporte avanzadas 12 min

Resumen 2 min

3
INTRODUCCIÓN
La clasificación se puede considerar como la organización de
ejemplos en categorías. En el gráfico siguiente se muestra una
regresión logística, un ejemplo de un algoritmo de clasificación, donde
los valores se clasifican en dos categorías: clientes satisfechos y clientes

insatisfechos.

A diferencia de la regresión, la línea no es la predicción. Por el contrario,


4
la línea divide los puntos de datos para predecir categorías. Por
ejemplo, un punto de datos a la izquierda de la línea se prediría como
la categoría de cliente insatisfecho, en azul. A la derecha de la línea

estaría la categoría de cliente satisfecho, en verde.

Si ha realizado alguna ciencia de datos antes, es posible que esté


acostumbrado a ver la regresión logística con una sola característica,

con la etiqueta en el eje Y.

La clasificación es diferente a la regresión, donde se intenta predecir


un número en lugar de una categoría. Si se quiere predecir la velocidad

a la que puede volar un pájaro o el precio de una vivienda, se trataría


de un problema de regresión. Predecir si un cliente está satisfecho o

insatisfecho es un problema de clasificación.

En este módulo, aprenderá a:

• Definir una clasificación.

• Crear modelos de máquinas de vectores de soporte y regresión

logística.

• Describir en qué consisten el entrenamiento, el error irreducible


y el error de Bayes.

Hay muchos modelos de clasificación diferentes que se pueden usar. A


continuación vamos a usar un algoritmo de clasificación sencillo pero

eficaz: la regresión logística.


5
1

Principales Cloud Services:


Opciones de
almacenamiento de datos de
Azure
BIENVENIDA
En este módulo se analizan las ventajas del almacenamiento de datos
de Azure frente al almacenamiento local.

En este módulo, aprenderá a:

• Inspeccionar las opciones de almacenamiento de datos de

Azure

• Examinar la forma en que Azure puede satisfacer las demandas


empresariales de almacenaje y análisis de datos

• Comparar las opciones de datos de Azure con el


almacenamiento local

2
Requisitos previos

Ninguno

Introducción 1 min

Ventajas del uso de Azure para almacenar datos 6 min

Cómo puede el almacenamiento de datos de Azure satisfacer


las necesidades empresariales de almacenamiento 8 min

Comparación entre el almacenamiento de datos de Azure y el

almacenamiento local 4 min

Prueba de conocimientos 5 min

Resumen 1 min
INTRODUCCIÓN
Imagine que administra un portal de aprendizaje de ventas en línea
para la organización. La mayor parte del equipo de ventas suele estar
repartido entre diferentes áreas geográficas, por lo que el portal de
aprendizaje en línea es un requisito esencial. Es incluso más importante

a medida que la organización continúa aumentando el entrenamiento


de mejora de las aptitudes y el conocimiento para el personal de
3 ventas.

Los datos de aprendizaje incluyen vídeo de alta calidad, simulaciones


de ventas detalladas y repositorios de gran tamaño para mantener los

datos y el progreso de los alumnos. En la actualidad, todo el contenido

de aprendizaje se almacena en una ubicación local. Tiene un plan


dinámico para agregar nuevos cursos y le gustaría evitar la necesidad

de aumentar constantemente la capacidad de almacenamiento local.


Busca una solución de almacenamiento que sea segura, duradera,

escalable y fácilmente accesible desde cualquier parte del mundo.

Azure proporciona características de almacenamiento que satisfarán

todas sus necesidades empresariales.


Objetivos de aprendizaje

En este módulo, aprenderá a:

• Inspeccionar las opciones de almacenamiento de datos en


Azure

• Descubrir cómo el almacenamiento de datos de Azure puede

satisfacer sus demandas empresariales

• Comparar Azure Storage con el almacenamiento local

4
VENTAJAS DEL USO DE
AZURE PARA
ALMACENAR DATOS
Para solucionar los problemas de almacenamiento del portal de

aprendizaje en línea, se está planteando la posibilidad de almacenar los


datos en la nube. Pero le preocupa la seguridad, las copias de

seguridad y la recuperación ante desastres. Además, le preocupa lo

complicado que puede resultar administrar los datos hospedados en la


nube. Esto es lo que debe saber.

Las opciones de almacenamiento de datos de Azure se basan en la


5
nube, son seguras y escalables. Sus características encaran los

principales desafíos que plantea el almacenamiento en la nube y


proporcionan una solución de almacenamiento confiable y duradera.
1

Servicios principales Cloud


Services: Introducción a
Azure
BIENVENIDA
Comience a usar Azure creando y configurando su primer sitio web en

la nube.

Objetivos de este módulo:

• Aprender qué es Microsoft Azure y cómo se relaciona con la

informática en la nube.
• Implementar un sitio web con Azure App Service.

• Aprender a escalar verticalmente el sitio web para ofrecer más

capacidad de proceso.
• Usar Azure Cloud Shell para interactuar con el sitio web

Introducción 1 min

¿Qué es Azure? 5 min

Paseo por los servicios de Azure 10 min

Ejercicio: Creación de un sitio web hospedado en Azure 7 min

Ejercicio: Configuración de una instancia de App Service 5 min

Ejercicio: Acceso a una instancia de App Service mediante


Azure Cloud Shell 4 min

Prueba de conocimientos 3 min

Resumen 1 min
INTRODUCCIÓN
Ha oído tecnicismos sobre la nube: escala, elasticidad, microservicios.
Quizás haya observado que otras empresas han tenido éxito con la

nube y se ha preguntado cómo podría ayudarle a cumplir sus retos


empresariales o, incluso, a avanzar en su profesión. ¿Sabía que más del

90 % de las empresas de Fortune 500 cuentan con Microsoft Cloud?


3

La nube le ayuda en su vida diaria y a menudo está presente de un


modo del que ni siquiera es consciente. En este nuevo mundo
conectado, creemos que la tecnología crea oportunidades. Para seguir

el ritmo del mundo digital en constante cambio, comprender la


tecnología de nube puede ayudar a alinear su carrera profesional con
esta emocionante revolución.

En menos tiempo del que se tarda en almorzar, creará y configurará su

primer sitio web en Azure, un bloque de creación esencial para todo,

desde la transformación digital hasta la siguiente gran startup.

Objetivos de este módulo:

• Aprender qué es Microsoft Azure y cómo se relaciona con la

informática en la nube.
• Implementar y configurar un servidor web.

• Aprender a escalar verticalmente el servidor para ofrecer


más capacidad de proceso.

• Usar Azure Cloud Shell para interactuar con el servidor web

4
¿QUÉ ES AZURE?
Azure es la plataforma de informática en la nube de Microsoft. Azure

es un conjunto de servicios en la nube en expansión constante que


ayudan a la organización a cumplir los desafíos empresariales actuales

y futuros. Azure le ofrece la libertad de compilar, administrar e

implementar aplicaciones en una red global masiva mediante sus


herramientas y plataformas favoritas.

5
EJERCICIO: REGRESIÓN
LINEAL SIMPLE
Se probará la regresión lineal simple en Azure Notebooks, mediante la

predicción de la satisfacción del cliente con distintas recetas de

chocolatinas.

En los ejercicios de este módulo se usa Azure Notebooks. Es un recurso


de uso gratuito.

Si los vínculos siguientes no funcionan, tiene que configurar una cuenta

gratuita de Azure Notebooks y clonar el proyecto para este módulo.

1 Vea el repositorio de Python en GitHub o el repositorio de R en


GitHub para obtener instrucciones para comenzar.

1. Los usuarios de Python deben ir a la biblioteca.

2. Seleccione el ejercicio 02. Linear Regression - [Link].

3. Luego seleccione Run on Free Compute (Ejecutar en un


proceso gratuito).

4. Los usuarios de R deben ir a la biblioteca.

5. Seleccione el ejercicio 02. Linear Regression - [Link].

6. Después, seleccione "Run on Free Compute" (Ejecutar en un


proceso gratuito).
PREDICCIÓN DE VALORES
CON LA REGRESIÓN
LINEAL MÚLTIPLE
La regresión lineal en la que se usan varias características se

denomina regresión lineal múltiple. La regresión lineal múltiple es


similar a la regresión lineal simple, pero en lugar de usar una

característica para predecir una etiqueta, usa varias.

Considere un escenario en el que trabaja para una agencia reguladora

pública. Es el responsable de identificar los vehículos diésel con


emisiones muy tóxicas. Quiere crear un modelo para predecir qué
2
vehículos son los que van a producir más emisiones. Estos vehículos

estarán sujetos a costosas pruebas de emisiones.

En una versión básica de este modelo predictivo se podrían usar dos


características para realizar la predicción: el peso y la potencia. En el
gráfico siguiente se muestra que, cuando se trabaja con dos

características de entrada, el ajuste se realiza a un plano en lugar de


una línea. Un plano se puede considerar una extrusión bidimensional

de una línea, por lo que esto se puede seguir considerando una


regresión "lineal".
Es habitual usar cientos o miles de características, pero es

prácticamente imposible visualizarlas en forma de gráfico si hay más


de tres dimensiones.

Elección de características para la regresión lineal múltiple

Puede seleccionar las características que se van a usar para entrenar los

modelos. Usar las características adecuadas permitirá que los modelos


sean más precisos. Normalmente, las características correctas son

aspectos relacionados con

lo que se quiere medir o


predecir. Por ejemplo, si

va a usar un modelo de
aprendizaje automático
3
para tratar de identificar la
raza de un perro, es

posible que características


como la cola, el peso, la

altura y la forma de las


orejas sean bastante útiles, mientras que la edad del perro
seguramente no lo sea.

En la mayoría de los tipos de aprendizaje automático, la selección


personal de las características es importante para crear modelos
precisos.

Las características deben aparecer repetidamente en el conjunto de

datos, ya que los modelos necesitan muchos ejemplos para poder


aprender. Si ha recopilado datos sobre tres especies de flores para
predecir la longitud de sus pétalos, no se recomienda agregar un solo

ejemplo de una nueva especie.

4
EJERCICIO: REGRESIÓN
LINEAL MÚLTIPLE
La regresión lineal múltiple se usa normalmente en la ciencia, se

ejecuta con rapidez y muchas herramientas modernas pueden

encargarse de forma automática de las partes más difíciles.

En los ejercicios de este módulo se usa Azure Notebooks. Es un recurso


de uso gratuito.

Si los vínculos siguientes no funcionan, tiene que configurar una cuenta

gratuita de Azure Notebooks y clonar el proyecto para este módulo.

Vea el repositorio de Python en GitHub o el repositorio de R en


5
GitHub para obtener instrucciones para comenzar.

1. Los usuarios de Python deben ir a la biblioteca.

2. Seleccione el ejercicio 03. Multiple Linear Regression -


[Link].

3. Luego seleccione Run on Free Compute (Ejecutar en un

proceso gratuito).

4. Los usuarios de R deben ir a la biblioteca.

5. Seleccione el ejercicio 03. Multiple Linear Regression - [Link].

6. Después, seleccione "Run on Free Compute" (Ejecutar en un


proceso gratuito).
PREDICCIONES EN DATOS
NO LINEALES MEDIANTE
LA REGRESIÓN
POLINÓMICA
La regresión lineal es fácil de usar, pero los conjuntos de datos más
complejos pueden
requerir algoritmos más
sofisticados. Muchos

conjuntos de datos de la
vida real requieren un
6
modelo no lineal. Por

ejemplo, en el gráfico
siguiente puede ver que
una línea recta no prevé
con precisión las ventas
de café.

Para obtener un análisis de regresión en el trazado anterior, la línea


recta no produciría predicciones muy precisas. Se puede usar un
algoritmo de regresión no lineal para modelar estos datos: regresión
polinómica.
En realidad, la regresión polinómica es una simple modificación de

varias regresiones lineales, lo que permite que la regresión lineal


coincida con conjuntos de datos no lineales.

Como la regresión polinómica y la regresión lineal múltiple son fáciles

y rápidas de usar, es habitual abordar los problemas de regresión

mediante el uso de los dos algoritmos para hacerse una idea del
rendimiento de diferentes algoritmos en el conjunto de datos.

Uso de modelos
complejos

Un polinomio es un tipo
de expresión

7 matemática que puede

ser costosa de calcular,


pero que se puede

ajustar a tendencias muy


complejas. Aunque el
uso de la regresión polinómica es muy similar a la regresión lineal

múltiple, en segundo plano el modelo es más elaborado. A medida que

aumenta el tiempo de entrenamiento cuando los modelos son más


complejos, es fundamental asegurarse de que los datos están en un
formato adecuado.

Para aumentar la posibilidad de tener un proyecto de inteligencia

artificial correcto, se debe asignar una gran parte del tiempo a la


recopilación y preparación iniciales de datos de calidad. Después de
asegurarse de que los datos son correctos, puede experimentar con

diferentes algoritmos para aumentar la precisión del modelo.

Los conjuntos de datos de calidad no contienen duplicados, y las


características correctas no contienen valores que faltan o puntos de

datos incorrectos. A menudo no faltan datos pero son incorrectos,

como tener un 0 para la altura de un niño. Puede ahorrar mucho tiempo


si comprueba los puntos de datos inexactos o incorrectos al principio,
como tener un valor negativo en una columna de valores que solo
deberían ser positivos.

A continuación se creará un modelo de regresión polinómica en Azure

Notebooks.

8
EJERCICIO: REGRESIÓN
POLINÓMICA
En los ejercicios de este módulo se usa Azure Notebooks. Es un

recurso de uso gratuito.

Si los vínculos siguientes no funcionan, tiene que configurar una cuenta


gratuita de Azure Notebooks y clonar el proyecto para este módulo.

Vea el repositorio de Python en GitHub o el repositorio de R en


GitHub para obtener instrucciones para comenzar.

1. Los usuarios de Python deben ir a la biblioteca.

9 2. Seleccione el ejercicio 04. Polynomial Regression -


[Link].

3. Luego seleccione Run on Free Compute (Ejecutar en un


proceso gratuito).

4. Los usuarios de R deben ir a la biblioteca.

5. Seleccione el ejercicio 04. Polynomial Regression - [Link].

6. Después, seleccione "Run on Free Compute" (Ejecutar en un

proceso gratuito).
RESUMEN
En este módulo, se han presentado la regresión y el modelado de
conjuntos de datos mediante modelos de regresión. Ha visto los
conceptos fundamentales de regresión, regresión lineal simple,

regresión lineal múltiple y regresión polinómica.

10 Ahora que ha revisado este módulo, debe ser capaz de:

• Definir la regresión.

• Crear modelos predictivos con variaciones de regresión lineal.

• Realizar predicciones en datos no lineales con regresión.

Enhorabuena, este es el final del módulo. En el siguiente, se realizará

una introducción a la clasificación.


EJERCICIO: MÁQUINAS DE
VECTORES DE SOPORTE
En los ejercicios de este módulo se usa Azure Notebooks. Es un

recurso de uso gratuito.

Si los vínculos siguientes no funcionan, tiene que configurar una cuenta


gratuita de Azure Notebooks y clonar el proyecto para este módulo.

Vea el repositorio de Python en GitHub o el repositorio de R en


GitHub para obtener instrucciones para comenzar.

1. Los usuarios de Python deben ir a la biblioteca.

1
2. Seleccione el ejercicio 06. Support Vector Machines -
[Link].

3. Luego seleccione Run on Free Compute (Ejecutar en un


proceso gratuito).

4. Los usuarios de R deben ir a la biblioteca.

5. Seleccione el ejercicio 06. Support Vector Machines - [Link].

6. Luego seleccione Run on Free Compute (Ejecutar en un

proceso gratuito).
ANÁLISIS DE LA
PRECISIÓN DEL MODELO
CON DATOS DE PRUEBA
Se necesitan datos de entrenamiento para entrenar un modelo. Una

vez entrenado, es necesario comprobar cómo funciona el modelo con


otros conjuntos de datos similares. Para probar esto en un modelo, se

necesitan datos de prueba independientes.

Es posible evaluar las predicciones de modelos entrenados con datos

de prueba. Como se dispone de etiquetas reales de los datos de


prueba, se puede comparar la etiqueta que predice un modelo con la
2
etiqueta real. Esto da la precisión del modelo en los datos en los que

no se ha entrenado e indica si es tan bueno en los datos nuevos como


lo era en los datos de entrenamiento.

Cuanto mayor sea el conjunto de entrenamiento, más preciso puede


ser el modelo en general. Cuanto mayor sea el conjunto de prueba,

más confianza se puede tener en la precisión del modelo con nuevos


datos. Así, cuantos más datos haya, mejor.
Normalmente se empieza con un conjunto de datos grande y se divide

en datos de entrenamiento y de prueba. La cantidad de datos que se


destina a pruebas y entrenamiento es diferente para cada aplicación,
aunque es normal empezar por asignar aproximadamente el 80 % de
los datos a entrenamiento y el 20 % a pruebas.

Sobreajuste

La mayoría de los conjuntos de datos tienen ruido: fluctuaciones


irregulares que no interesan y pueden ocultar lo que se intenta medir

o visualizar. Si se recopilan dos conjuntos de datos del mismo tema


(por ejemplo, tamaño de las hojas frente a circunferencia del tronco),
estos conjuntos de datos deben tener aproximadamente la misma
relación entre variables, aunque ruido diferente. El sobreajuste se
produce cuando se entrena un modelo de forma tan intensiva en los
3
datos de entrenamiento que no solo aprende el patrón que interesa,

sino también el ruido de ese conjunto de datos concreto. Dado que el

ruido es completamente diferente entre conjuntos de datos, eso


significa que el modelo no funciona bien en otros conjuntos de

datos. En la práctica, un modelo muestra sobreajuste cuando tiene


una alta precisión en un conjunto de entrenamiento y una baja
precisión en el conjunto de prueba.

La línea negra del gráfico siguiente es un ejemplo de sobreajuste. La


línea roja es más generalizada. Aunque la línea roja puede ser menos

precisa que la línea verde en el conjunto de entrenamiento, en el

conjunto de prueba y en futuros conjuntos de datos proporciona un


resultado mucho mejor.
4
El sobreajuste tiende a verse favorecido por dos factores principales.

En primer lugar, puede ser más probable cuando los conjuntos de


datos de entrenamiento son demasiado pequeños o no tienen
suficiente varianza como para ser plenamente representativos de datos

del mundo real. En segundo lugar, es más probable que se produzca


sobreajuste en modelos que son complejos que en aquellos que son
sencillos. En términos generales, cuanto más complejo es un modelo,
más datos de entrenamiento se necesitan para evitar el sobreajuste.

Pero se debe encontrar un equilibrio, porque si un modelo se vuelve


demasiado simple, tampoco se va a ajustar bien a los datos de

entrenamiento o de prueba.

Ajuste deficiente
Los modelos que son demasiado sencillos o no tienen el suficiente

entrenamiento no pueden encontrar verdaderas relaciones en los


datos. Esto se denomina ajuste deficiente y se refleja en una mala
precisión tanto en los datos de entrenamiento como en los de prueba.
El ajuste deficiente suele producirse cuando no hay suficientes datos

de entrenamiento, cuando no se usan características útiles o cuando el

tipo de modelo no es adecuado para los datos disponibles. Por


ejemplo, el gráfico siguiente muestra un ajuste deficiente en un modelo

lineal que intenta predecir un problema no lineal. Aunque la línea

separa un poco los puntos verdes y azules, es probable que una línea

no lineal funcione mejor.

Para solucionar problemas de ajuste deficiente, puede pasar a un

algoritmo más complejo (como una SVM), obtener más datos de


entrenamiento o agregar más características al conjunto de datos.
Calidad de los datos

La mayor parte del trabajo de creación de un sistema de IA es pensar

qué datos se necesitan, cómo obtenerlos y, de vital importancia,


evaluar la calidad de los datos. La detección de valores que faltan o son

incorrectos y la eliminación o la corrección de los datos se

denominan limpieza de datos.

En el aprendizaje automático y en las estadísticas es habitual tener


conjuntos de datos a los que les faltan valores. Pero es importante

tener cuidado a la hora de tratar estos valores que faltan. Por ejemplo,
imagine que estamos trabajando con resultados de pruebas médicas.
No se realizan todas las pruebas médicas posibles en cada persona, lo
que deja espacios en blanco en el conjunto de datos. Es importante ser
cuidadoso con estas entradas vacías. Si se usa un 0, por ejemplo, si no
6
se ha realizado ninguna prueba de presión sanguínea, y se alimenta un

modelo de IA con estos datos, ese modelo asume que algunas

personas tienen mediciones de presión sanguínea de 0 mm/Hg. Es


probable que esto signifique que el modelo de Machine Learning no

funcione bien
Uso de una arquitectura de n niveles

Un patrón de arquitectura que se puede usar para compilar sistemas

de acoplamiento flexible es de n niveles.

Una arquitectura de n niveles divide una aplicación en dos o más

niveles lógicos. Desde el punto de vista de la arquitectura, un nivel

superior puede acceder a los servicios de un nivel inferior, pero este


último no podrá acceder nunca a un nivel superior.

Los niveles ayudan a separar los problemas y están diseñados


específicamente para reutilizarse. El uso de una arquitectura con niveles

también simplifica el mantenimiento. Los niveles se pueden actualizar


o reemplazar de forma independiente, y se pueden insertar nuevos
niveles si es necesario.
1
Tres niveles hace referencia a una aplicación de n niveles que consta de
tres niveles. La aplicación web de comercio electrónico sigue esta

arquitectura de tres niveles:

 El nivel web proporciona la interfaz web a los usuarios a través


de un navegador.

 El nivel de aplicación ejecuta la lógica de negocios.

 El nivel de datos incluye las bases de datos y cualquier otro

tipo de almacenamiento que contenga pedidos del cliente e


información de los productos.

En la ilustración siguiente se muestra el flujo de una solicitud desde el

usuario al nivel de datos.


2

Cuando el usuario hace clic en el botón para realizar el pedido, la

solicitud se envía al nivel web junto con la dirección del usuario y la


información de pago. El nivel web pasa esta información al nivel de
aplicación, en el que se validará la información de pagos y se

comprobará el inventario. El nivel de aplicación puede almacenar el

pedido en el nivel de datos para su posterior captura y procesamiento.

El sitio de comercio electrónico que se ejecuta en Azure

Azure proporciona muchas formas diferentes de hospedar aplicaciones

web, desde entornos completamente preconfigurados que hospedan


el código a máquinas virtuales que se pueden configurar, personalizar

y administrar.

Supongamos que decide ejecutar el sitio de comercio electrónico en


máquinas virtuales. Este podría ser su aspecto en el entorno de prueba

que se ejecuta en Azure. En la ilustración siguiente se muestra una

arquitectura de tres niveles que se ejecuta en máquinas virtuales con


características de seguridad habilitadas para restringir las solicitudes
entrantes.

3
4

Vamos a analizar esto más detalladamente.


¿Qué es una región de Azure?

Una región es uno o varios centros de datos de Azure dentro de una

ubicación geográfica específica. Este de EE. UU., Oeste de EE. UU. y


5
Europa del Norte son ejemplos de regiones. En esta instancia, ve que

la aplicación se está ejecutando en la región Este de EE. UU.


¿Qué es una red virtual?

Una red virtual es una red aislada lógicamente en Azure. Las redes

virtuales de Azure le resultarán familiares si ya ha configurado redes en


Hyper-V, VMware o incluso en otras nubes públicas. Una red virtual

permite que los recursos de Azure se comuniquen de forma segura

entre ellos, con Internet y con las redes locales. El ámbito de una red
virtual es una sola región; pero se pueden conectar entre sí varias redes
virtuales de otras regiones mediante el emparejamiento de red virtual.

Las redes virtuales se pueden segmentar en una o más subredes. Las


subredes ayudan a organizar y proteger los recursos en secciones
discretas. Los niveles web, de aplicación y de datos incluyen una sola
máquina virtual cada uno. Las tres máquinas virtuales están en la misma
red virtual, pero en subredes independientes.
6
Los usuarios interactúan con el nivel web directamente, por lo que la
máquina virtual tiene una dirección IP pública junto a una privada. Los

usuarios no interactúan con los niveles de aplicación ni de datos, por


lo que estas máquinas virtuales solo tienen una dirección IP privada

cada una.

También puede mantener los niveles de servicio o datos en la red local,

colocando su nivel web en la nube, pero manteniendo un control


estricto sobre otros aspectos de la aplicación. Una puerta de enlace

VPN (o puerta de enlace de red virtual) habilita este escenario. Puede


proporcionar una conexión segura entre una instancia de Azure Virtual

Network y una ubicación local a través de Internet.

Azure administra el hardware físico de forma automática. Puede


configurar las redes virtuales y las puertas de enlace mediante software,
lo que permite tratar una red virtual como si fuera una red propia. Se

elige a qué otras redes puede llegar la red virtual, ya sea Internet u
otras redes del espacio de direcciones IP privado.

7
¿Qué es un grupo de seguridad de red?

Un grupo de seguridad de red, o NSG, permite o deniega el tráfico de


red entrante a los recursos de Azure. Puede considerar un grupo de
seguridad de red como un firewall en el nivel de nube de la red.

Por ejemplo, observe que la máquina virtual de la capa web permite el


tráfico entrante en los puertos 22 (SSH) y 80 (HTTP). Este grupo de

seguridad de red de la máquina virtual permite el tráfico entrante a


través de estos puertos de todos los orígenes. Puede configurar un

grupo de seguridad de red para que acepte tráfico únicamente de


orígenes conocidos, como direcciones IP en las que confíe.
Nota

El puerto 22 le permite conectarse directamente a los sistemas Linux a

través de SSH. Aquí se muestra el puerto 22 abierto con fines de


aprendizaje. En la práctica, puede configurar el acceso VPN a la red

virtual para aumentar la seguridad.

8
RESUMEN
Ahora, la aplicación de tres niveles se ejecuta en Azure en la región Este
de EE. UU. Una región es uno o varios centros de datos de Azure dentro

de una ubicación geográfica específica.

Cada nivel solo puede acceder a los servicios de un nivel inferior. La

máquina virtual que se ejecuta en el nivel web tiene una dirección IP

pública porque recibe tráfico de Internet. Las máquinas virtuales de los


niveles inferiores (de aplicación y de datos), tienen direcciones IP

privadas porque no se comunican directamente a través de Internet.

Las redes virtuales permiten agrupar y aislar sistemas relacionados.


Puede definir grupos de seguridad de red para controlar qué tráfico
puede pasar a través de una red virtual.
9

La configuración que ha visto aquí es un buen punto de partida. Pero

cuando implemente el sitio de comercio electrónico en producción en


la nube, es probable que experimente los mismos problemas que
experimentó en la implementación local.
ESCALADO CON AZURE
LOAD BALANCER
Ahora ya tiene el sitio en funcionamiento en Azure. Pero, ¿cómo puede

asegurarse de que el sitio funcione 24 horas al día los 7 días de la

semana?

Por ejemplo, ¿qué ocurre cuando se necesita realizar el mantenimiento


semanal? El servicio no estará disponible durante el período de

mantenimiento. Y dado que usuarios de todo el mundo utilizan el sitio,

no hay ninguna hora buena para efectuar el mantenimiento de los


sistemas. También se pueden producir problemas de rendimiento si se
1
conectan demasiados usuarios al mismo tiempo.

¿Qué son la disponibilidad y la alta disponibilidad?


Disponibilidad se refiere a cuánto tiempo está el servicio en

funcionamiento sin interrupciones. Alta disponibilidad, o altamente


disponible, hace referencia a un servicio que está en funcionamiento
durante un largo período de tiempo.

Sabe lo frustrante que es no poder acceder a la información que

necesita. Piense en las redes sociales o los sitios de noticias que visita
a diario. ¿Puede acceder siempre al sitio o recibe a menudo mensajes
de error del tipo "503 Servicio no disponible"?

Quizás ha escuchado hablar de términos como "cinco nueves de


disponibilidad". "Cinco nueves de disponibilidad" significa que se
garantiza que el servicio estará operativo un 99,999 por ciento del
tiempo. Aunque es difícil lograr una disponibilidad del 100 por cien,
muchos equipos procuran alcanzar al menos los cinco nueves.
2
¿Qué es la resistencia?

Resistencia hace referencia a la capacidad de un sistema de permanecer

operativo en situaciones irregulares.


Entre estas condiciones se incluyen:

• Desastres naturales

• Mantenimiento del sistema, planeado o no, incluidas las


actualizaciones de software y las revisiones de seguridad.

• Picos de tráfico hacia el sitio

• Amenazas efectuadas por usuarios malintencionados como,

por ejemplo, ataques por denegación de servicio distribuido o


DDoS

Imagine que el equipo de marketing quiere hacer una oferta especial

para promocionar una nueva línea de suplementos vitamínicos. Es


probable que se produzca un gran pico de tráfico durante este tiempo.
3 Este pico podría saturar el sistema de procesamiento y hacer que se

haga más lento o que se detenga, lo cual podría provocar la decepción


de los usuarios. Es posible que haya experimentado esta decepción

usted mismo. ¿Ha intentado alguna vez acceder a una venta en línea y
se ha encontrado con que el sitio web no responde?
¿Qué es un equilibrador de carga?

Un equilibrador de carga distribuye el tráfico uniformemente entre


todos los sistemas de un grupo. Un equilibrador de carga le puede
4
ayudar a lograr alta disponibilidad y resistencia.

Supongamos que empieza por agregar máquinas virtuales adicionales,


cada una de ellas configurada de forma idéntica, a todos los niveles. La
idea es tener sistemas adicionales listos en caso de que uno deje de

funcionar o esté atendiendo a demasiados usuarios al mismo tiempo.

El problema es que cada máquina virtual tendría su propia dirección IP.

Además, no tiene forma de distribuir el tráfico en caso de que un


sistema deje de funcionar o esté ocupado. ¿Cómo puede conectar las

máquinas virtuales para que parezcan un solo sistema al usuario?

La respuesta es usar un equilibrador de carga para distribuir el tráfico.

Este se convierte en el punto de entrada para el usuario. El usuario no


sabe (ni es necesario que lo haga) qué sistema elige el equilibrador de

carga para recibir la solicitud.


En la ilustración siguiente se muestra el rol del equilibrador de carga.

El equilibrador de carga recibe la solicitud del usuario y la dirige a una

de las máquinas virtuales del nivel web. Si una máquina virtual no está
disponible o no responde, el equilibrador de carga dejará de enviarle
5
tráfico. En ese caso, el equilibrador de carga dirigirá el tráfico a uno de

los servidores con capacidad de respuesta.

El equilibrio de carga le permite ejecutar tareas de mantenimiento sin


interrumpir el servicio. Por ejemplo, puede alternar el período de
mantenimiento de cada máquina virtual. Durante el período de

mantenimiento, el equilibrador de carga detecta que la máquina virtual


no responde y dirige el tráfico a otras máquinas virtuales del grupo.

Para el sitio de comercio electrónico, los niveles de aplicación y de


datos también pueden tener un equilibrador de carga. Todo depende
de lo que requiera el servicio.
¿Qué es Azure Load Balancer?

Azure Load Balancer es un servicio de equilibrador de carga

proporcionado por Microsoft que se ocupa del mantenimiento


automáticamente. Load Balancer admite escenarios de entrada y de

salida, proporciona baja latencia y alto rendimiento, y puede escalar

hasta millones de flujos para todas las aplicaciones de Protocolo de


control de transmisión (TCP) y Protocolo de datagramas de usuario
(UDP). Puede usar Load Balancer con el tráfico entrante de Internet, el
tráfico interno a través de los servicios de Azure, enrutamiento de

puerto para tráfico específico o conectividad de salida para las


máquinas virtuales de la red virtual.

La configuración manual de un software de equilibrador de carga típico


en una máquina virtual tiene una desventaja: ahora tiene un sistema
6
adicional que necesita mantener. Si el equilibrador de carga deja de
funcionar o necesita un mantenimiento rutinario, volverá a tener el

problema original.

Pero si usa Azure Load Balancer en su lugar, no hay ninguna


infraestructura ni software que mantener. Las reglas de reenvío se

definen en función del puerto y la dirección IP de origen a un conjunto


de puertos y direcciones IP de destino.

En la ilustración siguiente se muestra el rol de los equilibradores de

carga de Azure en una arquitectura de varios niveles.


7

Azure Application Gateway

Si todo el tráfico es HTTP, una mejor opción consiste en usar Azure

Application Gateway. Application Gateway es un equilibrador de carga


diseñado para las aplicaciones web. Usa Azure Load Balancer en el nivel

de transporte (TCP) y aplica sofisticadas reglas de enrutamiento


basadas en direcciones URL para admitir varios escenarios avanzados.

8 Este tipo de enrutamiento se conoce como equilibrio de carga de la

capa de aplicación (capa OSI 7), ya que entiende la estructura del


mensaje HTTP.

Estas son algunas de las ventajas del uso de Azure Application Gateway
a través de un equilibrador de carga simple:

 Afinidad de cookies. Resulta útil cuando se quiere mantener

una sesión de usuario en el mismo servidor back-end.

 Terminación de SSL. Application Gateway puede administrar


los certificados SSL y pasar tráfico sin cifrar a los servidores

back-end para evitar la sobrecarga del cifrado y el descifrado.


También admite el cifrado de un extremo a otro para las

aplicaciones que lo requieran.


 Firewall de aplicaciones web. Application Gateway admite un

firewall de aplicaciones web (WAF) sofisticado con supervisión


y registro detallados para detectar ataques malintencionados
contra la infraestructura de red.

 Rutas basadas en reglas de dirección URL. Application

Gateway permite enrutar el tráfico en función de patrones de


URL, dirección IP y puerto de origen a la dirección IP y puerto
de destino. Esto resulta útil cuando se configura una red de

entrega de contenido.

 Reescritura de encabezados HTTP. Puede agregar o quitar


información de los encabezados HTTP de entrada y salida de
cada solicitud para habilitar escenarios de seguridad

importantes, o bien eliminar información confidencial como los


9
nombres de servidor.

¿Qué es una red de entrega de contenido?

Una red de entrega de contenido (CDN) es una red distribuida de


servidores que puede proporcionar contenido web a los usuarios de

manera eficaz. Es una forma de proporcionar contenido a los usuarios


en su región local para minimizar la latencia. La CDN se puede

hospedar en Azure o en cualquier otra ubicación. El contenido se puede


almacenar en caché en nodos físicos estratégicamente ubicados en
todo el mundo y así proporcionar un mejor rendimiento para los

usuarios finales. Entre los escenarios de uso típicos se incluyen

aplicaciones web que contengan contenido multimedia, un evento de

lanzamiento de un producto en una región determinada o cualquier


evento en el que se espera un requisito de mayor ancho de banda en

una región determinada.

¿Qué sucede con DNS?

10
DNS o Sistema de nombres de dominio, es una forma de asignar

nombres descriptivos a sus direcciones IP. DNS se puede considerar


como la agenda de teléfonos de Internet.

Por ejemplo, su nombre de dominio, [Link], se podría asignar a

la dirección IP del equilibrador de carga en el nivel web, [Link].

Puede aportar su propio servidor DNS o usar Azure DNS, un servicio

de hospedaje para dominios DNS que se ejecuta en la infraestructura


de Azure.

En la ilustración siguiente se muestra Azure DNS. Cuando el usuario

navega a [Link], Azure DNS enruta el tráfico al equilibrador de

carga.
11
RESUMEN
Con el equilibrio de carga en funcionamiento, el sitio de comercio

electrónico tiene ahora una alta disponibilidad y resistencia. Si realiza


tareas de mantenimiento o recibe un repunte del tráfico, el equilibrador

de carga puede distribuir el tráfico a otro sistema disponible.

Aunque puede configurar su propio equilibrador de carga en una


máquina virtual, Azure Load Balancer reduce el mantenimiento ya que
12 no hay ninguna infraestructura o software que mantener.

DNS asigna nombres descriptivos a las direcciones IP, de forma

parecida a como una agenda de teléfonos asigna nombres de personas


o empresas a números de teléfono. Puede aportar su propio servidor
DNS o usar Azure DNS.
REDUCCIÓN DE LA
LATENCIA CON AZURE
TRAFFIC MANAGER
Anteriormente ha visto cómo Azure Load Balancer ayuda a lograr

una alta disponibilidad y a minimizar los tiempos de inactividad.

Aunque el sitio de comercio electrónico tiene una alta disponibilidad,


esto no soluciona el problema de la latencia o de la aparición de

resistencia entre diferentes regiones geográficas.

1
¿Cómo puede hacer que su sitio, que se encuentra en Estados Unidos,
se cargue más rápido para los usuarios que se encuentran en Europa o
en Asia?

¿Qué es la latencia de red?


La Latencia hace referencia al tiempo que tardan los datos en viajar a

través de la red. La latencia normalmente se mide en milisegundos.

Compare la latencia con el ancho de banda. El ancho de banda hace


referencia a la cantidad de datos que caben en la conexión. La latencia

se refiere al tiempo que tardan esos datos en llegar a su destino.

Factores como el tipo de conexión que usa y cómo está diseñada la

aplicación pueden afectar la latencia. Pero quizás el factor más


importante es la distancia.

Piense que su sitio de comercio electrónico en Azure se encuentra en

la región Este de EE. UU. Normalmente se debería tardar menos tiempo


en transferir datos a Atlanta (a una distancia aproximada de 650
kilómetros) que en transferirlos a Londres (a una distancia aproximada

2 de 6500 kilómetros).

El sitio de comercio electrónico incluye HTML estándar, CSS, JavaScript


e imágenes. En caso de que el sitio tenga muchos archivos la latencia

de red puede aumentar. ¿Cómo se puede reducir la latencia para los


usuarios que se encuentran lejos geográficamente?

Escalado horizontal en diferentes regiones

Recuerde que Azure ofrece centros de datos en regiones de todo el

mundo.
Piense en el costo de crear un centro de datos. Los costos de
equipamiento no son el único factor. Debe proporcionar energía,

refrigeración y personal para mantener los sistemas en funcionamiento

3 en cada ubicación. Puede ser prohibitivo replicar su centro de datos


por completo. Pero si lo hace con Azure puede costar mucho menos
porque Azure ya dispone del equipamiento y del personal.

Una manera de reducir la latencia es proporcionar copias exactas de su


servicio en más de una región. En la siguiente ilustración se muestra un

ejemplo de una implementación global.


En el diagrama se muestra el sitio de comercio electrónico en ejecución

en tres regiones de Azure: Este de EE. UU., Europa del Norte y Asia
Pacífico. Observe el nombre de DNS para cada uno. ¿Cómo puede
conectar los usuarios al servicio más cercano desde el punto de vista
geográfico, pero en el dominio [Link]?

Uso de Traffic Manager para enrutar a los usuarios al punto de


conexión más cercano

Una respuesta es Azure Traffic Manager. Traffic Manager usa el

servidor DNS que está más próximo al usuario para dirigir el tráfico de

usuario a un punto de conexión distribuido globalmente.

En la ilustración siguiente se muestra el rol de Traffic Manager.


Traffic Manager no ve el tráfico que circula entre el cliente y el servidor.

En su lugar, dirige al explorador web del cliente a un punto de conexión


preferido. Traffic Manager puede enrutar tráfico de varias formas
diferentes como, por ejemplo, al punto de conexión con la latencia más

baja.

Aunque no aparece aquí, esta configuración también puede incluir la


5
implementación local en ejecución en California. Puede conectar Traffic
Manager a sus propias redes locales, lo cual le permite mantener la

inversión ya existente en el centro de datos. O bien, puede mover la


aplicación por completo a la nube. La elección es suya.

Comparación entre Azure Load Balancer y Traffic Manager


Azure Load Balancer distribuye el tráfico dentro de la misma región

para hacer que los servicios tengan alta disponibilidad y resistencia.


Traffic Manager funciona en el nivel de DNS y dirige al cliente a un
punto de conexión preferido. Este punto de conexión puede estar en
la región más cercana al usuario.

Ambos, Load Balancer y Traffic Manager, le ayudan a que los servicios


sean más resistentes, pero de forma ligeramente distintas. Cuando
Load Balancer detecta una máquina virtual que no responde, dirige el
tráfico a otra máquina virtual del grupo. Traffic Manager supervisa el

estado de los puntos de conexión. Cuando Traffic Manager encuentra


un punto de conexión que no responde, dirige el tráfico al siguiente
punto de conexión más cercano que responda.

Resumen de reducción de la latencia con Azure Traffic Manager


6
La distancia geográfica es uno de los factores más importantes que

contribuye a la latencia. Con Traffic Manager en funcionamiento, puede


hospedar copias exactas de su servicio en varias regiones geográficas.
De este modo, los usuarios de Estados Unidos, Europa y Asia tienen
todos una buena experiencia al usar el sitio de comercio electrónico.
RESUMEN
Ha aprendido tan solo algunas de las formas en que los servicios de

red de Azure pueden ayudar a reducir la latencia y a hacer que las


aplicaciones y los servicios tengan una mayor disponibilidad.

Con el equilibrio de carga y la distribución global en marcha, el sitio de

comercio electrónico está listo para presentarse al mundo. Los usuarios


acceden al dominio que está más cercano geográficamente. Cada
7 dominio tiene conmutación por error integrada, lo cual ayuda a que

todos los usuarios tengan una gran experiencia. Las cifras ya muestran
un aumento del tráfico y el negocio está en alza.
Ahora echemos un vistazo más de cerca a los servicios en aplicaciones

y agentes inteligentes. Algunos de estos servicios están integrados en


los modelos de IA existentes, pero también puede usar sus datos para
construir y entrenar automáticamente algoritmos que se ajusten a sus
necesidades.

Servicios cognitivos de azure

Los servicios cognitivos son una colección de modelos de IA pre-


entrenados específicos de dominio que se pueden personalizar con sus

datos. Se clasifican en términos generales en visión, habla, lenguaje y


búsqueda. Para obtener más información sobre cada servicio, consulte
los enlaces en la sección de recursos.
1
Servicio de bot de Azure

Un bot, o agente de IA, es un programa de computadora diseñado para


imitar las acciones de una persona. Es un software que puede ejecutar
comandos, responder mensajes o realizar tareas rutinarias como
búsquedas en línea, ya sea automáticamente o con mínima
intervención humana, y a menudo se usa en combinación.

Azure Bot Service , que habilita agentes de IA, es un marco poderoso

para acelerar el desarrollo de bots utilizando un entorno integrado y


plantillas preconstruidas. Proporciona herramientas para construir,
probar, implementar y administrar bots inteligentes, todo en un solo

lugar. A través del marco modular y extensible proporcionado por el

Kit de desarrollo de software (SDK), los desarrolladores pueden


Vision hace posible que las aplicaciones y los

servicios identifiquen y analicen con precisión


el contenido de las imágenes y los videos.

Visión

Los servicios de voz pueden convertir el

lenguaje hablado en texto, o producir una


voz con sonido natural a partir del texto

usando fuentes de voz estándar (o


Habla
personalizables).

Los servicios de idiomas pueden comprender


el significado del texto no estructurado o

2 reconocer la intención del hablante.

Idioma

Los servicios de conocimiento crean ricos


recursos de conocimiento que se integran en
aplicaciones y servicios.

Conocimiento

Habilite las aplicaciones y los servicios para

aprovechar el poder de un motor de

búsqueda sin anuncios a escala web. Use los


servicios de búsqueda para encontrar
Buscar
información en miles de millones de páginas
web, imágenes, videos y resultados de
búsqueda de noticias.

aprovechar las plantillas para crear bots que brinden comprensión del
habla, lenguaje, preguntas y respuestas, y más.

Puede combinar las capacidades de Azure Cognitive Services con


nuestro servicio Azure Bot y atraer a su audiencia fácilmente a través

de múltiples canales.

Exploremos algunos escenarios clave relacionados con el Servicio de


bot de Azure: agentes de comercio, bots de información y bots de
productividad. Con cada escenario, revise el diagrama para ver cómo

los componentes y servicios subyacentes trabajan juntos para habilitar


3
las capacidades de IA.

Explore los escenarios de aplicaciones y agentes de Azure

Agente de comercio

Juntos, los servicios Azure Bot Service y Language Understanding


permiten a los desarrolladores crear interfaces de conversación para
diversos escenarios en la banca, los viajes, el entretenimiento y otras

industrias. Por ejemplo, el conserje de un hotel puede usar un bot para


mejorar el correo electrónico tradicional y las interacciones telefónicas

al validar a un cliente a través de Azure Active Directory y luego usar


Azure Cognitive Services para procesar mejor las solicitudes de los
clientes de manera contextual mediante texto y voz. El servicio de
reconocimiento de voz se puede agregar para admitir comandos de

voz.

Fluya a través de lo anterior:

1. Un cliente inicia sesión en su aplicación móvil.

2. Azure Active Directory B2C autentica al usuario.

4
3. Usando el Bot de aplicaciones personalizado, el usuario solicita

información sobre una reserva.

4. Cognitive Services ayuda a procesar la solicitud del lenguaje

natural.

5. La respuesta es revisada por el cliente, quien puede refinar la


pregunta utilizando una conversación natural. Supongamos
que el cliente desea actualizar el horario de salida. Pueden

seguir adelante y solicitar el cambio.

6. Una vez que el usuario está satisfecho con los resultados, el


Application Bot actualiza la reserva del cliente.

7. Application insights reúne telemetría de tiempo de ejecución


para ayudar al desarrollo con el rendimiento y uso de Bot.
Información bot

Este bot puede responder preguntas definidas en un conjunto de

conocimientos o preguntas frecuentes (FAQ) con Azure Cognitive


Services QnA Maker y responder más preguntas abiertas con Azure

Search.

Fluya a través de lo anterior:


5
1. Se inicia la aplicación Bot.

2. Azure Active Directory valida la identidad del usuario.

3. El bot verifica qué tipo de consultas son compatibles.

4. Cognitive Services devuelve un FAQ creado con QnA Maker.

5. Se define una consulta válida.

6. El bot envía la consulta a Azure Search, que devuelve

información sobre los datos de la aplicación.

7. Application insights reúne telemetría de tiempo de ejecución

para ayudar al desarrollo con el rendimiento y uso de Bot.

Bot de productividad empresarial


Puede combinar Azure Bot Service con Language Understanding para

crear potentes bots de productividad empresarial. Estos le permiten


optimizar las actividades de trabajo comunes mediante la integración
de sistemas externos, como el calendario de Office 365, los casos de
clientes almacenados en Dynamics CRM y mucho más.

6 Fluya a través de lo anterior:

1. Un usuario accede al bot de productividad empresarial.

2. Azure Active Directory valida la identidad del usuario.

3. El bot consulta el calendario de Office 365 del empleado a

través de Azure Graph.

4. Usando datos del calendario, el bot accede a la información del


caso en Dynamics CRM.

5. La información se devuelve al empleado que puede filtrar los

datos sin abandonar el Bot.


6. Application insights reúne telemetría de tiempo de ejecución

para ayudar a los desarrolladores a mejorar el rendimiento y el


uso del bot.

Sugerencia

Puede encontrar más detalles sobre los productos y servicios de Azure

para la minería del conocimiento, el aprendizaje automático y las

aplicaciones y agentes de IA mediante la pestaña de productos en


[Link] en la unidad "Resumen y recursos" al final del módulo.

Familiarícese con los elementos que permiten estas capacidades. Aunque cada
capacidad es diferente, las arquitecturas comparten elementos comunes. Suponga
que desea que una aplicación comience a responder las preguntas más

frecuentes. ¿Qué herramientas, API y servicios podrías integrar? Para un desafío,

escríbalos y cree su propio diagrama.


Colaboración
Todos los días, los compañeros de trabajo le envían todo tipo
de datos, desde informes a hojas de cálculo, correos electrónicos
con gráficos e incluso documentos impresos. A medida que se
acumulan los datos, la tarea de encontrar lo que necesita cuando
lo necesita se vuelve más difícil. Si dispone de demasiados datos,
el riesgo de no usar la información más reciente es mayor.

Power BI puede ayudarle a conseguir que su trabajo más fácil y eficaz


al mismo tiempo mediante la conversión de todos esos datos en tablas
y gráficos que le ayudarán a visualizar los datos de manera significativa.
1

Puede ver información en objetos visuales llamativos y coloridos


en vez de en listas y tablas.
Usted y sus compañeros pueden trabajar desde los mismos
paneles e informes de confianza desde un explorador o
dispositivo móvil. Dado que los datos se actualizan
automáticamente, trabajará siempre con los contenidos más

actualizados.

Además, debido a que el contenido no es estático, puede


explorar sus datos más a fondo buscando tendencias,
perspectivas y otros tipos de inteligencia empresarial. Las
características intuitivas de Power BI permiten segmentar el
contenido e incluso formular preguntas con sus propias palabras.
Deje que Power BI supervise los datos por usted y le envíe alertas
cuando cambien los datos por encima o debajo de un umbral
establecido. Todos los datos están disponibles en cualquier
momento, ya sea en la nube o de forma local, desde cualquier
dispositivo.

Cómo saber si es usted consumidor de Power BI

La manera en que interactúa con Power BI depende de su rol de


trabajo. Como usuario, o consumidor, es la persona que recibe
los paneles, informes y aplicaciones de los diseñadores que los
crean. Además, trabaja en la versión en línea de Power BI
(llamado servicio Power BI) revisando estos datos e
interactuando con ellos para tomar decisiones empresariales.

No es necesario ser un científico de datos para realizar análisis de


datos complejos. Power BI se encarga del trabajo complejo con
3
controles sencillos e intuitivos.

Todo lo que necesita para empezar a trabajar es un explorador o


dispositivo móvil y una conexión a internet.
Interactuar con el contenido de forma segura

Puede explorar e interactuar con el contenido, filtrar, segmentar,


suscribir y exportar, sin afectar el conjunto de datos subyacente
o los paneles, informes o aplicaciones originales.

Nota

Recuerde que no es posible dañar los datos. Power BI es un


excelente lugar para explorar y experimentar sin preocuparse por
"estropear" algo.

Eso no significa que no pueda guardar los cambios; puede


4
hacerlo, pero esos cambios solo afectan a su vista del contenido.
Además, revertir a la vista predeterminada original es tan sencillo
como seleccionar el botón Restablecer valores
predeterminados.

Mostrar los detalles en un objeto visual

Los objetos visuales están formados por puntos de datos; al

mantener el puntero sobre uno de ellos podrá ver sus detalles.


Mostrar los datos que se usan para crear un objeto visual

Use la característica para mostrar los datos si desea ver los datos
que usa Power BI para crear un objeto visual. El objeto visual

5 seleccionado se expande para rellenar el lienzo, y los datos se


muestran debajo o al lado.
6

Exportar datos

Además de mostrar los datos que se usan para crear un objeto


visual, también puede exportar datos y verlos en Microsoft Excel.
Al exportar a Excel, está creando un documento independiente,
una hoja de cálculo que no forma parte de Power BI. Los cambios
realizados en el archivo de Excel no afectarán a los datos en
Power BI. Si desea una visión más detallada de los datos, o desea usar
los datos en otra aplicación o para otra finalidad, Power BI ofrece esa

flexibilidad.

La exportación no se limita a objetos visuales individuales; puede


exportar informes completos a PowerPoint o PDF para
compartirlos con sus compañeros.
8 Resaltado y filtrado cruzado del contenido de un informe

Todos los objetos visuales de un informe guardan relación entre


sí. Resalte o seleccione un valor de un objeto visual y verá al
instante su repercusión en los demás objetos visuales.
Colaborar con compañeros de trabajo

Prescinda del correo electrónico. Con la característica de


comentarios de Power BI, puede agregar un comentario personal
o iniciar una conversación con sus compañeros sobre un panel,
justamente en ese panel. La característica de comentario es solo
una de las formas en que puede colaborar con otros usuarios.

Deje que Power BI trabaje para usted

Con las suscripciones y alertas, Power BI le envía información por


correo electrónico, según una programación que establezca.

Suscríbase a informes y paneles

Para mantenerse al día respecto de su contenido más importante,


puede suscribirse a las páginas de informes y los paneles que más
le interesen. Power BI le enviará una instantánea a la bandeja de
entrada del correo electrónico.

Obtenga alertas cuando los datos alcanzan un umbral

10
Los datos cambian constantemente, y los objetos visuales se
actualizarán automáticamente. Si desea recibir una notificación
cuando cambien los datos por encima o por debajo del umbral
que haya establecido, utilice las alertas de datos.

Power BI envía un correo electrónico cuando el valor pasa


cualquier límite superior o inferior que se establezca.
Power BI permite que cualquier usuario, no solo los especialistas
en datos, obtenga una visión real de lo que está sucediendo. Le
permite, en tanto que consumidor, tomar decisiones mejores
más fundamentadas.

En Power BI, tiene las herramientas para explorar e interactuar


con los datos para encontrar respuestas a preguntas y descubrir
nuevas perspectivas. Además, puede:

 formular preguntas con lenguaje natural


 colaborar con su equipo
 compartir lo que ha descubierto y

 tomar medidas desde el escritorio o cuando se desplace.

11 Power BI es sencillo y ofrece una inteligencia empresarial basada


en datos de gran eficacia para ayudarle a responder preguntas,
tomar decisiones, realizar un seguimiento del progreso, hacer
predicciones, mantenerse al día con una cadencia periódica y
mucho más.
Ahora ya sabe qué es Power BI y por qué se utiliza. En la siguiente
unidad, aprenderá a desplazarse por la interfaz de usuario de
Power BI.

1
Ver el contenido en el
servicio Power BI
En Power BI, el término contenido hace referencia a las

aplicaciones, los paneles y los informes. El contenido se crea por


diseñadores de Power BI, que lo comparten con compañeros
como usted. Su contenido es accesible y puede verse en Power
BI, y el mejor lugar para comenzar es el Inicio de Power BI.

Explore el Inicio de Power BI

Al iniciar sesión, Power BI abre y muestra el lienzo Inicio, como se


muestra en la ilustración siguiente.
2
Inicio de Power BI ofrece tres maneras de buscar y ver su
contenido. Aunque los tres acceden al mismo conjunto de
contenido, son simplemente formas diferentes de acceder a ese
contenido. En ocasiones, la manera más fácil y rápida de
encontrar algo es buscarlo. En otras ocasiones, la mejor opción
puede consistir en seleccionar un icono en el lienzo Inicio.

 El lienzo Inicio muestra y organiza su contenido favorito y más

reciente, junto con el contenido recomendado y los recursos de


aprendizaje. Cada parte del contenido se muestra como un
icono, con su título correspondiente. Al seleccionar un icono se

abre ese contenido.


 En la esquina superior derecha, el cuadro de búsqueda global

le permite buscar contenido por título, nombre o palabra clave.


3
 En un lado está el panel de navegación. En este panel, su mismo
contenido está organizado de forma un poco diferente, por
Favoritos, Recientes, Aplicaciones y Compartido conmigo.
Desde aquí, puede ver listas de contenido y seleccionar una

para que se abra.

En las secciones siguientes se revisan cada una de estas opciones


para buscar y consultar el contenido.

Lienzo Inicio

En el lienzo Inicio puede ver todo el contenido que tiene permiso


para usar. Al principio, es posible que no tenga mucho contenido,
pero eso cambiará a medida que comience a usar Power BI con
sus compañeros.

El lienzo Inicio también se actualiza con el contenido


recomendado y los recursos de aprendizaje.

A medida que trabaje en Power BI, recibirá paneles, informes y


aplicaciones de sus compañeros, y su lienzo Inicio se completará.
Con el tiempo, puede parecerse al siguiente lienzo Inicio.

En las secciones siguientes nos fijamos más de cerca en el lienzo


Inicio, de arriba abajo.
Métricas principales de un vistazo

Como se mencionó anteriormente, en el lienzo Inicio puede ver


todo el contenido que tiene permiso para usar. Cada parte del
contenido es un icono, y la selección de un icono le lleva a ese
fragmento de contenido. Por ejemplo, al seleccionar un icono de
un panel se abre el panel.

El contenido más importante a su alcance

Favoritos y frecuentes

En esta sección superior se incluyen vínculos al contenido que

visita con mayor frecuencia o que ha etiquetado como favoritos.


Observe que los tres iconos tienen estrellas amarillas, lo que
significa que se han etiquetado como favoritos.
Recientes y mis aplicaciones

La sección siguiente muestra el contenido que ha visitado más


recientemente. Observe la marca de tiempo de cada icono. En la
sección Mis aplicaciones figuran las aplicaciones que se han
compartido con usted; las aplicaciones más recientes aparecen
aquí. Puede seleccionar Ver todo para mostrar una lista de todas
6 las aplicaciones que se comparten con usted.

Compartido conmigo

Los compañeros comparten aplicaciones con usted, así como


paneles e informes individuales. En la sección Compartido
conmigo, tenga en cuenta que hay cinco paneles y un informe
que sus compañeros han compartido con usted.

Aplicaciones recomendadas

En función de su actividad y la configuración de la cuenta, Power


BI muestra un conjunto de aplicaciones recomendadas. Al
seleccionar un icono de aplicación, se abre la aplicación.

Recursos de aprendizaje

En la parte inferior del lienzo Inicio figura un conjunto de recursos de


aprendizaje. Los recursos exactos que aparecen dependen de la

configuración y la actividad.
7
Explore el panel de navegación

Utilice el panel de navegación para localizar los paneles, informes


y aplicaciones y moverse entre ellos. En ocasiones, el panel de
navegación será la forma más rápida de llegar al contenido.

El panel de navegación estará ahí cuando abra Inicio, y


permanece estático mientras abre otras áreas de Power BI.

El panel de navegación organiza el contenido por categorías que


son similares a lo que ya ha visto en el lienzo
Inicio: Favoritos, Recientes, Aplicaciones y Compartido
conmigo. Sin embargo, para ver el contenido más reciente de
cada una de estas secciones, seleccione la flecha situada a la
8 derecha del encabezado.

Para abrir una de estas secciones de contenido y mostrar una lista


de todos los elementos, seleccione el encabezado.
9 El panel de navegación es otra manera de encontrar el contenido
que desea rápidamente. El contenido se organiza de forma
similar al lienzo Inicio, pero se muestra en listas en lugar de en
iconos.

Busque en todo el contenido

A veces, la forma más rápida de encontrar su contenido es

buscarlo. Quizá haya detectado que un panel que no ha usado


en mucho tiempo no aparece en el lienzo Inicio. Recuerda que su
compañero Aaron lo ha compartido con usted, pero no recuerda
cómo lo llamó o si era un panel o un informe.
Puede escribir el nombre completo o parcial de ese panel y
buscarlo. Además, puede escribir el nombre de su compañero y
buscar el contenido que ha compartido con usted. La búsqueda
se limita para buscar coincidencias en todo el contenido de su
propiedad o al que tiene acceso.

10
Explorar con paneles,
informes y aplicaciones en
Power BI
Tiene un conocimiento básico del rol que desempeñan los paneles,

informes y aplicaciones en Power BI. Es el momento de examinar las


diferentes formas en que los utilizará para elegir el contenido que
necesita para tomar las mejores decisiones empresariales.

Comencemos con los paneles.

Paneles

Un panel de Power BI se compone de iconos que, juntos, cuentan


una historia. Dado que se limita a una página, un panel bien
diseñado contiene únicamente los elementos más importantes
de esa historia. No es posible editar el panel, pero hay varias
maneras de utilizar los datos para supervisar su negocio y tomar
decisiones para la seguridad de los datos.

Supongamos que es el director de marketing de una empresa de

fabricación de ropa llamada Van Arsdel. El siguiente panel


de marketing y ventas de ejemplo proporciona una instantánea

detallada de su negocio. Al ver este panel, puede supervisar cómo le


está yendo a su empresa en comparación con la competencia.

Pase el puntero por encima para ver los detalles.

Los iconos de un panel son algo más que imágenes. Mantenga


el puntero sobre un icono para ver los detalles de los datos que
subyacen en el objeto visual en paneles e informes.
Abrir un informe desde un panel

Los iconos del panel son visualizaciones de informes. Abrir un informe

3 es tan sencillo como seleccionar un icono. El informe se abre en una


página que muestra el contenido seleccionado.

Ahora que está abierto un informe, puede explorarlo.


Informes

Contraer el panel de navegación

Lo primero que notará es que el panel de navegación sigue

estando disponible para moverse en Power BI. Como ahora va a


centrarse en el lienzo de informe, contraiga el panel de
navegación seleccionando el icono de "hamburguesa" .

Visita de las páginas del informe

Cuando reciba un nuevo informe, le resultará útil familiarizarse

con los datos y la información que contiene. Una buena forma de

4 empezar es visitar cada una de las páginas del informe. Los


nombres de las páginas del informe se encuentran ahora en una
lista en un panel vertical. Seleccione un nombre para mostrar esa
página.

Cada página tiene un conjunto diferente de visualizaciones que


cuentan una historia. En este ejemplo, la página
de opiniones compara las sensaciones de los clientes hacia la
compañía Van Arsdel y el sector, por mes y geografía. Después
de una caída a mediados de año, el sentimiento positivo de la
compañía está en su punto más alto.
Cambiar las opciones de vista del informe

Los informes pueden verse en muchos dispositivos diferentes,


con tamaños de pantalla y aspectos distintos. De forma

5 predeterminada, Power BI establece los informes en Ajustar a la


página, lo que significa que no tiene que desplazarse, pero el
tipo podría ser pequeño. En el menú Ver, seleccione Tamaño
real para ver la información en el informe en tamaño completo, pero
tenga en cuenta que es posible que deba desplazarse.
El menú Ver tiene muchas opciones que controlan cómo se
muestra la página del informe. Seleccione la opción más
adecuada para el tamaño de la pantalla, la audiencia ante la que
va a realizar la presentación y sus preferencias personales.

Para satisfacer sus necesidades de accesibilidad, use la


opción Colores de alto contraste.

Ver marcadores en el informe

Un diseñador de informes podría proporcionar vistas alternativas

de los mismos datos. Por ejemplo, mientras que una vista


muestra los datos de la región central, otra vista muestra datos
de la región sur y una tercera para la región norte. Al seleccionar
un marcador, puede cambiar entre las tres vistas diferentes de la
misma página del informe.

No todos los informes tienen marcadores. Para determinar si el


informe los tiene, abra el menú Marcadores.
Explicación de la forma en que se filtra el informe

Cuando algún compañero comparta un informe con usted, no olvide


fijarse en el panel de filtros. Los filtros permiten a sus compañeros
7
resaltar datos específicos, generalmente al no mostrar toda la
información disponible.
Recuerde que cada página del informe cuenta una historia. Para
comprender la historia por completo, deberá saber si se están
aplicando filtros y cuáles son esos filtros.

El panel de filtros muestra los filtros que se aplican al informe


actual, la página del informe y el objeto visual (si hay alguno
seleccionado). En el ejemplo siguiente, está seleccionado el
gráfico de columnas. Observe que hay tres filtros de página
(segmento, año y región), un filtro aplicado a todas las páginas

del informe (fecha) y tres filtros visuales (fabricante, mes y % de


variación de total de unidades del año hasta la fecha).

8
Si el filtro tiene la palabra Todos al lado, significa que todos los
valores del campo están inclu

idos en el filtro. En esta página se incluyen todos los segmentos,


y en el gráfico de columnas se incluyen todos los meses. Los
filtros de esta página relativos al año 2014 nos indican que esta
página del informe solo se incluyen los datos para el año 2014.

Ampliar un icono de panel u objeto visual de informe

En ocasiones, tendrá un panel o un informe que está un poco

lleno. Puede usar el modo de enfoque para acercar un objeto


visual. Mantenga el puntero sobre el objeto visual para mostrar
el menú de acción y, a continuación, seleccione Abrir en modo
9
de enfoque o el icono de enfoque .

El objeto visual ocupa todo el lienzo, y aún puede mantener el

puntero sobre él para ver los detalles y obtener acceso al panel


de filtros.
Si la vista no es lo suficientemente grande, abra ese mismo objeto

visual en el modo de pantalla completa para que ocupe toda la


pantalla. Observe que todas las barras de menús desaparecen, excepto
el panel de filtros.

10
Este modo se usa a menudo para presentaciones porque puede incluso
mostrar las páginas de informes y los paneles completos en modo de

pantalla completa.
Colaborar y compartir en
Power BI
Las dificultades del control de versiones son comunes. Por ejemplo,

trabajar en un proyecto con compañeros de trabajo y terminar con diez


versiones del mismo informe. Con frecuencia, en estas situaciones, a

medida que usted y sus compañeros editan y actualizan un informe,


pierden el rastro de cuál, si existe, es la versión más actualizada.

Power BI simplifica la colaboración y mejora el resultado al permitir que


usted y sus compañeros trabajen simultáneamente en los mismos
paneles e informes. Y, mientras que usted y sus colegas exploran los
datos y realizan cambios en los informes y paneles, la información

subyacente no resulta afectada.

En Power BI, puede colaborar con sus compañeros de muchas maneras.

Esta unidad se centra en tres de las siguientes maneras: uso

compartido, comentarios e impresión.


Sugerencia

Si no puede compartir con un compañero, podría deberse al tipo


de licencia de Power BI que tiene usted o su compañero. Póngase
en contacto con su administrador de Power BI para obtener ayuda.

Uso compartido

Esta sección explora cómo los diseñadores comparten contenido

con los consumidores y cómo los consumidores comparten


contenido con otros usuarios. Imagine que es un director de
ventas regional y está trabajando con otros directores para
preparar una presentación para la dirección ejecutiva. Usted y sus
compañeros trabajarán en Power BI de principio a fin para
2
recopilar, organizar, analizar y presentar sus hallazgos basados
en datos. Todos usarán el mismo contenido compartido y se
comunicarán entre sí en el marco de Power BI.

Paso 1: Los diseñadores de Power BI comparten contenido


con consumidores de Power BI

Antes de empezar a trabajar en la presentación, necesita el


contenido de sus compañeros de trabajo diseñadores. Puede
encontrar este contenido en aplicaciones, paneles e informes. Los
diseñadores pueden compartir este contenido con usted y otros
administradores de varias maneras diferentes:
 Compartir vínculos a paneles individuales o informes

individuales
 Enviar vínculo a contenido
 Instalar contenido en su Power BI
 Publicar una aplicación de Power BI

El diseñador comparte un vínculo a un informe o panel


individual

El diseñador puede enviarle a usted y a otros administradores un


vínculo por correo electrónico. Cuando selecciona el vínculo y lo instala,
ese panel o informe le mostrará como compartir el contenido. Como

se explicó en unidades anteriores de este módulo, el contenido


compartido se puede ver desde el panel de navegación > Compartido

3 conmigo y desde la página Inicio.


El diseñador comparte una aplicación

A veces, resulta más fácil para un diseñador empaquetar los


paneles e informes en una aplicación y después compartirlos.
Con una aplicación, todo el contenido relacionado es fácil de
encontrar porque forma parte de esa aplicación única. Los
diseñadores pueden compartir aplicaciones mediante el envío de
un vínculo de instalación, la instalación automática de la
aplicación en el área de trabajo de Power BI o el registro de la
aplicación en un sitio web donde se puede obtener.

Independientemente de cómo se comparte la aplicación, se mostrará


en Power BI, en la sección Aplicaciones del panel de navegación y en la
página Inicio.
4

Ahora que los diseñadores han compartido contenido con usted y

otros administradores, es el momento de iniciar el proyecto. Debido a

que los diseñadores concedieron acceso al contenido a todos los


administradores, todos pueden comenzar a trabajar juntos para

prepararse para la gran reunión.

Sin embargo, puede plantearse otra dificultad: desea que otros


compañeros le ayuden, pero el diseñador no les ha concedido
permiso al contenido.

Paso 2: Los consumidores comparten contenido con compañeros


de trabajo internos y externos

Como consumidor de Power BI, también puede compartir el


contenido, siempre que el diseñador le haya dado permiso para
volver a compartir.

5 Si decide volver a compartir este contenido, vaya a la


pestaña Compartido conmigo del panel de navegación. Si la
columna Compartido contiene el icono "compartir", puede hacer
clic en el icono para compartir.
En la ilustración siguiente, tenga en cuenta que dos compañeros son

internos y los otros dos no. Los colegas externos nunca pueden volver
a compartir, incluso si la casilla Permitir que los destinatarios
compartan su informe está activada.

6
Sugerencia

Puede compartir un panel o informe a partir de cualquiera


de las aplicaciones móviles de Power BI.

Agregar comentarios a un panel

Cuando se comparte un panel, todos los usuarios con acceso a

ese panel pueden enviarse mensajes entre sí, directamente en el


panel, mediante comentarios. En el escenario siguiente se explica
el proceso necesario para agregar comentarios y luego se
muestra un vídeo, al final de la sección, para ilustrarlo.

En este escenario, Cassandra ha creado y compartido un panel con su

7 equipo. En lugar de enviar un gráfico y un mensaje de correo

electrónico, comparte un panel y agrega un comentario.


En preparación para la reunión del lunes, todo su equipo ve el panel,

revisa la versión actualizada del informe y continúa la conversación en


el lienzo del panel.

Hay dos tipos de comentarios: acerca del panel en general y acerca de

un objeto visual específico. El icono de gráfico le permite saber que

este comentario está asociado a un objeto visual específico. Al


seleccionar el icono se resalta el objeto visual relacionado en el panel.

Captar la atención de sus compañeros de trabajo

Si está comentando algo en el panel o en un objeto visual


determinado, capte la atención de sus compañeros de trabajo
mediante el uso de la arroba (@). Cuando escribe @, Power BI
abre una lista desplegable donde puede buscar y seleccionar
personas de su organización. Cualquier nombre comprobado
precedido por @ aparecerá en la fuente de color azul.
Impresión desde Power BI

Una tercera forma de colaborar y compartir es imprimir. En


ocasiones, es posible que deba distribuir copias impresas de los
paneles e informes de Power BI; por ejemplo, si va a impartir una
conferencia, tiene que enviar documentación normativa o va a
realizar una presentación en algún sitio sin conexión de red. Para
prepararse, le viene bien imprimir copias de los paneles e
informes, además de algunos iconos específicos y visualizaciones
de informes.

Impresión de un panel

Para imprimir un panel, seleccione Exportar en la esquina superior


9
derecha del menú de acción y seleccione Imprimir esta página.

Imprimir un informe

Es posible imprimir las páginas de los informes de una o en una,


o bien imprimir todas las páginas a la vez si primero exporta a
PDF.
Imprimir iconos y objetos visuales

Los iconos y objetos visuales se encuentran en los paneles e informes.


Para imprimir un solo icono o un solo objeto visual, primero deberá
abrirlo por sí mismo. Puede usar el modo de enfoque y el modo de

pantalla completa para abrir un icono de panel o un objeto visual de


un informe por sí mismo para que pueda imprimirlo
10 con Exportar, Imprimir esta página.

Nota

El cuadro de diálogo de impresión que ve depende de qué

explorador esté utilizando.


Exportar un informe de Power BI a PowerPoint

Otra manera de compartir un informe con su equipo es exportar


a PowerPoint. Cada página del informe será una diapositiva que
incluye vínculos a los informes activos en Power BI.

En Power BI, seleccione un informe para mostrar en el lienzo. También

puede seleccionar un informe desde su página Inicio, Aplicaciones o


cualquier otra sección en el panel de navegación. Seleccione Exportar

> PowerPoint desde la barra de menús de Power BI.

11

Aparecerá una ventana emergente donde tiene la opción de


seleccionar los valores actuales o los valores predeterminados. La
mayoría de los usuarios seleccionan la opción de valores actuales, que
exporta el informe en el estado actual e incluye los cambios activos
realizados en los valores de filtro o segmentación. La opción de valores

predeterminados exporta el informe original sin los cambios

realizados.

Cuando haya terminado la exportación, puede descargar el archivo,


abrirlo con PowerPoint y, a continuación, modificarlo o mejorarlo, tal

como lo haría en cualquier otra presentación de PowerPoint.


Nota

Para seguir los ejemplos de los vídeos y de esta página, descargue el libro

de Excel de ejemplo aquí e impórtelo en Power BI Desktop (Obtener


datos > Excel) si no lo ha hecho ya.

Inicio de Power BI Desktop


Cuando inicie Power BI Desktop, aparecerá el cuadro de diálogo
Introducción, el que proporcionará vínculos útiles a foros, blogs y

vídeos de introducción. Cierre este cuadro de diálogo por ahora, pero


mantenga seleccionada la opción Mostrar esta pantalla en el inicio
para que pueda explorarla más adelante.
1
Explorar el entorno de creación de informes

En Power BI Desktop, empezará a crear informes en la vista Informe.


Trabajará en cinco áreas principales:
1. Cinta de opciones: muestra las tareas comunes asociadas con

los informes y las visualizaciones.

2. Vista Informe o lienzo: donde se crean y se organizan las


visualizaciones. Para cambiar entre las vistas Informe, Datos y

Modelo, seleccione los iconos de la columna izquierda.

3. Pestaña Páginas: ubicada en la parte inferior de la página, en

esta área se seleccionaría o agregaría una página de informe.

4. Panel de visualizaciones: donde puede cambiar las

visualizaciones, personalizar los colores o ejes, aplicar filtros,

arrastrar campos, etc.

5. Panel Campos: donde los filtros y los elementos de consulta se


pueden arrastrar a la vista Informe o al área Filtros del panel
2
Visualizaciones.

Sugerencia

Puede contraer los paneles Visualización y Campos para proporcionar

más espacio en la vista Informe seleccionando la flecha pequeña, tal


como se muestra en la captura de pantalla siguiente.
Crear un objeto visual

Para crear un objeto visual, arrastre un campo de la lista Campos a la

vista Informe.

Power BI Desktop creó automáticamente una visualización de mapa

porque reconoció que el campo Estado contenía datos de


geolocalización.

Publicar un informe
Después de crear un informe con algunos objetos visuales, ya está listo

para publicar en el servicio Power BI. En la cinta de opciones Inicio de


Power BI Desktop, seleccione Publicar.

Es posible que se le pida que inicie sesión en Power BI. Cuando haya

iniciado sesión y se complete el proceso de publicación, aparecerá el


cuadro de diálogo siguiente. Puede seleccionar el vínculo que aparece

4 debajo de Success! (Correcto) para ir al servicio Power BI, donde podrá


ver el informe que ha publicado.
Anclaje de un objeto visual en un panel

Cuando ve un informe publicado en el servicio Power BI, puede elegir

el icono Anclar para anclar ese objeto visual a un panel.

Puede elegir entre anclar el objeto visual a un panel existente y crear


un panel nuevo.

5 Para más información, consulte el artículo sobre la vista Informe en


Power BI Desktop .
Conexión a orígenes de
datos
Power BI Desktop se conecta a muchos tipos de orígenes de datos,

incluidas bases de datos locales, hojas de cálculo y datos en servicios


en la nube. A veces, cuando se recopilan los datos, no siempre son tan
estructurados ni limpios como se quisiera. Para estructurar los datos,
puede transformarlos, lo que significa que puede dividir columnas y

cambiarles el nombre, cambiar los tipos de datos y crear relaciones


entre las columnas.

En esta unidad, aprenderá a:


6
 Establecer conexión con los datos.
 Importar los datos en Power BI Desktop.
1

Power BI proporciona muchas opciones para cambiar los colores


del objeto visual o dar formato a este. Para cambiar el color de
todas las barras de un objeto visual, seleccione el selector de
colores junto a Color predeterminado y, después, seleccione el
color que quiera.
Para cambiar el color de cada barra (u otro elemento, según cuál
2
sea el tipo de objeto visual seleccionado), establezca el control
deslizante Mostrar todo en Activo. Aparecerá un selector de
colores para cada elemento.

Formato condicional
Puede cambiar el color en función de un valor o de una medida.
Para ello, seleccione los puntos suspensivos verticales junto a

Color predeterminado.
Los objetos visuales resultantes se colorearán según el
3 degradado que haya seleccionado.
4 Puede usar esos valores para crear reglas; por ejemplo, para
establecer que los valores por encima de cero sean de un color
determinado y los valores por debajo de cero, de otro.

En el panel Análisis, puede crear muchas otras líneas de un objeto

visual, como Línea mínima, Línea máxima, Línea de promedio,


Línea de mediana y Línea de percentil.
5

Puede crear un borde alrededor de una visualización individual y,


al igual que otros controles, también puede especificar el color
del borde.

Para obtener más información, vea Sugerencias y trucos para el

formato de color en Power BI .


Diseño y formato de
páginas
Power BI Desktop ofrece la posibilidad de controlar el diseño y el

formato de las páginas del informe, como el tamaño y la orientación.

6
1

Creación de una cuenta de


Azure Machine Learning
Studio
BIENVENIDA
Obtenga información general de alto nivel sobre Machine Learning y

Microsoft Azure Machine Learning Studio.

En este módulo aprenderá a:

 Conocer mejor de qué trata Machine Learning

 Configurar y usar Microsoft Azure Machine Learning Studio

Requisitos previos

Ninguno

Introducción 1 min
2
¿Qué es Machine Learning? 4 min

Ejercicio: preparación para crear una cuenta de Azure Machine


Learning Studio 8 min

Ejercicio: uso de una cuenta de Azure para crear un área de

trabajo de Machine Learning Studio 10 min

Prueba de conocimientos 3 min

Resumen 8 min
INTRODUCCIÓN
Probablemente ya haya oído el término Machine Learning en el
ámbito de la inteligencia artificial (IA). Tal vez ya sepa en qué consiste
o le interese ampliar sus conocimientos. Machine Learning tiene
numerosos usos en aplicaciones o soluciones de inteligencia artificial.

Puede aplicarlo en sus propias soluciones mediante el uso de un


conjunto de herramientas y servicios de Microsoft.
3
Objetivos de aprendizaje

En este módulo aprenderá a:

• Conocer mejor de qué trata Machine Learning.

• Configurar y usar Azure Machine Learning Studio.


¿QUÉ ES MACHINE
LEARNING?
Machine Learning es el proceso de usar los datos disponibles para

entrenar un modelo de software. El entrenamiento ayuda al modelo a

"aprender" de los casos de entrenamiento. El resultado de este


aprendizaje puede usarse después para predecir nuevos casos a partir

de datos similares. Dicho de otra manera, Machine Learning es una


técnica de ciencia de datos que permite a los equipos usar datos
existentes para prever tendencias, resultados y comportamientos
futuros. Mediante Machine Learning, los equipos aprenden si
necesidad de programarlos explícitamente.
4
La previsión puede ser fundamental para, por ejemplo, detectar fraudes

con tarjetas de crédito. Al comparar las transacciones de las tarjetas de


la base de datos con las nuevas transacciones, Machine Learning puede
ayudar a detectar el fraude cuando se constatan ciertos patrones.

Los distribuidores en línea pueden usar técnicas de Machine Learning

para evaluar el historial de visualización y de compras de muchos


usuarios. El servicio de Machine Learning compara dicho historial con

las transacciones de compra registradas para ofrecer recomendaciones


sobre productos cuando un cliente está viendo un artículo o va a

realizar una compra. A menudo esto se traduce en una recomendación

semejante a "Los clientes que compraron este producto también


compraron…".
Para ayudarle a compilar, probar e implementar soluciones de análisis

predictivo que usen los datos, Microsoft proporciona Azure Machine


Learning Studio. Se trata de una herramienta colaborativa de arrastrar
y colocar. Después de entrenar y probar los modelos, use Machine
Learning Studio para publicarlos como un conjunto de servicios web.

5
EJERCICIO: PREPARACIÓN
PARA CREAR UNA
CUENTA DE AZURE
MACHINE LEARNING
STUDIO
Necesita un área de trabajo de Machine Learning Studio para acceder
a las herramientas que permiten crear, publicar y administrar

experimentos. Aquí encontrará información sobre las opciones


gratuitas y de pago:
6
Área de trabajo de invitado

 Versión de prueba de 8 horas


 Sin necesidad de iniciar sesión
 Puede compilar modelos de Machine Learning en cuestión de
minutos

 Amplia gama de algoritmos de Machine Learning disponibles

Área de trabajo gratuita

 Inicio de sesión con una cuenta de Microsoft

 Acceso gratuito sin expiración


 10 GB de almacenamiento libre

 Compatibilidad con scripts de Python y R


 Servicios web predictivos
Área de trabajo estándar

 Suscripción a Azure obligatoria

 9,99 USD al mes


 Soporte técnico completo según el Acuerdo de Nivel de

Servicio (SLA)

 Traiga su propio Azure Storage


 Ejecución de gráficos en paralelo
 Puntos de conexión de servicio web elásticos
 Ideal para el uso de nivel empresarial

Creación de un área de trabajo de Machine Learning Studio

1. En un explorador web, vaya a Machine Learning Studio .

2. Bajo el botón Iniciar sesión, haga clic en el vínculo Regístrese


7
aquí si no es un usuario actual de Machine Learning Studio.

3. Seleccione una de las opciones gratuitas. Si tiene una cuenta de

Microsoft, se recomienda usar la opción Área de trabajo


gratuita. La necesitará para completar las partes prácticas de

las unidades siguientes.


Ya tiene una cuenta y un área de trabajo de Machine Learning Studio.

8
EJERCICIO: USO DE UNA
CUENTA DE AZURE PARA
CREAR UN ÁREA DE
TRABAJO DE MACHINE
LEARNING STUDIO
Si ya tiene una cuenta de Azure, puede
usarla para crear y administrar un área de

trabajo de Machine Learning Studio. Este es


el procedimiento:
9
1. Inicie sesión en Azure Portal .

2. En el panel, seleccione Crear un recurso.

3. En la barra de búsqueda, escriba Área de


trabajo de Machine Learning Studio.

Importante

Asegúrese de que elige el área de trabajo

de Machine Learning Studio, y no la de

Learning Service.
4. En la parte inferior de la ventana, haga clic en Crear.

5. Escriba la información de su área de trabajo. Veamos un


ejemplo:

10
11

Si va a implementar servicios web desde esta área de trabajo, use su

plan de servicio web y el plan de tarifa asociado.

6. Haga clic en Crear y espere a que se cree y se implemente el


recurso.
Ahora ya puede tener acceso a la nueva área de trabajo de Machine

Learning Studio de dos maneras:

 Vaya al recurso en Azure Portal. En la página de Información


general, seleccione Ejecutar Machine Learning Studio para

abrir el área de trabajo en Machine Learning Studio.

 Inicie sesión en el portal de Machine Learning Studio .


 En la esquina superior derecha, seleccione su área de trabajo.
 Seleccione my experiments (Mis experimentos).

12
1

Realización de predicciones a
partir de datos complejos
con redes neuronales
BIENVENIDA
Use modelos de red neuronal para crear predicciones. Cambie las

estructuras de red neuronal para refinar predicciones mediante

TensorFlow y Keras.

En este módulo, aprenderá a:

• Obtener información sobre estructuras de red neuronal, capas,


bordes y pesos.

• Visualizar predicciones y refinar los modelos de red neuronal.

• Aplicar distintos tipos de funciones de activación y


optimizadores.
2

Requisitos previos

Ninguno

Introducción 5 min

Entrenamiento de redes neuronales con velocidades de


aprendizaje y vectores "one-hot" 3 min

Ejercicio: Introducción a las redes neuronales 10 min

Mejora de las redes neuronales con funciones de activación y

optimizadores 5 min
Ejercicio: Redes neuronales avanzadas 12 min

Resumen 8 min

3
INTRODUCCIÓN
Originalmente una hipótesis en la década de los 40, ahora las redes
neuronales son una de las herramientas principales que se usan en el
aprendizaje automático moderno. Las redes neuronales se pueden usar
para aplicaciones de regresión y categorización. Los últimos avances

con el almacenamiento, la capacidad de procesamiento y las


herramientas de código abierto han permitido muchas aplicaciones
4 correctas de las redes neuronales en el diagnóstico médico, el filtrado
de contenido explícito, el reconocimiento de voz y la traducción

automática.

Nodos

Las redes neuronales se componen de nodos conectados, por los que


pasan los datos. Un nodo combina los datos que recibe desde otros

nodos y, después, envía los datos combinados a los nodos situados

más abajo en la red neuronal. (Son similares a las rutas cerebrales

formadas por neuronas conectadas entre sí mediante sinapsis).

Los nodos se incluyen en capas. Como sucede con otros modelos de


inteligencia artificial que se han usado en este curso, las redes
neuronales tienen una capa de entrada (las características) y una capa

de salida (las etiquetas). La diferencia en las redes neuronales es lo que


se encuentra entre las capas de entrada y salida: capa ocultas.

Estas capas se consideran "ocultas" porque no se ven en el conjunto de

entrenamiento. Como en los ejemplos anteriores de este curso, los

conjuntos de entrenamiento para las redes neuronales solo contienen


la entrada (características) y la salida (etiquetas).

Observe todas las líneas de interconexión: cada nodo pasa su salida a

los nodos de la capa siguiente. Toda esta combinación de datos es lo


que permite a las redes neuronales interpretar datos muy complejos.

El aprendizaje profundo y otras variantes de las redes neuronales son


5
muy similares. La diferencia radica en cómo se organizan los nodos y

qué nodos se conectan a otros nodos. Por ejemplo, la visión

informática examina los píxeles cercanos a un punto de datos.

Por tanto, para predecir que lo que se encuentra en este cuadrado de


color rojo forma parte de la oreja de un elefante, la red neuronal tendría

que examinar de cerca alrededor del cuadrado rojo, no la hierba de la

parte inferior de la imagen.

Capas
Las capas son el componente clave de las redes neuronales. Se elige el

número de nodos que contiene cada capa y el número de capas que


hay para maximizar la precisión de la salida.

Puede haber capas de gran tamaño, con muchos nodos

y muchas capas, en ocasiones más de 100.

Con cada capa, la red neuronal transforma los datos que se especifican.

Bordes

Las conexiones entre los nodos de una capa a la siguiente se

denominan bordes. Los bordes transforman los datos cuando viajan a


través de ellos mediante multiplicaciones sencillas.

A continuación verá un ejercicio en el que codificará una red neuronal


6
simple.

En este módulo, se examinarán los aspectos básicos de las redes

neuronales y se entrenarán dos modelos simples de red neuronal en


Azure Notebooks.

En este módulo, aprenderá a:

• Obtener información sobre estructuras de red neuronal, capas,

bordes y pesos.

• Visualizar predicciones y refinar los modelos de red neuronal.

• Aplicar distintos tipos de funciones de activación y


optimizadores.
Se presentarán los conceptos clave de las redes neuronales, para que

cree las primeras redes neuronales en Azure Notebooks.

A continuación se describirán los aspectos básicos de las redes


neuronales.

7
1

Predicción de valores
numéricos mediante
regresión
BIENVENIDA
Use los modelos de regresión de aprendizaje automático para predecir

valores numéricos. Cree múltiples variaciones de los modelos de

regresión lineal para estimar aspectos como el tráfico de Internet.

En este módulo, aprenderá a:

• Definir la regresión.

• Crear modelos predictivos con variaciones de regresión lineal.

• Realizar predicciones en datos no lineales con regresión.

2
Requisitos previos

Ninguno

Introducción 5 min

Predicción de valores con la regresión lineal simple 6 min

Ejercicio: Regresión lineal simple 8 min

Predicción de valores con la regresión lineal múltiple 5 min

Ejercicio: Regresión lineal múltiple 10 min


Predicciones en datos no lineales mediante la regresión

polinómica 6 min

Ejercicio: Regresión polinómica 12 min

Resumen 4 min

3
INTRODUCCIÓN
La regresión se puede considerar como la búsqueda de una línea de
tendencia en los datos. Cuando se usa en el aprendizaje automático,
esa línea permite predecir un valor numérico en función de
características. La regresión se podría usar para predecir aspectos

como:

• Cuánto costará algo


4

• Cuál es la temperatura esperada para mañana

• Cuántos días quedan hasta que haya que cambiar la batería del
coche

Por ejemplo, si tuviera un conjunto de datos con solo dos

características, año y temperatura, se podrían trazar en un gráfico y


crear una línea de tendencia que facilitara la predicción de la

temperatura en el futuro.

La regresión ajusta una línea a través de los datos. Aquí, se usan las
características de altura y talla de calzado de los usuarios, que permiten

responder si la gente alta tiene el pie más grande.


Como estos algoritmos de regresión permiten comprender relaciones

como la talla de calzado en relación con la altura, se pueden usar para


predecir una etiqueta (la talla de calzado de un usuario) si se cuenta

con una característica relevante (su altura). Si hay ejemplos suficientes,

la línea de tendencia puede ser muy precisa.

Ver estas líneas de tendencia es relativamente fácil cuando solo se usa


una característica para predecir otra. La precisión de las predicciones

aumenta cuando hay características más pertinentes, pero es mucho


más difícil ver las tendencias de forma visual. A continuación se
muestran tres características en un gráfico: peso del
automóvil, caballos de potencia y eficiencia del combustible.

Incluso con tres características, en el gráfico anterior es mucho más


difícil detectar la tendencia. Los algoritmos de regresión no tienen la

misma limitación que tenemos visualmente. Las tendencias se pueden


identificar y usar para las predicciones con cientos o incluso miles de

características.

De los tres ejemplos anteriores, si hubiera suficientes puntos de datos

para trazar, se podría predecir con precisión:

• La temperatura media del próximo año

• La talla de calzado de una persona en función de su altura

• La eficiencia de combustible de un automóvil en función de su


peso y potencia
En este módulo, aprenderá a:

• Definir la regresión.

• Crear modelos predictivos con variaciones de regresión lineal.

• Realizar predicciones en datos no lineales con regresión.

6
PREDICCIÓN DE VALORES
CON LA REGRESIÓN
LINEAL SIMPLE
El tipo de regresión más fundamental es la regresión lineal. La

regresión lineal intenta dibujar una línea recta lo más cerca posible de
los puntos de datos.

Definición de
regresión lineal simple

La regresión lineal
simple se produce
7
cuando se usa una
característica (x) para
predecir y. A

continuación se muestra
un conjunto de datos con la altura (x) y la talla de calzado (y) para
hombres:

Estos serán los datos de aprendizaje, que permiten que la regresión

lineal identifique la línea de tendencia. En este caso, una línea recta se


ajusta perfectamente a los datos y, por tanto, la regresión lineal es

adecuada.
Realización de predicciones con
la regresión lineal simple

Los datos de entrenamiento


permiten crear un modelo de

regresión lineal que conoce la

tendencia de los datos. Una vez que

se han usado los datos existentes


(tanto las características como la
etiqueta) para determinar a dónde
pertenece la línea, se puede usar este modelo para hacer predicciones

en etiquetas futuras dada una característica.

Con el ejemplo anterior, se podría predecir la talla de calzado de una


persona cuando solo se sabe su altura. Si se le pide que adivine la talla
de calzado de una persona de 180 centímetros de altura, puede usar
8
esa línea para adivinar que será algo superior a 14.

Cómo sabe dónde colocar la línea

Todos los datos contienen variabilidad. Esto significa que una


predicción de línea recta casi nunca pasará a través de todos los puntos
de datos. En el gráfico siguiente, las líneas discontinuas de color rojo

muestran dónde el modelo no se ajusta exactamente a los datos: el

error. Por ejemplo, en x = 1, el modelo predice que y = 5. Pero hay un


punto de datos en x = 1 y se puede ver que el valor es en realidad 6.

Esto significa que el error de predicción para este punto de datos es 1.

El error es una parte natural de la creación de un modelo. En IA, se trata

de una herramienta en lugar de algo que se debe evitar.


La regresión lineal funciona buscando la línea entre los datos de

entrenamiento, lo que minimiza el error total de todos los ejemplos de


entrenamiento.

9
1

Seguridad, responsabilidad y
confianza en Azure
BIENVENIDA
Se describen los conceptos básicos para proteger la infraestructura y

los datos cuando se trabaja en la nube. Comprenda cuáles son sus

responsabilidades y de qué se encarga Azure en su nombre.

En este módulo, aprenderá lo siguiente:

• Cómo compartir la responsabilidad de seguridad con Azure

• Cómo la administración de identidades proporciona protección


incluso fuera de la red

• Cómo pueden las funcionalidades de cifrado integradas en


Azure proteger los datos
2

• Cómo proteger la red y las redes virtuales

• Características y servicios avanzados que Azure proporciona


para mantener los datos y los servicios seguros y protegidos

Requisitos previos

Ninguno

Introducción 3 min

La seguridad en la nube es una responsabilidad compartida 11

min

Obtener sugerencias de Azure Security Center 10 min


Identidad y acceso 10 min

Cifrado 8 min

Información general de los certificados de Azure 5 min

Protección de la red 8 min

Proteger los documentos compartidos 3 min

Azure Advanced Threat Protection 5 min

Comprensión de las consideraciones sobre seguridad para las


soluciones de administración del ciclo de vida de las
aplicaciones 8 min

Resumen 5 min
3
INTRODUCCIÓN
Cada sistema, arquitectura y aplicación se debe diseñar teniendo en
cuenta la seguridad. Hay demasiado que perder. Por ejemplo, un
ataque por denegación de servicio podría evitar que el cliente llegara
al sitio o los servicios web, y podría impedirle hacer negocios. La

deformación del sitio web daña la reputación. Y una vulneración de


datos podría ser incluso peor, ya que puede arruinar la confianza que
4 ha costado conseguir y provoca daños personales y financieros
considerables. Como administradores, desarrolladores y personal de

administración de TI, todos debemos colaborar para garantizar la

seguridad de los sistemas.

Imagine que trabaja en una empresa llamada Contoso Shipping y lidera


el desarrollo de las entregas mediante drones en zonas rurales. Al

mismo tiempo, los camioneros aprovechan las aplicaciones móviles


para las entregas en áreas urbanas. Está en proceso de transferir gran

parte de la infraestructura de Contoso Shipping a la nube para


maximizar la eficacia y, además, va a mover varios servidores físicos del

centro de datos de la empresa a máquinas virtuales de Azure. Su

equipo ha planeado crear una solución híbrida manteniendo en el

entorno local algunos de los servidores, por lo que necesitará una


conexión segura y de alta calidad entre las nuevas máquinas virtuales

y la red ya existente.

Además, Contoso Shipping cuenta con algunos dispositivos fuera de la


red que forman parte de sus operaciones. En sus drones usa sensores

habilitados para red que envían datos a Azure Event Hubs, mientras

que los repartidores utilizan aplicaciones móviles para obtener los


mapas de ruta y registrar las firmas de recepción de los envíos. Estos
dispositivos y aplicaciones deben estar autenticados de forma segura
antes de poder enviar o recibir datos desde ellos.

¿Cómo mantiene los datos seguros?

Objetivos de aprendizaje

En este módulo, aprenderá cómo:


5
• La responsabilidad de seguridad se comparte con Azure

• La administración de identidades proporciona protección


incluso fuera de la red

• Las funcionalidades de cifrado integradas en Azure pueden


proteger los datos

• Proteger su red y las redes virtuales


LA SEGURIDAD EN LA
NUBE ES UNA
RESPONSABILIDAD
COMPARTIDA
Las organizaciones se enfrentan a muchos retos con la protección de
sus centros de datos, incluida la contratación y la retención de expertos
en seguridad, utilizando muchas herramientas de seguridad y
adaptándose al volumen y la complejidad de las amenazas.

A medida que los entornos informáticos se trasladan de centros de


6 datos controlados por el cliente a la nube, también cambia la
responsabilidad de la seguridad. La seguridad del entorno operativo

ahora es una preocupación compartida por los proveedores de


servicios en la nube y los clientes. Al cambiar estas responsabilidades a
un servicio en la nube como Azure, las organizaciones pueden reducir
el foco de interés de las actividades que no son competencias
empresariales principales. En función de las opciones de tecnología

concretas, algunas protecciones de seguridad se integrarán en el

servicio determinado, mientras que las otras seguirán siendo


responsabilidad del cliente. Para garantizar que se proporcionan los

controles de seguridad adecuados, es necesario realizar una evaluación

cuidadosa de los servicios y las opciones de tecnología.


7
Imagine que el back-end del sitio web ha alcanzado el límite de su

capacidad, pero el front-end y el almacenamiento no están


sobrecargados. Puede escalar el back-end por separado para mejorar
el rendimiento, o podría decidir usar un servicio de almacenamiento
diferente. O también podría reemplazar el contenedor de

almacenamiento sin que ello afecte al resto de la aplicación.

Migración de aplicaciones a contenedores

Puede mover las aplicaciones existentes a contenedores y ejecutarlas

en AKS. Además, puede controlar el acceso a través de la integración


con Azure Active Directory (Azure AD) y acceder a los servicios de
Azure respaldados por acuerdos de nivel de servicio, como
Azure Database for MySQL para cualquier necesidad de datos,

1 mediante Open Service Broker para Azure (OSBA).

En la ilustración anterior se muestra el proceso, tal y como se indica a

continuación:
1. Se convierte una aplicación existente en uno o varios

contenedores y, después, se publican una o varias imágenes de


contenedor en Azure Container Registry.

2. Se implementan los contenedores en un clúster de AKS

mediante Azure Portal o la línea de comandos.

3. Azure AD controla el acceso a los recursos de AKS.

4. Se accede a los servicios de Azure con respaldo de acuerdos de


nivel de servicio, como Azure Database for MySQL, a través de

OSBA.

5. Opcionalmente, AKS se implementa con una red virtual.

2
EXPLORAR AZURE APP
SERVICE
Azure App Service le permite crear y hospedar aplicaciones web,

trabajos en segundo plano, back-ends móviles y API RESTful en el

lenguaje de programación que prefiera sin tener que administrar la


infraestructura. Ofrece escalado automático y alta disponibilidad.

App Service es compatible con Windows y Linux y permite


implementaciones automatizadas desde GitHub, Azure DevOps o
cualquier repositorio Git para admitir un modelo de implementación
continua.

3 Esta plataforma como servicio (PaaS) le permite centrarse en el sitio


web y la lógica de la API, mientras que Azure se encarga de la

infraestructura para ejecutar y escalar las aplicaciones web.

Costos de App Service

Se paga por los recursos de proceso de Azure que la aplicación usa

mientras procesa las solicitudes según el plan de App Service que elija.
El plan de App Service determina cuánto hardware se dedica a su host

(por ejemplo, si se ha dedicado o compartido hardware) y cuánta

memoria se reserva para él. Incluso hay un nivel libre que puede usar
para hospedar sitios pequeños y con poco tráfico.

Tipos de aplicaciones web

Con Azure App Service, puede hospedar los estilos de aplicación web

más comunes, incluidos los siguientes:


 Web Apps

 API Apps

 Trabajos web

 Mobile Apps

Azure App Service controla la mayoría de las decisiones de

infraestructura con las que se enfrenta al hospedar aplicaciones web: la


implementación y administración están integradas en la plataforma, los
puntos de conexión se pueden proteger, se pueden escalar
rápidamente sitios para controlar grandes cargas de tráfico y el
equilibrio de carga incorporado y el administrador de tráfico

proporcionan alta disponibilidad. Todos estos estilos de aplicación se


hospedan en la misma infraestructura y compartan estas ventajas. Esto
4
convierte a App Service en la elección ideal para hospedar aplicaciones
orientadas a la web.

Aplicaciones web

App Service incluye compatibilidad completa para hospedar


aplicaciones web con [Link], [Link] Core, Java, Ruby, [Link], PHP

o Python. Puede elegir Windows o Linux como sistema operativo del


host.

Aplicaciones de API

Al igual que al hospedar un sitio web, puede crear API web basadas en
REST mediante el lenguaje y el marco que prefiera. Obtenga

compatibilidad completa con Swagger y la posibilidad de empaquetar


y publicar la API en Azure Marketplace. Las aplicaciones producidas se

pueden consumir desde cualquier cliente basado en HTTP(s).

Trabajos web

Los trabajos web permiten ejecutar un programa (.exe, Java, PHP,


Python o [Link]) o un script (.cmd, .bat, PowerShell o Bash) en el

mismo contexto que una aplicación web, aplicación de API o aplicación

móvil. Pueden estar programados o ejecutarse mediante un


desencadenador. Los trabajos web suelen usarse para ejecutar tareas

en segundo plano como parte de la lógica de aplicación.

Back-end de aplicación móvil

Use la característica Mobile Apps de Azure App Service para crear


rápidamente un back-end para aplicaciones iOS y Android. Con unos
5
pocos clics en Azure Portal, puede:

 Almacenar los datos de aplicaciones móviles en una base de


datos SQL en la nube.

 Autenticar a clientes con proveedores sociales comunes como


MSA, Google, Twitter y Facebook.

 Enviar notificaciones de inserción.

 Ejecutar lógica de back-end personalizada en C# o [Link].

En el lado de la aplicación móvil, hay compatibilidad con el SDK para


aplicaciones nativas de iOS y Android, Xamarin y React.
EXPLORAR INFORMÁTICA
SIN SERVIDOR EN AZURE
La informática sin servidor es la abstracción de los servidores, la

infraestructura y los sistemas operativos. Con la informática sin

servidor, Azure se encarga de administrar la infraestructura de servidor


y la asignación o desasignación de recursos según la demanda. La

infraestructura no es responsabilidad del usuario. El ajuste de escala y


el rendimiento se controlan automáticamente y se facturan solo los
recursos exactos que se usan. Tampoco hay ninguna necesidad de
reservar capacidad.

6 La informática sin servidor engloba tres ideas: la abstracción de


servidores, un escalado controlado por eventos y la microfacturación:

1. Abstracción de servidores: la informática sin servidor abstrae

los servidores en los que se ejecuta. Nunca se reservan


explícitamente instancias de servidor, la plataforma lo hace
automáticamente. Cada una de las ejecuciones de funciones
puede ejecutarse en una instancia de proceso diferente, y este

contexto de ejecución es transparente para el código. Con la

arquitectura sin servidor, solo es necesario implementar el


código, el cual se ejecuta con alta disponibilidad.

2. Escalado controlado por eventos: la informática sin servidor


es una opción excelente para las cargas de trabajo que

responden a eventos entrantes. Los eventos incluyen


desencadenados por temporizadores (por ejemplo, si una
función tiene que ejecutarse cada día a las 10:00 UTC),

protocolos HTTP (escenarios de API y webhook), colas (por


ejemplo, con procesamiento de pedidos) y muchos más. En
lugar de escribir una aplicación completa, el desarrollador crea
una función, la cual contiene código y metadatos sobre sus

desencadenadores y enlaces. La plataforma programa

automáticamente la función para que se ejecute y escala el


número de instancias de proceso según la tasa de eventos de

entrada. Los desencadenadores definen cómo se invoca una

función y los enlaces proporcionan una manera declarativa de

conectarse a los servicios desde el código.

3. Microfacturación: la informática tradicional se basa en el


concepto de facturación por segundo, pero a menudo no es tan

7 útil como parece. Incluso si el sitio web de un cliente solo recibe


una visita al día, este sigue pagando por tenerlo disponible

durante todo el día. Con la informática sin servidor, solo se paga


por el tiempo durante el que se ejecuta el código. Si no se
produce ninguna ejecución de función activa, no se cobra al
cliente. Por ejemplo, si el código se ejecuta una vez al día

durante dos minutos, se le cobrará por una ejecución y por dos


minutos de tiempo de proceso.
Azure tiene dos implementaciones de proceso sin servidor:

• Azure Functions, que puede ejecutar código en prácticamente

cualquier lenguaje moderno.

• Azure Logic Apps, cuyo diseño está basado en web y puede

ejecutar lógica desencadenada por servicios de Azure sin


escribir ningún código.

Azure Functions

Azure Functions es una buena opción si le preocupa solo el código que

ejecuta el servicio, pero no la infraestructura o la plataforma

subyacentes. Se usan normalmente cuando se debe realizar un trabajo


en respuesta a un evento, a menudo a través de una solicitud REST, un
1 temporizador o un mensaje de otro servicio de Azure, y cuando ese
trabajo puede completarse rápidamente, en segundos o en menos
tiempo.

Azure Functions escala automáticamente según la demanda para que


sea una opción sólida cuando la demanda es variable. Por ejemplo,
podría recibir mensajes de una solución de IoT que se usa para
supervisar una flota de vehículos de entrega. Probablemente llegarán

más datos durante el horario comercial.

Con un enfoque basado en máquina virtual, se podrían generar costos


aunque la máquina virtual estuviera inactiva. Con Functions, Azure

ejecuta el código cuando se desencadena y desasigna recursos


automáticamente cuando la función finaliza. En este modelo, solo se le

cobrará por el tiempo de CPU utilizado mientras se ejecuta la función.


Además, Azure Functions pueden estar sin estado (la opción

predeterminada), donde se comportan como si se reiniciaran cada vez


que responden a un evento, o con estado (denominadas "Durable
Functions"), donde se pasa un contexto a través de la función para
realizar un seguimiento de la actividad anterior.

Las funciones son un componente clave de la informática sin servidor,


pero también son una plataforma de proceso general para ejecutar
cualquier tipo de código. Si cambian las necesidades de la aplicación
del desarrollador, puede implementar el proyecto en un entorno que

no sea sin servidor, lo que le proporciona la flexibilidad para


administrar el escalado, realizar ejecuciones en redes virtuales e incluso
aislar las funciones por completo.

Azure Logic Apps


2
Azure Logic Apps son similares a Functions: ambas permiten

desencadenar la lógica en función de un evento. Cuando Functions


ejecuta el código, Logic Apps ejecuta flujos de trabajo diseñados para
automatizar escenarios empresariales y creados a partir de bloques
lógicos predefinidos. Todos los flujos de trabajo de Logic Apps

comienzan con un desencadenador, que se activa cuando sucede un

evento específico o cuando hay nuevos datos disponibles que cumplen


determinados criterios. Muchos desencadenadores incluyen

funcionalidades de programación básicas que permiten a los


desarrolladores especificar con qué frecuencia se ejecutarán sus cargas

de trabajo. Cada vez que el desencadenador se activa, el motor de


Logic Apps crea una instancia de aplicación lógica que ejecuta las
acciones del flujo de trabajo. Estas acciones también pueden incluir
conversiones de datos y controles de flujo, como instrucciones

condicionales, instrucciones "switch", bucles y bifurcaciones.

Los flujos de trabajo de Logic Apps se crean mediante un diseñador


visual en Azure Portal o en Visual Studio. Los flujos de trabajo se

conservan como un archivo JSON con un esquema de flujo de trabajo

conocido.

Azure proporciona más de 200 conectores y bloques de procesamiento


diferentes para interactuar con numerosos servicios, que incluyen las

aplicaciones empresariales más populares. También puede crear


conectores personalizados y los pasos de flujo de trabajo si el servicio
con el que necesita interactuar no está cubierto. Luego, se usa el
diseñador visual para vincular los conectores y bloques entre sí,
pasando datos a través del flujo de trabajo para realizar un
3
procesamiento personalizado (a menudo sin escribir ningún código).

Por ejemplo, supongamos que llega un vale a ZenDesk. Podría:

1. Detectar la intención del mensaje con Cognitive Services.

2. Crear un elemento en SharePoint para realizar un seguimiento

del problema.

3. Si el cliente no se encuentra en la base de datos, agregarlo al

sistema Dynamics 365 CRM.

4. Enviar un correo electrónico de seguimiento para confirmar su

solicitud.
Todo eso se podría estructurar en un diseñador visual, lo que facilitaría

la visualización del flujo lógico, que es perfecto para un rol de analista


de negocios.

Comparación entre Functions y Logic Apps

Functions y Logic Apps pueden crear orquestaciones complejas. Una

orquestación es una colección de funciones o pasos que se ejecutan

para realizar una tarea compleja. Con Azure Functions, se escribe


código para completar cada paso; con Logic Apps, se usa una interfaz

gráfica de usuario para definir las acciones y cómo se relacionan entre


sí.

Puede mezclar y combinar servicios cuando crea una orquestación,


llamando a las funciones desde las aplicaciones lógicas y viceversa.

4 Aquí se indican algunas diferencias comunes entre las dos.

Functions Logic Apps

Estado Normalmente sin Con estado


estado, pero Durable
Functions

proporciona el

estado

Desarrollo Orientado al código Orientado al


(imperativo) diseñador

(declarativo)

Conectividad Con una docena de Gran colección de

tipos de enlaces conectores,


integrados, puede Enterprise
escribir código para Integration Pack para

los enlaces escenarios B2B,

personalizados creación de
conectores

personalizados

Acciones Cada actividad es Gran colección de


una función de acciones listas para

Azure; puede escribir usar


código para las
funciones de

actividad

Supervisión Azure Application Azure Portal, Log


5
Insights Analytics

Administración REST API, Visual Azure Portal, API

Studio REST, PowerShell,


Visual Studio

Contexto de Se puede ejecutar Solo se ejecuta en la

ejecución localmente o en la nube


nube
RESUMEN
Azure proporciona varios servicios para llevar a cabo el proceso en la
nube, pero la elección del servicio correcto depende de sus

necesidades empresariales. Tenga en cuenta que algunas

funcionalidades pueden utilizarse para lo mismo. Por ejemplo, puede

usar contenedores de Azure o Azure Functions como parte de una


arquitectura sin servidor. Sin embargo, en última instancia, tomar la
decisión adecuada depende de la funcionalidad del servicio y las
habilidades de su equipo de desarrollo.

Más información

Para obtener más información sobre los servicios de proceso


disponibles en Azure, consulte algunas de las páginas siguientes.
6

• Introducción a las opciones de proceso de Azure

• Escenarios típicos para ejecutar máquinas virtuales de Azure


1

Prepárese para una


implementación de Microsoft
Teams con
Microsoft 365
BIENVENIDA
Revise la experiencia de usuario de Microsoft Teams y obtenga
información sobre los requisitos y las consideraciones importantes para

implementar los equipos como parte de una instalación de Microsoft


365. También aprenderá acerca de las directivas de gobierno, como la

expiración, la retención y el archivado.

Al final de este módulo, usted debe ser capaz de:

 Describir las capacidades de los equipos y la experiencia del

2 usuario.
 Explicar las tecnologías principales de Teams.
 Comprender las herramientas de administración de Teams.

 Explicar las licencias de Teams.


 Planificar el gobierno de Teams.
 Planifique la gestión del ciclo de vida.

 Describir los requisitos de red de Teams.

Requisitos previos

 Ninguno

Introducción 2 min

Explore la experiencia de usuario de Teams 4 min

Descubra la arquitectura de Teams 2 min


Comprender las herramientas de administración de Teams 4

min

Administrar licencias de Teams4 min

Plan de gobernanza en Teams 2 min

Planificar la gestión del ciclo de vida 2 min

Revisar los requisitos de red de los equipos 4 min

3
INTRODUCCIÓN
Microsoft Teams es su centro de trabajo en equipo en Microsoft 365.

Teams es un área de trabajo basada en chat que reúne chat, reuniones,


llamadas y Office 365, todo en uno. Y se basa en la confianza de la
seguridad y el cumplimiento de Microsoft que es crucial para las
empresas de hoy en día.

Teams ofrece cuatro áreas principales con el fin de crear un área de

trabajo digital para equipos de alto rendimiento: Comunicación,


Colaboración, Personalización y Trabajo con confianza.
Comunicación
Teams satisface las necesidades de comunicación de una fuerza de

trabajo diversa al proporcionar una solución completa de reuniones y

llamadas, incluido el chat, la voz y el vídeo. Puede usar los equipos para
los chats informales 1:1 o de grupo mediante el escritorio de los
equipos o el cliente web o directamente en el teléfono si está en
movimiento. También puede tener una conversación abierta en un
canal para que las personas puedan compartir información de una
manera transparente para acelerar la toma de decisiones. Es fácil pasar
de un chat a una reunión cara a cara, ayudándote a salvar barreras
5 geográficas.
Colaboración
Cuando se trata de colaboración, la integración profunda de los

equipos con Office 365 permite a la fuerza de trabajo


multigeneracional de hoy en día usar las aplicaciones de Office con las
que están familiarizados (Word, Excel, PowerPoint, OneNote,

SharePoint, Planner, incluso Power BI), en el contexto de los equipos.


Teams reúne todos los servicios de Office 365 para que pueda

colaborar y compartir fácilmente archivos.

Personalizar
Con Teams, ya no es necesario saltar entre las aplicaciones y los
servicios de Office 365. Dado que Teams es el centro de todos los

servicios y herramientas que usan los equipos en el día a día, puede

personalizar los equipos con pestañas, conectores y bots para incluir


las aplicaciones y los servicios que necesita, incluidas las aplicaciones
comunes de terceros. Teams es una plataforma extensible que le
permite crear aplicaciones e integrarse con procesos empresariales.
Trabajar con confianza
Microsoft Teams incluye la seguridad, el cumplimiento y la capacidad

de administración de nivel empresarial que espera de Office 365.

Explore la experiencia de
usuario de Teams
Microsoft Teams le permite reunir rápidamente un equipo con
personas dentro y fuera de su organización, chatear con otros para

impulsar conversaciones rápidas e inclusivas, compartir y coautorizar


documentos de forma segura e iterar en proyectos. Veamos algunos
de los elementos clave de la experiencia del usuario de Teams.
7

¿Qué son los equipos?

Un equipo es una colección de personas, contenido y herramientas que


rodean diferentes proyectos y resultados dentro de una organización.
Los equipos se pueden crear para ser privados solo para los usuarios

invitados. Los equipos también se pueden crear para ser públicos y


abiertos y cualquier persona dentro de la organización puede unirse
(hasta 5.000 miembros). A continuación, puede designar uno o varios

de estos miembros para que sean propietarios de equipos con


privilegios administrativos.

Microsoft Teams puede ser dinámico para el trabajo basado en

proyectos (por ejemplo, el lanzamiento de un producto), así como en


curso, para reflejar la estructura interna de su organización (por
ejemplo, departamentos y ubicaciones de oficina). Las conversaciones,

los archivos y las notas en todos los canales del equipo solo son visibles
para los miembros del equipo.

¿Qué son los canales?

Los canales son secciones dedicadas dentro de un equipo que

mantienen las conversaciones organizadas por temas, proyectos o

disciplinas específicas. Los archivos que comparte en un canal (en la

pestaña Archivos) se almacenan en SharePoint.

Los canales de equipo son lugares donde todos los miembros del
equipo pueden tener conversaciones abiertamente. Los canales son
más valiosos cuando se amplían con aplicaciones que incluyen

pestañas, conectores y bots que aumentan su valor para los miembros


8
del equipo, como se describe en el módulo Administrar aplicaciones,
bots y conectores.
¿Qué es el chat?

Aunque las conversaciones de canal son públicas, los chats son solo

entre tú y otra persona (o un grupo de personas). Piense en ellos como


mensajes instantáneos en otras aplicaciones de mensajería. Los chats
privados solo son visibles para los participantes del chat.

Se inician los chats uno a uno y en grupo de la misma manera:

seleccionando Nuevo chat en la parte superior de los equipos. Una vez

en un chat, podrás enviar mensajes que incluyan archivos, enlaces,


emojis, stickers y gifs. Hay muchas opciones de formato para los
mensajes de chat, incluidas las opciones de resaltado, tamaño de
fuente, listas y mucho más.

Teams guarda todo tu historial de chat, todo el camino de vuelta al

primer mensaje que enviaste, esto se conoce como chat persistente. Si


alguien deja tu organización, las respuestas de chat de esa persona
permanecerán en tu historial de chat.
Descrubre la arquitectura
de Teams
Teams es fundamental para la arquitectura lógica de los servicios de

productividad en Microsoft 365, incluidas las capacidades de gobierno


de datos, seguridad y cumplimiento. Teams se basa en grupos de Office

365, Microsoft Graph y la misma seguridad, cumplimiento y capacidad

de administración de nivel empresarial que el resto de Office 365.

¿Cómo interactúa Teams con las tecnologías subyacentes?

Las capacidades de la aplicación Microsoft Teams dependen de las


tecnologías de comunicación y colaboración subyacentes. Cuando
10 creas un equipo, esto es lo que se crea:

 Un nuevo grupo de Office 365

 Un sitio de SharePoint Online y una biblioteca de documentos


para almacenar archivos de equipo
 Un calendario y un buzón compartidos de Exchange Online

 Un cuaderno de OneNote

Al crear un equipo a partir de un grupo de Office 365 existente, la


pertenencia a ese grupo, el sitio, el buzón y el bloc de notas a partir de

Teams. Para personalizar y ampliar Teams, puede agregar otras

aplicaciones de Office 365, como Planner y Power BI, a través de


aplicaciones, bots y conectores mediante pestañas personalizadas.
11

Integración de Teams con grupos de Office 365

Al crear un equipo en Microsoft Teams, en el back-end, está creando

un grupo de Office 365 y la biblioteca de documentos de SharePoint

asociada y el bloc de notas de OneNote, junto con vínculos con otras


aplicaciones en la nube de Office 365. Puede agregar o quitar
miembros del grupo del igual que lo haría con cualquier otro objeto

de seguridad basado en grupo en Active Directory.

¿Cómo administra Teams las identidades?

Teams admite todos los modelos de identidad que están disponibles


con Office 365. Teams aprovecha las identidades almacenadas en

Azure Active Directory (Azure AD), que combina servicios de directorio

principales, administración de acceso a aplicaciones y protección de

identidades en una única solución.

Teams utiliza tres modelos de identidad:

 Con el modelo de Cloud Identity, un usuario se crea y


administra en Office 365 y se almacena en Azure AD, y Azure
12 AD comprueba la contraseña.

 Con La identidad sincronizada, la identidad de usuario se


administra en un servidor local y las cuentas y los hashes de
contraseña se sincronizan con la nube.

 El modelo de identidad federada requiere una identidad


sincronizada en la que el proveedor de identidades local (como
Servicios de federación de Active Directory (ADFS) comprueba

la contraseña de usuario.

¿Dónde almacena Teams los datos?

Los datos de Microsoft Teams residen en la región geográfica asociada


con el inquilino de Office 365. Actualmente, Teams es compatible con

las regiones de Australia, Canadá, Francia, India, Japón, Sudáfrica, Corea

del Sur, Reino Unido, América, APAC y EMEA.


Los tipos de datos clave se almacenan en varias ubicaciones cuando los

datos no están en uso activo.

¿Qué son las dependencias de servicio de Teams?

Para obtener la experiencia completa de Microsoft Teams, cada usuario


debe estar habilitado para la creación de grupos de Exchange Online,

SharePoint Online, OneDrive para la Empresa y Office 365. Los

administradores deben considerar si podrán implementar las

características de Microsoft Teams que su organización requiere con


sus implementaciones actuales de Exchange y SharePoint.

13

Importante

SharePoint Online es un requisito previo para usar OneDrive para la

Empresa. Sin SharePoint Online o OneDrive para la Empresa, no puede


almacenar y compartir archivos en canales, compartir archivos privados

ni tener acceso al sitio de SharePoint de equipo.


Comprender las
herramientas de
administración de Teams
Microsoft Teams proporciona a los administradores herramientas

eficaces para administrar equipos y conectar usuarios. Se emplean dos


tipos generales de herramientas de gestión: interfaces gráficas de

usuario (GUI) y herramientas de línea de comandos y automatización.

Tenga en cuenta que, para aprovechar las capacidades de


administración completas con estos dos conjuntos de herramientas,

debe tener asignado el rol de administrador de servicio global o de


equipos.
14
Las principales herramientas de GUI para la administración de Teams
son:

 Microsoft Teams admin center

 Azure Active Directory admin center


 Microsoft 365 admin center
 Office 365 Security & Compliance Center

Las herramientas de línea de comandos y automatización incluyen:

 PowerShell, para la configuración y la administración limitada


del ciclo de vida

 Graph API, para la gestión del ciclo de vida


Centro de administración de Microsoft Teams

Se puede tener acceso a las herramientas de administración de

Microsoft Teams en el Centro de administración de Microsoft Teams


en Equipos > Administrar equipos. Cada equipo está respaldado por
un grupo de Office 365 y este nodo proporciona una vista de los
grupos que se han habilitado para Microsoft Teams en su organización.

Los administradores pueden editar la configuración específica del

grupo y del equipo aquí.

15

Centro de administración de Microsoft 365

Puede desactivar o activar las aplicaciones para Teams en la

configuración de todo el inquilino en el Centro de administración de


Microsoft 365. Debe tener permisos administrativos de Office 365 para

tener acceso a esta configuración. En Aplicaciones, puede activar y


desactivar las aplicaciones predeterminadas y configurar la

configuración para controlar las aplicaciones externas.

Microsoft Teams proporciona aplicaciones predeterminadas, como


Planner, Praise y Weather. Para activar una aplicación, active la casilla
de verificación de esa aplicación. Para desactivar una aplicación,
desactive la casilla de verificación.

Las aplicaciones externas son proporcionadas por terceros. Puede

configurar los siguientes ajustes para aplicaciones externas:

 Permitir aplicaciones externas en Microsoft Teams


 Permitir la carga lateral de aplicaciones externas
 Habilitar nuevas aplicaciones externas de forma
predeterminada
16
También puede controlar la configuración de usuario de toda la
organización en el centro de administración de Microsoft Teams en

Configuración de toda la organización.

Centro de seguridad y cumplimiento de Office 365

El Centro de cumplimiento y seguridad de Office 365 está diseñado


para ayudarle a administrar las características de cumplimiento en
Office 365 para su organización, incluidos Teams. Los vínculos a las

características de cumplimiento de SharePoint y Exchange existentes

reúnen las capacidades de cumplimiento en Office 365. Para usar el

Centro de seguridad y cumplimiento, debe tener asignado el rol de


administrador global de Office 365 o un administrador global le haya
asignado a uno o varios grupos de roles del Centro de seguridad y

cumplimiento.

PowerShell
17

PowerShell es un lenguaje de shell y scripting que ayuda a los


administradores del sistema y a los usuarios avanzados a automatizar

rápidamente las tareas de administración desde una línea de


comandos. Los administradores pueden usar PowerShell para
administrar, la configuración y la directiva en Teams.

Los controles de PowerShell para administrar los equipos se


encuentran en dos módulos de PowerShell diferentes: el módulo de

PowerShell de Microsoft Teams y el skype para el módulo de


PowerShell empresarial. El módulo de PowerShell de Teams contiene
todos los cmdlets que necesita para crear y administrar equipos. El
Skype para el módulo de PowerShell empresarial contiene los cmdlets

para administrar directivas, configuraciones y otras herramientas de

Teams.
Estos cmdlets solo funcionan en los equipos para los que es propietario

o miembro. Los administradores globales o los administradores de


servicios de Microsoft Teams pueden actuar en todos los equipos de
su organización.

Microsoft Graph API

Microsoft Graph es la puerta de enlace a los datos y la inteligencia en

Microsoft 365. Graph proporciona un modelo de programación

unificado que puede usar para tener acceso a la enorme cantidad de


datos en Office 365, Windows 10 y Enterprise Mobility + Security.
Graph se basa en una API basada en REST que permite el acceso a los
equipos y otros servicios de Microsoft 365.

18

En Graph, Microsoft Teams está representado por un recurso de grupo,

ya que Teams y Grupos de Office 365 trabajan juntos para facilitar la


colaboración en grupo. La mayoría de las mismas características
basadas en grupos se aplican a los grupos de Teams y Office 365, la

principal diferencia es la forma en que los miembros se comunican

entre sí. Los miembros de Team se comunican mediante chat


persistente en el contexto de un equipo específico. Los miembros del

grupo de Office 365 se comunican por conversaciones de grupo, que


son conversaciones de correo electrónico que se producen en el
contexto de un grupo en Outlook. Microsoft Graph es una herramienta
muy eficaz para administrar equipos reales.

19
Administrar licencias de
Teams
Las suscripciones de Office 365, incluidos Microsoft Teams, están

disponibles en los siguientes tipos de planes:

 Pequeñas empresas

 Empresa
 Educación

 Desarrollador

En términos de funcionalidades principales de Teams, no hay


diferencias entre las suscripciones de Office 365. La disponibilidad de

las capacidades de cumplimiento se basa en el nivel de suscripción


20
correcto.

Las licencias de Microsoft Teams están diseñadas para ofrecer la


máxima flexibilidad. Después de usar las características básicas de

Teams, puede comprar licencias de complementos para más


características, como conferencias de audio, sistema telefónico, planes
de llamadas y salas de Teams.

Para las conferencias de audio, su organización tendrá que comprar y

asignar una licencia de conferencia de audio a cada usuario que

configurará reuniones de acceso telefónico local. Para los planes de

llamadas, cada usuario necesitará un sistema telefónico más un plan de


llamadas nacionales o nacionales e internacionales.
Use directivas de mensajería, administradas desde el Centro de

administración de Microsoft Teams, para controlar qué características


de chat y mensajería de canal están disponibles para los usuarios de
Teams. Puede usar la directiva predeterminada o crear una o varias
directivas de mensajería personalizadas para las personas de su

organización.

Todos los planes de suscripción admitidos son aptos para el acceso al

cliente web de Teams, los clientes de escritorio y las aplicaciones


móviles.

Administrar licencias de usuario de Teams a través del Centro de


administración de Microsoft 365

Las licencias de nivel de usuario de Teams se administran directamente


21
a través de la interfaz de administración de usuario del del centro de
administración de Microsoft 365. Un administrador puede asignar
licencias a nuevos usuarios cuando se crean nuevas cuentas de usuario
o a usuarios existentes. El administrador debe tener privilegios de
administrador global de Office 365 o administrador de administración

de usuarios para administrar licencias de Microsoft Teams.

Cuando se asigna una SKU de licencia a un usuario, se asigna

automáticamente una licencia de Microsoft Teams y el usuario está


habilitado para Microsoft Teams. Los administradores pueden tener

control granular sobre todos los servicios y licencias de Office 365, y la

licencia de Microsoft Teams para un usuario específico o un grupo de

usuarios se puede habilitar o deshabilitar.


Plan de gobernanza en
Teams
Teams ofrece un amplio conjunto de herramientas para implementar

los requisitos de gobierno de su organización. Los administradores


pueden controlar la mensajería, las reuniones, las llamadas, las

características de eventos en vivo y mucho más para su organización

mediante directivas de mensajería. Microsoft Teams está respaldado


por las capacidades avanzadas de seguridad y cumplimiento de Office
365 y admite auditorías e informes, búsqueda de contenido de
cumplimiento, detección de documentos electrónicos, retención legal
y directivas de retención. Se pueden aplicar directivas diferentes a

todos los usuarios de forma predeterminada o por usuario según lo


22
requiera su organización.

Creación de grupos y equipos, nomenclatura, clasificación y acceso

de invitados

Es posible que su organización requiera que implemente controles


estrictos sobre cómo se nombran y clasifican los equipos, si los
invitados se pueden agregar como miembros del equipo y quién puede

crear equipos. Tenga en cuenta los siguientes puntos de decisión y


pasos al planificar la gobernanza.
Puntos de decisión

 ¿Su organización requiere una convención de nomenclatura


específica para los equipos?
 ¿Necesitan los creadores de equipos la capacidad de asignar

clasificaciones específicas de la organización a los equipos?


 ¿Necesita restringir la capacidad de agregar invitados a los

equipos por equipo?


 ¿Su organización requiere limitar quién puede crear equipos?

Próximos pasos

 Documente los requisitos de su organización para la creación


de equipos, la nomenclatura, la clasificación y el acceso de
invitado.
23
 Planee implementar estos requisitos como parte de la
implementación de Teams.
 Comunique y publique las directivas para informar a los

usuarios de Teams del comportamiento que pueden esperar.

Caducidad, retención y archivado de grupos y equipos

Su organización puede tener requisitos adicionales para establecer


directivas para la expiración, retención y archiving de equipos y datos
de Microsoft Teams (mensajes de canal y archivos de canal). Puede

configurar fácilmente las directivas de expiración del grupo para

administrar automáticamente el ciclo de vida del grupo y las directivas


de retención para conservar o eliminar la información según sea
necesario. También puede archivar equipos para conservar una vista

puntual de un equipo que ya no está activo.

Puntos de decisión

 ¿Su organización requiere especificar una fecha de caducidad

para los equipos?


 ¿Su organización requiere que se apliquen directivas de

retención de datos específicas a los equipos?


 ¿Espera su organización la capacidad de archivar equipos

inactivos para conservar el contenido en un estado de solo

lectura?

Próximos pasos

24
 Documente los requisitos de su organización para la expiración

del equipo, la retención de datos y el archivado.


 Planee implementar estos requisitos como parte de la

implementación de Teams.
 Comunique y publique las directivas para informar a los
usuarios de Teams del comportamiento que pueden esperar.

Administración de características de Teams

Teams también ofrece a las organizaciones la capacidad de controlar a

qué características pueden acceder los usuarios. Puede administrar las

características de mensajería, reunión y llamada, ya sea en el nivel de


inquilino de Office 365 o por usuario.
Puntos de decisión

 ¿Su organización requiere limitar las características de Teams


para todo el inquilino?
 ¿Su organización requiere limitar las características de Teams

para usuarios específicos?

Próximos pasos

 Documente los requisitos de su organización para limitar las


características de Teams en el nivel de inquilino y usuario.
 Planee implementar sus requisitos específicos como parte de la

implementación de los equipos.


 Comunique y publique las directivas para informar a los
usuarios de Teams del comportamiento que pueden esperar.
25
Planificar la gestión del
ciclo de vida
La planificación de la administración del ciclo de vida es esencial para

que su organización obtenga el máximo beneficio de Teams. Al igual


que la mayoría de los proyectos, la creación y gestión de equipos pasa

por etapas inicial, media y final. Sin embargo, Teams tiene una variedad

de usos que no siempre puede ser obvio en qué etapa se encuentra un


proyecto. Tener un plan para la administración del ciclo de vida le
ayudará a realizar un seguimiento de los proyectos de su organización
a medida que pasan por estas etapas.

Ciclo de vida de Teams


26
En Teams, cada equipo individual tiene su propio ciclo de vida con la
siguiente secuencia:

 Iniciar
 Activo
 Atardecer

En términos generales, el ciclo de vida de un equipo de Teams abarca


tanto la configuración (configuraciónestática y directivas) como la
administración, que es dinámica por equipo durante el ciclo de vida.
El propietario del equipo configura el ciclo de vida de Teams. La

configuración del ciclo de vida difiere de la configuración de Microsoft


Teams porque esta última se refiere a la configuración global y las

configuraciones específicas del usuario que rara vez cambian una vez
que se han definido.

27 Las actividades de administrador proactivo incluyen iniciar la creación


de equipos (incluidos propietarios, miembros, canales, etc.) y la puesta

de sol de los equipos según lo requiera la empresa. Las actividades de


administrador reactiva incluyen cambiar la configuración del equipo en
nombre del propietario y agregar propietarios de equipo para equipos

huérfanos.

Etapas del ciclo de vida de Teams

Normalmente, las etapas del ciclo de vida de cada equipo incluyen un

comienzo, un medio y un final, cuando el equipo ha completado su


propósito y ha alcanzado el final de su vida útil.

La etapa inicial implica definir el objetivo y la membresía del equipo;

crear el equipo y sus canales; invitar a los miembros del equipo; y


establecer permisos para los miembros individuales. Los puntos clave

de decisión a tener en cuenta en la etapa inicial incluyen:

 ¿Cuál es el propósito del equipo?


 ¿Quién pertenece al equipo?

 ¿El equipo será privado o público?

 ¿Pueden los nuevos miembros agregarse a sí mismos o los


propietarios del equipo agregarlos?
 ¿Quién tendrá permisos para crear canales o agregar pestañas,
bots y conectores?

 ¿Qué canales iniciales se añadirán al equipo?

En la etapa intermedia, la colaboración se lleva a cabo de acuerdo con


un flujo de trabajo establecido, con los miembros del equipo
interactuando hacia objetivos comunes dentro de los canales del
28
equipo. Los puntos de decisión que debe tener en cuenta en esta etapa

incluyen:

 ¿Quién supervisará el uso para identificar problemas?


 ¿Qué métricas se utilizarán para determinar el estado del
equipo?
 Identificar a los equipos que hayan llegado al final de su vida

útil.

 Identificar equipos insalubres que todavía sirven para un

propósito, pero necesitan revitalizarse.

La fase final se produce cuando un equipo ha concluido su ciclo de

vida útil, normalmente para un proyecto finito. En esta etapa, reconoce

formalmente el cierre del equipo y elimina los equipos que ya no


necesita; tenga en cuenta que se trata de una eliminación temporal que
TI puede revertir durante un máximo de 21 días (30 días para los grupos

de Office 365). La eliminación de equipos no afecta a los chats ni al


contenido que se hayan retenido de acuerdo con las directivas de
cumplimiento. Entre los puntos de decisión importantes relacionados
con la fase final se incluyen:

 Definir cómo es el final de la vida de un equipo.


 Decidir si mantener el contenido almacenado de un equipo
disponible y durante cuánto tiempo.
 Documentar las mejores prácticas y lecciones aprendidas.

 Archivar datos, si es necesario.

Automatización a lo largo del ciclo de vida

Este diagrama visualiza un ciclo de vida del equipo mediante las


29
herramientas de automatización de PowerShell y Graph API.
Revisar los requisitos de
red de Teams
Para prepararse para implementar Teams, debe revisar los requisitos

de red. Asegúrese de que tiene el ancho de banda necesario, acceso a


todas las direcciones IP necesarias, los puertos correctos abiertos y que

cumple los requisitos de rendimiento para los medios en tiempo real.

Teams combina tres tipos de tráfico de red:

 Tráfico de datos entre el entorno en línea de Office 365 y el

cliente de Teams (señalización, presencia, chat, carga y


descarga de archivos, sincronización de OneNote)

 Tráfico de comunicaciones punto a punto en tiempo real


30
(audio, vídeo, uso compartido de escritorio)
 Tráfico de comunicaciones en tiempo real de conferencias

(audio, vídeo, uso compartido de escritorio)

Esto afecta a la red en dos niveles: flujos de tráfico entre los clientes de

Teams directamente en situaciones punto a punto y entre el entorno


de Office 365 y los clientes de Microsoft Teams para reuniones. Para

asegurarse de que el flujo de tráfico es óptimo, debe permitir que los

datos fluyan entre los segmentos de red internos (por ejemplo, entre
sitios a través de la red de área extensa (WAN)), así como entre los
sitios de red y Office 365. No abrir los puertos correctos o bloquear

activamente puertos específicos dará lugar a una experiencia

degradada.
Para obtener una experiencia óptima con medios en tiempo real dentro

de Teams, la red debe cumplir los requisitos de red para Office 365.

Considere sus capacidades de red

Al planear una implementación de Teams, tenga en cuenta estas


preguntas relacionadas con la red antes de empezar:

 Conectividad a la red de Office 365


o ¿Se puede acceder a todas las direcciones IP y puertos

necesarios?
o ¿Cómo se enruta el tráfico a la red de Office 365?
 Calidad de la red: ¿Cuáles son las tasas de latencia, fluctuación

y pérdida de paquetes de la red?


 Ancho de banda disponible: ¿Hay suficiente ancho de banda
31
para los usuarios y las tecnologías subyacentes?

Otros factores que pueden influir potencialmente en la calidad de los


medios en Teams son el ruido acústico y visual en el entorno y los

dispositivos que se usan para capturar y reproducir audio y vídeo.


También tenga en cuenta que la mayoría de las redes inalámbricas no
están diseñadas para la comunicación en tiempo real, siempre que sea

posible una red cableada.

Utilice el planificador de red

En unos pocos pasos, el planificador de red puede ayudarle a


determinar y organizar los requisitos de red para conectar a los

usuarios de Teams en toda la organización. Cuando se proporcionan

los detalles de red y el uso de Teams, el Planificador de red calcula los


requisitos de red para implementar Teams y voz en la nube en las

ubicaciones físicas de la organización.

32 Network Planner le permite:

 Cree representaciones de su organización mediante sitios y

personas recomendadas por Microsoft (trabajadores de oficina,


trabajadores remotos y sistema de salas de equipos).

 Generar informes y calcular los requisitos de ancho de banda


para el uso de Teams.

Para usar Network Planner, debe ser administrador global,

administrador de servicios de Teams o administrador de


comunicaciones de Microsoft Teams.

Usar Skype para la herramienta de evaluación de red empresarial

Una vez que haya completado la planificación y la preparación de la


red, incluida la actualización del ancho de banda y la apertura de
puertos en el firewall, debe probar el rendimiento de la red. Los

resultados de esta prueba le darán una imagen más clara de cualquier


optimización de red o corrección necesaria para el éxito de la
implementación de Teams.

Puede descargar la herramienta de evaluación de red de Skype

Empresarial a través de este enlace a continuación. Utilice la


herramienta para probar si la red está lista para los equipos. La

herramienta ofrece doble funcionalidad: puede probar si se han abierto


todos los puertos correctos y puede probar si hay deficiencias en la red.

Después de descargar e instalar la herramienta, se puede encontrar en

C:\Program Files (x86)\Microsoft Skype for Business Network


Assessment Tool. En ese directorio se incluye una guía detallada sobre

cómo utilizar la herramienta [Link].


33

Utilice su ancho de banda

Teams le ofrece la mejor experiencia de uso compartido de audio,

vídeo y contenido, independientemente de las condiciones de red.


Teams siempre es conservador en la utilización del ancho de banda y

puede ofrecer una calidad de vídeo de alta definición en menos de 1,2

Mbps. El consumo real de ancho de banda en cada llamada o reunión

de audio/vídeo variará en función de varios factores, como el diseño


de vídeo, la resolución de vídeo y los fotogramas de vídeo por

segundo. La calidad de la llamada aumenta cada vez que hay más


ancho de banda disponible.

Con los códecs variables, los medios se pueden negociar en entornos

de ancho de banda limitado con un impacto mínimo. Pero donde el


ancho de banda no es una preocupación, las experiencias de los

usuarios se pueden optimizar para la calidad, incluida la resolución de


vídeo de hasta 1080p, hasta 30 fps para vídeo y 15 fps para contenido
y audio de alta fidelidad.

34
RESUMEN
En este módulo, ha revisado la experiencia de usuario de Microsoft
Teams y ha aprendido acerca de los requisitos y consideraciones
importantes para implementar Teams como parte de una instalación

de Microsoft 365.

Ahora que ha completado este módulo, debería poder:


35
 Describir las capacidades de Teams y la experiencia del usuario.
 Explicar las tecnologías principales de Teams.

 Comprender las herramientas de administración de Teams.

 Explicar la relación entre los grupos de Office 365 y Teams.


 Explicar las licencias de Teams.
 Planificar el gobierno de Teams.
 Planifique la gestión del ciclo de vida.
 Describir los requisitos de red de Teams.
1

Procesamiento de imágenes
con el servicio Computer
Vision
BIENVENIDA
Use Computer Vision API para analizar imágenes para las conclusiones

cognitivas, extraer texto de imágenes y generar miniaturas de alta

calidad.

En este módulo, aprenderá a:

• Crear una cuenta de Cognitive Services

• Obtener información sobre el contenido visual que se


encuentra en una imagen

• Generar una miniatura de una imagen

2
• Detectar y extraer el texto impreso de una imagen

• Detectar y extraer texto escrito a mano de una imagen.

Requisitos previos

Ninguno

Introducción 2 min

Creación de una cuenta de Cognitive Services 5 min

Obtener información sobre el contenido visual que se


encuentra en una imagen 5 min

Generación de miniaturas 5 min


Detección y extracción de texto impreso de una imagen 5 min

Detección y extracción de texto escrito a mano de una imagen

5 min

Resumen y comprobación de conocimientos 5 min

3
INTRODUCCIÓN
Como desarrollador en jefe de distribución de bebidas de Contoso, es
responsable de la creación y el mantenimiento de una aplicación de
línea de negocio que permite a los distribuidores en primera línea
digitalizar y cargar imágenes de las estanterías de la tienda que están

reabasteciendo.

Quiere validar que las imágenes publicadas por los usuarios respetan
4
las reglas de contenido establecidas por su empresa. La empresa no
quiere contenido inadecuado publicado en los sitios de la empresa.

Deberá decidir si desea crear o adquirir una solución. Crear un motor


sofisticado de procesamiento y análisis de imágenes es costoso. Una

alternativa es usar Computer Vision API de Microsoft. En este módulo,


exploraremos las características que ofrece esta API y la llamaremos

para procesar algunas imágenes.

Objetivos de aprendizaje
En este módulo, aprenderá a:

• Crear una cuenta de Cognitive Services

• Obtener información sobre el contenido visual que se


encuentra

• Detectar y extraer el texto impreso de una imagen

• Detecte y extraiga texto escrito a mano de

5
CREACIÓN DE UNA
CUENTA DE COGNITIVE
SERVICES
Microsoft Cognitive Services es un conjunto de algoritmos de

aprendizaje automático disponibles como servicio que puede usar


cualquier persona. En lugar de crear desde cero esta inteligencia para

nuestras aplicaciones, podemos usar estos servicios para objetivos

relacionados con la visión, la voz, el lenguaje, el conocimiento y la


búsqueda. Puede probar cada servicio de forma gratuita. Si decide
integrar un servicio en su aplicación, deberá suscribirse a una

6 suscripción de pago. En este modelo centraremos nuestra atención en


Computer Vision API.

Sugerencia

Para ver una lista de todos los servicios de Cognitive Services, consulte
el directorio de Cognitive Services.

¿Qué es Computer Vision API?

Computer Vision API ofrece algoritmos para procesar imágenes y

devolver información. Por ejemplo, puede averiguar si una imagen


tiene contenido para adultos o puede usarlo para buscar todos los

rostros de una imagen. También cuenta con otras características, como

la estimación de los colores dominantes y de los colores de énfasis, la


clasificación del contenido de las imágenes o la descripción de una
imagen con oraciones completas en inglés. Además, también puede

generar de forma inteligente miniaturas de imágenes para mostrar


imágenes grandes de forma eficaz.

Sugerencia

Computer Vision API está disponible en muchas regiones de todo el

mundo. Para buscar la región más cercana, consulte Productos

disponibles por región.

Puede usar Computer Vision API para:

 Analizar imágenes para obtener información


 Extraer texto impreso de las imágenes mediante el

reconocimiento óptico de caracteres (OCR).


 Reconocer texto impreso y manuscrito de las imágenes
7
 Reconocer personajes famosos y sitios emblemáticos
 Analizar vídeos

 Generar una miniatura de una imagen

Cómo llamar a Computer Vision API

En su aplicación puede llamar a Computer Vision usando directamente


bibliotecas de cliente o la API de REST. En este módulo llamaremos a la

API de REST. Para realizar una llamada:

1. Obtención de una clave de acceso de API

Al suscribirse a una cuenta de servicio de Computer Vision, se le


asignan unas claves de acceso. Se debe pasar una clave en el

encabezado de cada solicitud.


2. Realizar una llamada POST a la API

Dé formato a la dirección URL del siguiente

modo: regió[Link]/vision/v2.0/recurso/[pará
metros]

 región: región en la que ha creado la cuenta (por

ejemplo, westus).

 recurso: recurso de Computer Vision al que está llamando (por


ejemplo, analyze, describe, generateThumbnail, ocr, models, re

cognizeText o tag).

Puede proporcionar la imagen que se va a procesar como archivo


binario de imagen sin formato o como dirección URL de imagen.

El encabezado de la solicitud debe contener la clave de suscripción,


8
que proporciona acceso a esta API.

3. Análisis de la respuesta

La respuesta contiene la información que Computer Vision API tiene

sobre la imagen en forma de carga JSON.

En este módulo, todos los ejercicios de la CLI de Azure se realizarán

con Cloud Shell integrado. Descubramos más cosas sobre esta


configuración.

¿Qué es la CLI de Azure?

La CLI de Azure es la herramienta de línea de comandos

multiplataforma de Microsoft para administrar los recursos de Azure.


Está disponible para macOS, Linux y Windows, o en el explorador

con Azure Cloud Shell.

Importante

Hay dos versiones de la herramienta CLI de Azure disponibles

actualmente: CLI de Azure 1.0 y CLI de Azure 2.0. Se va a usar CLI de


Azure 2.0, que es la versión más reciente y la que se recomienda a

menos que se ejecuten scripts heredados. La CLI de Azure 1.0 se inicia


con el comando azure y la CLI de Azure 2.0 con el comando az.

Comandos de Azure Cognitive Services

La CLI de Azure incluye el comando cognitiveservices para administrar


cuentas de Cognitive Services en Azure. Podemos proporcionar varios
subcomandos para realizar tareas específicas. Los más comunes
9
incluyen:

TABLA 1

Subcomando Descripción

list Enumera cuentas de Azure Cognitive Services disponibles.

account show Obtiene los detalles de una cuenta de Azure Cognitive Services.

account create Crea una cuenta de Azure Cognitive Services.

account delete Elimina una cuenta de Azure Cognitive Services.

keys list Enumera las claves de una cuenta de Azure Cognitive Services.

Vamos a crear una cuenta de Cognitive Services con la CLI de Azure.


Creación de una cuenta de Cognitive Services

Necesitaremos una clave de acceso de API para realizar llamadas a

Computer Vision API. Para obtener las claves de acceso, necesitamos


una cuenta de Cognitive Services para Computer Vision API.

Usaremos az cognitiveservices create para crear la cuenta en nuestra

suscripción.

El comando az cognitiveservices create sirve para crear una cuenta de


Cognitive Services en un grupo de recursos. Los siguientes cinco

parámetros se deben proporcionar al llamar a este comando.

Sugerencia

La mayoría de las marcas de los parámetros de la CLI de Azure se


pueden abreviar con un único carácter. Por ejemplo, podríamos
10
indicar -l en vez de --location. La forma completa se usa para mayor

claridad.

TABLA 2

Parámetro Descripción

resource- Grupo de recursos que será propietario de la cuenta de Cognitive S

group sesión interactiva de espacio aislado, usará [nombre del grupo de recu
aislado]

kind Nombre de la API de la cuenta de Cognitive Services. Para este ejerc


Vision, pero se puede basar en Content Moderator, Face API, etc.

name Nombre de la cuenta de Cognitive Services.


TABLA 2

Parámetro Descripción

sku SKU (referencia de almacén) de la cuenta de Cognitive Services. Para e

pero puede ser F0 (nivel Gratis), S1, S2, S3 o S4.

location Ubicación (o región) desde la que quiere realizar llamadas a esta API.
de las ubicaciones de la siguiente lista.

El espacio aislado gratuito permite crear recursos en un subconjunto


de las regiones globales de Azure. Seleccione una región de la lista al
crear los recursos:

 westus2
11  southcentralus
 centralus
 eastus
 westeurope

 southeastasia
 japaneast
 brazilsouth
 australiasoutheast
 centralindia

Ejecute el siguiente comando en Azure Cloud Shell. No olvide


reemplazar [location] por una ubicación cercana a usted.

CLI de AzureCopiar

az cognitiveservices account create \


--kind ComputerVision \

--name ComputerVisionService \

--sku S1 \

--resource-group [sandbox resource group name] \

--location [location]

Nota

Recuerde la ubicación que ha seleccionado. Deberá realizar todas las


llamadas a la API desde esa región.

Hemos creado una cuenta de Cognitive Services para Computer


Vision API. Se ha seleccionado la SKU S1 y se ha asignado el
12 nombre ComputerVisionService a la cuenta. La cuenta es propiedad
del grupo de recursos [nombre del grupo de recursos del espacio
aislado] y se llamará a la API desde la ubicación que se ha establecido

en el parámetro --location.

Una vez que el comando haya acabado de crear la cuenta de Cognitive


Services, obtendrá una respuesta JSON, que incluirá la
propiedad provisioningState establecida en Correcto.

Obtención de una clave de acceso

Una vez que hayamos creado correctamente la cuenta, podremos

recuperar las claves de suscripción (o de acceso) de esta cuenta.

1. Ejecute el comando siguiente en Azure Cloud Shell:


CLI de AzureCopiar

az cognitiveservices account keys list \

--name ComputerVisionService \

--resource-group [sandbox resource group name]

El comando anterior devuelve las claves asociadas a la cuenta de

Cognitive Services denominada ComputerVisionService, cuyo


propietario es el grupo de recursos indicado. Devuelve dos claves (una
de ellas es una clave de reserva). Las claves son difíciles de recordar, así
que almacenaremos la primera en una variable que usaremos para
todas las llamadas a la API.

2. Ejecute el comando siguiente en Azure Cloud Shell:


13
CLI de AzureCopiar

key=$(az cognitiveservices account keys list \

--name ComputerVisionService \

--resource-group [sandbox resource group name] \

--query key1 -o tsv)

La CLI de Azure 2.0 usa el argumento --query para ejecutar una


consulta JMESPath en los resultados de los comandos. JMESPath es un

lenguaje de consulta para JSON que ofrece la posibilidad de

seleccionar y presentar datos de la salida de la CLI. Estas consultas se


ejecutan en la salida JSON antes de realizar cualquier otro formato de
presentación. El argumento --query es compatible con todos los

comandos de la CLI de Azure.

En nuestro ejemplo, consultamos la lista de claves en busca de una


entrada denominada "key1" y se genera el resultado en formato tsv.

Este formato quita las comillas del valor de la cadena. Asignamos el

resultado a una clave de variable.

Importante

La usaremos en todo el módulo, por lo que es buena idea guardarla en

una variable. Si pierde el valor o la variable queda anulada, vuelva a

ejecutar el comando para establecerla.

3. Para ver el valor de la clave, ejecute el siguiente comando en


Azure Cloud Shell:
14
CLI de AzureCopiar

echo $key

Ahora que tenemos una cuenta y una clave, es el momento de realizar


algunas llamadas a la API.
OBTENER INFORMACIÓN
SOBRE EL CONTENIDO
VISUAL QUE SE
ENCUENTRA EN UNA
IMAGEN
Como desarrollador en jefe de distribución de bebidas de Contoso, es
responsable de la creación y mantenimiento de una aplicación de línea

de negocio que permite a los distribuidores en primera línea digitalizar


y cargar imágenes de las estanterías de la tienda que están
15
reabasteciendo.

Quiere validar que las imágenes publicadas por los usuarios respetan
las reglas de contenido establecidas por su empresa. La empresa no

quiere contenido inadecuado publicado en los sitios de la empresa.


Dados los avances en inteligencia artificial, opta por usar Computer
Vision API en la aplicación.

Para empezar a trabajar, debe crear una cuenta de Computer Vision en

su suscripción de Azure y comenzar a probar la característica


de análisis.
Llamar a Computer Vision API para analizar imágenes

La operación analyze extrae un amplio conjunto de características

visuales en función del contenido de la imagen. La dirección URL de


solicitud tiene el formato siguiente:

[Link]

alFeatures=<...>&details=<...>&language=<...>

Los parámetros que se envían al servicio


son visualFeatures, details y languages. Establezca el

parámetro details en Landmarks o Celebrities para ayudarle a

identificar puntos de referencia o famosos. visualFeatures identifica


qué tipo de información quiere que el servicio devuelva. La
opción Categories clasificará el contenido de las imágenes como

16 árboles, construcciones y mucho más. Faces identificará las caras de las


personas y le proporcionará su sexo y edad.

Todas las operaciones de Computer Vision API tienen las siguientes

restricciones en cuanto a las imágenes que le pide que procese:

• Formatos de imagen admitidos: JPEG, PNG, GIF y BMP.

• El tamaño de los archivos de imagen debe ser inferior a 4 MB.

• Las dimensiones de las imágenes deben ser al menos de 50 x

50.
Obtención de una clave de acceso

Si aún no lo ha hecho, ejecute el siguiente comando en Azure Cloud

Shell para almacenar la clave de acceso de API en una variable


denominada key. Esta variable se usará en las llamadas siguientes.

CLI de AzureCopiar

key=$(az cognitiveservices account keys list \

--name ComputerVisionService \

--resource-group [sandbox resource group name] \

--query key1 -o tsv)

Identificación de puntos de referencia en una imagen


17
Comencemos con una llamada para buscar puntos de referencia en una
imagen. En este ejemplo usaremos la siguiente imagen, pero puede
probar el mismo comando con direcciones URL para otras imágenes.
Ejecute el siguiente comando en Azure Cloud Shell.
18 Reemplace <region> en el comando por la región de su cuenta de
servicios cognitivos.

CLI de AzureCopiar

curl

"[Link]

ualFeatures=Categories,Description&details=Landmarks" \

-H "Ocp-Apim-Subscription-Key: $key" \

-H "Content-Type: application/json" \

-d "{'url' : '[Link]

process-images-with-the-computer-vision-
service/master/images/[Link]'}" \
| jq '.'

• Esta llamada busca puntos de referencia en la imagen

especificada por la dirección URL de la imagen. En este ejercicio,


la imagen que estamos analizando está almacenada en un

repositorio de GitHub.

• La llamada también le pide al servicio que devuelva información

de la categoría y una descripción de la imagen. Se devuelve la


descripción en forma de una oración completa en inglés.

• Como sabrá, todas las llamadas a la API necesitan una clave de


acceso. Puede establecerla en el encabezado Ocp-Apim-

Subscription-Key de la solicitud.

Sugerencia
19
El resultado de la solicitud es el archivo JSON sin formato que describe
la imagen en url. Hemos agregado | jq '.' al final del comando para
mejorar el aspecto de la salida JSON.

La respuesta JSON de esta llamada devuelve lo siguiente:

• Una matriz categories que enumera todas las categorías de

imagen que se han detectado, junto con una puntuación

comprendida entre 0 y 1 sobre el grado de fiabilidad del


servicio de que la imagen pertenece a la categoría especificada.

• Una entrada description que contiene una matriz de etiquetas

o palabras relacionadas con la imagen.


• Una entrada captions con un campo de texto que describe (en

inglés) lo que aparece en la imagen. Observe que el texto


también tiene una puntuación de certeza. Esta puntuación le
puede ayudar a decidir qué debe hacer posteriormente con
este análisis.

Buscar contenido inapropiado en una imagen

En este ejemplo analizaremos una imagen en busca de contenido para


adultos. La puntuación de confianza califica la probabilidad de que en

la imagen haya contenido para adultos o subido de tono.

En este ejemplo usaremos la siguiente imagen, pero puede probar el


mismo comando con direcciones URL para otras imágenes.

20

1. Ejecute el siguiente comando en Azure Cloud Shell,

reemplazando <region> en la dirección URL.


CLI de AzureCopiar

curl

"[Link]
ualFeatures=Adult,Description" \

-H "Ocp-Apim-Subscription-Key: $key" \

-H "Content-Type: application/json" \

-d "{'url' : '[Link]
process-images-with-the-computer-vision-
service/master/images/[Link]'}" \

| jq '.'

En este ejemplo hemos


21
establecido visualFeatures en Adult,Description.

La respuesta nos da dos puntuaciones de confianza, una para el


contenido subido de tono y otra para el contenido para adultos. Con

estas puntuaciones, la descripción de la imagen y otras características


visuales, puede empezar a marcar las imágenes publicadas en su
servidor.

Los ejemplos que hemos probado en este ejercicio le dan una pista del

tipo de análisis que puede hacer con la operación analyze. Pruebe el

análisis con distintas imágenes y pruebe varias combinaciones de


características visuales, detalles y parámetros de idiomas.

Para obtener más información sobre la operación analyze, vea la


documentación de referencia de Analyze Image (Análisis de imágenes).
GENERACIÓN DE
MINIATURAS
Los distribuidores de los productos digitalizarán y cargarán imágenes

de las estanterías que están reponiendo. Como desarrollador jefe en su

empresa, es responsable de la creación de miniaturas de las imágenes.


Las miniaturas se usan en los informes en línea que crea para el equipo

de ventas. Recientemente, la directora de ventas dijo que las imágenes


en el informe son borrosas y a menudo no muestran la parte frontal y
central del producto, lo que dificulta examinar el informe de gran
tamaño. Depende de usted mejorar la situación.

22 Decide probar la característica de generación de miniaturas de


Computer Vision API. Quizás pueda hacer un mejor trabajo que la

función de cambio de tamaño que escribió.

Computer Vision genera en primer lugar una miniatura de alta calidad


y después analiza los objetos de la imagen para determinar la región
de interés (ROI). Luego, recorta la imagen para ajustarla a los requisitos
de la región de interés. La miniatura generada se puede presentar con

una relación de aspecto diferente de la imagen original en función de

sus necesidades. Vamos a verlo en acción.

Una llamada a Computer Vision API para generar una miniatura

La operación generateThumbnail crea una imagen en miniatura con el


ancho y el alto especificados por el usuario. De forma predeterminada,

el servicio analiza la imagen, identifica la región de interés (ROI) y


genera las coordenadas de recorte inteligentes según el ROI. El recorte

inteligente le ayuda a especificar una relación de aspecto que difiera


de la relación de aspecto de la imagen de entrada. La dirección URL de
solicitud tiene el formato siguiente:

[Link]

mbnail?width=<...>&height=<...>&smartCropping=<...>

Se pueden proporcionar otros parámetros a la API para generar la


miniatura adecuada para sus necesidades. Los

parámetros width y height son obligatorios. Le indicarán a la API qué


tamaño necesita para una imagen específica. El
parámetro smartCropping genera un recorte más inteligente
analizando la región de interés en la imagen para así mantenerla dentro
de las miniaturas. Como ejemplo, con la opción de recorte inteligente
23
habilitada, una imagen de perfil recortada mantiene la cara de alguien

dentro del marco, aunque la imagen tenga una proporción distinta.

Obtención de una clave de acceso

Si aún no lo ha hecho, ejecute el siguiente comando en Azure Cloud

Shell para almacenar la clave de acceso de API en una variable


denominada key. Esta variable se usará en las llamadas siguientes.

CLI de AzureCopiar

key=$(az cognitiveservices account keys list \

--name ComputerVisionService \

--resource-group [sandbox resource group name] \


--query key1 -o tsv)

Generación de miniaturas

En este ejemplo usaremos la siguiente imagen, pero puede probar el


mismo comando con direcciones URL para otras imágenes.

24

1. Ejecute los comandos siguientes en Azure Cloud Shell.


Reemplace <region> en el comando por la región de su cuenta
de servicios cognitivos.

CLI de AzureCopiar

curl

"[Link]

umbnail?width=100&height=100&smartCropping=true" \

-H "Ocp-Apim-Subscription-Key: $key" \

-H "Content-Type: application/json" \
-d "{'url' : '[Link]

process-images-with-the-computer-vision-
service/master/images/[Link]'}" \

-o [Link]

En este ejemplo, le pedimos al servicio que cree una miniatura de 100

x 100. El recorte inteligente está habilitado. Una respuesta correcta

contiene la imagen en miniatura binaria, que se escribe en un archivo


denominado [Link].

Precaución

El parámetro -o redirige la salida a un archivo. El archivo siempre se

sobrescribe, así que si desea mantener más de una vista en miniatura


al probar este comando, cambie el nombre de archivo.
25
Visualización de las miniaturas generadas

Puede encontrar la miniatura generada en su cuenta de


almacenamiento de Azure Cloud Shell. Hemos llamado al

archivo [Link].

El Cloud Shell en Microsoft Learn no tiene la capacidad de descargar

archivos, pero puede seguir estas instrucciones para descargar la


miniatura mediante Azure Portal.

1. Ejecute los comandos siguientes en Azure Cloud Shell para


confirmar que el archivo [Link] existe en la carpeta

principal.

CLI de AzureCopiar
cd ~

ls -l

2. Ejecute el siguiente comando para mover [Link] en la


carpeta clouddrive.

CLI de AzureCopiar

mv ~/[Link] ~/clouddrive

3. Inicie sesión en Azure Portal con la misma cuenta con la que


ha activado el espacio aislado.

4. En el menú de Azure Portal o la página Inicio, seleccione Todos


los recursos y luego la cuenta de almacenamiento cuyo

nombre comienza por cloudshell.


26

5. En el panel de la cuenta de almacenamiento,


seleccione Explorador de Storage, RECURSOS
COMPARTIDOS DE ARCHIVOS y luego el recurso compartido

de archivos de esa colección cuyo nombre comienza


por cloudshellfiles.

6. Seleccione el archivo [Link] y después Descargar en el


menú superior para ver la imagen.

La operación generateThumbnail es un generador de miniaturas eficaz

que es capaz de mantener la región de interés (ROI) de una imagen en


la miniatura.
Para obtener más información sobre la operación generateThumbnails,

vea la documentación de referencia de Get Thumbnail (Obtener


miniatura).

27
DETECCIÓN Y
EXTRACCIÓN DE TEXTO
IMPRESO DE UNA
IMAGEN
Supongamos que ahora quiere leer el texto de las imágenes en
existencia que los distribuidores en primera línea publican en el
servidor. En concreto, quiere examinar el producto en busca de
adhesivos promocionales que contengan los precios de venta. Es el

momento de probar la característica de reconocimiento óptico de


caracteres (OCR) de Computer Vision API.
28

Llamar a Computer Vision API para extraer texto impreso

La operación ocr detecta texto en una imagen y extrae los caracteres

reconocidos en una secuencia de caracteres que pueda usar una


máquina. La dirección URL de solicitud tiene el formato siguiente:

[Link]
e=<...>&detectOrientation=<...>

Como de costumbre, se deben realizar todas las llamadas a la región

donde se creó la cuenta. La llamada acepta dos parámetros opcionales:


 language: Código de idioma del texto que se va a detectar en

la imagen. El valor predeterminado es unk o desconocido. Esto


permite que el servicio detecte automáticamente el idioma del
texto de la imagen.
 detectOrientation: Cuando es true, el servicio intenta detectar

la orientación de la imagen y corregirla antes de continuar

procesando, por ejemplo, si la imagen está al revés.

Obtención de una clave de acceso

Si aún no lo ha hecho, ejecute el siguiente comando en Azure Cloud


Shell para almacenar la clave de acceso de API en una variable
denominada key. Esta variable se usará en las llamadas siguientes.

CLI de AzureCopiar

29
key=$(az cognitiveservices account keys list \

--name ComputerVisionService \

--resource-group [sandbox resource group name] \

--query key1 -o tsv)

Extraer el texto impreso de una imagen mediante OCR

La imagen que se va a usar para el reconocimiento óptico de caracteres

(OCR) es la portada del libro Microservicios de .NET: Arquitectura para


aplicaciones .NET en contenedor.
30

1. En Cloud Shell, ejecute el comando siguiente.

Reemplace <region> en el comando por la región de su cuenta


de servicios cognitivos.

CLI de AzureCopiar

curl "[Link] \
-H "Ocp-Apim-Subscription-Key: $key" \

-H "Content-Type: application/json" \

-d "{'url' : '[Link]
process-images-with-the-computer-vision-

service/master/images/[Link]'}" \

| jq '.'

El documento JSON siguiente es un ejemplo de la respuesta que


obtenemos de esta llamada. Se han quitado algunas líneas del
documento JSON para que el fragmento de código se ajuste mejor a

la página.

JSONCopiar
31
{

"language": "en",

"orientation": "Up",

"textAngle": 0,

"regions" : [

/*... snipped*/

"boundingBox": "766,1419,302,33",

"words": [
{

"boundingBox": "766,1419,126,25",

"text": "Microsoft"

},

"boundingBox": "903,1420,165,32",

"text": "Corporation"

32 }]

Vamos a examinar esta respuesta con más detalle.

• El servicio ha identificado el texto como inglés. El valor del

campo language contiene el código de idioma BCP-47 del

texto detectado en la imagen. En este ejemplo es en o inglés.

• La orientation se ha detectado como hacia arriba. Esta


propiedad es la dirección en que se orienta la parte superior del

texto reconocido después de que la imagen se haya girado en


torno a su centro de acuerdo con el ángulo del texto detectado.
• textAngle es el ángulo por el que se debe girar el texto para

que sea horizontal o vertical. En este ejemplo, el texto es


perfectamente horizontal, por lo que el valor devuelto es 0.

• La propiedad regions contiene una lista de valores que se usan

para mostrar dónde está el texto, su posición en la imagen y las


palabras que contiene esa parte de la imagen.

• Los cuatro enteros del valor boundingBox son:

o la coordenada x del borde izquierdo

o la coordenada y del borde superior

o la anchura del rectángulo de selección

o la altura del rectángulo de selección


33

Puede utilizar estos valores para dibujar cuadros alrededor de cada


fragmento de texto que se encuentra en la imagen.

Como puede ver en este ejercicio, el servicio ocr proporciona

información detallada sobre el texto impreso de una imagen.

Para obtener más información sobre la operación ocr, vea la


documentación de referencia de OCR.
DETECCIÓN Y
EXTRACCIÓN DE TEXTO
ESCRITO A MANO DE
UNA IMAGEN
Hemos visto cómo Computer Vision API puede extraer texto impreso
de las imágenes. En este ejercicio, usaremos el servicio para detectar el
texto escrito a mano.

Llamar a Computer Vision API para extraer texto manuscrito

La operación recognizeText detecta y extrae texto manuscrito de notas,


34
cartas, ensayos, pizarras, formularios y otras fuentes. La dirección URL

de solicitud tiene el formato siguiente:

[Link]
xt?mode=<...>

Se deben realizar todas las llamadas a la región donde se creó la


cuenta.

Si está presente, el parámetro mode debe establecerse

en Handwritten o Printed, y distingue mayúsculas de minúsculas. Si el

parámetro se establece en Handwritten o no se especifica, se realiza el


reconocimiento de escritura a mano. Si el parámetro se establece

en Printed, entonces se realiza el reconocimiento de texto impreso. El


tiempo necesario para obtener un resultado de esta llamada depende

de la cantidad de escritura en la imagen.

En este ejemplo, haremos lo siguiente:

• Imprimir los encabezados de respuesta en la consola mediante

la opción -D de direcciones URL.

• Copiar el valor del encabezado Operation-Location de los

encabezados recibidos en la respuesta.

• Después de unos segundos, comprobar la dirección URL


especificada por Operation-Location para los resultados.

Obtención de una clave de acceso

Si aún no lo ha hecho, ejecute el siguiente comando en Azure Cloud


35
Shell para almacenar la clave de acceso de API en una variable

denominada key. Esta variable se usará en las llamadas siguientes.

CLI de AzureCopiar

key=$(az cognitiveservices account keys list \

--name ComputerVisionService \

--resource-group [sandbox resource group name] \

--query key1 -o tsv)

Detectar y extraer texto escrito a mano de una imagen.

En este ejemplo usaremos la siguiente imagen, pero puede probar el


mismo comando con direcciones URL para otras imágenes.
36

1. Ejecute los comandos siguientes en Azure Cloud Shell.

Reemplace <region> en el comando por la región de su cuenta


de servicios cognitivos.

CLI de AzureCopiar

curl

"[Link]

ext?mode=Handwritten" \

-H "Ocp-Apim-Subscription-Key: $key" \

-H "Content-Type: application/json" \
-d "{'url' : '[Link]

process-images-with-the-computer-vision-
service/master/images/[Link]'}" \

-D -

Los pasos anteriores vuelcan los encabezados de esta operación en la

consola. Veamos un ejemplo:

CLI de AzureCopiar

HTTP/1.1 202 Accepted

Cache-Control: no-cache

Pragma: no-cache

37 Content-Length: 0

Expires: -1

Operation-Location:

[Link]
s/d0e9b397-4072-471c-ae61-7490bec8f077

X-AspNet-Version: 4.0.30319

X-Powered-By: [Link]

apim-request-id: f5663487-03c6-4760-9be7-c9157fac10a1

Strict-Transport-Security: max-age=31536000; includeSubDomains;

preload

x-content-type-options: nosniff
Date: Wed, 12 Sep 2018 [Link] GMT

El encabezado Operation-Location es donde se registrarán los

resultados una vez completado.

2. Copie el valor de encabezado Operation-Location.

3. Ejecute el siguiente comando en Azure Cloud Shell


reemplazando "<Operation-Location>" con el valor del

encabezado Operation-Location que copió en el paso


anterior.

CLI de AzureCopiar

curl -H "Ocp-Apim-Subscription-Key: $key" "<Operation-Location>" |

jq '.'
38
Si se completó la operación, recibirá un archivo JSON que contiene el

resultado de la solicitud de reconocimiento de escritura a mano.

Para obtener más información sobre la operación recognizeText, vea la


documentación de referencia Recognize Handwritten

Text (Reconocimiento de texto manuscrito).


RESUMEN Y
COMPROBACIÓN DE
CONOCIMIENTOS

39
Computer Vision API es una herramienta eficaz para el procesamiento
de imágenes. El uso de este servicio, en lugar de crear el suyo propio,
tiene la ventaja de ahorrarle costos de desarrollo y de mantenimiento

considerables. Debe concentrarse en escribir la lógica de negocios para


tomar una decisión relevante para su negocio y dejar que Computer
Vision API extraiga información enriquecida de las imágenes para

categorizar y procesar los datos visuales.

En este módulo hemos analizado imágenes, extraído texto y generado

miniaturas. Para llamar a Computer Vision API, hemos creado una


cuenta de Cognitive Services en nuestra suscripción de Azure. Esta

cuenta nos ha proporcionado las claves de acceso que necesitábamos


para realizar llamadas.
En el siguiente paso, tómese tiempo para realizar las mismas llamadas

con sus propias imágenes. Luego, ajuste los parámetros en cada


llamada para ver el efecto que tienen en los resultados. Puede ir más
allá y probar las otras operaciones en la API, como, por
ejemplo, describe y tag.

Limpieza

El espacio aislado limpia los recursos automáticamente cuando haya


terminado con este módulo.

Al trabajar en una suscripción propia, se recomienda identificar al final

de un proyecto si aún necesita los recursos creados. Dejar recursos en


funcionamiento puede costarle dinero. Puede eliminar los recursos de
forma individual o eliminar el grupo de recursos para eliminar todo el

40 conjunto de recursos.

Lecturas adicionales

• Información general sobre la CLI de Azure

• Referencia de comandos de la CLI de Azure

• Documentación de referencia de Computer Vision API


1

Reconocimiento de voces
específicas con las API de
Speaker Recognition en
Azure Cognitive Services
BIENVENIDA
Obtener información sobre cómo usar Speaker Recognition API para

identificar usuarios específicos a través de sus voces.

Objetivos de este módulo:

• Conocer el concepto de reconocimiento del hablante.

• Obtener información sobre los conceptos relacionados con el


reconocimiento del hablante.

• Explorar las Speaker Recognition API.

2
Requisitos previos

Ninguno

Introducción 1 min

Introducción al reconocimiento del hablante 7 min

Ejercicio: Creación de una suscripción de Speaker Recognition

API 10 min

Introducción a los conceptos de verificación del hablante 3 min

Administración de perfiles de verificación del hablante 7 min


Introducción a la identificación del hablante 5 min

Administración de perfiles de identificación del hablante 7 min

Implementación del reconocimiento del hablante 7 min

Comprobación de conocimientos: reconocimiento del hablante

3 min

Resumen 2 min

3
INTRODUCCIÓN
Las Speaker Recognition API de Azure Cognitive Services
proporcionan algoritmos avanzados para la verificación e identificación
del hablante. Estas API permiten incorporar autorización de voz en las
aplicaciones e identificar voces específicas.

Nota

4 Este módulo requiere una suscripción de Azure. Los servicios que cree
y use son gratuitos, pero necesitará una suscripción activa o una
versión de prueba para completar los ejercicios. Si no tiene una
suscripción a Azure, cree una cuenta gratuita antes de empezar.

Objetivos de este módulo:

• Conocer el concepto de reconocimiento del hablante.

• Obtener información sobre los conceptos relacionados con el


reconocimiento del hablante.

• Explorar las Speaker Recognition API.

Supervisar los recursos


INTRODUCCIÓN AL
RECONOCIMIENTO DEL
HABLANTE
Las Speaker Recognition API de Azure Cognitive Services usan

aprendizaje automático e inteligencia artificial para proporcionar


servicios que:

 identifican a hablantes individuales;

 usan la voz para la autenticación.

Estos servicios se pueden integrar en aplicaciones y servicios mediante


5 cualquier lenguaje de programación o sistema operativo.

El reconocimiento del hablante se divide en dos categorías:

 Verificación del hablante: los usuarios se verifican y

autentican de forma automática a través de su voz.

 Identificación del hablante: la voz se compara con un grupo


de posibles hablantes para identificar automáticamente a la

persona que habla en un archivo de audio.

Speaker Recognition API

Todas las formas de vida parecen tener métodos de comunicación


integrados y biológicamente adaptados. Con independencia de que
sea una ballena azul, un abejorro, una cigarra o un ser humano, cada

"voz" es única. En nuestro planeta hay más 7,5 mil millones de voces
humanas, cada una de ellas única y diferente al resto.

A través de simples llamadas de servicio basadas en REST, las Speaker

Recognition API proporcionan algoritmos que le permiten:

 Verificar e identificar la voz humana.

 Organizar las voces en perfiles fáciles de administrar.

Los métodos proporcionados por las Speaker Recognition API se

dividen en tres categorías:

1. Verificación: se comprueba la probabilidad de que dos voces


6
pertenezcan a la misma persona.

2. Identificación y reconocimiento: se determina si una voz


coincide con otra voz conocida.

3. Inscripción: se registran voces para verificarlas o identificarlas.

Las Speaker Recognition API permiten aprovechar la eficacia de la


inteligencia artificial para:

 autenticar a los usuarios antes de permitirles acceder a

aplicaciones y servicios;
 identificar hablantes en secuencias de vídeo;

 identificar hablantes en escenarios de chat en tiempo real;


 mejorar la seguridad de recursos confidenciales;
• reemplazar los complejos sistemas de autenticación heredados.

El reconocimiento del hablante a menudo se conoce como

"reconocimiento de voz". El reconocimiento del hablante es el proceso


de identificación de una persona en base a las características de voz de

esa persona.

Nota

Hay una diferencia entre el reconocimiento del hablante y


el reconocimiento de voz. El reconocimiento de voz intenta determinar

el contenido de las palabras habladas, y el reconocimiento del hablante

intenta identificar al hablante del contenido.

Acústica excelente

7 En el reconocimiento del hablante se evalúan las características


acústicas vitales de voz que difieren entre individuos. Estos patrones
acústicos vienen determinados por aspectos como el tamaño y la forma
de la garganta y la boca. Cada individuo también tiene unos
determinados patrones de voz, como el estilo de habla y el tono de
voz.

Como resultado del progreso científico en el campo de verificación del

hablante, ahora el reconocimiento del hablante se clasifica como una

"biométrica del comportamiento". Como sucede con la diferencia entre


el reconocimiento de voz y el del hablante, hay una diferencia entre el
acto de verificación del hablante y el de identificación:
• Verificación del hablante: un intento por determinar si un

hablante tiene una identidad "afirmada" concreta.

• Identificación del hablante: un intento por determinar


la identidad de un hablante desconocido.

En ambos casos, es necesario disponer de voces o muestras de voces


para poder realizar la comparación. El proceso de creación de muestras

de voz se conoce como inscripción.

Inscripción

En el reconocimiento del hablante, la inscripción es el proceso de


grabación previa de la voz del hablante para extraer los patrones
acústicos y de voz que forman una huella de voz. La huella de voz a
menudo se conoce como plantilla de voz o modelo de voz. En
8
escenarios típicos de verificación del hablante, se graban previamente
"expresiones" de voz de muestra que después se usan al comparar las

huellas de voz.

El proceso de identificación del hablante es más difícil porque muchas


veces una expresión se acaba de introducir por primera vez en el

sistema. Por ejemplo, un sistema de reconocimiento del hablante

podría entrenarse para identificar a un famoso presidente de Estados


Unidos a partir de las muestras de los discursos de inauguración. Pero
identificar a un presidente a partir de contenido nuevo, como un
discurso sobre el estado de la nación, requiere la comparación del

contenido hablado con varias huellas de voz a fin de determinar la


mejor coincidencia.
Dado que los algoritmos en los que se basan la verificación y la

identificación son diferentes, los procesos de inscripción para estos


servicios también son independientes. En segundo plano, hay dos tipos
de sistemas de reconocimiento del hablante: dependiente de
texto e independiente de texto.

 Dependiente de texto: se usa para la inscripción en la


verificación del hablante, donde los mensajes son conocidos y
comunes entre todos los hablantes.
 Independiente de texto: se usa para la inscripción en la

identificación del hablante, donde no hay ninguna cooperación


(necesaria) por parte del hablante.

Nota

9 Para escenarios independientes de texto, la inscripción suele


producirse sin conocimiento del usuario, ya que los sistemas de

identificación del hablante no necesitan comparar lo que se dice en la


inscripción.

El sistema dependiente de texto, el más controlado de todos, es


fundamental para la verificación del hablante.
EJERCICIO: CREACIÓN DE
UNA SUSCRIPCIÓN DE
SPEAKER RECOGNITION
API
Para poder usar Speaker Recognition API, tendrá que suscribirse al
servicio y obtener una clave de suscripción.

Importante

Speaker Recognition API aún está en versión preliminar. Antes de que


se finalice, espere cambios en algunas de las funciones.
10

1. Inicie sesión en Azure Portal .

2. En el panel izquierdo, seleccione + Crear un recurso.

3. En el cuadro Buscar en Marketplace, escriba speaker


recognition (reconocimiento del hablante) y presione Entrar.

4. En los resultados de la búsqueda, seleccione Speaker


Recognition.

5. Haga clic en Crear.

6. Escriba un nombre para la suscripción de Speaker Recognition


API, como SpeakerRecognition.

7. Como Ubicación, elija la que le quede más cerca.


8. Como Plan de tarifa, seleccione un plan de tarifa.

9. Cree un grupo de recursos denominado mslearn-

speakerapi para almacenar los recursos.

10. Revise y acepte el aviso de servicio y después haga clic


en Crear para crear una suscripción a Speaker Recognition API.

Tras una breve pausa, la nueva suscripción a las Speaker Recognition

API estará disponible y se generarán nuevas claves de suscripción para


su uso en programación.

Nota

Los términos clave de suscripción y clave de API a menudo se usan

como sinónimos en la documentación de Cognitive Services.


11
Para ver su nueva suscripción de Speaker Recognition, haga clic

en Grupos de recursos en el panel izquierdo y, después, seleccione el


grupo de recursos mslearn speakerapi.

Para acceder a la suscripción de Speaker Recognition, necesita dos


datos que puede obtener en Azure Portal:

• Una clave de suscripción que le permite acceder a su

suscripción. Esta clave se debe pasar con cada llamada de

servicio web que se realice a la API.

• El punto de conexión que expone el servicio en la red.


Copia de la clave de suscripción

Empecemos por obtener la clave de suscripción en Azure Portal:

1. En el panel izquierdo, haga clic en Grupos de recursos y,


después, haga clic en el grupo de recursos que ha creado para

Speaker Recognition API.

2. Escriba un nombre para la suscripción de Speaker Recognition

(por ejemplo, SpeakerRecognition).

3. En ADMINISTRACIÓN DE RECURSOS, haga clic


en Claves para ver las nuevas claves de suscripción.

4. Copie el valor de CLAVE 1 en el portapapeles.

12

Sugerencia

Puede pegar este valor en un archivo de texto para usarlo más adelante

en el curso.
Copia del punto de conexión de la suscripción

A continuación se obtendrá el punto de conexión de Azure Portal:

1. En el panel izquierdo, haga clic en Introducción.

2. Vaya a Punto de conexión y copie su valor en el portapapeles.

13
INTRODUCCIÓN A LOS
CONCEPTOS DE
VERIFICACIÓN DEL
HABLANTE
Si es un veterano en viajes al extranjero, estará acostumbrado a
presentar documentos emitidos por entidades gubernamentales
cuando visita un país nuevo. La verificación del hablante es un proceso
muy similar a entrar en un país nuevo con un pasaporte.

14

Cuando muestra su pasaporte al responsable de la oficina de

inmigración, usted afirma ser la persona que aparece en la foto del


pasaporte. Al igual que existen normativas de cómo se debe hacer esta

foto, el proceso de verificación de voz normalmente tiene unas


directrices sobre cuál es la "apariencia" de su huella de voz. En otras

palabras, lo que dice para generar su huella de voz está regulado. La


mayoría de los sistemas usan el concepto de frases de verificación.
Frases de verificación

El servicio Speaker Recognition usa frases de verificación predefinidas

para determinar las características y los patrones acústicos y de voz


pertinentes del hablante. En la actualidad, el servicio Speaker

Recognition admite las 10 frases de verificación siguientes, para la

configuración regional de inglés (Estados Unidos):

• "I am going to make them an offer they cannot refuse." (Voy a


hacerles una oferta que no podrán rechazar)

• "Houston, we have a problem." (Houston, tenemos un


problema)

• "My voice is my passport. Verify me." (Mi voz es mi pasaporte.


Compruébeme)
15
• "Apple juice tastes funny after toothpaste." (El zumo de
manzana sabe raro después de lavarse los dientes)

• "You can get in without your password." (Puede entrar sin su


contraseña)

• "You can activate the security system now." (Ya puede activar el

sistema de seguridad)

• "My voice is stronger than passwords." (Mi voz es más segura

que las contraseñas)

• "My password is not your business." (Mi contraseña no es

asunto suyo)

• "My name is unknown to you." (No sabe mi nombre)


• "Be yourself. Everyone else is already taken." (Sea usted mismo,

todos los demás ya están en uso)

Nota

Speaker Recognition API no admite actualmente frases de verificación


personalizadas.

La inscripción de verificación del hablante requiere la grabación y el

envío de tres ejemplos de una frase idéntica. Por ejemplo, se le pide


que repita la frase "Houston, tenemos un problema" tres veces y,

después, que envíe esos ejemplos al sistema.

Después de enviar las frases de ejemplo idénticas, la inscripción se

considera completada y ya puede verificar su identidad con esa frase.

16 Quizás se pregunte por qué se necesita una frase de verificación


idéntica. ¿Por qué no puede el sistema analizar y evaluar los patrones
acústicos y de voz del hablante para determinar si existe una

coincidencia de voz? En realidad, el sistema puede identificar una


coincidencia de voz sin necesidad de una frase de verificación idéntica.

Pero si se permitiese cualquier muestra de voz, el sistema ya no sería

seguro. Alguien podría grabar su voz y usar esa grabación en el sistema.

Pedirle que recuerde y use un ejemplo exacto de frase es muy similar a


tener que recordar una contraseña, el nombre de soltera de su madre,
el nombre de su primera mascota o la ciudad donde nació, pero mejor.
Una vez completada la inscripción, el sistema Speaker Recognition

contiene el perfil de verificación.

Perfiles de verificación

TABLA 1

Propiedad Valor

verificationProfileId Un identificador de perfil único

locale La región o la configuración regional de referencia


cultural, como "en-US"

enrollmentsCount El número total de inscripciones creadas

17
remainingEnrollmentsCount El número restante de inscripciones necesarias para la
finalización

createdDateTime La fecha y la hora en que se ha creado el perfil

lastActionDateTime La fecha y hora de la última acción que se ha realizado

enrollmentStatus El estado de la inscripción

Un perfil de verificación es una agrupación de inscripciones

dependientes de texto que se usa para la verificación del hablante.


Dado que un hablante debe elegir una frase específica para la

inscripción y la verificación, el perfil resultante contiene todo lo

necesario para la verificación futura del hablante.


Sugerencia

TABLA 2

Valor Estado de verificación

enrolling Se está inscribiendo un perfil que aún no está listo para realizar la verificación.

training Se está entrenando un perfil que aún no está listo para realizar la verificación.

enrolled Se ha inscrito un perfil y está listo para realizar la verificación.

Aunque no sea absolutamente necesario, se recomienda usar el mismo

micrófono para la inscripción y la verificación.

Las propiedades de un perfil de comprobación

18 En Speaker Recognition API, un perfil de verificación incluye las


propiedades siguientes:

Propiedad de estado de inscripción

Aparte de verificationProfileId, la propiedad más importante de un

perfil de verificación es enrollmentStatus. Este valor muestra el estado


actual de la inscripción y la preparación para la verificación del

hablante:
ADMINISTRACIÓN DE
PERFILES DE
VERIFICACIÓN DEL
HABLANTE
La creación de perfiles de verificación es un proceso sencillo que utiliza

los métodos de administración de verificación de Speaker Verification


API.

Uso de Speaker Verification API para administrar perfiles de


19
verificación

La administración de perfiles de verificación del hablante con Speaker


Verification API es un proceso de dos fases:

 Enviar una solicitud web autorizada al punto de conexión de la


suscripción.

 Observar la información que se devuelve tras la llamada.

Al igual que la mayoría de los servicios del conjunto de aplicaciones de

Azure Cognitive Services, Speaker Verification API devuelve

información en formato JSON estándar.

Los métodos principales que se usan para crear y administrar perfiles

de verificación son los métodos Create Profile y Create Enrollment de


Speaker Verification API. El método Create Profile acepta un parámetro
de región o configuración regional para crear un perfil basado en una

configuración regional específica, y devuelve un identificador único


para el perfil. Pero el método Create Enrollment es donde se produce
un trabajo considerable.

El método Create Enrollment acepta un archivo de audio (como una

carga de archivo binario) que debe cumplir los criterios siguientes:

 Contenedor: WAV
 Codificación: PCM

 Velocidad: 16 K
 Formato de muestreo: 16 bits
 Canales: Mono

El método Create Enrollment requiere pasar un parámetro único al

20 servicio. Este parámetro verificationProfileId, que se devuelve desde el


método Create Profile, identifica a qué perfil debe aplicarse el envío de
la inscripción.

Normalmente, en la cadena de consulta se envía un parámetro pasado


al método Create Enrollment, como parte de la dirección URL del punto
de conexión:

textCopiar

[Link]
es/{verificationProfileId}/enroll

 Sugerencia
Cuando se proporciona el audio de inscripción a través de una solicitud

basada en REST, el archivo de audio debe tener al menos 1 segundo


de duración y no más de 15 segundos.

Envío de una carga de audio

Para enviar una carga de audio al método Create Enrollment, la

solicitud web debe incluir un archivo binario, como una secuencia o

matriz de bytes. Después debe enviarse la solicitud a través de un


método HTTP POST estándar.

Carga del archivo binario

Para crear y enviar una carga de archivo binario al método Create

Enrollment, se usan métodos estándar específicos del lenguaje para


crear y enviar contenido binario. Por ejemplo, en C#, una carga binaria
21
podría proceder de un archivo de audio (que contenga una grabación

de voz de la frase de verificación) ubicado en un equipo local:

C#Copiar

string uri =
"[Link]

es/{verificationProfileId}/enroll";

FileStream fileStream = new FileStream(@"c:\\Sample

Audio\enrollment_01.wav", [Link], [Link]);

BinaryReader binaryReader = new BinaryReader(fileStream);

var bytes = [Link]((int)[Link]);


using (ByteArrayContent content = new ByteArrayContent(bytes))

[Link] = new
MediaTypeHeaderValue("application/octet-stream");

//POST the binary content to the endpoint

response = await [Link](uri, content);

string contentString = await [Link]();

El tipo de contenido application/octet-stream debe estar incluido en el


22
encabezado de solicitud para que el método sepa qué tipo de
contenido se va a suministrar.

No es necesario usar un parámetro para proporcionar la frase de

verificación seleccionada. Speaker Verification API extrae la frase del


archivo de audio y presenta este valor como un modo de proteger la
verificación.

Valores devueltos

Los resultados devueltos por Speaker Verification API se incluyen en


cargas de JSON. Este es un ejemplo de la información devuelta por el

método Create Enrollment:

JSONCopiar
{

"enrollmentStatus" : "Enrolled",

"enrollmentsCount":3,

"remainingEnrollments" : 0,

"phrase" : "<Recognized verification phrase>"

 Nota

El valor "<Recognized verification phrase>" se rellena con la frase de


verificación extraída.

La administración de perfiles de verificación a través de Speaker


23
Verification API es sencilla, tanto como la administración de perfiles de
identificación.
INTRODUCCIÓN A LA
IDENTIFICACIÓN DEL
HABLANTE
Si el uso de la verificación del hablante es similar al proceso de mostrar

un pasaporte, la identificación del hablante es como la comparación de


huellas dactilares, que pregunta lo siguiente: "De todas las huellas

digitales conocidas por nuestro sistema, ¿cuál coincide con esta huella

digital?"

24

La identificación del hablante es la capacidad para determinar la


persona que habla en un audio según los patrones acústicos y de voz,

como el estilo de habla y el tono de voz.

En un contexto de orden público, un sistema de identificación del


hablante puede emplear una huella de voz independiente de texto, de

forma similar a como se utilizan las huellas digitales. De este modo, la


identificación del hablante es básicamente "abierta". En el ejemplo de
las huellas, tomar la huella dactilar en cualquier momento introduce

esa huella en la "inscripción".

La identificación del hablante tiene muchas otras aplicaciones fuera del


ámbito de la aplicación de la ley y el análisis forense. Como sucede en

escenarios de verificación del hablante, cuando se completa la

inscripción, el servicio Speaker Identification contiene el perfil de


identificación del hablante.

Perfiles de identificación

Un perfil de verificación es una agrupación de inscripciones

independientes de texto que se usan para la identificación del hablante.


Al contrario de lo que sucede en la verificación del hablante, un
hablante no tiene que elegir una frase concreta para usarla en la

25 inscripción o la identificación.

Nota

A diferencia de la verificación del hablante, no es razonable crear el


audio de identificación del hablante con el mismo micrófono (o incluso
crearlo en la misma década), por lo que no hay requisitos ni
recomendaciones sobre las especificaciones de grabación o el

dispositivo de entrada. Pero el archivo real enviado debe cumplir los


requisitos en cuanto a formato y velocidad de bits.

El perfil

En Speaker Identification API, un perfil de identificación incluye las

propiedades siguientes:
TABLA 1

Propiedad Valor

identificationProfileId Un identificador de perfil único

locale La región o la configuración regional de


referencia cultural, como "en-US"

enrollmentSpeechTime El número total de segundos de voz "útil"


detectados en todos los archivos de audio de

inscripción proporcionados

remainingEnrollmentSpeechTime El número restante de segundos de voz


necesarios para una inscripción correcta
26

createdDateTime La fecha y la hora en que se ha creado el perfil

lastActionDateTime La fecha y hora de la última acción que se ha


realizado

enrollmentStatus El estado de la inscripción

Estado de inscripción

Aparte de identificationProfileId, la propiedad más importante de un


perfil de identificación es enrollmentStatus. Este valor muestra el
estado actual de la inscripción y la preparación para la identificación

del hablante:
TABLA 2

Valor Estado de inscripción

enrolling Un perfil se está inscribiendo actualmente y no está preparado para la


identificación.

training Un perfil se está entrenando actualmente y no está preparado para la

identificación.

enrolled El perfil está inscrito y preparado para la identificación.

27
ADMINISTRACIÓN DE
PERFILES DE
IDENTIFICACIÓN DEL
HABLANTE
La creación de perfiles de identificación es un proceso sencillo que
utiliza los métodos de administración de identificación de Speaker
Identification API.

Uso de Speaker Identification API para administrar perfiles de


identificación
28
Al igual que con los perfiles de verificación, para administrar perfiles de

identificación del hablante con Speaker Identification API hay que


hacer lo siguiente:

• Enviar una solicitud web autorizada al punto de conexión de la


suscripción.

• Observar la información que se devuelve tras la llamada.

Los métodos principales que se usan para crear y administrar perfiles

de identificación son los métodos Create Profile y Create


Enrollment de Speaker Identification API. Como en la verificación del
hablante, el método Create Profile acepta un parámetro de región o
configuración regional para crear un perfil basado en una

configuración regional específica, y devuelve un identificador único


para el perfil. Pero el método Create Enrollment es donde se produce

un trabajo considerable.

El método Create Enrollment acepta un archivo de audio (como una


carga de archivo binario) que debe cumplir los mismos criterios que los

archivos usados para la verificación del hablante:

TABLA 1

Propiedad Valor requerido

Contenedor WAV

Codificación PCM

Velocidad 16 K
29
Formato de muestreo 16 bits

Canales Mono

El método Create Enrollment requiere pasar un parámetro único al


servicio. Este parámetro identificationProfileId, devuelto por el

método Create Profile, identifica a qué perfil debe aplicarse el envío de


la inscripción.

También se puede pasar un parámetro opcional shortAudio para


indicar al servicio que omita los requisitos de duración del audio. Este

parámetro es un valor de "sí" o "no" (booleano) que indica al servicio


que renuncie al límite de audio mínimo recomendado necesario para

la inscripción.
Normalmente, en la cadena de consulta se envía un parámetro pasado

al método Create Enrollment de Speaker Identification API, como parte


de la dirección URL del punto de conexión. En este ejemplo se incluye
el parámetro opcional shortAudio:

textCopiar

[Link]

iles/{identificationProfileId}/enroll?shortAudio=true

 Nota

Si se inscribe un hablante para su identificación sin usar el


parámetro shortAudio, los archivos de audio deben tener una duración

mínima de 5 segundos y máxima de 5 minutos. La


cantidad mínima recomendada de voz acumulada para la inscripción,
30
después de quitar los silencios, es de 30 segundos. Después de

acumular 30 segundos de voz, el estado de inscripción del perfil cambia


de enrolling a enrolled para indicar que está listo para la identificación.

Si se usa el parámetro shortAudio, los archivos de audio pueden tener


hasta 1 segundo de duración, pero la precisión de la identificación del
hablante puede verse afectada.

Envío de una carga de audio

Para enviar una carga de audio al método Create Enrollment de


Speaker Identification, es necesario incluir en la solicitud web un

archivo binario (como una secuencia o matriz de bytes) y, después,


enviar la solicitud a través de un método HTTP POST estándar.
Carga del archivo binario

Para crear y enviar una carga de archivo binario al método Create

Enrollment, se usan métodos estándar específicos del lenguaje para


crear y enviar contenido binario. Por ejemplo, en C#, una carga binaria

podría proceder de un archivo de audio (que contenga una grabación

de voz de la persona que habla) ubicado en un equipo local:

C#Copiar

string uri =
"[Link]
ofiles/{identificationProfileId}/enroll?shortAudio=true";

FileStream fileStream = new FileStream(@"c:\\Sample


Audio\enrollment_01.wav", [Link], [Link]);
31
BinaryReader binaryReader = new BinaryReader(fileStream);

var bytes = [Link]((int)[Link]);

using (ByteArrayContent content = new ByteArrayContent(bytes))

[Link] = new
MediaTypeHeaderValue("application/octet-stream");

//POST the binary content to the endpoint

response = await [Link](uri, content);


string contentString = await [Link]();

En el ejemplo anterior, el parámetro opcional shortAudio indica al


método que renuncie al límite recomendado de audio mínimo

necesario para la inscripción y que permita que los archivos de audio

duren tan solo un segundo.

Valores devueltos

Si tiene archivos de audio de larga duración, crear las inscripciones de


identificación del hablante puede ser un proceso lento. Dado que la
inscripción es un proceso potencialmente lento, el método Create

Enrollment es un método de resultado y ubicación de la operación.

32 Para obtener el estado de una operación de inscripción, es preciso:

• Enviar una solicitud inicial, con la carga especificada.

• Obtener el valor de ubicación de la operación de la solicitud


inicial.

• Sondear el valor de ubicación de la operación que se


devuelve, hasta que el valor de resultado de la
operación indique que la operación se ha realizado

correctamente.

• Llamar al método Get Profile en la Speaker Identification API.

Cuando el proceso de inscripción se realiza correctamente, los

resultados devueltos por el método Get Profile están en un objeto


JSON con formato correcto o en una matriz que tiene el aspecto del

ejemplo siguiente:

JSONCopiar

"identificationProfileId": "e30148ba-9078-4b88-a53c-
d47888ba64ce",

"locale": "en-us",

"enrollmentSpeechTime": 3.38,

"remainingEnrollmentSpeechTime": 0.0,

"createdDateTime": "2018-02-18T[Link].567Z",
33
"lastActionDateTime": "2018-02-18T[Link].614Z",

"enrollmentStatus": "Enrolled"

Una vez aplicado un perfil de verificación o identificación del hablante,

ya se puede usar Azure Cognitive Services para reconocer al hablante.


Para facilitar las pruebas de esta característica, compruebe que sigue
las instrucciones para crear la cuenta de Cognitive Services y, después,
use la clave de servicio y visite la página de Speaker Recognition API,

donde encontrará más información y podrá seleccionar el botón Abrir

consola de pruebas de API cuando haya preparado la carga de su


propia muestra de audio y la prueba de las características de
identificación. La aplicación de pruebas de API permite realizar pruebas
sin tener que disponer de una aplicación de un extremo a otro

completa.

34
IMPLEMENTACIÓN DEL
RECONOCIMIENTO DEL
HABLANTE

El proceso de verificación del hablante consta de tres pasos


principales:

1. Crear un perfil de verificación

2. Crear tres inscripciones con una frase de verificación

3. Intentar verificar a un hablante


35
Para verificar un hablante, se debe enviar una solicitud web autorizada

al punto de conexión de la suscripción y observar la información


devuelta por la llamada a través del método Verify de Speaker
Verification API.

TABLA 1

Propiedad Valor requerido

Contenedor WAV

Codificación PCM
Velocidad 16 K

Formato de muestreo 16 bits

Canales Mono

El método Verify acepta un archivo de audio (como una carga de

archivo binario) que debe cumplir los mismos criterios que los archivos
usados para la inscripción de la verificación y la identificación del
hablante. Repasemos estos requisitos de archivo de audio:

El método Verify no acepta ningún parámetro adicional. Solo requiere


un clip de audio (como un archivo binario) para la verificación. En C#,

una carga binaria puede proceder de un archivo de audio (que


36 contenga una grabación de voz "nueva" de la frase de verificación),
ubicado en un equipo local:

C#Copiar

string uri =
"[Link]
nProfileId={verificationProfileId}";

FileStream fileStream = new FileStream(@"c:\\Sample


Audio\verification_01.wav", [Link], [Link]);

BinaryReader binaryReader = new BinaryReader(fileStream);

var bytes = [Link]((int)[Link]);


using (ByteArrayContent content = new ByteArrayContent(bytes))

[Link] = new
MediaTypeHeaderValue("application/octet-stream");

//POST the binary content to the endpoint

response = await [Link](uri, content);

string contentString = await [Link]();

Valores devueltos

La información devuelta desde una llamada al


37
método Verify proporciona toda la información necesaria para verificar
a un hablante:

• Result: un valor de Accept o Reject.

• Confidence: un valor de Low, Normal o High.

• Phrase: la frase de verificación reconocida del archivo de audio

Una vez realizada la verificación, se devuelve una matriz o un objeto


JSON con el formato correcto:

JSONCopiar

"result" : "Accept",
"confidence" : "Normal",

"phrase": "<Recognized phrase>"

Nota

El valor <Recognized phrase> se rellena con la frase extraída que se

reconoció en el audio.

Según el escenario, la información devuelta podría requerir lógica


adicional en su aplicación o servicio. Por ejemplo, en entornos

altamente confidenciales, un nivel de confianza Normal podría indicar


la necesidad de una nueva verificación hasta que se notifique un nivel

de confianza High. En caso contrario, un valor Accept podría ser


38 suficiente por sí mismo.

Una vez que esté familiarizado con el proceso de verificación del


hablante, verá que el proceso de identificación del hablante es similar.

Identificación del hablante

Al igual que en la verificación del hablante, el proceso de identificación


del hablante consta de tres pasos principales:

1. Crear un perfil de identificación

2. Crear una inscripción de identificación

3. Intentar identificar a un hablante

Al igual que en la verificación del hablante, para identificar un hablante

se debe enviar una solicitud web autorizada al punto de conexión de


la suscripción y observar la información devuelta por la llamada a través

del método Identify de Speaker Identification API. El archivo de audio


que envíe en su solicitud debe cumplir los mismos criterios que todos
los demás archivos de audio del sistema.

El método Identify tampoco toma parámetros adicionales, solo un clip

de audio (como un archivo binario) que contiene cualquier forma de


contenido hablado. En C#, una carga binaria podría proceder de un
archivo de audio (que contenga una grabación de voz "nueva"),
ubicado en un equipo local:

C#Copiar

string uri =
"[Link]

39 cationProfileId={identificationProfileId}";

FileStream fileStream = new FileStream(@"c:\\Sample


Audio\identification_01.wav", [Link], [Link]);

BinaryReader binaryReader = new BinaryReader(fileStream);

var bytes = [Link]((int)[Link]);

using (ByteArrayContent content = new ByteArrayContent(bytes))

[Link] = new

MediaTypeHeaderValue("application/octet-stream");
//POST the binary content to the endpoint.

response = await [Link](uri, content);

string contentString = await [Link]();

Valores devueltos de identificación

La información devuelta por una llamada al

método Identify proporciona toda la información necesaria para


identificar a un hablante:

• identifiedProfileId: el valor de identificationProfileId del perfil


del hablante identificado.

40 • Confidence: un valor de Low, Normal o High.

Cuando ha finalizado la identificación, se devuelve un objeto JSON:

JSONCopiar

"identifiedProfileId" : "00000000-0000-0000-0000-000000000000",

"confidence" : "Normal"

}
Importante

Si la propiedad identifiedProfileId devuelve un valor de 00000000-


0000-0000-0000-000000000000, significa que no se ha identificado

ningún perfil de identificación del hablante. En otras palabras, el

archivo de audio que debe identificarse no coincide con ninguno de


los perfiles proporcionados para la identificación del hablante.

41
1

Entrenamiento y
empaquetado de un módulo
de Azure Machine Learning
para la implementación en
un dispositivo IoT Edge
BIENVENIDA
Implemente un módulo de aprendizaje automático entrenado en el
perímetro con un contenedor. El módulo de aprendizaje automático

que cree se implementará en un dispositivo IoT Edge. Comprobará que


la imagen de contenedor se ha creado y almacenado correctamente en

el registro de contenedor de Azure. Verá los datos del módulo


implementado desde IoT Edge.

En este módulo, aprenderá a:

2 1. Iniciar un módulo desde Azure Portal en IoT Edge mediante un


contenedor
2. Generar datos simulados desde un dispositivo perimetral

3. Comprobar los datos generados desde el dispositivo perimetral

Requisitos previos

4. Capacidad de usar IoT Hub de Azure en


5. Capacidad de usar Azure Cloud Shell

6. Experiencia en la creación y administración de recursos con

Azure Portal o Azure Cloud Shell a nivel de principiante

7. IoT Hub
8. Dispositivo IoT Edge
Introducción 5 min

Procedimiento para crear e implementar módulos de Azure

Machine Learning 10 min

Ejercicio: Creación e implementación de un módulo de Azure


Machine Learning 15 min

Procedimientos para ver el repositorio de contenedor 2 min

Ejercicio: Visualización del repositorio de contenedores 15 min

Procedimiento para ver los datos generados 2 min

Ejercicio: Visualización de los datos generados 5 min

Limpieza de los recursos 1 min


3
Prueba de conocimientos 5 min

Resumen 2 min
INTRODUCCIÓN
La implementación de modelos de aprendizaje automático en
producción presenta muchos desafíos. Por ejemplo, tendrá que

administrar las dependencias entre varios entornos. Cada entorno


también puede tener un conjunto único de bibliotecas y otros recursos

específicos. Además, es posible que tenga que mantener varias


versiones de modelos en un momento determinado. Para solucionar

estos problemas, puede entrenar e implementar los modelos mediante


contenedores, donde todas las dependencias se pueden empaquetar

4 en un contenedor independiente. Los contenedores se pueden

implementar en dispositivos perimetrales. Esto le permite trabajar con


una variedad de hardware sin problemas. También puede administrar

el entorno de implementación de destino de manera más eficaz


mediante el uso de contenedores.
Imagine que trabaja como científico de datos y quiere implementar en

producción modelos de aprendizaje automático entrenados. Se le ha


encargado implementar un módulo de aprendizaje automático en

dispositivos perimetrales de una manera escalable. El módulo debe

implementar la lógica de negocios en un algoritmo de detección de


anomalías en un dispositivo perimetral. El algoritmo debe predecir
cuándo se produce un error en el dispositivo en función de los datos
de temperatura simulados de la máquina. El algoritmo debe analizar

los datos generados por el dispositivo y etiquetar el mensaje como


anómalo o no. Podría implementar esta solución mediante una
estrategia de contenedores. Podría entrenar el detector de anomalías

en la nube en función de datos históricos e implementar el modelo

5 entrenado como un contenedor. El uso de contenedores en esta


solución facilita la implementación del algoritmo en varios entornos de

destino de una manera escalable.


6

En este módulo, desarrollará un módulo de aprendizaje automático y

lo implementará en un dispositivo Linux que ejecuta Azure IoT Edge.


La solución permitirá hacer lo siguiente:

9. Crear un módulo de Azure Machine Learning


10. Insertar un contenedor de módulo en Azure Container Registry

11. Implementar un modelo de Azure Machine Learning en un


dispositivo de IoT Edge

12. Visualización de los datos generados


Objetivos de aprendizaje
En este módulo, aprenderá a:

13. Iniciar un módulo desde Azure Portal en IoT Edge mediante un


contenedor
14. Generar datos simulados desde un dispositivo perimetral

15. Comprobar los datos generados desde el dispositivo perimetral

Requisitos previos
16. Capacidad de usar IoT Hub en Azure
17. Capacidad de usar Azure Cloud Shell

18. Experiencia en la creación y administración de recursos con


Azure Portal o Azure Cloud Shell a nivel de principiante

19. IoT Hub

20. Dispositivo IoT Edge


¿Qué es una máquina
virtual?
Una máquina virtual es un entorno de software que emula la

funcionalidad de un sistema de hardware físico. Una máquina virtual se


puede instalar y ejecutar en un hardware anfitrión para emular un

hardware dedicado con el fin de admitir la ejecución de varios entornos


de sistema operativo, denominados sistemas operativos invitados, en

el mismo hardware físico. Proporciona la misma experiencia de ejecutar

un SO invitado diferente sin necesidad de hardware adicional para

ejecutar el sistema.

La máquina virtual administra el aislamiento de los recursos para evitar


conflictos entre el sistema operativo en ejecución. La máquinas
8 virtuales eliminan la necesidad de que el hardware físico ejecute cada

uno de los sistemas operativos y también evita que se reinicie el


sistema para ejecutar cualquier copia del sistema operativo antes de
que la máquina virtual existiera. Este enfoque ahorra el coste de tener

máquinas físicas para cada sistema operativo.

La máquina virtual de Azure agrega otro nivel al concepto de VM para


admitirlas en la nube. El usuario no tiene que preocuparse de los
requisitos de la máquina física. Puede crear y ejecutar fácilmente la
máquina virtual en la nube. La VM puede configurarse mediante una

interfaz basada en web que facilita la puesta en marcha del sistema

para satisfacer las necesidades del usuario. La máquina virtual de Azure


también permite escalar o reducir verticalmente varios sistemas

operativos sin preocuparse por los costes de administración o de la

infraestructura. El sistema de la máquina virtual se puede supervisar en


línea para obtener el estado o para realizar el seguimiento de cualquier

aplicación que se ejecute en él.

Además, Azure admite el uso de implementaciones automáticas de IoT

Edge para implementar cargas de trabajo basadas en Edge en la


máquina virtual. Esto proporciona la capacidad de ejecutar Azure IoT

Edge en una VM con un sistema operativo compatible que pueda


ejecutar contenedores. Permite que Azure IoT Edge se ejecute en una

gama completa de hardware, incluidas las unidades de

microcontrolador que ejecutan Azure Sphere, con la potencia de la


experiencia de la nube y el perímetro de Azure Stack.

En este módulo, se crea una máquina virtual en la nube que permite


implementar los módulos de IoT Edge.

9
Procedimientos para
configurar la
comunicación entre IoT
Hub e IoT Edge
Información general

En este módulo, se usa una máquina virtual basada en Ubuntu


existente para que actúe como dispositivo IoT Edge. Como alternativa,
puede ejecutar el entorno de ejecución de Azure IoT Edge en un

dispositivo Linux físico propio (x64, ARM32 o ARM64). A continuación,


se considera solamente el escenario de un dispositivo virtual.

Se establecen comunicaciones entre IoT Edge e IoT Hub para poder


10
implementar el módulo en el dispositivo IoT. Para configurar las
comunicaciones entre IoT Hub e IoT Edge, primero debe crear un
dispositivo virtual de Ubuntu proporcionado por Microsoft mediante
los scripts proporcionados. Este dispositivo virtual tiene instalados

todos los requisitos previos. Después, cree una instancia de IoT Hub
mediante Azure Cloud Shell. A continuación, registre el dispositivo IoT

Edge en la instancia de IoT Hub y recupere la cadena de conexión.


Necesitará esta cadena para configurar el dispositivo IoT Edge en pasos

posteriores.

Para resumir el proceso: a fin de registrar un dispositivo IoT Edge en la

instancia de IoT Hub, primero debe crear una identidad del dispositivo
para el dispositivo perimetral. Esta identidad del dispositivo le permite

comunicarse con la instancia de IoT Hub. La identidad del dispositivo


reside en la nube y usa una cadena de conexión de dispositivo única

para asociar un dispositivo físico a una identidad del dispositivo. El


dispositivo IoT Edge se conecta a la instancia de IoT Hub, ya sea a un
centro existente o a uno recién creado. La cadena de conexión vincula
el dispositivo IoT con su identidad en la instancia de IoT Hub. Por tanto,

el proceso de registro de un dispositivo implica la recuperación de la

cadena de conexión asociada a un dispositivo perimetral que


representa la identidad del dispositivo en IoT Hub. Después de esto, se

configura la cadena de conexión en el dispositivo IoT Edge.

Antes de empezar, si no tiene una suscripción activa a Azure, debe crear

una cuenta gratuita, y puede usar una evaluación gratuita de 30 días, o


bien crear una suscripción de pago por uso propia.

Por tanto, los pasos que debe seguir son estos:


11
1. Definir el grupo de recursos o usar uno existente
2. Crear un dispositivo Azure IoT Edge
3. Crear una instancia de Azure IoT Hub o usar una existente
4. Registrar el dispositivo IoT Edge en IoT Hub

Qué es un grupo de recursos

Un grupo de recursos es un contenedor que conserva los recursos


relacionados de una solución. El grupo de recursos incluye los recursos
que se quieren administrar como grupo. Los recursos relacionados se

agrupan de forma lógica, como las cuentas de almacenamiento, redes

virtuales y máquinas virtuales para implementarlos, administrarlos y


mantenerlos como entidad única. Los grupos de recursos almacenan

metadatos sobre los recursos. Por tanto, al especificar una ubicación


para el grupo de recursos, se especifica dónde se almacenan esos
metadatos. Por motivos de compatibilidad, es posible que sea

necesario asegurarse de que los datos se almacenan en una región


concreta.

Procedimientos para crear un dispositivo IoT Edge

Una vez creado el grupo de recursos, puede crear un dispositivo virtual


IoT preconfigurado dentro de este grupo de recursos. La creación de
un dispositivo perimetral virtual implica dos propiedades obligatorias:
Definir un nombre del dispositivo virtual y elegir el grupo de recursos

que se va a implementar. Como va usar Azure IoT Edge en la máquina

virtual Ubuntu según se ha descrito en los requisitos previos, el


dispositivo ya tiene instalado el entorno de ejecución de Azure IoT

Edge. El entorno de ejecución de Azure IoT Edge es una colección de


programas que convierten un dispositivo en un dispositivo IoT Edge.
12 Colectivamente, los componentes del entorno de ejecución de Azure
IoT Edge permiten que los dispositivos IoT Edge reciban código para
ejecutarlo en el perímetro y comunicar los resultados a la instancia de

IoT Hub.

El entorno de ejecución de Azure IoT Edge se implementa en todos los

dispositivos IoT Edge. Tiene tres componentes. El demonio de


seguridad de IoT Edge se inicia cada vez que se inicia un dispositivo IoT
Edge y arranca el dispositivo mediante el inicio del agente de este. El

agente de IoT Edge facilita la implementación y supervisión de los

módulos en el dispositivo IoT Edge, incluido el centro de IoT Edge. El

centro de IoT Edge administra las comunicaciones entre los módulos


del dispositivo IoT Edge y entre el dispositivo y la instancia de IoT Hub.
Puede usar el comando az IoT hub device-identity create para crear
un dispositivo IoT Edge.
Procedimientos para crear la instancia de IoT Hub

Azure IoT Hub permite la comunicación entre el dispositivo virtual y la

nube. La creación de una instancia de IoT Hub implica las siguientes

propiedades obligatorias: Definir un nombre único de la instancia de


IoT Hub y elegir el grupo de recursos que se va a implementar. Para

crear una instancia de Azure IoT Hub con la CLI de Azure, usará el
conjunto de comandos az IoT hub create. Tenga en cuenta que solo

se permite una instancia gratuita de IoT Hub en cada suscripción. El

nivel gratuito de IoT Hub funciona para este ejercicio. Si ha usado IoT
Hub en el pasado y ya tiene un centro gratis creado, puede usar ese
centro de IoT.

Registro del dispositivo IoT Edge en IoT Hub

El proceso de registro de un dispositivo IoT implica la recuperación de


13
la cadena de conexión del dispositivo. La identidad del dispositivo

reside en la nube, y se usa una cadena de conexión de dispositivo única

para asociar un dispositivo físico a una identidad de dispositivo. Use el


comando az iot hub device-identity show-connection-string para

recuperar la cadena de conexión. Copie el valor de la clave


connectionString desde la salida JSON y guárdelo. Usará esta cadena
de conexión para configurar el entorno de ejecución de Azure IoT Edge.

Procedimientos para configurar un dispositivo IoT Edge

El proceso de configuración del dispositivo IoT Edge implica la


configuración de la cadena de conexión en el dispositivo IoT Edge.
Puede establecer la cadena de conexión de forma remota sin tener que

conectarse a la máquina virtual mediante la ejecución de un script en

el dispositivo. Use el comando az vm run para invocar un script en el


dispositivo perimetral y pasar la cadena de conexión como un

parámetro.

14
Procedimiento para crear
e implementar módulos
de Azure Machine
Learning
Información general

En este módulo, el objetivo es entrenar un modelo de aprendizaje


automático e implementar el modelo entrenado en un contenedor de
Azure Machine Learning. Todos los componentes necesarios para el
entrenamiento del modelo y la implementación del contenedor están
en el [repositorio de Git del kit de herramientas de inteligencia artificial

15 para Azure IoT Edge]([Link]

edge/tree/master/IoT Edge anomaly detection tutorial). Ejecutará el

cuaderno en el ejercicio siguiente.

En primer lugar, configure los parámetros para IoT Hub y el área de

trabajo de aprendizaje automático de Azure. Estos incluyen el grupo de


recursos, la región de Azure, el nombre de la instancia de Azure IoT
Hub, el identificador del dispositivo IoT Edge, el identificador de la

suscripción de Azure y el nombre del área de trabajo del servicio Azure

ML. También debe especificar el nombre del módulo

"machinelearningmodule". En este caso, se usa el clasificador de


árbol de decisión como un detector de anomalías. Compilará,

evaluará y probará el modelo. También almacenará el modelo en

disco y, después, registrará el modelo.


A continuación, usará el modelo registrado para crear una imagen de

Docker. Luego, puede probar el rendimiento del modelo mediante

la implementación del contenedor en Azure Container Instances (ACI).


Llame al servicio web con algunos datos de entrada ficticios

para obtener una predicción.

Por último, implementará el contenedor en el dispositivo Azure IoT

Edge. Cree un archivo [Link] que contenga los módulos

que quiere implementar en el dispositivo y las rutas. Después, inserte

este archivo en la instancia de IoT Hub, que lo enviará al

dispositivo IoT Edge. Después, el agente de IoT Edge extraerá las

imágenes de Docker y las ejecutará. En las secciones siguientes, se


describen estos pasos con más detalle.

16
Administración de
modelos de Azure
La creación del aprendizaje automático es solo el primer paso para

implementarlo en producción en dispositivos perimetrales. El flujo de


trabajo para implementar modelos de producción es el siguiente:

1. Registre el modelo.
2. Prepárese para la implementación. (Especifique los recursos, el

uso y el destino de proceso).

17 3. Implemente el modelo en el destino de proceso.


4. Pruebe el modelo implementado como un servicio web.

En primer lugar, después de compilar el modelo, debe registrarlo. Un

modelo registrado es una agrupación lógica para uno o varios archivos

que componen el modelo. Después, el modelo se empaqueta en una


imagen de Docker. En última instancia, el modelo se implementa como
un servicio web en la nube o en el equipo local. Es posible que durante
la implementación se necesiten pasos adicionales. Incluyen la

generación de perfiles para determinar la configuración de CPU y


memoria ideal o, la conversión del modelo para optimizar el
rendimiento.
Preparación de la
implementación del
modelo
Puede usar los siguientes destinos o recursos de proceso para

hospedar la implementación del servicio web.

21. Servicio web local


22. Instancia de proceso de Azure Machine Learning

23. Azure Kubernetes Service (AKS)


24. Azure Container Instances
25. Clústeres de proceso de Azure Machine Learning

26. Azure Functions


18
27. Azure IoT Edge

28. Azure Data Box Edge.

En este caso, usará Azure Container Instances como un destino de

proceso. Una vez creado el modelo en un contenedor, puede


implementarlo como un contenedor como un servicio web para
dispositivos IoT Edge.

Para implementar el modelo, necesita los elementos siguientes:

29. Un script de entrada. Este script acepta solicitudes, las puntúa


mediante el modelo y devuelve los resultados. El script de

entrada es específico del modelo.


30. Dependencias, como scripts de asistente o paquetes de Python

o Conda necesarios para ejecutar el modelo o el script de


entrada.
31. La configuración de la implementación del destino de
proceso que hospeda el modelo implementado. Esta

configuración describe aspectos como los requisitos de

memoria y CPU, necesarios para ejecutar el modelo.

Estos elementos se encapsulan en una configuración de inferencia y

una configuración de implementación. La configuración de inferencia


hace referencia al script de entrada y a otras dependencias. Estas
configuraciones se definen mediante programación cuando se usa el

SDK para realizar la implementación. Se definen en archivos JSON


cuando se usa la CLI.

19
El script de entrada recibe los datos enviados a un servicio web
implementado y los pasa al modelo. Después, toma la respuesta
devuelta por el modelo y la envía al cliente.

El script contiene dos funciones que cargan y ejecutan el modelo:

32. init(): Normalmente, esta función carga el modelo en un objeto


global. Esta función solo se ejecuta una vez cuando se inicia el

contenedor de Docker para el servicio web.


33. run(input_data): esta función usa el modelo para predecir un

valor basado en los datos de entrada. Las entradas y salidas de


la ejecución suelen usar el formato JSON para la serialización y

deserialización. También puede trabajar con datos binarios sin

formato. Puede transformar los datos antes de enviarlos al

modelo o antes de devolverlos al cliente.


Creación de una imagen
de Docker
Los modelos implementados se empaquetan como una imagen de
Docker. La imagen contiene las dependencias necesarias para ejecutar
el modelo junto con la lógica para puntuar nuevos datos. Para Azure
20 Container Instances, se usa la clase
[Link] para crear una configuración de
imagen. La configuración de imagen se usa después para crear una
imagen de Docker.

Una vez que tenga una imagen registrada, debe compilarla mediante
ContainerImage
Implementación de la
imagen en el destino de
proceso
Para implementar la imagen que ha creado, primero debe especificar

el destino que quiere usar. En este caso, es la instancia de Azure


Container Instances (ACI). Después, use la clase AciWebservice para

configurar e implementar a partir de una imagen.

21

Implementación de un
contenedor en un
dispositivo Azure IoT Edge
Cree un archivo [Link] que contenga los módulos que
quiere implementar en el dispositivo y las rutas. Después, debe insertar
este archivo en la instancia de IoT Hub, que lo enviará al dispositivo IoT

Edge. Después, el agente de IoT Edge extraerá las imágenes de Docker


y las ejecutará. Llegados a este punto, debería poder supervisar los

mensajes desde el dispositivo perimetral hasta la instancia de IoT Hub.


Ejercicio: Creación e
implementación de un
módulo de Azure Machine
Learning
Primer paso:

1. Inicie sesión en [Link]


2. Presione el botón Cargar.
3. Escriba Azure/ai-toolkit-iot-edge como repositorio de GitHub.

34. Puede asignar a este repositorio un nombre que pueda


recordar, o bien usar el mismo nombre.
22 35. Si quiere, puede mantener el repositorio privado.
4. Tenga en cuenta que el proceso de importación puede tardar

algún tiempo.

5. Después de esta fase, presione Run on Free Compute (Ejecutar

en un proceso gratuito) como se indica a continuación.

23

6. Se abrirá una nueva pestaña en el explorador. Asegúrese de que

el cuaderno se ejecute en un proceso gratuito (según la pestaña

anterior) para evitar cargos.


7. Vaya a la pestaña nueva y verá que el cuaderno se está
ejecutando con el proyecto que acaba de importar desde
GitHub.

24

8. Ahora, vaya a la carpeta IoT Edge anomaly detection


tutorial (Tutorial de detección de anomalías de IoT Edge) y 8.
haga clic en [Link]. Ejecutará

todas las celdas de código paso a paso en el cuaderno.


Realice las acciones
siguientes.
Especificación de parámetros

25

Carga de la extensión
azure iot
Inicio de sesión en Azure

26

Establecimiento de la
suscripción de Azure
Comprobación de la
versión del SDK

27 Creación del área de


trabajo de aprendizaje
automático
Carga del área de trabajo
de Azure ML

Registro del dispositivo en


28
IoT Hub
Obtención de la cadena de
conexión del dispositivo

29 Instalación de las
bibliotecas
Carga y lectura del
conjunto de datos

30

Carga de características
Entrenamiento del modelo

31

Evaluación de la precisión
Serialización y prueba del
modelo

32

Registro del modelo en la


nube
Escritura del archivo
iot_score.py

33
Creación de la imagen de
Docker

34
Prueba del modelo en
Azure Container Instances

35

Prueba del servicio web


Carga del área de trabajo
de Azure ML

36

Obtención de los detalles


del contenedor
Implementación del
contenedor en el
dispositivo perimetral

37

Procedimientos para ver el


repositorio de contenedor
En el paso anterior, ha creado una imagen de contenedor para el

módulo de detección de anomalías. Ahora puede comprobar que la


imagen de contenedor se ha creado y almacenado correctamente en
la instancia de Azure Container Registry asociada al entorno de

aprendizaje automático.
Ejercicio: Visualización del
repositorio de
contenedores
1. En Azure Portal, vaya al área de trabajo de aprendizaje

automático.

38

2. Haga clic en aprendizaje automático y seleccione el área de


trabajo que ha creado en el cuaderno.
3. Al hacer clic en el área de trabajo, verá la sección Información

general del área de trabajo de ML y los detalles del área de


trabajo, como el grupo de recursos, la ubicación, el identificador
de la suscripción, el almacenamiento, el registro, el almacén de
claves y Application Insights.

39 4. Haga clic en el valor Registro para entrar en el registro de


contenedor.
5. Al desplazarse hacia abajo desde la sección información

general, verá la sección Servicios y, después,


seleccione Repositorios en Servicios. Verá el

repositorio tempanomalydetection que ha creado en el

cuaderno.

40

6. Seleccione tempanomalydetection. El repositorio tendrá una

etiqueta. Ahora la ruta de acceso completa de la imagen del


contenedor tiene el

formato: .[Link]/tempanomalydetection:1. Puede usar la

ruta de acceso de la imagen para implementar este contenedor


en dispositivos IoT Edge.
7. Al desplazarse hacia abajo desde la sección Información
general, verá la sección Configuración. Seleccione Clave de

acceso.

41
Verá una serie de credenciales de acceso como Servidor de inicio
de sesión, Nombre de usuario y Contraseña para un usuario
administrador. Estas credenciales se pueden incluir en el manifiesto
de implementación para proporcionar acceso a los dispositivos IoT
Edge para extraer imágenes de contenedor del registro.
Procedimiento para ver
los datos generados
En este momento, puede ver cómo se ejecuta el contenedor como un

módulo en el dispositivo IoT Edge. Puede ver los mensajes que se


generan en cada módulo de IoT Edge. También puede ver los mensajes
que se entregan al centro de IoT.

Ejercicio: Visualización de
42 los datos generados
En este ejercicio, se configurará Visual Studio Code para supervisar los
mensajes del dispositivo a la nube que llegan al centro de IoT. Nota:

Para ver los mensajes del dispositivo a la nube que recibe el centro de
IoT, necesita la extensión Azure IoT Hub Toolkit para Visual Studio
Code (anteriormente, la extensión Azure IoT Toolkit).

1. En Visual Studio Code, seleccione IoT Hub

Devices (Dispositivos IoT Hub).


2. Después, seleccione Set IoT Hub Connection
String (Establecer cadena de conexión de IoT Hub) en el menú.

3. En el cuadro de texto que aparece en la parte superior de la


página, escriba la cadena de conexión iothubowner para IoT
Hub. El dispositivo IoT Edge debe aparecer en la lista de

dispositivos IoT Hub.


4. Seleccione Iniciar la supervisión del punto de conexión de
eventos integrado.
5. Observe los mensajes procedentes de tempSensor cada cinco

segundos. El cuerpo del mensaje contiene una propiedad

denominada anomaly que el módulo de aprendizaje


automático proporciona con un valor true o false.

6. La propiedad AzureMLResponse contiene el valor "OK" si el

modelo se ha ejecutado correctamente.

43

Limpieza de los recursos

Limpie los recursos si no quiere volver a usarlos. La eliminación de los


recursos de Azure y de los grupos de recursos es un proceso

irreversible. Debe estar seguro de que quiere eliminar los recursos.


1

Compilación de un bot de
chat con Azure Bot Service
BIENVENIDA
Azure Bot Service, en combinación con Microsoft QnA Maker, ofrece

las herramientas que los desarrolladores necesitan para crear y publicar

bots inteligentes que interactúen de forma natural con los usuarios

mediante una gama de servicios.

En este módulo, aprenderá a:

 Crear un bot de aplicación web de Azure para hospedar un bot


 Creará una base de conocimiento, la rellenará con datos y la

conectará a un bot
 Implementará bots en el código y depurará los robots que
compile
2
 Publicará los bots y usará la integración continua para
mantenerlos al día
 Depuración de bots en local mediante Visual Studio Code y

Microsoft Bot Framework Emulator

Requisitos previos

Ninguno

Introducción 2 min

Ejercicio: Creación de un bot de aplicación web de Azure 15 min

Ejercicio: Creación de una base de conocimiento con Microsoft


QnA Maker 20 min
Ejercicio: Implementación de un bot con Visual Studio Code 20

min

Ejercicio: Depuración local del bot 20 min

Ejercicio: Conexión del bot con la base de conocimiento 20 min

Comprobación de conocimientos 5 min

Resumen y limpieza 8 min

3
INTRODUCCIÓN
Azure Bot Service, en combinación con Microsoft QnA Maker, ofrece
las herramientas que los desarrolladores necesitan para crear y publicar
bots inteligentes que interactúen de forma natural con los usuarios
mediante una gama de servicios.

En este módulo, creará un bot mediante Azure Bot Service y lo


conectará a una base de conocimiento creada con QnA Maker. Luego
4
se interactúa con el bot mediante Microsoft QnA Maker y Microsoft Bot
Framework Emulator.

Nota

Este módulo requiere una suscripción de Azure. Los servicios que cree

y use son gratuitos, pero necesitará una suscripción activa o una


versión de prueba para completar los ejercicios. Si no tiene una

suscripción a Azure, cree una cuenta gratuita antes de empezar.

Objetivos de aprendizaje

En este módulo, aprenderá a:

• Crear un bot de aplicación web de Azure para hospedar un bot


• Creará una base de conocimiento, la rellenará con datos y la

conectará a un bot

• Implementará bots en el código y depurará los robots que


compile

• Publicará los bots y usará la integración continua para

mantenerlos al día

• Depuración de bots en local mediante Visual Studio Code y


Microsoft Bot Framework Emulator

Requisitos previos

Para realizar los ejercicios de este módulo, necesita una suscripción


activa de Azure (o una versión de prueba) y una instalación local de
5 Visual Studio Code.
EJERCICIO: CREACIÓN DE
UN BOT DE APLICACIÓN
WEB DE AZURE
El primer paso para crear un bot es proporcionar una ubicación para

hospedarlo en Azure. La característica Web Apps de Azure App Service


es perfecta para hospedar aplicaciones de bot que Azure Bot Service

se encarga de aprovisionar automáticamente. En esta unidad se usa

Azure Portal para aprovisionar un bot de aplicación web de Azure.

1. Inicie sesión en Azure Portal .

6 2. En el menú de Azure Portal, seleccione Crear un recurso.

3. Seleccione IA y Machine Learning y luego Web App Bot.


4. En la

página Nuevo
bot de

aplicación web,

especifique la
configuración
siguiente para el
nuevo bot de

aplicación web.

Opción Valor Descripción


7

Nombre del Elija un nombre único Este nombre debe ser único dentro de
bot Azure, por lo que debe asegurarse de
que aparece una marca de verificación

de color verde junto a él.

Suscripción Seleccione la suscripción Seleccione la suscripción de Azure.

Grupo de Seleccione Crear Seleccione un grupo de recursos

recursos nuevo y use el existente o cree uno para almacenar

nombre mslearn- los recursos de este ejercicio.

factbot
Opción Valor Descripción

Ubicación Seleccione la región más Seleccione la ubicación donde se


cercana de la lista debe colocar el bot.

desplegable

Plan de tarifa F0 Un plan básico gratuito para esta

aplicación.

Nombre de Deje el valor El valor predeterminado se rellena


aplicación predeterminado según el nombre del bot. Puede
cambiarlo si prefiere otro nombre
8 para la aplicación web o dejar el valor

predeterminado.

5. Luego, seleccione Plantilla de bot. Seleccione SDK v3 como


versión, [Link] como lenguaje del SDK y Preguntas y

respuestas como tipo de plantilla. Luego haga clic


en Aceptar en la parte inferior de la vista.
6. Ahora seleccione Plan de

App
Service/Ubicación, Crear

nuevo y luego cree un plan

de App Service denominado


"qa-factbot-service-plan" o
algo similar en la misma
región que ha seleccionado

en el paso anterior. Haga clic


en Aceptar para cerrar la
vista.

7. Deje las restantes opciones con sus valores predeterminados.


9
Puede comparar la configuración con la siguiente captura de
pantalla si es necesario.
8. Haga clic en Crear en la parte inferior del panel "Bot de

aplicación web" para iniciar


la implementación.

Nota

Por lo general, la implementación

lleva dos minutos o menos. Puede


observar el progreso en el panel

Notificaciones (icono de campana)

de la parte superior del portal.

9. Una vez concluida la


implementación,
10
seleccione Grupos de

recursos en la barra lateral


izquierda.

10. Seleccione el grupo de


recursos que ha creado

(mslearn-factbot) y en el
que ha implementado el

bot de aplicación web de


Azure.

Ahora se deberían ver varios

recursos creados para el bot de

aplicación web de Azure.


En segundo plano, han sucedido muchas cosas al implementar el bot

de la aplicación web de Azure.

 Se ha creado un bot y se ha registrado en Azure.


 Se ha creado una aplicación web de Azure para hospedar el bot.
 El bot se ha configurado para trabajar con Microsoft QnA
Maker.

11
El siguiente paso es usar QnA Maker para crear una base de
conocimiento de preguntas y respuestas para dotar al bot de
inteligencia.
EJERCICIO: CREACIÓN DE
UNA BASE DE
CONOCIMIENTO CON
MICROSOFT QNA MAKER
QnA Maker forma parte de Azure Cognitive Services, un conjunto de
servicios y API para compilar aplicaciones inteligentes respaldadas por
inteligencia artificial (IA) y aprendizaje automático. En lugar de codificar
un bot para que se anticipe a cada pregunta que un usuario pudiera

hacer y proporcionar una respuesta, puede conectarlo a una base de


conocimiento de preguntas y respuestas creadas con QnA Maker. Un
12
escenario de uso habitual es crear una base de conocimiento a partir

de la dirección URL de una página web de Preguntas más frecuentes


para que el bot pueda responder a preguntas específicas del dominio,
por ejemplo, "¿cómo encuentro la clave de producto de Windows?" o
"¿dónde puedo descargar Visual Studio Code?".

En esta unidad, usará QnA Maker para crear una base de conocimiento
con preguntas como "¿qué equipos de la NFL han ganado más

ediciones de la Super Bowl?" y "¿cuál es la ciudad más grande del


mundo?". Luego se implementa la base de conocimiento en una

aplicación web de Azure para que sea accesible a través de un punto

de conexión HTTPS.
Crear un servicio QnA Maker

1. Vaya al portal de QnA Maker .

2. Seleccione Iniciar sesión en la esquina superior derecha e


inicie sesión con la misma cuenta que ha usado para crear la

aplicación web.

3. A menos que ya tenga una base de conocimiento, el portal le

indica que no tiene ninguna y le pide que cree una desde el


menú.

4. En el menú de la parte superior del portal, seleccione Create a

knowledge base (Crear una base de conocimiento).

5. Haga clic en Create a QnA service (Crear un servicio QnA). Al


13 seleccionar este botón, se abre Azure Portal e inicia la sesión
con las credenciales que usó anteriormente. Se crean el servicio
QnA Maker y el servicio asociado de aplicación de Azure que lo

va a hospedar en este portal.

Nota
También es posible crear un servicio QnA Maker en Azure Portal antes

de crear una base de conocimiento.

6. En la pestaña de Azure Portal recién abierta, especifique la


siguiente configuración para el nuevo servicio QnA Maker.

Opción Valor Descripción

Nombre elija un nombre Este nombre debe ser único dentro de


único Azure, por lo que debe asegurarse de

que aparezca una marca de verificación

de color verde junto a él Y en el


cuadro Nombre de aplicación situado

14 más abajo en el panel.

Suscripción Seleccione la Seleccione la suscripción de Azure.


suscripción

Plan de tarifa F0 Un plan gratuito básico.

Ubicación Seleccione la región Seleccione la ubicación donde debe


más cercana de la colocarse el servicio.

lista desplegable

Grupo de Seleccione el grupo Seleccione el grupo de recursos


recursos de recursos creado existente (mslearn-factbot) para

en la unidad anterior almacenar los recursos de este ejercicio.


Opción Valor Descripción

Plan de tarifa B Seleccione el plan de tarifa del servicio

de la de búsqueda.

búsqueda

Ubicación de Seleccione la región Seleccione la ubicación donde debe

la búsqueda más cercana de la colocarse el servicio de búsqueda.


lista desplegable

Nombre de Deje el valor El valor predeterminado se rellena

aplicación predeterminado según el nombre de la instancia de QnA

15 Maker. Puede cambiarlo si prefiere otro


nombre para la aplicación web o dejar el
valor predeterminado.

Ubicación de Seleccione la región Seleccione la ubicación donde se debe


sitio web más cercana de la colocar el sitio web.

lista desplegable

7. Seleccione el botón Crear en la parte inferior del panel.


8. Haga clic en Grupos de

recursos en la cinta del lado


izquierdo del portal y busque el

grupo de recursos mslearn-

factbot.

Espere hasta que


"Implementando" cambie a

"Correcto" en la parte superior


del panel, lo que indica que el
servicio QnA y los recursos
asociados se han implementado
correctamente. Si el mensaje
16
desaparece, puede hacer clic en

el icono de la campana situado

en la barra de menús para ver el


estado. También puede

seleccionar Actualizar en la
parte superior del panel para
actualizar el estado de
implementación.

Creación, rellenado y
entrenamiento de la base de

conocimiento de QnA Maker

1. Para volver a Crear una base de conocimiento, vaya a la


pestaña abierta o a [Link] en el
explorador y desplácese al Paso 2 para conectarse al servicio

QnA.

2. En el Paso 2, seleccione Actualizar para asegurarse de que el


nuevo servicio QnA que acaba de implementar esté disponible

en esta pantalla.

3. En el campo correspondiente al id. de directorio de

Microsoft Azure, elija el directorio propietario de la


suscripción que ha usado (probablemente solo haya uno).

4. Seleccione la suscripción de Azure en la lista desplegable Azure

subscription name (Nombre de suscripción de Azure). Si no ve


la suscripción, pruebe a cambiar de directorio hasta que la
encuentre.

17
5. En Azure QnA service (Servicio Azure QnA), seleccione el

nombre del servicio QnA que ha especificado anteriormente. Si


no aparece ningún servicio, puede que tenga que actualizar la

página.

6. Luego asigne un nombre a la base de conocimiento, por

ejemplo, "Base de conocimiento de Factbot".

El siguiente paso es rellenar la base de conocimiento con preguntas y

respuestas. Puede escribir preguntas y respuestas de forma manual en


una base de conocimiento de QnA Maker o puede importarlas desde

archivos locales o preguntas frecuentes en línea. Los formatos


compatibles incluyen archivos de texto delimitados por tabuladores,

documentos de Microsoft Word, hojas de cálculo de Excel y archivos

PDF.
1. Para rellenar la base de conocimiento,

abra [Link]
bot-with-azure-bot-service/blob/master/[Link] en el
explorador y descargue el archivo [Link]. Esta carpeta

ZIP contiene un archivo de texto denominado [Link].

2. Extraiga y copie el archivo en el equipo. Luego, desplácese hacia

abajo por el portal de QnA Maker, haga clic en + Add file (+


Agregar archivo) y seleccione [Link].

Este archivo contiene 20 preguntas y respuestas en formato delimitado

por tabuladores.

18

3. Hay una serie de personalidades disponibles para QnA Maker,

que se puede seleccionar en Chit-chat. Puesto que


proporcionamos el punto de inicio de la base de conocimiento

en [Link], proporcionamos la personalidad de la línea


base, por lo que puede dejarlo como predeterminado.
4. Seleccione Create your KB (Crear la base de conocimiento) en

la parte inferior de la página y espere a que se cree la base de


conocimiento. Debería tardar menos de un minuto.

5. Confirme que las preguntas y las respuestas importadas

desde [Link] aparecen en la base de conocimiento.

Después, haga clic en Save and train (Guardar y entrenar) y


espere a que se complete el entrenamiento.

19

Probar la base de conocimiento

1. Haga clic en el botón Test (Probar) que está a la derecha del


botón Save and train (Guardar y entrenar). Escriba "Hi" (Hola)
en el cuadro de mensaje y presione Entrar. Confirme que la

respuesta es "Welcome to the QnA Factbot" (Bienvenido a

Factbot de QnA), como se muestra a continuación.


2. Escriba "What book has sold the most copies?" en el cuadro de

mensaje y presione ENTRAR. ¿Cuál es la respuesta?

3. Vuelva a hacer clic en el botón Probar para contraer el panel


de prueba.
20

4. Haga clic en Publicar en el menú de la parte superior de la


página y haga clic en el botón Publicar situado en la parte

inferior de la página para publicar la base de conocimiento.


La publicación hace que la base de conocimiento esté

disponible en un punto de conexión HTTPS.

Espere a que se complete el proceso de publicación y confirme que se


implementó el servicio de QnA. Con la base de conocimiento
hospedada ahora en una aplicación web de Azure, el paso siguiente es
implementar un bot que pueda usarla.
EJERCICIO:
IMPLEMENTACIÓN DE UN
BOT CON VISUAL STUDIO
CODE
Al crear un bot de una aplicación web de Azure, se ha implementado
una aplicación web de Azure para hospedarlo. Sin embargo, el bot se
debe implementar con código, y todavía se debe implementar en la
aplicación web de Azure. Afortunadamente, Azure Bot Service ha

generado el código automáticamente.

21 En esta unidad se usa Visual Studio Code para colocar el código en un


repositorio local de Git y publicar el bot en Azure mediante la inserción
de cambios desde el repositorio local en otro remoto conectado a la

aplicación web de Azure que hospeda el bot, un proceso conocido


como "integración continua" (CI).

Descarga del código fuente del bot de la aplicación web

1. Cree una carpeta denominada factbot en la ubicación del disco


duro que prefiera para almacenar el código fuente del bot.

2. En Azure Portal, busque y seleccione el grupo de recursos que


ha creado.

3. Busque y seleccione la instancia de Web App Bot que ha creado

anteriormente.
4. Seleccione Compilar en el menú de la izquierda y

luego Download Bot source code (Descargar código fuente


del bot) para preparar un archivo ZIP que contenga el código
fuente del bot.

22 5. El portal tardará unos minutos en comprimir el código.

6. Cuando haya finalizado, en el portal se mostrará un

botón Download Bot source code (Descargar código fuente


del bot) similar al de la siguiente captura de pantalla.

7. Seleccione Download Bot source code (Descargar código

fuente del bot) para descargar el código fuente en un archivo

.zip en su máquina local.


8. Una vez completada la descarga, extraiga el contenido del

archivo .zip en la carpeta factbot que ha creado en el disco


duro local.

Instalación del repositorio de Git del bot mediante el Centro de

implementación

1. Vuelva a Azure Portal en el explorador.

2. En el panel de compilación del bot de aplicación web de


Azure Portal, haga clic en el vínculo Publish updates

automatically to Azure with Continuous

Deployment (Publicar actualizaciones automáticamente en


Azure con implementación continua) en el área Publicar de la
vista principal. Esto se muestra en la captura de pantalla

23 siguiente.

3. En el panel Centro de implementación, seleccione Git

local como origen de implementación y haga clic


en Continuar.

4. Seleccione la opción Servidor de compilación de Kudu para

App Service y elija Continuar y Finalizar.


5. Seleccione FTP/Credenciales en el área de menú superior y,

luego, Credenciales de usuario en la vista abierta.

6. Escriba un nombre de usuario y una contraseña (debe tener


más de 10 caracteres) y haga clic en Guardar credenciales.

Tome nota del nombre de usuario y la contraseña.

7. Vaya a la configuración del bot de aplicación web y


24
seleccione Toda la configuración de App Service en el menú
de la izquierda. Así se muestra la aplicación web subyacente en
la que está hospedado el bot.

8. Anote la URL de clonación de Git del panel Información

general. Esta dirección URL es el repositorio de Git basado en


la nube que Azure ha creado para administrar el proyecto.

Crear un repositorio de Git local

En esta sección con una experiencia de Git integrada se va a usar Visual

Studio Code, aunque es posible crear el repositorio de Git con cualquier


otra técnica que prefiera si está familiarizado con los pasos. Si no tiene

instalado Visual Studio Code, puede descargarlo de forma gratuita


desde aquí.
1. Inicie Visual Studio Code y use el comando Archivo > Abrir

carpeta... para abrir la carpeta factbot en la que ha copiado el


código fuente del bot.

2. Haga clic en el botón Control de código fuente de la barra de

actividades izquierda de Visual Studio Code. Puede mantener el

puntero sobre cada botón si la barra lateral está contraída.

3. Seleccione el icono Inicializar repositorio de la parte superior


(a la derecha del título CONTROL DE CÓDIGO FUENTE).

25

4. Seleccione el botón Inicializar repositorio del cuadro de

diálogo.

5. Escriba "Primera confirmación." en el cuadro de texto de

entrada.

6. Haga clic en la marca de verificación para confirmar los


cambios, lo que almacena provisionalmente todos los archivos

cuando se pide.

Sugerencia
Si aparece un error de Git que indica que no tiene la identidad

establecida en Git, abra un símbolo del sistema y ejecute los comandos


siguientes, reemplazando los valores de marcador de posición de
correo electrónico y nombre. Luego, vuelva a pulsar el botón de
confirmación.

bashCopiar

git config --global [Link] "Your Email"

git config --global [Link] "Your name"

7. Seleccione Terminal en el menú Ver de Visual Studio Code


para abrir un terminal integrado.

8. Ejecute el siguiente comando en el terminal integrado,


26 reemplazando {git-url} en el siguiente comando por la
dirección URL de clonación de Git que ha localizado en
Azure Portal.

bashCopiar

git remote add qna-factbot {git-url}

9. Vuelva a la sección Control de código fuente de Visual Studio


Code y haga clic en los puntos suspensivos (los tres puntos) de

la parte superior del panel CONTROL DE CÓDIGO FUENTE.

10. Seleccione Publicar rama en el menú para insertar el código


de bot desde el repositorio local en Azure. Si se le piden
credenciales, escriba el nombre de usuario y la contraseña que

ha configurado en el Centro de implementación.


El bot se ha publicado en Azure. Antes de probarlo allí, ejecútelo

localmente y obtenga información sobre cómo depurarlo en Visual


Studio Code.

27
EJERCICIO: DEPURACIÓN
LOCAL DEL BOT
Como sucede con cualquier código de aplicación que escriba, los

cambios en el código del bot se deben probar y depurar de manera

local antes de implementarlos en producción. Para ayudar a depurar


los bots, Microsoft ofrece Bot Framework Emulator.

En esta unidad se aprende a usar Visual Studio Code y el emulador para

depurar los bots.

Instalar paquetes locales de [Link]

28 1. Ejecute el comando siguiente en el terminal integrado de Visual


Studio Code para instalar Restify, un conocido paquete de
[Link] para compilar y usar servicios web RESTful:

bashCopiar

npm install restify

2. Repita este paso para los comandos siguientes a fin de


instalar Bot Builder SDK para [Link] de Microsoft Bot

Framework:

bashCopiar

npm install botbuilder

npm install botbuilder-azure


npm install botbuilder-cognitiveservices

Modificar el bot para que se ejecute en local con el emulador de

bots

El código descargado es un simple servicio de eco. Vamos a reemplazar


ese código por algún código básico para hacer preguntas y responder

a preguntas sencillas. Este código se ejecuta con el emulador de bots.

1. Haga clic en el botón Explorador de la barra de actividades de


Visual Studio Code (es el primer icono de la barra lateral).

2. Seleccione [Link] para abrirlo en el editor de código. Este


archivo contiene el código que controla el bot, código que

generó Azure Bot Service y que se descargó desde Azure Portal.

29 3. Reemplace el contenido de [Link] por el código siguiente y


luego guarde el archivo.

JavaScriptCopiar

"use strict";

var builder = require("botbuilder");

var botbuilder_azure = require("botbuilder-azure");

var useEmulator = true;

var userName = "";

var yearsCoding = "";


var selectedLanguage = "";

var connector = useEmulator ? new [Link]() : new


botbuilder_azure.BotServiceConnector({

appId: [Link],

appPassword: [Link]

});

var bot = new [Link](connector);

30

[Link]('/', [

function (session) {

[Link](session, "Hello, and welcome to QnA Factbot!

What's your name?");

},

function (session, results) {

userName = [Link];
[Link](session, "Hi " + userName + ", how many

years have you been writing code?");

},

function (session, results) {

yearsCoding = [Link];

[Link](session, "What language do you love the


most?", ["C#", "Python", "[Link]", "Visual FoxPro"]);

},

31
function (session, results) {

selectedLanguage = [Link];

[Link]("Okay, " + userName + ", I think I've got it:" +

" You've been writing code for " + yearsCoding + " years," +

" and prefer to use " + selectedLanguage + ".");

}]);

var restify = require('restify');


var server = [Link]();

[Link](3978, function() {

[Link]('test bot endpoint at

[Link]

});

[Link]('/api/messages', [Link]());

Instalar Bot Framework Emulator

Bot Framework Emulator es una aplicación de escritorio


32
multiplataforma que permite que los desarrolladores de bots prueben
y depuren los bots compilados mediante BotBuilder SDK.

Puede usar Bot Framework Emulator para probar los bots que se
ejecutan en local en el equipo o para conectarse a los bots que se
ejecutan de forma remota a través de una conexión de red segura.

Nota

Si ya tiene el emulador instalado, puede omitir esta sección y pasar a

depurar el código de bot.

1. Vaya a la página de versiones de Bot Framework Emulator en


una nueva pestaña o ventana del explorador.
2. Seleccione una descarga para la plataforma en cuestión: Linux,

macOS o Windows.

3. Descomprima el paquete e instálelo mediante los


procedimientos de instalación normales del sistema operativo.

Depurar el bot en Visual Studio Code

Ahora que el emulador está instalado,

1. cambie a Visual Studio Code y abra el archivo de código


fuente [Link].

2. Haga clic en el margen de la izquierda para establecer puntos


de interrupción en las líneas 20, 25 y 30
(llamadas [Link]...).
33
3. Haga clic en el botón Depurar de la barra de actividades y en

el botón de flecha verde Iniciar depuración para iniciar una


sesión de depuración.

4. Confirme que aparece "test bot endpoint


at [Link] en la consola de
depuración.

El código de bot ahora se ejecuta en local.

5. Inicie Bot Framework Emulator desde el menú Inicio o el


icono de inicio.
6. Seleccione el campo Enter your endpoint URL (Escriba la

dirección URL del punto de conexión). Escriba el nombre del


bot y la dirección URL [Link] del
bot que aparecen en la consola de depuración en el paso
anterior.

7. Deje vacíos los campos correspondientes al id. y la contraseña


de la aplicación de Microsoft, así como el de la configuración
regional. Después, seleccione CONNECT (CONECTARSE).

8. Luego,
seleccione Save and
connect (Guardar y
conectar) y guarde el
archivo de configuración
34
en la ubicación que

prefiera.

Sugerencia

En el futuro, puede reconectarse al bot simplemente seleccionando el

nombre del bot en "My bots".


Probar el bot local

1. Escriba "hi" en el cuadro de la parte inferior del emulador y

presione Entrar. Confirme que Visual Studio Code se


interrumpe en la línea 20 de [Link].

35 2. Haga clic en el botón Continuar de la barra de herramientas de


depuración de Visual Studio Code y vuelva al emulador para ver

la respuesta del bot.

3. El bot le hará una serie de preguntas. Respóndalas y


seleccione Continuar en Visual Studio Code cada vez que se

alcance un punto de interrupción. Cuando haya terminado,


seleccione el botón Detener en la barra de herramientas de

depuración para finalizar la sesión de depuración.

En este momento, tiene un bot completamente funcional y sabe cómo


depurarlo mediante su ejecución local en Microsoft Bot Framework
Emulator. El paso siguiente consiste en conectar el bot a la base de

conocimiento que ha publicado para hacer que sea más inteligente.


EJERCICIO: CONEXIÓN
DEL BOT CON LA BASE DE
CONOCIMIENTO
En esta unidad, conectará el bot a la base de conocimiento de QnA
Maker que creó anteriormente para que el bot pueda llevar a cabo una
conversación inteligente. La conexión a la base de conocimiento
implica recuperar algo de información del portal de QnA Maker,

copiarla en Azure Portal, actualizar el código del bot y, luego, volver a


implementar el bot en Azure.
36
Conectar la base de conocimiento de Factbot al bot de aplicación
web

1. Abra el portal de QnA Maker en [Link] en el

explorador y haga clic en el botón de cuenta/perfil del extremo


superior derecho.

2. Seleccione Service Settings (Configuración de servicio) en el

menú que se despliega.

3. Seleccione Mostrar para mostrar la clave Principal del punto


de conexión y Copiar para copiarla en el Portapapeles. Péguela

en un archivo de texto para que pueda recuperarla fácilmente

en otro momento. Si no ve ninguna clave de configuración,

cierre la sesión y vuelva a iniciarla para actualizar la página.


Nota

En función de la configuración del explorador, es posible que deba

permitir las cookies de terceros para completar esta unidad.

4. Seleccione My knowledge bases (Mis bases de conocimiento)


en el menú de la parte superior de la página.

5. Seleccione View Code (Ver código) para la base de

conocimiento creada anteriormente.

6. Haga clic en el botón Copy (Copiar) para copiar los valores


predeterminados y péguelos en un editor.

7. Copie el identificador de la base de conocimiento de la primera

línea y el nombre de host de la segunda. No incluya el prefijo


37 "[Link] en el nombre de host que va a copiar.

8. Vuelva al bot de la aplicación web en Azure Portal.


Seleccione Configuración en el menú de la izquierda y
desplácese hacia abajo hasta que encuentre las configuraciones

de aplicación denominadas "QnAKnowledgebaseId",


"QnAAuthKey" y "QnAEndpointHostName".

9. Haga clic en Mostrar valores para mostrar los campos

editables.

10. Pegue en estos campos el identificador y el nombre de host de

la base de conocimiento que acaba de obtener y la clave del


punto de conexión que ha obtenido anteriormente.

11. Seleccione Guardar en la parte superior de la ventana para

conservar los cambios.

38

Configuración del código del servicio de bots


1. Cambie a Visual Studio Code y reemplace el contenido

de [Link] por este código. Luego guarde el archivo.

JavaScriptCopiar

var restify = require('restify');

var builder = require('botbuilder');

var botbuilder_azure = require("botbuilder-azure");

var builder_cognitiveservices = require("botbuilder-cognitiveservices");

// Setup Restify Server

var server = [Link]();


39

[Link]([Link] || [Link] || 3978, function () {

[Link]('%s listening to %s', [Link], [Link]);

});

// Create chat connector for communicating with the Bot Framework


Service

var connector = new [Link]({

appId: [Link],

appPassword: [Link],
openIdMetadata: [Link]

});

// Listen for messages from users

[Link]('/api/messages', [Link]());

var tableName = 'botdata';

var azureTableClient = new


botbuilder_azure.AzureTableClient(tableName,
[Link]['AzureWebJobsStorage']);
40
var tableStorage = new botbuilder_azure.AzureBotStorage({ gzipData:
false }, azureTableClient);

// Create your bot with a function to receive messages from the user

var bot = new [Link](connector);

[Link]('storage', tableStorage);

// Recognizer and and Dialog for preview QnAMaker service

var previewRecognizer = new

builder_cognitiveservices.QnAMakerRecognizer({
knowledgeBaseId: [Link],

authKey: [Link] ||
[Link]

});

var basicQnAMakerPreviewDialog = new

builder_cognitiveservices.QnAMakerDialog({

recognizers: [previewRecognizer],

defaultMessage: 'No match! Try changing the query terms!',

qnaThreshold: 0.3
41
}

);

[Link]('basicQnAMakerPreviewDialog',
basicQnAMakerPreviewDialog);

// Recognizer and and Dialog for GA QnAMaker service

var recognizer = new builder_cognitiveservices.QnAMakerRecognizer({

knowledgeBaseId: [Link],
authKey: [Link] ||

[Link], // Backward compatibility with

QnAMaker (Preview)

endpointHostName: [Link]

});

var basicQnAMakerDialog = new


builder_cognitiveservices.QnAMakerDialog({

recognizers: [recognizer],

defaultMessage: "I'm not quite sure what you're asking. Please ask
your question again.",
42

qnaThreshold: 0.3

});

[Link]('basicQnAMakerDialog', basicQnAMakerDialog);

[Link]('/', //basicQnAMakerDialog);

function (session) {

var qnaKnowledgebaseId = [Link];


var qnaAuthKey = [Link] ||

[Link];

var endpointHostName = [Link];

// QnA Subscription Key and KnowledgeBase Id null verification

if ((qnaAuthKey == null || qnaAuthKey == '') ||


(qnaKnowledgebaseId == null || qnaKnowledgebaseId == ''))

[Link]('Please set QnAKnowledgebaseId, QnAAuthKey

and QnAEndpointHostName (if applicable) in App Settings. Learn how


to get them at [Link]

else {
43

if (endpointHostName == null || endpointHostName == '')

// Replace with Preview QnAMakerDialog service

[Link]('basicQnAMakerPreviewDialog');

else

// Replace with GA QnAMakerDialog service

[Link]('basicQnAMakerDialog');

]);
Nota

Llamada para crear una instancia de QnAMakerDialog en la línea 30.

Con esto se crea un cuadro de diálogo que integra un bot compilado


con Azure Bot Service con una base de conocimiento compilada

mediante Microsoft QnA Maker.

Publicar el código de bot

1. Haga clic en el botón Control de código fuente de la barra de


actividades de Visual Studio Code.

2. Mantenga el puntero sobre el archivo [Link] y seleccione el


botón + para almacenar provisionalmente los cambios de ese

archivo para la siguiente confirmación.

44 3. Escriba "Connected to knowledge base" (Conectado a la base


de conocimiento) en el cuadro de mensaje y seleccione la marca
de verificación para confirmar los cambios.

Advertencia

Si ve cambios realizados en un archivo [Link], asegúrese de


que no se incluyan en la confirmación. La confirmación solo debe incluir
los cambios realizados en [Link].

4. Luego, haga clic en el botón de puntos suspensivos (...) y use el

comando Publicar rama para insertar estos cambios en el


repositorio remoto y en la aplicación web de Azure.

Probar el bot de aplicación web de Azure


1. Vuelva al bot de aplicación web en Azure Portal y

seleccione Probar en Chat en web a la izquierda para abrir la


consola de prueba.

2. Escriba "What's the most popular software programming

language in the world?" (¿Cuál es el lenguaje de programación

de software más popular del mundo?) en el cuadro que aparece


en la parte inferior de la ventana del chat y presione Entrar.
Confirme que el bot responde.

En entornos corporativos, C# es el rey, ya que se usa en más del 75 %


de las empresas de todo el mundo. Fuera de los entornos corporativos,

Java y JavaScript todavía le hacen sombra.

Enhorabuena. El bot está conectado a la base de conocimiento y puede

45 responder a preguntas.
1

Aplicación y supervisión de
estándares de infraestructura
con Azure Policy
BIENVENIDA
Obtenga información sobre la gobernanza y la administración de los

servicios de Azure.

En este módulo, aprenderá a:

• Aplicar directivas para controlar y auditar la creación de

recursos

• Obtener información sobre cómo la seguridad basada en roles


puede ajustar el acceso a los recursos

• Comprender las garantías de directivas y la privacidad de


Microsoft
2

• Supervisar los recursos

Requisitos previos

Ninguno

Introducción 2 min

Definición del cumplimiento de TI con Azure Policy 8 min

Organización de directivas con iniciativas 5 min

Administración de gobernanza empresarial 5 min

Definición de recursos estándar con Azure Blueprints 5 min


Exploración del cumplimiento de servicios con el Administrador

de cumplimiento 8 min

Supervisión del estado del servicio 8 min

Resumen 8 min

3
INTRODUCCIÓN
Una buena gobernanza de TI implica planear las iniciativas y establecer
prioridades a nivel estratégico que faciliten la administración y eviten
problemas.

Necesita una gobernanza correcta cuando:

• Tiene varios equipos de ingeniería que trabajan en Azure


4
• Tiene varias suscripciones en el inquilino

• Tiene requisitos normativos que se deben aplicar

• Quiere asegurarse de que se siguen los estándares para todos


los recursos asignados de TI

Podría aplicar estándares si no permite que los equipos creen recursos

de Azure directamente y, en su lugar, hace que el equipo de TI defina


e implemente todos los recursos basados en la nube. Esta suele ser la

solución en situaciones locales, pero el requisito reduce la agilidad del


equipo y la capacidad de innovar. En su lugar, Azure proporciona varias

herramientas que puede usar para aplicar y validar los estándares


mientras sigue permitiendo que los equipos de ingeniería creen y sean

propietarios de sus propios recursos en la nube.


Además de proporcionar estándares de TI, tendrá que poder supervisar

los recursos para asegurarse de que se ejecuten y respondan


correctamente. Azure proporciona varias características integradas
para realizar el seguimiento y analizar el uso y el rendimiento de los
recursos.

En este módulo, aprenderá a:

• Aplicar directivas para controlar y auditar la creación de


recursos

• Obtener información sobre cómo la seguridad basada en roles


puede ajustar el acceso a los recursos

• Comprender las garantías de directivas y la privacidad de


Microsoft
5
• Supervisar los recursos
DEFINICIÓN DEL
CUMPLIMIENTO DE TI
CON AZURE POLICY
La planeación de una infraestructura en la nube coherente empieza

con la configuración de directivas. Las directivas harán cumplir las


reglas para los recursos creados, con el fin de que la infraestructura

cumpla con los estándares corporativos, los requisitos de costos y los

contratos de nivel de servicio (SLA) que tenga con los clientes.

Azure Policy es un servicio de Azure que se


puede usar para crear, asignar y administrar
6
directivas. Dichas directivas aplican

distintas reglas y efectos a los recursos, con


el fin de que estos sigan siendo compatibles
con los estándares corporativos y los
acuerdos de nivel de servicio. Azure Policy satisface esta necesidad
mediante la evaluación de los recursos que incumplen las directivas
asignadas. Por ejemplo, puede haber una directiva que permita solo un

tamaño de máquinas virtuales en el entorno. Una vez que se


implementa esta directiva, se evalúa el cumplimiento de los recursos

nuevos y existentes. Con el tipo correcto de directiva, se puede

conseguir el cumplimiento de los recursos existentes.

Imagine que se permite que cualquier persona de la organización


pueda crear máquinas virtuales (VM). Se quieren controlar los costos,
por lo que el administrador del inquilino de Azure define una directiva
que prohíbe la creación de máquinas virtuales con más de 4 CPU.

Después de implementar la directiva, Azure Policy impedirá que nadie


cree una máquina virtual fuera de la lista de referencias de almacén
(SKU) permitidas. Además, si intenta actualizar una máquina virtual
existente, se comprobará con la directiva. Por último, Azure Policy

auditará todas las máquinas virtuales existentes en la organización para

asegurarse de que se aplique la directiva. Puede auditar los recursos


que no son compatibles, modificar las propiedades del recurso o

impedir que se cree el recurso. También puede integrar Azure Policy

con Azure DevOps, mediante la aplicación de las directivas de

integración continua y canalización de entrega que afectan a la


implementación anterior y posterior de las aplicaciones.

¿En qué se diferencian Azure Policy y RBAC?

7
A primera vista, podría parecer que Azure Policy es una manera de

restringir el acceso a tipos de recursos específicos similar al control de

acceso basado en rol (RBAC). Sin embargo, solucionan problemas


diferentes. RBAC se centra en las acciones del usuario en ámbitos

diferentes. Se le podría agregar al rol de colaborador de un grupo de


recursos, para que pueda realizar cambios en dicho grupo. Azure Policy
se centra en las propiedades de los recursos durante la
implementación de todos los recursos existentes. Azure Policy controla
las propiedades como los tipos y las ubicaciones de los recursos. A

diferencia de RBAC, Azure Policy es un sistema que permite de


manera predeterminada y niega explícitamente.

Creación de una directiva


El proceso de creación e implementación de una instancia de Azure

Policy comienza con la creación de una definición de directiva. Cada


definición de directiva tiene condiciones que regulan su aplicación.
Además, tiene un efecto complementario que se produce cuando se
cumplen las condiciones. Para aplicar una directiva, tendrá que:

1. Crear una definición de directiva

2. Asignar una definición a un ámbito de recursos

3. Visualizar los resultados de evaluación de la directiva

¿Qué es una definición de directiva?

Una definición de directiva expresa qué se debe evaluar y qué acción

realizar. Por ejemplo, podría asegurarse de que todos los sitios web
8 públicos se protejan con HTTPS, impedir que se cree un tipo de
almacenamiento determinado, o bien forzar el uso de una versión
específica de SQL Server.

Estas son algunas de las definiciones de directiva más comunes que

puede aplicar.

Definición de directiva Descripción

SKU permitidas de cuentas de Esta definición de directiva tiene

almacenamiento un conjunto de condiciones o


reglas que determinan si una
cuenta de almacenamiento que

se está implementado se

encuentra dentro de un conjunto


de tamaños de SKU. Su efecto es
denegar todas las cuentas de

almacenamiento que no

cumplen el conjunto de tamaños


de SKU definidos.

Tipo de recurso permitido Esta definición de directiva tiene


un conjunto de condiciones o
reglas para especificar los tipos

de recursos que puede


implementar la organización. Su
efecto es denegar a todos los

recursos que no forman parte de


esta lista definida.

9
Ubicaciones permitidas Esta directiva permite restringir
las ubicaciones que la

organización puede especificar al


implementar los recursos. Su
efecto se usa para exigir los

requisitos de cumplimiento de
replicación geográfica.

SKU de máquina virtual Esta directiva permite especificar

permitidas un conjunto de SKU de máquina


virtual que la organización puede
implementar.

Tipos de recursos no permitidos Impide la implementación de

una lista de tipos de recursos.


La propia definición de directiva se representa como un archivo JSON:

puede usar una de las definiciones predefinidas del portal o crear las
suyas propias (si modifica una existente o empieza desde cero).
Hay cientos de ejemplos disponibles en GitHub.

Este es un ejemplo de una directiva de proceso que solo permite

tamaños de máquina virtual específicos:

JSON

"if": {

"allOf": [

{
10

"field": "type",

"equals": "[Link]/virtualMachines"

},

"not": {

"field": "[Link]/virtualMachines/[Link]",

"in": "[parameters('listOfAllowedSKUs')]"

}
]

},

"then": {

"effect": "Deny"

Observe el valor [parameters('listofAllowedSKUs')]; se trata de un token


de reemplazo que se rellenará cuando la definición de directiva se
aplique a un ámbito. Cuando se define un parámetro, se le asigna un

nombre y, de manera opcional, un valor.

11 Aplicación de una directiva de Azure

Para aplicar una directiva, podemos usar Azure Portal o una de las

herramientas de línea de comandos, como Azure PowerShell. Para ello,


se agrega la extensión [Link].

PowerShell

# Register the resource provider if it's not already registered

Register-AzResourceProvider -ProviderNamespace
'[Link]'

Una vez que haya registrado el proveedor, podemos crear una


asignación de directiva. Este es un ejemplo de definición de directiva
que identifica las máquinas virtuales que no utilizan discos

administrados.
PowerShellCopiar

# Get a reference to the resource group that will be the scope of the

assignment

$rg = Get-AzResourceGroup -Name '<resourceGroupName>'

# Get a reference to the built-in policy definition that will be assigned

$definition = Get-AzPolicyDefinition | Where-Object {


$_.[Link] -eq 'Audit VMs that do not use managed

disks' }

12 # Create the policy assignment with the built-in definition against your
resource group

New-AzPolicyAssignment -Name 'audit-vm-manageddisks' -


DisplayName 'Audit VMs without managed disks Assignment' -Scope

$[Link] -PolicyDefinition $definition

Los comandos anteriores usan la siguiente información:

Parámetro Descripción

Name El nombre real de la asignación.

En este ejemplo, se ha utilizado


audit-vm-manageddisks.
DisplayName Nombre para mostrar de la
asignación de directiva. En este

caso, usará "Audit VMs without

managed disks Assignment"


(Auditoría de máquinas virtuales

sin discos administrados).

Definition Definición de la directiva, según

la opción utilizada para crear la


asignación. En este caso, es el

identificador de la definición de
directiva "Audit VMs without

managed disks Assignment".

13 Scope Un ámbito determina en qué


recursos o agrupación de
recursos se implementa la

asignación de directiva. Puede


abarcar desde una suscripción
hasta grupos de recursos.

Asegúrese de reemplazar
<scope> por el nombre del
grupo de recursos.

Identificación de recursos no compatibles

Podemos usar la definición de directiva aplicada para identificar los

recursos que no son compatibles con la asignación de directivas

mediante Azure Portal.


Los resultados coinciden con lo que se ve en la pestaña de

Cumplimiento de recursos de una asignación de directiva en


Azure Portal:

También se pueden usar las herramientas de línea de comandos para

identificar los recursos del grupo de recursos que no son compatibles

con la asignación de directiva

PowerShellCopiar

Get-AzPolicyState -ResourceGroupName $[Link] -


14 PolicyAssignmentName 'audit-vm-manageddisks' -Filter 'IsCompliant
eq false'

Este es un ejemplo de la salida que se puede obtener:

output

Timestamp : 3/9/19 [Link] PM

ResourceId :
/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}
/providers/[Link]/virtualMachines/{vmId}

PolicyAssignmentId :
/subscriptions/{subscriptionId}/providers/[Link]/poli
cyassignments/audit-vm-manageddisks

PolicyDefinitionId :
/providers/[Link]/policyDefinitions/06a78e20-9358-
41c9-923c-fb736d382a4d

IsCompliant : False

SubscriptionId : {subscriptionId}
ResourceType : /[Link]/virtualMachines

ResourceTags : tbd

PolicyAssignmentName : audit-vm-manageddisks

PolicyAssignmentOwner : tbd

PolicyAssignmentScope : /subscriptions/{subscriptionId}

PolicyDefinitionName : 06a78e20-9358-41c9-923c-fb736d382a4d

PolicyDefinitionAction : audit

PolicyDefinitionCategory : Compute

ManagementGroupIds : {managementGroupId}

Asignación de una definición a un ámbito de recursos

Una vez que haya definido una o varias definiciones de directiva, tendrá

que asignarlas. Una asignación de directiva es una definición de


directiva que se ha asignado para que se aplique dentro de un ámbito
15 específico.

Este ámbito puede ser desde una suscripción completa a un grupo de


recursos. Todos los recursos secundarios heredan las asignaciones de

directivas. Esta herencia significa que si una directiva se aplica a un


grupo de recursos, se aplica también a todos los recursos dentro de
ese grupo. Pero se puede excluir un subámbito de la asignación de

directiva. Por ejemplo, se podría aplicar una directiva para una


suscripción completa y, después, excluir algunos grupos de recursos

concretos.

Puede asignar cualquiera de estas directivas a través de Azure Portal,

PowerShell o la CLI de Azure. Al asignar una definición de directiva,


tendrá que proporcionar todos los parámetros que se definan.
Efectos de la directiva

En primer lugar, Azure Policy evalúa las solicitudes para crear o


actualizar un recurso a través de Azure Resource Manager. Policy crea

una lista de todas las asignaciones que se aplican al recurso y, después,

16 evalúa el recurso de acuerdo con cada definición. Policy procesa


algunos de los efectos antes de entregar la solicitud al proveedor de

recursos adecuado para evitar cualquier procesamiento innecesario si


el recurso incumple la directiva.

Cada definición de directiva en Azure Policy tiene un único efecto. Ese


efecto determina lo que ocurre cuando la regla de directivas asociada
coincide. Cuando sucede eso, Azure Policy realizará una acción

específica en función del efecto asignado.

Efecto de la directiva ¿Qué sucede?

Denegar Se produce un error en la


creación o actualización de
recursos debido a la directiva.
Deshabilitada Se omite la regla de directiva (se
deshabilita). Se suele usar para

realizar pruebas.

Anexar Agrega campos o parámetros

adicionales al recurso solicitado

durante la creación o
actualización. Un ejemplo común
consiste en agregar etiquetas a
recursos como Centro de costos,
o bien especificar direcciones IP
permitidas para un recurso de

almacenamiento.

17 Audit, AuditIfNotExists Crea un evento de advertencia


en el registro de actividad
cuando se evalúa un recurso no

compatible, pero no detiene la


solicitud.

DeployIfNotExists Ejecuta una implementación de


plantilla cuando se cumple una

condición específica. Por


ejemplo, si el cifrado de SQL está

habilitado en una base de datos,


puede ejecutar una plantilla una
vez creada la base de datos para

configurarla de forma específica.


Visualizar los resultados de evaluación de la directiva

Azure Policy puede permitir que se cree un recurso incluso si no pasa

la validación. En estos casos, puede hacer que desencadene un evento


de auditoría que se puede ver en el portal de Azure Policy o a través

de herramientas de línea de comandos. El enfoque más sencillo

consiste en usar el portal, ya que proporciona una agradable visión


general gráfica que se puede explorar. Puede encontrar la sección
Azure Policy a través del campo de búsqueda o en Todos los servicios.

18

Desde esta pantalla, puede detectar recursos que no son compatibles


y tomar medidas para corregirlos.

Eliminación de una definición de directiva

Por último, puede eliminar los requisitos de directiva a través del portal

o mediante el comando de PowerShell Remove-AzPolicyAssignment,


como se muestra a continuación.
PowerShell

Remove-AzPolicyAssignment -Name 'audit-vm-manageddisks' -Scope

'/subscriptions/<subscriptionID>/resourceGroups

19
ORGANIZACIÓN DE
DIRECTIVAS CON
INICIATIVAS
La administración de algunas definiciones de directiva es sencilla,

pero, cuando tenga más, le interesará organizarlas. Aquí es donde


intervienen las iniciativas.

Las iniciativas funcionan junto con las directivas de Azure Policy.

Una definición de iniciativa es un conjunto o grupo de definiciones de

directiva para facilitar el seguimiento del estado de cumplimiento para


un objetivo mayor. Aunque solo tenga una directiva, se recomienda
20
usar las iniciativas si prevé un aumento del número de directivas con el

tiempo.

Al igual que una asignación de directiva, una asignación de iniciativa es


una definición de iniciativa que se asigna a un ámbito específico. Las
asignaciones de iniciativa disminuyen la necesidad de crear varias

definiciones de iniciativa para cada ámbito. Este ámbito también puede


abarcar desde un grupo de administración a un grupo de recursos.

Una vez definidas, las iniciativas se pueden asignar al igual que las
directivas, y se aplican a todas las definiciones de directiva asociadas.

Definición de iniciativas

Las definiciones de iniciativa simplifican el proceso de administración y

asignación de definiciones de directiva al agrupar un conjunto de


directivas en un solo elemento. Por ejemplo, podría crear una iniciativa

denominada Habilitar la supervisión en Azure Security Center, con el


objetivo de supervisar todas las recomendaciones de seguridad
disponibles en Azure Security Center.

En esta iniciativa, tendría las definiciones de directiva siguientes:

Definición de directiva Propósito

Supervisión de la instancia de Para la supervisión de servidores


SQL Database sin cifrar en y bases de datos SQL sin cifrar.
Security Center

Supervisión de los puntos Para supervisar los servidores


vulnerables del sistema que no cumplen con la base de
operativo en Security Center referencia configurada.
21

Supervisión de la falta de Para supervisar los servidores sin


Endpoint Protection en Security un agente de protección de

Center punto de conexión instalada.

Las iniciativas se pueden definir mediante Azure Portal o herramientas


de línea de comandos. En el portal, se usa la sección "Crear".
22
ADMINISTRACIÓN DE
GOBERNANZA
EMPRESARIAL
La administración del acceso se produce en el nivel de suscripción de

Azure. Este control permite que una organización configure cada


división de la empresa de forma específica, en función de sus

responsabilidades y requisitos. La planeación y el mantenimiento de

reglas coherentes entre suscripciones puede ser difícil sin un poco de


ayuda.

Los grupos de administración de Azure son contenedores para


23
administrar el acceso, las directivas y el cumplimiento

entre varias suscripciones de Azure. Los grupos de administración


permiten ordenar los recursos de Azure de forma jerárquica en
colecciones, que proporcionan un nivel adicional de clasificación que
está por encima del nivel de suscripciones. Todas las suscripciones
dentro de un grupo de administración heredan automáticamente las
condiciones que se aplican al grupo de administración. Los grupos de

administración proporcionan capacidad de administración de nivel


empresarial a gran escala con independencia del tipo de suscripciones

que tenga.

En el diagrama siguiente se muestra un ejemplo de creación de una

jerarquía para la gobernanza mediante grupos de administración.


Cree una jerarquía para poder aplicar una directiva que, por ejemplo,

24 limite las ubicaciones de máquinas virtuales a la región Oeste de


EE. UU. para el grupo "Región geográfica 1". Esta directiva se heredará
en ambas suscripciones de Contrato Enterprise (EA) en ese grupo de
administración y se aplicará a todas las máquinas virtuales de esas

suscripciones. El propietario de los recursos o las suscripciones no


puede modificar esta directiva de seguridad, lo que permite una

gobernanza mejorada.

Otro escenario en el que se usarían grupos de administración es para

proporcionar acceso de usuario a varias suscripciones. Al mover


muchas suscripciones en ese grupo de administración, puede crear una
asignación de control de acceso basado en rol (RBAC) en el grupo de

administración que permitirá el acceso a todas las suscripciones. Una


asignación en el grupo de administración puede permitir a los usuarios
acceder a todo lo que necesitan en lugar de realizar scripting de las

reglas de RBAC sobre las distintas suscripciones.

Puede administrar las suscripciones de Azure de forma más eficaz


mediante Azure Policy y controles de acceso basado en rol (RBAC) de

Azure. Dichos controles proporcionan diferentes condiciones de

gobernanza que se pueden aplicar a cada grupo de administración. Los


recursos y las suscripciones que se asignan a un grupo de
administración heredan de forma automática las condiciones que se
aplican a dicho grupo.

Sugerencia

Si continúa en la ruta de aprendizaje de aspectos básicos de Azure,


obtendrá más información sobre RBAC en el módulo Control y

25 organización de los recursos de Azure con Azure Resource


Manager.
DEFINICIÓN DE
RECURSOS ESTÁNDAR
CON AZURE BLUEPRINTS
El cumplimiento de los requisitos de seguridad o normativos, ya sean

de gobierno o del sector, puede ser difícil y requiere mucho tiempo.


Para ayudarle con la auditoría, la rastreabilidad y el cumplimiento con

las implementaciones, use los artefactos y las herramientas de Azure

Blueprint.

Del mismo modo que un plano técnico permite


a un ingeniero o a un arquitecto bosquejar los
26
parámetros de diseño de un

proyecto, Azure Blueprints permite a los


grupos de arquitectos de la nube y de TI
central definir un conjunto repetible de recursos de
Azure que implementa y cumple los estándares de la organización, sus
requisitos y sus patrones. Azure Blueprints permite a los equipos de
desarrollo aprovisionar y crear rápidamente nuevos entornos con la

confianza de que se crean cumpliendo los estándares organizativos y


que contienen un conjunto de componentes integrados, como las

redes, para acelerar el desarrollo y la entrega.


Azure Blueprints es una manera declarativa de organizar la

implementación de varias plantillas de recursos y de otros artefactos,


como son:

27
 Asignaciones de roles
 Asignaciones de directivas
 Plantillas de Azure Resource Manager
 Grupos de recursos

Sugerencia

Azure Blueprints también es útil en escenarios de Azure DevOps, donde

los planos técnicos están asociados con artefactos de compilación y


canalizaciones de versión específicos, y se pueden rastrear de forma más

rigurosa.

El proceso de implementación de Azure Blueprints se compone de los

siguientes pasos generales:

1. Creación de una instancia de Azure Blueprint


2. Asignación del plano técnico

3. Seguimiento de las asignaciones del plano técnico

Con Azure Blueprints, se conserva la relación entre la definición del


plano técnico (lo que se debe implementar) y su asignación (lo que se

ha implementado). Esta conexión admite el seguimiento mejorado y la

auditoría de las implementaciones.

El servicio Azure Blueprints está respaldado por la base de datos de


Azure Cosmos distribuida a nivel global. Los objetos de plano técnico

se replican en varias regiones de Azure. Esta replicación proporciona


baja latencia, alta disponibilidad y acceso coherente a los objetos de
plano técnico, con independencia de la región en la que Blueprints
implemente el recurso.

28
¿En qué difiere de las plantillas de Resource Manager?

El servicio Azure Blueprints está diseñado para ayudar con la

configuración del entorno. A menudo, esta configuración consta de un


conjunto de grupos de recursos, directivas, asignaciones de roles e
implementaciones de plantillas de Resource Manager. Un plano

técnico es un paquete que reúne cada uno de estos tipos de artefacto


y permite componer y crear la versión de ese paquete, incluso

mediante una canalización CI/CD. En última instancia, cada


configuración se asigna a una suscripción en una única operación que

se puede auditar y seguir.

Casi todo lo que se puede querer incluir para la implementación en un

plano técnico se puede conseguir con una plantilla de Resource


Manager. Sin embargo, una plantilla de Resource Manager es un
documento que no existe de forma nativa en Azure. Las plantillas de

Rersource Manager se almacenan localmente o en el control de código


fuente. La plantilla se usa para las implementaciones de uno o varios
recursos de Azure, pero, una vez implementados, no hay conexión
activa ni relación con la plantilla.

Con Azure Blueprints, la relación entre la definición del plano técnico


(lo que debe ser implementado) y su asignación (lo que se ha
implementado) permanece. Esta conexión permite un seguimiento
mejorado y la auditoría de las implementaciones. Los planos técnicos

también pueden actualizar a la vez varias suscripciones que se rigen


por el mismo plano técnico.

No hay que elegir entre una plantilla de Resource Manager y un plano


técnico. Cada instancia del plano técnico puede tener o no artefactos
29
de una plantilla de Resource Manager. Esto significa que se pueden
reutilizar los trabajos anteriores para desarrollar y mantener una

biblioteca de plantillas de Resource Manager en Azure Blueprints.

En qué se diferencia de Azure Policy

Un plano técnico es un paquete o contenedor para crear conjuntos

muy específicos de estándares, patrones y requisitos relacionados con


la implementación de los servicios en la nube de Azure, la seguridad y
el diseño que se pueden reutilizar para garantizar la coherencia y el
cumplimiento normativo.

Una directiva es un sistema de denegación explícita y permisos

predeterminados que se centra en las propiedades de recursos durante

su implementación y para los recursos ya existentes. Admite la


gobernanza de la nube al validar que los recursos de una suscripción

cumplen los requisitos y estándares.

La inclusión de una directiva en un plano técnico permite crear el


patrón o diseño adecuado durante la asignación del plano. La inclusión

de la directiva garantiza que solo se pueden realizar en el entorno

cambios aprobados o esperados para proteger el cumplimiento


continuo en el ámbito del plano técnico.

Se puede incluir una directiva como uno de muchos artefactos en una

definición de plano técnico. Los planos técnicos también permiten usar


parámetros con las directivas y las iniciativas.

30
EXPLORACIÓN DEL
CUMPLIMIENTO DE
SERVICIOS CON EL
ADMINISTRADOR DE
CUMPLIMIENTO
El gobierno de los recursos propios y cómo se usan es solo una parte
de la solución cuando se usa un proveedor de nube. También debe

entender cómo el proveedor administra los recursos subyacentes en los


que se basa.
31
Microsoft se toma muy en serio esta administración y proporciona

transparencia completa con cuatro orígenes:

1. Declaración de privacidad de Microsoft

2. Microsoft Trust Center

3. Portal de confianza de servicios

4. Administrador de cumplimiento

Declaración de privacidad de Microsoft

En la declaración de privacidad de Microsoft se explica qué datos

personales procesa Microsoft, cómo los procesa y con qué fines.


La declaración se aplica a las interacciones que realice con Microsoft y

los productos como servicios, sitios web, aplicaciones, software,


servidores y dispositivos. Su objetivo es proporcionar transparencia y
honradez acerca de cómo Microsoft se ocupa de los datos personales
en sus productos y servicios.

En el resumen de este módulo hay un vínculo a la declaración de


privacidad.

¿Qué es Microsoft Trust Center?

Trust Center (Centro de confianza) es un recurso de sitio web que

contiene información y detalles sobre cómo Microsoft implementa y


admite la seguridad, la privacidad, el cumplimiento y la transparencia
en todos los servicios y productos de nube de Microsoft. Es una parte

32 importante de la iniciativa de nube de confianza de Microsoft y


proporciona soporte técnico y recursos para la comunidad de
cumplimiento normativo y legal, incluido lo siguiente:

 Información detallada sobre seguridad, privacidad, ofertas de


cumplimiento, directivas, características y procedimientos en
todos los productos en la nube de Microsoft.

 Recursos recomendados en forma de una lista exclusiva de los

recursos más aplicables y utilizados para cada tema.


 Información específica de roles clave de la organización,

incluidos administradores empresariales, administradores de


inquilinos o equipos de seguridad de datos, responsables de

privacidad y evaluación de riesgos, y equipos de cumplimiento

legal.
 Búsqueda de documentos en toda la empresa, que pronto

estará disponible y permitirá a los clientes existentes de


servicios en la nube realizar búsquedas en el Portal de confianza
de servicios.
 Instrucciones directas y soporte técnico para cuando no puede

encontrar lo que busca.

33
¿Qué es el Portal de confianza de servicios?

En el Portal de confianza de servicios (STP) se hospeda el servicio


Administrador de cumplimiento y es el sitio público de Microsoft para
la publicación de informes de auditoría y otra información relacionada
con el cumplimiento de normas pertinente para los servicios en la nube
de Microsoft. Los usuarios de STP pueden descargar informes de
auditoría generados por auditores externos y obtener información de
los informes creados por Microsoft en los que se proporcionan detalles

sobre cómo Microsoft crea y opera sus servicios en la nube.

En STP también se incluye información sobre cómo los servicios en


línea de Microsoft pueden ayudar a la organización a mantener y

realizar el seguimiento del cumplimiento mediante estándares, leyes y

reglamentos, como:
 ISO

 SOC
 NIST
 FedRAMP
 RGPD

El Portal de confianza de servicios es una característica complementaria


34 del Centro de confianza y permite:

 Acceder a informes de auditoría de todos los servicios en la


nube de Microsoft en una sola página.
 Acceder a guías de cumplimiento que ayudan a comprender

cómo se pueden usar las características de los servicios en la


nube de Microsoft para administrar el cumplimiento mediante

diversos reglamentos.

 Acceder a documentos de confianza que ayudan a comprender


cómo los servicios en la nube de Microsoft protegen los datos.

Administrador de cumplimiento

El Administrador de cumplimiento es un panel de evaluación de

riesgos basado en flujos de trabajo dentro del Portal de confianza de


servicios que permite realizar el seguimiento, asignar y comprobar las
actividades de cumplimiento normativo de la organización

relacionadas con los servicios profesionales y los servicios en la nube


de Microsoft como Office 365, Dynamics 365 y Azure.

El Administrador de cumplimiento proporciona las características

siguientes:

 Combina los tres elementos siguientes:

1. Información detallada proporcionada por Microsoft a


auditores y expertos en regulación, como parte de las

distintas auditorías de terceros de los servicios en la

nube de Microsoft sobre diversos estándares (por


ejemplo, ISO 27001, ISO 27018 y NIST).

2. Información que Microsoft compila de forma interna


35
para su cumplimiento de los reglamentos (como HIPAA

y el RGPD de la UE).

3. La autoevaluación de una organización de su propio


cumplimiento con estos estándares y reglamentos.

 Permite asignar, realizar el seguimiento y registrar actividades

de cumplimiento relacionadas con la evaluación, que pueden

ayudar a que la organización traspase las barreras de los


equipos para alcanzar sus objetivos de cumplimiento
normativo.

 Proporciona una puntuación de cumplimiento para ayudarle a

realizar el seguimiento del progreso y dar prioridad a los


controles de auditoría que ayudan a reducir la exposición de la

organización a los riesgos.


 Proporciona un repositorio seguro en el que se cargan y

administran pruebas y otros artefactos relacionados con las


actividades de cumplimiento.
 Genera informes detallados en Microsoft Excel en los que se
documentan las actividades de cumplimiento realizadas por

Microsoft y la organización, que se pueden proporcionar a

auditores, expertos en regulación y otras partes interesadas del


cumplimiento normativo.

36

El Administrador de cumplimiento proporciona evaluaciones de


riesgos continuas con una referencia de puntuaciones basadas en

riesgos que se muestra en una vista de panel para los reglamentos y


estándares. Como alternativa, puede crear evaluaciones para los
reglamentos o estándares más importantes para la organización.

Como parte de la evaluación de riesgos, el Administrador de

cumplimiento también proporciona las acciones recomendadas que

puede realizar para mejorar el cumplimiento normativo. Puede ver


todos los elementos de acción, o bien seleccionar los que se

correspondan con una certificación específica.


Importante

Administrador de cumplimiento es un panel en el que se proporciona un

resumen del estado de protección de datos y cumplimiento, y


recomendaciones para la mejora. Las acciones de cliente proporcionadas

en Administrador de cumplimiento son solo recomendaciones; cada

organización es responsable de evaluar la eficacia de estas


recomendaciones en su propio entorno reglamentario antes de la
implementación. Las recomendaciones de Administrador de
cumplimiento no se deben interpretar como una garantía de

cumplimiento.

37
SUPERVISIÓN DEL
ESTADO DEL SERVICIO
La definición de directivas y acceso proporciona un mayor control

sobre los recursos de la infraestructura de TI en la nube. Una vez

implementados esos recursos, le interesará conocer los problemas


generales o de rendimiento que pueden encontrar.

Azure proporciona dos servicios principales para supervisar el estado

de las aplicaciones y los recursos.

1. Azure Monitor

38 2. Azure Service Health

Azure Monitor

Azure Monitor maximiza la disponibilidad y


el rendimiento de las aplicaciones con una

completa solución que permite recopilar,


analizar y administrar datos de telemetría
tanto en la nube como en los entornos

locales. Esta solución ayuda a entender cómo


funcionan las aplicaciones y permite identificar de manera proactiva los

problemas que les afectan y los recursos de los que dependen.


Orígenes de datos

Azure Monitor puede recopilar datos de diversos orígenes. Puede

pensar en supervisar datos para las aplicaciones en niveles que abarcan


desde la aplicación hasta el sistema operativo y los servicios en los que

se basa, pasando por la propia plataforma.

Nivel de datos Descripción

Datos de supervisión de Datos sobre el rendimiento y la


aplicaciones funcionalidad del código que ha
escrito, independientemente de

la plataforma.

Datos de supervisión del sistema Datos sobre el sistema operativo


operativo invitado en el que se ejecuta la aplicación.
39
La aplicación se puede ejecutar
en Azure, en otra nube o en el
entorno local.

Datos de supervisión de recursos Datos sobre el funcionamiento


de Azure de un recurso de Azure.

Datos de supervisión de Datos sobre el funcionamiento y

suscripciones de Azure la administración de una


suscripción de Azure, así como
sobre el estado y el

funcionamiento propios de

Azure.
Datos de supervisión de Datos sobre el funcionamiento
inquilinos de Azure de los servicios de Azure en el

nivel del inquilino, como Azure

Active Directory.

Configuración de diagnóstico

En cuanto se crea una suscripción a Azure y se empiezan a agregar


recursos, como máquinas virtuales y aplicaciones web, Azure Monitor
comienza a recopilar datos. En los registros de actividad se registra

cuándo se crean o modifican los recursos, y las métricas indican cómo


está funcionando el recurso y los recursos que consume.

Puede ampliar los datos que se recopilan sobre el funcionamiento real


de los recursos si habilita los diagnósticos y agrega un agente a los
40
recursos de proceso. En la configuración del recurso se puede habilitar
Diagnósticos

 Habilitar la supervisión a nivel de invitado


 Contadores de rendimiento: recopilan datos de rendimiento

 Registros de eventos: habilitan varios registros de eventos


 Volcados de memoria: se pueden habilitar o deshabilitar

 Receptores: los datos de diagnóstico se envían a otros servicios


para ampliar el análisis

 Agente: se configuran opciones de agente

Obtención de más datos de las aplicaciones

La supervisión de datos solo resulta útil si mejora la visibilidad sobre


las operaciones del entorno informático. Azure Monitor incluye varias
características y herramientas que proporcionan información valiosa

sobre las aplicaciones y los recursos de los que pueden depender.

Application Insights es un servicio que supervisa la disponibilidad, el


rendimiento y el uso de las aplicaciones web, tanto si están hospedadas

en la nube como en un entorno local. Usa la eficaz plataforma de

análisis de datos de Log Analytics para proporcionar información


detallada sobre las operaciones de la aplicación. Application Insights
puede diagnosticar errores sin tener que esperar a que un usuario
informe de ellos. Application Insights incluye puntos de conexión a una

serie de herramientas de desarrollo y se integra con Microsoft Visual


Studio para admitir los procesos de DevOps.

Azure Monitor para contenedores es un servicio diseñado para


supervisar el rendimiento de las cargas de trabajo de contenedor, que
41
se implementan en clústeres de Kubernetes administrados hospedados
en Azure Kubernetes Service (AKS). Proporciona información sobre el

rendimiento mediante la recopilación de métricas del procesador y de


la memoria procedentes de los controladores, nodos y contenedores
disponibles en Kubernetes a través de la API de métricas. También se
recopilan registros del contenedor.

Azure Monitor para VM es un servicio que supervisa las máquinas


virtuales de Azure a escala, mediante el análisis del rendimiento y el

estado de las máquinas virtuales Windows y Linux (incluidos los


diferentes procesos y las dependencias interconectadas con otros

recursos, y los procesos externos). Azure Monitor para VM incluye

compatibilidad para supervisar el rendimiento y las dependencias de


las aplicaciones en máquinas virtuales hospedadas en el entorno local

o en otros proveedores en la nube.


La integración de alguno o todos estos servicios de supervisión con

Azure Service Health tiene ventajas adicionales. Mantenerse informado


del estado de los servicios de Azure le ayudará a entender cuándo y si
un problema que afecta a un servicio de Azure afecta al entorno. Lo
que puede parecer un problema localizado podría ser el resultado de

un problema más generalizado, y Azure Service Health proporciona

este tipo de información. Azure Service Health identifica los problemas


con los servicios de Azure que podrían afectar a la aplicación. Azure

Service Health también ayuda a planear un mantenimiento

programado.

Respuesta a las condiciones de alerta

Además de permitir analizar de forma interactiva los datos de


supervisión, una solución de supervisión eficaz debe poder responder
42
proactivamente a cualquier condición crítica que se identifique en los

datos que recopila. Esto podría implicar, por ejemplo, enviar un correo
electrónico o texto a un administrador responsable de investigar un
problema, o bien iniciar un proceso automatizado que intenta corregir
una condición de error.

Alertas. Azure Monitor notifica de forma proactiva de las condiciones

críticas por medio de alertas, y puede intentar aplicar acciones


correctivas. Las reglas de alertas basadas en métricas pueden

proporcionar alertas casi en tiempo real, en función de valores


numéricos. Las reglas de alertas basadas en registros permiten una

lógica compleja entre datos de varios orígenes.

Escalabilidad automática. Azure Monitor usa la escalabilidad


automática para asegurarse de que ejecute la cantidad adecuada de
recursos para administrar de forma eficaz la carga en la aplicación. La

escalabilidad automática permite crear reglas que usan métricas,


recopiladas por Azure Monitor, para determinar cuándo se deben
agregar automáticamente recursos para controlar el aumento de la
carga. La escalabilidad automática también puede ayudar a reducir los

costos de Azure mediante la eliminación de los recursos que no se

usen. Puede especificar un número mínimo y máximo de instancias, y


proporcionar la lógica que determine cuándo la escalabilidad

automática debe aumentar o reducir los recursos.

Visualización de datos de supervisión

Las visualizaciones, como los gráficos y las tablas, son herramientas


eficaces para resumir los datos de supervisión y presentar datos a
distintos destinatarios. Azure Monitor cuenta con características
43
propias para visualizar datos de supervisión y usa otros servicios de
Azure para publicar datos para diferentes destinatarios. Otras
herramientas que se pueden usar para la visualización de datos, para
destinatarios y escenarios específicos, incluyen las siguientes:

 Paneles
 Vistas

 Power BI

Integración con otros servicios

A menudo, tendrá que integrar Azure Monitor con otros sistemas y


crear soluciones personalizadas que usen los datos de supervisión.

Otros servicios de Azure pueden funcionar con Azure Monitor para

proporcionar esta integración.


Azure Service Health

Azure Service Health es un conjunto de

experiencias que proporcionan


instrucciones y soporte técnico

personalizados cuando aparecen

problemas con los servicios de Azure.


Puede enviarle notificaciones, ayudarle a
conocer el impacto de los problemas y mantenerle actualizado con
respecto a la resolución del problema. Azure Service Health también

puede ayudar a preparar las operaciones de mantenimiento y los


cambios planeados que podrían afectar a la disponibilidad de los
recursos.

Azure Service Health consta de las vistas siguientes.


44
Estado de Azure proporciona una visión global del estado de

mantenimiento de los servicios de Azure. Con Estado de Azure, puede


obtener información actualizada sobre la disponibilidad del servicio.
Todos los usuarios tienen acceso a Estado de Azure y pueden ver todos
los servicios que notifican su estado de mantenimiento.

Service Health proporciona un panel personalizable que realiza el


seguimiento del estado de los servicios de Azure en las regiones donde
los use. En este panel, puede realizar el seguimiento de eventos activos,

como problemas de servicio, próximos mantenimientos planeados

o avisos de estado adecuados. Cuando los eventos se vuelven inactivos,

se colocan en el historial de estado hasta un máximo de 90 días. Por


último, puede usar el panel de Service Health para crear y
administrar alertas de estado de servicio, que le notifican los problemas

del servicio que le afectan.

Resource Health ayuda a diagnosticar cuándo un problema de


servicio de Azure afecta a los recursos y a obtener soporte técnico para

resolverlo. Proporciona detalles sobre el estado actual y pasado de los

recursos. También proporciona soporte técnico para ayudar a mitigar


problemas. Al contrario que Estado de Azure, que informa sobre
problemas de servicio que afectan a un amplio conjunto de clientes de
Azure, Resource Health proporciona un panel personalizado del

mantenimiento de los recursos. Resource Health muestra las veces que


los recursos no estuvieron disponibles en el pasado debido a
problemas de servicio de Azure. Después, es más fácil comprender si

se infringió un Acuerdo de Nivel de Servicio.

45
De forma conjunta, los componentes de Azure Service Health
proporcionan una vista completa del estado de Azure, con el nivel de
detalle más relevante.
RESUMEN
En este módulo ha obtenido información sobre las metodologías de
gobernanza de Azure, la supervisión y los informes en Azure, y los
estándares de privacidad, cumplimiento y protección de datos en

Azure.

46
Servicios de Azure

Aquí tiene una vista general de los servicios y características

disponibles de Azure.

1
Veamos con más detalle las categorías que se usan con más frecuencia:

 Proceso  Internet de las cosas

 Redes  Datos de gran


tamaño
 Almacenamiento
 Inteligencia artificial
 Móvil

 DevOp
 Bases de datos

 Web
Proceso

Los servicios de proceso a menudo son una de las razones principales

de por qué las compañías se cambian a la plataforma Azure. Azure


proporciona una amplia gama de opciones para hospedar aplicaciones

y servicios. Estos son algunos ejemplos de servicios de proceso en

Azure:

Nombre del servicio Función del servicio

Azure Virtual Machines Máquinas virtuales (VM)


Windows o Linux hospedadas en
Azure

Azure Virtual Machine Scale Sets Escalado de máquinas virtuales


Windows o Linux hospedadas en
2
Azure

Azure Kubernetes Service Permite la administración de un


clúster de máquinas virtuales que

ejecutan servicios en
contenedores

Azure Service Fabric Plataforma de sistemas

distribuidos. Se ejecuta en Azure


o en local

Azure Batch Servicio administrado para

aplicaciones informáticas de alto

rendimiento y paralelas
Azure Container Instances Ejecución de aplicaciones en
contenedores en Azure sin

necesidad de aprovisionar

servidores ni máquinas virtuales

Azure Functions Un servicio Compute sin servidor

y controlado por eventos

Redes

La vinculación de recursos de proceso y el suministro de acceso a las


aplicaciones es la función clave de la red de Azure. La funcionalidad de
red de Azure incluye una gama de opciones para conectar el mundo

exterior a servicios y características de los centros de datos globales de


Microsoft Azure.
3

Las instalaciones de red de Azure presentan las siguientes


características:

Nombre del servicio Función del servicio

Azure Virtual Network Conecta las máquinas virtuales a


las conexiones de red privada

virtual (VPN) entrantes.

Azure Load Balancer Equilibra las conexiones

entrantes y salientes a
aplicaciones o puntos de

conexión de servicio.
Azure Application Gateway Optimiza la entrega de granja de
servidores de aplicaciones y, al

mismo tiempo, aumenta la

seguridad de la aplicación.

Azure VPN Gateway Accede a redes Azure Virtual

Network a través de puertas de


enlace VPN de alto rendimiento.

Azure DNS Proporciona respuestas DNS


ultrarrápidas y disponibilidad de
dominio extremadamente alta.

Azure Content Delivery Network Entrega contenido de gran

ancho de banda a los clientes


4
globalmente.

Azure DDoS Protection Protege las aplicaciones


hospedadas en Azure frente a
ataques por denegación de

servicio distribuido (DDoS).

Azure Traffic Manager Distribuye el tráfico de red entre


las regiones de Azure en todo el

mundo.

Azure ExpressRoute Se conecta a Azure a través de

conexiones seguras de gran


ancho de banda dedicadas.
Azure Network Watcher Supervisa y diagnostica
problemas de red mediante el

análisis basado en escenario.

Azure Firewall Implementa el firewall de alta

seguridad y alta disponibilidad

con escalabilidad ilimitada.

Azure Virtual WAN Crea una red de área extensa


(WAN) unificada, conectando
sitios locales y remotos.

Almacenamiento

Azure proporciona cuatro tipos principales de servicios de


5 almacenamiento. Estos servicios son los siguientes:

Nombre del servicio Función del servicio

Azure Blob Storage Servicios de almacenamiento


para objetos muy grandes, como

archivos de vídeo o mapas de


bits.

Azure File storage Recursos compartidos de


archivos que puede administrar

como un servidor de archivos y

acceder a ellos.

Azure Queue Storage Un almacén de datos para la

puesta en cola y la entrega


confiable de mensajes entre
aplicaciones.

Azure Table storage Un almacén NoSLQ que hospeda

datos no estructurados

independientes de cualquier

esquema.

Todos estos servicios comparten varias características:

 Durabilidad y alta disponibilidad con redundancia y la


replicación.

 Seguridad mediante el cifrado automático y control de acceso


basado en rol.

6  Escalabilidad con un almacenamiento prácticamente ilimitado.

 Administración y control del mantenimiento y de cualquier


problema crítico que pueda surgir.

 Accesibilidad desde cualquier parte del mundo a través de


HTTP o HTTPS.

Móvil

Azure permite a los desarrolladores crear servicios back-end móviles


para aplicaciones de iOS, Android y Windows de forma rápida y

sencilla. Las características que solían tardar tiempo y aumentaban los


riesgos del proyecto, como la incorporación del inicio de sesión
corporativo y la posterior conexión a recursos locales como SAP,
Oracle, SQL Server y SharePoint, ahora se incluyen con facilidad.
Estas son otras características de este servicio:

 Sincronización de datos sin conexión.

 Conectividad a datos locales.

 Difusión de notificaciones de inserción.

 Escalado automático para satisfacer las necesidades del

negocio.

Bases de datos

Azure proporciona varios servicios de base de datos para almacenar


una gran variedad de volúmenes y tipos de datos. Y con la conectividad

global, los usuarios disponen de estos datos al instante.

7 Nombre del servicio Función del servicio

Azure Cosmos DB Base de datos distribuida


globalmente que admite
opciones NoSQL.

Azure SQL Database Base de datos relacional

totalmente administrada con


escalado automático,

inteligencia integral y seguridad

sólida.

Azure Database for MySQL Base de datos relacional MySQL


totalmente administrada y
escalable con alta disponibilidad
y seguridad.

Azure Database for PostgreSQL Base de datos relacional


PostgreSQL totalmente

administrada y escalable con alta

disponibilidad y seguridad.

SQL Server en Virtual Machines Hospedar aplicaciones


empresariales de SQL Server en
la nube.

Azure SQL Data Warehouse Almacén de datos totalmente


administrado con seguridad

integral en todos los niveles de


8 escala sin costo adicional.

Azure Database Migration Migra las bases de datos a la


Service nube sin cambios de código de
aplicación.

Azure Cache for Redis Almacena en caché datos

estáticos y usados con frecuencia


para reducir la latencia de los

datos y las aplicaciones.

Azure Database for MariaDB Base de datos relacional MariaDB

totalmente administrada y
escalable con alta disponibilidad

y seguridad.
Web

En el mundo empresarial actual es fundamental tener una experiencia

web excelente. Azure incluye soporte técnico de primera clase para


compilar y hospedar aplicaciones web y servicios web basados en

HTTP. Los servicios de Azure centrados en el hospedaje web incluyen:

Nombre del servicio Descripción

Azure App Service Cree rápidamente aplicaciones


eficaces en la nube basadas en
web.

Azure Notification Hubs Envíe notificaciones push a


cualquier plataforma desde
cualquier back-end.
9

Azure API Management Publique API para


desarrolladores, asociados y

empleados de forma segura y a


escala.

Azure Cognitive Search Búsqueda completamente


administrada como servicio.

Característica Web Apps de Cree e implemente rápidamente

Azure App Service aplicaciones web críticas a escala.

Servicio Azure SignalR Agregue funcionalidades web en

tiempo real con facilidad.


Internet de las cosas

Los usuarios pueden tener acceso a más información que nunca. Todo

comenzó con los asistentes digitales personales (PDA), que luego se


transformaron en smartphones. Ahora hay relojes inteligentes,

termostatos inteligentes e incluso neveras inteligentes. Los equipos

estaban a la orden del día. Ahora, Internet permite que cualquier objeto
capaz de conectarse tenga acceso a valiosa información. Esta
capacidad de los dispositivos de obtener y luego retransmitir
información para el análisis de datos se conoce como el Internet de las

cosas (IoT).

Hay una serie de servicios que pueden ayudar e impulsar soluciones de


un extremo a otro para IoT en Azure.

10 Nombre del servicio Descripción

IoT Central Solución global de software


como servicio (SaaS) totalmente
administrada de IoT que facilita

la conexión, la supervisión y la
administración de sus recursos

de IoT a escala.

Azure IoT Hub Centro de mensajería que


proporciona comunicaciones y

supervisión seguras entre

millones de dispositivos de IoT

IoT Edge Inserte los modelos de análisis

de datos directamente en los


dispositivos de IoT para que
puedan responder rápidamente

a los cambios de estado sin

necesidad de consultar modelos


de IA basados en la nube.

Macrodatos

Los datos se presentan en cualquier formato y tamaño. Cuando

hablamos sobre macrodatos, nos referimos a grandes volúmenes de


datos. Los datos de los sistemas del tiempo, sistemas de

comunicaciones, investigación genómica, plataformas de imágenes y


muchos otros escenarios generan cientos de gigabytes de datos. Esta
cantidad de datos hace que resulte difícil analizar y tomar decisiones

en torno a ellos. A menudo es tan grande que las formas de


11
procesamiento y análisis tradicionales ya no son adecuados.

Se han desarrollado tecnologías de clúster de código abierto para


tratar con estos grandes conjuntos de datos. Microsoft Azure admite

una amplia gama de tecnologías y servicios para proporcionar


soluciones de análisis y macrodatos.

Nombre del servicio Descripción

Azure SQL Data Warehouse Ejecute análisis a gran escala


mediante un almacenamiento de

datos empresarial (EDW) basado


en la nube que aprovecha el

procesamiento paralelo masivo

(MPP) para ejecutar rápidamente


consultas complejas en
petabytes de datos.

Azure HDInsight Procese grandes cantidades de


datos con los clústeres

administrados de Hadoop en la

nube.

Azure Databricks Servicio de análisis colaborativo


basado en Apache Spark que se
puede integrar con otros
servicios de macrodatos en
Azure.

Inteligencia artificial
12
En el contexto de la informática en la nube, la inteligencia artificial se
basa en una amplia gama de servicios, donde el principal es Machine
Learning. Machine Learning es una técnica de ciencia de datos que

permite a los equipos usar datos existentes para prever tendencias,


resultados y comportamientos futuros. Mediante el aprendizaje
automático, los equipos aprenden sin necesidad de programarlos
explícitamente.

Las previsiones o predicciones del aprendizaje automático pueden

hacer que las aplicaciones y los dispositivos sean más inteligentes. Por

ejemplo, al comprar en línea, el aprendizaje automático le recomienda


otros productos que le pueden gustar según lo que haya comprado. O

bien, al pasar la tarjeta de crédito, el aprendizaje automático compara

la transacción con una base de datos de transacciones y ayuda a


detectar fraudes. Y cuando la aspiradora robot aspira una sala, el

aprendizaje automático le ayuda a decidir si se ha terminado el trabajo.

Algunos de los tipos más comunes de servicios de Inteligencia Artificial


y Machine Learning en Azure son:

Nombre del servicio Descripción

Azure Machine Learning Service Entorno basado en la nube que


puede usar para desarrollar,
entrenar, probar, implementar,
administrar y realizar un

seguimiento de los modelos de


aprendizaje automático. Puede

generar y ajustar

13 automáticamente un modelo. Le
permite comenzar a entrenar en
su máquina local y luego escalar

horizontalmente a la nube.

Azure Machine Learning Studio Área de trabajo visual,


colaborativa y de arrastrar y

colocar donde puede crear,


probar e implementar soluciones
de aprendizaje automático

mediante algoritmos de

aprendizaje automático
predefinidos y módulos de

control de datos.
Cognitive Services es un conjunto de productos estrechamente

relacionados. Estas son API precompiladas que puede aprovechar en


sus aplicaciones para solucionar problemas complejos.

Nombre del servicio Descripción

Visión Algoritmos de procesamiento de


imágenes para identificar,
subtitular, indexar y moderar
imágenes y vídeos.

Voz Convierta voz en texto, use la voz


para la comprobación o agregue
reconocimiento del hablante a la
14
aplicación.

Asignación de conocimiento Asigne la información y los datos


complejos con el fin de resolver

tareas tales como las


recomendaciones inteligentes y
la búsqueda semántica.

Bing Search Agregue las Bing Search API a


sus aplicaciones y aproveche la
capacidad de combinar miles de

millones de páginas web,

imágenes, vídeos y noticias con


una sola llamada API.
Procesamiento de lenguaje Permita que las aplicaciones
natural procesen lenguaje natural con

scripts precompilados, evalúen

opiniones y aprendan a
reconocer lo que quieren los
usuarios.

DevOps

DevOps (desarrollo y operaciones) reúne a personas, procesos y


tecnología, y automatiza la entrega de software para ofrecer un valor

continuo a los usuarios. Azure DevOps Services permite


crear, compilar y liberar las canalizaciones que proporcionan
integración continua, entrega e implementación a las aplicaciones.

15 Puede integrar los repositorios y las pruebas de aplicaciones, realizar la

supervisión de aplicaciones y trabajar con artefactos de compilación.


También puede trabajar con elementos y establecerlos como

pendientes para realizar un seguimiento, automatizar la


implementación de la infraestructura e integrar una gama de
herramientas y servicios de terceros como Jenkins y Chef. Todas estas

funciones y muchas más están estrechamente integradas con Azure


para permitir implementaciones coherentes y reproducibles para que

las aplicaciones proporcionen unos procesos de compilación y

lanzamiento optimizados.

Algunos de los servicios principales de DevOps disponibles con Azure


son Azure DevOps Services y Azure DevTest Labs.
Nombre del servicio Descripción

Azure DevOps Azure DevOps Services

(anteriormente conocido como


Visual Studio Team Services o

VSTS), proporciona herramientas

de colaboración para la
implementación, incluidas
canalizaciones de alto
rendimiento, repositorios Git

privados gratuitos, paneles


Kanban configurables y

numerosas pruebas de carga


basadas en la nube y
16
automatizadas.

Azure DevTest Labs Cree rápidamente entornos de

Windows y Linux a petición que


puede usar para probar o realizar
una demostración de sus

aplicaciones directamente desde


las canalizaciones de
implementación.
EJERCICIO: CREACIÓN DE
UN SITIO WEB
HOSPEDADO EN AZURE
Para completar este módulo, se necesita un espacio

aislado. Un espacio aislado le da acceso a los recursos de Azure. Su


suscripción de Azure no recibirá ningún cobro. El espacio aislado solo
se puede usar para realizar los cursos de Microsoft Learn. Está

prohibido el uso con cualquier otro fin y puede dar lugar a la pérdida
permanente del acceso al espacio aislado.

17
Inicie sesión para activar el espacio aislado.

Como profesional de la tecnología, es probable que tenga experiencia


en un área concreta. Quizás usted sea un administrador de
almacenamiento o un experto en virtualización, o es posible que se

centre en las prácticas de seguridad más recientes. Si está estudiando,


es posible que todavía esté explorando lo que más le interesa.

Independientemente de su rol, la mayoría de los usuarios crean un sitio


web para empezar a trabajar con la nube. Aquí implementaremos un
sitio web hospedado en una instancia de App Service.

Vamos a revisar algunos términos básicos y a poner en funcionamiento


nuestro primer sitio web.
¿Qué es App Service?

Azure App Service es un servicio basado en HTTP que permite crear y

hospedar muchos tipos de soluciones basadas en Web sin necesidad


de administrar la infraestructura. Por ejemplo, puede hospedar

aplicaciones web, back-ends móviles y API de RESTful en varios

lenguajes de programación admitidos. Las aplicaciones desarrolladas


en .NET, .NET Core, Java, Ruby, [Link], PHP o Python se pueden
ejecutar y escalar con facilidad en entornos basados tanto en Windows
como en Linux.

Lo que pretendemos es crear un sitio web en menos tiempo del que

tardamos en almorzar. Por lo tanto, no vamos a escribir código, sino


que, en su lugar, implementaremos una aplicación predefinida desde
Microsoft Azure Marketplace.
18
¿Qué es Microsoft Azure Marketplace?

Microsoft Azure Marketplace es una tienda en línea que hospeda

aplicaciones certificadas y optimizadas para ejecutarse en Azure.


Existen muchos tipos de aplicaciones disponibles, que van desde la

inteligencia artificial y Machine Learning a las aplicaciones web. Como

veremos en un par de minutos, las implementaciones desde la tienda


se realizan mediante Azure Portal, con una interfaz de usuario de tipo
asistente. Esta interfaz de usuario permite evaluar fácilmente diferentes
soluciones.

Vamos a usar una de las opciones de la aplicación de WordPress de

Azure Marketplace para nuestro sitio web.


Creación de recursos en Azure

Lo primero que se suele hacer es crear un grupo de recursos que

contendrá todo lo que necesitamos crear. Un grupo de recursos permite


administrar todos los servicios, discos, interfaces de red y demás

elementos que pueden componer la solución como una unidad.

Podemos usar Azure Portal para crear y administrar los grupos de


recursos de la solución, pero cabe decir que también podemos
administrar recursos a través de una línea de comandos con la CLI de
Azure. La CLI de Azure es una opción útil si hay que automatizar el

proceso en el futuro.

En el entorno de espacio aislado gratuito de Azure, usará el grupo de


recursos creado previamente, [nombre del grupo de recursos del
espacio aislado], por lo que no tendrá que realizar este paso.
19
Elección de una ubicación

El espacio aislado gratuito permite crear recursos en un subconjunto

de las regiones globales de Azure. Seleccione una región de la lista al


crear los recursos:

 westus2  southeastasia

 southcentralus  japaneast

 centralus  brazilsouth

 eastus  australiasoutheast

 westeurope  centralindiaralindia
Creación de un sitio web de WordPress

1. Inicie sesión en Azure Portal con la misma cuenta con la que


ha activado el espacio aislado.

2. Expanda el panel de navegación de la izquierda.

3. En la parte superior de la lista de navegación de Azure Portal,

seleccione Crear un recurso.

20

Esto le llevará a Azure Marketplace.


21

Azure Marketplace tiene muchos servicios, soluciones y recursos que

puede usar. Sabemos que queremos instalar WordPress, así que


podemos realizar una búsqueda rápida para encontrarlo. En el

cuadro Buscar en Marketplace que hay sobre las opciones de

aplicaciones que aparecen, escriba WordPress. Seleccione la

opción WordPress predeterminada en la lista de opciones disponibles.


En el panel que acaba de aparecer, normalmente encontrará

información adicional sobre el elemento que va a instalar, por ejemplo,


el editor, una breve descripción del recurso y vínculos para obtener más
información. Asegúrese de revisar esta información.

Seleccione Crear para iniciar el proceso de creación de una aplicación

22 de WordPress.
23

Después, aparecerán varias opciones para configurar la

implementación. Escriba la siguiente información:

Campo Valor

Nombre de aplicación Elija un nombre de aplicación

único. Formará parte de un

nombre de dominio completo


(FQDN).
Suscripción Compruebe que ha seleccionado

Suscripción de Concierge.

Grupo de recursos Seleccione el botón de radio


Usar existente y, después, el

grupo de recursos [nombre del

grupo de recursos del espacio


aislado] en la lista desplegable.

Proveedor de base de datos Seleccione MySQL In App.

Plan de App Service/Ubicación Cambiará el plan de App Service


en el paso siguiente.

Application Insights Deje la configuración


24 predeterminada.

La configuración debería ser similar a la siguiente:


25

Ahora vamos a configurar el plan de App Service para usar un plan de

tarifa específico. El plan de App Service especifica los recursos de


proceso y la ubicación de la aplicación web. Seleccione Plan de App

Service/Ubicación.
26

En el panel Plan de App Service, seleccione Crear.


En el panel Nuevo plan de App Service, escriba un nombre para el

plan de servicio nuevo.

En Ubicación, elija Centro de EE. UU. para asegurarse de que


selecciona una región que permita el plan de servicio. Normalmente,

se elegiría la región más cercana a los clientes y se ofrecerían los

servicios necesarios.

Seleccione Plan de tarifa para ver las opciones de rendimiento y


características de los distintos tipos de planes de servicio.

27

El Selector de especificaciones permite seleccionar un nuevo plan de


tarifa para la aplicación. Esta pantalla se abre en la pestaña Producción,

con el plan de tarifa S1 seleccionado. En la pestaña Desarrollo/pruebas,


seleccionaremos un nuevo plan de tarifa para nuestro sitio web.

Seleccione la pestaña Desarrollo/pruebas y, después, el plan de

tarifa F1. Luego, seleccione Aplicar.


28

En el panel Nuevo plan de App Service, seleccione Aceptar para crear

el plan y cerrar el panel.

Por último, seleccione el botón Crear para iniciar la implementación

del sitio nuevo.

Si detecta algún problema al crear los recursos, compruebe que ha

seleccionado el plan de tarifa F1 en el plan de App Service. Este es un

requisito del sistema de espacio aislado al crear este sitio de WordPress.


Comprobación de que el sitio web se está ejecutando

La implementación del nuevo sitio web puede tardar unos minutos en

completarse; mientras tanto, le invitamos a que explore Portal por su


cuenta.

Podemos llevar un seguimiento del progreso de la implementación en

cualquier momento.

1. Seleccione el icono de la campana de notificación situado en


la parte superior del portal. Si el ancho de la ventana del

explorador es menor, puede aparecer al hacer clic en el icono

de puntos suspensivos (...) de la parte superior derecha.

29

2. Seleccione Implementación en curso... para ver los detalles de


todos los recursos que se han creado.
Fíjese en cómo se muestran los recursos mientras se crean y el estado

cambia a una marca de verificación de color verde a medida que cada


componente se termina de implementar.

30

3. Cuando el mensaje de estado de la implementación cambie

a Se completó la implementación, verá que el estado del

cuadro de diálogo de la notificación cambiará


a Implementación correcta. Seleccione Ir al recurso para ir a

la información general de App Service.


4. Busque la URL en la sección Información general.

Copie la información de URL. Abra una pestaña nueva en el explorador


31
y use la información para ir al nuevo sitio de WordPress. Ya puede

configurar el sitio web de WordPress y agregarle contenido.


EJERCICIO:
CONFIGURACIÓN DE UNA
INSTANCIA DE APP
SERVICE
Para completar este módulo, se necesita un espacio aislado. Un espacio
aislado le da acceso a los recursos de Azure. Su suscripción de Azure no
recibirá ningún cobro. El espacio aislado solo se puede usar para realizar
los cursos de Microsoft Learn. Está prohibido el uso con cualquier otro fin

y puede dar lugar a la pérdida permanente del acceso al espacio aislado.

32 Inicie sesión para activar el espacio aislado.

Recuerde que, en versiones anteriores, utilizamos una instancia de


App Service para ejecutar nuestra aplicación de WordPress. Aquí

veremos más información expuesta sobre nuestra aplicación y


exploraremos algunas de las opciones disponibles para configurar
nuestro sitio web.

Echemos un vistazo a parte de esta información.

1. Abra Azure Portal .

2. En el menú de navegación de la izquierda,


seleccione Panel para acceder a una lista de todos los recursos

de la suscripción. Es posible que tenga que hacer clic en el icono

de menú para mostrar las opciones de navegación.


33

3. Seleccione la instancia de App Service con el nombre que ha


elegido en el ejercicio anterior.
4. Aparecerá de forma predeterminada la información general de

la instancia de App Service; si no es así, seleccione Información


general.

5. Desplácese hacia abajo en la vista de información general hasta


34
el lugar donde pueda ver los gráficos del sitio web que acaba

de crear. En estos gráficos se proporcionan estadísticas sobre el


número de solicitudes recibidas por el sitio web, la cantidad de
datos que han entrado y salido, y el número de errores

detectados en el sitio.
La información que se muestra aquí aparece casi en tiempo real y
proporciona datos generales rápidamente sobre el rendimiento del
35 sitio web. Los problemas de rendimiento del sitio aparecerán reflejados
en estos gráficos como advertencias anticipadas.

¿Qué es escalar?

Supongamos que hemos implementado el sitio web y este se ha

popularizado. Al examinar los gráficos de información general, nos


damos cuenta de que el sitio no puede administrar todas las solicitudes

que recibe de manera eficaz. Para solucionar el problema, hay que

aumentar la capacidad de hardware del servidor.

Escalar hace referencia a agregar ancho de banda de red, memoria,

almacenamiento o eficacia de proceso para lograr un mejor


rendimiento.
Es posible que haya oído los términos escalar verticalmente y escalar

horizontalmente.

Escalar verticalmente significa aumentar la memoria, el


almacenamiento o la eficacia de proceso en una máquina virtual

existente. Por ejemplo, podemos agregar más memoria a un servidor

web o de bases de datos para que se ejecute más rápido.

Escalar horizontalmente significa agregar más máquinas virtuales para


aumentar la eficacia de la aplicación. Por ejemplo, podemos crear

muchas máquinas virtuales configuradas exactamente de la misma


manera y usar un equilibrador de carga para distribuir el trabajo entre
ellas.

Sugerencia

36
La nube es elástica. Podríamos reducir verticalmente o reducir

horizontalmente la implementación si necesitáramos escalarla


verticalmente u horizontalmente, solo de forma temporal. Reducirla

verticalmente u horizontalmente puede ayudar a ahorrar dinero. Azure


Advisor y Azure Cost Management son dos servicios que ayudan a
optimizar los gastos en la nube. Estos servicios se pueden usar para

identificar dónde se invierte más de lo necesario y, seguidamente, volver

a escalar a la capacidad que se está usando realmente.


Cuando tenga más tiempo, no dude en repasar cada sección y explorar

las distintas opciones disponibles.

Cómo cambiar la configuración de App Service

App Service tiene muchas opciones configurables disponibles y agrupa


estas opciones en secciones de funcionalidad.

La primera sección que se muestra es un grupo de opciones comunes

al que accederíamos para obtener una vista del estado de la aplicación.


No obstante, en cada una de las secciones siguientes se proporciona

información y funcionalidad adicional.

Por ejemplo, la sección Configuración da acceso para configurar

varios aspectos, como la configuración de la aplicación, las copias de


seguridad, los dominios personalizados, la configuración de TLS/SSL,
37
distintas opciones para escalar verticalmente los recursos de la

aplicación, etc.
38

Escalado vertical de App Service

1. En la sección Configuración de la instancia de App Service,


seleccione Escalar verticalmente (plan de App Service).
2. Observe que hay tres categorías de carga de trabajo entre las

que elegir en el panel de configuración. Estas tres categorías


facilitan la decisión del tipo de carga de trabajo que vamos a
ejecutar.

Categoría Descripción

39 Desarrollo/pruebas Esta categoría es ideal para las


cargas de trabajo menos

exigentes. Se centra

principalmente en facilitar una


infraestructura compartida. En
esta categoría, hay más

características que están


disponibles para la aplicación de

App Service. Por ejemplo,


Dominios personalizados/SSL o

Escala manual.

Producción Esta categoría es ideal para las

cargas de trabajo más exigentes.

En ella también verá otras


características como los espacios
de ensayo, las copias de

seguridad diarias y un

administrador de tráfico.

Aislado Esta categoría es ideal para

cargas de trabajo que requieren


redes avanzadas y un escalado
específico.

En ella hay planes de tarifa que nos permitirán escalar los recursos
disponibles para nuestra instancia de App Service. Estos planes de tarifa

nos proporcionan acceso a las características adicionales mencionadas


anteriormente.

40 Dejaremos la configuración en el nivel F1, pero tendrá que acceder


aquí para ajustar el escalado en la instancia de App Service si tiene

cambios en la carga de la aplicación.

Echemos un vistazo a cómo usar Cloud Shell para configurar recursos


de Azure, como App Service.
EJERCICIO: ACCESO A
UNA INSTANCIA DE APP
SERVICE MEDIANTE
AZURE CLOUD SHELL
Para completar este módulo, se necesita un espacio aislado. Un espacio
aislado le da acceso a los recursos de Azure. Su suscripción de Azure no
recibirá ningún cobro. El espacio aislado solo se puede usar para realizar
los cursos de Microsoft Learn. Está prohibido el uso con cualquier otro fin

y puede dar lugar a la pérdida permanente del acceso al espacio aislado.

41 Inicie sesión para activar el espacio aislado.

Azure Portal ofrece una cómoda interfaz de usuario para buscar e


instalar diversas ofertas de Azure disponibles, así como para acceder a

ellas. No obstante, veremos que algunas de estas tareas son repetitivas


y, por tanto, son claras candidatas a automatizarse mediante una
interfaz habilitada para la línea de comandos.

¿Qué es Azure Cloud Shell?

Azure Cloud Shell es una consola basada en explorador que permite el

uso de líneas de comandos para administrar y utilizar recursos de


Azure. Piense en Cloud Shell como una consola interactiva que se
ejecuta en la nube.
Cloud Shell proporciona dos experiencias entre las que elegir: Bash y

PowerShell. Ambas incluyen acceso a la interfaz de la línea de


comandos de Azure (la CLI de Azure) y a Azure PowerShell.

Puede usar cualquier interfaz de administración de Azure (como Azure

Portal, la CLI de Azure y Azure PowerShell) para administrar recursos

de Azure. Con un fin didáctico, aquí usaremos la CLI de Azure para


iniciar y detener el sitio de WordPress que hemos creado
anteriormente.

Supongamos que tenemos varios sitios web implementados y


queremos detener o iniciar cada uno de estos sitios web sin tener que

acceder a cada instancia individual de App Service mediante Portal. Se


trata de una tarea sencilla que puede convertir en un script mediante
Cloud Shell y la CLI de Azure.
42
En este ejercicio, usará la ventana de Cloud Shell que se muestra en

paralelo con las instrucciones del ejercicio. Cuando acceda de forma


normal a Cloud Shell desde dentro de Azure Portal, haga clic en el
icono de Cloud Shell en la barra de navegación superior. Este icono se
encuentra a veces en el icono de menú de puntos suspensivos (...)
situado junto al perfil.

En este ejercicio, usaremos la experiencia de Cloud Shell como parte

de nuestra implementación del espacio aislado.


1. El primer paso consiste en asegurarnos de que estamos

trabajando con la suscripción de Azure correcta antes de


cambiar la configuración. Usaremos el comando de lista az
account list. El comando devuelve una cadena json de forma
predeterminada. Vamos a dar formato a la salida para que sea

más fácil trabajar con esta información. Ejecute el siguiente

comando.

CLI de Azure

az account list --output table

2. Recuerde que, cuando creamos el sitio web, usamos un grupo


de recursos creado previamente denominado [nombre del
grupo de recursos del espacio aislado], pero si alguna vez

43 necesitamos mostrar todos los grupos de recursos de una


suscripción, deberemos ejecutar el comando az group list.

CLI de Azure

az group list --output table

3. Después, obtendremos una lista con todos los recursos


de [nombre del grupo de recursos del espacio aislado] con

el comando az resource list. El comando devolverá una lista de


recursos. Al especificar --resource-type, es posible filtrar el
resultado para incluir solo la información de recursos relativa a
sitios web.

Ejecute el siguiente comando.

CLI de Azure
az resource list \

--resource-group [sandbox resource group name] \

--resource-type [Link]/sites

Este es un ejemplo de la salida del comando:

output

"id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-
xxxxxxxxxxx/resourceGroups/[sandbox resource group
name]/providers/[Link]/sites/BlogFor",

"identity": null,
44
"kind": "app",

"location": "centralus",

"managedBy": null,

"name": "MyWebApp",

"plan": null,

"properties": null,

"resourceGroup": "[sandbox resource group name]",

"sku": null,

"tags": null,
"type": "[Link]/sites"

Copie el valor de name. Lo usaremos en los pasos posteriores para


detener e iniciar después el sitio web.

4. Usaremos el comando az webapp stop para detener la

aplicación web que se ejecuta en App Service. Reemplace <web

app name> por el nombre de la aplicación web que ha copiado


y después ejecute este comando para detener la aplicación

web.

CLI de Azure

az webapp stop \
45
--resource-group [sandbox resource group name] \

--name <web app name>

5. Abra el sitio web en una nueva pestaña del explorador.


Encontrará la dirección URL del sitio en la información general

de App Service, en Portal. Verá un mensaje en el explorador que


indica lo siguiente:
46

6. Por último, ejecutaremos el comando az webapp start para

iniciar la aplicación web. Reemplace <web app name> por el


nombre de la aplicación web que ha copiado y después ejecute
este comando para iniciar la aplicación web.

CLI de Azure

az webapp start \

--resource-group [sandbox resource group name] \

--name <web app name>

7. Vuelva a la pestaña del sitio web y actualice la página. El sitio

web estará disponible transcurrido un par de segundos.


1

Compilación de un bot de
chat con Azure Bot Service
BIENVENIDA
Azure Bot Service, en combinación con Microsoft QnA Maker, ofrece

las herramientas que los desarrolladores necesitan para crear y publicar

bots inteligentes que interactúen de forma natural con los usuarios

mediante una gama de servicios.

En este módulo, aprenderá a:

• Crear un bot de aplicación web de Azure para hospedar un bot

• Creará una base de conocimiento, la rellenará con datos y la


conectará a un bot

• Implementará bots en el código y depurará los robots que


2
compile

• Publicará los bots y usará la integración continua para


mantenerlos al día

• Depuración de bots en local mediante Visual Studio Code y


Microsoft Bot Framework Emulator

Requisitos previos

Para realizar los ejercicios de este módulo, necesita una suscripción

activa de Azure (o una versión de prueba) y una instalación local de

Visual Studio Code.

Introducción 2 min

Ejercicio: Creación de un bot de aplicación web de Azure 15 min


Ejercicio: Creación de una base de conocimiento con Microsoft

QnA Maker 20 min

Ejercicio: Implementación de un bot con Visual Studio Code 20


min

Ejercicio: Depuración local del bot 20 min

Ejercicio: Conexión del bot con la base de conocimiento 20 min

Comprobación de conocimientos 5 min

Resumen y limpieza 8 min

3
INTRODUCCIÓN
Azure Bot Service, en combinación con Microsoft QnA Maker, ofrece
las herramientas que los desarrolladores necesitan para crear y publicar

bots inteligentes que interactúen de forma natural con los usuarios


mediante una gama de servicios.
4
En este módulo, creará un bot mediante Azure Bot Service y lo
conectará a una base de conocimiento creada con QnA Maker. Luego
se interactúa con el bot mediante Microsoft QnA Maker y Microsoft Bot

Framework Emulator.

Nota

Este módulo requiere una suscripción de Azure. Los servicios que cree
y use son gratuitos, pero necesitará una suscripción activa o una
versión de prueba para completar los ejercicios. Si no tiene una
suscripción a Azure, cree una cuenta gratuita antes de empezar.

Objetivos de aprendizaje

En este módulo, aprenderá a:


• Crear un bot de aplicación web de Azure para hospedar un bot

• Creará una base de conocimiento, la rellenará con datos y la

conectará a un bot

• Implementará bots en el código y depurará los robots que

compile

• Publicará los bots y usará la integración continua para

mantenerlos al día

• Depuración de bots en local mediante Visual Studio Code y


Microsoft Bot Framework Emulator

Requisitos previos

Para realizar los ejercicios de este módulo, necesita una suscripción


5
activa de Azure (o una versión de prueba) y una instalación local de

Visual Studio Code.

Siguiente unidad: Ejercicio: Creación de un bot de aplicación web de


Azure
EJERCICIO: CREACIÓN DE
UN BOT DE APLICACIÓN
WEB DE AZURE
El primer paso para crear un bot es proporcionar una ubicación para

hospedarlo en Azure. La característica Web Apps de Azure App Service


es perfecta para hospedar aplicaciones de bot que Azure Bot Service

se encarga de aprovisionar automáticamente. En esta unidad se usa

Azure Portal para aprovisionar un bot de aplicación web de Azure.

1. Inicie sesión en Azure Portal .

6 2. En el menú de Azure Portal, seleccione Crear un recurso.

3. Seleccione IA y Machine Learning y luego Web App Bot.


7
4. En la página Nuevo bot de aplicación web, especifique la

configuración siguiente para el nuevo bot de aplicación web.

Opción Valor Descripción

Nombre del bot Elija un nombre Este nombre debe

único ser único dentro de


Azure, por lo que

debe asegurarse de
que aparece una
marca de verificación

de color verde junto


a él.
Suscripción Seleccione la Seleccione la
suscripción suscripción de Azure.

Grupo de recursos Seleccione Crear Seleccione un grupo


nuevo y use el de recursos existente

nombre mslearn- o cree uno para

factbot almacenar los


recursos de este
ejercicio.

Ubicación Seleccione la región Seleccione la


más cercana de la ubicación donde se
lista desplegable debe colocar el bot.

Plan de tarifa F0 Un plan básico


8
gratuito para esta
aplicación.

Nombre de Deje el valor El valor


aplicación predeterminado predeterminado se

rellena según el
nombre del bot.

Puede cambiarlo si
prefiere otro nombre
para la aplicación

web o dejar el valor

predeterminado.
5. Luego, seleccione Plantilla de bot. Seleccione SDK v3 como

versión, [Link] como lenguaje del SDK y Preguntas y


respuestas como tipo de plantilla. Luego haga clic
en Aceptar en la parte inferior de la vista.

9
6. Ahora seleccione Plan de App Service/Ubicación, Crear

nuevo y luego cree un plan de App Service denominado "qa-


factbot-service-plan" o algo similar en la misma región que ha
seleccionado en el paso anterior. Haga clic en Aceptar para
cerrar la vista.

7. Deje las restantes opciones con sus valores predeterminados.


Puede comparar la configuración con la siguiente captura de
pantalla si es necesario.

10
11
8. Haga clic en Crear en la parte inferior del panel "Bot de

aplicación web" para iniciar la implementación.

Nota

Por lo general, la implementación lleva dos minutos o menos. Puede


observar el progreso en el panel Notificaciones (icono de campana) de

la parte superior del portal.

9. Una vez concluida la implementación, seleccione Grupos de


recursos en la barra lateral izquierda.

10. Seleccione el grupo de recursos que ha creado (mslearn-


factbot) y en el que ha implementado el bot de aplicación web

de Azure.

12 Ahora se deberían ver varios recursos creados para el bot de aplicación


web de Azure.

En segundo plano, han sucedido muchas cosas al implementar el bot

de la aplicación web de Azure.

• Se ha creado un bot y se ha registrado en Azure.

• Se ha creado una aplicación web de Azure para hospedar el bot.


• El bot se ha configurado para trabajar con Microsoft QnA

Maker.

El siguiente paso es usar QnA Maker para crear una base de


conocimiento de preguntas y respuestas para dotar al bot de

inteligencia.

Siguiente unidad: Ejercicio: Creación de una base de conocimiento con


Microsoft QnA Maker

13
EJERCICIO: CREACIÓN DE
UNA BASE DE
CONOCIMIENTO CON
MICROSOFT QNA MAKER
QnA Maker forma parte de Azure Cognitive Services, un conjunto de
servicios y API para compilar aplicaciones inteligentes respaldadas por
inteligencia artificial (IA) y aprendizaje automático. En lugar de codificar
un bot para que se anticipe a cada pregunta que un usuario pudiera

hacer y proporcionar una respuesta, puede conectarlo a una base de


conocimiento de preguntas y respuestas creadas con QnA Maker. Un
14
escenario de uso habitual es crear una base de conocimiento a partir

de la dirección URL de una página web de Preguntas más frecuentes


para que el bot pueda responder a preguntas específicas del dominio,
por ejemplo, "¿cómo encuentro la clave de producto de Windows?" o
"¿dónde puedo descargar Visual Studio Code?".

En esta unidad, usará QnA Maker para crear una base de conocimiento
con preguntas como "¿qué equipos de la NFL han ganado más

ediciones de la Super Bowl?" y "¿cuál es la ciudad más grande del


mundo?". Luego se implementa la base de conocimiento en una

aplicación web de Azure para que sea accesible a través de un punto

de conexión HTTPS.

Crear un servicio QnA Maker


1. Vaya al portal de QnA Maker .

2. Seleccione Iniciar sesión en la esquina superior derecha e

inicie sesión con la misma cuenta que ha usado para crear la


aplicación web.

3. A menos que ya tenga una base de conocimiento, el portal le

indica que no tiene ninguna y le pide que cree una desde el

menú.

4. En el menú de la parte superior del portal, seleccione Create a


knowledge base (Crear una base de conocimiento).

5. Haga clic en Create a QnA service (Crear un servicio QnA). Al

seleccionar este botón, se abre Azure Portal e inicia la sesión


con las credenciales que usó anteriormente. Se crean el servicio
15
QnA Maker y el servicio asociado de aplicación de Azure que lo

va a hospedar en este portal.

Nota

También es posible crear un servicio QnA Maker en Azure Portal antes

de crear una base de conocimiento.


6. En la pestaña de Azure Portal recién abierta, especifique la

siguiente configuración para el nuevo servicio QnA Maker.

Opción Valor Descripción

Nombre elija un nombre Este nombre debe

único ser único dentro de

Azure, por lo que


debe asegurarse de
que aparezca una
marca de verificación
de color verde junto
a él Y en el cuadro

Nombre de
aplicación situado
16
más abajo en el
panel.

Suscripción Seleccione la Seleccione la


suscripción suscripción de Azure.

Plan de tarifa F0 Un plan gratuito


básico.

Ubicación Seleccione la región Seleccione la


más cercana de la ubicación donde

lista desplegable debe colocarse el

servicio.
Grupo de recursos Seleccione el grupo Seleccione el grupo
de recursos creado de recursos existente

en la unidad anterior (mslearn-factbot)

para almacenar los


recursos de este
ejercicio.

Plan de tarifa de la B Seleccione el plan de


búsqueda tarifa del servicio de
búsqueda.

Ubicación de la Seleccione la región Seleccione la


búsqueda más cercana de la ubicación donde
lista desplegable debe colocarse el
17 servicio de
búsqueda.

Nombre de Deje el valor El valor

aplicación predeterminado predeterminado se


rellena según el
nombre de la
instancia de QnA

Maker. Puede
cambiarlo si prefiere

otro nombre para la


aplicación web o

dejar el valor

predeterminado.
Ubicación de sitio Seleccione la región Seleccione la
web más cercana de la ubicación donde se

lista desplegable debe colocar el sitio

web.

7. Seleccione el botón Crear en la parte inferior del panel.

18
19
8. Haga clic en Grupos de recursos en la cinta del lado izquierdo

del portal y busque el grupo de recursos mslearn-factbot.

Espere hasta que "Implementando" cambie a "Correcto" en la parte


superior del panel, lo que indica que el servicio QnA y los recursos

asociados se han implementado correctamente. Si el mensaje

desaparece, puede hacer clic en el icono de la campana situado en la


barra de menús para ver el estado. También puede
seleccionar Actualizar en la parte superior del panel para actualizar el
estado de implementación.

Creación, rellenado y entrenamiento de la base de conocimiento

de QnA Maker

1. Para volver a Crear una base de conocimiento, vaya a la

20 pestaña abierta o a [Link] en el


explorador y desplácese al Paso 2 para conectarse al servicio
QnA.

2. En el Paso 2, seleccione Actualizar para asegurarse de que el


nuevo servicio QnA que acaba de implementar esté disponible
en esta pantalla.

3. En el campo correspondiente al id. de directorio de

Microsoft Azure, elija el directorio propietario de la


suscripción que ha usado (probablemente solo haya uno).

4. Seleccione la suscripción de Azure en la lista desplegable Azure

subscription name (Nombre de suscripción de Azure). Si no ve

la suscripción, pruebe a cambiar de directorio hasta que la


encuentre.
5. En Azure QnA service (Servicio Azure QnA), seleccione el

nombre del servicio QnA que ha especificado anteriormente. Si


no aparece ningún servicio, puede que tenga que actualizar la
página.

6. Luego asigne un nombre a la base de conocimiento, por

ejemplo, "Base de conocimiento de Factbot".

El siguiente paso es rellenar la base de conocimiento con preguntas y


respuestas. Puede escribir preguntas y respuestas de forma manual en

una base de conocimiento de QnA Maker o puede importarlas desde


archivos locales o preguntas frecuentes en línea. Los formatos
compatibles incluyen archivos de texto delimitados por tabuladores,
documentos de Microsoft Word, hojas de cálculo de Excel y archivos
PDF.
21
1. Para rellenar la base de conocimiento,
abra [Link]
bot-with-azure-bot-service/blob/master/[Link] en el
explorador y descargue el archivo [Link]. Esta carpeta
ZIP contiene un archivo de texto denominado [Link].

2. Extraiga y copie el archivo en el equipo. Luego, desplácese hacia


abajo por el portal de QnA Maker, haga clic en + Add file (+
Agregar archivo) y seleccione [Link].

Este archivo contiene 20 preguntas y respuestas en formato delimitado

por tabuladores.
3. Hay una serie de personalidades disponibles para QnA Maker,

que se puede seleccionar en Chit-chat. Puesto que


proporcionamos el punto de inicio de la base de conocimiento
22
en [Link], proporcionamos la personalidad de la línea

base, por lo que puede dejarlo como predeterminado.

4. Seleccione Create your KB (Crear la base de conocimiento) en


la parte inferior de la página y espere a que se cree la base de
conocimiento. Debería tardar menos de un minuto.

5. Confirme que las preguntas y las respuestas importadas

desde [Link] aparecen en la base de conocimiento.


Después, haga clic en Save and train (Guardar y entrenar) y
espere a que se complete el entrenamiento.
Probar la base de conocimiento

1. Haga clic en el botón Test (Probar) que está a la derecha del

botón Save and train (Guardar y entrenar). Escriba "Hi" (Hola)


en el cuadro de mensaje y presione Entrar. Confirme que la
respuesta es "Welcome to the QnA Factbot" (Bienvenido a
23
Factbot de QnA), como se muestra a continuación.

2. Escriba "What book has sold the most copies?" en el cuadro de

mensaje y presione ENTRAR. ¿Cuál es la respuesta?


3. Vuelva a hacer clic en el botón Probar para contraer el panel

de prueba.

4. Haga clic en Publicar en el menú de la parte superior de la


página y haga clic en el botón Publicar situado en la parte

inferior de la página para publicar la base de conocimiento.

La publicación hace que la base de conocimiento esté


disponible en un punto de conexión HTTPS.

Espere a que se complete el proceso de publicación y confirme que se

implementó el servicio de QnA. Con la base de conocimiento


hospedada ahora en una aplicación web de Azure, el paso siguiente es
implementar un bot que pueda usarla.

24
Siguiente unidad: Ejercicio: Implementación de un bot con Visual

Studio Code
EJERCICIO:
IMPLEMENTACIÓN DE UN
BOT CON VISUAL STUDIO
CODE
Al crear un bot de una aplicación web de Azure, se ha implementado
una aplicación web de Azure para hospedarlo. Sin embargo, el bot se
debe implementar con código, y todavía se debe implementar en la
aplicación web de Azure. Afortunadamente, Azure Bot Service ha

generado el código automáticamente.

25 En esta unidad se usa Visual Studio Code para colocar el código en un


repositorio local de Git y publicar el bot en Azure mediante la inserción
de cambios desde el repositorio local en otro remoto conectado a la

aplicación web de Azure que hospeda el bot, un proceso conocido


como "integración continua" (CI).

Descarga del código fuente del bot de la aplicación web

1. Cree una carpeta denominada factbot en la ubicación del disco


duro que prefiera para almacenar el código fuente del bot.

2. En Azure Portal, busque y seleccione el grupo de recursos que


ha creado.

3. Busque y seleccione la instancia de Web App Bot que ha creado

anteriormente.
4. Seleccione Compilar en el menú de la izquierda y

luego Download Bot source code (Descargar código fuente


del bot) para preparar un archivo ZIP que contenga el código
fuente del bot.

26 5. El portal tardará unos minutos en comprimir el código.

6. Cuando haya finalizado, en el portal se mostrará un

botón Download Bot source code (Descargar código fuente


del bot) similar al de la siguiente captura de pantalla.

7. Seleccione Download Bot source code (Descargar código

fuente del bot) para descargar el código fuente en un archivo

.zip en su máquina local.


8. Una vez completada la descarga, extraiga el contenido del

archivo .zip en la carpeta factbot que ha creado en el disco


duro local.

Instalación del repositorio de Git del bot mediante el Centro de

implementación

1. Vuelva a Azure Portal en el explorador.

2. En el panel de compilación del bot de aplicación web de


Azure Portal, haga clic en el vínculo Publish updates

automatically to Azure with Continuous

Deployment (Publicar actualizaciones automáticamente en


Azure con implementación continua) en el área Publicar de la
vista principal. Esto se muestra en la captura de pantalla

27 siguiente.

3. En el panel Centro de implementación, seleccione Git

local como origen de implementación y haga clic


en Continuar.

4. Seleccione la opción Servidor de compilación de Kudu para

App Service y elija Continuar y Finalizar.


5. Seleccione FTP/Credenciales en el área de menú superior y,

luego, Credenciales de usuario en la vista abierta.

6. Escriba un nombre de usuario y una contraseña (debe tener


más de 10 caracteres) y haga clic en Guardar credenciales.

Tome nota del nombre de usuario y la contraseña.

7. Vaya a la configuración del bot de aplicación web y


28
seleccione Toda la configuración de App Service en el menú
de la izquierda. Así se muestra la aplicación web subyacente en
la que está hospedado el bot.

8. Anote la URL de clonación de Git del panel Información

general. Esta dirección URL es el repositorio de Git basado en


la nube que Azure ha creado para administrar el proyecto.

Crear un repositorio de Git local

En esta sección con una experiencia de Git integrada se va a usar Visual

Studio Code, aunque es posible crear el repositorio de Git con cualquier


otra técnica que prefiera si está familiarizado con los pasos. Si no tiene

instalado Visual Studio Code, puede descargarlo de forma gratuita


desde aquí.
1. Inicie Visual Studio Code y use el comando Archivo > Abrir

carpeta... para abrir la carpeta factbot en la que ha copiado el


código fuente del bot.

2. Haga clic en el botón Control de código fuente de la barra de

actividades izquierda de Visual Studio Code. Puede mantener el

puntero sobre cada botón si la barra lateral está contraída.

3. Seleccione el icono Inicializar repositorio de la parte superior


(a la derecha del título CONTROL DE CÓDIGO FUENTE).

29

4. Seleccione el botón Inicializar repositorio del cuadro de

diálogo.

5. Escriba "Primera confirmación." en el cuadro de texto de

entrada.

6. Haga clic en la marca de verificación para confirmar los

cambios, lo que almacena provisionalmente todos los archivos


cuando se pide.

Sugerencia
Si aparece un error de Git que indica que no tiene la identidad

establecida en Git, abra un símbolo del sistema y ejecute los comandos


siguientes, reemplazando los valores de marcador de posición de
correo electrónico y nombre. Luego, vuelva a pulsar el botón de
confirmación.

bashCopiar

git config --global [Link] "Your Email"

git config --global [Link] "Your name"

7. Seleccione Terminal en el menú Ver de Visual Studio Code


para abrir un terminal integrado.

8. Ejecute el siguiente comando en el terminal integrado,


30 reemplazando {git-url} en el siguiente comando por la
dirección URL de clonación de Git que ha localizado en
Azure Portal.

bashCopiar

git remote add qna-factbot {git-url}

9. Vuelva a la sección Control de código fuente de Visual Studio


Code y haga clic en los puntos suspensivos (los tres puntos) de

la parte superior del panel CONTROL DE CÓDIGO FUENTE.

10. Seleccione Publicar rama en el menú para insertar el código


de bot desde el repositorio local en Azure. Si se le piden
credenciales, escriba el nombre de usuario y la contraseña que

ha configurado en el Centro de implementación.


El bot se ha publicado en Azure. Antes de probarlo allí, ejecútelo

localmente y obtenga información sobre cómo depurarlo en Visual


Studio Code.

Siguiente unidad: Ejercicio: Depuración local del bot

31
EJERCICIO: DEPURACIÓN
LOCAL DEL BOT
Como sucede con cualquier código de aplicación que escriba, los

cambios en el código del bot se deben probar y depurar de manera

local antes de implementarlos en producción. Para ayudar a depurar


los bots, Microsoft ofrece Bot Framework Emulator.

En esta unidad se aprende a usar Visual Studio Code y el emulador para

depurar los bots.

Instalar paquetes locales de [Link]

32 1. Ejecute el comando siguiente en el terminal integrado de Visual


Studio Code para instalar Restify, un conocido paquete de
[Link] para compilar y usar servicios web RESTful:

bashCopiar

npm install restify

2. Repita este paso para los comandos siguientes a fin de


instalar Bot Builder SDK para [Link] de Microsoft Bot

Framework:

bashCopiar

npm install botbuilder

npm install botbuilder-azure


npm install botbuilder-cognitiveservices

Modificar el bot para que se ejecute en local con el emulador de

bots

El código descargado es un simple servicio de eco. Vamos a reemplazar


ese código por algún código básico para hacer preguntas y responder

a preguntas sencillas. Este código se ejecuta con el emulador de bots.

1. Haga clic en el botón Explorador de la barra de actividades de


Visual Studio Code (es el primer icono de la barra lateral).

2. Seleccione [Link] para abrirlo en el editor de código. Este


archivo contiene el código que controla el bot, código que

generó Azure Bot Service y que se descargó desde Azure Portal.

33 3. Reemplace el contenido de [Link] por el código siguiente y


luego guarde el archivo.

JavaScriptCopiar

"use strict";

var builder = require("botbuilder");

var botbuilder_azure = require("botbuilder-azure");

var useEmulator = true;

var userName = "";

var yearsCoding = "";


var selectedLanguage = "";

var connector = useEmulator ? new [Link]() : new


botbuilder_azure.BotServiceConnector({

appId: [Link],

appPassword: [Link]

});

var bot = new [Link](connector);

34

[Link]('/', [

function (session) {

[Link](session, "Hello, and welcome to QnA Factbot!

What's your name?");

},

function (session, results) {

userName = [Link];
[Link](session, "Hi " + userName + ", how many

years have you been writing code?");

},

function (session, results) {

yearsCoding = [Link];

[Link](session, "What language do you love the


most?", ["C#", "Python", "[Link]", "Visual FoxPro"]);

},

35
function (session, results) {

selectedLanguage = [Link];

[Link]("Okay, " + userName + ", I think I've got it:" +

" You've been writing code for " + yearsCoding + " years," +

" and prefer to use " + selectedLanguage + ".");

}]);

var restify = require('restify');


var server = [Link]();

[Link](3978, function() {

[Link]('test bot endpoint at

[Link]

});

[Link]('/api/messages', [Link]());

Instalar Bot Framework Emulator

Bot Framework Emulator es una aplicación de escritorio


36
multiplataforma que permite que los desarrolladores de bots prueben
y depuren los bots compilados mediante BotBuilder SDK.

Puede usar Bot Framework Emulator para probar los bots que se
ejecutan en local en el equipo o para conectarse a los bots que se
ejecutan de forma remota a través de una conexión de red segura.

Nota

Si ya tiene el emulador instalado, puede omitir esta sección y pasar a

depurar el código de bot.

1. Vaya a la página de versiones de Bot Framework Emulator en


una nueva pestaña o ventana del explorador.
2. Seleccione una descarga para la plataforma en cuestión: Linux,

macOS o Windows.

3. Descomprima el paquete e instálelo mediante los


procedimientos de instalación normales del sistema operativo.

Depurar el bot en Visual Studio Code

Ahora que el emulador está instalado,

1. cambie a Visual Studio Code y abra el archivo de código


fuente [Link].

2. Haga clic en el margen de la izquierda para establecer puntos


de interrupción en las líneas 20, 25 y 30
(llamadas [Link]...).
37
3. Haga clic en el botón Depurar de la barra de actividades y en

el botón de flecha verde Iniciar depuración para iniciar una


sesión de depuración.

4. Confirme que aparece "test bot endpoint


at [Link] en la consola de
depuración.
El código de bot ahora se ejecuta en local.

5. Inicie Bot Framework Emulator desde el menú Inicio o el

icono de inicio.
38
6. Seleccione el campo Enter your endpoint URL (Escriba la
dirección URL del punto de conexión). Escriba el nombre del

bot y la dirección URL [Link] del


bot que aparecen en la consola de depuración en el paso
anterior.

7. Deje vacíos los campos correspondientes al id. y la contraseña

de la aplicación de Microsoft, así como el de la configuración


regional. Después, seleccione CONNECT (CONECTARSE).

8. Luego, seleccione Save and connect (Guardar y conectar) y


guarde el archivo de configuración en la ubicación que prefiera.

Sugerencia
En el futuro, puede reconectarse al bot simplemente seleccionando el

nombre del bot en "My bots".

Probar el bot local

1. Escriba "hi" en el cuadro de la parte inferior del emulador y


39 presione Entrar. Confirme que Visual Studio Code se
interrumpe en la línea 20 de [Link].

2. Haga clic en el botón Continuar de la barra de herramientas de


depuración de Visual Studio Code y vuelva al emulador para ver
la respuesta del bot.

3. El bot le hará una serie de preguntas. Respóndalas y

seleccione Continuar en Visual Studio Code cada vez que se


alcance un punto de interrupción. Cuando haya terminado,

seleccione el botón Detener en la barra de herramientas de

depuración para finalizar la sesión de depuración.

En este momento, tiene un bot completamente funcional y sabe cómo


depurarlo mediante su ejecución local en Microsoft Bot Framework
Emulator. El paso siguiente consiste en conectar el bot a la base de

conocimiento que ha publicado para hacer que sea más inteligente.

Siguiente unidad: Ejercicio: Conexión del bot con la base de


conocimiento

40
41
EJERCICIO: CONEXIÓN
DEL BOT CON LA BASE DE
CONOCIMIENTO
En esta unidad, conectará el bot a la base de conocimiento de QnA

Maker que creó anteriormente para que el bot pueda llevar a cabo una
conversación inteligente. La conexión a la base de conocimiento

implica recuperar algo de información del portal de QnA Maker,

copiarla en Azure Portal, actualizar el código del bot y, luego, volver a


implementar el bot en Azure.

Conectar la base de conocimiento de Factbot al bot de aplicación


42
web

1. Abra el portal de QnA Maker en [Link] en el


explorador y haga clic en el botón de cuenta/perfil del extremo
superior derecho.

2. Seleccione Service Settings (Configuración de servicio) en el


menú que se despliega.

3. Seleccione Mostrar para mostrar la clave Principal del punto

de conexión y Copiar para copiarla en el Portapapeles. Péguela


en un archivo de texto para que pueda recuperarla fácilmente

en otro momento. Si no ve ninguna clave de configuración,

cierre la sesión y vuelva a iniciarla para actualizar la página.

Nota
En función de la configuración del explorador, es posible que deba

permitir las cookies de terceros para completar esta unidad.

4. Seleccione My knowledge bases (Mis bases de conocimiento)


en el menú de la parte superior de la página.

5. Seleccione View Code (Ver código) para la base de

conocimiento creada anteriormente.

6. Haga clic en el botón Copy (Copiar) para copiar los valores


predeterminados y péguelos en un editor.

7. Copie el identificador de la base de conocimiento de la primera


línea y el nombre de host de la segunda. No incluya el prefijo

"[Link] en el nombre de host que va a copiar.

43

8. Vuelva al bot de la aplicación web en Azure Portal.

Seleccione Configuración en el menú de la izquierda y

desplácese hacia abajo hasta que encuentre las configuraciones


de aplicación denominadas "QnAKnowledgebaseId",

"QnAAuthKey" y "QnAEndpointHostName".

9. Haga clic en Mostrar valores para mostrar los campos


editables.

10. Pegue en estos campos el identificador y el nombre de host de

la base de conocimiento que acaba de obtener y la clave del

punto de conexión que ha obtenido anteriormente.

11. Seleccione Guardar en la parte superior de la ventana para

conservar los cambios.

44

Configuración del código del servicio de bots

1. Cambie a Visual Studio Code y reemplace el contenido


de [Link] por este código. Luego guarde el archivo.
JavaScriptCopiar

var restify = require('restify');

var builder = require('botbuilder');

var botbuilder_azure = require("botbuilder-azure");

var builder_cognitiveservices = require("botbuilder-cognitiveservices");

// Setup Restify Server

var server = [Link]();

[Link]([Link] || [Link] || 3978, function () {

45 [Link]('%s listening to %s', [Link], [Link]);

});

// Create chat connector for communicating with the Bot Framework

Service

var connector = new [Link]({

appId: [Link],

appPassword: [Link],

openIdMetadata: [Link]

});
// Listen for messages from users

[Link]('/api/messages', [Link]());

var tableName = 'botdata';

var azureTableClient = new

botbuilder_azure.AzureTableClient(tableName,
[Link]['AzureWebJobsStorage']);

var tableStorage = new botbuilder_azure.AzureBotStorage({ gzipData:


false }, azureTableClient);

46

// Create your bot with a function to receive messages from the user

var bot = new [Link](connector);

[Link]('storage', tableStorage);

// Recognizer and and Dialog for preview QnAMaker service

var previewRecognizer = new

builder_cognitiveservices.QnAMakerRecognizer({

knowledgeBaseId: [Link],
authKey: [Link] ||

[Link]

});

var basicQnAMakerPreviewDialog = new

builder_cognitiveservices.QnAMakerDialog({

recognizers: [previewRecognizer],

defaultMessage: 'No match! Try changing the query terms!',

qnaThreshold: 0.3

}
47
);

[Link]('basicQnAMakerPreviewDialog',
basicQnAMakerPreviewDialog);

// Recognizer and and Dialog for GA QnAMaker service

var recognizer = new builder_cognitiveservices.QnAMakerRecognizer({

knowledgeBaseId: [Link],
authKey: [Link] ||

[Link], // Backward compatibility with

QnAMaker (Preview)

endpointHostName: [Link]

});

var basicQnAMakerDialog = new


builder_cognitiveservices.QnAMakerDialog({

recognizers: [recognizer],

defaultMessage: "I'm not quite sure what you're asking. Please ask
your question again.",
48

qnaThreshold: 0.3

});

[Link]('basicQnAMakerDialog', basicQnAMakerDialog);

[Link]('/', //basicQnAMakerDialog);

function (session) {

var qnaKnowledgebaseId = [Link];


var qnaAuthKey = [Link] ||

[Link];

var endpointHostName = [Link];

// QnA Subscription Key and KnowledgeBase Id null verification

if ((qnaAuthKey == null || qnaAuthKey == '') ||


(qnaKnowledgebaseId == null || qnaKnowledgebaseId == ''))

[Link]('Please set QnAKnowledgebaseId, QnAAuthKey

and QnAEndpointHostName (if applicable) in App Settings. Learn how


to get them at [Link]

else {
49

if (endpointHostName == null || endpointHostName == '')

// Replace with Preview QnAMakerDialog service

[Link]('basicQnAMakerPreviewDialog');

else

// Replace with GA QnAMakerDialog service

[Link]('basicQnAMakerDialog');

]);
Nota

Llamada para crear una instancia de QnAMakerDialog en la línea 30.

Con esto se crea un cuadro de diálogo que integra un bot compilado


con Azure Bot Service con una base de conocimiento compilada

mediante Microsoft QnA Maker.

Publicar el código de bot

1. Haga clic en el botón Control de código fuente de la barra de


actividades de Visual Studio Code.

2. Mantenga el puntero sobre el archivo [Link] y seleccione el


botón + para almacenar provisionalmente los cambios de ese

archivo para la siguiente confirmación.

50 3. Escriba "Connected to knowledge base" (Conectado a la base


de conocimiento) en el cuadro de mensaje y seleccione la marca
de verificación para confirmar los cambios.

Advertencia

Si ve cambios realizados en un archivo [Link], asegúrese de


que no se incluyan en la confirmación. La confirmación solo debe incluir
los cambios realizados en [Link].

4. Luego, haga clic en el botón de puntos suspensivos (...) y use el

comando Publicar rama para insertar estos cambios en el


repositorio remoto y en la aplicación web de Azure.

Probar el bot de aplicación web de Azure


1. Vuelva al bot de aplicación web en Azure Portal y

seleccione Probar en Chat en web a la izquierda para abrir la


consola de prueba.

2. Escriba "What's the most popular software programming

language in the world?" (¿Cuál es el lenguaje de programación

de software más popular del mundo?) en el cuadro que aparece


en la parte inferior de la ventana del chat y presione Entrar.
Confirme que el bot responde.

En entornos corporativos, C# es el rey, ya que se usa en más del 75 %


de las empresas de todo el mundo. Fuera de los entornos corporativos,

Java y JavaScript todavía le hacen sombra.

Enhorabuena. El bot está conectado a la base de conocimiento y puede

51 responder a preguntas.

Siguiente unidad: Comprobación de conocimientos


RESUMEN Y LIMPIEZA
En este módulo ha avanzado mucho. QnA Maker es una manera fácil
de proporcionar respuestas a preguntas habituales mediante

documentos existentes o listas de preguntas frecuentes.

La integración del servicio QnA Maker con un bot en Azure puede

facilitar la interacción de los usuarios con listas de preguntas frecuentes

a modo de conversación, para no tener que buscar en documentos de


gran tamaño en un explorador.

Limpieza

Para evitar costos inesperados en la cuenta de Azure, elimine el grupo

de recursos mslearn-factbot. Con esto se eliminan todos los recursos


52 creados en este módulo. Estos son los pasos:

1. Busque el grupo de recursos mslearn-factbot. Puede


seleccionar Grupos de recursos en la barra lateral de Azure

para encontrarlo rápidamente o bien usar la barra de búsqueda


global de la parte superior de la ventana del portal.

2. Seleccione el grupo de recursos y haga clic con el botón


derecho en la fila o use el botón de puntos suspensivos (…) del

extremo derecho de la fila para abrir el menú.

3. Haga clic en Eliminar grupo de recursos.

4. Escriba el nombre del grupo de recursos y haga clic

en Eliminar. Azure quita todos los recursos, incluida la base de

conocimiento de QnA Maker.


Más información

Se puede hacer mucho más para aprovechar la eficacia de Azure Bot

Service.

• Incorporación de cuadros de diálogo

• Agregar compatibilidad con FormFlow

• Compatibilidad con el lenguaje natural con Microsoft Language

Understanding and Intelligence Services (LUIS).

Con estas y otras características, puede compilar bots sofisticados que


respondan a las consultas y los comandos de los usuarios e interactúen

de manera fluida, no lineal y a modo de conversación.

Para obtener más información y para ver ideas para empezar, vea el
53
artículo de información general sobre Microsoft Bot Framework.

Si quiere que el bot sea más inteligente, considere la posibilidad de


expandir la base de conocimiento con otras preguntas y respuestas.

Por ejemplo, puede usar las preguntas frecuentes en línea para que Bot
Framework entrene al bot para que responda a preguntas sobre el
propio Framework.
1

Detección de opiniones en
texto con Text Analytics API
BIENVENIDA
Obtenga información sobre lo que los clientes dicen realmente sobre

su producto o marca cuando envían comentarios. Se va a crear una

solución que use Azure Functions y la inteligencia de Text Analytics API

para detectar opiniones en mensajes de texto.

En este módulo, aprenderá lo siguiente:

 Más información acerca de Text Analytics API


 Registrarse para conseguir una clave de Text Analytics API

 Diseñar y compilar un servicio con Azure Functions que use Text


Analytics API para clasificar comentarios de texto
 Leer y escribir mensajes de Azure Queue Storage en una
2
aplicación de función con la ayuda de enlaces

Requisitos previos

Ninguno

Introducción 2 min

Análisis de opiniones y Text Analytics API 4 min

Ejercicio: Llamada a Text Analytics API desde la consola de

pruebas en línea 10 min

Diseño de un clasificador de comentarios 6 min

Ejercicio: Creación de una aplicación de función en el portal

para hospedar la lógica de negocios 6 min


Ejercicio: Llamada a Text Analytics API desde una aplicación 9

min

Ejercicio: Ordenación de los mensajes en colas diferentes en


función de la puntuación de opiniones 8 min

Resumen 2 min

3
INTRODUCCIÓN
Si le muestro un texto escrito con TODAS LAS LETRAS EN
MAYÚSCULAS, ¿qué emociones transmitiría? Si en la reseña de un libro
escribo un comentario que indica que “el final era impredecible”,
¿indica esa afirmación algo positivo o negativo? ¿Cómo puedo

averiguar mediante programación en qué idioma se escribió un correo


electrónico? Text Analytics consiste en comprender y analizar texto no
4 estructurado para responder a ese tipo de preguntas. Incluye el análisis
de opiniones, la extracción de frases clave, la detección de idioma, etc.

En este módulo, vamos a centrar la atención en el análisis de opiniones.


Vamos a conocer más información sobre Text Analytics API. Este
servicio basado en la nube de Microsoft proporciona un procesamiento
avanzado del lenguaje natural (PLN) sobre texto sin formato. Una vez
que haya completado el módulo, habrá creado una solución con Azure

Functions que permite clasificar los comentarios de texto según las

opiniones.

Objetivos de aprendizaje

En este módulo, aprenderá a:

• Más información acerca de Text Analytics API


• Registrarse para conseguir una clave de Text Analytics API

• Diseñar y compilar un servicio con Azure Functions que use Text

Analytics API para clasificar comentarios de texto

• Leer y escribir mensajes de Azure Queue Storage en una

aplicación de función con la ayuda de enlaces

5
ANÁLISIS DE OPINIONES
Y TEXT ANALYTICS API
Todos queremos saber la opinión de los clientes sobre la marca, el

producto y el mensaje. ¿Cómo cambia su opinión con el tiempo? La

búsqueda de opiniones en lo que escriben puede darnos algunas


pistas. El análisis de opiniones ayuda a responder esta pregunta: ¿Qué

quieren realmente nuestros clientes? Se usa para analizar los tweets y


cualquier otro contenido de las redes sociales, los comentarios de los
clientes y los correos electrónicos.

Un enfoque habitual del análisis de opiniones consiste en entrenar


modelos de Machine Learning que detecten las opiniones. Sin
embargo, este proceso es complejo. Implica tener datos de

entrenamiento de buena calidad que estén etiquetados, crear

características a partir de esos datos, entrenar un clasificador y usarlo


para predecir la opinión de nuevos fragmentos de texto. No todas las

compañías tienen el dinero y los conocimientos para invertir en la


compilación de soluciones de inteligencia artificial desde cero.

Afortunadamente, Microsoft y otras empresas sí que pueden, y lo


hacen, e invierten en las investigaciones más avanzadas en estas áreas.
Como desarrolladores, podemos beneficiarnos de sus descubrimientos

a través de las API, SDK y plataformas que ellos crean. Microsoft


Cognitive Services es una de esas ofertas.

Azure Cognitive Services

Microsoft Cognitive Services consta de un conjunto de API, SDK y

servicios. El objetivo es ayudar a los desarrolladores a hacer que sus

aplicaciones sean más inteligentes, atractivas y detectables.

Azure Cognitive Services ofrece algoritmos inteligentes de visión, voz,

idioma, conocimiento y búsqueda. Para ver las ofertas, eche un vistazo

a Directorio de Cognitive Services. Puede probar cada servicio de forma

gratuita. Si decide integrar uno o varios de estos servicios en las


aplicaciones, suscríbase a una suscripción de pago. El servicio que

7 vamos a usar a lo largo de este módulo es Text Analytics API, así que

vamos a ver más información al respecto.

Text Analytics API

Text Analytics API es un servicio de Cognitive Services diseñado para


ayudarle a extraer información a partir de texto. A través del servicio
puede identificar el idioma, detectar opiniones, extraer frases clave y

detectar entidades conocidas del texto.

En esta lección, vamos a obtener más información sobre el elemento


de análisis de opinión de esta API. En un segundo plano, este servicio

utiliza un algoritmo de clasificación de aprendizaje automático para

generar una puntuación de opinión entre 0 y 1. Las puntuaciones


cercanas a 1 indican una opinión positiva y las puntuaciones cercanas

a 0 indican una opinión negativa. Una puntuación cercana a 0,5 indica


que no hay ninguna opinión o que se trata de una declaración neutra.

No tiene que preocuparse por los detalles de implementación del


algoritmo. Puede centrarse en realizar llamadas al servicio desde la
aplicación. Como veremos en breve, puede estructurar una
solicitud POST, enviarla al punto de conexión /sentiment y recibir una

respuesta JSON que le indique una puntuación de opinión.

Primero vamos a experimentar con Text Analytics API mediante una


consola de pruebas de API en línea. Una vez que se sienta cómodo con
la API, vamos a usarla en un escenario para detectar opiniones en

mensajes a fin de clasificarlos para su posterior procesamiento.

8
EJERCICIO: LLAMADA A
TEXT ANALYTICS API
DESDE LA CONSOLA DE
PRUEBAS EN LÍNEA
Para ver a Text Analytics API en funcionamiento, se realizarán algunas
llamadas mediante la herramienta de consola de pruebas de API
integrada que se encuentra en la documentación de referencia en línea.
Antes de hacerlo, necesitaremos una clave de acceso para realizar esas

llamadas.

9 Creación de una clave de acceso

Cada llamada a Text Analytics API requiere una clave de suscripción. A


menudo se la denomina clave de acceso y se usa para validar que tiene
acceso para realizar la llamada. Se usará Azure Portal para obtener una

clave.

1. Inicie sesión en Azure Portal con la misma cuenta que ha usado

para activar el espacio aislado.

2. En el menú de Azure Portal o en la página Inicio,

seleccione Crear un recurso.

3. En el cuadro de búsqueda Buscar en Marketplace, escriba text


analytics y presione la tecla Entrar o Retorno.
4. Seleccione Text Analytics en los resultados de la búsqueda y,

después, seleccione el botón Crear en la parte inferior derecha


de la pantalla.

5. En la página Crear que se abre, escriba los siguientes valores en

cada campo.

TABLA 1

Propiedad Valor Descripción

Nombre Elija un nombre único El nombre de la cuenta de Cognitive


Services. Es recomendable que use un

nombre descriptivo. Los caracteres


válidos son a-z, 0-9 y -.

10
Suscripción Concierge Subscription La suscripción en la que se crea esta
cuenta de Cognitive Services API

con Text Analytics API.

Ubicación Elija una región en la lista Seleccione una ubicación en la lista


desplegable desplegable.

Plan de F0 gratis El costo de la cuenta de Cognitive


tarifa Services depende del uso real y de las

opciones que elija. Se recomienda


seleccionar el nivel gratis para
nuestros fines.
TABLA 1

Propiedad Valor Descripción

Grupo de Haga clic en Usar Nombre del nuevo grupo de recursos


recursos existente y elija [nombre en el que se va a crear la cuenta de

del grupo de recursos del Text Analytics API de Cognitive

espacio aislado]. Services.

6. Sugerencia

7. Recuerde la ubicación que ha seleccionado al crear la cuenta de


Cognitive Services Text Analytics. La usará para realizar
llamadas de API en breve.

11 8. Haga clic en Crear en la parte inferior de la página para iniciar

el proceso de creación de la cuenta. Esté atento a una

notificación de que la implementación está en curso. A


continuación, recibirá una notificación que le avisa de que la

cuenta se ha implementado correctamente en el grupo de


recursos.
Obtención de la clave de acceso

Ahora que tenemos nuestra cuenta de Cognitive Services, vamos a

buscar la clave de acceso para que podamos iniciar una llamada a la


API.

1. Haga clic en el botón Ir al recurso de la notificación

de implementación correcta. Esta acción abre el inicio rápido de

la cuenta.

2. Seleccione el elemento de menú Claves del menú de la

izquierda o en la sección Obtener las claves del inicio rápido.

Esta acción abre la página Administrar claves.

3. Copie una de las claves con el botón Copiar.

12
Importante

Mantenga siempre las claves de acceso a salvo y no las comparta

nunca.

4. Almacene esta clave durante el resto de este módulo. La vamos


a usar en breve para realizar llamadas API desde la consola de

pruebas y durante el resto del módulo.

Llamada a la API desde la consola de pruebas

Ahora que tenemos nuestra clave, podemos ir a la consola de pruebas


y elegir la API para una prueba.

1. Vaya a la siguiente URL en su explorador favorito.

Reemplace [location] por la ubicación que ha seleccionado


13 antes en esta unidad al crear la cuenta de Cognitive Services
Text Analytics. Por ejemplo, si ha creado la cuenta en eastus,
debería reemplazar [location] por eastus en la dirección URL.

bashCopiar

9. [Link]
xtAnalytics.V2.0

La página de aterrizaje muestra un menú a la izquierda y contenido a

la derecha. El menú enumera los métodos POST a los que puede llamar

en Text Analytics API. Estos puntos de conexión son Detectar


idioma, Entidades, Frases clave y Opinión. Para llamar a alguna de
estas operaciones, necesitamos hacer algunas cosas.

 Seleccione el método al que queremos llamar.


 Agregue la clave de acceso que guardamos anteriormente en

esta lección para cada llamada.

2. En el menú de la izquierda, seleccione Opinión. Esta selección


abre la documentación correspondiente a la derecha. Como se

muestra en la documentación, se realizará una llamada REST

con el formato siguiente.

[Link]
ment

[location] se reemplaza por la ubicación que ha seleccionado al crear

la cuenta Text Analytics.


Pasaremos nuestra clave de suscripción, o clave de acceso, en el
encabezado ocp-Apim-Subscription-Key.

14
Realización de algunas llamadas API

1. En la sección de la consola de pruebas de Open API de esta

página, seleccione el botón correspondiente a la ubicación o


región en que se creó la cuenta de Cognitive Services. Al
seleccionar este botón, se abre la consola de API activa a

interactiva.

2. Pegue la clave de acceso que ha guardado en el campo con la

etiqueta Ocp-Apim-Subscription-Key. Observe que la clave se


ha escrito automáticamente en la ventana de solicitud HTTP

como un valor de encabezado.

3. Desplácese a la parte inferior de la página y haga clic en Enviar.

Vamos a examinar las secciones de esta pantalla con más detalle.


En la sección Encabezados de la interfaz de usuario, establecemos la

clave de acceso, o de suscripción, en el encabezado de nuestra


solicitud.

A continuación, tenemos la sección de cuerpo de la solicitud, que


contiene una matriz de documentos. Cada documento de la matriz

tiene tres propiedades. Las propiedades

son "language", "id" y "text". "id" es un número en este ejemplo, pero


puede ser cualquier cosa que desee, siempre que sea única en la matriz
de documentos. En este ejemplo también vamos a pasar documentos

escritos en tres idiomas diferentes. Se admiten más de 15 idiomas en


15
la característica Opinión de Text Analytics API. Para más información,
consulte Idiomas admitidos en Text Analytics API. El tamaño máximo
de un solo documento es de 5000 caracteres y una solicitud puede
contener hasta 1000 documentos.

La solicitud completa, incluidos los encabezados y la dirección URL de

solicitud se muestran en la sección siguiente. En este ejemplo puede

ver que las solicitudes se enrutan a una dirección URL que empieza
por westus. La dirección URL varía según la ubicación que haya

seleccionado al crear la cuenta de Text Analytics.

16

Después, tenemos información acerca de la respuesta. En el ejemplo,


vemos que la solicitud fue correcta y que se devolvió el código 200.

Por último, vemos la respuesta a nuestra solicitud. La respuesta

contiene las conclusiones que Text Analytics API tenía sobre nuestros
documentos. Se nos devuelve una matriz de documentos sin el texto

original. Obtenemos un "id" y un "score" para cada documento. La API


devuelve una puntuación numérica comprendida entre 0 y 1. Las
puntuaciones cercanas a 1 indican una opinión positiva mientras que
las puntuaciones cercanas a 0 indican una opinión negativa. Una

puntuación de 0,5 indica la ausencia de opinión, una instrucción neutra.

En este ejemplo, tenemos dos documentos bastante positivos y uno


negativo.

17
Enhorabuena. Ha realizado su primera llamada a Text Analytics API sin
escribir una sola línea de código. No dude en permanecer en la consola

y probar a realizar más llamadas. Estas son algunas sugerencias:

 Cambie los documentos de la sección número 2 y vea lo que

devuelve la API.

 Pruebe los otros métodos, Detectar


idioma, Entidades y Frases clave, con la misma clave de
suscripción.
 Intente realizar una llamada desde otra región con su

suscripción y observe lo que sucede.

La consola de pruebas de API es una excelente manera de explorar las

funcionalidades de esta API. Ahora que ha explorado por sí mismo,


pasemos a poner esta inteligencia en un escenario real.
DISEÑO DE UN
CLASIFICADOR DE
COMENTARIOS
Vamos a aplicar los conocimientos de Text Analytics a una solución

práctica. Nuestra solución se centrará en el análisis de sentimiento de


documentos de texto. Vamos a describir el problema que queremos

abordar para establecer el contexto.

Administración más eficaz de los comentarios de clientes

En los medios sociales se habla activamente del producto de su


18 empresa. El alias de correo electrónico de comentarios también recibe
comentarios de los clientes que desean compartir su opinión sobre su

producto.

Como sucede con cualquier startup, vive con el mantra de escuchar a


los clientes. Sin embargo, el éxito de su producto ha hecho que
mantener esta promesa sea más fácil de decir que de hacer. Es un buen

problema, pero un problema al fin y al cabo.

El equipo ya no puede con el volumen de comentarios. Necesitan

ayuda para clasificar los comentarios para poder administrar los


problemas de la forma más eficaz posible. Como desarrollador jefe de

la organización, se le ha pedido que cree una solución.

Veamos algunos requisitos generales:


TABLA 1

Requisito Detalles

Clasificar los comentarios para No todos los comentarios son iguales. Alguno

poder reaccionar a ellos. mordaces de clientes frustrados. En otros ca

Como mínimo, tener una indicación de la opinió


clasificarlos.

La solución debe poder ampliarse Somos una startup. Los costos fijos son difíciles d

o reducirse verticalmente para exacto del tráfico de comentarios. Necesitaremo


satisfacer la demanda. actividad, pero con un costo mínim

19 En este caso, un buen candidato es una arquitec


consumo.

Genere un producto viable Hoy queremos clasificar los comentarios en categ


mínimo (MVP), pero haga que la limitados a los comentarios que importan. Si algú

solución sea adaptable. enseguida y empezar a charlar con él. En el futur

cosas. Una idea para una nueva característica es e


detectar puntos problemáticos antes de que llegu
es automatizar las respuestas a los clientes que s

con nosotros, quieren saber

En este escenario, una buen elección es una solu


Por ejemplo, podríamos usar colas como una form

escribe el resultado en una cola para que la siguie


TABLA 1

Requisito Detalles

Entrega rápida. Todos hemos oído esto antes. Recuerde que e

rápidamente en nuestro escenario. Para lograr ve

código.

Vamos a aprovechar las ventajas de Text Analytic

detectar opiniones. Con Azure Functions y un en

código que hay que escribir. Una solución sin


preocuparse por la administración del servidor.

La solución que proponemos para cada requisito de la tabla anterior

20 nos da una idea de cómo asignar los requisitos a las soluciones. Ahora
veamos el aspecto que tendría una solución basada en Azure.

Una solución basada en Azure Functions, Azure Queue Storage y

Text Analytics API

El diagrama siguiente es una propuesta de diseño de una solución. Usa

tres componentes principales de Azure: Azure Queue Storage, Azure


Functions y Cognitive Services de Azure.
La idea es que los documentos de texto que contienen comentarios de

los usuarios se coloquen en una cola que hemos llamado new-


feedback-q en el diagrama anterior. La llegada de un mensaje que
contenga el documento de texto a la cola desencadenará o iniciará la
ejecución de funciones. La función lee los mensajes que contienen

documentos nuevos en la cola de entrada y los envía para su análisis a

Text Analytics API. Según los resultados que la API devuelva, se coloca
en una cola de salida un nuevo mensaje que contiene el documento

para su posterior procesamiento.

El resultado que obtenemos para cada documento es una puntuación


de la opinión. Las colas de salida se usan para almacenar los
comentarios clasificados como positivos, neutros y negativos.

¡Esperamos que la cola de comentarios negativos esté siempre vacía!

21 Una vez clasificado cada comentario entrante en una cola de salida en


función de la opinión, vamos a agregar lógica para actuar sobre los

mensajes de cada cola.

Echemos un vistazo al diagrama de flujo siguiente para ver lo que debe


hacer la lógica de la función.
Nuestra lógica es como un enrutador. Toma la entrada de texto y lo

enruta a una cola de salida según la puntuación de la opinión del texto.


22
Tenemos una dependencia de Text Analytics API. Aunque la lógica
parece trivial, esta función eliminará la necesidad de tener personas en

el equipo para analizar manualmente los comentarios.

Pasos para implementar nuestra solución

Para implementar la solución descrita en esta unidad, se deberán


completar los pasos siguientes.

1. Crear una aplicación de función para hospedar nuestra


solución.

2. Buscar las opiniones en los mensajes de comentarios entrantes


con Text Analytics API. Usaremos la clave de acceso del ejercicio

anterior y escribiremos código para enviar las solicitudes.


3. Publique los comentarios en las colas de procesamiento en

función de la opinión.

Vamos a pasar a crear la aplicación de función.

23
EJERCICIO: CREACIÓN DE
UNA APLICACIÓN DE
FUNCIÓN EN EL PORTAL
PARA HOSPEDAR LA
LÓGICA DE NEGOCIOS
Una aplicación de función proporciona un contexto para administrar
y ejecutar las funciones. Vamos a crear una aplicación de función y, a

continuación, agregarle una función.

24 Creación de una aplicación de función para hospedar nuestra


función

1. Inicie sesión en Azure Portal con la misma cuenta con la que


ha activado el espacio aislado.

2. En el menú de Azure Portal o la página Inicio, seleccione Crear


un recurso y luego Proceso > Aplicación de funciones.

3. Escriba la configuración de la aplicación de funciones como se


especifica en la tabla siguiente.
TABLA 1

Configuración Valor Descripción

Nombre de la Nombre único Nombre que identifica la nueva ap

aplicación globalmente z, 0-9 y -.

Suscripción Suscripción de Suscripción en la que se creará est


Concierge

Grupo de recursos [nombre del grupo Nombre del grupo de recursos e


de recursos del

espacio aislado] Asegúrese de seleccionar Usar exi


anterior. De esta forma, todos los

25 conservan juntos.

SO Windows Sistema operativo que hospeda la

Plan de hospedaje Plan de consumo Plan de hospedaje que define cóm


el Plan de consumo predetermina
los requisitos de las funciones. E
tiempo durante el cual se ejecutan

Ubicación Seleccione la misma Elija una región cerca de usted o c

ubicación que usó funciones.


anteriormente.

Seleccione la misma región que ha


el último ejercicio.
TABLA 1

Configuración Valor Descripción

Pila en tiempo de [Link] El código de ejemplo de este mód

ejecución

Almacenamiento Nombre único global Nombre de la nueva cuenta de alm


Los nombres de las cuentas de alm
y solo pueden incluir números y le

el campo con un nombre único de

embargo, no dude en usar otro no

4. Haga clic en Crear para aprovisionar e implementar la


aplicación de función.
26

5. Haga clic en el icono de notificación de la esquina superior


derecha del portal y observe el mensaje Implementación en

curso.

6. La implementación puede tardar un tiempo. Por tanto,

permanezca en el Centro de notificaciones y esté atento para


ver un mensaje Implementación correcta.

7. Una vez implementada la aplicación de función, vaya a Todos

los recursos en el portal. Se muestra la aplicación de función

con el tipo App Service y el nombre que le asignó. Para abrir la

aplicación de función, selecciónela en la lista.

Enhorabuena. Ha creado e implementado la aplicación de función.


Sugerencia

¿Tiene dificultades para encontrar las aplicaciones de función en el

portal? Intente agregar aplicaciones de función a sus favoritos en


Azure Portal.

Creación de una función que ejecute nuestra lógica

Ahora que tenemos una aplicación de función, es el momento de crear

una función. Se activa una función a través de un desencadenador. En


este módulo, usaremos un desencadenador de colas. El runtime sondea

una cola e inicia esta función para procesar un mensaje nuevo.

1. Seleccione el botón Agregar (+) situado junto a Funciones. Esta

acción inicia el proceso de creación de funciones.

27 2. En la página Azure Functions for JavaScript - getting


started (Azure Functions para JavaScript: introducción),

seleccione En el portal y luego Continuar.

3. En el paso Crear una función, seleccione Más plantillas... y


luego Finish and view templates (Plantillas Finalizar y ver).

4. En la lista de plantillas disponibles para esta aplicación de


función, seleccione Desencadenador de Azure Queue

Storage.

5. Si ve un mensaje que indica Extensiones no instaladas,


seleccione Instalar. La instalación de dependencias puede

llevar un par de minutos. Espere hasta que termine la


instalación antes de continuar.
6. En el cuadro de diálogo Nueva función que aparece,

especifique los siguientes valores.

TABLA 2

Propiedad Valor

Nombre discover-sen

Nombre de cola new-feedba

Conexión de cuenta de Storage AzureWebJo

7. Haga clic en Crear para iniciar el proceso de creación de la


función.

28 8. Se crea una función en el lenguaje elegido mediante la plantilla


de funciones del desencadenador de colas. Aunque en este

módulo vamos a implementar la función en JavaScript, puede


crear una función en cualquier lenguaje compatible.

Una vez completado el proceso de creación, el editor de código se abre


en el portal y carga la página [Link]. Este archivo es el archivo de

código en el que escribimos nuestra lógica de la función.

Pruébelo

Vamos a probar lo que tenemos hasta ahora. Aún no hemos escrito

ningún código, por lo que esta prueba es para asegurarnos de que lo


que hemos configurado hasta ahora, funciona.

1. Haga clic en Ejecutar en la parte superior del editor de código.


2. Observe la pestaña Registros que se abre en la parte inferior

de la pantalla. Si todo funciona según lo previsto, verá un


mensaje similar al
siguiente.

El botón Ejecutar inició nuestra función y pasó los datos de cola de


ejemplo, el texto predeterminado de la ventana de solicitud Prueba de

nuestra función.

Sugerencia

Si se agota el tiempo de espera de la función o no devuelve un valor


29 correctamente, pruebe a reiniciar la aplicación de función. Seleccione
la aplicación de función en el menú de la izquierda y, a continuación,

seleccione Reiniciar en el panel Introducción. Espere a que la

aplicación de función se reinicie y, a continuación, pruebe a ejecutar de


nuevo la función.

Buen trabajo. Ha agregado correctamente una función desencadenada


por colas a su aplicación de función y la ha probado para asegurarse

de que funciona según lo previsto. Vamos a agregar más funcionalidad

a la función en el ejercicio siguiente.

Echemos un vistazo rápido al otro archivo de la función, el archivo de


configuración [Link]. Los datos de configuración de este archivo

se muestran en el siguiente listado JSON.

JSONCopiar
{

"bindings": [

"name": "myQueueItem",

"type": "queueTrigger",

"direction": "in",

"queueName": "new-feedback-q",

"connection": "AzureWebJobsDashboard"

30 ],

"disabled": false

Como puede ver, esta función tiene un enlace de desencadenador que

se llama myQueueItem del tipo queueTrigger. Si llega un mensaje


nuevo a la cola que hemos denominado new-feedback-q, se llama a

la función. Hacemos referencia al nuevo mensaje mediante el


parámetro de enlace myQueueItem. Los enlaces se ocupan realmente

de parte del trabajo pesado por nosotros.

En el paso siguiente, vamos a agregar código para llamar al servicio

Text Analytics API.

Sugerencia
Puede ver [Link] y [Link] expandiendo el menú Ver

archivos en la parte derecha del panel de función de Azure Portal.

En este ejercicio se explicó como poner en funcionamiento nuestra


infraestructura de Azure Functions. Tenemos una función en marcha

hospedada en una aplicación de función que se ejecuta cuando llega

un mensaje nuevo a la cola. La hemos llamado new-feedback-q. Lo


divertido empieza en el siguiente ejercicio, en el que vamos a agregar
código para llamar a Azure Cognitive Services a fin de realizar análisis
de opiniones.

31
EJERCICIO: LLAMADA A
TEXT ANALYTICS API
DESDE UNA APLICACIÓN
Vamos a actualizar la implementación de la función para llamar al

servicio Text Analytics API y obtener una puntuación de opinión.

1. Seleccione la función discover-sentiment-function, en


nuestra aplicación de función en el portal.

2. Expanda el menú Ver archivos a la derecha de la pantalla.

3. En la pestaña Ver archivos, seleccione [Link] para abrir el


32
archivo de código en el editor.

4. Reemplace todo el contenido de [Link] por el siguiente

código JavaScript y haga clic en Guardar.

JavaScriptCopiar

[Link] = function (context, myQueueItem) {

[Link]('Processing queue message', myQueueItem);

let https = require ('https');

// Replace the accessKey string value with your valid access key.
let accessKey = '<YOUR ACCESS KEY HERE>';

// Replace [region], including square brackets, in the uri variable


below.

// You must use the same region in your REST API call as you used

to obtain your access keys.

// For example, if you obtained your access keys from the


northeurope region, replace

// "westus" in the URI below with "northeurope".

let uri = '[region].[Link]';

33 let path = '/text/analytics/v2.0/sentiment';

let response_handler = function (response) {

let body = '';

[Link] ('data', function (chunk) {

body += chunk;

});
[Link] ('end', function () {

let body_ = [Link] (body);

let body__ = [Link] (body_, null, ' ');

[Link] (body__);

[Link]();

return;

});

[Link] ('error', function (e) {

34 [Link] ('Error: ' + [Link]);

[Link]();

return;

});

};

let get_sentiments = function (documents) {

let body = [Link] (documents);


let request_params = {

method : 'POST',

hostname : uri,

path : path,

headers : {

'Ocp-Apim-Subscription-Key' : accessKey,

};

35 let req = [Link] (request_params, response_handler);

[Link] (body);

[Link] ();

// Create a documents array with one entry.

let documents = { 'documents': [

{
'id': '1',

'language': 'en',

'text': myQueueItem

},

]};

get_sentiments (documents);

};

36 5. En el código que pegó, actualice el valor de accessKey con la


clave de acceso de Text Analytics API que guardó anteriormente
en este módulo.

6. Actualice el valor de uri con la región desde la que ha obtenido


la clave de acceso.

Vamos a ver qué sucede en este código:

 Cada llamada al servicio Text Analytics necesita la clave de


acceso, que se agrega como el encabezado Ocp-Apim-
Subscription-Key.

 Todas las llamadas se realizan a un punto de conexión


específico de la región, definido por uri en nuestro código.
 En la parte inferior del archivo de código, se ha definido una

matriz documents. Esta matriz es la carga que enviamos al


servicio Text Analytics API.
 La matriz documents tiene una sola entrada en este caso, que
es el mensaje de cola que ha desencadenado la función.

Aunque solo tenemos un documento en la matriz, esto no

significa que nuestra solución solo pueda controlar un mensaje


a la vez. El entorno en tiempo de ejecución de Azure Functions

recupera y procesa mensajes en lotes, llamando a varias

instancias de nuestra función en paralelo. Actualmente, el

tamaño de lote predeterminado es 16 y el tamaño máximo es


32.

 id debe ser único dentro de la matriz. La


propiedad language especifica el idioma del texto del
37
documento.
 A continuación, llamamos al método get_sentiments, que usa
el módulo HTTPS para realizar la llamada a Text Analytics API.
Observe que la clave de suscripción, o de acceso, se pasa en el

encabezado de cada solicitud.


 Cuando el servicio vuelve, se llama a response_handler y se
registra la respuesta en la consola mediante [Link]

Pruébelo

Antes de adentrarnos en la ordenación en colas, vamos a realizar una


serie de pruebas con lo que ya tenemos.

1. Con la función discover-sentiment-function seleccionada en


el área Function App del portal, haga clic en el elemento de

menú Probar, en el extremo derecho.


2. Haga clic en el elemento de menú Probar y compruebe que

tiene abierto el panel de prueba.

3. Agregue una cadena de texto en el cuerpo de la solicitud tal


como se indica en la captura de pantalla.

38

4. Haga clic en Ejecutar en la parte inferior del panel de prueba.

5. Asegúrese de que la pestaña Registros está expandida en la

parte inferior izquierda de la pantalla principal, en el editor de


código.
6. Compruebe que la pestaña Registros muestra la información

de registro que ha completado la función. La ventana también


mostrará la respuesta de la llamada a Text Analytics API.

Enhorabuena. discover-sentiment-function funciona según lo

previsto. En este ejemplo, se pasa un mensaje muy optimista y se recibe


una puntuación superior a 0,98. Pruebe a cambiar el mensaje a algo
menos optimista, vuelva a ejecutar la prueba y observe la respuesta.

39 Agregar un mensaje a la cola

Vamos a repetir la prueba. Esta vez, en lugar de usar la ventana de

prueba del portal, vamos a colocar realmente un mensaje en la cola de

entrada y ver qué sucede.

1. Vaya al grupo de recursos de la sección Grupos de

recursos del portal.

2. Seleccione [nombre del grupo de recursos del espacio aislado],

el grupo de recursos usado en esta lección.

3. En el panel Grupo de recursos que aparece, busque la entrada

Cuenta de almacenamiento y selecciónela.


4. Seleccione Explorador de Storage (versión preliminar) en el

menú izquierdo de la ventana principal de Cuenta de


almacenamiento. Esta acción abre el Explorador de Azure
Storage dentro del portal.

40

Como puede ver, todavía no tenemos ninguna cola en esta cuenta de


almacenamiento, así que vamos a agregar una.

5. Si recuerda lo que se ha visto anteriormente en esta lección, la


cola asociada al desencadenador se ha denominado new-

feedback-q. Haga clic con el botón derecho en el


elemento Colas del Explorador de Storage y seleccione Crear

cola.

6. En el cuadro de diálogo que se abre, escriba new-feedback-


q y haga clic en Aceptar. Ahora ya tenemos nuestra cola de

entrada.

7. Seleccione la nueva cola en el menú izquierdo para ver el

explorador de datos de esta cola. Como era de esperar, la cola


está vacía. Vamos a agregar un mensaje a la cola mediante el

comando Agregar mensaje de la parte superior de la ventana.

8. En el cuadro de diálogo Agregar mensaje, escriba "Este


mensaje procede de la cola de entrada new-feedback-q" en el
campo Texto del mensaje y haga clic en Aceptar en la parte

41 inferior del cuadro de diálogo.

9. Observe el mensaje, parecido al mensaje de la siguiente captura


de pantalla, en el explorador de

datos.

10. Después de unos segundos, haga clic en Actualizar para


actualizar la vista de la cola. Observe que la cola vuelve a

estar vacía. Algo debe haber leído el mensaje de la cola.

11. Vuelva a nuestra función en el portal y abra la


pestaña Supervisar. Seleccione el mensaje más reciente de la

lista. Observe que la función ha procesado el mensaje de cola


que se había publicado en new-feedback-q. Los resultados

pueden retrasarse en este registro, por lo que es posible que


deba esperar unos minutos y presionar Actualizar.

En esta prueba, hicimos un recorrido de ida y vuelta completo para


publicar algo en nuestra cola y, posteriormente, ver cómo la función lo
procesa.

42
Estamos progresando con nuestra solución. Nuestra función ahora está

haciendo algo útil. Está recibiendo texto de la cola de entrada y, a


continuación, llama al servicio Text Analytics API para obtener una
puntuación de opinión. También hemos aprendido a probar nuestra
función mediante Azure Portal y el Explorador de Storage. En el
ejercicio siguiente, se verá lo fácil que es escribir en colas mediante

enlaces de salida.
EJERCICIO: ORDENACIÓN
DE LOS MENSAJES EN
COLAS DIFERENTES EN
FUNCIÓN DE LA
PUNTUACIÓN DE
OPINIONES
Veamos de nuevo la arquitectura de la solución.

43

Como puede ver en el lado derecho de este diagrama, queremos enviar


mensajes a tres colas. Para ello, vamos a definir esas conexiones como

enlaces de salida en la función. Se pueden crear esos enlaces mediante

la interfaz de usuario de Enlace de salida. Pero, para ahorrar tiempo,


vamos a editar directamente el archivo de configuración.

Adición de enlaces de salida a [Link]

1. Seleccione la función discover-sentiment-function en el

portal de Function App.


2. Expanda el menú Ver archivos a la derecha de la pantalla.

3. En la pestaña Ver archivos, seleccione [Link] para abrir

el archivo de configuración en el editor.

4. Reemplace todo el contenido de [Link] por el siguiente


JSON y haga clic en Guardar.

JSONCopiar

"bindings": [

"name": "myQueueItem",
44
"type": "queueTrigger",

"direction": "in",

"queueName": "new-feedback-q",

"connection": "AzureWebJobsStorage"

},

"type": "queue",

"name": "positiveFeedbackQueueItem",

"queueName": "positive-feedback-q",
"connection": "AzureWebJobsStorage",

"direction": "out"

},

"type": "queue",

"name": "neutralFeedbackQueueItem",

"queueName": "neutral-feedback-q",

"connection": "AzureWebJobsStorage",

"direction": "out"

45 },

"type": "queue",

"name": "negativeFeedbackQueueItem",

"queueName": "negative-feedback-q",

"connection": "AzureWebJobsStorage",

"direction": "out"

],
"disabled": false

Hemos agregado tres nuevos enlaces a la configuración.

 Cada nuevo enlace es del tipo queue. Estos enlaces son para las

tres colas que rellenaremos con nuestros mensajes de


comentarios una vez que conozcamos la opinión de estos.

 Cada enlace tiene una dirección definida como out, ya que


vamos a publicar los mensajes en estas colas.

 Cada enlace usa la misma conexión a nuestra cuenta de

almacenamiento.
 Cada enlace tiene un único queueName y name.

Publicar un mensaje en una cola es tan sencillo como decir, por


46
ejemplo, [Link] =
"<message>".

Actualización de la implementación de la función para ordenar los


comentarios en colas según la puntuación de opinión

El objetivo de nuestro clasificador de comentarios es ordenar los


comentarios en tres cubos: positivos, negativos y neutrales. Hasta el

momento tenemos la cola de entrada, el código para llamar a Text

Analytics API y hemos definido las colas de salida. En esta sección,


vamos a agregar la lógica para trasladar los mensajes a esas colas

según las opiniones.

1. Vaya a nuestra función, discover-sentiment-function y vuelva

a abrir [Link] en el editor de código.


2. Reemplace la implementación por el código siguiente.

JavaScriptCopiar

[Link] = function (context, myQueueItem) {

[Link]('Processing queue message', myQueueItem);

let https = require ('https');

// Replace the accessKey string value with your valid access key.

let accessKey = '<YOUR ACCESS CODE HERE>';

47

// Replace [region], including square brackets, in the uri variable


below.

// You must use the same region in your REST API call as you used
to obtain your access keys.

// For example, if you obtained your access keys from the


northeurope region, replace

// "westus" in the URI below with "northeurope".

let uri = '[region].[Link]';

let path = '/text/analytics/v2.0/sentiment';


let response_handler = function (response) {

let body = '';

[Link] ('data', function (chunk) {

body += chunk;

});

[Link] ('end', function () {

48 let body_ = [Link] (body);

// Even though we send and receive a documents array from

the Text Analytics API,

// we only ever pass one document in the array.

if (body_.documents && body_.[Link] == 1) {

let score = body_.documents[0].score;

// Create a message that contains the original message we

received and
// the sentiment score returned by Text Analytics API.

let messageWithScore = [Link]({

originalMessage: myQueueItem,

score: score

});

// Place message into appropriate output queue based on


sentiment score.

if (score > 0.8) {

[Link] ("Positive message arrived");


49

[Link] =
messageWithScore;

} else if (score < 0.3) {

[Link] ("Negative message arrived");

[Link] =

messageWithScore;

} else {

[Link] ("Neutral message arrived");

[Link] =

messageWithScore;
}

let body__ = [Link] (body_, null, ' ');

[Link] (body__);

[Link]();

return;

});

[Link] ('error', function (e) {

50 [Link] ('Error: ' + [Link]);

[Link]();

return;

});

};

let get_sentiments = function (documents) {

let body = [Link] (documents);


let request_params = {

method : 'POST',

hostname : uri,

path : path,

headers : {

'Ocp-Apim-Subscription-Key' : accessKey,

};

51 let req = [Link] (request_params, response_handler);

[Link] (body);

[Link] ();

// Create a documents array with one entry.

let documents = { 'documents': [

{
'id': '1',

'language': 'en',

'text': myQueueItem

},

]};

get_sentiments (documents);

};

52 Hemos agregado el código resaltado a la implementación. El código


analiza la respuesta de Text Analytics API de Cognitive Services. Según
la puntuación de la opinión, se reenvía el mensaje a una de las tres

colas de salida. El código para publicar el mensaje simplemente


establece el parámetro de enlace correcto.

Pruébelo

Para probar la implementación actualizada, vamos a volver al


Explorador de Storage.

1. Vaya al grupo de recursos de la sección Grupos de

recursos del portal.

2. Seleccione [nombre del grupo de recursos del espacio aislado],


el grupo de recursos usado en esta lección.
3. En el panel Grupo de recursos que se abre, localice la entrada

Cuenta de almacenamiento y
selecciónela.

4. Seleccione Explorador de Storage (versión preliminar) en el

menú izquierdo de la ventana principal de Cuenta de


almacenamiento. Esta acción abre el Explorador de Azure
53
Storage dentro del portal.

Tenemos una cola que aparece en la colección Colas. Esta cola es new-
feedback-q, la cola de entrada que hemos definido en la sección

anterior de prueba del módulo.


5. Seleccione new-feedback-q en el menú izquierdo para ver el

explorador de datos de esta cola. Como era de esperar, la cola


no contenía datos. Vamos a agregar un mensaje a la cola
mediante el comando Agregar mensaje de la parte superior de
la ventana.

6. En el cuadro de diálogo Agregar mensaje, escriba "Me estoy


divirtiendo con este ejercicio". en el campo Texto del
mensaje y haga clic en Aceptar en la parte inferior del cuadro
de diálogo.

7. El mensaje aparece en la ventana de datos de new-feedback-

q. Después de unos segundos, haga clic en Actualizar en la


parte superior de la vista de datos para actualizar la vista de la
cola. Observe que el mensaje desaparece después de unos
54
minutos. ¿Dónde se fue?

8. Haga clic con el botón derecho en la colección COLAS en el


menú de la izquierda. Observe que ha aparecido
una nueva cola.

La cola positive-feedback-queue se creó automáticamente cuando se

publicó un mensaje en ella por primera vez. Con los enlaces de salida

de la cola de Azure Functions, no es necesario crear manualmente la


cola de salida antes de publicar en ella. Ahora que vemos que nuestra

función ha clasificado un mensaje entrante en positive-feedback-


queue, vamos a ver dónde van los siguientes mensajes.
9. Con los mismos pasos de arriba, agregue los siguientes

mensajes a new-feedback-q.

 "Me gusta el brócoli"


 "Microsoft es una empresa"

10. Haga clic en Actualizar hasta que new-feedback-q esté

nuevamente vacío. Este proceso podría tardar unos minutos y

se requieren varias actualizaciones.

11. Haga clic con el botón derecho en la colección COLAS y

observe que aparecen dos colas más. Las colas se

denominan neutral-feedback-queue y negative-feedback-


queue. Esto puede tardar unos segundos, por ello, continúe
actualizando la colección COLAS hasta que aparezcan nuevas

55 colas. Cuando termine, la lista de colas debería tener el


siguiente aspecto.
12. Haga clic en cada cola de la lista para ver si tiene mensajes. Si

ha agregado los valores sugeridos, debería ver uno


en positive-feedback-queue, neutral-feedback-
queue y negative-feedback-queue.

Enhorabuena. Ahora ya tenemos un clasificador de comentarios

operativo. Conforme llegan los mensajes a la cola de entrada, nuestra


función usa el servicio Text Analytics API para obtener una puntuación
de opinión. En función de esa puntuación, la función reenvía los
mensajes a la cola adecuada. Aunque parece que la función procesa

solo un elemento de la cola cada vez, el runtime de Azure Functions


realmente lee lotes de elementos de la cola y pone en marcha otras
instancias de la función para procesarlas en paralelo.

56
RESUMEN
Azure Cognitive Services es un completo conjunto de servicios
inteligentes que se puede usar para enriquecer las aplicaciones. Text
Analytics API tiene varias operaciones para convertir texto en

conclusiones significativas. Hemos usado el servicio para detectar


opiniones en los comentarios de texto de los clientes. Hemos creado
57
una solución hospedada en Azure Functions para clasificar estos
mensajes de texto en cubos distintos, o colas, para su posterior

procesamiento.

Una vez que sepa cómo llamar a una API REST, puede integrar
fácilmente estos servicios inteligentes en sus soluciones. Todos ellos
siguen un patrón similar:

• Regístrese para obtener una clave de acceso.

• Explore en la consola de pruebas de la API.

• Formule solicitudes mediante la clave de acceso y la región

adecuada.

• PUBLIQUE las solicitudes desde la solución y analice las

respuestas para sacar conclusiones.


Hemos agregado esta inteligencia a la lógica sin servidor que creó en

Azure Functions. Puede llamar fácilmente a estos servicios desde otros


tipos de aplicaciones. Hay muchas bibliotecas de cliente, tutoriales y
guías de inicio rápido para comenzar.

Sugerencias para una mejora aún mayor de la solución

Aquí le presentamos algunas ideas a tener en cuenta si desea ampliar

lo que ya hemos hecho.

• Pruebe la solución con más ejemplos de texto. Decida si los


umbrales que establecemos para clasificar las puntuaciones de

opinión en positivas, negativas y neutrales son adecuados.

• Considere la posibilidad de agregar otra función a la aplicación


de función que lea los mensajes de la cola negative-feedback-
58
queue y llame a Text Analytics API para buscar frases clave en

el texto.

• Nuestra cola de entrada contiene comentarios de texto sin


formato. En el mundo real, asociaríamos los comentarios con
algún tipo de identificador de usuario, como la dirección de

correo electrónico, el número de cuenta, etc. Mejore los


elementos de la cola de entrada para que sean documentos

JSON que contengan un campo de identificador y el texto.


Después, use ese identificador cuando trabaje con el mensaje
de texto.

• En la actualidad, nuestra aplicación está "codificada de forma


rígida" en inglés. Piense en los cambios que implementaría para
que pudiera controlar texto en todos los idiomas compatibles

mediante Text Analytics API.

• Si está familiarizado con Logic Apps, visite el vínculo para el


conector integrado para el análisis de texto en la sección

Lecturas adicionales.

Ahora que sabe cómo llamar a una de estas Cognitive Services APIs,

explore algunos de los otros servicios y piense cómo puede usarlos en


sus soluciones.

Lecturas adicionales

• Introducción a Text Analytics

• Demostración de Text Analytics


59
• Cómo detectar opiniones en Text Analytics

• Documentación de Cognitive Services

• Conector de Text Analytics para Logic Apps

Limpieza

El espacio aislado limpia los recursos automáticamente cuando haya


terminado con este módulo.

Al trabajar en una suscripción propia, se recomienda identificar al final


de un proyecto si aún necesita los recursos creados. Dejar recursos en

funcionamiento puede costarle dinero. Puede eliminar los recursos de


forma individual o eliminar el grupo de recursos para eliminar todo el

conjunto de recursos.
Enfoque por capas de la seguridad

La defensa en profundidad es una estrategia que emplea una serie de

mecanismos para ralentizar el avance de un ataque dirigido a adquirir


acceso no autorizado a la información. Cada capa proporciona

protección, de modo que, si se produce una brecha en una capa, ya

existe otra en funcionamiento para evitar una mayor exposición.


Microsoft aplica un enfoque por capas a la seguridad de los centros de
datos físicos y de los servicios de Azure. El objetivo de la defensa en
profundidad es proteger y evitar que personas no autorizadas puedan

sustraer la información para acceder a ella.

La defensa en profundidad se puede visualizar como un conjunto de


anillos concéntricos, con los datos que se deben proteger en el centro.

1 Cada anillo agrega una capa adicional de seguridad en torno a los

datos. Este enfoque elimina la dependencia de cualquier nivel de


protección único y actúa para ralentizar un ataque y para proporcionar
datos de telemetría de alertas sobre los que se puede actuar
automática o manualmente. Echemos un vistazo a cada una de las
capas.
Datos

En casi todos los casos, los atacantes intentan conseguir datos:

2  Almacenados en una base de datos

 Almacenados en discos en máquinas virtuales

 Almacenados en una aplicación de SaaS como Office 365

 Almacenados en un almacenamiento en la nube

Es responsabilidad de aquellas personas encargadas de almacenar los


datos y controlar el acceso a estos asegurarse de que la protección sea

la adecuada. A menudo existen requisitos legales que dictan los


controles y los procesos que deben cumplirse para garantizar la
confidencialidad, la integridad y la disponibilidad de los datos.
Aplicación

 Asegúrese de que las aplicaciones sean seguras y estén libres


de vulnerabilidades.
3
 Almacene los secretos de aplicación confidenciales en un medio
de almacenamiento seguro.

 Convierta la seguridad en un requisito de diseño en todo el


desarrollo de aplicaciones.

La integración de la seguridad en el ciclo de vida del desarrollo de

aplicaciones ayudará a reducir el número de vulnerabilidades en el


código. Animamos a todos los equipos de desarrollo a que garanticen
que sus aplicaciones son seguras de forma predeterminada y están

siguiendo los requisitos de seguridad sin concesiones.


Proceso

 Proteja el acceso a las máquinas virtuales.

4  Implemente la protección del punto de conexión y mantenga


los sistemas revisados y actualizados.

El software malintencionado, los sistemas sin revisiones aplicadas y los


sistemas protegidos incorrectamente abren el entorno a los ataques. El

enfoque en esta capa es asegurarse de que sus recursos de proceso


estén seguros y de que cuenta con los controles adecuados para
minimizar los problemas de seguridad.
Redes

 Limite la comunicación entre los recursos.

5  Deniegue de forma predeterminada.

 Restrinja el acceso entrante de Internet y limite el saliente


cuando sea apropiado.

 Implemente conectividad segura a las redes locales.

En esta capa, el enfoque está en limitar la conectividad de la red en


todos los recursos para permitir solo la necesaria. Al limitar esta

comunicación, se reduce el riesgo de desplazamiento lateral en toda la


red.
Perímetro

 Use protección frente a ataques de denegación de servicio


distribuido (DDoS) para filtrar los ataques a gran escala antes
6
de que puedan causar una denegación de servicio para los
usuarios finales.

 Use firewalls perimetrales para identificar y alertar sobre los


ataques malintencionados contra la red.

En el perímetro de la red, se trata de la protección frente a ataques

basados en red contra los recursos. Identificar estos ataques, eliminar


sus repercusiones y recibir alertas sobre ellos cuando suceden son
formas importantes de proteger la red.
Identidad y acceso

 Controle el acceso a la infraestructura y al control de cambios.

7  Use el inicio de sesión único y la autenticación multifactor.

 Audite los eventos y los cambios.

La capa de identidad y acceso consiste en garantizar que las


identidades están protegidas, que solo se otorga el acceso necesario y
que se registran los cambios.
Seguridad física

 La seguridad física del edificio y el control del acceso al


hardware de computación del centro de datos son la primera
8
línea de defensa.

La intención de la seguridad física es proporcionar medidas de


seguridad físicas contra el acceso a los recursos. Estas medidas

garantizan que no se puedan omitir otras capas y se controle

apropiadamente la pérdida o el robo.

Azure le ayuda a combatir los problemas de seguridad. Pero, aun así,


la seguridad sigue siendo una responsabilidad compartida. En qué
grado recae esa disponibilidad sobre nosotros depende de qué

modelo se utilice con Azure. Vamos a usar los anillos de defensa en


profundidad como directrices para considerar qué protecciones son

adecuadas para nuestros datos y entornos.

Siguiente unidad: Siguiente unidad: Obtener sugerencias de Azure

Security Center
OBTENER SUGERENCIAS
DE AZURE SECURITY
CENTER
Un excelente lugar para comenzar a examinar la seguridad de las

soluciones basadas en Azure es Azure Security Center. Security Center


es un servicio de supervisión que proporciona protección contra

amenazas en todos los servicios, tanto en Azure como en el entorno

local. Security Center puede:

 Proporcionar recomendaciones de seguridad en función de las


configuraciones, los recursos y las redes.
9
 Supervisar la configuración de seguridad de las cargas de
trabajo locales y en la nube, y aplicar automáticamente la

seguridad necesaria a los nuevos servicios cuando se conectan.

 Supervisar continuamente todos los servicios y realizar


evaluaciones de seguridad automáticas para identificar posibles
vulnerabilidades antes de que alguien las aproveche.

 Usar aprendizaje automático para detectar y bloquear la

instalación de malware en los servicios y las máquinas virtuales.


También puede definir una lista de aplicaciones permitidas para

asegurarse de que solo se ejecuten aquellas que valide.


 Analizar e identificar posibles ataques entrantes y ayudar a

investigar amenazas y otras actividades posteriores a una


brecha que pudieran haberse producido.

 Proporcionar control de acceso Just-In-Time para los puertos,

reduciendo la superficie expuesta a ataques al asegurarse de


que la red solo permite el tráfico necesario.

Azure Security Center forma parte de las recomendaciones de Center


for Internet Security (CIS).

Niveles disponibles

Azure Security Center está disponible en dos


niveles:

10 1. Gratuito. Disponible como parte de la

suscripción de Azure, este nivel está limitado a


evaluaciones y recomendaciones de recursos de Azure.

2. Estándar. Este nivel ofrece un conjunto completo de servicios


relacionados con la seguridad, como supervisión continua,
detección de amenazas, control de acceso Just-In-Time para
puertos, etc.

Para acceder al conjunto completo de servicios de Azure Security


Center, tiene que actualizar a una suscripción de nivel estándar. Puede
acceder a la evaluación gratuita de 30 días desde el panel de Azure

Security Center en Azure Portal. Una vez finalizado el período de


prueba de 30 días, Azure Security Center cuesta 15 USD por nodo al

mes.
Escenarios de uso

Puede integrar Security Center en los flujos de trabajo y usarlo de

muchas maneras. Estos son dos ejemplos.

1. Use Security Center para dar respuesta a incidentes.

Muchas organizaciones aprenden a responder a incidentes de


seguridad solo después de sufrir un ataque. Para reducir los costos y

los daños, es importante tener un plan de respuesta a incidentes


implementado antes de que se produzca un ataque. Puede usar Azure

Security Center en distintas fases de una respuesta a incidentes.

11

Puede usar Security Center durante las fases de detección, evaluación


y diagnóstico. Estos son ejemplos de cómo Security Center puede ser
útil durante las tres fases iniciales de respuesta a incidentes:

 Detectar. Revisión de la primera indicación de una

investigación de eventos. Por ejemplo, puede usar el

panel de Security Center para revisar la comprobación


inicial de que se ha generado una alerta de seguridad

de alta prioridad.
 Evaluar. Se realiza la evaluación inicial para obtener más

información sobre la actividad sospechosa. Por ejemplo,


obtenga más información sobre la alerta de seguridad.

 Diagnosticar. Se realiza una investigación técnica y se

identifican las estrategias de contención, mitigación y


solución. Por ejemplo, siga los pasos de corrección

descritos por Security Center para esa alerta de


seguridad concreta.

2. Use las recomendaciones de Security Center para mejorar la


seguridad.

Puede reducir las posibilidades de que se produzca un evento de


seguridad importante si configura una directiva de seguridad y luego

12 implementa las recomendaciones de Azure Security Center.

 Las directivas de seguridad definen el conjunto de


controles recomendado para los recursos de esa

suscripción o grupo de recursos especificados. En


Security Center, se definen directivas de acuerdo con los
requisitos de seguridad de la empresa.

 Security Center analiza el estado de seguridad de los

recursos de Azure. Si Security Center identifica posibles


vulnerabilidades de seguridad, crea recomendaciones
basadas en los controles establecidos en la directiva de

seguridad. Las recomendaciones le guían a lo largo del


proceso de configuración de los controles de seguridad

necesarios. Por ejemplo, si tiene cargas de trabajo que


no requieren la directiva de Cifrado de datos
transparente (TDE) de Azure SQL Database, desactive la

directiva en el nivel de suscripción y habilítela solo en


los grupos de recursos donde se requiera TDE de SQL.

Importante

Para actualizar una suscripción al nivel estándar, debe tener asignado el

rol de Propietario de la suscripción, Colaborador de suscripción o

Administrador de seguridad.

13
IDENTIDAD Y ACCESO
Los parámetros de red, los firewalls y los controles de acceso físicos

solían ser la protección principal de los datos corporativos. Pero los


parámetros de red se han vuelto cada vez más penetrables con la

expansión del uso de Bring Your Own Device (BYOD), aplicaciones

móviles y aplicaciones en la nube.

La identidad se ha convertido en el nuevo límite de seguridad principal.


Por lo tanto, la autenticación y asignación de privilegios correctas es
fundamental para mantener el control de los datos.

Su empresa, Contoso Shipping, se centra en afrontar estas cuestiones


de inmediato. La nueva solución de nube híbrida del equipo debe tener
14
en cuenta las aplicaciones móviles con acceso a datos secretos cuando
un usuario autorizado inicia sesión —, además de contar con vehículos

de transporte que envían constantemente un flujo de datos de


telemetría fundamentales para optimizar el negocio de la empresa.

Autenticación y autorización

Dos conceptos fundamentales que deben entenderse al hablar sobre


identidad y control de acceso son la autenticación y la autorización.

Sustentan todo lo demás que ocurre y se producen secuencialmente


en cualquier proceso de identidad y acceso:

 La autenticación es el proceso de establecimiento de la


identidad de una persona o servicio que intenta acceder a un

recurso. Implica el acto de solicitar a un usuario credenciales


legítimas y proporciona la base para la creación de una entidad

de seguridad que se va a usar para el control de identidad y de


acceso. Establece si se es quien se dice ser.
 La autorización es el proceso de establecer el nivel de acceso
que tiene una persona o un servicio autenticados. Específica a

qué datos puede acceder y qué puede hacer con ellos.

Nota

La palabra autenticación a veces se acorta a AuthN y autorización

a AuthZ.

Azure ofrece servicios para administrar la autenticación y la autorización


a través de Azure Active Directory (Azure AD).

¿Qué es Azure Active Directory?


15
Azure AD es un servicio de identidad basado en la nube. Tiene
compatibilidad integrada para sincronizarse con la instancia de Active

Directory local existente o se puede usar de forma independiente. Esto


significa que todas las aplicaciones, ya sean locales, en la nube (incluido
Office 365) o incluso móviles, pueden compartir las mismas

credenciales. Los administradores y los desarrolladores pueden


controlar el acceso a datos internos y externos y a aplicaciones

mediante reglas y directivas centralizadas configuradas en Azure AD.

Azure AD proporciona servicios como:

 Autenticación. Incluye una comprobación de identidad para


acceder a aplicaciones y recursos, además proporciona

funcionalidades, como autoservicio para el restablecimiento de


contraseñas, autenticación multifactor (MFA), una lista

personalizada de contraseñas prohibidas y servicios de bloqueo


inteligente.
 Inicio de sesión único (SSO). SSO permite a los usuarios
recordar solo un identificador y una contraseña para acceder a

varias aplicaciones. Una sola identidad está asociada a un

usuario, lo que simplifica el modelo de seguridad. Cuando los


usuarios cambian de roles o dejan una organización, las

modificaciones de acceso se asocian a esa identidad, lo que

reduce considerablemente el esfuerzo necesario para cambiar

o deshabilitar cuentas.
 Administración de aplicaciones. Puede administrar las

aplicaciones en la nube y locales mediante Azure AD


Application Proxy, SSO, el portal Mis aplicaciones (también
16
conocido como panel Acceso) y aplicaciones SaaS.
 Servicios de identidad de negocio a negocio
(B2B). Administre a los usuarios invitados y a los asociados
externos sin perder el control sobre los propios datos

corporativos.
 Servicios de identidad de negocio a cliente
(B2C). Personalice y controle la forma en que los usuarios se
suscriben, inician sesión y administran sus perfiles al usar las

aplicaciones con servicios.

 Administración de dispositivos. Administre la forma en que

los dispositivos en la nube o locales acceden a los datos


corporativos.

Vamos a examinar algunas de estas características más detalladamente.


Inicio de sesión único

Cuantas más identidades tenga que administrar un usuario, mayor será

el riesgo de que se produzca alguna incidencia de seguridad


relacionada con las credenciales. Más identidades significa más

contraseñas para recordar y cambiar. Las directivas sobre contraseñas

pueden variar entre aplicaciones y, a medida que aumentan los


requisitos de complejidad, cada vez resultan más difíciles de recordar
para los usuarios.

Ahora, tenga en cuenta la logística necesaria para administrar todas


estas identidades. El departamento de soporte técnico se ve sometido
a una mayor presión al tener que ocuparse de los bloqueos de cuentas
y las solicitudes de restablecimiento de contraseñas. Si un usuario deja
una organización, puede resultar complicado hacer un seguimiento de
17
todas las identidades y asegurarse de que están deshabilitadas. Si se

pasa por alto una identidad, podría permitir el acceso cuando debería

haberse eliminado.

Con el inicio de sesión único (SSO), los usuarios tienen que recordar

solo un identificador y una contraseña. El acceso de una aplicación a

otra se concede a una única identidad asociada a un usuario, lo que


simplifica el modelo de seguridad. Cuando los usuarios cambian de
roles o dejan una organización, las modificaciones de acceso están
vinculadas a una única identidad, lo que reduce considerablemente el

esfuerzo necesario para cambiar o deshabilitar cuentas. El uso del inicio

de sesión único para las cuentas facilita a los usuarios la administración


de sus identidades y aumenta las funcionalidades de seguridad del
entorno.
SSO con Azure Active Directory

Si aprovecha Azure AD para el SSO, también puede combinar varios

orígenes de datos en un gráfico de seguridad inteligente. Este gráfico


de seguridad permite proporcionar análisis de amenazas y la

protección de identidad en tiempo real a todas las cuentas en Azure

AD, incluidas las que se sincronizan desde las instalaciones en AD.


Mediante el uso de un proveedor de identidades centralizado, habrá
centralizado los controles de seguridad, los informes, las alertas y la
administración de la infraestructura de identidad.

Puesto que Contoso Shipping integra su instancia existente de Active

Directory con Azure AD, se podrá controlar el acceso de manera


uniforme en toda la organización. Si lo hace, se simplificará
enormemente la capacidad de iniciar sesión en el correo electrónico y
18
los documentos de Office 365 sin necesidad de volver a autenticar.

Autenticación multifactor

La autenticación multifactor (MFA) proporciona seguridad adicional a


las identidades al requerir dos o más elementos para una autenticación

completa. Estos elementos se dividen en tres categorías:

 Algo que sabe

 Algo que posee


 Algo que es

Algo que sabe sería una contraseña o la respuesta a una pregunta de

seguridad. Algo que posee podría ser una aplicación móvil que recibe
una notificación o un dispositivo generador de tokens. Algo que
es suele ser algún tipo de propiedad biométrica como una huella

digital o un escaneo facial utilizados en muchos dispositivos móviles.

El uso de la autenticación multifactor aumenta la seguridad de su


identidad al limitar el impacto de la exposición de credenciales. Un

atacante que tenga la contraseña de un usuario también necesitaría su

teléfono o su cara para autenticarse de forma completa. La


autenticación con solo un factor verificado no es suficiente y el atacante
no podría usar solo esas credenciales para autenticarse. Las ventajas
que esto proporciona a la seguridad son enormes, y se debe hacer

hincapié en la importancia de habilitar MFA siempre que sea posible.

Azure AD tiene funcionalidades de MFA integradas y se integrará con


otros proveedores de MFA de terceros. Es necesario emplear la
autenticación multifactor para los usuarios que tengan el rol
19
Administrador global en Azure AD, ya que son cuentas altamente
confidenciales. El resto de cuentas también puede tener la
autenticación multifactor habilitada.

En el caso de Contoso Shipping, se decide habilitar la autenticación


multifactor cada vez que un usuario inicia sesión desde un equipo —

no conectado a ningún dominio, lo que incluye las aplicaciones móviles


y las unidades que use.

Aprovisionamiento de identidades en servicios

A menudo resulta útil que los servicios tengan identidades. Con

frecuencia, y en contra de los procedimientos recomendados, la

información de las credenciales se inserta en los archivos de

configuración. Si no hay seguridad en torno a estos archivos de


configuración, cualquier persona con acceso a los sistemas o a los

repositorios puede acceder a ellas y provocar una exposición a riesgos.

Azure AD resuelve este problema mediante dos métodos: entidades de


servicio e identidades administradas para servicios de Azure.

Entidades de servicio

Para comprender las entidades de servicio, es útil entender primero las

palabras identidad y entidad, debido a cómo se usan en el sector de


la administración de identidades.

Una identidad no es más que un elemento que se puede autenticar.


Obviamente esto incluye a los usuarios con un nombre de usuario y

contraseña, pero también aplicaciones u otros servidores, que se


pueden autenticar con certificados o claves secretas.
20
Una entidad de seguridad es una identidad que actúa con ciertos
roles o notificaciones. A menudo no es útil considerar identidad y

entidad de seguridad por separado, pero piense en el uso de "sudo"


en un símbolo del sistema de Bash en Linux o en Windows con la
opción "Ejecutar como administrador". En ambos casos, el inicio de

sesión mantiene la misma identidad que antes, pero ha cambiado el rol


con el que se está ejecutando. A menudo, los grupos también se

consideran entidades de seguridad, porque pueden tener derechos


asignados.

Una entidad de servicio es una identidad que usa un servicio o una

aplicación. Al igual que a otras identidades, se le pueden asignar roles.


Identidades administradas para servicios de Azure

La creación de entidades de servicio puede ser un proceso tedioso;

además, hay una gran cantidad de puntos delicados que pueden


dificultar el mantenimiento. Las identidades administradas para

servicios de Azure son mucho más fáciles y automatizan la mayor parte

del trabajo.

Una identidad administrada se puede crear al instante para cualquier


servicio de Azure que la admita (la lista crece constantemente). Cuando

se crea una identidad administrada para un servicio, está creando una


cuenta en el servicio Active Directory de la organización (la instancia de
Active Directory de una organización específica se conoce como
"Inquilino de Active Directory"). La infraestructura de Azure se
encargará automáticamente de autenticar el servicio y administrar la
21
cuenta. Luego, dicha cuenta se puede usar como cualquier otra cuenta

de Azure AD, lo que incluye permitir el acceso del servicio autenticado

a otros recursos de Azure.

Control de acceso basado en rol

Los roles son conjuntos de permisos, como "Solo lectura" o


"Colaborador", que se pueden conceder a los usuarios para acceder a

una instancia de servicio de Azure.

Las identidades se asignan a los roles directamente o mediante la

pertenencia a grupos. La separación de entidades de seguridad,

permisos de acceso y recursos proporciona un control más minucioso


y una administración del acceso simple. Los administradores pueden

garantizar que se conceden los permisos mínimos necesarios.


Se pueden conceder roles en el nivel de instancia del servicio individual,

pero también se propagan hacia abajo en la jerarquía de Azure


Resource Manager.

Este es un diagrama que muestra esta relación. Los ámbitos

secundarios, como las instancias de servicio, heredan los roles

asignados en un ámbito superior, como una suscripción completa.

22

Privileged Identity Management

Además de administrar el acceso a los recursos de Azure con el control


de acceso basado en rol (RBAC), un enfoque integral a la protección de

la infraestructura debería incluir la auditoría constante de los miembros

del rol a medida que la organización cambia y evoluciona. Azure AD


Privileged Identity Management (PIM) es una oferta adicional de pago
que proporciona supervisión de las asignaciones de roles, autoservicio,

activación del rol just-in-time y revisiones de acceso a los recursos de

Azure AD y Azure.
23
RESUMEN
La identidad nos permite mantener un perímetro de seguridad, incluso

fuera de nuestro control físico. Con el inicio de sesión único y la


configuración adecuada del acceso basado en rol siempre podemos
estar seguros de quién tiene la capacidad de ver y manipular nuestros
datos y la infraestructura.

24
CIFRADO
Para la mayoría de las organizaciones, los datos son el recurso más

valioso e irreemplazable. El cifrado sirve como la última y más fuerte


línea de defensa de una estrategia de seguridad por capas.

Contoso Shipping sabe que el cifrado es la única protección que tienen

sus datos una vez que salen del centro de datos y se almacenan en
dispositivos móviles que podrían ser pirateados o robados.

¿Qué es el cifrado?

El cifrado es el proceso para hacer que los datos aparezcan ilegibles e


inútiles para visores no autorizados. Para usar o leer los datos cifrados,
25 es necesario descifrarlos, lo que requiere el uso de una clave secreta.
Hay dos tipos de cifrado de nivel superior: simétrico y asimétrico.

El cifrado simétrico usa la misma clave para cifrar y descifrar los datos.
Piense por ejemplo en una aplicación de administración de contraseñas

de escritorio. Cuando escriba las contraseñas, estas se cifran con su


propia clave personal (su clave a menudo procede de la contraseña

maestra). Cuando es necesario recuperar los datos, se usa la misma


clave y se descifran los datos.

El cifrado asimétrico usa un par de claves pública y privada.


Cualquiera de las dos puede cifrar, pero una sola no puede descifrar

sus propios datos cifrados. Para descifrar se necesita la otra clave del
par. El cifrado asimétrico se utiliza, por ejemplo, para Seguridad de la

capa de transporte (TLS) (que se usa en HTTPS) y la firma de datos.


Tanto el cifrado simétrico como el asimétrico desempeñan un papel en

la protección apropiada de los datos. Normalmente el cifrado se enfoca


de dos maneras:

1. Cifrado en reposo

2. Cifrado en tránsito

Cifrado en reposo

Los datos en reposo son aquellos que se han almacenado en un medio


físico. Estos podrían estar almacenados en el disco de un servidor, en
una base de datos o en una cuenta de almacenamiento.
Independientemente del mecanismo de almacenamiento, el cifrado de

datos en reposo garantiza que los datos almacenados sean ilegibles sin
las claves y los secretos necesarios para descifrarlos. Si un atacante
26
lograra obtener una unidad de disco duro con este tipo de datos

cifrados, pero no tuviera acceso a las claves del cifrado, no podría poner
los datos en peligro con facilidad.

Los datos reales que se cifran pueden variar en su contenido, uso e


importancia dentro de la organización. Esta información financiera
podría ser vital para el negocio, propiedad intelectual que ha

desarrollado la empresa, datos personales de los clientes o empleados


que almacena la empresa e, incluso, las claves y los secretos usados
para el cifrado de los propios datos.

En este diagrama se muestra el aspecto de los datos de cliente cifrados

en una base de datos.


Cifrado en tránsito

Los datos en tránsito son los que se están moviendo activamente de


una ubicación a otra, por ejemplo, por Internet o a través de una red
privada. La transferencia segura se puede controlar mediante varias
capas diferentes. Se puede hacer mediante el cifrado de los datos en el

nivel de aplicación antes de enviarlos a través de una red. HTTPS es un


ejemplo de nivel de aplicación en el cifrado en tránsito.

27 También puede configurar un canal seguro, como una red privada

virtual (VPN), en un nivel de red, para transmitir datos entre dos

sistemas.

El cifrado de datos en tránsito protege los datos de los observadores


exteriores y proporciona un mecanismo para transmitirlos que limita el
riesgo de exposición.

En este diagrama se muestra el proceso. En este caso, los datos de los

clientes se cifran cuando se envían a través de la red. Solo el receptor


tiene la clave secreta que permite descifrar los datos a un formato útil.
28 Cifrado en Azure

Echemos un vistazo a algunas formas que proporciona Azure para cifrar


los datos en los servicios.

Almacenamiento sin formato


cifrado

Azure Storage Service Encryption para

datos en reposo ayuda a proteger los


datos con el fin de cumplir con los

compromisos de seguridad y de cumplimiento de la organización. Con


esta característica, la plataforma de almacenamiento de Azure cifra

automáticamente los datos antes de almacenarlos en Azure Managed

Disks, Azure Blob Storage, Azure Files o Azure Queue Storage y los
descifra antes de recuperarlos. El control del cifrado, el cifrado en

reposo, el descifrado y la administración de claves en Storage Service


Encryption son transparentes para las aplicaciones que usan los
servicios.

Discos de máquina virtual cifrados

Storage Service Encryption proporciona

protección de cifrado de bajo nivel para


los datos escritos en un disco físico pero,

¿cómo se protegen los discos duros


virtuales (VHD) de las máquinas virtuales? Si algunos atacantes
malintencionados han obtenido acceso a la suscripción de Azure y han
obtenido los discos duros virtuales de las máquinas virtuales, ¿cómo se
garantiza que no puedan acceder a los datos almacenados?
29
Azure Disk Encryption es una funcionalidad que ayuda a cifrar los
discos de las máquinas virtuales de IaaS Windows y Linux. Azure Disk

Encryption aprovecha la característica estándar del sector BitLocker de


Windows y la característica dm-crypt de Linux para ofrecer cifrado de

volumen para los discos de datos y del sistema operativo. La solución


se integra con Azure Key Vault para ayudar a controlar y administrar

los secretos y las claves de cifrado de discos (y puede usar las


identidades de servicio administradas para acceder a Key Vault).

En el caso de Contoso Shipping, el uso de máquinas virtuales fue uno

de sus primeros movimientos hacia la nube. El cifrado de todos los


discos duros virtuales es una manera fácil y de bajo impacto de

garantizar que se hace todo lo posible por proteger los datos de una
empresa.
Bases de datos cifradas

El cifrado de datos transparente

(TDE) ayuda a proteger Azure SQL


Database y Azure Data Warehouse

frente a la amenaza de actividad

malintencionada. También realiza cifrado y descifrado de la base de


datos en tiempo real, copias de seguridad asociadas y archivos de
registro de transacciones en reposo sin necesidad de efectuar cambios
en la aplicación. De forma predeterminada, TDE está habilitado para

todas las instancias de Azure SQL Database recién implementadas.

TDE cifra el almacenamiento de una base de datos completa mediante


el uso de una clave simétrica denominada clave de cifrado de base de
datos. De forma predeterminada, Azure proporciona una clave de
30
cifrado única por cada instancia lógica de SQL Server y controla todos
los detalles. También se admite el servicio Bring Your Own Key (BYOK)
con las claves almacenadas en Azure Key Vault (vea a continuación).

Como TDE está habilitado de forma predeterminada, tiene la seguridad


de que Contoso Shipping tiene los mecanismos de protección

adecuados para los datos almacenados en las bases de datos de la


empresa.

Cifrado de secretos

Hemos visto que todos los servicios de

cifrado usan claves para cifrar y descifrar

datos, pero, ¿cómo garantizamos la

protección de las propias claves? Las


empresas también pueden tener contraseñas, cadenas de conexión u
otros elementos de información confidenciales que tienen que

almacenar de forma segura. En Azure, se puede usar Azure Key


Vault para proteger los secretos.

Azure Key Vault es un servicio centralizado en la nube para almacenar

secretos de aplicación. Key Vault ayuda a controlar los secretos de la

aplicación al mantenerlos en una sola ubicación centralizada y al


proporcionar funcionalidades de acceso seguro, control de permisos y
registro de acceso. Resulta útil para una serie de escenarios:

 Administración de secretos. Puede usar Azure Key Vault para


almacenar de forma segura y controlar de manera estricta el

acceso a tokens, contraseñas, certificados, claves de interfaz de


programación de aplicaciones (API) y otros secretos.
 Administración de claves. También se puede usar Key Vault
31
como solución de administración de claves. Key Vault facilita la
creación y el control de las claves de cifrado usadas para cifrar

los datos.
 Administración de certificados. Key Vault permite aprovisionar,
administrar e implementar certificados públicos y privados
de Capa de sockets seguros y de Seguridad de la capa de

transporte (SSL/TLS) para los recursos de Azure, y sus recursos


conectados internamente, con más facilidad.

 Almacenamiento de secretos respaldado por módulos de


seguridad de hardware (HSM). Las claves y los secretos se

pueden proteger mediante software o mediante dispositivos

HSM validados por FIPS 140-2 nivel 2.


Las ventajas del uso de Key Vault incluyen:

 Secretos de aplicación centralizados. La centralización del

almacenamiento de secretos de aplicación permite controlar su


distribución y reduce las posibilidades de que se puedan filtrar

accidentalmente.

 Secretos y claves almacenados de forma segura. Azure usa


algoritmos estándar del sector, longitudes de clave y HSM, y el
acceso requiere autorización y autenticación correctas.
 Supervisión del acceso y el uso. Con Key Vault, puede supervisar

y controlar el acceso a los secretos de la empresa.


 Administración simplificada de secretos de aplicación. Key Vault
facilita la inscripción y la renovación de certificados de

entidades de certificación (CA) públicas. También puede escalar

32 verticalmente y replicar contenido dentro de las regiones y usar


herramientas de administración de certificados estándar.

 Integración con otros servicios de Azure. Puede integrar Key


Vault con cuentas de almacenamiento, registros de contenedor,
centros de eventos y muchos más servicios de Azure.

Dado que a las identidades de Azure AD se les puede conceder acceso


para usar secretos de Azure Key Vault, las aplicaciones con identidades
de servicio administradas habilitadas pueden adquirir de forma

automática y sin problemas los secretos que necesiten.


RESUMEN
Como seguramente sabrá, por lo general el cifrado es la última capa

de defensa frente a los atacantes y, por tanto, una parte importante del
enfoque por capas para proteger los sistemas. Azure proporciona
funcionalidades y servicios integrados para cifrar y proteger los datos
de una exposición no deseada. La protección de datos del cliente

almacenados dentro de los servicios de Azure es de gran importancia


para Microsoft y debe incluirse en cualquier diseño. Servicios

fundamentales, como Azure Storage, Azure Virtual Machines, Azure

33 SQL Database y Azure Key Vault, pueden ayudar a proteger el entorno

mediante el cifrado.
INFORMACIÓN GENERAL
DE LOS CERTIFICADOS DE
AZURE
Como se ha mencionado anteriormente, la Seguridad de la capa de
transporte (TLS) es la base para el cifrado de datos de sitios web en
tránsito. TLS usa certificados para cifrar y descifrar los datos. Sin
embargo, estos certificados tienen un ciclo de vida que requiere
administración de administradores. Un problema de seguridad común

con los sitios web es cuando tienen certificados de TLS expirados que
abren vulnerabilidades de seguridad.
34
Los certificados que se usan en Azure son de tipo x.509 v3 y pueden
estar firmados por una autoridad certificada de confianza, o bien estar

autofirmados. Un certificado autofirmado está firmado por su propio


creador; por tanto, no es de confianza de forma predeterminada. La
mayoría de los exploradores pueden pasar por alto este problema. Sin

embargo, solo debe usar certificados autofirmados cuando desarrolle


y pruebe sus servicios en la nube. Estos certificados pueden contener

una clave privada o pública y tener una huella digital que proporcione
un medio para identificar un certificado de manera inequívoca. Esta
huella digital se utiliza en el archivo de configuración de Azure para

identificar qué certificado debe usar un servicio en la nube.


Tipos de certificados

En Azure, los certificados se usan con dos finalidades principales y se

les asigna una designación concreta en función de su uso previsto.

1. Los certificados de servicio se usan para los servicios en la


nube.

2. Los certificados de administración se usan para la

autenticación con la API de administración.

Certificado de servicio

Los certificados de servicio están vinculados a los servicios en la nube


y posibilitan la comunicación segura hacia el servicio y desde este. Por

ejemplo, si implementa un sitio web, le interesaría proporcionar un


35 certificado que pueda autenticar un punto de conexión HTTPS
expuesto. Los certificados de servicio, especificados en la definición de
servicio, se implementan de forma automática en la máquina virtual

que ejecute una instancia del rol.

Puede cargar certificados de servicio en Azure mediante Azure Portal o


mediante el modelo de implementación clásica. Los certificados de
servicio están asociados a un servicio en la nube específico. Se asignan

a una implementación en el archivo de definición de servicio.

Puede administrar certificados de servicio de forma independiente de


los servicios y puede tener diferentes personas administrándolos. Por

ejemplo, un desarrollador podría cargar un paquete de servicio que


hiciera referencia a un certificado que un administrador de TI hubiera

cargado previamente en Azure. Un administrador de TI puede


administrar y renovar el certificado (cambiando la configuración del

servicio) sin necesidad de cargar un nuevo paquete de servicio. La


actualización sin un nuevo paquete de servicio es posible porque el
nombre lógico, el nombre del almacén y la ubicación del certificado se
encuentran en el archivo de definición de servicio, mientras que la

huella digital del certificado se especifica en el archivo de configuración

de servicio. Para actualizar el certificado, solo es necesario cargar un


nuevo certificado y cambiar el valor de la huella digital en el archivo de

configuración de servicio.

Certificados de administración

Los certificados de administración permiten autenticar con el modelo


de implementación clásica. Muchos programas y herramientas (como
Visual Studio o Azure SDK) usan estos certificados para automatizar la
36
configuración y la implementación de diferentes servicios de Azure.
Pero estos tipos de certificados no están relacionados con los servicios
en la nube.

Uso de Azure Key Vault con certificados

Puede almacenar los certificados en Azure Key Vault, como cualquier

otro secreto. Sin embargo, Key Vault proporciona características

adicionales más allá de la administración de certificados típica.

 Puede crear certificados en Key Vault o importar certificados


existentes.

 Puede almacenar y administrar de manera segura los

certificados sin ninguna interacción con el material de clave

privada.
 Puede crear una directiva que indique a Key Vault cómo

administrar el ciclo de vida de un certificado.


 Puede proporcionar información de contacto para la
notificación de eventos del ciclo de vida de caducidad y
renovación de certificados.

 Puede renovar certificados de forma automática con emisores

seleccionados: proveedores de certificados x509 y entidades de


certificación asociados con Key Vault.

La automatización de la administración de certificados ayuda a reducir

o eliminar la tarea de la administración manual de certificados,


propensa a errores.

37
PROTECCIÓN DE LA RED
La protección de la red frente a los ataques cibernéticos y el acceso
no autorizado es una parte importante de cualquier arquitectura. En

esta sección examinaremos cómo es la seguridad de red, cómo se


integra un enfoque en capas con la arquitectura y cómo puede

ayudarle Azure a proporcionar seguridad de red para su entorno.

Una estrategia en capas para la seguridad de red

Seguramente haya observado que un hilo común en este módulo ha

sido el énfasis en adoptar una estrategia en capas para la seguridad.


Este enfoque también se recomienda en la capa de red. No basta con
centrarse en proteger el perímetro de red ni en la seguridad de red
entre los servicios dentro de una red. Una estrategia en capas
38
proporciona varios niveles de protección, por lo que si un atacante
atraviesa una capa, se dispone de más protecciones para limitar

ataques posteriores.

Echemos un vistazo a cómo Azure puede proporcionar las


herramientas para una estrategia en capas orientada a la protección de

la superficie de red.

Protección de Internet

Si comenzamos por el perímetro de la


red, nos centramos en limitar y eliminar
los ataques que proceden de Internet. En

primer lugar, se recomienda evaluar los

recursos accesibles desde Internet y permitir solo la comunicación


entrante y saliente cuando sea necesario. Asegúrese de identificar

todos los recursos que permiten el tráfico de red entrante de cualquier


tipo, y luego asegúrese de que estén restringidos solo a los puertos y
protocolos necesarios. Azure Security Center es un excelente lugar para
buscar esta información, ya que identifica los recursos accesibles desde

Internet que no tienen grupos de seguridad de red asociados, así como

los recursos que no están protegidos detrás de un firewall.

¿Qué es un firewall?

Un firewall es un servicio que otorga acceso a un servidor según la


dirección IP de origen de cada solicitud. Con las reglas de firewall se
especifican intervalos de direcciones IP. Solo los clientes de estas
direcciones IP especificadas podrán tener acceso al servidor. Por lo
general, las reglas de firewall también incluyen información específica
39
de puertos y protocolos de red.

Para proporcionar protección de entrada en el perímetro, dispone de

varias opciones.

• Azure Firewall es un servicio de seguridad de red administrado


y basado en la nube que protege los recursos de Azure Virtual

Network. Se trata de un firewall como servicio con estado


completo que incorpora alta disponibilidad y escalabilidad a la
nube sin restricciones. Azure Firewall proporciona protección

entrante para protocolos no HTTP/S. Los ejemplos de


protocolos no HTTP/S incluyen: Protocolo de escritorio remoto

(RDP), Secure Shell (SSH) y Protocolo de transferencia de


archivos (FTP). Además, proporciona protección de salida de
nivel de red para todos los puertos y protocolos, y protección

de nivel de aplicación para HTTP/S saliente.

• Azure Application Gateway es un equilibrador de carga que


incluye un firewall de aplicaciones web (WAF) que ofrece

protección frente a vulnerabilidades comunes conocidas de

sitios web. Está diseñado para proteger el tráfico HTTP.

• Las aplicaciones virtuales de red (NVA) son una opción ideal


para los servicios no HTTP o para configuraciones avanzadas, y

son similares a las aplicaciones de firewall de hardware.

Bloqueo de ataques de denegación de servicio distribuido (DDoS)

Cualquier recurso expuesto a Internet está en riesgo de sufrir un ataque


por denegación de servicio. Estos tipos de ataques intentan
40
sobrecargar un recurso de red mediante el envío de tantas solicitudes

que el recurso se vuelve lento o deja de responder.

Al combinar Azure DDoS Protection con los procedimientos

recomendados de diseño de aplicaciones, contribuye a la defensa


frente a los ataques DDoS. DDoS Protection aprovecha la escala y la
elasticidad de la red global de Microsoft para incorporar capacidad de

mitigación DDoS a cada región de Azure. El servicio Azure DDoS

Protection protege las aplicaciones de Azure al supervisar el tráfico en


el borde de red de Azure antes de que afecte a la disponibilidad del

servicio. En un intervalo de pocos minutos tras la detección del ataque,


recibe una notificación mediante métricas de Azure Monitor.

Este diagrama muestra el tráfico de red que llega a Azure de los clientes

y un atacante. La protección contra DDoS de Azure identifica el intento


del atacante de sobrecargar la red y evita que más tráfico llegue a los

servicios de Azure. El tráfico legítimo de los clientes sigue llegando a


Azure sin ninguna interrupción del servicio.

Azure DDoS Protection proporciona los siguientes niveles de servicio:

 Básico: este servicio está habilitado de forma automática como


parte de la plataforma Azure. La supervisión continua del tráfico

y la mitigación en tiempo real de ataques de nivel de red


comunes ofrecen la misma defensa que usan los servicios en
41
línea de Microsoft. La red global de Azure se usa para distribuir
y mitigar el tráfico de ataques en las distintas regiones.

 Estándar: este nivel de servicio ofrece funcionalidades

adicionales de mitigación adaptadas específicamente a los


recursos de Microsoft Azure Virtual Network. DDoS Protection
Estándar es fácil de habilitar y no requiere ningún cambio en la
aplicación. Las directivas de protección se ajustan mediante

algoritmos dedicados de supervisión del tráfico y aprendizaje

automático. Las directivas se aplican a direcciones IP públicas


asociadas a recursos implementados en redes virtuales, como

Azure Load Balancer y Application Gateway. La protección


estándar frente a DDoS puede mitigar los tipos de ataques

siguientes:
o Ataques volumétricos. El objetivo del atacante es

desbordar la capa de red con una gran cantidad de


tráfico aparentemente legítimo.

o Ataques de protocolo. Estos ataques vuelven un destino

inaccesible al aprovechar una vulnerabilidad en la pila


de protocolo de capa 3 y 4.

o Ataques de nivel de recurso (aplicación). Estos ataques


van dirigidos a paquetes de aplicaciones web para

interrumpir la transmisión de datos entre hosts.

Control del tráfico dentro de la red virtual

Seguridad de red virtual

42 Una vez dentro de una red virtual (VNet),

es fundamental que limite la


comunicación entre los recursos a solo la
imprescindible.

En la comunicación entre las máquinas virtuales, los grupos de


seguridad de red (NSG) son una pieza fundamental para restringir las

comunicaciones innecesarias.

Un grupo de seguridad de red permite filtrar el tráfico de red hacia y

desde los recursos de Azure de una red virtual de Azure. Un NSG puede
contener varias reglas de seguridad entrantes y salientes que permiten
filtrar el tráfico de y a los recursos por dirección IP de origen y destino,

puerto y protocolo. Proporcionan una lista de comunicaciones


permitidas y denegadas hacia y desde las interfaces de red y las

subredes, y son totalmente personalizables.

Puede quitar completamente el acceso público a Internet de los


servicios. Para ello debe restringir el acceso a los puntos de conexión

de servicio. Con los puntos de conexión de servicio, el acceso a los

servicios de Azure se puede limitar a la red virtual.

Integración de red

Es habitual disponer ya de una

infraestructura de red que debe

integrarse para proporcionar


comunicación desde las redes locales o
para proporcionar una comunicación mejorada entre los servicios de

43 Azure. Existen varias maneras clave de administrar esta integración y


mejorar la seguridad de la red.

Las conexiones de red privada virtual (VPN) son una manera habitual

de establecer canales de comunicación segura entre las redes. La


conexión entre Microsoft Azure Virtual Network y un dispositivo de
VPN local es una excelente manera de proporcionar una comunicación

segura entre su red y su red virtual en Azure.

Para proporcionar una conexión privada dedicada entre una red y


Azure, se puede usar Azure ExpressRoute. ExpressRoute permite
ampliar las redes locales a la nube de Microsoft a través de una

conexión privada que facilita un proveedor de conectividad. Con


ExpressRoute, se pueden establecer conexiones con servicios en la

nube de Microsoft, como Microsoft Azure, Office 365 y Dynamics 365.


Las conexiones de ExpressRoute mejoran la seguridad de la
comunicación local al enviar este tráfico a través del circuito privado en

lugar de hacerlo a través de la red pública de Internet. No es preciso


permitir que los usuarios finales accedan a estos servicios a través de
la red pública de Internet, y puede enviar este tráfico a través de
aplicaciones, lo que mejora la inspección del tráfico.

44
RESUMEN
Un enfoque en capas para la seguridad de la red ayuda a reducir el

riesgo de exposición a ataques basados en la red. Azure proporciona


varios servicios y funcionalidades para proteger los recursos accesibles
desde Internet, los recursos internos y la comunicación entre redes
locales. Estas características permiten la creación de soluciones seguras

en Azure.

También puede combinar varios servicios de redes y seguridad de

Azure para administrar la seguridad de red y proporcionar mayor


45
protección por capas. Por ejemplo, puede usar Azure Firewall para
proteger el tráfico de Internet entrante y saliente, y los grupos de

seguridad de red para limitar el tráfico a los recursos dentro de las

redes virtuales.
PROTEGER LOS
DOCUMENTOS
COMPARTIDOS
Microsoft Azure Information Protection (en ocasiones denominada
AIP) es una solución basada en la nube que ayuda a las organizaciones

a clasificar y, opcionalmente, a proteger documentos y correos


electrónicos mediante la aplicación de etiquetas.

Las etiquetas se pueden aplicar automáticamente en función de reglas


y condiciones. También se pueden aplicar de forma manual. Además,

46 puede guiar a los usuarios para que elijan las etiquetas recomendadas

con una combinación de pasos automáticos y manuales.

En la siguiente captura de pantalla se ve un ejemplo de AIP en acción


en el equipo de un usuario. En este ejemplo, el administrador ha

configurado una etiqueta con reglas que detectan datos


confidenciales. Cuando un usuario guarda un documento de

Microsoft Word que contiene un número de tarjeta de crédito, se


muestra una información sobre herramientas personalizada. La

información sobre herramientas recomienda etiquetar el archivo

como Confidencial: todos los empleados. El administrador configura

esta etiqueta. Si se usa esta etiqueta, se clasifica el documento y se


protege.
Una vez clasificado el contenido, puede realizar un seguimiento y

controlar cómo se usa. Por ejemplo, puede:

 Analizar flujos de datos para obtener información sobre el


negocio
 Detectar comportamientos de riesgo y tomar medidas

correctivas
 Controlar el acceso a documentos

47  Evitar la pérdida de datos o el uso indebido de información

confidencial

Nota

Puede adquirir AIP como una solución independiente o a través de uno


de los siguientes conjuntos de licencias de Microsoft: Enterprise Mobility
+ Security o Microsoft 365 Enterprise.
AZURE ADVANCED
THREAT PROTECTION
Azure Advanced Threat Protection (Azure ATP) es una solución de
seguridad basada en la nube que identifica, detecta y ayuda a

investigar amenazas avanzadas, identidades en peligro y acciones de

infiltrado malintencionadas dirigidas a la organización.

Azure ATP es capaz de detectar ataques y técnicas malintencionados


conocidos, problemas de seguridad y riesgos para la red.

Componentes de Azure ATP

Azure ATP tiene varios componentes.

48
Portal de Azure ATP

Azure ATP tiene su propio portal, donde puede supervisar la actividad

sospechosa y responder a ella. El portal de Azure ATP permite crear la


instancia de Azure ATP y ver los datos recibidos de los sensores de
Azure ATP. También puede usar el portal para supervisar, administrar e
investigar amenazas en el entorno de red. Puede iniciar sesión en el

portal de Azure ATP en [Link] Las cuentas de

usuario deben estar asignadas a un grupo de seguridad de Azure AD

con acceso al portal de Azure ATP para poder iniciar sesión.

Sensor de Azure ATP

Los sensores de Azure ATP se instalan directamente en los


controladores de dominio. El sensor supervisa el tráfico del controlador
de dominio sin necesidad de un servidor dedicado ni de configurar la

creación de reflejo del puerto.

Servicio en la nube de Azure ATP

El servicio en la nube de Azure ATP se ejecuta en la infraestructura de


Azure y actualmente está implementado en Estados Unidos, Europa y

Asia. El servicio en la nube de Azure ATP está conectado a Microsoft

Intelligent Security Graph.

49

Compra de Azure Advanced Threat Protection


Azure ATP está disponible como parte del conjunto de aplicaciones

Enterprise Mobility + Security E5 (EMS E5) y como licencia


independiente. Puede adquirir una licencia directamente desde la
página Opciones de precios de Enterprise Mobility + Security o a través
del modelo de licencia Proveedor de soluciones en la nube (CSP). No

está disponible a través de Azure Portal.

50
COMPRENSIÓN DE LAS
CONSIDERACIONES
SOBRE SEGURIDAD PARA
LAS SOLUCIONES DE
ADMINISTRACIÓN DEL
CICLO DE VIDA DE LAS
APLICACIONES
El Ciclo de vida de desarrollo de seguridad de Microsoft

(SDL) introduce consideraciones sobre seguridad y privacidad en


51
todas las fases del proceso de desarrollo. Ayuda a los desarrolladores

a crear software altamente seguro, abordar los requisitos de

cumplimiento de seguridad y reducir los costos de desarrollo. Las


guías, los procedimientos recomendados, las herramientas y los
procesos de SDL son prácticas que se usan internamente en Microsoft
para crear productos y servicios más seguros.

Desde la primera vez que compartimos SDL en 2008, las prácticas se


han actualizado continuamente para abarcar nuevos escenarios, como

servicios en la nube, IoT e IA.

Aprendizaje

La seguridad es trabajo de todos los usuarios. Los desarrolladores,


ingenieros de servicio y jefes de proyectos y de programas deben
conocer los aspectos básicos de la seguridad. Todos ellos deben saber

cómo compilar la seguridad en el software y los servicios para que los


productos sean más seguros, a la vez que satisfacen las necesidades
empresariales y entregan el valor de usuario. Un entrenamiento
eficiente complementará y reforzará las directivas de seguridad,

prácticas de SDL, estándares y requisitos de seguridad de software, y

se guiará por información obtenida a través de los datos o las


capacidades técnicas nuevas disponibles.

Aunque la seguridad es un trabajo que recae en todos los usuarios,

cabe recordar que no todos deben ser expertos en seguridad ni


esforzarse en llegar a ser un evaluador de pruebas de penetración
experto. Sin embargo, garantizar que todos entiendan la perspectiva

del atacante, sus objetivos y el arte de lo posible ayudará a captar la

52 atención de todo el mundo y a aumentar la base de conocimiento


colectiva.

Definición de requisitos de seguridad

La seguridad y la privacidad son un aspecto fundamental para


desarrollar aplicaciones y sistemas muy seguros. Independientemente

de la metodología de desarrollo que se use, los requisitos de seguridad


se deben actualizar continuamente para abordar los cambios en la
funcionalidad necesaria y en el escenario de las amenazas. El tiempo
óptimo para definir los requisitos de seguridad es durante las fases

iniciales de diseño y planeación. Una planeación temprana permite a

los equipos de desarrollo integrar la seguridad de maneras que

minimizan la interrupción.
Algunos de los factores que afectan a los requisitos de seguridad son

los siguientes:

 Requisitos legales y del sector


 Estándares internos y procedimientos de codificación

 Revisión de los incidentes anteriores

 Amenazas conocidas

Se debe realizar un seguimiento de estos requisitos a través de un


sistema de seguimiento de trabajo o de la telemetría que se deriva de

la canalización de ingeniería.

Definición de métricas e informes de cumplimiento

Es fundamental que las organizaciones definan los niveles mínimos


aceptables de calidad de seguridad y que los equipos de ingeniería
53
mantengan la responsabilidad de cumplir esos criterios. La definición

de estas expectativas ayuda en una fase temprana a los equipos a


comprender los riesgos asociados a las incidencias de seguridad,

identificar y corregir los defectos de seguridad durante el desarrollo y


aplicar los estándares en todo el proyecto. Establecer una barra de

seguridad significativa implica definir claramente los umbrales de

gravedad de las vulnerabilidades de seguridad y ayuda a establecer un


plan de acción cuando se encuentran las vulnerabilidades. Por ejemplo,
todas las vulnerabilidades conocidas que se detecten con una
clasificación de gravedad "crítica" o "importante" deben corregirse en

un período de tiempo específico.

Para realizar el seguimiento de los indicadores clave de rendimiento

(KPI) y asegurarse de que se completan las tareas de seguridad, el


seguimiento de errores y los mecanismos de seguimiento del trabajo
que usa una organización (como Azure DevOps) deben permitir que

los defectos de seguridad y los elementos de trabajo de seguridad se


etiqueten claramente como seguridad, y se marquen con la gravedad
de seguridad adecuada. Esto permite un seguimiento preciso y la
generación de informes de trabajo de seguridad.

Puede obtener más información sobre cómo definir métricas e


informes de cumplimiento en los siguientes recursos:

 Ejemplo de barra de errores de privacidad de SDL


 Agregar o modificar un campo de Azure DevOps para realizar
un seguimiento del trabajo
 Ejemplo de barra de errores de seguridad de SDL

Realización del modelado de amenazas

54
El modelado de amenazas debe usarse en entornos en los que haya un
riesgo de seguridad considerable. Como práctica, permite a los equipos

de desarrollo tener en cuenta, documentar y analizar las implicaciones


de seguridad de los diseños en el contexto de su entorno operativo
planificado de forma estructurada. Aplicar un enfoque estructurado a
los escenarios de amenaza ayuda a los equipos a identificar de forma

más eficiente y económica las vulnerabilidades de seguridad,

determinar los riesgos derivados de esas amenazas y, después, realizar


las selecciones de las características de seguridad y establecer las

mitigaciones adecuadas. Se puede aplicar el modelado de amenazas

en el nivel de componente, aplicación o sistema.

Puede encontrar más información disponible en Modelado de


amenazas.
Establecimiento de requisitos de diseño

El SDL suele considerarse como varias actividades de seguridad que

ayudan a los ingenieros a implementar características más seguras, lo


que significa que las características están bien diseñadas con respecto

a la seguridad. Para lograrlo, los ingenieros suelen basarse en

características de seguridad como la criptografía, la autenticación y el


registro. En muchos casos, la selección o la implementación de las
características de seguridad han demostrado ser tan complicadas que
las opciones de implementación o diseño pueden dar lugar a

vulnerabilidades. Por lo tanto, es fundamental que se apliquen de


forma uniforme y con una comprensión coherente de la protección que
proporcionan.

Definición y uso de estándares de criptografía


55
Con el aumento de la informática móvil y en la nube, es importante

garantizar que todos los datos, incluida la información confidencial de


seguridad y la administración y el control de los datos, se protejan
contra la modificación o divulgación no intencionadas cuando se
transmiten o almacenan. Normalmente, el cifrado se usa para lograr

esta protección. Pero una elección incorrecta al usar cualquier aspecto

de la criptografía puede tener un resultado catastrófico. Por lo tanto,


es mejor desarrollar estándares de cifrado claros que proporcionen

información específica sobre cada elemento de la implementación del


cifrado.

El cifrado debe estar en manos de expertos. Una regla general correcta

consiste en usar solo las bibliotecas de cifrado que haya revisado el


sector y asegurarse de que se implementan de forma que se puedan

reemplazar fácilmente en caso necesario.

Para obtener más información sobre el cifrado, consulte el documento


técnico Recomendaciones criptográficas de Microsoft SDL.

Administración de los riesgos de seguridad mediante el uso de

componentes de terceros

La gran mayoría de los proyectos de software de hoy en día se


compilan mediante el uso de componentes de terceros (tanto

comerciales como de código abierto). Al seleccionar los componentes


de terceros que se van a usar, es importante comprender el impacto
que podría suponer en estos una vulnerabilidad de seguridad en la
seguridad del sistema más grande en el que están integrados. El hecho

56 de tener un inventario preciso de estos componentes y un plan para

responder cuando se descubran nuevas vulnerabilidades allanará el


camino hacia la mitigación de los riesgos. Con todo, también debe
tener en cuenta la validación adicional, según la tolerancia al riesgo de
su organización, el tipo de componente que se usa y el posible impacto
de una vulnerabilidad de seguridad.

Obtenga más información sobre la administración de los riesgos de

seguridad al usar componentes de terceros en los siguientes recursos:

 Código abierto
 Administrar los riesgos de seguridad inherentes al uso de

componentes de terceros
 Administrar los riesgos de seguridad inherentes al uso de

software de código abierto


Uso de herramientas aprobadas

Defina y publique una lista de herramientas aprobadas y sus

comprobaciones de seguridad asociadas, como las opciones y


advertencias del compilador y el enlazador. Los ingenieros deben

esforzarse por usar la versión más reciente de las herramientas

aprobadas (como las versiones de compilador) y utilizar nuevas


capacidades y protecciones de análisis de seguridad.

Para obtener más información, consulte:

 Herramientas recomendadas, compiladores y opciones para


x86, x64 y ARM (documento técnico)
 Recursos de SDL

Realización de pruebas de seguridad de análisis estático


57
Analizar el código fuente antes de la compilación proporciona un
método muy escalable de revisión de código de seguridad y ayuda a

garantizar que se siguen las directivas de codificación segura. Las


Pruebas de seguridad de análisis estático (SAST) normalmente se
integran en la canalización de confirmación para identificar las
vulnerabilidades cada vez que se compila o empaqueta el software.

Pero algunas ofertas se integran en el entorno del desarrollador para

detectar ciertos errores, como la existencia de funciones no seguras u


otras funciones prohibidas y, luego, reemplazarlas por alternativas más

seguras mientras el desarrollador diseña el código de forma activa. No

existe una solución única; los equipos de desarrollo deben decidir la

frecuencia óptima para realizar las pruebas SAST y considerar la


posibilidad de implementar varias tácticas para equilibrar la
productividad con una cobertura de seguridad adecuada.
Puede encontrar más información disponible en los siguientes

recursos:

 Microsoft DevSkim en GitHub


 Reglas de restricción de seguridad de Roslyn

 Visual Studio Marketplace


 Análisis de la calidad del código de C/C++ mediante el análisis

de código
 Microsoft BinSkim en GitHub

Realización de pruebas de seguridad de análisis dinámico

La comprobación en tiempo de ejecución del software totalmente


compilado o empaquetado realiza la comprobación de la funcionalidad
que solo es aparente cuando todos los componentes están integrados

58 y en ejecución. Esta comprobación se consigue mediante una


herramienta, un conjunto de ataques compilados previamente o

herramientas que supervisan específicamente el comportamiento de la


aplicación en busca de daños en la memoria, incidencias de privilegios
de usuarios y otros problemas de seguridad críticos. Como sucede con

las pruebas SAST, no existe una solución única y, mientras que algunas

herramientas (como las de examen de aplicaciones web) se pueden


integrar más fácilmente en la canalización de CI/CD, otras Pruebas de
seguridad de aplicaciones dinámicas (DAST), como la aplicación de

pruebas de vulnerabilidad ante datos aleatorios o inesperados,


requieren otro enfoque.

Puede encontrar más información disponible en los siguientes

recursos:

 Visual Studio Marketplace


 Pruebas de penetración automatizadas con pruebas de

vulnerabilidad ante datos aleatorios o inesperados de caja


blanca

Realización de pruebas de penetración

La prueba de penetración es un análisis de seguridad de un sistema de

software que lo realizan profesionales de seguridad experimentados


que simulan las acciones de un hacker. El objetivo de una prueba de
penetración es revelar posibles vulnerabilidades derivadas de errores
de codificación, errores de configuración del sistema u otros puntos
débiles de la implementación operativa. Las pruebas de penetración

suelen encontrar la variedad más amplia de vulnerabilidades y


normalmente se realizan junto con las revisiones de código

automatizadas y manuales para proporcionar un mayor nivel de análisis


59
del que normalmente sería posible.

Puede encontrar más información disponible en los siguientes

recursos:

 Analizador de superficie expuesta a ataques


 Ejemplo de barra de errores de seguridad de SDL

Establecimiento de un proceso de respuesta estándar a los

incidentes

La preparación de un plan de respuesta a incidentes es crucial para


enfrentarse a las nuevas amenazas que puedan surgir con el tiempo.

Debe crear su plan en coordinación con el Equipo de respuesta a

incidentes de seguridad de productos (PSIRT) de su organización. El

plan de respuesta ante incidentes debería:


 Incluir la información de contacto de la persona a la que se

deberá acudir si se produce una emergencia de seguridad.


 Establecer el protocolo para el servicio de seguridad, incluidos
los planes para de código heredado de otros grupos de la
organización y para el código de terceros.

 Probarse antes de que sea necesario.

Para obtener más información sobre las respuestas a los incidentes,


consulte lo siguiente:

 Uso de Azure Security Center para dar respuesta a los


incidentes
 Respuesta a los incidentes de Microsoft y responsabilidad
compartida para la informática en la nube

 Centro de respuestas de seguridad de Microsoft


60
Mediante la inclusión de consideraciones sobre seguridad y
cumplimiento normativo en todas las fases del proceso de desarrollo,

los desarrolladores pueden reducir la probabilidad de que se


produzcan vulnerabilidades en los productos y servicios, y evitar la
repetición de los mismos errores de seguridad. Del mismo modo, la

integración de seguridad en todo el ciclo de vida de las operaciones


ayudará a mantener la integridad de esos productos y servicios. Los
procedimientos de garantía de seguridad operativa deben alinearse
con sus procesos de desarrollo; esto dará como resultado una inversión

menor de tiempo y dinero en la evaluación de prioridades y respuesta

posterior. Además, proporcionará a sus clientes la tranquilidad de saber

que sus productos son muy seguros.


RESUMEN
En este módulo se han tratado los conceptos básicos para proteger la
infraestructura y los datos cuando se trabaja en la nube.

Defensa en profundidad es el tema principal: pensar en la seguridad


como un problema relacionado con varias capas y vectores. Las

amenazas surgen de lugares inesperados y su intensidad puede

sorprendernos.

Azure puede proporcionarnos una ayuda inmediata para hacer frente


a los problemas de seguridad. Uno de los primeros pasos que debemos

tomar es evaluar cuánta ayuda de Azure podemos usar en función de


61 si vamos a emplear IaaS, PaaS o SaaS.

Azure Security Center centraliza gran parte de la ayuda que Azure tiene
que ofrecer. Proporciona un único panel, que ofrece una vista sobre

muchos de los servicios y ayuda a garantizar que está siguiendo los


procedimientos recomendados. Los algoritmos de aprendizaje
automático que se actualizan continuamente le ayudan a identificar si

las amenazas más recientes van a atacar a sus recursos. Y ayuda a su


organización a mitigar las amenazas.

Este módulo es simplemente introductorio. La seguridad es un tema


amplio y complejo, por lo que sea cual sea su enfoque en la nube, es

necesaria una formación continua en materia de seguridad. Pero este

módulo debe encaminarle en la dirección correcta, para que sepa lo

que necesita aprender a continuación.


1

Cloud Services básico:


administración de servicios
con Azure Portal
BIENVENIDA
Recorra las características y servicios de Azure Portal y personalice el

portal.

En este módulo, aprenderá a:

• Obtener información sobre las opciones de administración de

Azure

• Desplazarse por Azure Portal

• Personalización del panel

• Más información sobre cómo participar en servicios y


2
características en versión preliminar

Requisitos previos

• Conocimiento de términos y conceptos básicos de informática


en la nube

Introducción 3 min

Opciones de administración de Azure 7 min

Desplazarse por el portal 10 min

Ejercicio: Trabajo con paneles 10 min

Ejercicio: Uso de Azure Portal 10 min

Paneles de Azure Portal 15 min


Ejercicio: Personalización del panel 10 min

Acceso a características en versión preliminar pública y privada

5 min

Resumen 3 min

3
INTRODUCCIÓN
Azure es una plataforma en la nube que proporciona los recursos de

proceso, almacenamiento y red necesarios para compilar aplicaciones


hospedadas en la nube. Como usuario nuevo, lo más probable es que
empiece a interactuar con Azure a través de Azure Portal. Azure Portal
le permite crear y administrar todos los recursos de Azure. Por ejemplo,

puede configurar una nueva base de datos, aumentar la capacidad de


proceso de las máquinas virtuales y supervisar el costo mensual.
4 También es una gran herramienta de aprendizaje, ya que puede
inspeccionar todos los recursos disponibles y usar asistentes guiados

para crear los que necesite.

Aquí obtendrá información sobre cómo iniciar sesión en el portal y

desplazarse por su interfaz. También aprenderá a personalizar el panel,


para que sea mas cómodo buscar y supervisar los servicios más

importantes.

Objetivos de aprendizaje

En este módulo, aprenderá a:


• Obtener información sobre las opciones de administración de

Azure
• Desplazarse por Azure Portal

• Personalización del panel


OPCIONES DE
ADMINISTRACIÓN DE
AZURE
Puede configurar y administrar Azure mediante una amplia gama de
plataformas y herramientas. Hay herramientas disponibles para la línea
de comandos, kits de desarrollo de software (SDK) específicos del
lenguaje, herramientas de desarrollo, herramientas para la migración y

muchas otras.

5 Entre las herramientas que se usan habitualmente para la


administración y las interacciones diarias, se incluyen las siguientes:

• Azure Portal para interactuar con Azure a través de una


interfaz gráfica de usuario (GUI)

• Azure PowerShell y la interfaz de la línea de comandos de


Azure (CLI) para las interacciones con Azure de línea de

comandos y basadas en automatización

• Azure Cloud Shell para una interfaz de línea de comandos

basada en web

• Azure Mobile App para supervisar y administrar los recursos

desde el dispositivo móvil


Azure Portal

Azure Portal es un sitio web público al que se puede acceder con un


explorador web. Una vez que inicie sesión con la cuenta de Azure,
podrá crear, administrar y supervisar todos los servicios de Azure

disponibles. Puede identificar un servicio que esté buscando y obtener

vínculos de ayuda para temas concretos, además de implementar,

administrar y eliminar recursos. También ofrece guías para tareas


administrativas complejas mediante asistentes e información sobre

herramientas.

En la vista del panel se proporciona información general sobre el

entorno de Azure. Para personalizar el panel, mueva los iconos y


cambie su tamaño; también puede optar por mostrar los servicios que
le interesen.

El portal no proporciona ninguna forma de automatizar tareas

repetitivas. Por ejemplo, para configurar varias máquinas virtuales,

tendría que crearlas una a una completando el asistente para cada una
de ellas. Este proceso hace que el enfoque del portal lleve mucho

tiempo y sea propenso a errores si se trata de tareas complejas.

Azure PowerShell

Azure PowerShell es un módulo que se puede instalar para Windows


PowerShell o para PowerShell Core, una versión multiplataforma de

PowerShell que se ejecuta en Windows, Linux o macOS. Azure

PowerShell le permite conectarse a su suscripción de Azure y


administrar los recursos. Windows PowerShell y PowerShell Core

proporcionan varios servicios, como la ventana de shell y el análisis de


comandos. Después, Azure PowerShell agrega los comandos
específicos de Azure.

Por ejemplo, Azure PowerShell proporciona el comando New-AzVM,

7 que crea una máquina virtual de forma automática dentro de la


suscripción de Azure. Para usarlo, inicie PowerShell, instale el módulo

de Azure PowerShell, inicie sesión en la cuenta de Azure mediante el


comando Connect-AzAccount y, después, emita un comando, por
ejemplo:

PowerShell

New-AzVM `

-ResourceGroupName "MyResourceGroup" `

-Name "TestVm" `

-Image "UbuntuLTS" `

...
La creación de scripts de administración y el uso de herramientas de

automatización es una manera eficaz de optimizar el flujo de trabajo.


Puede automatizar tareas repetitivas. Una vez que se comprueba un
script, se ejecuta de forma coherente, lo que puede reducir el número
de errores. Otro entorno de scripting es la CLI de Azure.

CLI de Azure

La CLI de Azure es un programa de línea de comandos multiplataforma


que se conecta a Azure y ejecuta comandos administrativos en los

recursos de Azure. Multiplataforma significa que se puede ejecutar en


Windows, Linux o macOS. Por ejemplo, para crear una máquina virtual,
podría abrir una ventana del símbolo del sistema, iniciar sesión en
Azure mediante el comando az login, crear un grupo de recursos y
luego usar un comando como este:
8
CLI de Azure

az vm create \

--resource-group MyResourceGroup \

--name TestVm \

--image UbuntuLTS \

--generate-ssh-keys \

...
Azure Cloud Shell

Azure Cloud Shell es un shell interactivo, autenticado y accesible desde


el explorador, que sirve para administrar los recursos de Azure.
Proporciona la flexibilidad de poder elegir la experiencia de shell que

mejor se adapte a la forma de trabajar, ya sea Bash o PowerShell.

Puede cambiar entre los dos shells y ambos admiten la CLI de Azure y

el módulo de Azure PowerShell. En Bash se usa la CLI de Azure de forma


predeterminada (con el comando az preinstalado), pero puede
cambiar a PowerShell Core en Linux si escribe pwsh. En el entorno de

PowerShell ya están instaladas las dos herramientas de la CLI. Además

de estas herramientas administrativas, Cloud Shell tiene un conjunto

de herramientas de desarrollo, editores de texto y otras herramientas


disponibles, como las siguientes:
Herramientas para desarrolladores

• .NET Core

• Python

• Java

• [Link]

• Go

Editores

• code (Editor de Cloud Shell)

• vim

10 • nano

• emacs

Otras herramientas

• git

• maven

• make

• npm

• Y mucho más...

Puede crear, compilar e implementar aplicaciones directamente desde

este entorno basado en explorador. Y también es persistente: se le


pedirá que cree una cuenta de Azure Storage cuando acceda a Azure

Cloud Shell. Este área de almacenamiento se usa como la carpeta


$HOME y los scripts o datos que coloque aquí se conservan entre
sesiones. Cada suscripción tiene una cuenta de almacenamiento única
asociada para que pueda mantener los datos y las herramientas

específicas que necesita para cada cuenta que administre.

En Microsoft Learn, se usará Cloud Shell en muchos de los ejercicios


interactivos para probar las características de Azure.

Azure Mobile App

11

Microsoft Azure Mobile App permite acceder, administrar y supervisar


todas las cuentas y recursos de Azure desde una tableta o un teléfono
Android o iOS. Una vez instalada, podrá:

 Comprobar el estado actual y métricas importantes de los

servicios
 Mantenerse informado con notificaciones y alertas sobre

problemas de estado importantes

 Diagnosticar y corregir problemas rápidamente en cualquier


momento y en cualquier lugar

 Revisar las alertas más recientes de Azure

 Iniciar, detener y reiniciar máquinas virtuales o aplicaciones web

 Conectarse a las máquinas virtuales

 Administrar permisos con el control de acceso basado en roles


(RBAC)

 Usar Azure Cloud Shell para ejecutar los scripts guardados o


realizar tareas administrativas ad hoc
12

 Y mucho más...

Otras opciones

También hay SDK de Azure para diferentes lenguajes y marcos de

trabajo, así como API de REST que puede usar para administrar y

controlar los recursos de Azure mediante programación. Para obtener


una lista completa de las herramientas disponibles, vea la

página Descargas.

Al comenzar con Azure, usará Azure Portal con frecuencia. Veamos el

enfoque del portal con más detalle.


DESPLAZARSE POR EL
PORTAL
Con una cuenta de Azure, puede iniciar sesión en Azure Portal. El

portal es un sitio de administración basado en web que permite

interactuar con todas las suscripciones y los recursos que haya creado.
Casi todo lo que se hace con Azure se puede realizar a través de esta

interfaz web.

Diseño de Azure Portal

Azure Portal es la interfaz gráfica de usuario (GUI) principal para


controlar Microsoft Azure. La mayoría de las acciones de
13
administración se pueden llevar a cabo en el portal, que suele ser la
mejor interfaz para realizar tareas individuales o donde se pueden
examinar las opciones de configuración de forma detallada.
14
Panel de recursos

En la barra lateral izquierda del portal está el panel de recursos, que

enumera los tipos de recursos principales. Tenga en cuenta que Azure


tiene más tipos de recursos que los que se muestran. Los recursos

enumerados forman parte de los favoritos.

Se puede personalizar con los tipos de recursos concretos que suela

crear o administrar con más frecuencia.

El resto de la vista del portal es para los elementos específicos con los

que se está trabajando. La página predeterminada (principal) es Inicio,

pero puede cambiar la vista predeterminada al Panel personalizable


en Configuración. Se tratará la configuración más adelante en esta
unidad.

15
¿Qué es Azure Marketplace?

Azure Marketplace es con frecuencia el punto de partida cuando crea


recursos en Azure. Marketplace permite a los clientes buscar, probar,
comprar y aprovisionar aplicaciones y servicios de cientos de los
principales proveedores de servicios, todos ellos certificados para
ejecutarse en Azure.

El catálogo de soluciones abarca varias categorías del sector,

incluyendo pero sin limitarse a plataformas de contenedores de código


abierto, imágenes de máquina virtual, bases de datos, software de
compilación e implementación de aplicaciones, herramientas para

desarrolladores, detección de amenazas y cadena de bloques. Con

Azure Marketplace, puede aprovisionar soluciones integrales de forma


rápida y confiable, hospedadas en su propio entorno de Azure. En el
momento de redactar este artículo, esta lista incluía más de

8 000 entradas.

Aunque Azure Marketplace está diseñado para profesionales de TI y


desarrolladores de nube interesados en software de TI y comercial, los

asociados de Microsoft también lo usan como un punto de inicio para

todas las actividades conjuntas de comercialización.

Configuración de opciones en Azure Portal

En Azure Portal se muestran varias opciones de configuración,

principalmente en la barra de estado de la parte superior derecha de la

pantalla.

Si está viendo Azure Portal en una pantalla con menos espacio


horizontal, los iconos siguientes pueden estar disponibles mediante un
16
menú de puntos suspensivos (...).

Cloud Shell

Si selecciona el icono de Cloud Shell (>_), se crea una sesión de Azure

Cloud Shell. Si recuerda, Azure Cloud Shell es un shell interactivo,


accesible desde el explorador, para administrar los recursos de Azure.

Ofrece la flexibilidad de poder elegir la experiencia de shell que mejor


se adapte a la forma de trabajar. Los usuarios de Linux pueden elegir

una experiencia de Bash, mientras que los de Windows pueden optar


por PowerShell. Este terminal basado en el explorador permite

controlar y administrar todos los recursos de Azure de la suscripción

actual mediante una interfaz de la línea de comandos integrada en el


portal.
Directorio y suscripción

Seleccione el icono de Libro y filtro para mostrar el panel Directorio

y suscripción.

Azure permite tener más de una suscripción asociada con un directorio.


En el panel Directorio y suscripción, puede cambiar entre

suscripciones. Aquí, puede cambiar la suscripción o cambiar a otro

directorio.

17

Notificaciones

Al seleccionar el icono de campana se muestra el panel Notificaciones.


Este panel muestra las últimas acciones que se han realizado, junto con

su estado.
Configuración

Seleccione el icono de engranaje para cambiar la configuración de

Azure Portal. Esta configuración incluye lo siguiente:

 Retraso de cierre de sesión de inactividad

 Vista predeterminada al iniciar sesión por primera vez

 Opción de flotante o acoplado para el menú del portal

 Temas de contraste y color

 Notificaciones del sistema (a un dispositivo móvil)

 Idioma y formato regional

18
19

Cuando haya cambiado la configuración, seleccione Aplicar para

aceptar los cambios.


Panel Ayuda

Seleccione el icono de signo de interrogación para mostrar el

panel Ayuda. Aquí puede elegir entre varias opciones, incluidas las
siguientes:

 Ayuda y soporte técnico

 Novedades

 Azure Roadmap

 Iniciar paseo guiado

 Métodos abreviados de teclado

 Mostrar diagnósticos
20
 Declaración de privacidad

Opciones de ayuda y soporte técnico

Ayuda y soporte técnico abre el área principal de ayuda y soporte


técnico de Azure Portal e incluye opciones de documentación para

diversas preguntas frecuentes. Aquí, una de las áreas ocultas es el


vínculo Nueva solicitud de soporte que se encuentra en esta página.
Este vínculo es la forma de abrir una incidencia de soporte técnico con
el equipo de Azure.

Todos los clientes de Azure pueden acceder a soporte técnico de


facturación, cuotas y administración de suscripciones. La disponibilidad
del soporte técnico para otros problemas depende del plan de soporte

técnico que tenga.


Al abrir una incidencia de soporte técnico, completará el formulario

mediante las listas desplegables y campos de entrada de texto que se


proporcionan.

Una vez que haya rellenado el formulario, haga clic en Crear para

enviar la solicitud de soporte técnico. El equipo de soporte técnico de

Azure se pondrá en contacto con usted después de enviar la solicitud.

Luego, puede comprobar el estado y los detalles de la solicitud de


soporte técnico en Ayuda > Ayuda y soporte técnico > Todas las

solicitudes de soporte técnico.

Panel de comentarios

El icono de cara sonriente abre el panel Envíenos comentarios. Aquí


puede enviar comentarios a Microsoft sobre Azure. Como parte de los
21
comentarios, puede decidir si Microsoft puede responderlos por correo

electrónico.

Configuración del perfil

Si selecciona su nombre en la esquina superior derecha, se abre un


menú con algunas opciones:

 Iniciar sesión con otra cuenta o cerrar sesión completamente

 Ver el perfil de la cuenta, donde puede cambiar la contraseña

Seleccionar el botón "..." situado en el lado derecho con opciones para:

 Comprobar los permisos

 Ver la factura
 Actualizar la información de contacto.

Si selecciona "..." y después Ver mi factura, Azure le lleva a la

página Administración de costos + facturación - Facturas, que le


ayuda a analizar dónde se generan los costos de Azure.

Azure es un producto grande y la interfaz de usuario de Azure Portal

refleja este ámbito. El enfoque de paneles deslizantes permite navegar

con facilidad hacia delante y hacia atrás por las diversas tareas
administrativas. A continuación experimentará con esta interfaz de

usuario para que obtenga algo de práctica.

Azure Advisor

Por último, Azure Advisor es un servicio gratuito integrado en Azure


que ofrece recomendaciones sobre alta disponibilidad, seguridad,
22
rendimiento, excelencia operativa y costo. Advisor analiza los servicios

implementados y busca maneras de mejorar el entorno en esas cuatro


áreas. Puede ver las recomendaciones en el portal o descargarlas en

formato PDF o CSV.

Con Azure Advisor puede:

 Obtener sugerencias de procedimientos recomendados


proactivas, prácticas y personalizadas.

 Mejorar el rendimiento, la seguridad y la alta disponibilidad de


los recursos, al mismo tiempo que identifica oportunidades
para reducir los costos generales de Azure.

 Obtener recomendaciones con acciones propuestas en línea.


Puede acceder a Azure Advisor si selecciona Advisor en el menú de

navegación, o bien lo busca en el menú Todos los servicios.

23
Vamos a probar algunas de estas características.
EJERCICIO: TRABAJO CON
PANELES
Para completar este módulo, se necesita un espacio aislado. Un espacio

aislado le da acceso a los recursos de Azure. Su suscripción de Azure no


recibirá ningún cobro. El espacio aislado solo se puede usar para realizar
los cursos de Microsoft Learn. Está prohibido el uso con cualquier otro fin

y puede dar lugar a la pérdida permanente del acceso al espacio aislado.

Inicie sesión para activar el espacio aislado.

En esta unidad, aprenderá a trabajar con los paneles de la interfaz de


usuario (IU) de Azure Portal.
24
Activación del espacio aislado de Azure

1. Empiece por activar el espacio aislado de Azure anterior.

2. Una vez activado, inicie sesión en Azure Portal para el espacio

aislado . Asegúrese de usar la misma cuenta con la que ha


activado el espacio aislado.

Exploración de Marketplace

Después de iniciar sesión en Azure Portal, puede comenzar a explorar

las cosas. En estas secciones, dará un paseo por Azure Portal, pero no
creará realmente ningún recurso de Azure.

1. Para comenzar, se verá cómo crear un recurso. En la página

principal, seleccione Crear un recurso.


2. Aparece un panel con la etiqueta Nuevos y se muestra una lista

de categorías en el lado izquierdo, con la etiqueta Azure


Marketplace. Esta vista inicial es parecida a un menú de
"Categorías populares", en el que puede ver algunas de las
categorías más habituales. Si quiere, puede expandir esta lista

para ver todos los elementos del panel Marketplace con el

vínculo Ver todo situado junto al título. Si lo hace, puede volver


al panel Nuevos con el icono de la X de la esquina superior

derecha de cualquiera de los paneles que ha abierto.

3. Al seleccionar cualquiera de los elementos de la lista de Azure


Marketplace, se mostrarán los servicios populares de esa
categoría a la derecha del panel Nuevos. Esta lista es un

subconjunto de la gama completa de recursos de proceso

25 disponibles para esa categoría. Como con Azure Marketplace,


puede seleccionar el vínculo Ver todo para obtener una lista

más completa. En las secciones siguientes se hablará más sobre


esta lista.

4. De vuelta en el panel Nuevos, seleccione Introducción; verá

una lista en el lado derecho del panel en la que se incluyen


servicios como Windows Server 2016 Datacenter, Ubuntu
Server VM, SQL Database, etc. La mayoría de estos elementos

incluyen un vínculo Inicio rápido y tutoriales directamente

debajo del nombre. Este vínculo abre una nueva pestaña del

explorador con la documentación de inicio rápido de Microsoft


para ese elemento.

5. Opcional: seleccione Inicio rápido y


tutoriales en Windows Server 2016 Datacenter y, en la
nueva ventana del explorador, examine los tutoriales de la

máquina virtual de Windows. Cuando haya terminado, cierre


esta pestaña nueva para volver a Azure Portal.

Visualización de recursos

1. En Azure Marketplace, haga clic en Proceso para mostrar más

opciones de proceso en la parte derecha del panel, como Red

Hat Enterprise, Reserved VM Instances, Aplicación web para


Containers, etc.

2. A la derecha de Destacados, seleccione Ver todo. Ahora

aparece la lista completa de servicios de máquina virtual


disponibles.

3. Seleccione Windows Server en la sección Sistemas


26
operativos. En las pantallas con espacio horizontal limitado

para el panel, es posible que tenga que desplazarse a la derecha

y seleccionar el vínculo Ver más para encontrar la


opción Windows Server.

4. Seleccione la lista desplegable para ver todas las imágenes de


Windows Server disponibles.

5. Seleccione la X de la esquina superior derecha para cerrar la

ventana Windows Server.

6. Seleccione la X en la ventana de Marketplace anterior. Ahora

volverá a ver el panel Nuevos.


Filtro de los resultados

Otra manera de encontrar servicios es restringir la lista con filtros y

términos de búsqueda. En el panel Nuevo, puede que haya observado


el cuadro de búsqueda en la parte superior. La búsqueda es la forma

más rápida de filtrar qué servicios se ven.

De forma predeterminada, esta búsqueda comprueba cada categoría

de servicio de Azure para obtener sus resultados. A continuación,


realizará el filtrado después de seleccionar una categoría.

1. Escriba virtual machine en el cuadro de búsqueda y

presione Entrar.

2. Seleccione Proceso. Verá una lista filtrada de los servicios de


proceso relacionados con imágenes de máquinas virtuales.
27
3. Seleccione cualquiera de los resultados que le interesen para
aprender más sobre el servicio, incluidos los primeros pasos.

Seleccione la X de la esquina para explorar otro servicio.


Cuando haya terminado, vaya al paso siguiente.

4. Seleccione la X de la esquina superior derecha del cuadro de

búsqueda. El botón X borrará el término de búsqueda, pero no


restablecerá ninguno de los filtros de la lista desplegable que

haya establecido. Puede restablecer estos filtros manualmente,


o bien cerrar el panel Proceso con el icono X en la esquina

superior derecha y, después, volver a abrirla. Cuando haya


terminado de probar las opciones de filtrado y búsqueda,

avance al paso siguiente.


5. Seleccione la X de la esquina superior derecha para cerrar el

panel Marketplace. Ahora verá el panel Nuevos una vez más.

6. Seleccione la X de la esquina superior derecha para cerrar el


panel Nuevos.

Muchos de los principios que ha aprendido en este ejercicio se aplican

a lo largo de la experiencia de la interfaz de usuario de Azure Portal. En

la unidad siguiente, continuará el recorrido por Azure Portal y


configurará opciones adicionales en Azure.

28
EJERCICIO: USO DE AZURE
PORTAL
Para completar este módulo, se necesita un espacio aislado. Un espacio

aislado le da acceso a los recursos de Azure. Su suscripción de Azure no


recibirá ningún cobro. El espacio aislado solo se puede usar para realizar
los cursos de Microsoft Learn. Está prohibido el uso con cualquier otro fin

y puede dar lugar a la pérdida permanente del acceso al espacio aislado.

Inicie sesión para activar el espacio aislado.

Azure Portal tiene varios servicios y características disponibles; a


continuación se verán algunas de las áreas más comunes que se suelen
29
usar. En primer lugar, mantenga el puntero del mouse durante unos

segundos sobre cada uno de los iconos de la barra de menús superior.


Para cada uno de los iconos, se mostrará un elemento emergente con

información en pantalla. Esta etiqueta es el nombre del elemento de


menú. Usará estos iconos más adelante.

Todos los servicios

1. En el lado superior izquierdo de Azure Portal,


seleccione Mostrar menú del portal.
2. Seleccione Todos los servicios. Tardará un par de minutos en

desplazarse hacia abajo de la lista para ver cuántos servicios


30 ofrece Azure.

3. Puede buscar servicios mediante el cuadro de filtro.

4. Seleccione Máquinas virtuales. Si no ve esta opción, use el

cuadro de filtro. Aparece el panel Máquinas virtuales. Como


no ha creado ninguna máquina virtual, no hay resultados.

5. Seleccione + Agregar. Aparece el panel Crear una máquina


virtual.
6. Seleccione la X de la esquina superior derecha para cerrar el

panel Crear una máquina virtual.

7. Seleccione la X de la esquina superior derecha para cerrar el


panel Máquinas virtuales.

8. Haga clic en Microsoft Azure en la parte superior izquierda

para volver a la página principal.

Azure Cloud Shell

Azure Cloud Shell le permite usar una interfaz de la línea de comandos


(CLI) para ejecutar comandos en la suscripción de Azure. Para acceder
31 a ella, seleccione el icono (>_) de la barra de herramientas. También
puede ir a [Link] para iniciar una instancia de Cloud
Shell en el explorador independiente del portal.

Azure Cloud Shell está disponible en el entorno del espacio aislado,


pero la versión de espacio aislado del shell tiene una funcionalidad

reducida. Para usar todas las características de Azure Cloud Shell, utilice
su propia suscripción a Azure.

Cuando inicie el shell, verá una ventana de bienvenida. Puede elegir un


entorno de Bash o de PowerShell, como prefiera. También puede

cambiar el shell en cualquier momento mediante la lista desplegable


de lenguajes situada en el lado izquierdo del shell.

Por último, hay varias herramientas de administración y programación

incluidas en el entorno creado.


• Herramientas de línea de comandos de Azure (CLI de Azure,

AzCopy, etc.).

• Lenguajes o marcos, incluidos .NET Core, Python y Java.

• Compatibilidad con la administración de contenedores de

Docker, Kubernetes, etc.

• Editores de código como vim, emacs, code y nano.

• Herramientas de compilación (make, maven, npm, etc.).

• Herramientas de consulta de bases de datos, como sqlcmd.

Directorio y suscripción

32

1. Seleccione el icono de Directorio y suscripción (libro y filtro)

para mostrar el panel Directorio y suscripción.

Aquí es donde puede cambiar entre varias suscripciones o directorios.


Aquí debería ver que se encuentra en la suscripción de Concierge del

directorio Microsoft Learn Sandbox. Si tiene otros directorios de Azure

vinculados a la misma dirección de correo electrónico, esas


suscripciones también estarán disponibles.

También hay un vínculo para aprender más sobre las suscripciones y

los directorios.

2. Seleccione la X de la esquina superior derecha para cerrar el

panel Directorio y suscripción.


Panel Notificaciones

1. En la barra de menús de iconos, seleccione el

icono Notificaciones (campana). En esta ventana se muestran


las notificaciones pendientes.

2. Si aparece alguna notificación, mantenga el mouse sobre ella.


Seleccione la X que aparece en dicha notificación para
33
descartarla.

3. Seleccione Descartar todo. Ahora no se mostrará ninguna


notificación.

4. Seleccione la X de la esquina superior derecha para cerrar el


panel Notificaciones.

Configuración

1. Seleccione el icono de Configuración (engranaje) para abrir el

panel Configuración del portal, que muestra la


configuración General de forma predeterminada.
2. Abra la lista desplegable Cerrar sesión cuando esté inactivo y

seleccione Después de 1 hora.

3. En Elegir un tema, seleccione los diferentes temas con color y


observe los cambios en la interfaz de usuario del portal. Déjelo

establecido en el que más le guste.

4. En Tema de contraste alto, pruebe las tres opciones.

5. Seleccione Habilitar las notificaciones emergentes. Cuando


se activa esta opción, las notificaciones aparecerán como

notificaciones de tipo "notificación del sistema" emergente.

También se mostrarán en el icono de notificaciones (campana).

6. Seleccione la pestaña Idioma y región en la configuración.


Seleccione Idioma, elija Español y, luego, seleccione el
34
botón Aplicar. Si aparece un cuadro de diálogo Traducir esta

página, ciérrelo. Todo el portal está ahora en español.

7. Para volver al inglés, seleccione el icono


de Configuración (engranaje) en la barra de menú superior y
cámbielo en Idioma y región. Seleccione Idioma y elija Inglés.

Seleccione el botón Aplicar. El portal volverá a mostrarse en


inglés.

Panel Ayuda

1. Seleccione el icono de Ayuda (?) para mostrar el panel Ayuda.


2. Seleccione el botón Ayuda y soporte técnico.

3. En el panel Ayuda y soporte técnico, en Soporte técnico,

seleccione Nueva solicitud de soporte técnico. Para crear una


solicitud de soporte técnico, deberá rellenar la información de

cada una de las secciones siguientes y, después,

seleccionar Crear para presentar la incidencia.

o Aspectos básicos: tipo de problema

o Problema: gravedad del problema, un resumen y una


descripción y cualquier información adicional

o Información de contacto: método de contacto


preferido y la información asociada con este método de
contacto.
35
4. Puede ver el estado de las solicitudes de soporte técnico si hace

clic en Todas las solicitudes de soporte técnico.

Las solicitudes de soporte técnico solo se pueden crear con una

suscripción de pago activa. No se permite crear solicitudes de soporte


técnico desde un espacio aislado de Microsoft Learn.

Novedades y otra información

1. Seleccione el icono de Ayuda y seleccione Novedades.

2. Revise las características que se han publicado recientemente.


Tenga en cuenta también y explore las otras opciones del
menú Ayuda, tales como:

o Azure Roadmap
o Iniciar paseo guiado

o Métodos abreviados de teclado

o Mostrar diagnósticos

o Declaración de privacidad

3. Seleccione la X de la esquina superior derecha para cerrar el

panel Ayuda.

4. Cierre el panel Novedades. Ahora volverá al Panel.

Panel de comentarios

36
1. Seleccione el icono de Comentarios (cara sonriente) para abrir

el panel Envíenos comentarios.

2. Escriba sus impresiones de Azure en el cuadro Cuéntenos su


experiencia, seleccione el cuadro que indica Microsoft puede
ponerse en contacto con usted por correo electrónico en

relación con sus comentarios y seleccione Enviar


comentarios.

3. Aparece un mensaje Comentarios enviados y luego se cierra.


Ahora volverá al Panel.

Configuración del perfil

1. Seleccione su nombre en la esquina superior derecha del portal.

Las opciones incluyen:


o Iniciar sesión con otra cuenta o cerrar sesión

completamente

o Ver el perfil de cuenta, donde puede cambiar la


contraseña

o Enviar una idea

o Comprobar los permisos

o Ver la factura

o Actualizar la información de contacto.

Algunos de estos elementos no aparecen a menos que seleccione el


icono "...".

37 2. Seleccione "..." y luego Ver mi factura para ir a la


página Administración de costos y facturación: Facturas,

que le ayuda a analizar dónde se generan los costos en Azure.

3. Si usa su propia cuenta y no el espacio aislado, puede

seleccionar una suscripción en la lista desplegable.

4. Seleccione un período de facturación.

5. Observe los costos de servicio y compárelos con los que espera

para la suscripción actual.

6. Seleccione la X de la esquina superior derecha para cerrar el

panel Costos por servicio.

7. Seleccione la X de la esquina superior derecha para cerrar la

página Administración de costos y facturación: Facturas.


8. Ahora volverá a la página principal.

Ahora que se han explorado todas las áreas principales de Azure Portal,

veamos una de las características más útiles: los paneles.

38
PANELES DE AZURE
PORTAL
Veamos cómo crear y modificar los paneles mediante Azure Portal y la

edición directa del archivo JSON subyacente. En esta unidad, aprenderá

a navegar por el portal. Y, en la unidad siguiente, probará todo lo que


ha aprendido.

¿Qué es un panel?

Un panel es una colección personalizable de iconos de interfaz de


usuario mostrados en Azure Portal. Los iconos se agregan, quitan y
colocan para crear la vista exacta deseada, que luego se guarda como
39
un panel. Se admiten varios paneles y se puede cambiar entre ellos
según sea necesario. Incluso puede compartir los paneles con otros
miembros del equipo.

Los paneles proporcionan una flexibilidad considerable con respecto a


la forma de administrar Azure. Por ejemplo, puede crear paneles para
roles específicos dentro de la organización y luego usar el control de

acceso basado en rol (RBAC) para controlar quién puede acceder a ese

panel. Así, el administrador de base de datos tendría un panel con


vistas del servicio de base de datos SQL, mientras que el administrador
de Azure Active Directory tendría vistas de los usuarios y grupos dentro
de Azure AD. Incluso puede personalizar el portal entre los entornos

de producción y desarrollo, y crear un panel específico para cada


entorno que administre.
Los paneles se almacenan como archivos de notación de objetos

JavaScript (JSON). Este formato significa que se pueden cargar y


descargar en otros equipos o compartir con los miembros de Azure
Directory. Azure almacena los paneles dentro de grupos de recursos, al
igual que las máquinas virtuales o las cuentas de almacenamiento que

puede administrar en el portal.

Como los paneles son archivos JSON, también puede personalizarlos


mediante programación y así convertirlos en herramientas

administrativas atractivas. Además, algunos tipos de icono se pueden


basar en consultas y actualizarse de forma automática cuando cambien

los datos de origen.

Exploración del panel predeterminado

40 El panel predeterminado se denomina "Panel". Cuando inicie sesión en


el portal por primera vez y seleccione Panel en el menú del portal,

aparecerá este panel que contiene cinco iconos.


41

Estos elementos web predeterminados son:

1. Controles del panel

2. Icono Todos los recursos

3. Icono Inicios rápidos y tutoriales

4. Icono de Service Health

5. Icono de Marketplace
Creación y administración de paneles

En la parte superior del panel están los controles que permiten crear,

cargar, descargar, editar y compartir un panel. También puede cambiar


un panel a pantalla completa, clonarlo o eliminarlo.

Seleccionar panel

En el extremo izquierdo de la barra de herramientas se encuentra el


control de lista desplegable Seleccionar panel. Al hacer clic en este

control, puede seleccionar entre los paneles que ya ha definido para la


cuenta. Este control facilita la definición de varios paneles con

diferentes propósitos y luego cambiar de uno a otro, según lo que esté

42 intentando hacer en ese momento.

Los paneles que crea son privados inicialmente, es decir, solo el usuario
puede verlos. Para que un panel esté disponible en toda la empresa,

tiene que compartirlo. Veremos esa opción en breve.

Creación de un panel

Para crear un panel, haga clic en Nuevo panel. Aparece el área de


trabajo del panel, sin iconos. A continuación, puede agregar, quitar y

ajustar iconos como quiera. Cuando haya terminado de personalizar el


panel, haga clic en Personalización finalizada para guardar y cambiar
a ese panel.
Cargar y Descargar

Los botones Cargar y Descargar permiten descargar el panel actual

como un archivo JSON, personalizarlo y luego distribuirlo y cargarlo, o


bien hacer que otra persona cargue de nuevo ese archivo en Azure

Portal, de forma que reemplace su panel actual.

Si hace clic en Descargar, el panel actual descarga el código JSON

como un archivo que se puede editar de forma local. Después, puede


volverlo a cargar en Azure si hace clic en el botón Cargar. La descarga

y la carga de paneles se describe más adelante.

Edición de un panel mediante el portal

Aunque para modificar un panel puede descargar el archivo JSON,


cambiar los valores del archivo y volver a cargarlo en Azure, puede
43
preferir un enfoque gráfico para diseñar la interfaz de usuario. Para usar

la interfaz gráfica de usuario para configurar el panel actual, puede


cambiar al modo de edición de varias maneras:

• Haga clic en el botón Editar (icono del lápiz).

• Haga clic con el botón derecho en el área de fondo del panel y

seleccione Editar.

• Haga clic con el botón derecho en un icono y aparecerá un

menú con opciones de edición.

• Mantenga el puntero sobre un icono del panel; aparecerá un

menú ... en la esquina superior derecha con la

opción Personalizar.
El panel cambiará al modo de edición.

44 En el lado izquierdo aparece la Galería de iconos, con varios iconos

posibles. Puede filtrar la Galería de iconos por tipo de recurso y


categoría.

La incorporación de iconos es tan simple como seleccionar el icono en

la lista de la izquierda y luego arrastrarlo al área de trabajo. Luego


puede mover cada icono, cambiar su tamaño o cambiar los datos que

muestra.

Sugerencia

Una característica interesante es que puede tomar elementos del

paneles secundarios y colocarlos en el panel. Simplemente mantenga

el mouse sobre el elemento y busque el icono ... del menú Editar;


tendrá una opción "Anclar al panel" que le permite seleccionar de
forma rápida un icono desde un servicio y colocarlo en el panel.
El área de trabajo en modo de edición se divide en cuadrados. Cada

icono debe ocupar al menos un cuadrado, y los iconos se ajustan al


conjunto más grande y cercano de divisores de iconos. Los iconos que
se solapan se quitan del medio. Al crear un icono más pequeño, los
iconos que lo rodean retroceden con respecto a él.

Cambio de tamaño de los iconos

Algunos iconos tienen un tamaño establecido, que solo se puede


modificar mediante programación. Sin embargo, los iconos con una

esquina inferior derecha de color gris se pueden editar si se arrastra el


indicador de la esquina.

45
46

También puede hacer clic con el botón derecho en el menú contextual

y especificar el tamaño que quiere.


Para crear el panel, extraiga iconos de la Galería de iconos al área de
trabajo y luego reorganícelos.

Cambio de la configuración de los iconos

Algunos iconos tienen valores editables. Por ejemplo, con el icono de


reloj, cuando se arrastra al área de trabajo, se abre el icono de Editar
47
reloj. Luego puede establecer la zona horaria que muestra y también
el formato: 12 o 24 horas.

En las empresas multinacionales o transcontinentales, puede agregar


varios relojes de diferentes zonas horarias.
Aceptación de las modificaciones

Cuando haya organizado los iconos como quiera, haga clic

en Personalización finalizada o haga clic con el botón derecho y


luego haga clic en Personalización finalizada.

Editar un panel mediante la modificación del archivo JSON

También puede editar un panel mediante la modificación del archivo

JSON. Este método proporciona más opciones para cambiar la


configuración, pero no se pueden ver los cambios hasta que se carga

de nuevo el archivo en Azure. El punto de partida más sencillo consiste

en descargar el panel JSON como se ha descrito anteriormente y editar


ese archivo.

48
49

Como ejemplo, en el código JSON anterior, para cambiar el tamaño del

icono, se editarían las variables colSpan y rowSpan, y luego se


guardaría el archivo y se volvería a cargar en Azure.

Sugerencia

También puede distribuir el archivo JSON del panel a otros usuarios.

Restablecimiento de un panel

Puede restablecer cualquier panel al estilo predeterminado. En modo

de edición, haga clic con el botón derecho en el fondo del panel y


seleccione Restaurar al estado predeterminado. Un cuadro de
diálogo le pedirá que confirme que quiere restablecer ese panel.
Compartir o dejar de compartir un panel

Al definir un nuevo panel, es privado y solo visible para su cuenta. Para

que sea visible para otros usuarios, debe compartirlo. Pero como
cualquier otro recurso de Azure, debe especificar un grupo de recursos

nuevo (o usar uno existente) en el que almacenar los paneles

compartidos. Si no tiene un grupo de recursos, Azure crea un grupo de


recursos paneles en cualquier ubicación que especifique. Si ya tiene
grupos de recursos, puede especificar un grupo de recursos para
almacenar los paneles.

50
51

Cuando haya compartido la plantilla, verá un segundo panel Uso


compartido y control de acceso.
52

Luego puede hacer clic en Administrar usuarios para especificar los


usuarios que tienen acceso a ese panel.

Cambio a un panel compartido

Para cambiar a un panel compartido, haga clic en la lista de paneles y


luego en Examinar todos los paneles.
Ahora verá el panel Todos los paneles, en el que se muestran los

nombres de los paneles compartidos. Simplemente haga clic en un


panel para aplicarlo a Azure Portal.

53

Visualización de un panel en pantalla completa

Si quiere el máximo tamaño del panel, haga clic en el botón Pantalla

completa para mostrar el panel actual sin los menús del explorador. Si
tiene iconos fuera de los límites de la pantalla, aparecerán barras de

control deslizantes en la parte derecha e inferior de la pantalla.

Cuando haya terminado de trabajar en modo de pantalla completa,


presione la tecla ESC o haga clic en Salir de pantalla completa junto

al nombre Panel en la parte superior de la pantalla.

Clonación de un panel

Al clonar un panel se crea una copia instantánea denominada "Clon de


<nombre del panel>" y se cambia a esa copia como panel actual. La

clonación también es una manera fácil de crear paneles antes de

compartirlos. Por ejemplo, si tiene un panel que es casi como lo quiere,


clónelo, realice los cambios que sean necesarios y luego compártalo.

Eliminación de un panel
54
Al eliminar un panel se quita de la lista de paneles disponibles. Se le
pedirá que confirme que quiere eliminar el panel, pero no hay ninguna
función para recuperar un panel que se ha eliminado.

Vamos a probar algunas de estas opciones mediante la creación de un


panel.
EJERCICIO:
PERSONALIZACIÓN DEL
PANEL
Para completar este módulo, se necesita un espacio aislado. Un espacio

aislado le da acceso a los recursos de Azure. Su suscripción de Azure no


recibirá ningún cobro. El espacio aislado solo se puede usar para realizar
los cursos de Microsoft Learn. Está prohibido el uso con cualquier otro fin

y puede dar lugar a la pérdida permanente del acceso al espacio aislado.

Inicie sesión para activar el espacio aislado.

55 Los paneles son una herramienta flexible para administrar distintos


aspectos de los servicios de Azure a través del portal. Permiten
supervisar de forma cómoda el estado de los servicios. Como se

pueden compartir, ayudan a garantizar que todos los miembros de un


equipo ven los mismos datos y están al corriente del estado de los
componentes críticos. Vamos a crear un panel y agregarle algunos

iconos.

Creación de un panel

1. En la parte superior izquierda de Azure Portal ,


seleccione Mostrar el menú del portal > Panel.

2. Seleccione Nuevo panel.

3. En el panel central, cambie Mi panel a Customer Dashboard.


Adición y configuración del icono de reloj

1. En la galería de iconos, arrastre el reloj hacia el área de trabajo.

Colóquelo en la parte superior derecha del espacio disponible.

2. En el panel Editar reloj, cambie la ubicación a Hora del


Pacífico (EE. UU. y Canadá).

3. En Formato de hora, seleccione 24 horas.

4. Seleccione Listo.

5. Repita los cuatro pasos anteriores, pero seleccione Hora del

este (EE. UU. y Canadá). Ahora debe tener dos relojes, uno que
muestre la hora en la costa oeste y el otro en la costa este.

Cambio del tamaño de un icono


56

1. En Galería de iconos, arrastre el icono Todos los recursos y


colóquelo en la parte superior izquierda de la nueva área de
trabajo del panel.

2. Mantenga el puntero sobre el nuevo icono Todos los


recursos y seleccione el icono de puntos suspensivos (...); a
continuación, seleccione el tamaño 6x6.

3. Seleccione la esquina de color gris de la parte inferior derecha

del icono y cambie el tamaño del icono a 3,5 cuadrados

verticalmente por 6 horizontalmente. Cuando termine de


cambiar el tamaño, el icono se ajusta a 4 x 6.
4. En la Galería de iconos, arrastre el icono Grupos de recursos al

área de trabajo. Colóquelo debajo del icono Todos los


recursos.

5. En la Galería de iconos, seleccione el icono Gráfico de

métricas y arrástrelo al área de trabajo. Colóquelo a la derecha

del icono Todos los recursos.

6. Siga agregando los iconos siguientes y organícelos para que


quepan:

o Ayuda y soporte técnico

o Tareas rápidas

o Marketplace
57
7. Cuando haya agregado estos iconos,
seleccione Personalización finalizada. Debe aparecer el panel

del cliente.

Clonación de un panel

Ahora quiere crear un panel similar para otros clientes.

1. Seleccione el botón Clonar.

2. Cambie el nombre del panel de Clonación del panel del


cliente a Panel de administración de Azure AD.

3. En el icono Grupos de recursos, seleccione el icono de cubo


de basura Quitar del panel para eliminar este icono.

4. En la Galería de iconos, agregue los siguientes iconos:


o Identidad de la organización

o Usuarios y grupos

o Resumen de la actividad del usuario

5. Cambie la posición de los iconos según sea necesario y,

después, seleccione Personalización finalizada.

Uso compartido de un panel

Ahora quiere poner este panel a disposición de otros usuarios. Para


que este panel esté disponible, lleve a cabo los siguientes pasos:

1. En el panel de administración de Azure AD, seleccione el


botón Compartir situado en la parte superior. Aparece el
panel Uso compartido y control de acceso.
58

2. Desactive la casilla Publique en el grupo de recursos

"paneles".

3. Seleccione el grupo de recursos [nombre del grupo de recursos


del espacio aislado] de la lista desplegable Grupo de recursos.

4. Haga clic en Publicar.

5. Cierre el panel Uso compartido y control de acceso.

6. Al cabo de un rato, aparecerá un panel compartido en el icono


de Todos los recursos del panel.

7. Repita los pasos del 1 al 3 para compartir el panel del cliente.

Edición de un archivo [Link]


Para mostrar cómo puede descargar y editar un archivo de panel, siga

estos pasos:

1. Seleccione Descargar.

2. Abra un explorador de archivos en el equipo y vaya a la


ubicación en la que el explorador web descargó el panel,

normalmente una carpeta Descargas.

3. Busque el archivo Customer [Link] y ábralo en un


editor de texto.

4. En el editor, busque el texto ClockPart.

5. En la primera aparición de ClockPart, cambie el valor

de posición > rowSpan anterior a 1.


59
6. En la segunda aparición de ClockPart, cambie también el valor

de posición > rowSpan anterior a 1.

7. En la segunda aparición de Clockpart, cambie el valor


de posición > y de 2 a 1.

8. Guarde el archivo Customer [Link] y cierre el editor de


código.

9. En el panel de Azure, seleccione Cargar.

10. En el cuadro de diálogo Abrir, vaya a la carpeta de descargas y

haga doble clic en Customer [Link].

Los relojes han cambiado de tamaño a una fila de alto y el reloj inferior

se ha movido una fila hacia arriba.


Selección de un panel compartido

Se ha dado cuenta de que no le gustan los relojes más pequeños y

quiere volver a la versión compartida anterior del Panel del cliente. Para
ello, edite el archivo y cárguelo de nuevo, o bien acceda a la versión

compartida. Para ello, siga estos pasos:

1. Seleccione la flecha abajo junto a Panel de cliente.

2. Seleccione Examinar todos los paneles.

3. En el panel Todos los paneles, en TIPO, seleccione Paneles


compartidos.

4. Seleccione Panel de cliente.

5. Cierre el panel Todos los paneles.


60

Los relojes han vuelto a su tamaño original.

Cambio a pantalla completa

1. Seleccione la flecha abajo junto a Panel de cliente.

Ahora hay otro panel de cliente, sin el símbolo compartido. Seleccione


esa versión del panel de cliente y los relojes volverán a ser pequeños.

2. Vuelva a cambiar al panel de cliente compartido.

3. Seleccione el botón Pantalla completa. Han desaparecido

todos los menús y barras del explorador.

4. Seleccione Salir de pantalla completa para volver a la pantalla


estándar.
Dejar de compartir un panel

Si quiere evitar que un panel compartido esté disponible para su

selección, puede dejar de compartirlo. Para dejar de compartir un panel,


siga estos pasos:

1. Seleccione el botón Dejar de compartir. Aparece el panel Uso

compartido y control de acceso.

2. Seleccione el botón Cancelar publicación.

3. En el cuadro de mensaje de confirmación, seleccione Aceptar.

4. Seleccione la flecha abajo junto a Panel de cliente.

5. Seleccione Examinar todos los paneles.

61 6. En el panel Todos los paneles, en TIPO, seleccione Paneles


compartidos.

El panel del cliente ya no aparece en la lista de paneles disponibles.

7. Cierre el panel Todos los paneles.

Eliminación de un panel

1. Asegúrese de que el panel Administración de Azure AD esté


seleccionado.

2. Seleccione el botón Eliminar.

3. En el cuadro de mensaje Confirmación, active la casilla para

confirmar que este panel dejará de ser visible y, después, haga


clic en Aceptar.
Restablecimiento de un panel

1. Asegúrese de que está seleccionado Panel de cliente.

2. Seleccione Editar.

3. Haga clic con el botón derecho en el área de trabajo y

seleccione Restaurar al estado predeterminado.

4. En el cuadro de mensaje Restaurar al estado


predeterminado, seleccione Sí.

El panel de cliente se ha restablecido a sus iconos predeterminados.

5. Seleccione Personalización finalizada.

6. Seleccione su nombre en la parte superior derecha del portal.


62
7. Seleccione Cerrar sesión.

8. Cierre el explorador.

Enhorabuena. Ahora ha creado y editado paneles, los ha compartido,

los ha modificado como archivos JSON, ha dejado de compartirlos y,


por último, los ha restablecido a su estado predeterminado. Ahora
debería poder comprobar qué herramientas tan eficaces pueden llegar
a ser los paneles y cómo se pueden usar para crear interfaces eficientes

para diferentes roles dentro de una organización.


ACCESO A
CARACTERÍSTICAS EN
VERSIÓN PRELIMINAR
PÚBLICA Y PRIVADA
Microsoft ofrece versiones preliminares de las características de Azure
con fines de evaluación. Con las características de versión preliminar de
Azure, puede probar versiones beta y preliminares de características,
productos, servicios, software y regiones.

Estas son algunas de las áreas comunes para las que verá versiones
63 preliminares:

 Nuevos tipos de almacenamiento

 Nuevos servicios de Azure, como mejoras de Machine Learning

 Integración nueva o mejorada con otras plataformas

 Nuevas API para servicios

Las versiones preliminares de características de Azure están disponibles

bajo determinados términos y condiciones que son específicos de cada

versión preliminar de Azure concreta. Además, algunas versiones

preliminares no están cubiertas por el servicio de asistencia al cliente.

Después de evaluar y probar correctamente una característica, es


posible que se publique para los clientes como parte del conjunto de
productos predeterminado de Azure. Esta versión se conoce

como Disponibilidad general (GA).

Categorías de versión preliminar de características

Hay dos tipos de versiones preliminares disponibles:

• Versión preliminar privada. Una característica de Azure

marcada como "versión preliminar privada" está disponible


para clientes específicos de Azure con fines de evaluación. Esto
suele ser solo por invitación y el equipo responsable de la
característica o el servicio la emite directamente.

• Versión preliminar pública. Una característica de Azure


marcada como "versión preliminar pública" está disponible
para todos los clientes de Azure con fines de evaluación. Estas
64
versiones preliminares se pueden activar a través de la página
de características de versión preliminar como se detalla a

continuación.

Encontrar las características de versión preliminar

Puede obtener información sobre las características en versión

preliminar específicas a través de la página de características de versión


preliminar . En esta página se enumeran las características en versión

preliminar que están disponibles para su evaluación. Para acceder a una


característica en versión preliminar, seleccione su entrada en esta
página y obtenga información sobre cómo evaluarla. También puede

usar el botón Fuente RSS de esta página para suscribirse a las


notificaciones y estar al día.
También puede seguir los pasos que hay a continuación para encontrar

las características en versión preliminar de Azure en el portal:

• Inicie sesión en Azure Portal.

• Seleccione Crear un recurso en el panel de recursos para abrir

el panel Nuevo.

• Escriba la palabra preview (versión preliminar) en el cuadro de

búsqueda de la parte superior del panel Nuevo.

• Se mostrará una lista de las características en versión preliminar


disponibles, con la palabra (preview) junto a ellas.

Características en versión preliminar en Azure Portal

Otra área de versión preliminar que puede probar es la próxima versión


65
de Azure Portal. Use la dirección

URL [Link] (observe el prefijo preview).

Las características en versión preliminar típicas del portal proporcionan


mejoras de rendimiento, navegación y accesibilidad a la interfaz de

Azure Portal. Se marcará con Microsoft Azure (versión


preliminar) en la barra superior, por lo que sabrá que está en el portal
de versión preliminar.

Envío de comentarios sobre las características en versión

preliminar

Si usa el portal de versión preliminar o una característica en versión

preliminar, a Microsoft le gustaría conocer su experiencia. Puede


proporcionar comentarios a través del icono de cara sonriente del
portal o mediante la publicación de ideas y sugerencias en el foro de

comentarios de Azure Portal.

Obtención de notificaciones sobre versiones de disponibilidad


general

En el vínculo "Novedades" de Azure Portal, en el menú Ayuda (?), se

proporciona una lista de las actualizaciones recientes, que puede

comprobar periódicamente para saber qué ha cambiado en Azure.

Como alternativa, puede usar la página Actualizaciones de Azure. En


esta página se proporciona información adicional y características,
incluido lo siguiente:

 Qué actualizaciones son de disponibilidad general, versión


preliminar o desarrollo.
66
 Examen de las actualizaciones por categoría de producto o tipo
de actualización, mediante las listas desplegables

proporcionadas.

 Búsqueda de actualizaciones por palabra clave, si escribe los


términos de búsqueda en un campo de entrada de texto.

 Suscripción para recibir notificaciones de actualizaciones de

Azure mediante RSS.


RESUMEN
En este módulo se ha analizado mucha información.

• Ha aprendido cómo iniciar sesión en Azure mediante una

cuenta de Azure.

• Ha revisado las características de Azure Portal y sus opciones

de personalización.

• Ha creado, personalizado y compartido un panel.

Sin embargo, esto es solo el principio. Azure tiene mucho más que
ofrecerle, con independencia de la función que desempeñe en su
organización. Si es un desarrollador, Azure proporciona una manera

fácil de probar nuevas plataformas y crear aplicaciones sofisticadas. Si


67
es administrador, usará Azure Portal, la CLI de Azure o las herramientas
de Azure PowerShell para administrar la infraestructura basada en la

nube. Si es un arquitecto, puede usar Azure para probar rápidamente


nuevas ideas de arquitectura.

Para continuar con la exploración de Azure, seleccione una o más rutas


a través del contenido que tenga la estructura específica para lo que

quiera aprender.
1

Conceptos de la nube:
Principios de la informática
en la nube
BIENVENIDA
Explore los conceptos principales de la informática en la nube y cómo
puede ayudar a la empresa.

En este módulo, aprenderá a realizar estas tareas:

 Explorar servicios informáticos en la nube comunes

 Explorar las ventajas de la informática en la nube

 Decidir qué modelo de implementación en la nube es mejor


para usted

2
Requisitos previos

 Ninguno

Introducción 4 min

¿Qué es la informática en la nube? 8 min

Beneficios de la informática en la nube 8 min

Requisitos y condiciones de cumplimiento 8 min

Economías de escala 1 min

Gastos de capital frente a gastos operativos 7 min

Modelos de implementación en la nube 10 min


Tipos de servicios en la nube 10 min

Prueba de conocimientos 3 min

Resumen 3 min

3
INTRODUCCIÓN
Cuando enciende una luz, simplemente quiere que funcione. Sabe que
para que esto ocurra se necesita electricidad, pero en ese momento,
los detalles de cómo llega la electricidad a la bombilla no son
importantes. Es posible que no piense en que la electricidad se crea en

una central eléctrica y viaja por una gran red de líneas de transmisión
de alta tensión hasta su ciudad, atraviesa una subestación y, finalmente,
4 llega a su casa.

El proceso de encender una luz se oculta detrás del simple hecho de


pulsar un interruptor. En este momento, la electricidad se convierte en

una utilidad, que tiene muchas ventajas. En primer lugar, solo paga por

lo que necesita. Cuando compra una bombilla, no paga al proveedor


de electricidad por adelantado por el tiempo durante el que podría

usarla. En su lugar, paga por la cantidad de electricidad que realmente


usa. En segundo lugar, no tiene que preocuparse sobre cómo o cuándo

se actualizan las centrales eléctricas a la tecnología más reciente. Por


último, no tiene que administrar el escalado de la electricidad. Por
ejemplo, a medida que las personas se mudan a su ciudad, puede estar

seguro de que seguirá teniendo luz.


Como profesional de la tecnología, sería bueno tener estas ventajas al

desarrollar e implementar aplicaciones. El almacenamiento de datos, el


streaming de vídeo o incluso el hospedaje de un sitio web, todo ello
requiere la administración de hardware y software. Esta administración
es un obstáculo innecesario al entregar la aplicación a los usuarios. Por

suerte, hay una solución a este problema: la informática en la nube.

Objetivos de aprendizaje

En este módulo aprenderá a:

• Explorar servicios informáticos en la nube comunes.


• Explorar las ventajas de la informática en la nube.
• Decidir qué modelo de implementación en la nube es mejor
para usted.

5
¿QUÉ ES LA INFORMÁTICA
EN LA NUBE?
La informática en la nube consiste en alquilar recursos como espacio

de almacenamiento o ciclos de CPU en los equipos de otra empresa.

Solo paga por lo que usa. La empresa que proporciona estos servicios
se conoce como un proveedor de nube. Algunos ejemplos de

proveedores son Microsoft, Amazon y Google.

El proveedor de nube es responsable del hardware físico necesario para


ejecutar el trabajo y de mantenerlo actualizado. Los servicios
informáticos ofrecidos suelen variar en función del proveedor. Pero

6 normalmente incluyen:

 Potencia de proceso: por ejemplo, aplicaciones web o


servidores Linux.
 Almacenamiento: por ejemplo, archivos y bases de datos.
 Redes: por ejemplo, conexiones seguras entre el proveedor de
nube y su empresa.

 Análisis: por ejemplo, visualización de telemetría y datos de


rendimiento.

Servicios de informática en la nube

El objetivo de la informática en la nube es simplificar y aumentar la

eficiencia de la gestión de un negocio, tanto si son pequeñas empresas


emergentes o grandes empresas. Cada empresa es única y tiene

necesidades distintas. Para satisfacer esas necesidades, los


proveedores de informática en la nube ofrecen una amplia gama de

servicios.

Debe tener un conocimiento básico de algunos de los servicios que se


proporcionan. Vamos a describir brevemente los dos servicios más

comunes que ofrecen todos los proveedores de nube: la potencia de

proceso y el almacenamiento.

Potencia de proceso

Cuando envía un correo electrónico, hace una reserva en Internet, paga

una factura en línea o incluso realiza este módulo de Microsoft Learn,

está interactuando con servidores basados en la nube que procesan


cada solicitud y devuelven una respuesta. Como consumidores, todos
dependemos de los servicios informáticos que proporcionan los

7 distintos proveedores de nube que componen Internet.

Al compilar soluciones con la informática en la nube, puede elegir


cómo quiere que se realice el trabajo en función de sus necesidades y

recursos. Por ejemplo, si quiere tener más control y responsabilidad


sobre el mantenimiento, podría crear una máquina virtual (VM). Una
máquina virtual es una emulación de un equipo, igual que el equipo de

escritorio o portátil que está usando ahora. Cada máquina virtual

incluye un sistema operativo y hardware que se muestra al usuario


como un equipo físico que ejecuta Windows o Linux. Después, puede

instalar cualquier software que necesite para realizar las tareas que
quiera ejecutar en la nube.

La diferencia es que no tiene que comprar ningún hardware ni instalar


el sistema operativo. El proveedor de nube ejecuta la máquina virtual
en un servidor físico en uno de sus centros de datos, y a menudo
comparte ese servidor con otras máquinas virtuales (aisladas y

seguras). Con la nube, puede tener una máquina virtual lista para
funcionar en cuestión de minutos con un costo menor que un equipo
físico.

Las máquinas virtuales no son la única opción informática, hay otras

dos opciones populares: contenedores e informática sin servidor.

¿Qué son los contenedores?

Los contenedores proporcionan un entorno de ejecución aislado y

coherente para las aplicaciones. Son similares a las máquinas virtuales,

salvo que no requieren un sistema operativo invitado. En su lugar, la


aplicación y todas sus dependencias se empaquetan en un
“contenedor” y después se usa un entorno de ejecución estándar para

8 ejecutar la aplicación. Esto permite que el contenedor se inicie en tan


solo unos segundos, porque no hay ningún sistema operativo que
arrancar e inicializar. Solo necesita la aplicación que quiere iniciar.

El proyecto de código abierto Docker es una de las principales


plataformas de administración de contenedores. Los contenedores de
Docker proporcionan un enfoque eficaz y ligero para implementar

aplicaciones porque permiten que los distintos componentes de la

aplicación se implementen de forma independiente en contenedores


diferentes. En una única máquina pueden ejecutarse varios

contenedores y estos se pueden mover entre máquinas. La portabilidad


de los contenedores facilita la implementación de las aplicaciones en

varios entornos, ya sean locales o en la nube, a menudo sin necesidad

de modificar la aplicación.
¿Qué es la informática sin servidor?

La informática sin servidor le permite ejecutar código de aplicación sin

necesidad de crear, configurar o mantener un servidor. La idea principal


es que la aplicación se divide en diferentes funciones que se ejecutan

cuando las desencadena alguna acción. Esto es ideal para las tareas

automatizadas. Por ejemplo, puede compilar un proceso sin servidor


que envíe automáticamente un correo electrónico de confirmación
después de que un cliente realice una compra en línea.

El modelo sin servidor difiere de las máquinas virtuales y los


contenedores en que usted solo paga por el tiempo de procesamiento
que ha usado cada función mientras se ejecuta. Las máquinas virtuales
y los contenedores se cobran mientras se ejecutan, incluso si las
aplicaciones están inactivas. Esta arquitectura no funciona con todas
9
las aplicaciones, pero si la lógica de la aplicación se puede dividir en

unidades independientes, puede probarlas por separado, actualizarlas

por separado e iniciarlas en microsegundos. Por lo tanto, este enfoque


es la opción más rápida para la implementación.

Almacenamiento

La mayoría de los dispositivos y las aplicaciones leen o escriben datos.

Estos son algunos ejemplos:

 Comprar una entrada de cine en línea

 Buscar el precio de un artículo en línea


 Hacer una foto

 Enviar un correo electrónico

 Dejar un correo de voz


En todos estos casos, los datos se leen (buscar un precio) o se escriben

(hacer una foto). El tipo de datos y cómo se almacenan puede ser


diferente en cada uno de estos casos.

Los proveedores de servicios en la nube suelen ofrecer servicios que

pueden administrar todos estos tipos de datos. Por ejemplo, si quiere

almacenar texto o un clip de película, podría usar un archivo en disco.


Si tuviera un conjunto de relaciones (por ejemplo, una libreta de
direcciones), podría decidirse por un enfoque más estructurado, como

usar una base de datos.

La ventaja de usar el almacenamiento de datos basado en la nube es


que puede escalarlo para satisfacer sus necesidades. Si determina que
necesita más espacio para almacenar los clips de película, puede pagar
un poco más y agregar espacio disponible. En algunos casos, el
10
almacenamiento incluso puede expandirse y contraerse

automáticamente, de forma que paga exactamente por lo que necesita


en un momento determinado.
Resumen
Cada empresa tiene distintas necesidades y requisitos. La informática
en la nube es flexible y rentable, lo que puede ser beneficioso para
todos los negocios, ya sea una pequeña empresa emergente o una

gran empresa.

11
BENEFICIOS DE LA
INFORMÁTICA EN LA
NUBE

La informática La informática en la nube no es un enfoque de servicio

de todo o nada. Las empresas pueden optar por usar la nube para
almacenar sus datos y ejecutar la lógica a un nivel totalmente

personalizado y de acuerdo con sus requisitos empresariales. Las


empresas existentes pueden elegir una migración gradual para ahorrar
en costos de infraestructura y administración (o migración mediante

lift-and-shift), mientras que una empresa nueva puede comenzar


12
desde cero en la nube.

Vamos a conocer algunas de las principales ventajas de la informática


en la nube.

Es rentable

La informática en la nube proporciona un modelo de precios de pago

por uso o basado en el consumo.

Este modelo basado en el consumo aporta muchas ventajas, por


ejemplo:

No hay costos iniciales de infraestructura.

No es necesario comprar ni administrar infraestructuras costosas que


es posible que no se aprovechen del todo.
Se puede pagar para obtener recursos adicionales, y solo si se

necesitan y en el momento en el que se necesiten.

Se puede dejar de pagar por los recursos que ya no se necesiten.

Factura y nube que representan la rentabilidad

Esto también permite predecir mejor los costos. Como los precios de
los recursos y servicios se proporcionan por separado, puede predecir
cuánto va a gastar durante un período de facturación determinado en
función del uso que prevea. También puede realizar el análisis
basándose en el crecimiento futuro a partir de los datos de uso del

historial de los que hace el seguimiento su proveedor de servicios en


la nube.
13
Es escalable

Puede aumentar o disminuir los recursos y servicios que va a usar en


función de la demanda o la carga de trabajo siempre que quiera. La

informática en la nube admite el escalado vertical y horizontal, según


sus necesidades.

Escalado vertical, que es el proceso de agregar recursos para aumentar

la potencia de un servidor existente. Un ejemplo de escalado vertical


sería el hecho de agregar más CPU o más memoria.

Escalado horizontal, que es el proceso de agregar más servidores que

funcionen conjuntamente como una unidad. Por ejemplo, tener más de

un servidor para procesar solicitudes entrantes.


Gráfico de crecimiento que representa la escalabilidad

El escalado puede ser manual o automático según desencadenadores


específicos, como el uso de la CPU o el número de solicitudes y

recursos que se pueden asignar o desasignar en cuestión de minutos.

Es elástica

Cuando la carga de trabajo cambia debido a un aumento o una


disminución de la demanda, un sistema de informática en la nube
puede compensarlo mediante la incorporación o la retirada automática

de recursos.

Por ejemplo, imagine que su sitio web aparece en un artículo de


14 noticias, lo que comporta un aumento del tráfico de la noche a la
mañana. Como la nube es elástica, esta asigna automáticamente más

recursos informáticos para controlar el incremento del tráfico. Cuando

el tráfico comience a normalizarse, la nube desasignará


automáticamente los recursos adicionales para minimizar el costo.

Gráfico de puntos que representa la elasticidad

Otro ejemplo sería la ejecución de una aplicación que usan los

empleados: puede hacer que la nube agregue recursos


automáticamente durante las horas de máxima actividad, cuando más
usuarios acceden a la aplicación, y que los quite al final del día.
Es actual

Al usar la nube, puede centrarse en lo que realmente importa:


desarrollar e implementar aplicaciones. El uso de la nube permite

eliminar las cargas de mantenimiento de las revisiones de software, el

programa de instalación de hardware, las actualizaciones y otras tareas


de administración de TI. Todo esto se realiza de forma automática para
garantizar que use las herramientas más recientes y adecuadas para
dirigir su negocio.

Calendario que representa que se mantiene al día

Además, el proveedor de nube se encarga del mantenimiento y la


actualización del hardware del equipo. Por ejemplo, si se produce un
15
error en un disco, el proveedor de servicios en la nube lo reemplazará.
Si hay disponible una nueva actualización de hardware, no tiene que
pasar por todo el proceso de sustitución del hardware. El proveedor de

servicios en la nube garantizará que las actualizaciones de hardware


estén a su disposición automáticamente.

Es confiable

Cuando se tiene un negocio, uno necesita asegurarse de que los datos

siempre van a estar ahí. Los proveedores de informática en la nube


ofrecen servicios de copia de seguridad, recuperación ante desastres y

replicación de datos para garantizar que los datos estén siempre


seguros. Además, a menudo se integra redundancia en la arquitectura

de los servicios en la nube, de modo que, si se produce un error en un

componente, otro componente de copia de seguridad ocupa su lugar.


Esto se conoce como tolerancia a errores y garantiza que los clientes

no se vean afectados cuando se produzca un desastre.

Certificado que representa la confiabilidad

Es global. Los proveedores de servicios en la nube tienen centros de


datos totalmente redundantes ubicados en distintas regiones del

mundo. Esto le da una presencia local, cercana a sus clientes, lo que le


permite ofrecerles el mejor tiempo de respuesta posible estén donde

estén.

Puede replicar sus servicios en diferentes regiones para ofrecer

redundancia y localidad, o seleccionar una región específica para


garantizar que cumple las leyes de residencia de datos y de
16
cumplimiento para los clientes.

Globo terráqueo que representa varios centros de datos

Es segura. Piense en cómo proteger su centro de datos. Por un lado,

está la seguridad física, es decir, quién tienen acceso al edificio, quién


puede manejar los bastidores de los servidores, etc. Por otro, está la

seguridad digital, es decir, quién puede conectarse a los sistemas y a


los datos a través de la red.

Los proveedores de servicios en la nube ofrecen un amplio conjunto


de directivas, tecnologías, controles y habilidades técnicas expertas que

pueden proporcionar más seguridad de la que la mayoría de las

organizaciones pueden lograr por otros medios.


El resultado es una seguridad reforzada, que ayuda a proteger los

datos, las aplicaciones y la infraestructura frente a potenciales


amenazas.

Candado que representa la seguridad

En lo que respecta a las amenazas a la seguridad física, es decir, a la

infraestructura de la nube, los proveedores de servicios en la nube


realizan grandes inversiones en muros, cámaras, puertas, personal de

seguridad, etc., para proteger los activos físicos. También tienen

procedimientos estrictos para garantizar que los empleados solo


tengan acceso a aquellos recursos que se les haya permitido
administrar.

17
Hablemos sobre la seguridad digital. Quizá solo quiera que los usuarios

autorizados puedan iniciar sesión en máquinas virtuales o sistemas de


almacenamiento que se ejecutan en la nube. Los proveedores de

servicios en la nube ofrecen herramientas que le ayudarán a mitigar las


amenazas de seguridad y debe usarlas para proteger los recursos que

usa.
Resumen
La informática en la nube facilita la administración de un negocio. Es
rentable, escalable, elástica, actual, confiable y segura. Esto significa
que puede dedicar más tiempo a lo que importa y menos tiempo a

administrar los detalles subyacentes.

18
REQUISITOS Y
CONDICIONES DE
CUMPLIMIENTO
Al seleccionar un proveedor de nube para hospedar las soluciones,
debería comprender en qué medida puede ayudarle ese proveedor a
cumplir con las normas y estándares. Estas son algunas de las
preguntas que se podrían formular sobre un proveedor potencial:

 ¿Qué cumplimiento ofrece el proveedor de nube cuando se


trata de controlar datos confidenciales?

 ¿Qué cumplimiento ofrecen los servicios del proveedor de


19
nube?
 ¿Cómo puedo implementar mis propias soluciones basadas en

la nube en escenarios que tienen requisitos de cumplimiento o

de acreditación?
 ¿Qué términos forman parte de la declaración de privacidad

para el proveedor?

Ofertas de cumplimiento

En la lista siguiente se proporcionan detalles sobre algunas de las


ofertas de cumplimiento disponibles.

 Criminal Justice Information Services (CJIS, Servicios de

información de la justicia penal). Cualquier agencia local o

estatal de EE. UU. que quiera acceder a la base de datos de los


CJIS del FBI debe cumplir la directiva de seguridad de los CJIS.

Azure es el único gran proveedor de nube que se compromete


contractualmente al cumplimiento de la directiva de seguridad
de los CJIS, que obliga a Microsoft a cumplir los mismos
requisitos que deben cumplir las fuerzas y entidades de

seguridad pública.

 Certificación STAR de Cloud Security Alliance (CSA). Azure,


Intune y Microsoft Power BI han obtenido la certificación STAR,

la cual exige una rigurosa evaluación por parte de un tercero

independiente del nivel de seguridad ofrecido por el proveedor

de servicios en la nube. Esta certificación STAR se basa en lograr


la certificación ISO/IEC 27001 y cumplir los criterios

especificados en la Cloud Controls Matrix (CCM, Matriz de


controles para la nube). Esta certificación demuestra que un
20
proveedor de servicios en la nube:
o Cumple los requisitos aplicables de la norma ISO/IEC
27001.
o Ha solucionado problemas críticos para la seguridad de

la nube, tal y como se describe en la CCM.


o Ha sido evaluado según el Modelo de madurez y de
capacidad de STAR para la administración de
actividades en las áreas de control de la CCM.

 Reglamento general de protección de datos (RGPD). A partir del

25 de mayo de 2018, está en vigor una ley de privacidad

Europea de — RGPD —. El RGPD impone nuevas reglas sobre


las empresas, agencias gubernamentales, entidades sin ánimo
de lucro y otras organizaciones que ofrecen bienes y servicios

a personas de la Unión Europea (UE) o que recopilan y analizan


datos vinculados a residentes en la UE. El RGPD se aplica con

independencia de la ubicación.
 Cláusulas modelo de la UE. Microsoft ofrece a los clientes
cláusulas contractuales estándar de la UE que proporcionan
garantías contractuales con respecto a las transferencias de

datos personales fuera de la Unión Europea. Microsoft es la

primera compañía en recibir la aprobación conjunta del grupo


de trabajo del artículo 29 de la UE que avala que las

protecciones de seguridad contractuales que Azure ofrece a sus

clientes empresariales en la nube cumplen los estándares

actuales de la UE para la transferencia internacional de datos.


Esto garantiza que los clientes de Azure puedan usar los

servicios de Microsoft para mover datos libremente a través de


la nube de Microsoft desde Europa al resto del mundo.
21
 Ley de transferencia y responsabilidad de seguros de salud
(HIPAA). HIPAA es una ley federal de EE. UU. que regula la
información médica protegida (PHI) de los pacientes. Azure
ofrece a los clientes un contrato de socio empresarial (BAA)

para HIPAA, el cual estipula su adhesión a determinadas


disposiciones de seguridad y privacidad de las leyes HIPAA y
Health Information Technology for Economic and Clinical
Health Act (HITECH). Para ayudar a los clientes en sus esfuerzos

de cumplimiento individual, Microsoft ofrece un contrato de

socio empresarial (BAA) a los clientes de Azure como un anexo

de contrato.
 Organización internacional de normalización (ISO) y la
Comisión electrotécnica internacional (CEI) 27018. Microsoft es

el primer proveedor de nube que ha adoptado las normas


ISO/IEC 27018, que abarcan el procesamiento de información

personal por parte de proveedores de servicios en la nube.


 Estándar de seguridad en la nube multinivel (MTCS) de
Singapur. Tras rigurosas evaluaciones llevadas a cabo por el
cuerpo de certificación del MTCS, los servicios en la nube de

Microsoft recibieron la certificación MTCS 584:2013 en todas las

clasificaciones de tres servicios:


• Infraestructura como servicio (IaaS)

• Plataforma como servicio (PaaS)

• Software como servicio (SaaS)

Microsoft fue el primer proveedor de soluciones en la nube (CSP)


global que recibió esta certificación en las tres clasificaciones.

 Controles de organización de servicios (SOC) 1, 2 y 3. Los


22
servicios en la nube cubiertos por Microsoft se auditan al menos

anualmente en el marco de informes SOC por parte de

auditores independientes de terceros. La auditoría de servicios


en la nube de Microsoft abarca los controles de seguridad de

los datos, la disponibilidad, la integridad del procesamiento y la


confidencialidad, que son aplicables a los principios de
confianza incluidos para cada servicio.
 Marco de ciberseguridad (CSF) del Instituto Nacional de
Estándares y Tecnología (NIST). El CSF del NIST es un marco

voluntario que consta de los estándares, las directrices y los


procedimientos recomendados para administrar los riesgos

relacionados con la ciberseguridad. Los servicios en la nube de


Microsoft se han sometido a auditorías de terceros de nivel alto

y moderado del Federal Risk and Authorization Management


Program (FedRAMP) y están certificados según los estándares

del FedRAMP. Además, a través de una evaluación validada


realizada por Health Information Trust Alliance (HITRUST), una
organización líder de desarrollo y acreditación de estándares de
seguridad y privacidad, Office 365 está certificado para los

objetivos especificados en el CSF NIST.

 G-Cloud del gobierno del Reino Unido. El G-Cloud del gobierno


del Reino Unido es una certificación de informática en la nube

para los servicios usados por las entidades gubernamentales en

el Reino Unido. Azure ha recibido la acreditación oficial del

Government Accreditor del gobierno del Reino Unido.

23
ECONOMÍAS DE ESCALA
Las economías de escala son la capacidad de hacer cosas de forma

más eficiente o a un costo inferior por unidad al funcionar a una escala

mayor. Esta ventaja de costos es un beneficio importante de la

informática en la nube.

Los proveedores de servicios en la nube, como Microsoft, Google y


Amazon, son grandes empresas que pueden beneficiarse de las

ventajas de las economías de escala. Además, estos proveedores


pueden traspasar el ahorro a sus clientes.

Los ahorros de los usuarios finales se ponen de manifiesto de varias


formas, una de las cuales es la capacidad de adquirir hardware a un
24
costo inferior. Los proveedores de servicios en la nube también pueden
hacer operaciones con los gobiernos y servicios públicos locales para

obtener ahorros fiscales, menores precios de energía, refrigeración y


conectividad de red de alta velocidad entre sitios. Los proveedores de
servicios en la nube podrán repercutir estos beneficios a los usuarios
finales en forma de precios más bajos que los que podrían conseguir
por su cuenta.
GASTOS DE CAPITAL
FRENTE A GASTOS
OPERATIVOS
Anteriormente, las empresas tenían que adquirir infraestructuras y
entornos físicos para iniciar sus negocios. La infraestructura y el
hardware necesarios para iniciar cualquier negocio suponían un costo
por adelantado considerable. La informática en la nube permite ofrecer

servicios a los clientes sin tener que invertir grandes cantidades de


dinero por adelantado ni dedicar mucho tiempo a preparar el equipo.

Estos dos enfoques relativos a la inversión se conocen como:


25
 Gastos de capital: los gastos de capital hacen referencia a la
inversión previa de dinero en infraestructura física, el IVA de
cuyas facturas se podrá deducir posteriormente. Este tipo de

gasto se hace por adelantado y tiene un valor que disminuye


con el tiempo.
 Gastos operativos: los gastos operativos son dinero que se

invierte en servicios o productos y se facturan al instante. Este

gasto se puede deducir de la factura con IVA durante el mismo


año. No hay ningún costo por adelantado. Se paga por un

servicio o producto a medida que se usa.


Costos de los gastos de capital de informática

Un centro de datos local típico incluye costos como los siguientes:

Costos de servidores

En esta área se incluyen todos los componentes de hardware y su costo

de asistencia. Al comprar servidores, asegúrese de diseñar la tolerancia


a errores y la redundancia, como clústeres de servidores, fuentes de

alimentación redundantes y fuentes de alimentación ininterrumpida.


Cuando sea necesario reemplazar un servidor o agregarlo a un centro

de datos, tendrá que pagar por el equipo. Esto puede afectar al flujo

de efectivo inmediato porque tendrá que pagar el servidor por


adelantado.

Costos de almacenamiento
26
En esta área se incluyen todos los componentes de hardware de
almacenamiento y su costo de asistencia. En función de la aplicación y

el nivel de tolerancia a errores, el almacenamiento centralizado puede


ser costoso. Para las organizaciones de mayor tamaño, puede crear
niveles de almacenamiento en los que el almacenamiento con

tolerancia a errores más costoso se use para las aplicaciones críticas y


el menos costoso para los datos de menor prioridad.

Costos de red

Los costos de red incluyen todos los componentes de hardware locales,

incluido el cableado, los conmutadores, los puntos de acceso y los


enrutadores. Esto también incluye las conexiones a Internet y de red de

área extensa (WAN).


Costos de copia de seguridad y archivo

Este es el costo de realizar copias de seguridad y copiar o archivar los

datos. Las opciones podrían incluir la configuración de una copia de


seguridad con la nube como origen o destino. Hay un costo por

adelantado para el hardware y otros costos adicionales de

mantenimiento de las copias de seguridad y los bienes consumibles,


como las cintas.

Costos de continuidad y recuperación ante desastres de la

organización

Junto con la tolerancia a errores y la redundancia del servidor, tendrá


que planear cómo recuperarse ante un desastre y seguir operativo. El
plan debe consistir en crear un sitio de recuperación de datos. También

27 podría incluir generadores de reserva. La mayoría son costos por


adelantado, especialmente si crea un sitio de recuperación de datos,
pero hay un costo adicional continuo para la infraestructura y su

mantenimiento.

Costos de infraestructura del centro de datos

Estos son los costos de la construcción y la fabricación de equipos, así


como los futuros costos de renovación y remodelación que pueden

surgir a medida que aumenten las demandas. Además, esta


infraestructura incurre en gastos operativos de electricidad, superficie,

refrigeración y mantenimiento del edificio.


Personal técnico

Aunque no se trata de un gasto de capital, el personal necesario para

trabajar en la infraestructura es específico de los centros de trabajo


locales. Necesitará personal y conocimientos técnicos para instalar,

implementar y administrar los sistemas en el centro de datos y en el

sitio de recuperación de datos.

Costos de los gastos operativos de la informática en la nube

Con la informática en nube, muchos de los costos asociados a un

centro de datos local recaen en el proveedor de servicios. En lugar de

pensar en los costos del hardware físico y el centro de datos, la


informática en la nube tiene otro conjunto de costos. A efectos de
contabilidad, todos estos costos son gastos operativos:

28
Leasing de software y características personalizadas

El uso de un modelo de pago por uso requiere la administración activa


de las suscripciones para garantizar que los usuarios no utilicen de
forma indebida los servicios y que las cuentas aprovisionadas no se
empleen en vano. La facturación se inicia cuando el proveedor
aprovisiona los recursos. Su responsabilidad es cancelar el

aprovisionamiento de los recursos cuando no están en uso, para poder


minimizar los costos.

El escalado se cobra en función del uso o la demanda, en lugar del


hardware fijo o la capacidad.

La informática en nube se puede facturar de varias maneras, como el

número de usuarios o el tiempo de uso de CPU. Sin embargo, las


categorías de facturación también pueden incluir la RAM asignada, las

operaciones de E/S por segundo (IOPS) y el espacio de


almacenamiento. Establezca una previsión del tráfico de las copias de
seguridad y del de la recuperación de datos para determinar el ancho
de banda necesario.

Facturación en el nivel de usuario o la organización.

El modelo de suscripción (pago por uso) es un método de facturación


de informática diseñado para organizaciones y usuarios. A la

organización o al usuario se le facturan los servicios utilizados,


normalmente de forma periódica. Puede escalar, personalizar y
aprovisionar los recursos informáticos, incluidas las plataformas de
software, almacenamiento y desarrollo. Por ejemplo, cuando se usa un
servicio en la nube dedicado, puede pagar en función del uso y el
29
hardware del servidor.

Ventajas de los gastos de capital

Con los gastos de capital, los gastos se planean al principio de un


proyecto o período de presupuesto. Los costos son fijos, lo que

significa que sabe exactamente cuánto se gasta. Esto es atractivo

cuando tiene que predecir los gastos antes de iniciar un proyecto


debido a las limitaciones del presupuesto.

Ventajas de los gastos operativos

La demanda y el crecimiento no se pueden prever y pueden superar las

expectativas, lo que supone un reto para el modelo de gastos de


capital, como se muestra en el gráfico siguiente.
En este gráfico se puede ver que la demanda esperada puede ser

diferente a la real y de qué forma la demanda puede superar la


infraestructura de gastos de capital.

Con el modelo de gastos operativos, las empresas que quieran probar

un producto o un servicio nuevo no tienen que invertir en

equipamiento. En su lugar, pagan por la infraestructura la cantidad que


sea necesaria.

Los gastos operativos son especialmente interesantes si la demanda

fluctúa o no se conoce. Habitualmente se dice que los servicios en la

nube son ágiles. La agilidad de la nube es la capacidad de cambiar


rápidamente una infraestructura de TI para adaptarse a las necesidades
cambiantes del negocio. Por ejemplo, si el servicio aumenta
considerablemente un mes, puede adaptarse a la demanda y pagar
30
más ese mes concreto. Si el mes siguiente cae la demanda, puede
reducir los recursos usados y pagar menos. Esta agilidad le permite
administrar los costos de forma dinámica y optimizar el gasto a medida
que cambien los requisitos.
MODELOS DE
IMPLEMENTACIÓN EN LA
NUBE
Existen tres modelos diferentes de implementación en la nube. Un
modelo de implementación en la nube define dónde se almacenan los
datos y cómo los clientes interactúan con ellos, cómo llegan a los datos
y donde se ejecutan las aplicaciones. También depende de qué

cantidad de su propia infraestructura quiera o necesite administrar.

Explorar los tres métodos de implementación de informática en la nube

31
1

Análisis de datos
con Power BI
BIENVENIDA
Este módulo va más allá de la visualización y exploración del contenido
y explica cómo interactuar con él trabajando con informes y paneles

para descubrir y compartir nuevas perspectivas empresariales.

En este módulo, aprenderá a hacer lo siguiente:

 Explorar el modo en que los filtros se aplican a los datos

 Aprender sobre las diferentes maneras de filtrar los informes


 Crear marcadores personales

2  Analizar y exportar datos

Requisitos previos

 Acceder al servicio Power BI

Filtrar datos con Power BI 15 min

Ver los datos 5 min

Formular preguntas sobre los datos 5 min

Aplicar filtros a informes 25 min

Comprobación de conocimientos 5 min

Resumen 5 min
Filtrar datos con Power BI
Los datos constituyen el núcleo de Power BI. A medida que explora los
informes, cada objeto visual obtiene sus datos subyacentes de fuentes

que a menudo contienen muchos más datos de los que necesita. Power

BI ofrece varias maneras de filtrar y resaltar informes. Saber cómo filtrar


los datos es clave para buscar la información adecuada.

Nota

El filtrado solo se aplica a los informes, no a los paneles.

Nota

Al filtrar un objeto visual, como un gráfico de barras, simplemente está


cambiando la vista de los datos de ese objeto visual. No está modificando

los datos de origen de manera alguna.


Segmentación de datos
Un tipo sencillo de filtrado que puede usar directamente en la página
del informe es la segmentación. La segmentación de datos proporciona

indicaciones sobre las formas en que puede filtrar los resultados en los

objetos visuales de una página del informe. Hay varios tipos diferentes

de segmentaciones de datos: números, categorías y fechas. La


segmentación de datos facilita el filtrado de todos los objetos visuales
de la página a la vez.

Si desea seleccionar más de un campo, mantenga presionada la tecla

Ctrl y haga clic en los campos adicionales.

Explorar el panel Filtros

Otra manera de filtrar los datos consiste en abrir y modificar los filtros
en el panel Filtros. El panel Filtros contiene filtros que se agregaron al

informe por el diseñador de informes. Como consumidor, puede


interactuar con los filtros y guardar los cambios, pero no puede agregar
nuevos filtros.

Los cuatro tipos de filtros son:

 Informe: se aplica a todas las páginas del informe.


 Página: se aplica a todos los objetos visuales en la página del

informe actual.
 Objeto visual: se aplica a un solo objeto visual en una página
del informe. Solo verá los filtros a nivel de objeto visual si ha
seleccionado un objeto visual en el lienzo del informe.

 Obtención de detalles: permite explorar sucesivamente vistas

más detalladas de las vistas dentro de un solo objeto visual.

Por ejemplo, en la siguiente captura de pantalla, el diseñador agregó

tres filtros de nivel de página: Segment, Year y Region. Observe que


Year está establecido actualmente para filtrar por el año 2014.

Puede aplicar filtros en el panel Filtros, o bien seleccionar datos

directamente en el informe para restringir por fecha, categoría,

geografía, etc.
6

Nota

Puede explorar los datos modificando los filtros existentes. Los


cambios que realice se guardan para usted (no para otros) con el

informe, incluso si abre el informe en una aplicación móvil.

Cuando cierre el informe, los filtros se guardan. Para deshacer el

filtrado y volver a los valores predeterminados de filtrado,

segmentación, obtención de detalles y clasificación que ha establecido


el autor del informe, seleccione Restablecer valores

predeterminados en la barra de menús superior.


Borrar un filtro

En el modo de filtrado básico o avanzado, seleccione el icono de


borrador para borrar el filtro. A medida que ajuste el filtro, la consulta
de búsqueda se actualiza para reflejar las opciones seleccionadas.

7
Modo avanzado

La activación de las casillas para aplicar filtros simples es eficaz, pero a

veces es necesario aplicar un filtro basado en un intervalo dinámico. Es


posible que quiera filtrar entre dos fechas, por ejemplo, desde el 1 de

mayo de 2018 al 31 de julio de 2018. Puede filtrar dentro de un valor

numérico determinado, por ejemplo, las ventas entre 10 000 y 50 000


dólares. En estas situaciones, se necesita el modo avanzado.

Si los valores son continuos (no discretos) o representan un intervalo,

puede seleccionar el nombre del campo para abrir el modo de filtro


avanzado. Utilice le menú desplegable y los cuadros de texto para
especificar un intervalo de valores que desee ver.

Si los valores de campo representan una fecha u hora, puede


especificar una hora inicial y final al usar los filtros de fecha y hora.
Cambiar el modo en que se ordena un gráfico en un informe

En un informe de Power BI, puede ordenar la mayoría de los objetos


visuales alfabéticamente o por valores numéricos de cada categoría.
9
Por ejemplo, el siguiente gráfico se ordena por la categoría Store name
(Nombre de tienda).
Es sencillo cambiar el criterio de ordenación de una categoría (por

ejemplo, nombre de almacén) a un valor (por ejemplo, ventas por pies


cuadrados). En este ejemplo, tendría que seleccionar el botón de
puntos suspensivos (....) y elegir Ordenar por >Sales Per Sq Ft (Ventas
por pies cuadrados). Si lo desea, puede volver a seleccionar los puntos

suspensivos y elegir Orden descendente.

10

Nota

No todos los objetos visuales se pueden ordenar. Por ejemplo, los


siguientes objetos visuales no se pueden ordenar: gráfico de rectángulos,

mapa, mapa coroplético, dispersión, medidor, tarjeta, tarjeta de varias


filas y cascada.

Guardar los cambios del criterio de ordenación

Los informes de Power BI conservan los filtros, las segmentaciones, la


ordenación y otros cambios en la vista de datos que realice. Cuando

cierra un informe y más adelante vuelve a él, los cambios se habrán


guardado. Si desea revertir los cambios realizados en la configuración
del diseñador de informes, seleccione Restablecer valores

predeterminados en la barra de menús superior.

Exploración en profundidad de un objeto visual

Cuando un objeto visual tiene una jerarquía, puede profundizar para


mostrar detalles adicionales. Por ejemplo, podría tener un objeto visual

que examina el número de medallas olímpicas mediante una jerarquía

formada por deporte, disciplina y evento.

En este ejemplo, puede seleccionar el elemento Deportes acuáticos

para ver datos de natación, trampolín y waterpolo. Seleccione el

elemento de salto para ver los detalles de eventos de trampolín,

plataforma y salto sincronizado.

Si no está seguro de qué objetos visuales de Power BI contienen una


11
jerarquía, mantenga el cursor sobre un objeto visual. Si ve los siguientes
controles de exploración en profundidad en la esquina superior, el
objeto visual tiene una jerarquía.

Las fechas son un tipo único de jerarquía. Cuando el diseñador de


informes agrega un campo de fecha a un objeto visual, Power BI agrega

automáticamente una jerarquía de tiempo que contiene el año, el

trimestre, el mes y el día.


Usar marcadores para
compartir información
detallada y crear historias
Puede interactuar con filtros y guardar solo los cambios para usted. Sin

embargo, en ocasiones es posible que desee compartir determinadas


vistas filtradas con su equipo. En esos casos, puede crear marcadores
de informe.

El uso de marcadores en Power BI le ayuda a capturar la vista


configurada actualmente de una página del informe, incluidos los
filtros y el estado de los objetos visuales. Más adelante puede volver a

ese estado simplemente seleccionando el marcador guardado.


12
Para ver los marcadores de informes en acción, vaya a cualquier
informe de Power BI para el que tenga acceso de vista o edición y
seleccione el menú desplegable Marcadores en la barra de acción.

Crear marcadores

Cuando haya seleccionado el informe y la vista que desee, expanda el


menú desplegable Marcadores y seleccione Agregar marcador

personal. De forma predeterminada, Power BI le sugerirá un nombre


genérico para el marcador. Puede escribir su propio nombre y
seleccionar Guardar.
Después de crear un marcador, para mostrarlo, seleccione su nombre
en la lista desplegable. Tenga en cuenta que la ruta de navegación para
el informe ahora contendrá el marcador que está viendo actualmente.

13 Nota

Podrá crear un máximo de 20 marcadores por informe.

Abrir y ver los marcadores

A veces, el diseñador de informes incluirá marcadores como parte del


informe. Para ver un marcador personal o un marcador de informe,

seleccione el icono de marcador y seleccione lo que quiera. Los iconos

de marcador se muestran en el panel Marcador que puede abrir


mediante la selección de Marcadores > Mostrar más marcadores.
Ver los datos
Los objetos visuales se crean por los diseñadores de informes y paneles
y, a continuación, se comparten con los consumidores. Como
14 consumidor, puede elegir mostrar, exportar y analizar los datos que se
usaron para crear cada objeto visual.

Mostrar datos

Los objetos visuales de Power BI se crean a partir de datos que puede


ver. Al activar Mostrar datos, Power BI muestra los datos debajo del
objeto visual.

En Power BI, puede abrir un informe y seleccionar un objeto visual. Para


mostrar los datos que se usaron para crear el objeto visual, seleccione
Más opciones (...) del objeto visual y seleccione Tabla visual.
Exportación de datos a Excel

En ocasiones, es posible que desee utilizar Excel para ver e interactuar


con datos de Power BI. La característica Analizar en Excel le permite
hacerlo. Con esta opción también le puede tener acceso a las
características de tabla dinámica, gráfico de datos y segmentación en
Excel en función del conjunto de datos que existe en Power BI.

15 Al seleccionar Analizar en Excel en el menú de puntos suspensivos (...)


que está asociado a un informe, Power BI crea un archivo de conexión
de datos de Office (.odc) y lo descarga del explorador a su equipo.

Nota

Los datos exportados en Excel son su propia copia de los datos y no se


actualizarán automáticamente si se actualizan los datos originales.
Analizar datos en Excel

Al abrir el archivo en Excel, aparece una lista de Tabla dinámica y


Campos vacía con las tablas, los campos y las medidas del conjunto de
datos de Power BI. Puede crear tablas dinámicas y gráficos, así como
analizar ese conjunto de datos, como lo haría con un conjunto de datos
local en Excel.

Nota

Si desea ver los datos que se usaron para crear un objeto visual, puede
exportar esos datos a Excel como un archivo .xlsx o. csv.

16
Formular preguntas sobre
los datos
A veces, la manera más rápida de obtener respuestas acerca de los
datos es formular preguntas en la característica Preguntas y respuestas
de Power BI.

Nota

Aunque Preguntas y respuestas de Power BI solo puede actualmente


responder consultas formuladas en inglés, existe una versión preliminar
para español que su administrador de Power BI puede habilitar.

Explorar Preguntas y respuestas

Puede usar Preguntas y respuestas para explorar los datos mediante


funciones de lenguaje intuitivas y naturales de Power BI y recibir
respuestas en forma de gráficos.
17

Formular una pregunta

Formule una pregunta sobre sus datos en Preguntas y respuestas con


un lenguaje natural. Por lenguaje natural nos referimos al lenguaje
normal que los seres humanos usan para comunicarse entre sí cada día.
Por ejemplo: "¿Cuál es el total de unidades por región?"
Preguntas y respuestas está disponible en paneles e informes en
Power BI. Para abrir la pantalla de Preguntas y respuestas, vaya al panel
y coloque el cursor en el cuadro de pregunta.

18

Si las etiquetas del eje y los valores de los objetos visuales incluyen las
palabras ventas, cuenta, mes y oportunidades, puede formular
preguntas que utilicen esos valores. Por ejemplo, "Qué cuenta tiene la
mayor oportunidad" o "Mostrar las ventas por mes como un gráfico de
barras".
En el lateral de la pantalla se proporcionan otros elementos útiles. Para
cada conjunto de datos, Preguntas y respuestas muestra las palabras
clave y en ocasiones algunas sugerencias o ejemplos de preguntas.
Seleccione cualquier elemento para agregarlo al cuadro de pregunta.

Otra forma en que Preguntas y Respuestas le ayuda a formular


preguntas es mediante indicaciones, el completado automático y pistas
visuales.

19

Objetos visuales de Preguntas y respuestas

Preguntas y respuestas escoge el mejor objeto visual en función de los


datos que se muestran. Por ejemplo, los números podrían mostrarse
como un gráfico de líneas, mientras que las ciudades es más probable
que se muestren como un mapa.

También puede indicar a Preguntas y respuestas qué objeto visual debe


utilizar agregándolo a su pregunta. Preguntas y respuestas le facilitará
una lista de tipos de objetos visuales factibles. En el ejemplo anterior,
podría preguntar, ""¿Cuál es el total de unidades por región en un
gráfico circular?"
Palabras y terminología que reconoce Preguntas y respuestas

La mejor manera de determinar si Power BI reconoce una palabra clave


es escribiéndola en el cuadro de pregunta. Si la palabra o término
aparece atenuado, Power BI no lo reconoce. Las palabras clave en la
20 siguiente tabla usan el singular y el presente, pero reconocen todos los
tiempos verbales y pluralidades.

Para más información, consulte: Sugerencias para hacer preguntas con


Preguntas y respuestas de Power BI

Categoría Palabras clave

Agregados total, suma, cantidad, número, recuento, promedio,

máximo, mínimo, menor, más grande, más pequeño,


más alto, mayor, máx., mín

Comparaciones vs, frente a, en comparación con

Fechas Power BI reconoce la mayoría de los términos de

fecha (día, semana, mes, año, trimestre, década, etc.)


Categoría Palabras clave

Fechas relativas hoy, ahora, hora actual, ayer, mañana, actual, después,
las próximas, último, anterior, hace, antes de ahora,

después, a más tardar, de, en, desde ahora, después

de ahora, en el futuro, pasado, último, anterior, sobre,


hace N días, de hoy en N días, una vez, dos veces.
Ejemplo: número de pedidos en los 6 últimos días.

Comandos de ordenado, ordenar por, dirección, agrupar, agrupar

consulta por, de, mostrar, enumerar, darme, nombre, solo,


organizar, clasificar, comparar, con, por orden

alfabético, ascendente, descendente, orden

21 Intervalo mayor, más, más grande, superior, sobre, >, menos,


más pequeño, menor, bajo, <, al menos, no menor
que, > =, como máximo, no más de, <=, en, entre, en
el intervalo de, desde, más adelante, anteriormente,

antes, después, en, más tarde que, después, desde, a

partir de, terminando con

Horas a. m., p. m., en punto, mediodía, medianoche, hora,


minuto, segundo, hh:mm:ss. Ejemplos: 10 p. m., 10:35

p. m., [Link] p. m., 10 en punto, mediodía,


medianoche, hora, minuto, segundo.

Preguntas y respuestas le ayuda a formular la pregunta

Preguntas y respuestas hace todo lo posible para comprender y


responder a la pregunta de esta manera:
 Completa automáticamente palabras y preguntas. Usa diversas

estrategias, como el completado automático de palabras


reconocidas y preguntas utilizadas anteriormente que
devolvieron respuestas válidas. Si hay más de una opción para
el completado automático, aparecerán en una lista desplegable.

 Corrige la ortografía.

 Proporciona una vista previa de la respuesta en forma de un


objeto visual. El objeto visual se actualiza a medida que escribe

y modifica la pregunta (no espera a que presione Entrar).

 Sugiere términos de reemplazo de los conjuntos de datos

subyacentes cuando mueve el cursor en el cuadro de pregunta.


 Redefine la pregunta en función de los datos de los conjuntos

de datos subyacentes. Preguntas y respuestas reemplaza las


palabras utilizadas por sinónimos de los conjuntos de datos
22
subyacentes. Al leer la redefinición, sabrá si Preguntas y
respuestas comprendió su pregunta o no.
 Atenúa palabras que no entiende.
Escenario
¡Enhorabuena! Le acaban de nombrar director de ventas de una
empresa de fabricación de ropa llamada Van Arsdel. Su primera
tarea es analizar los datos de ventas y marketing para detectar
por qué hay una caída inesperada en las ventas de junio.

Procedimiento

Agregar la aplicación Ejemplo de marketing y ventas

Nota: Si ya tiene la aplicación de Ejemplo de marketing y


ventas instalada, vaya a la sección siguiente.
1. Inicie sesión en [Link]
23 2. Seleccione la pestaña Aplicaciones situada a la izquierda.
3. Seleccione el botón Obtener aplicaciones.
4. Seleccione el vínculo "Buscar más aplicaciones y servicios de
consultoría en AppSource" en la parte inferior del menú.
5. Busque "Ejemplo de marketing y ventas".
24
6. Cuando aparezca la indicación ¿Quiere instalar esta
aplicación de Power BI?, seleccione el botón Instalar.
7. Seleccione el vínculo "Obtener ahora" y espere a que la
aplicación se instale.
8. En la pantalla Empezar a trabajar con la nueva aplicación,
seleccione el botón Explorar aplicación.
9. Seleccione la pestaña Aplicaciones a la izquierda y, a
continuación, seleccione el icono de la aplicación Ejemplo de
marketing y ventas.
10. La primera vez que inicie la aplicación, verá Empezar a trabajar
con la nueva aplicación.
11. Seleccione el botón Explorar aplicación para explorar el panel.

Aplicar un filtro a una página de informe

En esta sección, explorará dos preguntas:

 ¿Por qué nuestra empresa, VanArsdel, tuvo en junio resultados

por debajo de lo esperado?


 ¿Cuáles son nuestras mejores oportunidades de crecimiento?

1. En la aplicación Ejemplo de marketing y ventas, empiece por


la página del informe de categoría de año hasta la fecha
seleccionando la pestaña de categoría de año hasta la fecha
en la parte inferior de cualquier informe (o el objeto visual de
unidades totales del año hasta la fecha en el panel).

25

2. Observe la anomalía del gráfico relativo a las unidades


totales por mes y fabricante.

3. Si aún no está abierto, abra el panel de filtros


seleccionando Filtros en el lado derecho del informe.
4. Power BI muestra todos los filtros que la diseñadora del
informe aplicó a ese objeto visual.

26

5. La diseñadora del informe filtró por Van Arsdel, nuestros tres


principales competidores y el año 2014. Es una buena idea, pero filtró
también por la región central, y lo que usted quiere ver son todas las
regiones. Desactive el filtro de región haciendo clic en el icono de
borrador en ese filtro.

6. Mueva el puntero sobre el gráfico de unidades totales del


año hasta la fecha por mes y fabricante y fíjese en los segmentos
en los que compite Van Arsdel. Observe que competimos en
moderación y comodidad.
7. Mantenga el puntero sobre nuestros competidores para ver
los segmentos en que compiten. ¿Detecta algún patrón?

27

8. Explore la misma pregunta solo para el mes de junio. Para


aplicar un filtro cruzado para esta página del informe de junio, en el
objeto visual del total de unidades por mes y fabricante, haga clic
en la etiqueta del 14 de junio. Observe que todos los objetos visuales
de esta página del informe se actualizan para junio.
9. Observe el resaltado cruzado del objeto visual del total de
unidades del año hasta la fecha por fabricante y región.

28

10. Mantenga el puntero sobre cada compañía para ver el


patrón de segmentos durante junio.
11. ¿Qué conclusiones obtiene sobre los dos segmentos con
mejores resultados en junio y por qué nuestras ventas totales
disminuyen durante ese tiempo?
12. Para explorar la misma pregunta de manera diferente:
vaya al informe de oportunidades de crecimiento
seleccionando la pestaña de oportunidades de crecimiento.
13. Mantenga el puntero sobre el objeto visual del gráfico de
barras del total de unidades por segmento y, a continuación,
seleccione el icono "Rastrear agrupando datos" (flecha arriba)
para ver el "total de unidades por fabricante".

29

14. Desactive los filtros isVanArsdel y Segmento haciendo clic en


los iconos de borrador. Esto nos permitirá ver todas las empresas y
los segmentos. Observe que el Van Arsdel es el fabricante líder a nivel
global.
15. Aplique un filtro cruzado para junio para el total de unidades
30 y total de unidades por 12 meses consecutivos por mes
seleccionando la fecha de 14 de junio. Una vez más, observe el
rendimiento de Van Arsdel en junio.
16. Explore en profundidad para ver los segmentos de junio
haciendo clic en el icono "Haga clic para activar Explorar en
profundidad" y luego en el icono "Ir al siguiente nivel de la jerarquía".

17. Una vez más, ¿cuáles son los segmentos con mejor
rendimiento en junio?

31

18. ¿Por qué las ventas de Van Arsdel no ofrecen en junio los
resultados esperados? ¿Qué podemos hacer para competir mejor?
1

Creación y uso de informes


de análisis con Power BI
BIENVENIDA
Esta ruta de aprendizaje es una introducción a Power BI y le enseña a
usar y crear informes de inteligencia empresarial.

Requisitos previos

 Familiaridad con Excel

 Acceso al servicio Power BI

 Power BI Desktop

2
Filtrar datos con Power BI 15 min

Ver los datos 5 min

Formular preguntas sobre los datos 5 min

Aplicar filtros a informes 25 min

Comprobación de conocimientos 5 min

Resumen 5 min
Introducción a la
compilación con Power BI
Conozca mejor qué es Power BI, incluidos sus bloques de creación y
cómo funcionan conjuntamente.

En este módulo, aprenderá a realizar las tareas siguientes:

 Obtenga información sobre cómo funcionan conjuntamente

las aplicaciones y los servicios de Power BI.


 Descubra cómo Power BI puede hacer que su negocio sea más
eficaz.

3  Obtenga información sobre cómo crear objetos visuales e


informes.

Requisitos previos

Ninguno

Introducción 6 min

Uso de Power BI 2 min

Bloques de creación de Power BI 12 min

Paseo por el servicio Power BI y uso 12 min

Resumen 5 min

Comprobación de conocimientos 10 min


Introducción
Microsoft Power BI es una colección de servicios de software,

aplicaciones y conectores que funcionan conjuntamente para


convertir orígenes de datos sin relación entre sí en información
coherente, interactiva y atractiva visualmente. Tanto si se trata de un

sencillo libro de Microsoft Excel como de una colección de almacenes


de datos híbridos locales o basados en la nube, Power BI le permite

conectar fácilmente los orígenes de datos, visualizar o descubrir lo


más importante y compartirlo con quien quiera.

Power BI puede ser sencillo y rápido; capaz de crear información


rápida a partir de un libro de Excel o una base de datos local. Sin
embargo, Power BI también es estable y tiene una funcionalidad apta

para empresas, listo no solo para un modelado exhaustivo y un


análisis en tiempo real, sino también para un desarrollo
personalizado. Por tanto, puede convertirse en su herramienta
personal de creación de informes y visualización, pero también puede
actuar como el motor de análisis y de decisión que impulsa proyectos

en grupo, divisiones o empresas enteras.


Si es principiante con Power BI, este módulo le ayudará a empezar a

trabajar. Si ya tiene experiencia con Power BI, este módulo le


ayudará a relacionar conceptos y rellenar las lagunas.

Partes de Power BI

Power BI consta de una aplicación de escritorio de Microsoft

Windows denominada Power BI Desktop, un servicio SaaS (software

como servicio) en línea denominado servicio Power BI, y


aplicaciones móviles de Power BI disponibles en cualquier

dispositivo, con aplicaciones de BI nativas para Windows, iOS y


Android.

Estos tres elementos, Desktop, el servicio y las aplicaciones móviles,


están diseñados para permitir a los usuarios crear, compartir y utilizar
información empresarial de la forma que les resulte más eficaz para
su rol.

Adaptación de Power BI a su rol


Puede que la forma de utilizar Power BI dependa de su rol en un

proyecto o equipo. Por tanto, otras personas con otros roles podrían
utilizar Power BI de un modo distinto, lo cual es normal.

Por ejemplo, podría darse el caso de que usted consultara los

informes y los paneles del servicio Power BI y que esto sea lo único

que hace con Power BI. No obstante, su compañero de trabajo,


dedicado a procesar los números y crear informes empresariales,
puede que use Power BI Desktop y que publique informes de Power

BI Desktop en el servicio Power PI, que usted puede usar después


para verlos. Por su parte, otra compañera que se dedica a las ventas

podría utilizar principalmente la aplicación para móviles de Power BI


para supervisar el progreso de sus cuotas de venta y profundizar en
los detalles de los nuevos clientes potenciales.

6
También podría utilizar cada elemento de Power BI en distintos

momentos, en función de su objetivo o su rol en un proyecto o


trabajo determinados.

Quizás vea el progreso de inventario y fabricación en un panel en


tiempo real en el servicio y también utilice Power BI Desktop a fin de

crear informes para su equipo sobre las estadísticas de involucración


de los clientes. La forma de usar Power BI puede depender de qué
característica o servicio de Power BI es la mejor herramienta para su

situación. No obstante, tiene a su disposición cada una de las partes

de Power BI, que es lo que lo convierte en un servicio flexible y


atractivo.

Trataremos estos tres elementos, Desktop, el servicio y las


aplicaciones móviles, con más detalle más adelante. En los módulos
y las unidades siguientes, también aprenderá a crear informes en

Power BI Desktop, compartirlos en el servicio y analizarlos en


profundidad en el dispositivo móvil.

Descargar Power BI Desktop

Puede descargar Power BI Desktop desde la Web o como aplicación

de Microsoft Store en la pestaña Windows.

Estrategia de

descarga Vínculo Notas

Aplicación de la Tienda Se mantendrá actualizada

Tienda Windows Windows automáticamente


7
Descarga desde la Descargar Se debe actualizar periódicamente
Web .msi de manera manual

Iniciar sesión en el servicio Power BI

Para poder iniciar sesión en Power BI, necesitará una cuenta. Para
obtener una evaluación gratuita, vaya a [Link] y regístrese
con su dirección de correo electrónico.

Para obtener más información sobre cómo configurar una cuenta, vea

Inicio de sesión en el servicio Power BI.

El flujo de trabajo en Power BI

Un flujo de trabajo habitual de Power BI comienza en Power BI

Desktop, donde se crea un informe. Luego, ese informe se publica en


el servicio Power BI y, por último, se comparte para que los usuarios

de las aplicaciones de Power BI Mobile puedan usar la información.

No siempre ocurre de este modo, pero no importa. Vamos a usar ese


flujo para ayudarle a conocer las distintas partes de Power BI y cómo

se complementan entre sí.

Ahora que tenemos una visión general de este módulo, sabemos qué

es Power BI y conocemos sus tres elementos principales, vamos a ver


en qué consiste usar Power BI.

Uso de Power BI
Ahora que hemos presentado los aspectos básicos de Microsoft
8 Power BI, pasemos a algunas experiencias prácticas y una visita

guiada.

Las actividades y los análisis que aprenderá con Power BI suelen


seguir un flujo común. El flujo habitual de actividad presenta un

aspecto similar al siguiente:

1. Integrar datos en Power BI Desktop y crear un informe.

2. Publicarlo en el servicio Power BI, donde podrá crear nuevas


visualizaciones o compilar paneles.

3. Compartir los paneles con otros usuarios, especialmente con


personas que se estén desplazando.

4. Ver informes y paneles compartidos e interactuar con ellos en


aplicaciones de Power BI Mobile.
Como se mencionó anteriormente, podría dedicar todo su tiempo en
el servicio Power BI consultando objetos visuales e informes creados

por otros usuarios. Y esto está bien. También puede darse el caso de
9
que una persona de su equipo pase su tiempo en Power BI Desktop,
lo cual también es correcto. Para ayudarle a entender Power BI al
completo y lo que puede hacer con él, se lo mostraremos todo. Así,
luego podrá decidir cómo usarlo de la forma que más le convenga.

Vamos a empezar y a profundizar en todo el proceso. El objetivo

principal es aprender los bloques de creación básicos de Power BI,

con lo que obtendremos una base sólida para descubrir cómo se


convierten los datos en informes y objetos visuales atractivos.
Bloques de creación de
Power BI
Todo lo que haga en Microsoft Power BI puede dividirse en unos

bloques de creación básicos. Cuando los comprenda, podrá trabajar


sobre ellos y empezar a crear informes elaborados y complejos.
Después de todo, incluso las cosas aparentemente complejas se
construyen a partir de bloques de construcción básicos. Por ejemplo,

los edificios se crean con madera, acero, hormigón y vidrio, y los


automóviles están hechos de metal, tela y caucho. Por supuesto, los

edificios y los automóviles pueden ser básicos o más elaborados,

10 dependiendo de cómo se organicen esos bloques de creación

básicos.

Vamos a echar un vistazo a estos bloques de creación básicos,

analizaremos algunos elementos sencillos que pueden crearse con


ellos y después veremos brevemente cómo se pueden crear también

cosas complejas.

Estos son los bloques de creación básicos de Power BI:

 Visualizaciones
 Conjuntos de datos

 Informes
 Paneles

 Iconos
Visualizaciones

Una visualización (también llamada objeto visual) es una


representación visual de los datos, como un diagrama, un mapa

codificado por colores u otros elementos interesantes que pueda

crear para representar los datos visualmente. Power BI tiene infinidad


de tipos de visualización, y muchos más que no dejan de llegar. La
siguiente imagen muestra una colección de distintas visualizaciones
que se crearon en el servicio Power BI.

11

Las visualizaciones pueden ser simples, como un único número que

representa un aspecto significativo, o visualmente complejas, como


un mapa de colores degradados que muestra la opinión del votante
sobre un determinado problema o preocupación social. El objetivo

del objeto visual es presentar los datos de forma que ofrezca


contexto e información detallada, lo que probablemente resultaría

difícil tan solo con una tabla de números o texto sin formato.

Conjuntos de datos

Un conjunto de datos es una colección de datos que Power BI utiliza


para crear sus visualizaciones.

Puede tener un conjunto de datos sencillo basado en una sola tabla

de un libro de Microsoft Excel, similar al que se muestra en la


siguiente imagen.

12

Los conjuntos de datos también pueden ser una combinación de


muchos orígenes diferentes, que puede filtrar y combinar para

proporcionar una colección de datos única (un conjunto de datos)


para usarla en Power BI.

Por ejemplo, puede crear un conjunto de datos de tres campos de la

base de datos, una tabla del sitio web, una tabla de Excel y los
resultados en línea de una campaña de marketing por correo

electrónico. Esa combinación única se sigue considerando un


conjunto de datos único, aunque proceda de muchos orígenes
diferentes.

Filtrar los datos antes de traerlos a Power BI le permite centrarse en

los datos que realmente le importan. Por ejemplo, puede filtrar su


base de datos de contactos para incluir en el conjunto de datos solo
los clientes que recibieron mensajes de correo electrónico de la
campaña de marketing. Después, puede crear objetos visuales

basados en ese subconjunto (la colección filtrada) de clientes que se


incluyeron en la campaña. El filtrado le ayuda a centrarse en los datos
y en sus esfuerzos.

Un aspecto fundamental de Power BI es la gran cantidad de


13
conectores de datos que incluye. Tanto si los datos que desea están
en Excel o en una base de datos de Microsoft SQL Server, en Azure o
en Oracle, o en un servicio como Facebook, Salesforce o MailChimp,
Power BI tiene conectores que le permiten conectar fácilmente con
los datos, filtrarlos si hace falta e incluirlos en el conjunto de datos.

Después de tener un conjunto de datos, puede comenzar a crear

visualizaciones que muestren las diferentes partes de él de maneras


diferentes y obtener información en función de lo que vea. Ahí es

donde entran en juego los informes.

Informes

En Power BI, un informe es una colección de visualizaciones que

aparecen juntas en una página o varias. Al igual que cualquier otro


informe que se puede crear para una presentación de ventas o un
trabajo para la escuela, un informe de Power BI es una colección de

elementos que están relacionados entre sí. La siguiente imagen


muestra un informe en Power BI Desktop; en este caso, es la secunda
página de un informe de cinco páginas. También puede crear
informes en el servicio Power BI.

14

Los informes permiten crear numerosas visualizaciones en varias


páginas si es necesario, y le permiten organizar dichas visualizaciones
de la forma más adecuada para contar su historia.

Es posible que tenga un informe sobre las ventas trimestrales, el

crecimiento del producto en un segmento determinado o los


patrones de migración de los osos polares. Sea cual sea el tema, los
informes permiten recopilar y organizar las visualizaciones en una o

varias páginas.

Paneles
Cuando esté listo para compartir una sola página de un informe, o

una colección de visualizaciones, cree un panel. De forma muy


parecida a los paneles de un automóvil, un panel de Power BI es una
colección de objetos visuales de una sola página que puede
compartir con otros usuarios. A menudo, es un grupo seleccionado

de objetos visuales que ofrecen información rápida sobre los datos o

la historia que intenta presentar.

Un panel debe caber en una sola página, también llamada lienzo (el

lienzo es el telón de fondo en blanco en Power BI Desktop o en el


servicio, donde se ponen las visualizaciones). Considérelo el lienzo

que un artista o pintor usa, un área de trabajo donde puede crear,


combinar y rehacer objetos visuales interesantes y atractivos. Puede
compartir paneles con otros usuarios o grupos que, después, pueden

15 interactuar con los paneles cuando estén en el servicio Power BI o en


su dispositivo móvil.

Iconos

En Power BI, un icono es una visualización única en un informe o en


un panel. Es el rectángulo que contiene un objeto visual individual. En

la siguiente imagen, verá un icono que también está rodeado por


otros iconos.
Cuando esté creando un informe o un panel en Power BI, puede

mover u organizar los mosaicos como desee. Puede hacerlos más

16 grandes, cambiar el alto o el ancho, y juntarlos con otros mosaicos.

Si ve o usa un panel o informe, lo que significa que no es el autor ni el


propietario, sino que el informe o panel se ha compartido con usted,

puede interactuar con él, pero no cambiar el tamaño de los iconos ni


su disposición.

Ahora, todo junto

Estos son los conceptos básicos de Power BI y sus bloques de

creación. Vamos a dedicar un momento a revisarlos.

Power BI es una colección de servicios, aplicaciones y conectores que


le permiten conectarse a sus datos, donde quiera que residan,

filtrarlos si es necesario y, después, llevarlos a Power BI para crear

atractivas visualizaciones que puede compartir con otros usuarios.


Ahora que conoce los bloques de creación básicos de Power BI, debe

quedar claro que puede crear conjuntos de datos que tengan sentido
para usted, así como crear informes visualmente atractivos que
cuenten su historia. Las historias que cuente con Power BI no tienen
que ser complejas ni complicadas para que resulten convincentes.

Para algunas personas, usar una sola tabla de Excel en un conjunto de


datos y compartir un panel con su equipo será una forma muy valiosa
de usar Power BI.

Para otros, el valor de Power BI está en el uso de tablas de Azure SQL


Data Warehouse en tiempo real que se combina con otras bases de
datos y orígenes en tiempo real para compilar un conjunto de datos
en todo momento.

17 En ambos grupos, el proceso es el mismo: crear conjuntos de datos,


crear objetos visuales atractivos y compartirlos con otros usuarios. Y
el resultado es también el mismo para ambos grupos: aprovechar el

número de datos cada vez mayor y convertirlos en información


procesable.

Si la información sobre los datos requiere conjuntos de datos


sencillos o complejos, Power BI le ayuda a empezar a trabajar

rápidamente y se puede expandir a la par que sus necesidades para


alcanzar la complejidad que precisen sus datos. Y puesto que Power

BI es un producto de Microsoft, puede dar por sentado que es sólido,


ampliable, compatible con Microsoft Office y listo para la empresa.

Ahora, veamos cómo funciona. Comenzaremos echando un vistazo

rápido al servicio Power BI.


Paseo por el servicio
Power BI y uso
Como hemos visto en la unidad anterior, el flujo de trabajo habitual

de Microsoft Power BI es crear un informe en Power BI Desktop,


publicarlo en el servicio Power BI y, después, compartirlo con otros
usuarios para que puedan verlo en el servicio o en una aplicación
móvil.

Pero como algunas personas empiezan en el servicio Power BI,


echemos un vistazo rápido al servicio primero, y aprendamos una

forma fácil y popular de crear rápidamente objetos visuales en Power


18
BI: las aplicaciones.

Una aplicación es una colección de objetos visuales e informes


configurados previamente y listos para su uso que se comparten con

toda la organización. Usar una aplicación es como cocinar en el


microondas un plato precocinado o pedir una comida rápida: con
solo presionar algunos botones y hacer unos comentarios, tendrá

rápidamente una colección de platos principales diseñados para que

combinen entre sí, y todo ello presentado en un paquete ordenado y


listo para su consumo.

Echemos un vistazo rápido a las aplicaciones, el servicio y su


funcionamiento. Veremos información más detallada sobre las

aplicaciones y el servicio en los próximos módulos, pero puede

pensar en esto como una degustación para abrir el apetito.


Creación de paneles listos para usar con servicios en la nube

Con Power BI, es muy fácil conectarse a los datos. Desde el servicio

Power BI, puede seleccionar simplemente el botón Obtener datos en


la esquina inferior izquierda de la página principal.

19

El lienzo (el área que se encuentra en el centro del servicio Power BI)
muestra los orígenes de datos disponibles en el servicio Power BI.

Además de los orígenes de datos habituales, como los archivos de


Microsoft Excel, las bases de datos o los datos de Microsoft Azure,

Power BI puede conectarse con la misma facilidad a una gran


variedad de servicios de software, también conocidos como
proveedores de SaaS o servicios en la nube: Salesforce, Facebook,
Google Analytics y muchos más.
Para estos servicios de software, el servicio Power BI ofrece una

colección de objetos visuales ya preparados, organizados


20 previamente en paneles e informes para su organización. A esta
colección de objetos visuales se le denomina aplicación. Las

aplicaciones le permiten ponerse en marcha rápidamente con datos y


paneles que su organización ha creado para usted. Por ejemplo,
cuando utiliza la aplicación de GitHub, Power BI se conecta a su
cuenta de GitHub (después de haber especificado sus credenciales) y
después rellena una colección predefinida de objetos visuales y

paneles en Power BI.

Hay aplicaciones para todo tipo de servicios en línea. En la siguiente


imagen se muestra una página de aplicaciones que están disponibles

para los distintos servicios en línea, en orden alfabético. Esta página

se muestra al seleccionar el botón Obtener del cuadro Servicios

(mostrado en la imagen anterior). Como puede ver en la imagen


siguiente, hay muchas aplicaciones para elegir.
Para nuestros fines, elegiremos GitHub. GitHub es una aplicación de

control de código fuente en línea. Cuando selecciona el botón


21 Obtener ahora en el cuadro de la aplicación GitHub, aparece el
cuadro de diálogo Conectarse a GitHub. Tenga en cuenta que

GitHub no admite Internet Explorer, de modo que conviene


asegurarse de estar utilizando otro explorador.
22
Después de escribir la información y las credenciales de la aplicación

GitHub, comienza la instalación de la aplicación.

Una vez cargados los datos, aparece el panel de la aplicación de

GitHub predefinido.
Además del panel de la aplicación, también está disponible el

informe que se generó (como parte de la aplicación de GitHub) y se


usó para crear el panel, así como el conjunto de datos (la colección

23 de datos extraídos de GitHub) que se creó durante la importación de

datos y se utilizó para crear el informe de GitHub.

En el panel, puede seleccionar cualquiera de los objetos visuales e


interactuar con ellos. Cuando lo haga, todos los demás objetos
visuales de la página responderán. Por ejemplo, cuando seleccione la

barra May 2018 del objeto visual Solicitudes de incorporación de


cambios por mes, los demás objetos visuales de la página se
ajustarán para reflejar esa selección.

24

Actualizar datos en el servicio Power BI

También puede actualizar el conjunto de datos de una aplicación u

otros datos que se utilicen en Power BI. Para definir la configuración


de la actualización, seleccione el icono de programación de la

actualización del conjunto de datos que desea actualizar y después

use el menú que aparece. También puede seleccionar el icono de


actualización (el círculo con una flecha) situado junto al icono de
programación de la actualización para actualizar el conjunto de datos
inmediatamente.
La pestaña Conjuntos de datos está seleccionada en la página

Configuración que aparece. En el panel derecho, seleccione la flecha


situada junto a Programar actualización para expandir esa sección.
El cuadro de diálogo Configuración aparece en el lienzo, lo que le

25 permite establecer la configuración de actualización que mejor se


adapte a sus necesidades.
Eso es suficiente para una breve introducción al servicio Power BI.

Este servicio ofrece muchas más posibilidades, que trataremos más


adelante en este módulo y en los siguientes. Recuerde que hay
muchos tipos de datos a los que puede conectarse y también todo
tipo de aplicaciones, y cada vez se incorporan más.

26
1

Implementación de un
módulo precompilado en el
dispositivo perimetral
BIENVENIDA
Implemente un módulo simulador de temperatura precompilado en el
perímetro mediante un contenedor. El módulo precompilado se

implementará en un dispositivo IoT Edge. Comprobará que el módulo


se ha creado e implementado correctamente en el perímetro. Verá los
datos simulados desde el módulo implementado.

En este módulo, aprenderá a:

 Iniciar un módulo desde Azure Portal en IoT Edge


Generar datos simulados desde un dispositivo perimetral
2 
 Comprobar los datos generados desde el dispositivo perimetral

Requisitos previos

 Capacidad de usar IoT Hub en Azure


 Capacidad de usar Azure Cloud Shell
 Experiencia en la creación y administración de recursos con

Azure Portal o Azure Cloud Shell a nivel de principiante

 Conocimientos básicos de Azure IoT Edge

Introducción 3 min

¿Qué es un módulo precompilado? 4 min


Procedimientos para configurar la comunicación entre IoT Hub

e IoT Edge 7 min

Ejercicio: Configuración de la comunicación entre IoT Hub e IoT


Edge 15 min

Procedimientos para implementar un módulo precompilado en

un dispositivo IoT Edge 5 min

Ejercicio: Implementación de un módulo precompilado en IoT


Edge 15 min

Prueba de conocimientos 5 min

Resumen 2 min

3
INTRODUCCIÓN
Cuando se implementan sobre el terreno, los dispositivos IoT suelen

generar una secuencia continua de datos. Estos datos se agregan en la


nube para su análisis. El análisis de datos de IoT requiere que se
estudien los datos de varias secuencias simultáneamente. En la fase de

desarrollo de un proyecto de IoT, estos datos no son fáciles de adquirir


ni simular. Para simular datos de IoT desde un dispositivo IoT Edge,

puede elegir un módulo precompilado como un paquete ejecutable e


implementarlo como un contenedor en un dispositivo IoT Edge.

Imagine que es un desarrollador que va a implementar aplicaciones de


IoT en una nube para una aplicación de automatización de fábrica.

Quiere capturar datos sobre las máquinas que se ejecutan en la planta


4
de producción (por ejemplo, la sala de servidores o una turbina eólica).
Pero también quiere capturar datos sobre el entorno de la máquina.

Por ejemplo, es posible que quiera registrar la temperatura ambiente


en torno a la máquina. No es fácil adquirir y visualizar estos datos desde
la planta de producción antes de que se active la aplicación. Por tanto,
necesita una forma de simular los datos que imite los escenarios para

probar la aplicación.
5
Este módulo forma parte de la ruta de aprendizaje de ingeniería de
inteligencia artificial y dispositivos perimetrales. En este módulo, se

exploran los temas de ingeniería siguientes.

 Previsión del comportamiento de un componente o sistema


 Diseño de soluciones

 Anticipación de restricciones y tolerancias, y condiciones de

funcionamiento específicas
 Consideraciones de seguridad
 Creación de herramientas que ayudan a la solución

En este módulo, registrará un dispositivo IoT Edge en la instancia de


IoT Hub. Después, iniciará el entorno de ejecución de IoT Edge en el

dispositivo virtual. A continuación, implementará de forma remota un


módulo precompilado en un dispositivo IoT Edge que simula la
ejecución de sensores desde ese dispositivo. Por último, verá los datos

generados desde el módulo para comprobar que se ejecuta en el


dispositivo. En este módulo, se usa Azure IoT Edge en una máquina
virtual Ubuntu. En este caso, el dispositivo ya tiene el entorno de

ejecución de IoT Edge instalado. No se ejecuta IoT Edge en el equipo


local o en un dispositivo ARM32 o ARM64.

6
Objetivos de aprendizaje
En este módulo, aprenderá a:

 Iniciar un módulo desde Azure Portal en IoT Edge


 Generar datos simulados desde un dispositivo perimetral
 Comprobar los datos generados desde el dispositivo perimetral

Requisitos previos
 Capacidad de usar IoT Hub en Azure
 Capacidad de usar Azure Cloud Shell

 Experiencia en la creación y administración de recursos con


Azure Portal o Azure Cloud Shell a nivel de principiante
 Conocimientos básicos de Azure IoT Edge
¿Qué es un módulo
precompilado?
Azure IoT Edge permite implementar código en los dispositivos IoT

Edge desde la nube. La plataforma IoT Edge funciona con la nube para
implementar módulos de IoT Edge. Los módulos de IoT Edge son

paquetes ejecutables que se implementan como contenedores. A

través de los módulos de IoT Edge, puede implementar cargas de


trabajo en la nube para ejecutarlas directamente en dispositivos IoT. A
los módulos de IoT Edge se accede a través de Azure Marketplace. Los
publicadores de terceros también pueden publicar módulos a través de
Marketplace.

8 Los módulos de IoT Edge son las unidades de cálculo más pequeñas
que administra IoT Edge. Con los módulos de IoT Edge puede analizar

datos en los dispositivos en lugar de hacerlo en la nube. Al mover


elementos de la carga de trabajo al perímetro, los dispositivos pueden
dedicar menos tiempo a enviar mensajes a la nube y reaccionan más

rápidamente a los eventos. Aquí se usa un módulo precompilado que

ya existe en Marketplace. Este módulo se implementará para que envíe


datos de telemetría a IoT Hub. El módulo que se implementa simula un

sensor y devuelve los datos generados a la instancia de IoT Hub. Este


módulo es útil porque puede usar los datos simulados para el

desarrollo y las pruebas de la solución de IoT.


Procedimientos para
configurar la
comunicación entre IoT
Hub e IoT Edge
Información general

En este módulo, se usa una máquina virtual basada en Ubuntu existente


para que actúe como dispositivo IoT Edge. Como alternativa, puede
ejecutar el entorno de ejecución de Azure IoT Edge en un dispositivo
Linux físico propio (x64, ARM32 o ARM64). A continuación se considera
solamente el escenario de un dispositivo virtual.
9

Se establecen comunicaciones entre IoT Edge e IoT Hub para poder


implementar el módulo en el dispositivo IoT. Para configurar las

comunicaciones entre IoT Hub e IoT Edge, primero debe crear un


dispositivo virtual de Ubuntu proporcionado por Microsoft mediante
los scripts proporcionados. Este dispositivo virtual tiene instalados

todos los requisitos previos. Después, cree una instancia de IoT Hub
mediante Cloud Shell. A continuación, registre el dispositivo IoT Edge

en la instancia de IoT Hub y recupere la cadena de conexión. Necesitará


esta cadena para configurar el dispositivo IoT Edge en pasos

posteriores.

Para resumir el proceso: a fin de registrar un dispositivo IoT Edge en la

instancia de IoT Hub, primero debe crear una identidad del dispositivo

para el dispositivo perimetral. Esta identidad del dispositivo le permite


comunicarse con la instancia de IoT Hub. La identidad del dispositivo

reside en la nube y usa una cadena de conexión de dispositivo única


para asociar un dispositivo físico a una identidad del dispositivo. El
dispositivo IoT Edge se conecta a la instancia de IoT Hub, ya sea a un

centro existente o a uno recién creado. La cadena de conexión vincula


el dispositivo IoT con su identidad en la instancia de IoT Hub. Por tanto,

el proceso de registro de un dispositivo implica la recuperación de la


cadena de conexión asociada a un dispositivo perimetral que

representa la identidad del dispositivo en IoT Hub. Después de esto, se


configura la cadena de conexión en el dispositivo IoT Edge.

Antes de empezar, si no tiene una suscripción activa a Azure, debe crear

una cuenta gratuita, y puede usar una evaluación gratuita de 30 días, o


bien crear una suscripción de pago por uso propia.

10
Por tanto, los pasos que debe seguir son estos:

 Definir el grupo de recursos o usar uno existente


 Crear un dispositivo Azure IoT Edge
 Crear una instancia de Azure IoT Hub o usar una existente

 Registrar el dispositivo IoT Edge en IoT Hub


Qué es un grupo de
recursos
Un grupo de recursos es un contenedor que conserva los recursos

relacionados de una solución. El grupo de recursos incluye los recursos


que se quieren administrar como grupo. Los recursos relacionados se
agrupan de forma lógica, como las cuentas de almacenamiento, redes
11
virtuales y máquinas virtuales para implementarlos, administrarlos y

mantenerlos como entidad única. Los grupos de recursos almacenan


metadatos sobre los recursos. Por tanto, al especificar una ubicación
para el grupo de recursos, se especifica dónde se almacenan esos

metadatos. Por motivos de compatibilidad, es posible que sea


necesario asegurarse de que los datos se almacenan en una región
concreta.
Procedimientos para crear
un dispositivo IoT Edge
Una vez creado el grupo de recursos, puede crear un dispositivo virtual

IoT preconfigurado dentro de este grupo de recursos. La creación de


un dispositivo perimetral virtual implica dos propiedades obligatorias:

Definir un nombre del dispositivo virtual y elegir el grupo de recursos

que se va a implementar. Como va usar Azure IoT Edge en la máquina


virtual Ubuntu según se ha descrito en los requisitos previos, el
dispositivo ya tiene instalado el entorno de ejecución de Azure IoT
Edge. El entorno de ejecución de Azure IoT Edge es una colección de
programas que convierten un dispositivo en un dispositivo IoT Edge.
Colectivamente, los componentes del entorno de ejecución de Azure
12
IoT Edge permiten que los dispositivos IoT Edge reciban código para
ejecutarlo en el perímetro y comunicar los resultados a la instancia de

IoT Hub.

El entorno de ejecución de Azure IoT Edge se implementa en todos los

dispositivos IoT Edge. Tiene tres componentes. El demonio de

seguridad de IoT Edge se inicia cada vez que se inicia un dispositivo


IoT Edge y arranca el dispositivo mediante el inicio del agente de

este. El agente de IoT Edge facilita la implementación y supervisión de


los módulos en el dispositivo IoT Edge, incluido el centro de IoT

Edge. El centro de IoT Edge administra las comunicaciones entre los


módulos del dispositivo IoT Edge y entre el dispositivo y la instancia de
IoT Hub. Puede usar el comando az IoT hub device-identity

create para crear un dispositivo IoT Edge.


Procedimientos para crear
la instancia de IoT Hub
Azure IoT Hub permite la comunicación entre el dispositivo virtual y

la nube. La creación de una instancia de IoT Hub implica las siguientes


propiedades obligatorias: Definir un nombre único de la instancia de

IoT Hub y elegir el grupo de recursos que se va a implementar. Para

crear una instancia de Azure IoT Hub con la CLI de Azure, usará el
conjunto de comandos az IoT hub create. Tenga en cuenta que solo
se permite una instancia gratuita de IoT Hub en cada suscripción. El
nivel gratuito de IoT Hub funciona para este ejercicio. Si ha usado IoT
Hub en el pasado y ya tiene un centro gratis creado, puede usar ese
centro de IoT.
13

Registro del dispositivo


IoT Edge en IoT Hub
El proceso de registro de un dispositivo IoT implica la recuperación

de la cadena de conexión del dispositivo. La identidad del dispositivo


reside en la nube, y se usa una cadena de conexión de dispositivo única

para asociar un dispositivo físico a una identidad de dispositivo. Use el

comando az iot hub device-identity show-connection-string para


recuperar la cadena de conexión. Copie el valor de la clave
connectionString desde la salida JSON y guárdelo. Usará esta cadena
de conexión para configurar el entorno de ejecución de Azure IoT Edge.
Procedimientos para
configurar un dispositivo
IoT Edge
El proceso de configuración del dispositivo IoT Edge implica la

configuración de la cadena de conexión en el dispositivo IoT Edge.


Puede establecer la cadena de conexión de forma remota sin tener que
conectarse a la máquina virtual mediante la ejecución de un script en

el dispositivo. Use el comando az vm run para invocar un script en el


dispositivo perimetral y pasar la cadena de conexión como un

parámetro.

Procedimientos para
14

asegurarse de que el
dispositivo IoT Edge está
listo para ejecutar
módulos predefinidos
Una vez configurado el dispositivo perimetral, debe comprobar si el
dispositivo IoT Edge está listo para ejecutar un módulo precompilado.

Para ello, primero debe iniciar sesión en el dispositivo perimetral


mediante la dirección IP pública del dispositivo y el comando ssh.

Comprobará que el demonio de seguridad de IoT Edge se ejecuta


como un servicio del sistema mediante comandos iotedge. Necesita

privilegios elevados para ejecutar los comandos iotedge.

15
Ejercicio: Configuración de
la comunicación entre IoT
Hub e IoT Edge
Uso de Azure Cloud Shell

Para iniciar Azure Cloud Shell,


Vaya a [Link]

16
También tendrá que agregar la extensión IoT de Azure a la CLI

de Azure de la instancia de Cloud Shell mediante el comando


siguiente.

CLI de AzureCopiar

az extension add --name azure-cli-iot-ext

17
Creación de un grupo de
recursos
Cree un grupo de recursos denominado IoTEdgeResources
con el comando siguiente.

CLI de AzureCopiar

az group create --name IoTEdgeResources --location eastus2

18
Cree una máquina virtual
que actúe como
dispositivo.
Acepte los términos de uso y cree la instancia de Azure IoT Edge

proporcionada por Microsoft en la máquina virtual Ubuntu. Esta


máquina virtual preinstala todo lo que necesita para ejecutar IoT Edge
en un dispositivo.

Cree la máquina virtual denominada EdgeVM mediante los

comandos siguientes:
19
CLI de Azure

az vm image accept-terms --urn


microsoft_iot_edge:iot_edge_vm_ubuntu:ubuntu_1604_edgeruntimeo

nly:latest
CLI de Azure

az vm create --resource-group IoTEdgeResources --name EdgeVM --

image
microsoft_iot_edge:iot_edge_vm_ubuntu:ubuntu_1604_edgeruntimeo

nly:latest --admin-username azureuser --generate-ssh-keys

20

La nueva máquina virtual puede tardar unos minutos en crearse e


iniciarse.

Anote la dirección IP pública (publicIpAddress) que se proporciona

como parte de la salida del comando create. La usará para conectarse

a la máquina virtual en pasos posteriores.


Creación de un centro de
IoT
En el código siguiente se crea un centro F1 gratis en el grupo de

recursos IoTEdgeResources. Reemplace {hub_name} por un nombre


único para la instancia de IoT Hub.

CLI de Azure

az iot hub create --resource-group IoTEdgeResources --name


21 {hub_name} --sku S1

Registro de un dispositivo
IoT Edge
Creación de una identidad del dispositivo para el dispositivo IoT Edge

En Azure Cloud Shell, escriba el comando siguiente para crear un

dispositivo denominado myEdgeDevice en el centro.

Como los dispositivos IoT Edge se comportan y se pueden administrar


de manera diferente a los dispositivos IoT típicos, declare que esta

identidad es para un dispositivo IoT Edge con la marca --edge-enabled.


Si recibe un error sobre las claves de directiva de iothubowner,

asegúrese de que Cloud Shell ejecuta la versión más reciente de la


extensión azure-cli-iot-ext.

CLI de Azure

az iot hub device-identity create --hub-name {hub_name} --device-id

myEdgeDevice --edge-enabled

22
Recuperación de la cadena
de conexión del
dispositivo
Para recuperar la cadena de conexión del dispositivo, que vincula el
dispositivo físico con su identidad en IoT Hub, use el comando.

23 CLI de Azure

az iot hub device-identity show-connection-string --device-id


myEdgeDevice --hub-name {hub_name}

Copie el valor de la clave connectionString desde la salida JSON y

guárdelo. Este valor es la cadena de conexión del dispositivo. Esta


cadena de conexión se usará para configurar el entorno de ejecución
de IoT Edge en la sección siguiente.
Configuración del
dispositivo IoT Edge
Tiene que configurar el dispositivo con la cadena de conexión de

dispositivo que ha recuperado en la sección anterior. Esta operación se


puede realizar de forma remota, sin tener que conectarse a la máquina
virtual. Ejecute el comando siguiente y reemplace
{device_connection_string} por una cadena propia.

CLI de Azure

24 az vm run-command invoke -g IoTEdgeResources -n EdgeVM --


command-id RunShellScript --script "/etc/iotedge/[Link]
'{device_connection_string}'"
Visualización del estado
del entorno de ejecución
de Azure IoT Edge

Use el siguiente comando para conectarse a la máquina virtual.


Reemplace {azureuser} si ha usado un nombre de usuario que no sea
el que se sugiere en los requisitos previos. Reemplace
{publicIpAddress} por la dirección de la máquina.

bash

ssh azureuser@{publicIpAddress}
25
Comprobación de si el
dispositivo IoT Edge está
configurado
Comprobará que el demonio de seguridad de IoT Edge se ejecuta

como un servicio del sistema mediante comandos iotedge.


Necesita privilegios elevados para ejecutar los comandos
iotedge.

Ejecute los comandos siguientes para probar el estado del


dispositivo IoT Edge.

26 bash

sudo systemctl status iotedge


bash
journalctl -u iotedge

bash

sudo iotedge list

27

El dispositivo IoT Edge está ya configurado. Está preparado para


ejecutar módulos implementados en la nube.
Procedimientos para
implementar un módulo
precompilado en un
dispositivo IoT Edge
Envío de una nueva implementación a un dispositivo IoT Edge

Para implementar un módulo precompilado en el dispositivo


perimetral, primero debe elegir un módulo de IoT Edge en Azure
Marketplace y también el dispositivo IoT Edge que va a recibir el
módulo.

28 Puede acceder al módulo Sensor de temperatura simulado si busca

en Marketplace, al que se accede a través de Azure Portal. Una vez que


identifique este módulo, elija el dispositivo IoT Edge que lo va a recibir.

Un asistente de tres pasos ayuda a definir las fases para implementar


el módulo.

En el primer paso (Agregar módulos), elija solo el módulo Sensor de

temperatura simulado.

La segunda fase del asistente es la fase (especificar rutas). El


enrutamiento especifica cómo se pasan los mensajes entre los módulos

e IoT Hub. En este caso, se especifica que todos los mensajes de todos

los módulos vayan a IoT Hub. En el tercer paso (Revisar

implementación), puede obtener una vista previa del archivo

JSON que define todos los módulos que se implementarán en el


dispositivo IoT Edge. Cuando se envía una implementación nueva a un

dispositivo IoT Edge, no se inserta nada en el dispositivo. En lugar de


eso, el dispositivo consulta a IoT Hub de manera periódica para
comprobar cualquier instrucción nueva. Si el dispositivo encuentra

un manifiesto de implementación actualizado, usa la información

sobre la nueva implementación para extraer las imágenes del módulo

de la nube y, después, comienza a ejecutar localmente los módulos. El


asistente crea un manifiesto de implementación a través de los tres
pasos. Un manifiesto de implementación es un documento JSON en el

que se describe qué módulos se van a implementar, cómo fluyen los


datos entre los módulos y las propiedades deseadas de los módulos

gemelos. El manifiesto de implementación se usa para indicar al


dispositivo qué módulos debe instalar y cómo configurarlos para que

funcionen de manera conjunta. Todos los dispositivos IoT Edge se


29
deben configurar con un manifiesto de implementación.
Visualización de los datos
generados
El módulo del sensor de temperatura simulado crea datos de ejemplo

que se pueden usar con fines de prueba. El módulo también genera


datos de entorno, es decir, datos para la máquina y el entorno que la
rodea. Por ejemplo, este sensor podría estar en una sala de servidores,
una planta de producción o una turbina eólica. El mensaje incluye la

temperatura y la humedad ambiental, la temperatura y la presión de la


máquina, y una marca de tiempo.
30

Limpieza de los recursos

Para evitar cambios, elimine los recursos de Azure según sea

necesario, incluido el dispositivo que ha creado, el grupo de recursos.


Asegúrese de que los recursos eliminados no se volverán a necesitar.
Ejercicio: Implementación
de un módulo
precompilado en IoT Edge

Para implementar el módulo del sensor de temperatura simulado


desde Azure Marketplace, siga estos pasos:

1. En Azure Portal, escriba Sensor de temperatura simulado en la


búsqueda y abra el resultado de Marketplace.

31

2. Elija un dispositivo IoT Edge para recibir este módulo. En la

página Dispositivos de destino para el módulo de IoT Edge,


proporcione la información siguiente: Suscripción: seleccione la
suscripción que contiene la instancia de IoT Hub que usa; IoT
Hub: seleccione el nombre del centro de IoT que usa; Nombre

del dispositivo IoT Edge: el que haya seleccionado antes


3. Seleccione Crear.
4. Mediante el asistente de tres pasos, defina exactamente cómo
implementar el módulo. En el paso Agregar módulos del

asistente, el módulo SimulatedTemperatureSensor debe estar

completado de forma automática. En el paso Especificar


rutas del asistente, defina cómo se transmiten los mensajes

entre los módulos y a IoT Hub. Si este valor no se rellena

automáticamente en $upstream, agregue el código siguiente:

"routes": {

32 "route": "FROM /messages/* INTO $upstream"

En el paso Revisar implementación del asistente, puede obtener una


vista previa del archivo JSON que define todos los módulos que se

implementarán en el dispositivo IoT Edge. Asegúrese de que el módulo


SimulatedTemperatureSensor está incluido.

5. Seleccione el dispositivo en la lista de dispositivos IoT Edge para


ver sus detalles. En la página de detalles del dispositivo,

desplácese a la sección Módulos. Deben aparecer tres

módulos: edgeAgent,edgeAgent,edgeHub y

SimulatedTemperatureSensor. Si uno o varios de los módulos


aparecen como especificados en la implementación pero no

informados por el dispositivo, significa que el dispositivo IoT


Edge todavía los está iniciando. Espere unos instantes y
seleccione Actualizar en la parte superior de la página.

33

6. Abra de nuevo el símbolo del sistema en el dispositivo IoT Edge,


o bien la conexión SSH desde la CLI de Azure. Use el comando
sudo iotedge list para confirmar que el módulo implementado

desde la nube se está ejecutando en el dispositivo IoT Edge.

7. Vea los mensajes que se envían desde el módulo del sensor de

temperatura mediante el comando sudo iotedge logs


SimulatedTemperatureSensor -f. Tenga en cuenta que los

comandos de IoT Edge distinguen mayúsculas de minúsculas

en los nombres de los módulos.

8. Limpieza de los recursos


1

Evaluación de los requisitos


para implementar las API de
Custom Vision
BIENVENIDA
Evalúe los requisitos de una solución que implementa Custom Vision

Prediction API y Training API. Los planes de diseño completados serán

compatibles con los requisitos del flujo de trabajo, y estará mejor

preparado para trabajar con desarrolladores y arquitectos.

En este módulo aprenderá a:

 Evaluar los requisitos de la autorización del servicio


 Examinar la API para la predicción de imagen

 Examinar la API para el entrenamiento de los modelos


predictivos

2 Requisitos previos

 Entender los conceptos de la nube


 Conocer los servicios principales de Azure

 Conocer las funcionalidades de seguridad, privacidad,

cumplimiento y confianza
 Conocer el soporte técnico y los precios de Azure

Introducción 4 min

API de Custom Vision 6 min

Investigación de la autorización del servicio 5 min

Examinar Custom Vision Prediction API 10 min

Examinar Custom Vision Training API 10 min


Prueba de conocimientos 8 min

Resumen 3 min

3
INTRODUCCIÓN
Imagine que dirige un negocio de embalaje que distribuye productos
por todo el mundo. Su empresa ha realizado una fuerte inversión en la
automatización del empaquetado de las cajas y la optimización del
tamaño de cada caja enviada. Pero ha recibido algunas quejas sobre

embalajes rasgados o dañados. Los miembros del equipo de seguridad


de productos están valorando cómo inspeccionar productos
4 empaquetados antes del envío. Quieren automatizar el proceso de
inspección e implicar solo a una persona si se determina que el

embalaje es defectuoso.

El servicio cognitivo Azure Custom Vision combina la inteligencia

artificial y el aprendizaje automático para ofrecer un servicio sofisticado


de detección y clasificación de imágenes.

Estas capacidades se pueden usar directamente desde el portal web

del servicio Custom Vision para crear y entrenar un modelo, probar su

precisión y, después, usarlo para evaluar y aplicar etiquetas a las


imágenes. Pero este proceso no es suficiente para su caso de uso.

Por ello, en su lugar, el equipo de desarrollo quiere utilizar las API REST
que permiten a las aplicaciones y los scripts personalizados aprovechar

las mismas capacidades del servicio Custom Vision que se


proporcionan en el portal web. Con las API de Custom Vision, su

empresa puede integrar este servicio cognitivo directamente en el


proceso de automatización existente para identificar de forma rápida y
precisa los paquetes defectuosos antes de que se envíen a los clientes.

En este módulo, aprenderá a:

• Evaluar los requisitos de la autorización del servicio

• Examinar la API para la predicción de imagen

• Examinar la API para el entrenamiento de los modelos


predictivos

5
API DE CUSTOM VISION
Las API de Custom Vision usan algoritmos integrados que

proporcionan los servicios con "inteligencia". Puede usar estos


algoritmos para crear y personalizar sus propios modelos de Computer

Vision de última generación con solo unas pocas líneas de código.

Los algoritmos de Custom Vision API se exponen como llamadas de


servicio simples basadas en REST. Los desarrolladores pueden usar las
llamadas de REST para crear proyectos (clasificadores), cargar y

etiquetar imágenes, realizar el entrenamiento, administrar iteraciones


del modelo e incluso realizar predicciones.

Sugerencia

Este módulo se centra en los servicios REST que se pueden usar en


cualquier lenguaje. Microsoft también publica SDK de código abierto

para .NET, Python, Java, [Link], y Go que encapsulan las API REST
subyacentes en objetos y métodos específicos de la plataforma.

Consulte la documentación para obtener más información sobre los


SDK disponibles.

API de Custom Vision

Las API de Custom Vision son una manera perfecta de usar la potencia

de la inteligencia artificial para:

 Crear modelos de Computer Vision de última generación.


 Cargar y etiquetar imágenes de entrenamiento.

 Entrenar clasificadores para el aprendizaje activo.

 Realizar predicción de imágenes para identificar las


coincidencias probables con un modelo entrenado.
 Realizar detección de objetos para buscar elementos dentro de

7 una imagen y devolver un rectángulo de selección.

En general, los métodos proporcionados por las API de Custom Vision


se dividen en las siguientes categorías:

 Entrenamiento. Administre proyectos (clasificadores) y cargue


etiquete y administre las imágenes de entrenamiento.
 Predicción. Realice predicciones basadas en los modelos de

clasificación.

Al igual que con la Computer Vision API relacionada, para llamar a las
API de Custom Vision, solo tiene que hacer una solicitud web segura.
Por ejemplo, aquí se muestra una versión simplificada del aspecto que

tendría una llamada a una Custom Vision API en Python:

Python
conn =

[Link]('[Link]')

[Link]("POST", serviceEndpointUrl, body)

response = [Link]()

data = [Link]()

La misma llamada API en C# es similar:

C#Copiar

HttpClient client = new HttpClient();

StringContent content = new StringContent(body);


8

response = await [Link](serviceEndpointUrl, content);

string data = await [Link]();


INVESTIGACIÓN DE LA
AUTORIZACIÓN DEL
SERVICIO
Las API de Custom Vision usan un par de claves de suscripción para

controlar el acceso a las dos API del servicio:

 La clave de entrenamiento para acceder a los miembros de la


API utilizados a fin de entrenar el modelo.
 La clave de predicción para acceder a los miembros de la API

utilizados para clasificar las imágenes con un modelo

entrenado.
9
La separación de las claves de suscripción de Custom Vision API facilita
la entrega de las claves en función de los requisitos técnicos, de la

aplicación o del negocio. Por ejemplo, un servicio que solo requiere


tareas de predicción solo podrá usar esa API, y solo se le cobrará por
la cuota de predicción. Ambas claves están disponibles en el portal al

crear la instancia del servicio Custom Vision.

Sugerencia

Las claves también pueden encontrarse en la página de Azure Portal


correspondiente al recurso de Azure de Custom Vision asociado con el

proyecto, en la hoja Claves.

Suministro de una clave de suscripción


Cada llamada mediante programación a las API de Custom Vision

requiere que se pase una de estas claves de suscripción al servicio


como un valor de encabezado de solicitud. Por ejemplo, si el código
llamara a Prediction API en C#, usaría la
colección DefaultRequestHeaders para agregar la clave de predicción

a la solicitud con la clave Prediction-Key:

C#Copiar

string predictionKey = "...";

HttpClient client = new HttpClient();

[Link]("Prediction-Key", predictionKey)

El mismo código en Ruby tendría un aspecto similar a este ejemplo:


10
RubyCopiar

request['Prediction-Key'] = '{prediction key}'

Dado que las API de Custom Vision se dividen en distintas API de


predicción y entrenamiento, echemos un vistazo a cada API con más

detalle, empezando por Custom Vision Prediction.


EXAMINAR CUSTOM
VISION PREDICTION API
La tarea más común que realizará una aplicación o un script con el

servicio Custom Vision es solicitar predicciones de imágenes con

Prediction API. Esta tarea implica el envío de una solicitud web


autorizada al punto de conexión de la suscripción y el procesamiento

de la información devuelta por la llamada.

Sugerencia

Con fines de prueba, los suscriptores pueden practicar con el uso de


Prediction API mediante la consola de pruebas de Custom Vision
11
Prediction API. Asegúrese de seleccionar la consola de pruebas

asociada a la región en la que se implementa el servicio.

Llamada a Prediction API

A Prediction API se accede a través del punto de conexión web público


específico del servicio registrado de Custom Vision. Hay dos API

disponibles en función del tipo de proyecto: clasificación de imágenes

y detección de objetos.

Clasificación de imágenes

La clasificación de imágenes analiza una imagen suministrada y


devuelve una lista de etiquetas identificadas en la imagen. Se

proporcionan varios puntos de conexión. Aquí se muestran los dos

puntos de conexión que se usan con más frecuencia:


 ClassifyImage acepta una carga útil binaria

("application/octet-stream") como una matriz de bytes que


contiene los datos de la imagen.
 ClassifyImageUrl acepta una carga útil de JSON
("application/json") que especifica una dirección URL de la

imagen disponible públicamente.

Detección de objetos

La detección de objetos es similar a la clasificación de imágenes, pero

también devuelve las coordenadas (rectángulo de selección) de dónde


se ha ubicado la etiqueta dentro de la imagen. Al igual que con la
clasificación, hay dos puntos de conexión de uso frecuente disponibles:

 DetectImage acepta una carga útil binaria ("application/octet-

12 stream") como una matriz de bytes que contiene los datos de


la imagen.

 DetectImageUrl acepta una carga útil de JSON


("application/ejson") que especifica una dirección URL de la
imagen disponible públicamente.

Ambos puntos de conexión de la API usan la misma estructura para

formar la dirección URL:

text

[Link]

pe}/iterations/{iterationName}/{imageType}

En esta dirección URL:


 {endpoint} es el punto de conexión de ubicación en el que se

ha creado el servicio, por


ejemplo, [Link].
 {projectId} es un identificador de proyecto único que se usa
para especificar el servicio de Custom Vision.

 {projectType} es classify para la clasificación de imágenes

o detect para la detección de objetos.


 {iterationName} es el nombre de la iteración del modelo

entrenado que se usa.

 {imageType} es url cuando la imagen se pasa como una

dirección URL o image cuando la imagen se pasa como datos


binarios en el cuerpo de la solicitud.

Importante

13
La API a la que se llama, Detect frente a Classify, se basa en el tipo de

proyecto creado en el servicio Custom Vision. Si no llama a la API

adecuada, el servicio devolverá 400 Bad Request - Invalid project type


for operation.

Búsqueda de la dirección URL del proyecto

Los detalles específicos del punto de conexión están disponibles en el

portal del servicio Custom Vision. Si selecciona el botón Ver punto de


conexión en la pestaña Predicciones o la opción Dirección URL de

Prediction en la pestaña Rendimiento, se mostrará un cuadro de


diálogo similar al siguiente:
Construcción de la solicitud HTTP

14 Después de identificar la dirección URL correcta, se invoca mediante


una solicitud HTTP PUT. Recuerde que es necesario pasar una clave de

predicción con la solicitud. Esta llave se proporciona como un


encabezado de solicitud con el nombre Prediction-Key.

Por ejemplo, el código de C# siguiente envía una dirección URL de la


imagen a Prediction API con el punto de conexión y la clave de
predicción especificados:

C#

public async Task<string> MakePredictionRequestAsync(string url,


string predictionKey, string imageUrl)

var client = new HttpClient();


[Link]("Prediction-Key", predictionKey);

using (var content = new StringContent("{\"Url\":\"" + imageUrl +

"\"}", Encoding.UTF8, "application/json");)

var response = await [Link](url, content);

return await [Link]();

En Python 3, el mismo código podría ser similar al de este ejemplo:

PythonCopiar
15

import [Link], [Link], [Link], [Link], base64

headers = {

'Content-Type': 'application/json',

'Prediction-Key': '{prediction key}',

body = "{'Url' : '" + url + "' }"


try:

conn =
[Link]('[Link].c
om')

[Link]("POST",

"/customvision/v3.0/Prediction/{projectId}/classify/iterations/{iteration
Name}/url", body, headers)

response = [Link]()

data = [Link]()

print(data)

[Link]()
16

except Exception as e:

print("[Errno {0}] {1}".format([Link], [Link]))

Nota

Los métodos de Prediction API también aceptan un parámetro de cadena


de consulta opcional llamado application para identificar la aplicación
que invoca el servicio. Este valor se puede utilizar para realizar el

seguimiento de las aplicaciones que utilizan el servicio

Custom Vision.

Pasar archivos de imagen directamente


Si va a usar la carga de archivo binario ClassifyImage o DetectImage,

el cuerpo de la solicitud debe contener los datos de la imagen


codificados en una matriz de bytes. Esta es la misma llamada que usa
el punto de conexión ClassifyImage en su lugar. En este caso, el
encabezado Content-Type debe establecerse en "application/octet-

stream".

C#

public async Task<string> MakePredictionRequestAsync(string url,

string predictionKey, string imageFile)

var fileStream = new FileStream(imageFile, [Link],


[Link]);
17
var binaryReader = new BinaryReader(fileStream);

var bytes = [Link]((int)[Link]);

var client = new HttpClient();

[Link]("Prediction-Key", predictionKey);

using (var content = new ByteArrayContent(bytes))

[Link] = new
MediaTypeHeaderValue("application/octet-stream");
var response = await [Link](url, content);

return await [Link]();

Procesamiento de la respuesta

Prediction API devuelve un objeto JSON que incluye varios bits de

información. La información más importante aquí es una matriz


de predicciones que indica la probabilidad de que la imagen

proporcionada contuviera ese elemento entrenado. Por ejemplo, si el


modelo se ha entrenado para reconocer los tipos de animales que se

encuentran en el Círculo Polar Ártico y se proporciona una imagen de


18 un oso polar, ClassifyImage podría devolver un objeto como el
siguiente:

JSON

"id":"71b145f7-8533-4cf4-9821-f31a4293508a",

"project":"586008f5-2d8e-4e4a-abb4-66127e96a4f4",

"iteration":"f118e60f-5e25-40ad-89a2-3b6b1cdd5dac",

"created":"2019-06-19T[Link].240Z",

"predictions":[

{
"probability":1.0,

"tagId":"8b2ada4d-1d0f-4b07-af19-dfd643043e1f",

"tagName":"Polar bear"

},

"probability":3.3948698E-11,

"tagId":"56fe8dca-2849-454a-8aa0-5897b1c30009",

"tagName":"Arctic fox"

},

19 {

"probability":1.96249064E-13,

"tagId":"ae6f7ccb-46ac-44af-9b70-8d91f4951122",

"tagName":"walrus"

Cada predicción contiene un elemento tagId que identifica la etiqueta

coincidente, un atributo tag que proporciona un nombre descriptivo

de la etiqueta y un valor probability de 0 a 1 que indica el nivel de


confianza del servicio en la identificación de la etiqueta especificada en

la imagen.

20
EXAMINAR CUSTOM
VISION TRAINING API
El portal web del servicio Custom Vision es una forma sencilla de

entrenar un modelo mediante la carga de imágenes etiquetadas. Este

enfoque es la forma más común de entrenar, probar y publicar un


modelo. Sin embargo, a veces una necesidad empresarial podría

requerir que un modelo se prepare o se vuelva a entrenar en función


de los datos entrantes disponibles para las aplicaciones que usan el
servicio. En estos casos, la aplicación puede usar Training API para
agregar y etiquetar nuevas imágenes y publicar una nueva iteración del
servicio Custom Vision.
21
De forma similar a Prediction API, Training API proporciona métodos

HTTP para agregar imágenes de entrenamiento en un proyecto y


etiquetarlas. El proceso de llamada y uso de la respuesta es idéntico al
de Prediction API. Simplemente usa puntos de conexión diferentes.

CreateImages es el método subyacente de Custom Vision que se usa

para enviar imágenes de entrenamiento etiquetadas. Al igual que


Prediction API, Custom Vision Training API proporciona métodos

independientes para cargar archivos binarios y proporcionar


direcciones URL de imagen disponibles públicamente:

 CreateImagesFromFiles incluye uno o varios archivos de

imagen codificados y etiquetas opcionales para crear imágenes.


Hay un límite de 64 imágenes y 20 etiquetas.
 CreateImagesFromUrls especifica una o varias direcciones

URL y etiquetas opcionales para crear imágenes. Hay un límite


de 64 imágenes y 20 etiquetas.

Nota

Hay varios métodos adicionales disponibles en la Training API que

permiten crear y buscar proyectos, crear y eliminar etiquetas, entrenar

proyectos y mucho más. Todo lo que puede hacer en el portal,


normalmente puede hacerlo con la API REST.

Todos los puntos de conexión tienen el mismo formato básico que los

de Prediction API:

text

22 [Link]
ges/{imageType}

En esta dirección URL:

 {endpoint} es el punto de conexión de ubicación en el que se


ha creado el servicio, por
ejemplo, [Link].

 {projectId} es un identificador de proyecto único que se usa

para especificar el servicio de Custom Vision.

 {imageType} se corresponde con urls, cuando las imágenes se


pasan como direcciones URL o con files cuando las imágenes
se pasan como datos codificados en el cuerpo de la solicitud.
Compilación de una solicitud

El punto de conexión de Training API está disponible en el

panel Configuración del proyecto del servicio Custom Vision en el


portal web. También puede encontrar la clave de entrenamiento en esta

página. Necesita la clave de entrenamiento para autorizar llamadas a

los servicios de Training API. Una vez que tenga estos dos fragmentos
de información, está listo para usar los métodos CreateImages.

Una vez identificada la dirección URL correcta, se invoca con una

solicitud HTTP PUT que pasa la solicitud en el cuerpo y la clave de


entrenamiento como un encabezado de solicitud con el
nombre Training-Key.

Puede usar la mayoría de los tipos de elementos multimedia

23 disponibles para estructurar el cuerpo de la


solicitud: "application/json", "application/xml", "text/xml" o "applicatio

n/x-www-form-urlencoded". Puede elegir el tipo con el que le resulte


más fácil trabajar en su lenguaje o marco. El valor de
encabezado Content-Type determinará el tipo de carga útil del

contenido que proporcione.

Cada solicitud CreateImages toma una lista de imágenes o direcciones


URL y un conjunto opcional de etiquetas. Este es un ejemplo de un
cuerpo de solicitud válido para CreateImagesFromUrls (en JSON):

JSON

"images": [
{

"url": "{url to image #1}",

"tagIds": [ "{tag-id}" ]

],

"tagIds": [

"{tag-id}"

24 Las colecciones tagIds son opcionales. Puede obviarlas si no las está


usando. Puede proporcionar etiquetas por imagen (si son diferentes
para cada imagen) o para toda la colección de imágenes con la

segunda colección de etiquetas. Debe proporcionar el identificador


único para la etiqueta. Puede recuperar este identificador desde el
portal web o mediante HTTP GET para invocar el

método {endpoint}/customvision/v3.0/training/projects/{projectId}/ta
gs. Este es un ejemplo de respuesta:

JSON

"id":"56fe8dca-2849-454a-8aa0-5897b1c30009",
"name":"Arctic fox",

"description":null,

"type":"Regular",

"imageCount":130

},

"id":"ae6f7ccb-46ac-44af-9b70-8d91f4951122",

"name":"Walrus",

"description":null,

25 "type":"Regular",

"imageCount":138

},

"id":"8b2ada4d-1d0f-4b07-af19-dfd643043e1f",

"name":"Polar bear",

"description":null,

"type":"Regular",

"imageCount":141
}

Llamada al servicio

Después de compilar la solicitud, puede usar un método HTTP PUT para

invocar la API. Este es un ejemplo en C#:

C#

public async Task<string> AddTrainingImageAsync(string url, string


trainingKey, string[] imageUrls, string[] tags)

string jsonData = ...; // Build the JSON request from imageUrls and
26 tags.

var client = new HttpClient();

[Link]("Training-Key", trainingKey);

using (var content = new StringContent(jsonData, Encoding.UTF8,

"application/json");)

var response = await [Link](url, content);

return await [Link]();

}
}

En Python, el código debería tener un aspecto parecido al siguiente:

PythonCopiar

import [Link], [Link], [Link], [Link], base64

headers = {

'Content-Type': 'application/json',

'Training-Key': '{training key}',

27

body = "{json-data}"

try:

conn = [Link]("{endpoint}")

[Link]("POST",

"/customvision/v3.0/training/projects/{projectId}/images/urls", body,
headers)

response = [Link]()

data = [Link]()
print(data)

[Link]()

except Exception as e:

print("[Errno {0}] {1}".format([Link], [Link]))

Procesamiento del resultado

La respuesta procedente del servicio tendrá el mismo formato que la

solicitud. (Puede influir en este comportamiento mediante el valor de


encabezado Accepts). El objeto devuelto tendrá un resultado general

(isBatchSuccessful) y una entrada para cada imagen pasada, a fin de


indicar si se ha procesado. Este es un resultado de ejemplo del

método CreateImagesFromUrls:
28
JSON

"isBatchSuccessful": true,

"images": [

"sourceUrl":
"[Link]

[Link]",

"status": "OK",

"image": {
"id": "955651c9-0ba3-40a0-b33f-a46d39feb3ee",

"created": "2019-06-19T[Link].8757957",

"width": 1555,

"height": 900,

"resizedImageUri":

"[Link]
586008f52d8e4e4aabb466127e96a4f4/i-
955651c90ba340a0b33fa46d39feb3ee?sv=2017-04-
17&sr=b&sig=JfzNzS3%2B1qKKHLnfDK%2Fcuh5FDPFPxRSHZsSnz%2
Bri4II%3D&se=2019-06-20T23%3A02%3A39Z&sp=r",

"thumbnailUri":
29 "[Link]
586008f52d8e4e4aabb466127e96a4f4/t-
955651c90ba340a0b33fa46d39feb3ee?sv=2017-04-
17&sr=b&sig=3udivyZu%2BGtgT5%2BqX6iCDTYT8TxvBiAzKk2WJV3d
FzU%3D&se=2019-06-20T23%3A02%3A39Z&sp=r",

"originalImageUri":
"[Link]

586008f52d8e4e4aabb466127e96a4f4/o-
955651c90ba340a0b33fa46d39feb3ee?sv=2017-04-
17&sr=b&sig=bWJjIM5aBcAdx3LS5EsZGLdRmK5B%2BE%2BShzSbJD7
LZLU%3D&se=2019-06-20T23%3A02%3A39Z&sp=r",

"tags": [

{
"tagId": "8b2ada4d-1d0f-4b07-af19-dfd643043e1f",

"tagName": null,

"created": "2019-06-19T[Link].9019664"

30
1

Clasificación de imágenes
con Microsoft Custom Vision
Service
BIENVENIDA
Cree, entrene y pruebe un modelo de clasificación de imágenes

personalizado mediante Custom Vision Service para identificar con

precisión las pinturas de artistas famosos.

En este módulo, aprenderá a:

 Crear un proyecto de Custom Vision Service


 Entrenará un modelo de Custom Vision Service con imágenes

etiquetadas

 Probar un modelo de Custom Vision Service


 Llamada al punto de conexión de predicción del modelo
personalizado a través de HTTP
2

Requisitos previos

Para completar estos ejercicios, necesita una suscripción a Azure. Si no

tiene ninguna, cree una cuenta gratuita y agregue una suscripción


antes de empezar. Si es alumno, puede aprovechar la

oferta Microsoft Azure for Students.

Introducción 5 min
Ejercicio: Creación de un proyecto de Custom Vision Service 5

min

Ejercicio: Carga de las imágenes etiquetadas 5 min

Ejercicio: Entrenamiento del modelo 5 min

Ejercicio: Prueba del modelo 5 min

Ejercicio: Llamada al punto de conexión de predicción de un


modelo a través de HTTP 5 min

Resumen y comprobación de conocimientos 10 min

3
INTRODUCCIÓN
Microsoft Cognitive Services Microsoft Cognitive Services es un
conjunto de servicios y API con el respaldo del aprendizaje automático
que permite que los desarrolladores incorporen en sus aplicaciones
características inteligentes, como el reconocimiento facial en fotos y

vídeos, el análisis de opinión en texto y la comprensión del


lenguaje. Custom Vision Service de Microsoft está entre los miembros
4 más recientes del conjunto de productos Cognitive Services. Su
finalidad es crear modelos de clasificación de imágenes que
"aprenden" a partir de las imágenes etiquetadas que proporciona.

¿Quiere saber si una foto contiene la imagen de una flor? Use una
colección de imágenes de flores para entrenar a Custom Vision Service
con el fin de que le pueda indicar si la siguiente imagen incluye una

flor o, incluso, de qué tipo de flor se trata.

Objetivos de aprendizaje

En este módulo, aprenderá a:

• Crear un proyecto de Custom Vision Service

• Entrenará un modelo de Custom Vision Service con imágenes

etiquetadas
• Probar un modelo de Custom Vision Service

• Llamar al punto de conexión de predicción del modelo

personalizado a través de HTTP

• Comprender las garantías de directivas y la privacidad de

Microsoft

• Supervisar los recursos

5
EJERCICIO: CREACIÓN DE
UN PROYECTO DE
CUSTOM VISION SERVICE
El primer paso para crear un modelo de clasificación de imágenes con
Custom Vision Service es crear un proyecto. En esta unidad, usará el
portal de Custom Vision Service para crear un proyecto de Custom
Vision Service.

1. Abra el portal de Custom Vision Service en el explorador.


Después, seleccione Iniciar sesión.

6 2. Si se le pide que inicie sesión, hágalo con las credenciales de su


cuenta Microsoft. Si se le pide permitir que esta aplicación
acceda a su información, haga clic en Yes (Sí) y, si se le solicita,

acepte los términos del servicio.

3. Haga clic en Nuevo proyecto para crear un proyecto.


4. En el cuadro de diálogo Crear proyecto nuevo, ponga el

nombre Ilustraciones al proyecto.

5. Seleccione el grupo de recursos que quiera usar para el


proyecto. Si no dispone de ningún grupo de recursos,

seleccione Crear nuevo para crear uno.

6. Tras seleccionar el grupo de recursos, se mostrarán las

secciones siguientes:

 Tipos de proyecto: seleccione la clasificación.

 Tipos de clasificación: seleccione Multietiqueta.

 Dominios: seleccione General.

Un dominio optimiza un modelo para determinados tipos de imagen.


Por ejemplo, si su objetivo consiste en clasificar imágenes de alimentos
7
por los tipos de alimentos que contienen o el origen étnico de los

platos, puede resultar útil seleccionar el dominio Food (Comida). Para


los escenarios en los que no coincide ninguno de los dominios

ofrecidos, o si no está seguro de qué dominio elegir, seleccione el


dominio General.

7. Para crear el proyecto, haga clic en Crear proyecto.


8

El paso siguiente es cargar imágenes al proyecto y asignar etiquetas a

esas imágenes para clasificarlas.


EJERCICIO: CARGA DE
LAS IMÁGENES
ETIQUETADAS
En esta unidad, agregará imágenes de cuadros famosos de Picasso,
Pollock y Rembrandt al proyecto Artworks. Etiquetará las imágenes, de
modo que Custom Vision Service pueda aprender a diferenciar a un
artista de otro.

1. En el proyecto Artworks que hemos creado, haga clic en el


signo más (+) a la derecha de Etiquetas, en el panel lateral.

9
10

2. Se muestra un cuadro de diálogo denominado Crear una

etiqueta nueva. Escriba cuadro en el nombre de campo de la


etiqueta y seleccione Guardar. Esta operación crea la
etiqueta cuadro en la lista de etiquetas. Vamos a agregar algo

más.

3. Repita los pasos 1 y 2 para agregar etiquetas con los


valores Picasso, Pollock y Rembrandt. Cuanto termine, la
etiqueta debería tener el siguiente aspecto.
Como puede ver, el número de imágenes en el proyecto que se

etiquetan con cada una de estas etiquetas es cero. Vamos a agregar


11 algunas imágenes al proyecto y a asignar etiquetas.

4. Descargue [Link] que contiene recursos de imagen


para este módulo y descomprímalo en el equipo local.

5. De vuelta en el portal, haga clic en Agregar imágenes para


agregar imágenes al proyecto.
6. En la carpeta cvs-resources que ha descargado localmente en

el paso 4, vaya a la carpeta "Artists\Picasso".

7. Seleccione todos los archivos de "Artists\Picasso" y, después,


haga clic en Abrir.

12

8. El cuadro de diálogo Image upload (Carga de imágenes)


aparece y muestra vistas en miniatura de todas las imágenes
que se van a cargar. Seleccione el campo My Tags (Mis
etiquetas), que abre un menú desplegable de las etiquetas que

puede asignar estas imágenes.


13

9. Seleccione las etiquetas cuadros y Picasso, y, a continuación,

seleccione Upload 7 files (Cargar siete archivos) para finalizar

la carga.

10. Confirme que las imágenes que cargó ahora están en el


proyecto Artworks y que la lista de etiquetas se ha actualizado

para mostrar que hemos etiquetado siete imágenes


con Picasso y cuadros.
11. Con siete imágenes de Picasso, Custom Vision Service puede

hacer un buen trabajo de identificación de los cuadros de


Picasso. Pero, si acabara de entrenar al modelo ahora mismo,
solo entendería la apariencia de un Picasso y no sería capaz de

identificar los cuadros de otros pintores. El paso siguiente es


cargar algunos cuadros de otro pintor.
14
12. Seleccione Add images (Agregar imágenes) y seleccione todas
las imágenes de la carpeta "Artists\Rembrandt" en los recursos

del módulo. Etiquételas con las etiquetas "cuadros" y


"Rembrandt" (no "Picasso") y seleccione Upload 6 files (Cargar

seis archivos) para cargarlas al proyecto.


15

13. Confirme que las imágenes de Rembrandt aparecen junto a las

de Picasso en el proyecto y que "Rembrandt" aparece en la lista


de etiquetas.
14. Ahora agregue cuadros del enigmático pintor Jackson Pollock

para que Custom Vision Service pueda reconocer también sus


cuadros. Seleccione todas las imágenes de la carpeta
"Artists\Pollock" en los recursos del módulo, etiquételas con los
16
términos "cuadro" y "Pollock", y cárguelas al proyecto.

Con las imágenes etiquetadas cargadas, el paso siguiente es entrenar


el modelo con estas imágenes, para que pueda distinguir entre los
cuadros de Picasso, Rembrandt y Pollock, así como determinar si un

cuadro es obra de uno de estos pintores famosos.


EJERCICIO:
ENTRENAMIENTO DEL
MODELO
En esta unidad, entrenará el modelo con las imágenes cargadas y
etiquetadas en el ejercicio anterior. Después de entrenar un modelo,
puede perfeccionarlo si se cargan imágenes etiquetadas adicionales y
se vuelve a entrenar.

1. Haga clic en el botón Train (Entrenar) situado en la parte


superior de la página para entrenar el modelo. Cada vez que

entrene el modelo, se crea una nueva iteración. Custom Vision


17
Service mantiene varias iteraciones, lo que le permite comparar
su progreso a lo largo del tiempo.

2. Espere a que se complete el proceso de entrenamiento. (Solo

debería tardar unos segundos). Luego, revise las estadísticas de


entrenamiento que se le presentan para la iteración 1.

Los resultados muestran dos medidas de precisión del

modelo, Precision (Precisión) y Recall (Recuerdo). Supongamos que

se le han presentado al modelo tres imágenes de Picasso y tres de


Gogh Van. Supongamos que se identifican correctamente dos de los

ejemplos de Picasso como imágenes de "Picasso", pero dos de los

ejemplos de Van Gogh se identifican incorrectamente también como


de Picasso. En este caso, la precisión sería del 50 %, ya que se

identifican correctamente dos de cada cuatro imágenes. La puntuación


de Coincidencia sería del 67 %, ya que se identificaron correctamente
dos de las tres imágenes de Picasso.

18

En el siguiente ejercicio, vamos a probar el modelo con la característica


Quick Test (Prueba rápida) del portal, que permite enviar imágenes al

modelo y ver cómo las clasifica con los conocimientos adquiridos a


partir de las imágenes de entrenamiento.

Sugerencia

Además de entrenar el modelo con la interfaz de usuario del portal de

Custom Vision, también puede hacerlo si llama al


método TrainProject en Custom Vision Training API.
EJERCICIO: PRUEBA DEL
MODELO
Ahora que se ha entrenado el modelo, es momento de probarlo.
Proporcionaremos imágenes nuevas al modelo y veremos cómo las

clasifica.

1. Haga clic en Quick Test en la parte superior de la página.

2. Haga clic en Examinar archivos locales y vaya a la carpeta

"Quick Tests" en la carpeta de recursos del módulo que


19 descargó antes. Seleccione PicassoTest_01.jpg y haga clic

en Abrir.
3. Examine los resultados de la prueba en el cuadro de diálogo

"Quick Test" (Prueba rápida). ¿Cuál es la probabilidad de que el


cuadro sea un Picasso? ¿Cuál es la probabilidad de que sea un
Rembrandt o Pollock?

20

4. Cierre el cuadro de diálogo de "Quick Test" (Prueba rápida). A


continuación, haga clic en Predictions (Predicciones) en la

parte superior de la página.

5. Haga clic en la imagen de prueba que ha cargado para

mostrarla en detalle. Luego, etiquete la imagen como un


"Picasso" seleccionando Picasso en la lista desplegable lista y

haga clic en Guardar y cerrar.

Al etiquetar las imágenes de prueba de este modo, puede redefinir el

modelo sin cargar imágenes de entrenamiento adicionales.


6. Realice otra prueba rápida, esta vez con el archivo

denominado [Link] de la carpeta "Quick Test"


21
(Prueba rápida). Confirme que esta imagen se asigna a poca
probabilidad de ser un Picasso, un Rembrandt o un Pollock.

El modelo está entrenado y preparado para usarse, y parece ser un

experto en identificar cuadros de determinados pintores. Vamos a


llamar al punto de conexión de predicción a través de HTTP y veremos
qué ocurre.
EJERCICIO: LLAMADA AL
PUNTO DE CONEXIÓN DE
PREDICCIÓN DE UN
MODELO A TRAVÉS DE
HTTP
En el ejercicio anterior, se probó el modelo entrenado con la
característica Quick Test (Prueba rápida) del portal de Custom Vision

Service. Se trata de una excelente manera de comprobar rápidamente


la precisión del modelo con algunas imágenes de prueba. Vayamos un
22
poco más lejos y hagamos llamadas al punto de conexión de predicción

del modelo a través de HTTP.

1. Vuelva al proyecto Artworks* en el portal de Custom Vision


Service y seleccione la pestaña Rendimiento.

2. Seleccione Publicar para publicar la iteración más reciente.

3. Seleccione Dirección URL de predicción. Se muestra un

cuadro de diálogo de la información que necesitamos para

realizar nuestras llamadas.


Como se muestra en el cuadro de diálogo, podemos llamar al punto de
23
conexión de predicción y pasarle una dirección URL de imagen.
También podemos pasar una imagen sin procesar al punto de conexión
en el cuerpo de la solicitud.

Tome nota de tres fragmentos de información de este cuadro de

diálogo.

 Prediction-Key (Clave de predicción): Esta clave tiene que


establecerse como un encabezado en todas las solicitudes. Es

lo que da acceso al punto de conexión.

 URL de la solicitud: El cuadro de diálogo muestra dos

direcciones URL diferentes. Si se está publicando una dirección


URL de imagen, use la primera, que termina en /url. Si se quiere

publicar una imagen sin formato en el cuerpo de la solicitud, se

usa la segunda dirección URL, que termina en /image.


 Tipo de contenido: Si se va a publicar una imagen sin formato,

se establece el cuerpo de la solicitud como la representación


binaria de la imagen y el tipo de contenido
como application/octet-stream. Si se va a publicar una
dirección URL de imagen, se incluye como JSON en el cuerpo y

se establece el tipo de contenido como application/json.

4. Copie y guarde la primera dirección URL y el valor


de Prediction-Key del cuadro de diálogo How to use the
Prediction API (Cómo usar Prediction API).

Sugerencia

cURL es una herramienta de línea de comandos que se puede usar para

enviar o recibir archivos. Se incluye con Linux, macOS y Windows 10 y


puede descargarse para la mayoría de los demás sistemas operativos.
24
cURL admite numerosos protocolos como HTTP, HTTPS, FTP, FTPS,

SFTP, LDAP, TELNET, SMTP, POP3, etc. Para obtener más información,
consulte los vínculos siguientes:

 [Link]
 [Link]

cURL ya está instalado en Azure Cloud Shell en el espacio aislado, de

modo que lo usaremos aquí para realizar llamadas HTTP a nuestro


punto de conexión.

2. En Cloud Shell, ejecute el comando siguiente.

Reemplace [endpoint-URL] con la dirección URL que guardó

en el último paso. Reemplace [Prediction-Key] con el valor


de Prediction-Key que guardó en el último paso.
CLI de Azure

curl [endpoint-URL] \

-H "Prediction-Key: [Prediction-Key]" \

-H "Content-Type: application/json" \

-d "{'url' : '[Link]

classify-images-with-the-custom-vision-service/master/test-
images/VanGoghTest_02.jpg'}" \

| jq '.'

Cuando se complete el comando, verá una respuesta JSON similar a la

captura de pantalla siguiente. La API devuelve una probabilidad para


cada etiqueta en el modelo. Como puede ver, con una probabilidad
25
cercana a 1 para el valor tagName "painting", esta imagen es

definitivamente un cuadro. Pero no es de ninguno de los artistas con


los que hemos entrenado nuestro modelo.

Imagen URL

[Link]
earn-classify-images-with-the-custom-vision-

service/master/test-images/PicassoTest_02.jpg
[Link]
earn-classify-images-with-the-custom-vision-
service/master/test-images/RembrandtTest_01.jpg

[Link]

earn-classify-images-with-the-custom-vision-

service/master/test-images/PollockTest_01.jpg

3. Para probar más predicciones, reemplace la dirección URL en el

cuerpo de la solicitud anterior por las direcciones URL de la

tabla siguiente.

Nuestro punto de conexión de predicción funciona según lo previsto.


26
Llamar a la API es tan sencillo como realizar una solicitud HTTP al punto

de conexión con una clave de predicción y una dirección URL de


imagen.
RESUMEN Y
COMPROBACIÓN DE
CONOCIMIENTOS
La clasificación de imágenes desempeña un papel cada vez más

importante en el sector como un medio para automatizar tareas como


la comprobación de contenido ofensivo en las imágenes que se cargan

en los sitios web y la inspección de componentes que salen de las líneas


de montaje en busca de defectos. Crear manualmente un modelo de

clasificación de imágenes, es decir, programarlo desde cero en Python,


R o en otro lenguaje, resulta costoso y requiere experiencia. Custom
27
Vision Service permite crear modelos de clasificación de imágenes
sofisticadas prácticamente a cualquier persona. Y después de crear y

entrenar un modelo, una aplicación que lo use solo está a unas líneas

de código de distancia.
1

Traducción de voz en tiempo


real con Azure Cognitive
Services
BIENVENIDA
Obtenga información sobre cómo traducir y convertir voz en texto

mediante la transcripción en tiempo real con Speech Translation API de

Azure Cognitive Services.

En este módulo aprenderá a:

• Reconocer en qué consiste la traducción de voz

• Explorar Speech Translation API

Requisitos previos
2
Ninguno

Introducción 1 min

Información general de conversión de voz en texto 3 min

Ejercicio: Creación de un recurso de servicio de Voz 5 min

Ejercicio: Visualización de las claves de suscripción y los puntos

de conexión 5 min

Ejercicio: Conversión de voz de un archivo de audio a texto 20

min

Vista de idiomas de voz admitidos 4 min


Ejercicio opcional: Escucha de datos de traducción entrantes 5

min

Prueba de conocimientos 7 min

Resumen 2 min

3
INTRODUCCIÓN
El aspecto de conversión de voz en texto del servicio de Voz transcribe
transmisiones de audio en texto. La aplicación puede mostrar este texto
al usuario o actuar sobre él como entrada de comandos. Se puede usar
este servicio con una biblioteca cliente del SDK (para las plataformas y

los lenguajes admitidos), o bien con una API de transferencia de estado


representacional (REST).
4
Con el servicio de Voz, se puede realizar lo siguiente:

• Ampliar el alcance de las aplicaciones en dispositivos móviles,


de escritorio y en la web para proporcionar transcripción de voz

a texto.

• Traducir con facilidad hacia y desde varios idiomas compatibles


a través de la interfaz REST abierta del SDK de Voz. Esta API es

un servicio automático de traducción de voz basado en la nube


(también conocido como traducción automática).

• Realizar operaciones de texto a voz que puedan aceptar la


entrada de texto y, después, generar una versión hablada de

ese texto mediante voz sintetizada.


• Realización del reconocimiento de entidades mediante la

integración con Language Understanding (LUIS)

Nota

Este módulo requiere una suscripción de Azure. Es posible que muchos


de los servicios que se creen y usen sean gratuitos, pero necesitará una

suscripción activa o una versión de prueba para completar los

ejercicios. Si no tiene una suscripción a Azure, cree una cuenta


gratuita antes de empezar.

Objetivos de aprendizaje

Objetivos de este módulo:

• Obtener información sobre algunas de las capacidades de


5 conversión de voz en texto.

• Explorar el servicio de conversión de voz en texto para convertir


un archivo de audio en una salida de texto.

• Explorar la capacidad de convertir la voz de un micrófono a una


salida de texto.
INFORMACIÓN GENERAL
DE CONVERSIÓN DE VOZ
EN TEXTO
El aspecto de conversión de voz en texto de los servicios de Voz, en

Azure Cognitive Services, proporciona transcripción en tiempo real de


transmisiones de audio basada en inteligencia artificial y aprendizaje

automático. Las Speech Services API permiten a los desarrolladores

agregar transcripciones de voz de un extremo a otro en tiempo real a


sus aplicaciones o servicios.

Los servicios de conversión de voz en texto se exponen a través de API


6
basadas en REST independientes de la plataforma o del SDK de Voz.

Estas API permiten integrar estos servicios en cualquier solución que


requiera traducción de voz de varios idiomas. La forma en que se tiene

acceso a estos servicios variará en función de si se usa la API REST o el


SDK de Voz. Los ejercicios de este módulo utilizarán el SDK de Voz.

Los servicios de Voz están diseñados para realizar conversión de voz

en texto en tiempo real en escenarios como los siguientes:

• Traducción de presentaciones en directo

• Comunicaciones traducidas en persona o remotas

• Asistencia al cliente

• Inteligencia empresarial
• Subtitulado de elementos multimedia

• Interacciones con inteligencia artificial multilingüe

Nota

Es posible que conozca un servicio similar de Azure: Translator Speech

API. Translator Speech es una API heredada que se va a reemplazar por


la nueva Speech Translation API. Translator Speech API estará

disponible hasta octubre de 2019. Obtenga más información sobre


cómo migrar de Translator Speech API a Speech Translation
API antes de que se deshabilite. Tenga en cuenta también que, en caso
de que lo haya estado usando, a partir del 15 de octubre de 2019 Bing
Speech ya no está disponible. Vea las guías de migración en
[Link] para mover sus soluciones a los servicios de Voz.

7
De forma predeterminada, el servicio de conversión de voz en texto usa
el modelo de lenguaje universal. Este modelo se ha entrenado con

datos propiedad de Microsoft y se implementa en la nube. Es óptimo


para escenarios de conversación y dictado. Al usar conversión de voz
en texto para el reconocimiento y la transcripción en un entorno único,

se pueden crear y entrenar modelos acústicos, de idioma y de


pronunciación personalizados. La personalización es útil para abordar

el ruido ambiente o el vocabulario específico del sector.

Este módulo no tratará la personalización. Es posible que los módulos

futuros traten este asunto. También puede visitar la página de Voz


personalizada para obtener más información.
EJERCICIO: CREACIÓN DE
UN RECURSO DE
SERVICIO DE VOZ
Antes de empezar a realizar la traducción de voz a texto, debe crear

un recurso de voz de Azure. Puede hacerlo mediante Azure Portal, la


CLI de Azure o Cloud Shell. En este ejercicio se usará Azure Portal.

1. Inicie sesión en Azure Portal .

2. Haga clic en + Crear un recurso. En el cuadro de texto Buscar


en Marketplace, escriba voz y presione Entrar.
8
3. En la lista Resultados, seleccione Voz. En el panel de Voz,
seleccione Crear.

4. Escriba un nombre único para el recurso de servicio de Voz.

5. Seleccione una suscripción adecuada.

6. Elija una ubicación para hospedar el recurso. Esta suele ser la


región donde se utilizará el recurso.

7. Como Plan de tarifa, seleccione un nivel de servicio. Los niveles

de servicio pueden cambiar, pero actualmente puede

seleccionar F0 o S0. Para las pruebas, hemos seleccionado F0.


8. Cree un grupo de recursos denominado mslearn-

speechapi para almacenar los recursos. También puede elegir


un grupo de recursos existente si lo desea.

9. Haga clic en Crear para crear una suscripción a Speech

Translation API.

Tras una breve demora, la nueva suscripción de Speech Translation API

estará disponible, y se generarán claves de API nuevas para su uso


mediante programación.

Sugerencia

Si se pierde la notificación que indica que el recurso se ha publicado,

haga clic en el icono de notificación de la barra superior del portal y,


después, haga clic en Ir al recurso, como se muestra en la imagen
9
siguiente:

Después de crear un recurso de servicio de Voz, ya se puede acceder


al punto de conexión y las claves de suscripción de la API.
EJERCICIO:
VISUALIZACIÓN DE LAS
CLAVES DE SUSCRIPCIÓN
Y LOS PUNTOS DE
CONEXIÓN
Para acceder al servicio de Voz desde una aplicación, necesita obtener
dos datos en Azure Portal:

• Una clave de suscripción, que se pasa con cada solicitud para

10 autenticar la llamada.

• El punto de conexión que expone el servicio en la red.

Se necesitará la clave de suscripción al usar el SDK de Voz o las API


REST, pero el punto de conexión solo será necesario para el acceso a la

API REST. El uso del SDK de Voz en una aplicación utiliza la clave, pero
también requiere una región. Verá el uso de la información de la clave

y la región en el ejercicio más adelante en el módulo.

Visualización de las claves de suscripción y el punto de conexión

1. En el menú de la izquierda del portal, seleccione Grupos de

recursos y después el grupo de recursos mslearn-


speechapi que ha creado para Speech Translation API.
2. Seleccione el nombre de la suscripción de Speech Translation

API (por ejemplo, SpeechTranslation).

3. Hay dos ubicaciones que mostrarán el punto de conexión y, por


lo menos, una clave.

4. En el grupo ADMINISTRACIÓN DE RECURSOS, seleccione la

opción Inicio rápido para mostrar valores de Clave1 y Punto

de conexión.

5. La segunda opción se usa para ver una segunda clave del

servicio. En el grupo ADMINISTRACIÓN DE RECURSOS,

seleccione Claves y punto de conexión para ver el nombre del


servicio, el punto de conexión y dos claves de API.

6. Copie el valor de CLAVE 1 o CLAVE 2 en el Portapapeles para


11
usarlo en una aplicación.
EJERCICIO: CONVERSIÓN
DE VOZ DE UN ARCHIVO
DE AUDIO A TEXTO
En este ejercicio, usará el servicio de Voz que se ha creado

anteriormente. En este ejercicio no se requiere ninguna configuración


en el equipo local para un entorno de desarrollo, ya que se utilizará

Visual Studio Code en línea. En los pasos se detallará lo que se necesita

para que el entorno en línea esté configurado correctamente y las


tareas que serán necesarias para que cada ejercicio funcione
correctamente. Todos los recursos se almacenan en un repositorio de

12 GitHub al que se vinculará durante los pasos del ejercicio.

1. Para empezar, abra una pestaña o ventana del explorador y


vaya a Visual Studio Code en línea.

[!NOTE] En este momento, Safari no es un explorador compatible con


la versión preliminar de VS Code en línea.

2. Necesitará una suscripción de Azure para crear un entorno para

Visual Studio Code en línea.

3. Seleccione el botón Primeros pasos.

4. Inicie sesión con la cuenta de Microsoft que esté vinculada a su


suscripción de Azure.
5. Si es la primera vez que usa Visual Studio Code en línea, se le

pedirá que cree un plan nuevo, el cual se debe seleccionar en


la lista desplegable de la parte superior de la página.

6. Seleccione Crear entorno.

7. Seleccione la Suscripción en el panel Seleccionar facturación y

elija una ubicación para el servicio.

8. Seleccione Crear.

9. Una vez que se haya creado el plan, se podrá crear el primer


entorno.

10. Si el panel Crear entorno no se abre automáticamente,

seleccione Crear entorno.


13
11. Escriba el nombre del entorno que prefiera, por

ejemplo, SpeechToTextCS.

12. Copie la siguiente dirección URL y péguela en el área de

repositorio de Git en el panel Crear


entorno, [Link]
CS.

13. Deje el resto de opciones con sus valores predeterminados y

seleccione Crear.

14. El entorno tardará unos minutos en crearse, así que, mientras


espera, vaya al servicio Voz en Azure Portal y copie una de sus

claves y anote también la región en la que se ha creado el


servicio.
15. Una vez que el entorno indica que está disponible, seleccione

el título o los tres puntos verticales en la parte inferior derecha


del cuadro de entorno y elija Conectar.

16. Usaremos C# y .Net Core para este ejercicio, así que, una vez

que se abra la ventana de VS Code, seleccione el menú de

hamburguesa, Ver y Terminal para iniciar el terminal.

17. Cuando empiece a escribir un comando, recibirá un mensaje


que indica que el terminal es de solo lectura. Seleccione el

botón para abrir un terminal nuevo.

18. Compruebe que Bash está seleccionado en la lista desplegable


de la derecha Seleccionar shell predeterminado.

19. Escriba el comando dotnet new console y presione Entrar.


14
20. Se configura una nueva estructura de proyecto de C# dotnet
core para que se complete con un archivo [Link], un

archivo [Link] y la carpeta obj.

21. Abra el archivo [Link] y reemplace el contenido por el


código siguiente.

C#Copiar

//

// Copyright (c) Microsoft. All rights reserved.

// Licensed under the MIT license. See [Link] file in the project

root for full license information.


//

using System;

using [Link];

using [Link];

using [Link];

namespace HelloWorld

15 class Program

// It's always a good idea to access services in an async fashion

static async Task Main()

await RecognizeSpeechAsync();

static async Task RecognizeSpeechAsync()


{

// Configure the subscription information for the service to

access.

// Use either key1 or key2 from the Speech Service resource you
have created

var config =

[Link]("YourSubscriptionKey",
"YourServiceRegion");

// Setup the audio configuration, in this case, using a file that is


in local storage.
16
using (var audioInput =

[Link]("YourAudioFileName"))

// Pass the required parameters to the Speech Service which


includes the configuration information

// and the audio file name that you will use as input

using (var recognizer = new SpeechRecognizer(config,

audioInput))

[Link]("Recognizing first result...");


var result = await [Link]();

switch ([Link])

case [Link]:

// The file contained speech that was recognized and

the transcription will be output

// to the terminal window

[Link]($"We recognized: {[Link]}");

break;
17

case [Link]:

// No recognizable speech found in the audio file that


was supplied.

// Out an informative message

[Link]($"NOMATCH: Speech could not be

recognized.");

break;

case [Link]:

// Operation was cancelled


// Output the reason

var cancellation =
[Link](result);

[Link]($"CANCELED:

Reason={[Link]}");

if ([Link] == [Link])

[Link]($"CANCELED:
ErrorCode={[Link]}");

18 [Link]($"CANCELED:
ErrorDetails={[Link]}");

[Link]($"CANCELED: Did you update the


subscription info?");

break;

}
}

22. En la ventana de terminal, escriba el comando siguiente dotnet


add package [Link] y presione

Entrar.

23. En la ventana de terminal, escriba el siguiente comando para

agregar también el paquete de audio, dotnet add package


[Link], y presione Entrar.

24. Visual Studio Code instala el paquete para su uso con la clase

AudioConfig que se usará en el código.

25. Escriba la instrucción using siguiente para incluir el paquete en


19 [Link].

C#Copiar

using [Link];

26. En el archivo [Link], pegue la clave del servicio de Voz en


la que el texto YourSubscriptionKey es lo siguiente:

27. Escriba la ubicación como, por ejemplo, westus en la


opción YourServiceRegion de esa misma línea.

28. Busque el texto YourAudioFileName y reemplácelo

por [Link].
29. En la ventana de terminal, escriba dotnet run y, si se ha escrito

correctamente, debería ver el resultado de la traducción en la


ventana de terminal.

20
VISTA DE IDIOMAS DE
VOZ ADMITIDOS
Los servicios de traducción de voz están diseñados para escenarios de

traducción de idioma específicos del destino. Los idiomas de voz

admitidos se describen mediante los siguientes tipos: conversión de voz


en texto, traducción de voz y texto a voz. La compatibilidad con el

idioma varía según la capacidad del servicio de Voz.

Por ejemplo, en conversión de voz en texto, encontrará compatibilidad


con el inglés en seis configuraciones regionales:

• Inglés (Australia): en-AU


21
• Inglés (Canadá): en-CA

• Inglés (Reino Unido): en-GB

• Inglés (India): en-IN

• Inglés (Nueva Zelanda): en-NZ

• Inglés (Estados Unidos): en-US

A la hora de decidir cuáles son los servicios que usará para sus

necesidades, visite la página de idiomas y regiones admitidos para


obtener información actualizada sobre los idiomas admitidos. También

se puede detectar mediante programación la compatibilidad con


idiomas mediante una cadena de

consulta, [Link]
h,text,tts&api-version=3.0, que devuelve los idiomas admitidos en

formato JSON que se pueden analizar. Aquí se muestra un fragmento


de código de los resultados devueltos:

JSONCopiar

"translation": {

"af": {

"name": "Afrikaans",

"nativeName": "Afrikaans",

"dir": "ltr"
22
},

"ar": {

"name": "Arabic",

"nativeName": "‫"اﻟﻌﺮﺑﻴﺔ‬,

"dir": "rtl"

},

"bg": {

"name": "Bulgarian",

"nativeName": "Български",
"dir": "ltr"

},

"bn": {

"name": "Bangla",

"nativeName": "বাংলা",

"dir": "ltr"

},

"bs": {

"name": "Bosnian",

23 "nativeName": "bosanski (latinica)",

"dir": "ltr"

},

"ca": {

"name": "Catalan",

"nativeName": "Català",

"dir": "ltr"

}
}

En la página de idiomas admitidos se muestran los idiomas admitidos

por el SDK de Voz y la API REST, por lo que puede tener compatibilidad
con su método preferido de acceso a los servicios. También puede

realizar alguna personalización, para un subconjunto de idiomas, a fin

de ayudar a mejorar la precisión. Se ofrece la personalización para un


subconjunto de los idiomas a través de la carga de Transcripciones
etiquetadas de audio y voz humana o Texto relacionado: Oraciones. La
personalización de la pronunciación solo está disponible actualmente

para en-US y de-DE. Obtenga más información sobre la


personalización aquí.

24
EJERCICIO OPCIONAL:
ESCUCHA DE DATOS DE
TRADUCCIÓN ENTRANTES
Otro uso potencial de Conversión de voz en texto es realizar la

operación de traducción en la voz entrante que se escucha desde un


micrófono. Este escenario puede producirse en una sala de

presentaciones en la que el servicio de Voz proporciona la traducción

de voz a texto de las personas que hablan y, después, lo muestra como


subtítulos en una pantalla de proyección. En este ejercicio, verá un
ejemplo de la escucha de voz desde un micrófono y su traducción a la

25 salida de texto.

Nota

Este es un ejercicio opcional, ya que requiere el uso de un equipo local


y la instalación de software para que los pasos del ejercicio se realicen
correctamente.

Para probar este escenario, el entorno en línea creará incidencias con

el acceso al micrófono, por lo que en este caso usaremos el equipo


local. Como consecuencia, deberá tener instalado Visual Studio o
Visual Studio Code. Dado que Visual Studio Code es una herramienta

de desarrollo gratuita compatible con Windows, Mac y Linux, será la

herramienta que usaremos. Visite la página de Visual Studio Code para


descargar e instalar la aplicación en el equipo local. Una vez que se
haya finalizado la instalación, inicie el ejercicio.
1. Para este ejercicio, cree una carpeta local en la que se va a

almacenar el proyecto.

2. Inicie Visual Studio Code y abra la carpeta que se ha creado en


el paso 1.

3. Abra una ventana de terminal en VS Code mediante la

combinación de teclas CTRL+` (Control más la tilde aguda).

Opcionalmente, puede optar por el menú Ver y, después,


Terminal.

4. Escriba el comando dotnet new console y presione Entrar.

5. Dotnet Core crea una estructura de proyecto en su carpeta y

agrega un archivo [Link].

26 6. En la ventana de terminal, escriba el comando siguiente, dotnet


add package [Link] y presione
Entrar.

7. El paquete necesario se agregará al proyecto y se requerirá para

tener acceso al SDK de Voz.

8. Pegue el código siguiente en [Link] y reemplace el código

existente.

C#Copiar

//

// Copyright (c) Microsoft. All rights reserved.


// Licensed under the MIT license. See [Link] file in the project

root for full license information.

//

using System;

using [Link];

using [Link];

namespace helloworld

{
27

class Program

public static async Task RecognizeSpeechAsync()

var config =

[Link]("YourSubscriptionKey",
"YourServiceRegion");

using (var recognizer = new SpeechRecognizer(config))


{

var result = await [Link]();

if ([Link] == [Link])

[Link]($"We recognized: {[Link]}");

else if ([Link] == [Link])

28 [Link]($"NOMATCH: Speech could not be


recognized.");

else if ([Link] == [Link])

var cancellation = [Link](result);

[Link]($"CANCELED:
Reason={[Link]}");

if ([Link] == [Link])
{

[Link]($"CANCELED:

ErrorCode={[Link]}");

[Link]($"CANCELED:
ErrorDetails={[Link]}");

[Link]($"CANCELED: Did you update the

subscription info?");

29 }

static void Main()

[Link]("Begin speaking....");

RecognizeSpeechAsync().Wait();

[Link]("Please press <Return> to continue.");

[Link]();

}
}

9. Reemplace "YourSubscriptionKey" por la clave del servicio de


Voz que se ha creado en este módulo.

10. Reemplace "YourServiceRegion" por la región en la que se ha

creado el servicio de Voz, como westus.

11. Asegúrese de que tiene un micrófono conectado al equipo local


y que funciona.

12. En el terminal, escriba dotnet run para iniciar la aplicación.

13. Empiece a hablar para que la aplicación pueda recopilar el


audio de streaming.
30

14. Cuando termine, debería ver la salida de texto transcrito en el

terminal.

15. Cuando se le solicite, presione Entrar para salir de la aplicación.


1

Principales servicios en la
nube: arquitectura de Azure
y garantías de servicio
BIENVENIDA
Azure proporciona una red mundial de centros de datos seguros en los

que puede implementar sus servicios. Obtenga información sobre la

arquitectura física de Azure, cómo se proporciona redundancia y qué

tipo de garantías de servicio ofrece Microsoft.

En este módulo, aprenderá a:

• Explorar la estructura física de la infraestructura de Azure

• Obtendrá información sobre los contratos de nivel de servicio


proporcionados por Azure

• Aprenderá a proporcionar sus propios acuerdos de nivel de


2
servicio para las aplicaciones

Requisitos previos

Ninguno

Introducción 3 min

Descripción de los centros de datos y las regiones en Azure 5


min

Descripción de las zonas geográficas en Azure 3 min

Descripción de las zonas de disponibilidad en Azure 5 min

Descripción de los pares de regiones en Azure 5 min


Descripción de los Acuerdos de Nivel de Servicio para Azure 6

min

Composición de Acuerdo de Nivel de Servicio entre servicios 5


min

Mejora de la confiabilidad de la aplicación en Azure 8 min

Resumen 5 min

3
INTRODUCCIÓN
Posee un pequeño negocio con un amplio conjunto de servicios
basados en web con los que los clientes están encantados. La única
dificultad es que algunos clientes experimentan un retraso de red
cuando acceden a los servicios desde ubicaciones lejanas. Este

problema solía ser costoso de resolver: se necesitaban nuevos centros


de datos y costosas redes para conectarse a ellos. Para esto, el
4 surgimiento de la informática en la nube ha facilitado la solución.

Microsoft Azure proporciona una infraestructura confiable, con


redundancia y de bajo consumo que abarca más de 100 instalaciones

de alta seguridad a nivel mundial, vinculadas por una de las mayores

redes del planeta. Azure le permite obtener un alcance


global con presencia local, mantener sus datos seguros y conforme a

las leyes locales, y reducir la contaminación gracias a los centros de


datos de Microsoft que son respetuosos con el medio ambiente.

Objetivos de aprendizaje

En este módulo, aprenderá a:

• Explorar la estructura física de la infraestructura de Azure


• Entender los contratos de nivel de servicio proporcionados por

Azure

• Aprenderá a proporcionar acuerdos de nivel de servicio para las


aplicaciones

5
DESCRIPCIÓN DE LOS
CENTROS DE DATOS Y
LAS REGIONES EN AZURE
Microsoft Azure está formado por centros de datos ubicados en todo

el mundo. Al aprovechar un servicio o crear un recurso como una


máquina virtual o una base de datos SQL, usa equipamiento físico en

una o varias de estas ubicaciones.

Los centros de datos específicos no se exponen directamente a los

usuarios finales, sino que Azure los organiza en regiones.

6 ¿Qué es una región?

Una región es un área geográfica del planeta que contiene al menos


un centro de datos, aunque podrían ser varios centros de datos

cercanos y conectados mediante una red de baja latencia. Azure asigna


y controla los recursos de forma inteligente dentro de cada región para
garantizar que las cargas de trabajo están bien compensadas.

Al implementar un recurso en Azure, es habitual tener que elegir la

región en la que quiere que se implemente el recurso.

Algunos ejemplos de regiones son: Oeste de EE. UU., Centro de


Canadá, Europa Occidental, Este de Australia y Japón Occidental. A

continuación puede ver todas las regiones disponibles a fecha de


febrero de 2020:
Importante

Algunos servicios o características de las máquinas virtuales solo están

disponibles en determinadas regiones, por ejemplo, determinados tipos


de almacenamiento o tamaños de máquinas virtuales. También hay

algunos servicios globales de Azure que no requieren que seleccione una

región concreta, como Microsoft Azure Active Directory, Microsoft Azure


Traffic Manager o Azure DNS.

¿Por qué es importante?

Azure tiene más regiones globales que cualquier otro proveedor de

servicios en la nube. Esto le da la flexibilidad necesaria para acercar las


aplicaciones a los usuarios estén donde estén. También proporciona
una mejor escalabilidad, redundancia y conserva un mejor alojamiento

7 de datos de sus servicios.

Regiones de Azure especiales

Azure tiene regiones especializadas que se pueden usar al crear las


aplicaciones, en lo referente al cumplimiento normativo o a aspectos
legales. Entre ellas se incluyen las siguientes:

• US DoD (centro), US Gov Virginia, US Gov Iowa y más: son


instancias físicas y lógicas con aislamiento de red de Azure para

asociados y agencias de la administración pública de EE. UU.


Estos centros de datos están operados por personas
estadounidenses sometidas a evaluación e incluyen

certificaciones de cumplimiento adicionales.


• Este de China, Norte de China y más: estas regiones están

disponibles gracias a una exclusiva asociación entre Microsoft y


21Vianet, por el cual Microsoft no mantiene directamente los
centros de datos.

Las regiones se utilizan para identificar la ubicación de los recursos,

pero hay otros dos términos que también debe conocer: zonas
geográficas y zonas de disponibilidad.

8
DESCRIPCIÓN DE LAS
ZONAS GEOGRÁFICAS EN
AZURE
Azure divide el mundo en zonas geográficas que se definen mediante

límites geopolíticos o fronteras de países. Una zona geográfica de


Azure es un mercado diferenciado que normalmente contiene dos o

más regiones que conservan los límites de cumplimiento y residencia

de datos. Esta división tiene varias ventajas.

 Las zonas geográficas permiten a los clientes con necesidades


específicas de residencia de datos y cumplimiento normativo
9
mantener sus datos y aplicaciones cerca.

 Una zona geográfica garantiza que se cumplan los requisitos de


residencia, soberanía, cumplimiento normativo y resistencia de

los datos dentro de las fronteras geográficas.

 Las zonas geográficas son tolerantes a errores hasta el punto


de resistir una interrupción total del funcionamiento de una

región gracias a su conexión con nuestra infraestructura de red


dedicada de alta capacidad.

Sugerencia

La residencia de datos hace referencia a la ubicación geográfica o física


de los datos o la información de una organización. Define los requisitos

legales o normativos impuestos a los datos según el país o región en la


que residen y es una consideración importante a la hora de planificar el

almacenamiento de datos de su aplicación.

La zonas geográficas se dividen en las siguientes áreas:

• América
• Europa

• Asia Pacífico

• Oriente Medio y África

Cada región pertenece a una sola zona geográfica y se le aplican reglas

de disponibilidad del servicio, cumplimiento y soberanía o residencia

de datos específicas. Consulte la documentación para obtener más

información (hay un vínculo disponible en la unidad de resumen).

10
DESCRIPCIÓN DE LAS
ZONAS DE
DISPONIBILIDAD EN
AZURE
A fin de proteger la información en caso de error, deberá asegurarse
de que los servicios y datos son redundantes. Si hospeda su
infraestructura, esto requiere la creación de entornos de hardware
duplicados. Azure puede ayudar a que la aplicación tenga alta

disponibilidad a través de zonas de disponibilidad.

11 ¿Qué es una zona de disponibilidad?

Las zonas de disponibilidad son centros de datos separados


físicamente dentro de una región de Azure.

Cada zona de disponibilidad consta de uno o varios centros de datos


equipados con alimentación, refrigeración y redes independientes.
Cada una se configura para constituir un límite de aislamiento. Si una

zona deja de funcionar, la otra continúa trabajando. Las zonas de


disponibilidad están conectadas a través de redes de fibra óptica de
alta velocidad privadas.
12

Regiones admitidas

No todas las regiones son compatibles con las zonas de disponibilidad.

Para garantizar la resistencia, hay tres zonas independientes como


mínimo en las siguientes regiones.

 Centro de EE. UU.

 Este de EE. UU. 2

 Oeste de EE. UU. 2

 Oeste de Europa

 Centro de Francia
 Norte de Europa

 Sudeste Asiático

Sugerencia

Esta lista de regiones admitidas está aumentando: consulte la

documentación para obtener la información más reciente.

Uso de zonas de disponibilidad en sus aplicaciones

Si quiere usar zonas de disponibilidad para ejecutar aplicaciones


críticas y conseguir una alta disponibilidad en la arquitectura de sus

aplicaciones, coloque sus recursos de proceso, almacenamiento, red y


datos dentro de una zona y replíquelos en otras. Tenga en cuenta que
la duplicación de los servicios y la transferencia de datos entre zonas
13 podrían suponer un costo.

Las zonas de disponibilidad son principalmente para las máquinas


virtuales, los discos administrados, los equilibradores de carga y las
bases de datos SQL. Los servicios de Azure que admiten zonas de
disponibilidad se dividen en dos categorías:

 Servicios de zona: ancle el recurso a una zona específica (por

ejemplo, máquinas virtuales, discos administrados, direcciones

IP).

 Servicios de redundancia de zona: la plataforma se replica


automáticamente entre zonas (por ejemplo, almacenamiento
con redundancia de zona, SQL Database).
Consulte la documentación para determinar qué elementos de la

arquitectura puede asociar a una zona de disponibilidad.

14
DESCRIPCIÓN DE LOS
PARES DE REGIONES EN
AZURE
Las zonas de disponibilidad se crean con uno o varios centros de

datos, y dentro de cada región hay un mínimo de tres zonas. Pero es


posible que un desastre lo suficientemente grande provoque una

interrupción tan grave como para afectar incluso a dos centros de

datos. Por eso Azure también crea pares de regiones.

¿Qué es un par de regiones?

15 Cada región de Azure se empareja siempre con otra región de la misma


zona geográfica (por ejemplo, EE. UU., Europa o Asia) que se encuentre

como mínimo a 500 km de distancia. Este enfoque permite la


replicación de recursos, como el almacenamiento en la máquina virtual,
en una zona geográfica, lo que ayuda a reducir la probabilidad de que
se produzcan interrupciones provocadas por eventos como desastres

naturales, disturbios civiles, cortes del suministro eléctrico o


interrupciones de la red física que afecten de forma simultánea a ambas

regiones. Si una región de un par se ve afectada por un desastre


natural, por ejemplo, los servicios conmutarán por error
automáticamente a la otra región de su par de regiones.

Algunos pares de regiones de ejemplo en Azure son Oeste de EE. UU.


y Este de EE. UU., o Sudeste Asiático y Asia Oriental.
Puesto que las dos regiones están directamente conectadas y lo

suficientemente lejos como para estar aisladas contra desastres


regionales, puede usarlas para proporcionar redundancia de datos y

servicios de confianza. Algunos servicios ofrecen un almacenamiento


con redundancia geográfica automática utilizando los pares de

regiones.

Entre las ventajas adicionales de los pares de región se incluyen las


16
siguientes:

 Si hay una gran interrupción de Azure, se da prioridad a una


región de cada par para asegurarse de que al menos una se

restaure lo más rápido posible para las aplicaciones


hospedadas en ese par de regiones.

 Las actualizaciones planeadas de Azure se implementan una a

una en regiones emparejadas para minimizar el tiempo de

inactividad y el riesgo de interrupción de la aplicación.

 Los datos siguen residiendo en la misma zona geográfica que

su pareja (excepto Sur de Brasil) con fines de jurisdicción fiscal


y de aplicación de la ley.
Tener un conjunto ampliamente distribuido de centros de datos

permite a Azure proporcionar una alta garantía de disponibilidad.


Veamos lo que significa.

17
DESCRIPCIÓN DE LOS
ACUERDOS DE NIVEL DE
SERVICIO PARA AZURE
Microsoft mantiene su compromiso de ofrecer a los clientes servicios

y productos de alta calidad mediante la adhesión a prácticas,


estándares y directivas operativas completas. Los documentos formales

llamados Acuerdos de Nivel de Servicio (SLA) capturan las condiciones

específicas que definen los estándares de rendimiento que se aplican a


Azure.

 Los Acuerdos de Nivel de Servicio describen el compromiso de


18
Microsoft a la hora de proporcionar a los clientes de Azure
estándares de rendimiento específicos.

 Hay Acuerdos de Nivel de Servicio para los servicios y


productos individuales de Azure.

 Los Acuerdos de Nivel de Servicio también especifican qué


ocurre si un servicio o producto no puede cumplir la

especificación de un Acuerdo de Nivel de Servicio que lo


controla.

Importante

Azure no proporciona contratos de nivel de servicio para la mayoría de


los servicios en los niveles Gratis o Compartido. Además, los productos
gratuitos como Azure Advisor normalmente carecen de Acuerdo de Nivel

de Servicio.

Acuerdos de Nivel de Servicio para productos y servicios de Azure

Hay tres características clave del Acuerdo de Nivel de Servicio para


servicios y productos de Azure:

1. Objetivos de rendimiento

2. Tiempo de actividad y garantías de conectividad

3. Créditos de servicio

Objetivos de rendimiento

Un Acuerdo de Nivel de Servicio define los objetivos de rendimiento


19 para un servicio o producto de Azure. Los objetivos de rendimiento que
define un Acuerdo de Nivel de Servicio son específicos para cada
producto y servicio de Azure. Por ejemplo, los objetivos de rendimiento

para algunos servicios de Azure se expresan como garantías de tiempo


de actividad o tasas de conectividad.

Tiempo de actividad y garantías de conectividad

Un Acuerdo de Nivel de Servicio típico especifica los compromisos de

objetivo de rendimiento comprendidos entre 99,9 % ("tres 9") y

99,999 % ("cinco 9"), para cada producto o servicio de Azure


correspondiente. Estos objetivos se pueden aplicar a dichos criterios de
rendimiento como el tiempo de actividad o los tiempos de respuesta

para los servicios.


En la siguiente tabla se indica el tiempo de inactividad acumulativo

potencial para varios niveles del Acuerdo de Nivel de Servicio a lo largo


de varias duraciones:

Porcentaje de Tiempo de Tiempo de Tiempo de

Acuerdo de inactividad inactividad inactividad

Nivel de por semana por mes por año

Servicio

99 1,68 horas 7,2 horas 3,65 días

99,9 10,1 minutos 43,2 minutos 8,76 horas

99,95 5 minutos 21,6 minutos 4,38 horas


20
99,99 1,01 minutos 4,32 minutos 52,56 minutos

99,999 6 segundos 25,9 segundos 5,26 minutos

Por ejemplo, las operaciones de escritura del Acuerdo de Nivel de


Servicio para el servicio de Azure Cosmos DB (base de datos) ofrece un
tiempo de actividad del 99,999 %, lo que incluye los compromisos de

baja latencia de menos de 10 milisegundos en operaciones de lectura


y escritura de la base de datos.

Créditos de servicio

Los Acuerdos de Nivel de Servicio también describen cómo responderá


Microsoft si un producto o servicio de Azure no cumple las

especificaciones de su Acuerdo de Nivel de Servicio.


Por ejemplo, los clientes pueden recibir un descuento en su factura de

Azure como compensación por el bajo rendimiento de un servicio o


producto de Azure. En la siguiente tabla se explica este ejemplo con
más detalle.

La primera columna de la siguiente tabla muestra los objetivos del

Acuerdo de Nivel de Servicio de porcentaje de tiempo mensual para


una instancia única de máquina virtual de Azure. La segunda columna
muestra el importe del crédito de servicio correspondiente que recibe
si el tiempo de actividad real es menor que el objetivo especificado en

el Acuerdo de Nivel de Servicio durante ese mes.

PORCENTAJE DE TIEMPO DE PORCENTAJE DE CRÉDITO DE

ACTIVIDAD MENSUAL SERVICIO

21 < 99,9 10

< 99 25

< 95 100
COMPOSICIÓN DE
ACUERDO DE NIVEL DE
SERVICIO ENTRE
SERVICIOS
Al combinar los Acuerdos de Nivel de Servicio entre distintas ofertas
de servicio, el acuerdo resultante se denomina Acuerdo de Nivel de
Servicio compuesto. El Acuerdo de Nivel de Servicio compuesto
resultante puede proporcionar valores de tiempo de actividad

superiores o inferiores, dependiendo de la arquitectura de la aplicación.

22 Calcular el tiempo de inactividad

Considere una aplicación web de App Service que escribe en Azure SQL
Database. Estos servicios de Azure actualmente tienen los siguientes
Acuerdos de Nivel de Servicio:

En este ejemplo, si se produce un error en cualquiera de los servicios,


se producirá un error en toda la aplicación. En general, los valores de
probabilidad individual para cada servicio son independientes. Pero el

valor de Acuerdo de Nivel de Servicio compuesto para esta aplicación


es:

99.95 percent × 99.99 percent = 99.94 percent

Nota

Para el cálculo del Acuerdo de Nivel de Servicio y el tiempo de

inactividad, tenga en cuenta que, cada vez que vea un número con la
etiqueta o el símbolo de "por ciento" (%), dicho número debe dividirse

por 100. Si tuviera que especificar el cálculo de Acuerdo de Nivel de

Servicio arriba, los valores reales serían 0.9995 * 0.9999 = 0.9994.

Esto significa que la probabilidad de error combinada es mayor que


los valores individuales de Acuerdo de Nivel de Servicio. Esto no es
23
sorprendente, porque una aplicación que depende de varios servicios

tiene más puntos de error posibles.

Por otra parte, puede mejorar el Acuerdo de Nivel de Servicio


compuesto mediante la creación de rutas de reserva independientes.
Por ejemplo, si la instancia de SQL Database no está disponible, puede
colocar transacciones en una cola para procesarlas más adelante.
24

Con este diseño, la aplicación sigue estando disponible, aunque no


pueda conectarse a la base de datos. Pero se produce un error si la
base de datos y la cola fallan al mismo tiempo.

Si el porcentaje de tiempo previsto para un error simultáneo es 0,0001


X 0,001, el Acuerdo de Nivel de Servicio compuesto para esta ruta
combinada de una base de datos o una cola sería:

1.0 − (0.0001 × 0.001) = 99.99999 percent

Por lo tanto, si agregamos la cola a nuestra aplicación web, el Acuerdo


de Nivel de Servicio compuesto total es:
99.95 percent × 99.99999 percent = ~99.95 percent

Tenga en cuenta que hemos mejorado nuestro comportamiento de

Acuerdo de Nivel de Servicio. Pero este enfoque tiene ventajas e


inconvenientes: la lógica de la aplicación es más complicada, tendrá

que pagar más para agregar compatibilidad con la cola y pueden darse

problemas de coherencia de datos que tendrá que afrontar debidos al


comportamiento de reintento.

25
MEJORA DE LA
CONFIABILIDAD DE LA
APLICACIÓN EN AZURE
Puede usar los Acuerdos de Nivel de Servicio para evaluar cómo las

soluciones de Azure cumplen los requisitos empresariales y las


necesidades de sus clientes y usuarios. Al crear sus propios Acuerdos

de Nivel de Servicio, puede establecer objetivos de rendimiento que se

adapten a su aplicación de Azure específica. Este enfoque se conoce


como un Acuerdo de Nivel de Servicio de aplicación.

Comprender los requisitos de aplicación


26
La creación de una solución eficaz y de confianza de Azure requiere
conocer los requisitos de carga de trabajo. Después puede seleccionar

servicios, productos de Azure y aprovisionar los recursos según esos


requisitos. Es importante comprender los Acuerdos de Nivel de Servicio
de Azure que definen los objetivos de rendimiento de los productos y

servicios de Azure dentro de la solución. Este conocimiento le ayudará

a crear Acuerdos de Nivel de Servicio de la aplicación factibles.

En un sistema distribuido, se pueden producir errores. Pueden


producirse errores de hardware. La red puede tener errores transitorios.

En raras ocasiones, todo un servicio o toda una región pueden

experimentar interrupciones, pero incluso estas deben planificarse.


Resistencia

Resistencia es la capacidad de un sistema de recuperarse de los errores

y seguir funcionando. No se trata de evitar los errores, sino de


responder a ellos de manera que se evite el tiempo de inactividad o la

pérdida de datos. El objetivo de la resistencia es devolver la aplicación

a un estado plenamente operativo después de un error. Dos aspectos


importantes de la resistencia son la alta disponibilidad y la
recuperación ante desastres.

Cuando diseñe la arquitectura, hágalo buscando la resistencia y realice


un Análisis del modo de error (FMA). El objetivo del análisis del modo
de error es identificar los posibles puntos de error y definir cómo
responderá la aplicación a esos errores.

27 Costo y complejidad frente a alta disponibilidad

La disponibilidad se refiere al tiempo que un sistema es funcional y está


en funcionamiento. Maximizar la disponibilidad requiere implementar

medidas para evitar posibles errores en el servicio. Pero puede ser difícil
y caro desarrollar medidas preventivas y a menudo da como resultado

soluciones complejas.

A medida que aumenta la complejidad de la solución, tendrá más

servicios que dependen entre sí. Por tanto, podría omitir posibles
puntos de error en la solución si tiene varios servicios

interdependientes.
Sugerencia

Por ejemplo: Una carga de trabajo que requiere un tiempo de actividad

del 99,99 % no debe depender de un servicio con un Acuerdo de Nivel


de Servicio del 99,9 %.

La mayoría de proveedores prefieren maximizar la disponibilidad de

sus soluciones de Azure, ya que minimiza el tiempo de inactividad. Pero

a medida que aumente la disponibilidad, también aumentará el costo


y la complejidad de la solución.

Sugerencia

Por ejemplo: Un Acuerdo de Nivel de Servicio que define un tiempo de

actividad del 99,999 % solo permite aproximadamente 5 minutos de


inactividad total por año.
28
El riesgo del tiempo de inactividad potencial es acumulativo entre
distintos niveles de Acuerdo de Nivel de Servicio, lo que significa que

las soluciones complejas pueden afrontar mayores desafíos de


disponibilidad. Por lo tanto, la importancia de la alta disponibilidad
para sus requisitos determinará cómo controla la adición de

complejidad y costo con su Acuerdo de Nivel de Servicio de aplicación.

Consideraciones para definir los Acuerdos de Nivel de Servicio de

aplicación

 Si su Acuerdo de Nivel de Servicio de aplicación define

objetivos de rendimiento de cuatro 9 (99,99 %), recuperarse de

errores mediante la intervención manual puede no ser


suficiente para cumplir el Acuerdo de Nivel de Servicio. En su
lugar, la solución de Azure debe autodiagnosticarse y

recuperarse automáticamente.

 Es difícil responder a errores con la rapidez suficiente para


satisfacer los objetivos de rendimiento de Acuerdos de Nivel de

Servicio que superen los cuatro 9.

 Considere detenidamente el período de tiempo en el que se

miden los objetivos de rendimiento de Acuerdo de Nivel de


Servicio de la aplicación. Cuanto menor sea la ventana de

tiempo, más estrictas serán las tolerancias. Si define su Acuerdo


de Nivel de Servicio de la aplicación como el tiempo de

actividad por hora o diario, deberá comprender que estas


tolerancias más estrictas podrían no permitir objetivos de
rendimiento factibles.
29
RESUMEN
Microsoft proporciona más presencia global que cualquier otro
proveedor en la nube, con más de 54 regiones distribuidas en todo el

mundo. Esta infraestructura le ofrece la escala necesaria para acercar

las aplicaciones a los usuarios en todo el mundo. Azure también ha

dedicado regiones para admitir el uso de la administración pública y


las aplicaciones que deben implementarse en China para que pueda
asegurar la residencia y seguridad de los datos y cumplir los requisitos
de resistencia para los clientes independientemente del tipo de
requisitos empresariales que tenga.

Más información

Visite los siguientes vínculos para obtener más información sobre


30
algunos de los temas analizados en este módulo.

• Regiones de Azure

• Zonas geográficas de Azure

• Acuerdos de Nivel de Servicio de Azure

• Diseño de aplicaciones resistentes de Azure

• Criterios para elegir un servicio de proceso de Azure


1

Introducción a IoT de Azure


BIENVENIDA
Explique la importancia de IoT de Azure y los problemas que resuelve.
Describa los componentes de IoT de Azure y explique cómo se

combinan para resolver soluciones de IoT, que crean valor para las
empresas.

En este módulo, aprenderá a:

 Evaluar si IoT de Azure puede resolver los problemas asociados


a la implementación de IoT a gran escala

2  Describir cómo colaboran los componentes de IoT de Azure


para compilar una solución de IoT basada en la nube

Requisitos previos

 Ninguno

Introducción 3 min

¿Qué es IoT de Azure? 4 min

Funcionamiento de IoT de Azure 10 min

Cuándo usar IoT de Azure 7 min

Prueba de conocimientos 5 min

Resumen 2 min
INTRODUCCIÓN
El Internet de las cosas (IoT) es una prometedora tecnología que está

transformando a las empresas. En el mundo empresarial, IoT sigue


creciendo, especialmente en algunos sectores industriales básicos

como la fabricación, la venta al por menor, el transporte, la


administración pública y la atención sanitaria. La eficacia, la

productividad y la seguridad son las principales razones para que las


empresas adopten IoT.

A pesar de las promesas de la tecnología, muchas implementaciones

de IoT no progresan más allá de la fase de prueba de concepto (POC).


3
Por lo general, los clientes no ven el valor empresarial de IoT. No

entienden cómo se puede escalar IoT. A los clientes les preocupa la

seguridad. Y, por último, a los clientes les confunden las diferencias


entre las ventajas para las empresas y los consumidores. Por ejemplo,
el tostador y el frigorífico conectado llegan a los titulares de los medios.
Pero no está claro cómo estas aplicaciones de consumidor se traducen
en ventajas para la empresa.
4
Imagine que dirige una empresa de logística responsable de

transportar frutas y otros productos alimenticios perecederos de los


productores a los distribuidores. En el proceso de transporte, la fruta

se debe mantener a las condiciones correctas de temperatura,


humedad y exposición a la luz. En los camiones, hay sensores

individuales que realizan el seguimiento de la temperatura, la humedad


y la exposición a la luz. El distribuidor tiene estrictos requisitos de
calidad. Del mismo modo, el productor se quiere asegurar de que su

fruta permanezca fresca. Los clientes son cada vez más estrictos en

cuanto a sus especificaciones. Los clientes quieren ver una pista de


auditoría de la fruta del "árbol a la mesa". En este escenario, las
soluciones de IoT garantizan que la fruta es fresca durante el viaje. En

5 el caso más simple, se realiza el seguimiento del estado de producto


(por ejemplo, la temperatura) mediante sensores. Pero para

proporcionar valor empresarial al cliente se necesita una solución más


completa.
6

Este módulo forma parte de la ruta de aprendizaje de ingeniería de


inteligencia artificial y dispositivos perimetrales. En este módulo, se
pueden explorar varios temas de ingeniería, especialmente el impacto
de IoT en otros dominios como la logística. Desde el punto de vista de
la ingeniería, se describe el proceso completo desde el productor al

distribuidor como un solo sistema holístico. A través de IoT, se capturan


datos para comprender, supervisar y predecir el comportamiento de

los componentes individuales, y de todo el sistema. Para compilar

correctamente esta solución, es necesario tener en cuenta el diseño, la


seguridad, la estética y la escala.
Objetivos de aprendizaje
En este módulo, aprenderá a:

 Evaluar si IoT de Azure puede resolver los problemas asociados


a la implementación de IoT a gran escala

 Describir cómo colaboran los componentes de IoT de Azure

para compilar un solución de IoT basada en la nube


7

Requisitos previos
 Ninguno
¿Qué es IoT de Azure?

Internet de las cosas (IoT) de Azure es un conjunto de servicios en la

nube administrados por Microsoft que permiten conectar, supervisar y


controlar millones de recursos de IoT. En términos más sencillos, una
solución IoT se compone de uno o varios dispositivos IoT y uno o varios

servicios de back-end que se ejecutan en la nube y se comunican entre


sí. Se describen los tres componentes siguientes.

Dispositivos IoT: los dispositivos IoT se componen de una placa de

circuitos electrónicos con sensores o accionadores conectados que se


conectan a Internet. Los dispositivos IoT incluyen algún tipo de

8 mecanismo de radio para conectarse a Internet (por ejemplo, Bluetooth

o Wi-Fi). Los sensores de presión, temperatura y humedad, y los


acelerómetros son ejemplos de dispositivos IoT. Capturan información
sobre un entorno específico en el que se encuentran. Por ejemplo, un
acelerómetro podría indicar si un ascensor está detenido o en

movimiento.

Comunicación: el dispositivo se puede comunicar con los servicios de

back-end en ambas direcciones. El dispositivo puede enviar datos al

servicio. También puede recibir una indicación del servicio para

aumentar la frecuencia de recopilación de datos. La comunicación con


los dispositivos IoT tiene algunas consideraciones adicionales. Por
ejemplo, los dispositivos IoT pueden tener una potencia limitada y la
conectividad puede ser lenta o intermitente.
Servicios de back-end: los servicios de back-end reciben datos de

telemetría a escala de los dispositivos y determinan cómo procesar y

almacenar esos datos. También se comunican con el dispositivo y

administran su ciclo de vida mediante el control y la supervisión del


estado del dispositivo.

9
IoT de Azure le permite:

Reimaginar los procesos empresariales mediante la reducción de los

silos de datos entre los clientes, las operaciones, los productos o

recursos, y los empleados.

Implementar software administrado como servicio para IoT con una

experiencia mínima en la nube (soluciones de SaaS) mediante Azure


IoT Central.

Personalizar soluciones de IoT específicas del sector para escenarios


de IoT comunes: soluciones de PaaS a través de aceleradores de
soluciones de IoT de Azure.
10
Extender la inteligencia de la nube a los dispositivos perimetrales
mediante Azure IoT Edge.

Conectar, supervisar y controlar miles de millones de recursos de IoT

mediante Azure IoT Hub.

Crear un modelo digital del espacio físico o los recursos mediante

Azure Digital Twins.

Explorar y obtener conclusiones a partir de datos de IoT de series

temporales en tiempo real mediante Azure Time Series Insights.

Crear y conectar dispositivos con tecnología MCU altamente seguros

mediante Azure Sphere.


Proporcionar contexto geoespacial a los datos mediante Azure

Maps.

Navegar por el arte de lo posible más allá de las aplicaciones

tradicionales, como el mantenimiento predictivo.

Generar un bucle de realimentación automatizado entre el

dispositivo y la nube para aumentar la eficacia de la solución.

11
Funcionamiento de IoT de
Azure
Antes de explorar el funcionamiento de IoT de Azure, se resumirán los

servicios básicos de informática en la nube.

La informática en la nube implica la entrega de servicios hospedados a

través de Internet. Los servicios en la nube hospedados se dividen en


tres categorías: infraestructura como servicio (IaaS), plataforma como
servicio (PaaS) y software como servicio (SaaS). IaaS proporciona

12 recursos informáticos virtualizados a través de Internet. Normalmente,


se trata de recursos de hardware implementados en centros de

recursos. Algunos ejemplos de recursos de IaaS son los servicios de

almacenamiento, copia de seguridad y recuperación. Los servicios de


PaaS se centran en la simplificación del desarrollo de software. PaaS
podría proporcionar servicios como la administración de versiones y las

pruebas. PaaS proporciona un marco para que los desarrolladores


creen e implementen aplicaciones basadas en la nube rápidamente. En
el caso de SaaS, el software se hospeda y administra de forma
centralizada mediante el proveedor de la nube. El usuario final usa el

software como servicio. IaaS, PaaS y SaaS se crean unas sobre las otras.

IaaS es la que más administración necesita por parte del usuario final y
SaaS la que menos.
La cartera de productos de IoT de Azure presenta dos rutas para la

creación de soluciones, es decir, soluciones de PaaS y soluciones de

SaaS. También tiene acceso a las tecnologías de PaaS subyacentes

para desarrollar una solución granular.

Soluciones de PaaS

Los aceleradores de soluciones de IoT de Azure son soluciones de

PaaS personalizables para segmentos industriales específicos. Los


aceleradores de soluciones de IoT proporcionan soluciones
pregeneradas que se pueden implementar rápidamente dentro de un
segmento industrial. Ejemplos de aceleradores de soluciones de IoT
13
son supervisión remota, fábrica conectada, mantenimiento predictivo y

simulación de dispositivos.

Soluciones de SaaS
Las soluciones de SaaS son adecuadas para organizaciones con menos

modelos de dispositivo, escenarios más predecibles y funciones de IoT


o TI limitadas. Azure IoT Central es una solución de SaaS administrada

que le permite empezar a trabajar rápidamente aunque su experiencia

con IoT sea mínima. IoT Central es adecuado cuando las necesidades

de IoT son sencillas y apenas se necesita experiencia en el desarrollo


en la nube.
Tecnologías de PaaS
Las tecnologías de plataforma como servicio (PaaS) proporcionan una

opción granular para controlar todos los aspectos de la solución de IoT,

lo que permite crear una solución totalmente personalizada. Puede


clasificar las tecnologías de PaaS de Azure en cuatro categorías:
compatibilidad con dispositivos; IoT; datos y análisis; visualización e

integración. A continuación se describe cada una de estas cuatro


categorías y sus subcomponentes.

1) Compatibilidad con dispositivos

IoT de Azure proporciona varios medios para admitir una variedad de


14 dispositivos. Esto incluye el SDK de dispositivo IoT de Azure, los
dispositivos IoT de Azure certificados, el programa de seguridad para
IoT de Azure y Windows 10 IoT.

2) IoT

El conjunto de tecnologías de IoT incluye lo siguiente:

Azure IoT Hub: Azure IoT Hub es un servicio administrado que permite

establecer comunicaciones bidireccionales entre millones de


dispositivos IoT y un back-end de soluciones. IoT Hub le permite

conectar, administrar y escalar miles de millones de dispositivos IoT

desde el perímetro a la nube.


Azure Time Series Insights: Azure Time Series Insights permite

almacenar, visualizar y consultar grandes cantidades de datos de series

temporales generados por los dispositivos IoT para obtener

información procesable.

Azure Sphere: Azure Sphere es una solución de un extremo a otro para

proteger los dispositivos con tecnología de microcontroladores (MCU).


Azure Sphere consta de tres partes: el sistema operativo de Azure

Sphere, MCU certificados de Azure Sphere y el servicio de seguridad

de Azure Sphere.

15
Cómo encajan los
componentes de IoT de
Azure para resolver el
escenario

Considere el escenario que se ha presentado antes para garantizar la


entrega de alimentos frescos.

La aplicación de telemetría básica no satisface requisitos más

complejos. El registro de la temperatura de la fruta solo indica los

problemas de forma retrospectiva. Si hay un problema con una fruta


16
concreta, debe conocer la ubicación exacta y asegurarse de que la otra
fruta del pallet todavía es segura para el consumo. Necesita la

capacidad de inspeccionar visualmente la fruta de forma remota


mediante una cámara e indicar la que pueda tener algún problema. En

caso de que se produzcan daños, debe saber a qué distancia del


destino se encuentra el camión, para poder informar al distribuidor y al
productor. Si es posible, también debe notificar a los vehículos

cercanos que sirvan al distribuidor si el pedido es urgente.

Por último, debe mantener los datos sobre la entrega para el seguro y

las auditorías. Mediante el análisis de los datos, puede prever

problemas en el futuro antes de que se produzcan. Ahora se pueden


proporcionar datos sobre la fruta a los clientes; por ejemplo, la huella
de carbono.
IoT de Azure ayuda a solucionar los problemas descritos en este

escenario proporcionando un conjunto de productos que facilitan la


implementación de IoT a escala. Todos los mensajes se reciben y
administran de forma centralizada. Se pueden aprovisionar y

administrar dispositivos nuevos para permitir que otros tipos de


productores y distribuidores se conecten al sistema. Los datos de los

sensores se pueden capturar en varios formatos (por ejemplo, datos de


serie temporal, imagen y vídeo). Si es necesario, los datos se pueden

administrar en dispositivos perimetrales. Los datos se pueden visualizar


en la nube. El análisis se puede aplicar en la nube para calcular métricas
empresariales como la huella de carbono. También se pueden usar los
análisis para calcular anomalías en las lecturas del sensor y aplicar

algoritmos predictivos para prever problemas en función de los datos


pasados. Podría correlacionar los datos y el análisis con la información
17
geográfica.

Pero puede adoptar un enfoque incluso más innovador. Puede


reformular los procesos empresariales existentes desde la perspectiva
de la nube inteligente y la inteligencia perimetral. Según el
escenario anterior, la implementación de la nube inteligente y la
inteligencia perimetral puede transformar los procesos existentes de

cuatro maneras:

Impacto en el personal: los conductores de los camiones (que son

principalmente móviles) ahora tienen información y soporte técnico


más actualizados basados en el uso compartido de datos y la

información de mapas.
 Impacto en los clientes: los clientes (distribuidores) ahora

obtienen información más actualizada y se les asegura una


mejor calidad del producto.
 Compromiso de los clientes: la huella de carbono y otras
métricas crean clientes comprometidos.

 Optimización de las operaciones: todo el proceso de entrega

de productos frescos se puede optimizar a través de un bucle


de comentarios de la implementación de IoT mediante la

eliminación de los silos de datos.

El nuevo proceso podría generar un bucle de comentarios

automatizado entre el dispositivo y la nube para aumentar la eficacia


de la solución.
18
Cuándo usar IoT de Azure
En esta sección se explicará cómo puede decidir si IoT de Azure es la

elección correcta para la aplicación.

La decisión de cómo puede usar IoT de Azure para compilar la

solución de IoT se determina en última instancia mediante:

 Los requisitos empresariales

 El tipo de solución que quiere desarrollar desde el punto de


vista de la nube

 El conjunto de aptitudes de la organización en las tecnologías


PaaS de IoT de Azure

Una lista más completa de consideraciones incluye lo siguiente:


19
¿Planea usar IoT para realinear los procesos empresariales de
Realineación de los la organización a través de clientes, operaciones, productos
procesos empresariales o recursos, y empleados?
Experiencia en la nube ¿Su equipo tiene una experiencia mínima en la nube?
Descarga del ¿Tiene previsto descargar el procesamiento en dispositivos
procesamiento en perimetrales?
dispositivos IoT Edge
Escala ¿Tiene que administrar millones de recursos de IoT?
Modelado de espacios ¿Necesita modelar un espacio físico mediante sensores?
físicos
Datos de series ¿Tiene datos de series temporales a gran escala?
temporales
Protección de ¿Tiene que administrar dispositivos seguros?
dispositivos IoT
Aplicación de los criterios
de decisión
A continuación se presenta un resumen de las instrucciones para elegir

un enfoque de IoT a fin de solucionar los problemas de la empresa.

Resumen de instrucciones
La cartera de productos de IoT de Azure presenta dos rutas para la
creación de soluciones, es decir, soluciones de PaaS y de SaaS. También
tiene acceso a las tecnologías de PaaS subyacentes para desarrollar una
solución granular.
20

Si tiene un problema específico del sector en un segmento industrial


concreto, considere la posibilidad de una solución PaaS, como los

aceleradores de soluciones de IoT de Azure.

Si tiene menos modelos de dispositivo y escenarios de predicción, elija

soluciones de SaaS.

Si quiere mantener todos los aspectos de la solución, elija las


tecnologías PaaS subyacentes, como Azure Sphere, Azure IoT Edge, etc.
21
1

Introducción a Azure IoT Hub


BIENVENIDA
Evalúe las características de Azure IoT Hub y determine los
escenarios en los que se debe usar.

 Evaluar si IoT Hub puede resolver de forma eficaz los problemas


asociados a la implementación de IoT a gran escala
 Describir cómo colaboran los componentes de IoT Hub para
compilar aplicaciones de IoT administradas a través de la nube

Requisitos previos

2
 Conocimientos básicos de las aplicaciones de IoT e
implementación de aplicaciones en la nube

Introducción 3 min

¿Qué es IoT Hub? 4 min

Funcionamiento de IoT Hub 7 min

Cuándo se debe usar IoT Hub 7 min

Prueba de conocimientos 5 min

Resumen 2 min
INTRODUCCIÓN
Muchas organizaciones se enfrentan a presiones de la competencia y
a las necesidades de los clientes en constante evolución. Como

respuesta, se embarcan en organizaciones de transformación digital


que reformulan su negocio mediante la combinación de personas,

datos y procesos. En este contexto, IoT (Internet de las cosas) es el


elemento que aglutina y permite la transformación digital en una

organización.

Según el informe IoT Signals 2019 realizado por Microsoft, la adopción


3
de IoT abarca varios sectores. El 85 % de los responsables de la toma

de decisiones de IoT tienen al menos un proyecto de IoT en su

canalización y otros ya en fase de implementación. La adopción de IoT


es global y está impulsada por algunos sectores industriales básicos
como los de la fabricación, venta al por menor, transporte,
administración pública y atención sanitaria. Las tres razones principales
por las que las empresas usan IoT son la optimización de las

operaciones, la mejora de la productividad de los empleados y

seguridad.
Pero para que las grandes empresas aprovechen las ventajas de la
transformación digital, puede ser difícil implementar y administrar

dispositivos IoT en diversas ubicaciones geográficas. Tendrá que

asegurarse de que distintos dispositivos contribuyan de forma eficaz a

crear una solución que resuelva un problema empresarial a gran escala.


Los requisitos de IoT de una gran empresa van más allá de la telemetría
básica (es decir, el proceso de grabación y transmisión de los valores
de datos registrados por un dispositivo IoT). Como empresa que
ejecuta soluciones basadas en la nube, ¿cómo se realiza el seguimiento

y el mantenimiento de los datos procedentes de todos estos


dispositivos? ¿Cómo se asegura de que solo se comuniquen entre sí los
dispositivos correctos? ¿Cómo se protege la solución? ¿Cómo se puede
4
escalar la solución y hacer que esté disponible según los requisitos de
nivel de servicio? Además, es necesario conectarse a una serie de

dispositivos a través de diferentes tipos de protocolos de


comunicación. También tendrá que administrar el ciclo de vida de los
dispositivos desde el aprovisionamiento hasta la administración
continua y, por último, la retirada.

IoT Hub es un servicio administrado, hospedado en la nube, que actúa


como centro de mensajes para la comunicación bidireccional entre las

soluciones de IoT y los dispositivos que administra.


oT Hub permite la comunicación de alta seguridad y confiable entre la

solución de IoT y los dispositivos que administra. Azure IoT Hub


proporciona un back-end de soluciones hospedado en la nube para

conectar dispositivos IoT. IoT Hub permite extender la solución desde

la nube hasta el perímetro con la autenticación por dispositivo, la


administración de dispositivos integrada y el aprovisionamiento
escalado.

Imagine que el ayuntamiento de su ciudad ha presupuestado la


instalación de sensores y cámaras en la ciudad para administrar el
tráfico. Se le ha asignado la función de desarrollador jefe para este
proyecto. En concreto, la nueva solución de administración del tráfico
se basa en la implementación de análisis y aprendizaje automático para
5
administrar el tráfico de manera óptima. La congestión del tráfico está

aumentando y contribuye a problemas como combustible

desperdiciado, el aumento del costo del transporte, las emisiones de


gas de efecto invernadero y la seguridad. Como parte de la nueva

solución de administración de tráfico, se han identificado tres áreas: En


primer lugar, desarrollar sistemas coordinados de control de tiempo de
las señales de tráfico basados en datos en tiempo real (incluido el uso
de intersecciones de tráfico inteligente). En segundo lugar, la capacidad
de administrar y compartir datos de tráfico de sensores y vídeo con

varias agencias de forma segura. Por último, usar el sistema de


administración del tráfico para innovaciones futuras, incluidos

vehículos conectados y automóviles autónomos.


La solución se debe extender más allá del servicio de telemetría básico.

Para administrar estos dispositivos, necesita un centro de mensajería


centralizado para la comunicación bidireccional en la nube. Tendrá que

autenticar, administrar y aprovisionar millones de dispositivos de forma

confiable y segura. Además, necesitará supervisar el estado de estos


dispositivos en el tiempo para garantizar un tiempo de actividad
constante. Puede usar la solución basada en Azure IoT Hub para
implementar, administrar y escalar estos dispositivos en la nube a fin

de abordar de forma eficaz el escenario del problema indicado. La


6 solución es escalable a las necesidades de la ciudad a través de
características de IoT Hub como la autenticación por dispositivo, la
administración de dispositivos integrada y el aprovisionamiento
escalado.

Los datos administrados por Azure IoT Hub de un conjunto diverso de


sensores se pueden usar como base para la solución de análisis en la
nube.
7
Este módulo forma parte de la ruta de aprendizaje de ingeniería de
inteligencia artificial y dispositivos perimetrales. En este módulo, se
exploran los enfoques de diseño de sistemas para solucionar
problemas complejos con varias facetas. El diseño de sistemas se basa
en la idea de que los componentes de un sistema actuarán de forma

diferente cuando se analicen por sí solos. El enfoque de diseño de

sistemas estudia el sistema de forma holística mediante el examen de


las interrelaciones y las interacciones entre los componentes de todo
el sistema. El enfoque se puede usar para modelar problemas
complejos como la administración del tráfico, donde cada actor (por

ejemplo, un vehículo) puede actuar de forma autónoma y evoluciona


en funcionalidad.
Objetivos de aprendizaje
En este módulo, aprenderá a:

 Saber cómo IoT Hub puede resolver de forma eficaz los


problemas asociados a la implementación de IoT a gran escala

8  Detectar los componentes principales y los primitivos de Azure

IoT Hub

Requisitos previos
 Conocimientos básicos de las aplicaciones de IoT e
implementación de aplicaciones en la nube
¿Qué es IoT Hub?
Azure IoT Hub permite la comunicación segura y confiable entre la
solución de IoT y los dispositivos que administra. IoT Hub proporciona

un back-end de soluciones hospedado en la nube para conectar


dispositivos con la autenticación por dispositivo, la administración de

dispositivos y el aprovisionamiento escalado.

Primero se realizará un paseo rápido por algunas definiciones, lo que


le ayudará a explorar la idoneidad de IoT Hub para los problemas
empresariales.

9
Telemetría: la telemetría es el proceso de registrar y transmitir de los

valores recibidos por un dispositivo IoT. Es una función esencial de una


solución de IoT.

Aprovisionamiento: la acción de aprovisionar un dispositivo en la

nube lo identifica de forma única en la nube. El aprovisionamiento


también establece los protocolos de seguridad para el dispositivo y sus

derechos de acceso y privilegios.

Enrutamiento: el enrutamiento de mensajes le permite enviar

mensajes desde los dispositivos a los servicios en la nube de forma

automatizada, escalable y confiable. Puede enviar mensajes o eventos


de telemetría de dispositivo (por ejemplo, eventos de ciclo de vida del

dispositivo).
Escalado: para las soluciones en la nube, el escalado implica la

necesidad de incrementar o reducir el ámbito de la solución. La

capacidad de escalar o reducir verticalmente una solución ofrece al

desarrollador la flexibilidad de implementar diferentes tipos de


soluciones.

Disponibilidad del servicio: la disponibilidad del servicio intenta

garantizar un nivel de rendimiento operativo concreto (normalmente,

el tiempo de actividad) para un servicio en la nube. La disponibilidad

del servicio se define mediante el acuerdo de nivel de servicio (SLA).

IoT Hub permite lo siguiente:

Proteger las comunicaciones: IoT Hub permite comunicaciones

seguras para que los dispositivos envíen datos mediante la


10
autenticación por dispositivo con varios tipos de autenticación.

Escalado de la solución: IoT Hub permite escalar a millones de

dispositivos conectados de manera simultánea y a millones de eventos


por segundo para admitir las cargas de trabajo de IoT. La escala de la

solución se determina en función de dos consideraciones: las


características que piensa usar y la cantidad de datos que planea
trasladar a diario.

Azure IoT Hub ofrece dos niveles: Básico y Estándar. Para desarrollar

funciones de comunicación completa y bidireccional, debe usar el nivel

Estándar. El nivel Básico proporciona un subconjunto de características

y está pensado para las soluciones que solo necesitan comunicación


unidireccional de los dispositivos a la nube. Los dos niveles (Básico y
Estándar) ofrecen las mismas características de seguridad y

autenticación.

El rendimiento de los datos es la segunda consideración a la hora de

determinar cómo escalar la solución. Cada nivel de IoT Hub está


disponible en tres tamaños, identificados numéricamente como 1, 2 y
3. Cada unidad de un centro de IoT de nivel 1 puede controlar

400 000 mensajes al día, mientras que una unidad de nivel 3 puede
controlar 300 millones.

Enrutamiento de datos del dispositivo: IoT Hub permite enviar

mensajes basados en reglas automatizadas para optimizar el tráfico de


datos.

Envío de comandos a un dispositivo: IoT Hub también puede enviar


11
mensajes de la nube al dispositivo. Los mensajes de la nube al
dispositivo le permiten enviar comandos y notificaciones a los
dispositivos conectados.

Supervisión del estado de la solución de IoT: IoT Hub permite

realizar el seguimiento de eventos, como la creación de dispositivos,

los errores de comunicación de dispositivos y las conexiones de


dispositivos.

Integración con otros servicios: puede integrar IoT Hub sin

problemas con otros servicios de Azure para compilar una solución de

un extremo a otro. Por ejemplo, puede incorporar IoT Hub con Azure

Logic Apps y Event Grid para automatizar procesos empresariales.


Administración y configuración de los dispositivos: con IoT Hub,

puede administrar los dispositivos conectados a escala. Puede

establecer y consultar el estado del dispositivo y responder de forma

automática a un cambio del estado de los dispositivos.

Creación de soluciones resistentes y de alta disponibilidad: cree

soluciones de alta disponibilidad según un contrato de nivel de servicio


especificado y benefíciese de las funciones integradas de conmutación

por error.

Conexión de prácticamente cualquier dispositivo: con los SDK de

dispositivo de código abierto de IoT de Azure, puede crear soluciones

que se ejecuten en dispositivos conectados e interactúen con IoT Hub.

También puede conectar dispositivos de forma nativa a IoT Hub

12 mediante protocolos como MQTT, HTTPS 1.1 o AMQP.


Funcionamiento de IoT
Hub
Azure IoT Hub es la PaaS (plataforma como servicio) principal de

Azure que permite la comunicación bidireccional entre dispositivos IoT


y una solución en la nube. IoT Hub es el punto de partida para cualquier

solución de IoT e implementa algunas funciones esenciales que son

comunes a las implementaciones de IoT. Entre ellas se incluyen


funciones de red, proceso, almacenamiento y seguridad. A
continuación se describen estas características.

Protocolos admitidos: IoT Hub permite que los dispositivos usen los

protocolos de comunicaciones de dispositivo siguientes: MQTT, MQTT


13 sobre WebSockets, AMQP, AMQP sobre WebSockets y HTTP

Registro de identidades de dispositivo: IoT Hub contiene un registro


de identidades. En el registro de identidades se almacena información

sobre los dispositivos y módulos que se pueden conectar a IoT Hub.


Debe existir una entrada de registro de identidades para el dispositivo
o el módulo antes de que la entidad se pueda conectar a IoT Hub.
También se debe autenticar un dispositivo o un módulo en IoT Hub en

función de las credenciales almacenadas en el registro de identidades.

Autenticación: Azure IoT Hub concede acceso a los puntos de


conexión mediante la comprobación de un token con las directivas de

acceso compartido y las credenciales de seguridad del registro de


identidades. Puede usar cualquier certificado X.509 para autenticar

dispositivos con IoT Hub. Entre los certificados admitidos se incluyen


un certificado X.509 existente, un certificado X.509 firmado por una

entidad de certificación y un certificado X-509 autofirmado y generado


automáticamente.

Dispositivos gemelos: los dispositivos gemelos son documentos


JSON que almacenan información sobre el estado del dispositivo,
incluidos metadatos, configuraciones y condiciones. Azure IoT Hub

mantiene un dispositivo gemelo para cada dispositivo que se conecta


a IoT Hub. Los dispositivos gemelos almacenan información

relacionada con el dispositivo que el dispositivo y los back-end pueden


usar para sincronizar la configuración y las condiciones del dispositivo.

Puntos de conexión expuestos por IoT Hub: para cada dispositivo

del registro de identidades, IoT Hub muestra un conjunto de puntos de

conexión: envío de mensajes enviar; recepción de mensajes de la nube


14
al dispositivo; inicio de cargas de archivos; recuperación y actualización
de las propiedades del dispositivo gemelo; recepción de solicitudes de
método directo. En la actualidad, IoT Hub admite los siguientes
servicios de Azure como puntos de conexión adicionales
(personalizados): contenedores de Azure Storage, Event Hubs, colas de

Service Bus, y temas de Service Bus.

Aprovisionamiento de dispositivos con el servicio IoT Hub Device

Provisioning de Azure: IoT Hub Device Provisioning es un servicio

auxiliar para IoT Hub. El servicio de aprovisionamiento de dispositivos


ofrece aprovisionamiento just-in-time, sin intervención del usuario, en

la instancia apropiada de IoT Hub, que permite a los clientes


aprovisionar millones de dispositivos de forma segura y escalable.
La función de telemetría es el componente esencial de IoT Hub. La

función de telemetría implica la grabación y transmisión de los valores

recibidos por un dispositivo IoT. Pero IoT Hub es mucho más que la

función de telemetría básica. La característica de escalado de IoT Hub

permite aumentar (o reducir) el ámbito de la solución. La capacidad de


escalar una solución depende de dos consideraciones: las

características que piensa usar y la cantidad de datos que planea


trasladar a diario. Una vez que tenga previsto implementar dispositivos

a escala, tendrá que administrarlos. La función de

aprovisionamiento de IoT Hub le permite administrar dispositivos

durante el ciclo de vida de un dispositivo. El aprovisionamiento


también establece los protocolos de seguridad para el dispositivo, sus
derechos de acceso y sus privilegios. Los requisitos de seguridad se

pueden considerar como parte de una función de seguridad, que


15
administra los requisitos de acceso y autenticación por dispositivo con
varios tipos de autenticación. Según las funciones de seguridad,

la función de enrutamiento determina el flujo de mensajes y los

destinatarios del mensaje. Por último, se puede conectar a dispositivos

externos de forma nativa con la funcionalidad del SDK e integrarlos

con otros servicios mediante la funcionalidad de integración de

servicios.

Si considera el escenario descrito antes sobre desarrolladores de


soluciones que trabajan con varios sensores en la ciudad, el prototipo
se habría iniciado con una función de telemetría básica. Pero para la

implementación en toda la ciudad, se necesitan muchos más

elementos. Esto incluye la capacidad de implementar y aprovisionar

dispositivos a escala, implementar la seguridad de nivel de dispositivo


y garantizar el enrutamiento de nivel de mensaje. Debido a la

diversidad de dispositivos de una ciudad, la capacidad de conectarse


de forma nativa con un SDK expandirá la base de usuarios de la
solución. Sin la funcionalidad de IoT Hub, la solución sería difícil de

implementar más allá de una función de telemetría básica.

Azure IoT Hub ofrece dos niveles. Si la solución de IoT se basa en

la recopilación de datos de los dispositivos y en su análisis de


forma centralizada, seleccione el nivel Básico. Para configuraciones
más avanzadas o para usar el procesamiento distribuido, use el
nivel Estándar. El nivel Estándar de IoT Hub permite todas las

características y es necesario para cualquier solución de IoT que

16 quiera hacer uso de las funcionalidades de comunicación


bidireccional. El nivel Básico permite un subconjunto de las
características y está pensado para las soluciones de IoT que solo
necesitan comunicación unidireccional de los dispositivos a la
nube. Los dos niveles ofrecen las mismas características de
Complejidad de la aplicación seguridad y autenticación. Las características del nivel Estándar son
la telemetría del dispositivo a la nube, la identidad por dispositivo,
el enrutamiento de mensajes, las mejoras de mensajes, la

integración de Event Grid, la compatibilidad con el protocolo HTTP,

AMQP y MQTT, el servicio de aprovisionamiento de dispositivos, la


supervisión y el diagnóstico, la mensajería de la nube al dispositivo,
los dispositivos y módulos gemelos, y la administración de
dispositivos, flujos de dispositivo, Azure IoT Edge e IoT Plug and

Play Preview.
Los datos dependen de la cantidad de datos que tiene previsto
migrar a diario. Cada nivel de IoT Hub está disponible en tres
tamaños, identificados numéricamente como 1, 2 y 3. Cada unidad
Rendimiento de los datos
de un centro de IoT de nivel 1 puede controlar 400 000 mensajes

al día y una unidad de nivel 3 puede controlar 300 millones.

IoT Hub usa permisos para conceder acceso a cada uno de los
Protección de una solución de puntos de conexión de IoT Hub. Los permisos limitan el acceso a
un extremo a otro para permitir
una instancia de IoT Hub según la funcionalidad.
la autenticación por dispositivo
Azure IoT Hub se puede usar para establecer la comunicación
bidireccional con miles de millones de dispositivos IoT. Puede usar

datos de telemetría enviados del dispositivo a la nube listos para


entender el estado de los dispositivos y definir rutas de mensajes
hacia otros servicios de Azure, sin necesidad de escribir código. En

17 los mensajes enviados de la nube al dispositivo, envíe comandos y


Comunicación bidireccional notificaciones de forma confiable a los dispositivos conectados y

realice el seguimiento de la entrega de los mensajes con acuses de

recibo. Reenvíe de forma automática los mensajes de los


dispositivos según sea necesario para ajustarse a una conectividad
intermitente.
Una lista más completa de consideraciones incluye lo siguiente:

Telemetría ¿La solución solo necesita servicios de telemetría básicos?


Cobertura ¿La solución necesita cobertura geográfica completa?
geográfica
Compatibilidad ¿Necesita admitir varios dispositivos para la solución?
con dispositivos
Administración ¿Necesita realizar el seguimiento de los datos y
de una serie de administrarlos para diferentes tipos de dispositivos?
18
dispositivos
Protocolos de ¿La solución necesita conectarse a través de diferentes tipos
comunicación de protocolos de comunicación?
Enrutamiento de ¿Cómo se asegura de que solo se comuniquen entre sí los
mensajes dispositivos correctos?
Seguridad ¿Cómo se protege la solución?
1

Identificación de caras y
expresiones con Computer
Vision API en Azure
Cognitive Services
BIENVENIDA
Obtenga información sobre el uso de Computer Vision API en Azure

para identificar detalles faciales en imágenes.

En este módulo aprenderá a:

 Conocer mejor en qué consiste Face API

 Entender los conceptos relacionados con Face API

Requisitos previos

Ninguno

Introducción 1 min
2
Información general sobre Face API 3 min

Tipos de datos faciales 3 min

Información general sobre el reconocimiento facial 3 min

Introducción a las listas de caras 3 min

Suscripción a Face API 3 min

Ejercicio: Obtención de las claves de suscripción 10 min

Ejercicio: Prueba de la API de Detección de caras 7 min

Comprobación de conocimientos: uso de Face API de Computer

Vision 7 min
Resumen 7 min

3
INTRODUCCIÓN
Hay caras por todas partes. La Tierra está poblada por más de
[Link] caras, todas y cada una de ellas única. Aunque las caras
cambian a lo largo del tiempo debido a la edad y a otras condiciones,
la capacidad de detectarlas, identificarlas y reconocerlas es uno de los

aspectos más increíbles del cerebro humano.

Antes de contar con los algoritmos de inteligencia artificial que están


disponibles en Azure Cognitive Services, los procesos de
reconocimiento facial eran complicados o incluso imposibles. Ahora se
pueden hacer cosas extraordinarias si se agregan unas líneas de código

en Face API de Cognitive Services.

Nota

Este módulo requiere una suscripción de Azure. Los servicios que cree
y use son gratuitos, pero necesitará una suscripción activa o una

versión de prueba para completar los ejercicios. Si no tiene una


suscripción a Azure, cree una cuenta gratuita antes de empezar.

Objetivos de aprendizaje
En este módulo, aprenderá a:

• Conocer en qué consiste Face API.

• Obtener conceptos relacionados con Face API.

5
INFORMACIÓN GENERAL
SOBRE FACE API
Face API proporciona algoritmos, que se exponen como llamadas de
servicio web basadas en REST, para detectar, comprobar, identificar y

analizar caras. El servicio puede proporcionar coincidencia de caras,


atributos de la cara y análisis de características. Face API también puede

organizar personas y definiciones faciales en grupos para localizar


caras similares.

Las tareas de Face API se dividen en cinco categorías:

 Comprobación: se comprueba la probabilidad de que dos


caras pertenezcan a la misma persona.

 Detección: se detectan las caras humanas en una imagen.


 Identificación: se buscan y se identifican caras.
 Similitud: se buscan caras similares.

 Agrupación: se organizan caras no identificadas en grupos,


según su similitud visual.

Face API usa la inteligencia artificial para:

 Detectar actividad humana en imágenes.

 Intentar la coincidencia de las caras con bases de datos de

imágenes existentes.
 Detectar caras humanas y devolver sus coordenadas.

 Administrar perfiles según los atributos de la cara.


 Analizar e identificar caras en fotogramas de vídeo.

7
TIPOS DE DATOS
FACIALES
Face API proporciona métodos para detectar rostros humanos en

imágenes y puede devolver ubicaciones, puntos de referencia y

atributos de las caras:

 Ubicaciones: en la imagen que incluya una cara, Face API busca


las coordenadas de la parte superior, parte izquierda, ancho y

alto de la región de cara.

 Puntos de referencia: Face API busca la posición de elementos


comunes de la cara, como las pupilas, la nariz y los labios.

8  Atributos: Face API realiza la estimación de los atributos de una


cara, como la edad, el sexo, el color de pelo, la sonrisa, el vello

facial, las gafas y las emociones.

Ubicaciones

Una ubicación de la cara es otro término para referirse a una colección

de coordenadas faciales. La ubicación es un área de píxeles rectangular


en la imagen en la que se ha identificado una cara.
Puntos de referencia

Los puntos de
referencia de la

cara son una colección

de puntos detallados
en un rostro. Mediante
coordenadas de píxeles, estos puntos identifican elementos faciales
comunes, como las pupilas, la nariz o las cejas. Face API puede devolver
hasta 27 puntos de referencia para cada cara identificada que se

pueden usar para el análisis.

Atributos

Los atributos de la cara son propiedades predefinidas de una cara o de

una persona representada por una cara. Opcionalmente Face API


puede identificar y devolver los siguientes tipos de atributos para una

cara detectada:

 Edad

 Sexo
 Intensidad de la sonrisa

 Vello facial
 Posición de la cabeza (3D)
 Emoción

10
INFORMACIÓN GENERAL
SOBRE EL
RECONOCIMIENTO
FACIAL
La API de detección de caras proporciona información sobre las caras
detectadas en una imagen, pero no está diseñada para identificar ni
reconocer una cara específica. Pero Face API ofrece esta funcionalidad
a través de una API de reconocimiento facial.

El reconocimiento facial se usa en numerosos ámbitos, como la


11 seguridad, las interfaces de usuario naturales, el análisis de imágenes,
las aplicaciones móviles y la robótica.

La capacidad de usar la inteligencia artificial para reconocer y comparar

caras es uno de los aspectos más eficaces de Face API.

Diferencias entre la detección de caras y el reconocimiento facial


El reconocimiento facial se basa en la API de detección facial mediante

el análisis de los puntos de referencia de dos o más imágenes para


determinar si existe la misma cara. A través de este análisis se pueden
determinar cuatro aspectos.

1. ¿Dos imágenes de una cara pertenecen a la misma persona?

Esto define la comprobación.

2. ¿Esta persona se parece a otra? Esto define la similitud.

3. ¿Están relacionadas entre sí todas estas caras? Esto define

la agrupación.

4. ¿Quién es esta persona en este grupo de personas? Esto define

la identificación.

12
INTRODUCCIÓN A LAS
LISTAS DE CARAS
En sentido estricto, una lista de caras es un grupo de caras. Cree y

administre listas de caras para encontrar caras similares en una

colección fija de caras. Por ejemplo, podría usar una lista de caras para
buscar una cara similar en un conjunto de imágenes de famosos,

amigos o familiares.

Una lista de caras se relaciona con varios conceptos:

 Cara: una sola cara


 Lista de caras: una lista o colección de caras
13
 Persona: una sola persona
 Grupo de personas: una lista o colección de personas

Las relaciones entre estos términos pueden llegar a ser algo confuso,
por lo que es útil visualizarlas:
Las listas de caras son útiles cuando se trabaja en la identificación de

caras y la similitud facial.

Identificación de caras

Se puede usar Face API para identificar a una persona mediante la


comparación de una cara detectada con un grupo de personas.

Recuerde que un grupo de personas es como una base de datos de

personas. Por ejemplo, podría crear un grupo de personas


denominado myInnerCircle (mi círculo de allegados):

14

Puede usar otra cara para realizar la identificación en el grupo de


personas. Si la cara se identifica como una persona en el grupo, el
objeto de persona se devuelve como una coincidencia.

Similitud facial
Las listas de caras son una excelente manera de determinar la similitud

facial. Por ejemplo, si compara una cara de destino con una lista de
caras, es posible que Face API devuelva una pequeña colección de caras
que se parecen a la cara de destino. Face API admite dos modos de
funcionamiento: coincidencia de cara y coincidencia de persona.

 Coincidencia de persona devuelve caras similares después de


aplicar un umbral de la misma persona derivado de la
comprobación de caras.
 Coincidencia de cara devuelve caras parecidas ignorando el

umbral de la misma persona.

En la imagen siguiente, la similitud facial encontraría que la primera


cara y la segunda son la misma persona. Encontraría que las caras
tercera y cuarta son similares.
15

Capacidad de colección

Aunque probablemente no alcance un umbral de colección, es posible

que quiera conocer las capacidades de las colecciones de


almacenamiento de Face API:
 Lista de caras: hasta 1000 caras diferentes

 Grupo de personas: hasta 10 000 personas


 Persona: hasta 248 caras

Eso es mucho para digerir. Pero probablemente comprobará que

trabajar con Face API es muy sencillo una vez asimilados estos

conceptos.

16
SUSCRIPCIÓN A FACE API
Para acceder a una API de Cognitive Services, debe suscribirse a un

servicio específico. Normalmente, se hace a través de Azure Portal.

Como las API se exponen a través de servicios web basados en REST,


cualquier lenguaje capaz de generar y enviar un mensaje HTTP puede

usar los servicios. Se necesitan dos elementos: una clave de


suscripción y el punto de conexión.

La mayoría de servicios de Cognitive Services, incluido Computer


Vision, requieren autorización con una clave de suscripción. En todas las

llamadas de servicio web a Computer Vision API es necesario pasar una


clave de suscripción al servicio a través de un valor en la cadena de
17
consulta o el encabezado de solicitud.

El punto de conexión es la dirección URL de Internet para el servicio. Las

aplicaciones que usan los servicios deben apuntar a la dirección URL

que se especifica en el punto de conexión del servicio.

La combinación del punto de conexión y la clave de suscripción permite


que la aplicación use los servicios.
EJERCICIO: OBTENCIÓN
DE LAS CLAVES DE
SUSCRIPCIÓN
En este ejercicio, creará una suscripción de Face API y accederá a su

clave y punto de conexión.

Creación de una suscripción de Face API

Para suscribirse a Face API:

1. Inicie sesión en Azure Portal .

18 2. Haga clic en + Crear un recurso > IA + Machine


Learning > Face (Cara) > Crear.

3. Escriba un nombre único para la suscripción de Face API y elija

la Ubicación más cercana.

4. Seleccione el plan de tarifa más económico o gratuito.

5. Cree un grupo de recursos denominado mslearn-faceapi. Más


adelante eliminará estos recursos.

6. Haga clic en Crear para suscribirse a Face API.

Tras una breve demora, la suscripción nueva de Face API estará

aprovisionada y disponible, y se generarán claves de API nuevas para


su uso mediante programación.
Nota

En la documentación de Cognitive Services, los términos clave de

suscripción y clave de API a menudo se usan como sinónimos.

Para ver la nueva suscripción de Face, haga clic en Grupos de


recursos en la barra lateral de la izquierda. Después, seleccione el

grupo de recursos que ha creado para Face API.

Acceso a la clave de suscripción y el punto de conexión

Después de crear una suscripción, ya está casi listo para comenzar a


experimentar con Face API.

Como todas las Computer Vision API se basan en REST, puede usar el

lenguaje que prefiera para proporcionar una clave de suscripción (o


19 clave de API) al punto de conexión (o dirección URL) de Computer
Vision API.

Para ver la clave de suscripción y el punto de conexión de la suscripción

a Computer Vision:

1. En la barra lateral de la izquierda, haga clic en Grupos de


recursos y después en el que haya creado para Computer

Vision API.

2. Para ver las claves de suscripción nuevas, haga clic en el nombre

de la suscripción de Face API (como Face). Después,


en Administración de recursos, haga clic en Claves.

3. Copie el valor de CLAVE 1.


4. En el grupo de menús, haga clic en Información general.
Después, copie el valor de Punto de conexión.

20

Ahora que conoce la ubicación y los valores de la clave de suscripción


y el punto de conexión de Face API, está listo para comenzar a escribir
código o probar la API con una imagen.
EJERCICIO: PRUEBA DE LA
API DE DETECCIÓN DE
CARAS
Ahora se va a usar la suscripción a Face API que acaba de crear para

detectar caras en imágenes de un sitio web.

Se usará la consola de pruebas de Cognitive Services. La consola de


pruebas es un sitio web integrado desde el que se pueden generar y
enviar solicitudes REST a cualquiera de los servicios de inteligencia

artificial.

21 1. Abra la suscripción de Face API.

2. Copie una de las claves de suscripción con el


botón Copiar situado a la derecha del valor de la clave.

3. Abra la página del servicio de Face API .

4. En la sección Face Detect (Detección de caras), haga clic en el


botón de Open API testing console (Abrir la consola de

pruebas de API) asociado a la ubicación en la que se ha creado


el servicio de Azure. Por ejemplo, si ha usado WestUS, haga clic

en West US (Oeste de EE. UU.) de la sección de la consola de


pruebas. En la página de pruebas que se abre, puede especificar

los parámetros que quiere enviar al servicio, enviar la solicitud

y después ver la respuesta directamente en el explorador.


5. Desplácese hasta la sección Headers (Encabezados) y pegue la

clave de suscripción en el cuadro de texto Ocp-Apim-


Subscription-Key.

6. Busque una imagen que incluya una cara. Puede usar una
dirección URL de imagen propia o esta:

22

7. En la sección Request body (Cuerpo de la solicitud) de la


herramienta de prueba, pegue la dirección URL como un

bloque JSON. Aquí se usa la dirección URL de imagen del paso

anterior. Si quiere usar una imagen propia, reemplace el


valor url que se muestra aquí:
JSON

"url": "[Link]
with-computer-vision/media/clo19_ubisoft_azure_068.png"

8. Haga clic en Send (Enviar).

La respuesta HTTP debería ser similar a la siguiente:

23
1

Incorporación de inteligencia
conversacional a las
aplicaciones mediante
Language Understanding
Intelligent Service (LUIS)
BIENVENIDA
En este módulo se presenta Language Understanding Intelligent

Service(LUIS) y se muestra cómo crear una aplicación de LUIS.

En este módulo, aprenderá a:

 Podrá conocer qué es LUIS.

 Obtendrá información sobre las características clave de


Language Understanding, tales como las intenciones y las

expresiones.

 Compilará y publicará un modelo de Machine Learning de


lenguaje natural.

2 Requisitos previos

Ninguno

Introducción 1 min

Información general de Language Understanding Intelligent


Service (LUIS) 4 min

Creación de un recurso de servicio de LUIS 10 min

Ejercicio: Incorporación de entidades e intenciones 15 min

Entrenamiento del modelo de LUIS 15 min

Prueba de conocimientos 7 min

Resumen 2 min
INTRODUCCIÓN
Un factor clave para las aplicaciones de inteligencia artificial es la
capacidad de interactuar de forma inteligente con el usuario. Algunas

de las interacciones de inteligencia artificial más comunes se producen


a través de los bots. Puede integrar inteligencia conversacional en el

bot mediante Language Understanding Intelligent Service (LUIS) de

3 Azure.

LUIS es una API de Azure Cognitive Service que aplica inteligencia


personalizada de Machine Learning a un texto de lenguaje natural de
un usuario. LUIS usa ciertos aspectos del texto para predecir el

significado global del usuario y extraer información pertinente y


detallada. Las aplicaciones pueden usar esta información para
interactuar con el usuario.

Nota

Este módulo requiere una suscripción de Azure. Los servicios que cree

y use son gratuitos, pero necesitará una suscripción activa o una


versión de prueba para completar los ejercicios. Si no tiene una

suscripción a Azure, cree una cuenta gratuita antes de empezar.


Objetivos de aprendizaje

En este módulo:

• Entenderá mejor en qué consiste LUIS.

• Obtendrá información sobre características clave de LUIS, como

las intenciones y las expresiones.

• Compilará y publicará un modelo de LUIS.

4
INFORMACIÓN GENERAL
DE LANGUAGE
UNDERSTANDING
INTELLIGENT SERVICE
(LUIS)
Comprender el lenguaje es algo que incluso los seres humanos hacen
mal de vez en cuando. Un buen ejemplo es el uso de términos propios

del argot o expresiones locales. Imagine que se encuentra en un lugar


público de Indonesia, como un centro comercial o un restaurante, y
5
que busca el aseo. Es posible que en las lecciones de indonesio le hayan
enseñado a utilizar la frase "¿Di mana kamar kecil?".

Aunque esta frase es técnicamente correcta, se aplica principalmente a

la búsqueda del baño en la casa de alguien. "Kamar kecil" significa


literalmente "sala" (kamar) "pequeña" (kecil). En un lugar público es
más correcto preguntar "¿Di mana WC?" o "¿Di mana toilette?". Pero si

usa "¿Di mana kamar kecil?" en un lugar público, prácticamente todos

los indonesios lo entenderán sin ningún problema.

¿Pero qué sucede si hace esa pregunta a un equipo? ¿Le dará la


respuesta correcta? ¿O le dirigirá a una "sala pequeña" que no es un

baño?

Del mismo modo, un hablante nativo de inglés puede entender una


frase cuyo significado no esté claro para alguien no nativo, o incluso
para algunos hablantes nativos de inglés. ¿Cuántas personas

entenderían sin problemas la frase "entornar la puerta"? Significa lo


mismo que "cerrar un poco la puerta" o "no cerrar la puerta del todo",
pero puede que no quede claro para todos.

Para que la inteligencia artificial entienda el lenguaje, hay una serie de

aspectos fundamentales que ayudan al algoritmo a establecer


comparaciones y distinciones. Aquí es donde entra en escena
Language Understanding Intelligent Service (LUIS).

LUIS usa tres aspectos clave para entender el lenguaje:

 Expresiones: Una expresión es información proporcionada por


el usuario que la aplicación necesita interpretar.
 Intenciones: Una intención representa una tarea o acción que

6 el usuario quiere realizar. Se trata de una finalidad o un objetivo


que se manifiesta en la expresión de un usuario.
 Entidades: Una entidad representa una palabra o frase dentro

de la expresión que se quiere extraer.

Aquí tiene un ejemplo. Imagine que usa LUIS en un bot para ayudar a

un usuario a reservar un vuelo. Un usuario podría usar la expresión


siguiente: "Reservar 2 billetes de avión a Nueva York para Nochevieja".

Si evaluamos los aspectos clave de esta expresión, podemos


determinar la intención del usuario. El usuario quiere reservar un vuelo.

Podemos afirmar que la intención es BookFlight, es decir, reservar un

vuelo.

Las entidades no son solo palabras o frases, sino también simplemente

datos. Estos datos contribuyen a proporcionar contexto específico para


la expresión y ayudan al algoritmo a identificar la intención con mayor

precisión. Aunque no todas las expresiones contienen entidades.

En la expresión de ejemplo usada anteriormente, podemos identificar


entidades tales como:

 Nueva York: Esta entidad se puede clasificar

como [Link].

 Nochevieja: Esta entidad se puede clasificar como Event.


 Número 2: Este número se asigna a una entidad integrada. En

LUIS, dicha entidad se conoce como entidad creada


previamente, concretamente, un número creado previamente.

Ahora que sabemos todo esto, veamos cómo se crea una aplicación de
LUIS.

7
CREACIÓN DE UN
RECURSO DE SERVICIO DE
LUIS
Veamos cómo se puede usar LUIS para agregar algunas

funcionalidades de lenguaje natural a un bot de administración de


imágenes. LUIS permite asignar expresiones de lenguaje natural

a intenciones. En otras palabras, LUIS asigna palabras, frases u

oraciones del usuario a las tareas o acciones que el usuario quiere


realizar.

Nuestra aplicación podría tener varias intenciones: buscar imágenes,


8
compartir imágenes y encargar copias impresas de fotografías. Le

daremos a LUIS algunas expresiones de ejemplo de formas en las que


los usuarios pueden pedir cada una de estas cosas. Luego, LUIS
asignará nuevas expresiones adicionales a cada intención según lo que
aprenda con el tiempo.

Nota

Este ejercicio es opcional. Si quiere usar un servicio de LUIS que esté


vinculado a su cuenta de Azure, puede seguir estos pasos para crear el
servicio de LUIS. Si solo quiere usar un entorno de prueba, vaya al

ejercicio "Creación de una aplicación de LUIS" más adelante en esta

página.
1. Inicie sesión en Azure Portal .

2. En el panel izquierdo, seleccione + Crear un recurso.

3. En el cuadro Buscar en Marketplace, escriba LUIS y presione


la tecla ENTRAR.

4. En los resultados de la búsqueda, seleccione Language


Understanding.

5. Seleccione Crear.

6. Deje las opciones de Creación establecidas en Ambas

7. Escriba un nombre único para el servicio LUIS.

8. Elija una suscripción.


9
9. Cree un nuevo grupo de recursos denominado LearnRG.

10. Como Ubicación de creación, elija la que le quede más cerca.

11. Para Plan de tarifa de creación, seleccione F0

12. Establezca la Ubicación del tiempo de ejecución en la misma


región que eligió para Ubicación de creación

13. Para plan de tarifa de runtime, seleccione F0.

14. Seleccione Crear.

Cuando la implementación haya finalizado correctamente, vaya a la


página de recursos del servicio. Necesitará una de las claves de

suscripción que se muestran para su uso en ejercicios posteriores.


Puede usar la opción "Obtener las claves" en la sección Inicio rápido,

o bien cambiar a la sección Claves para ver las dos claves creadas.

Creación de una aplicación de LUIS

Azure exige que la aplicación de LUIS se cree en la misma ubicación


geográfica en la que se haya creado el servicio. Si no ha creado el

servicio en el anterior ejercicio opcional, se recomienda que use la

ubicación que le quede más cerca.

1. Seleccione una de las siguientes direcciones URL y ábrala en

una nueva ventana del explorador.

 Norteamérica: [Link]

 Europa: [Link]
 Australia: [Link]
10
Nota

Hay tres sitios web de LUIS, en función de la región. Debe crear y


publicar el contenido en la misma región. Seleccione la más cercana.

2. Seleccione el vínculo Iniciar sesión de la esquina superior


derecha.

3. Inicie sesión con la cuenta de Microsoft.

4. En la página principal, haga clic en Crear ahora una

aplicación de LUIS.

5. Seleccione + Crear nueva aplicación.


6. Asigne un nombre a la aplicación de LUIS, por

ejemplo, PictureBotLUIS.

7. Como Referencia cultural, seleccione la opción más adecuada.

8. Proporcione una descripción de la aplicación para que resulte


evidente cuál es la finalidad de la aplicación de LUIS.

9. Seleccione Listo.

La aplicación recién creada se mostrará en la página Intenciones con


una única intención llamada Ninguna.

11
EJERCICIO:
INCORPORACIÓN DE
ENTIDADES E
INTENCIONES
El siguiente paso de la aplicación PictureBotLUIS consiste en crear
intenciones que se asignan a solicitudes de usuario. El objetivo es que
el bot de administración de imágenes comprenda lo siguiente:

 Cómo buscar imágenes


 Cómo compartir imágenes en redes sociales
12  Cómo encargar copias impresas de fotografías
 Cómo saludar al usuario

Vamos a crear intenciones para cada uno de estos elementos.

Nota

Hay una intención que ya está presente, denominada None. Las


expresiones aleatorias que no se asignen a ninguna de las intenciones

pueden asignarse a esta.

1. Seleccione + Crear nueva intención.

2. Asigne a la primera intención el nombre Greeting y


seleccione Listo.
Dado que el escenario para esta aplicación consiste en la integración

con un bot, proporcionará ejemplos de expresiones que podrían decir


los usuarios al saludar inicialmente al bot.

3. Escriba una expresión de saludo, como hola, y presione

ENTRAR.

4. Repita el paso anterior para crear valores para cada una de las

siguientes expresiones: buenas, aló, cómo va, qué


tal y saludos.

Sugerencia

Siempre debe proporcionar al menos cinco expresiones de ejemplo a

cada intención.

13 5. Las expresiones de la intención Greeting deben tener un


aspecto similar al de la siguiente imagen:

6. Cree otra intención con el nombre SearchPics.

7. Agregue los valores siguientes como expresiones para la


intención SearchPics:
 Buscar imágenes al aire libre

 ¿Hay imágenes de trenes?


 Buscar imágenes de comida
 Buscar fotos de niños jugando
 Quiero imágenes coloridas

 Quiero ver imágenes de playas

 Quiero ver fotos de perros


 Buscar imágenes de pastores alemanes

 Buscar imágenes de hombres en espacios de interior

 Quiero ver imágenes de hombres con gafas

 Quiero ver imágenes de personas sonriendo


 Quiero ver imágenes de bebés

Creación de entidades

14
A continuación, vamos a crear las entidades que necesitamos para

capturar solicitudes específicas de los usuarios. Por ejemplo, cuando

los usuarios quieran buscar las imágenes, podrían especificar lo que


buscan.

1. En la columna de la izquierda, seleccione Entidades y,


luego, Crear nueva entidad.

2. Asigne el nombre faceta a la entidad (para representar una


manera de identificar una imagen).

3. Para el valor Tipo de entidad, seleccione Simple. Después,


seleccione Listo.
Asignación de temas de búsqueda a la entidad "faceta"
15

Después, tenemos que mostrar a LUIS cómo seleccionar el tema de la


búsqueda como entidad faceta. Lo que la aplicación buscará es lo que

indique la entidad faceta.

1. Vuelva a las intenciones y seleccione la intención SearchPics.

2. Desplace el puntero sobre la expresión, haga clic en la palabra

clave que especifica el tema de la búsqueda y, luego, seleccione


la entidad faceta. Por ejemplo, si la expresión es "Quiero ver
imágenes de bebés", el asunto sería "bebé".
Sugerencia

Utilizar palabras clave de varias palabras, como "pastores alemanes", es


un poco complicado.

16
Haga clic en la primera palabra de la palabra clave, mueva el cursor a
la segunda palabra y vuelva a hacer clic. Después, mueva el cursor a la

lista emergente de selección de entidades. Asegúrese de no mover el

cursor fuera de los bordes o perderá la selección.

3. El progreso debe tener un aspecto similar a la siguiente imagen:


4. Agregue dos intenciones más con expresiones relacionadas, tal

y como se muestra en la tabla siguiente:

17

Nombre
de

intención Expresiones

SharePic Compartir esta imagen, ¿Puedes publicarla en un tweet?, Publicar en Twitter

OrderPic Imprimir esta foto, Quiero encargar copias impresas de la foto, ¿Puedo conseguir
una copia de 8 × 10?, Encargar copias tamaño carné

5. Para terminar el ejercicio, agregue algunas expresiones a la

intención existente None. Asegúrese de que estas expresiones

no coincidan con el contexto de esta aplicación de LUIS.


Ejemplos:

 Me apetece una pizza

 Buscar vídeos
 Aprender a conducir

18
ENTRENAMIENTO DEL
MODELO DE LUIS
Ya estamos a punto para entrenar el modelo.

1. En la barra superior, seleccione Entrenar. Durante el

entrenamiento, LUIS compilará un modelo que asignará


expresiones a intenciones según los datos de entrenamiento

facilitados.

Sugerencia

El entrenamiento no siempre es inmediato. A veces, se queda en la cola

19 y puede tardar varios minutos.

Creación de un punto de conexión público para el servicio LUIS

1. Una vez finalizado el entrenamiento,


seleccione Administrar en la barra superior. Se mostrarán las

opciones siguientes a la izquierda de la ventana:

 Información de la aplicación
 Claves y puntos de conexión

 Configuración de publicación
 Versiones

 Colaboradores
2. Seleccione Claves y puntos de conexión. Esta pantalla se usa

para administrar los puntos de conexión de las direcciones URL


que se utilizan para acceder al servicio LUIS.

Nota

Se creará un punto de conexión denominado Starter_Key de forma

automática para realizar pruebas. Puede usarlo aquí, pero para usar el

servicio en un entorno de producción o como parte de una aplicación


le interesará asociarlo a un recurso real de Language Understanding

creado en Azure.

3. Seleccione + Asignar recurso. Seleccione el inquilino, la


suscripción y el recurso que creó en Azure Portal y, luego,
seleccione Asignar recurso para conectar el recurso de

20 Language Understanding con el servicio LUIS.

Publicación de la aplicación

1. Establezca el espacio del punto de conexión en Producción.

2. En la barra superior, seleccione Publicar.

Nota

Puede realizar la publicación en su punto de

conexión Producción o Almacenamiento provisional.

Seleccione Producción y conozca los motivos de usar cada uno de los


puntos de conexión.

3. En Publicar esta aplicación, seleccione Publicar.


La publicación crea un punto de conexión para llamar al modelo de

LUIS. Se mostrará la dirección URL del punto de conexión. Copie la


dirección URL del punto de conexión y agréguela a la lista de claves
para usarla más adelante.

21
4. En la barra superior, seleccione Probar. Pruebe a escribir

algunas expresiones y vea las intenciones que se devuelven.


Estos son algunos ejemplos que puede probar:

Significado de la
Expresión Resultado puntuación

Mostrarme imágenes Devuelve la intención SearchPics con Coincidencia positiva

de una playa local una puntuación de 0,989.

Hola Devuelve la intención Greeting con una Coincidencia bastante

puntuación de 0,970. positiva


Significado de la

Expresión Resultado puntuación

Enviar a Tom Devuelve la intención SearchPics con Necesidad de


una puntuación de 0,113. reentrenamiento

Para volver a entrenar el modelo para expresiones con puntuaciones

bajas, realice los pasos siguientes:

1. Junto a la expresión de baja de puntuación (en este caso, Enviar


a Tom), seleccione Inspeccionar.

2. Junto a Intención de puntuación superior, seleccione Editar.

22
3. En la lista Asignar a intención, seleccione SharePic.

4. Haga clic en el botón Entrenar para volver a entrenar el


modelo.

5. Pruebe de nuevo la expresión Enviar a Tom. Ahora se debería


devolver la intención SharePic con una puntuación de 0,901.

La aplicación de LUIS ya está lista para que la utilicen las aplicaciones


cliente, se pruebe en un explorador a través del punto de conexión

indicado o se integre en un bot.


1

Creación de un experimento
en Azure Machine Learning
Studio
BIENVENIDA
Obtenga información sobre cómo usar Microsoft Azure Machine

Learning Studio para crear un experimento, probarlo y publicarlo como

servicio web.

En este módulo aprenderá a:

 Crear un experimento
 Preparar y publicar un servicio web para el experimento

 Probar el servicio web

 Ver los encabezados y el código de ejemplo del servicio web


publicado

2 Requisitos previos

Ninguno

Introducción 1 min

Ejercicio: creación de un experimento 10 min

Ejercicio: compilación del experimento 10 min

Ejercicio: preparación e implementación del experimento 10 min

Ejercicio: visualización de los encabezados y el código de


ejemplo 5 min
Comprobación de conocimientos 3 min

Resumen 2 min

3
INTRODUCCIÓN
Microsoft Azure Machine Learning Studio es una interfaz de arrastrar
y colocar que permite crear experimentos para el consumo de
aplicaciones de inteligencia artificial como servicios web. En Machine
Learning Studio se proporcionan numerosas estadísticas y funciones

integradas para experimentos de aprendizaje automático.

Objetivos de aprendizaje
4

En este módulo aprenderá a:

• Crear un experimento.

• Preparar y publicar un servicio web para el experimento.

• Probar el servicio web.

• Ver los encabezados y el código de ejemplo del servicio web


publicado.

Requisitos previos

Si no tiene una cuenta de Machine Learning Studio, complete el


módulo de Microsoft Learn Create an Azure Machine Learning Studio
Account (Creación de una cuenta de Azure Machine Learning

Studio) antes de empezar.

5
EJERCICIO: CREACIÓN DE
UN EXPERIMENTO
Comenzará en Azure Machine Learning Studio con la creación de un

experimento. En el experimento se usa un conjunto de datos creado

previamente relacionados con consideraciones energéticas en la


construcción.

En este ejercicio, importará un conjunto de datos a Machine Learning

Studio. Después, experimentará con él para publicar un servicio web.


En este sencillo experimento se muestra cómo crear un modelo de
Machine Learning que se puede publicar y consumir como un servicio

6 web.

Para importar un conjunto de datos a Machine Learning Studio:

1. Descargue y extraiga el archivo Building [Link]. Este es el


conjunto de datos.

2. Vaya al portal de Machine Learning Studio .

3. Inicie sesión con la cuenta de Microsoft asociada a la cuenta de


Azure.

4. En la barra de navegación de la izquierda de Machine Learning


Studio, haga clic en el icono Datasets (Conjuntos de datos).

5. En la esquina inferior izquierda, haga clic en el

botón New (Nuevo) para cargar el conjunto de datos.


6. Seleccione DataSet > From Local File (Conjunto de

datos>Desde archivo local).

7. Haga clic en Choose File (Elegir archivo) y después seleccione


el archivo que acaba de descargar.

8. En la esquina inferior derecha, haga clic en la marca de

verificación para cargar el conjunto de datos.

9. Compruebe que Building


[Link] aparece como conjunto de

datos.

10. En Machine Learning

Studio, haga clic en el


icono Experiments (Experimentos).
7
11. Seleccione New > Blank
Experiment (Nuevo>Experimento

en blanco).

12. Seleccione Saved


Datasets > My Datasets > Building [Link] (Conjuntos de
datos guardados>Mis conjuntos de datos>Building [Link]).

13. Arrastre este conjunto de datos a la superficie del diseñador.


EJERCICIO: COMPILACIÓN
DEL EXPERIMENTO

A continuación se compilará y ejecutará el experimento.

1. Expanda Data Transformation > Sample and


Split (Transformación de datos>Muestra y división).

2. Arrastre una operación de tipo Split Data (Dividir datos) a la

superficie del diseñador.

3. En la derecha, establezca la fracción de filas del primer conjunto


8
de datos de salida en 0,7 para dividir los datos en 70/30.

4. Conecte el conjunto de datos con la operación de división de


datos. Para ello, arrastre el manipulador del conjunto de datos

a la operación de división de datos.

5. En el lado izquierdo, expanda Machine Learning > Initialize

Model > Regression (Machine Learning>Inicializar

modelo>Regresión).
6. Arrastre la entrada Decision Forest Regression (Regresión del

bosque de decisión) a la superficie del diseñador.

7. En el lado izquierdo, expanda la


subcategoría Score (Puntuación) y busque Score

Model (Puntuar modelo).

8. Arrastre la operación Score Model al diseñador.

9. En el panel izquierdo, expanda Train (Entrenar) y arrastre una


operación Train Model (Entrenar el modelo) al diseñador.

10. En el panel izquierdo, expanda la


subcategoría Evaluate (Evaluar) de Machine Learning y arrastre

una operación Evaluate Model (Evaluar modelo) al diseñador.

9 Sugerencia

Si se queda sin espacio en la superficie del diseñador, puede


desplazarse por el área expuesta de diseñador o usar la rueda del
mouse para acercarse o alejarse.

La ventana del experimento debería tener ahora un aspecto similar al


siguiente:
11. Conecte la salida 1 de la operación Split Data con la

operación Train Model.

10 12. Seleccione la operación Train Model.

13. En el lado derecho, haga clic en Launch Column


Selector (Iniciar el Selector de columnas).

14. Haga clic en la entrada With Rules (Con reglas). Después, haga
clic dentro de la lista de columnas vacías y seleccione el nombre
de columna Wall Area (Superficie de la pared).

15. Haga clic en la marca de verificación para aceptar la selección.

16. Conecte la operación Decision Forest Regression (Regresión


de bosque de decisión) con la entrada que queda, que es la
operación Train Model.

17. Conecte la segunda salida de la operación Split Data


18. (Dividir datos) con la operación Score Model (Puntuar

modelo).

19. Conecte la salida de la operación Score Model (Puntuar


modelo) con la entrada izquierda de la operación Evaluate

Model (Evaluar modelo).

20. Conecte la salida de la operación Entrenar el modelo con la

entrada que queda, que es Score Model (Puntuar modelo). El


experimento debería tener ahora un aspecto similar al

siguiente:

11

21. En la parte inferior de la ventana del diseñador, haga clic en el


botón Run (Ejecutar) para ejecutar el experimento.

22. Asegúrese de que en todas las casillas de las operaciones se

muestran marcas de verificación de color verde y que en la


esquina superior derecha del diseñador aparece Finished

running (Ejecución finalizada) con una marca de verificación de


color verde.

23. Guarde el experimento con el nombre Regresión de eficiencia

energética.

En este momento, no dude en examinar los datos del archivo CSV para

saber sobre qué actúa el experimento.

12
EJERCICIO: PREPARACIÓN
E IMPLEMENTACIÓN DEL
EXPERIMENTO
Ha creado y entrenado un experimento en Azure Machine Learning

Studio. Ahora es momento de publicarlo como un servicio web al que


los clientes puedan acceder.

El experimento se va a preparar y publicar como servicio web, y

después se evaluarán los resultados.

Ya debería haber creado el experimento de eficiencia energética que


13 va a publicar como un servicio web. Estos son los pasos siguientes:

1. En la barra de navegación de la izquierda de Machine Learning


Studio, haga clic en el icono Experiments (Experimentos).

2. Seleccione el experimento completado Regresión de

eficiencia energética para abrirlo.

3. Según el estado del servicio web, es posible que no tenga que

ejecutarlo otra vez. Si en la esquina superior derecha del

diseñador se muestra Finished running (Ejecución finalizada) y


en las fases se muestran marcas de verificación de color verde,
estará listo para el paso siguiente. En caso contrario, haga clic
en el botón Run (Ejecutar).

Configuración del servicio web


1. Después de ejecutar el experimento de eficiencia energética, en

la parte inferior del diseñador, mantenga el puntero sobre el


botón Set Up Web Service (Configurar servicio web).

2. Seleccione Predictive Web Service (Servicio web predictivo)

(recomendado).

Sugerencia

Si la opción Predictive Web Service no está disponible, vuelva a


ejecutar el experimento. Compruebe si aparece la nota que indica que

ha acabado de ejecutarse.

3. Compruebe que se abre la pestaña Predictive

experiment (Experimento predictivo). En el diseñador se


debería mostrar una operación de entrada y de salida del
14
servicio web.

4. Haga clic en el botón Run (Ejecutar).

5. Para comprobar que se ha completado de forma correcta,

busque una marca de verificación de color verde en la


operación Score Model (Modelo de puntuación). Busque

también un ejecución finalizada nota en la esquina superior


derecha.
Implementación del servicio web

Haga clic en el botón Deploy Web Service (Implementar servicio web).

Machine Learning Studio crea el servicio web y abre una ventana nueva
en la que se indica que la operación es correcta. Observará que aparece

la clave de API del servicio web. Las aplicaciones usarán esta clave para

acceder al servicio web.

Prueba del servicio web

Ahora que el servicio web está implementado, se probará para ver los

resultados de la salida.

1. Junto a la opción Request/Response (Solicitud/Respuesta),

haga clic en el botón Test (Probar) para abrir el cuadro de


diálogo de entrada de datos.
15
2. En el cuadro de diálogo de entrada de datos, escriba los valores
siguientes de los datos del modelo de entrenamiento:

 Superficie de la pared: 296

 Superficie del techo: 110,25


 Altura total: 7

 Superficie acristalada: 0
 Carga de calefacción: 15,55

3. En la esquina superior derecha, haga clic en la marca de


verificación.

Verá la salida en la barra de estado, justo encima del

botón New (Nuevo) en la parte inferior de la ventana de Machine


Learning Studio.
Para ver un ejemplo del código JSON devuelto, haga clic en el

botón Details (Detalles). Verá los valores que ha escrito y dos valores
adicionales. Se trata de las evaluaciones del modelo de la eficiencia

energética para los valores especificados.

16
EJERCICIO:
VISUALIZACIÓN DE LOS
ENCABEZADOS Y EL
CÓDIGO DE EJEMPLO
Los clientes consumen el servicio web del experimento mediante
llamadas a la API RESTful. Azure Machine Learning Studio proporciona
información de encabezado de ejemplo en la que se muestra cómo
llamar al servicio web.

Visualización de los encabezados de solicitud y respuesta


17
1. En API Help Page for the Default Endpoint (Página de Ayuda

de API del punto de conexión predeterminado), haga clic en el


vínculo Request/Response. Azure Machine Learning Studio
abre otra pestaña o ventana del explorador para mostrar la

documentación de API de este servicio web.

2. Desplácese hacia abajo hasta Request Headers (Encabezados

de solicitud) y Request Body (Cuerpo de la solicitud) para


hacerse una idea de cómo se formará la solicitud. Esta solicitud

se enviará al servicio web para su evaluación. Está en formato


JSON.

3. Desplácese más abajo y evalúe el ejemplo de Response

Headers y Response Body. En esta sección se muestra el

formato de los datos que se devolverán junto con un ejemplo


de respuesta de JSON. Use este ejemplo para obtener

información sobre cómo analizar el código JSON de los datos


que quiere usar en la aplicación.

4. Desplácese más abajo para encontrar información sobre los

parámetros de entrada y salida. Estos parámetros incluyen los

tipos de datos y nombres esperados. Si crea una clase para


representar la información devuelta, puede usar estos
parámetros a fin de crear los tipos de datos adecuados para las

variables miembro. Los dos últimos elementos devueltos


asignan un valor Media de etiqueta puntuada a un

valor Desviación estándar de etiqueta puntuada.

Evaluación del código de ejemplo

18 Usará el código de ejemplo como una referencia o base para crear una
aplicación cliente en la que se consumirá el servicio web para el

experimento. Revise el código para ver cómo crear la solicitud y


consumir la respuesta de la aplicación.

Sugerencia

La entrada Sample Code (Código de ejemplo) contiene ejemplos en

C#, Python y R.
Para ver el código de ejemplo:

1. Desplácese hasta la parte inferior de la ventana de

documentación de la API del servicio web.

2. Haga clic en la pestaña del lenguaje con el que esté más


familiarizado. Después, revise el código para ver lo que hace.

3. Observe el marcador de posición de la clave de API. Tiene que

reemplazar el valor abc123 por una clave de API válida.

19
Ventajas del uso de Azure para almacenar datos

Estas son algunas de las principales ventajas del almacenamiento de

datos de Azure:

• Copia de seguridad y recuperación automatizadas: reduce el

riesgo de perder datos si se produce algún error o interrupción


imprevistos.

• Replicación en todo el mundo: copia los datos para


protegerlos contra cualquier evento planeado o no planeado,
como el mantenimiento programado o errores de hardware.

Los datos se pueden replicar en varias ubicaciones del mundo.

• Compatibilidad con el análisis de datos: admite el análisis del


1 consumo de datos.

• Capacidades de cifrado: los datos se cifran para dotarlos de


una seguridad muy elevada; también se tiene un control

estricto sobre quién puede acceder a ellos.

• Varios tipos de datos: Azure puede almacenar prácticamente


cualquier tipo de datos que necesite. Puede controlar archivos
de vídeo, archivos de texto e incluso grandes archivos binarios,

como discos duros virtuales. También tiene muchas opciones


para los datos relacionales y NoSQL.

• Almacenamiento de datos en discos virtuales: Azure también

tiene la capacidad de almacenar hasta 32 TB de datos en sus

discos virtuales, lo que resulta de gran ayuda al almacenar


grandes cantidades de datos, como simulaciones y vídeos.
• Niveles de almacenamiento: niveles de almacenamiento para

dar prioridad al acceso a los datos en función de la frecuencia


de uso.

Tipos de datos

Azure Storage está diseñado para contener tres tipos principales de

datos.

1. Datos estructurados. Los datos estructurados son datos que


se ajustan a un esquema, por lo que todos los datos tienen los

mismos campos o propiedades. Los datos estructurados se

pueden almacenar en una tabla de base de datos con filas y


columnas. Los datos estructurados se basan en claves para
indicar cómo se relaciona una fila de una tabla con los datos de

2 otra fila de otra tabla. Los datos estructurados también se


conocen como datos relacionales, ya que el esquema define la
tabla de datos, los campos de la tabla y la relación inequívoca

entre los dos. Los datos estructurados son sencillos porque son
fáciles de escribir, consultar y analizar. Todos los datos siguen
el mismo formato. Algunos ejemplos de datos estructurados

son los datos de sensor o los datos financieros.

2. Datos semiestructurados. Los datos semiestructurados no


encajan fácilmente en tablas, filas ni columnas. Por el contrario,

los datos semiestructurados usan etiquetas o claves que los


organizan y les proporcionan una jerarquía. Los datos

semiestructurados también se conocen como datos no

relacionales o NoSQL.
3. Datos no estructurados. Los datos no estructurados abarcan

aquellos sin una estructura designada. Esta falta de estructura


también significa que no hay ninguna restricción sobre los tipos
de datos que pueden contener. Por ejemplo, un blob puede
contener un documento PDF, una imagen JPG, un archivo JSON,

contenido de vídeo, etc. Por lo tanto, los datos no estructurados

cobran más importancia a medida que las empresas intentan


aprovechar los nuevos orígenes de datos.

3
CÓMO PUEDE EL
ALMACENAMIENTO DE
DATOS DE AZURE
SATISFACER LAS
NECESIDADES
EMPRESARIALES DE
ALMACENAMIENTO
Al examinar las ventajas del almacenamiento de datos de Azure, se
4
puede observar que ofrece las mejores opciones para almacenar el

portal de aprendizaje. Ahora vamos a explorar en detalle las ventajas y

las opciones para ver cómo se adapta a sus necesidades empresariales.

Cómo puede el almacenamiento de datos de Azure satisfacer sus


necesidades empresariales de almacenamiento

Azure ofrece varias opciones de almacenamiento que se adaptan a

tipos concretos de necesidades de almacenamiento de datos.


Azure SQL Database

Azure SQL Database es una base de datos como servicio (DaaS)

relacional basada en la última versión estable del motor de base de


5
datos de Microsoft SQL Server. SQL Database es una base de datos de

alto rendimiento, confiable, totalmente administrada y segura. Puede


usarla para compilar aplicaciones y sitios web controlados por datos en

el lenguaje de programación que prefiera sin necesidad de administrar


infraestructura.

Puede migrar las bases de datos existentes de SQL Server con un


tiempo de inactividad mínimo mediante Azure Database Migration
Service. El servicio usa Microsoft Data Migration Assistant para generar

informes de evaluación que proporcionan recomendaciones para


ayudarlo a través de los cambios necesarios anteriores a la ejecución

de una migración. Una vez evaluada y aplicada cualquier corrección


necesaria, está listo para comenzar el proceso de migración. Azure
Database Migration Service realiza todos los pasos necesarios. El
usuario solo tiene que cambiar la cadena de conexión en las

aplicaciones.

La ilustración siguiente muestra los tipos de datos del escenario del


portal de aprendizaje en línea que se almacenarían en una instancia de

Azure SQL Database.

6
Azure Cosmos DB

Azure Cosmos DB es un servicio de base de datos distribuido

globalmente. Es compatible con los datos sin esquema que permiten


compilar aplicaciones Always On con una gran capacidad de respuesta

para admitir datos en continuo cambio. Puede usar esta característica

para almacenar datos actualizados y mantenidos por usuarios de todo


el mundo. En la siguiente ilustración se muestra una base de datos de
Azure Cosmos DB de ejemplo que se usa para almacenar datos a los
que acceden personas de todo el mundo.

7
Azure Blob Storage

Azure Blob Storage es no estructurado, lo que significa que no hay

ninguna restricción en cuanto a los tipos de datos que puede contener.


8
Los blobs son altamente escalables y las aplicaciones trabajan con ellos

prácticamente de la misma manera en que lo hacen con los archivos


de un disco, como al leer y escribir datos. Blob Storage puede

administrar miles de cargas simultáneas, cantidades enormes de datos


de vídeo, archivos de registro en constante crecimiento y es accesible
desde cualquier lugar con conexión a Internet.

Los blobs no están limitados a formatos de archivo comunes. Un blob


podría contener gigabytes de datos binarios transmitidos desde un

instrumento científico, un mensaje cifrado para otra aplicación o datos


en un formato personalizado para una aplicación que se está

desarrollando.

Azure Blob Storage permite transmitir archivos grandes de vídeo o

audio directamente al explorador del usuario desde cualquier lugar del


mundo. Blob Storage también se usa para almacenar datos de copia

de seguridad, recuperación ante desastres y archivado. Tiene la


capacidad de almacenar hasta 8 TB de datos de máquinas virtuales. En
la siguiente ilustración se muestra un ejemplo de uso de Azure Blob
Storage.

Azure Data Lake Storage

La característica Data Lake permite realizar análisis sobre el uso de los

datos y preparar informes. Data Lake es un repositorio de gran tamaño

que almacena datos estructurados y no estructurados.

Azure Data Lake Storage combina la escalabilidad y la rentabilidad


del almacenamiento de objetos con la confiabilidad y el rendimiento

de las funcionalidades del sistema de archivos de macrodatos. En la


siguiente ilustración se muestra cómo Azure Data Lake almacena todos

los datos empresariales y hace que estén disponibles para el análisis.

10

Azure Files

Azure Files ofrece recursos compartidos de archivos totalmente

administrados en la nube a los que se puede acceder mediante el

protocolo estándar del sector Bloque de mensajes del servidor (SMB).

Los recursos compartidos de Azure se pueden montar


simultáneamente en implementaciones de Windows, Linux y macOS en
la nube o locales. Las aplicaciones que se ejecutan en máquinas

virtuales o servicios en la nube de Azure pueden montar un recurso


compartido de almacenamiento de archivos para acceder a datos de
archivos, del mismo modo que una aplicación de escritorio montaría
un recurso compartido SMB normal. Cualquier número de roles o

máquinas virtuales de Azure puede montar y acceder simultáneamente

al recurso compartido de almacenamiento de archivos. Los escenarios


de uso típicos serían el uso compartido de archivos en cualquier lugar

del mundo, los datos de diagnóstico o el uso compartido de datos de

aplicación.

La siguiente ilustración muestra el uso de Azure Files para compartir


datos entre dos ubicaciones geográficas. Azure Files usa el protocolo
de bloque de mensajes del servidor (SMB), que garantiza que los datos

11 se cifran en reposo y en tránsito.


Azure Queue

Azure Queue Storage es un servicio para almacenar grandes cantidades

de mensajes a los que se puede acceder desde cualquier lugar del


12
mundo.

Azure Queue Storage puede usarse para compilar aplicaciones flexibles


y funciones independientes con el fin de mejorar la durabilidad de las
cargas de trabajo grandes. Cuando se desacoplan los componentes de

la aplicación, se pueden escalar de forma independiente. Queue

Storage proporciona una puesta en cola de mensajes asincrónica para


la comunicación entre los componentes de las aplicaciones,
independientemente de si se ejecutan en la nube, en el escritorio, de

forma local o en dispositivos móviles.

Normalmente, hay uno o varios componentes de remitente y de

receptor. Los componentes de remitente agregan mensajes a la cola,


mientras que los componentes de receptor recuperan mensajes de la

parte delantera de la cola para procesarlos. En la ilustración siguiente


se muestran varias aplicaciones de remitente que agregan mensajes a

Azure Queue y una aplicación de receptor que recupera los mensajes.

Puede usar Queue Storage para:

 Crear un trabajo pendiente y pasar mensajes entre distintos


servidores web de Azure.

 Distribuir la carga entre diferentes servidores o infraestructuras


web y administrar picos de tráfico.
13

 Aumentar la resistencia frente a errores de componentes


cuando varios usuarios acceden a los datos al mismo tiempo.
Disk Storage

Disk Storage proporciona discos para máquinas virtuales, aplicaciones

y otros servicios para que se acceda a ellos y se usen cuando sea


necesario, igual que se haría en escenarios locales. Disk Storage

permite que los datos se almacenen de forma persistente y que se

acceda a ellos desde un disco duro virtual conectado. Los discos


pueden ser administrados o no por Azure y, por lo tanto, administrados
y configurados por el usuario. Los escenarios típicos de uso de Disk
Storage son si quiere desplazar aplicaciones que leen y escriben datos

a discos persistentes o si va a almacenar los datos a los que no es


necesario acceder desde fuera de la máquina virtual a la que está
conectado el disco.

Los discos tienen diferentes tamaños y niveles de rendimiento, desde


14
unidades de estado sólido (SSD) a unidades de disco duro (HDD)
giratorias tradicionales, con diferentes capacidades de rendimiento.

Cuando se trabaja con máquinas virtuales, se pueden usar discos SSD


y HDD estándar para cargas de trabajo menos críticas y discos SSD
Premium para aplicaciones de producción críticas. Los discos de Azure

ofrecen durabilidad de nivel empresarial, con una tasa de error

anualizada del 0 %. En la siguiente ilustración se muestra una máquina


virtual de Azure con discos independientes para almacenar datos

diferentes.
15

Niveles de almacenamiento

Azure ofrece tres niveles de almacenamiento para el almacenamiento

de objetos de blob:

1. Nivel de almacenamiento de acceso frecuente: optimizado


para almacenar datos a los que se accede con frecuencia.

2. Nivel de almacenamiento de acceso esporádico: optimizado


para datos a los que se accede con poca frecuencia y que se

almacenan al menos durante 30 días.


3. Nivel de almacenamiento de archivo: para datos a los que

raramente se accede y que se almacenan durante al menos 180


días con requisitos de latencia flexibles.

16
Cifrado y replicación

Azure proporciona seguridad y alta disponibilidad para los datos


mediante características de cifrado y replicación.

Cifrado de servicios de almacenamiento

Los siguientes tipos de cifrado están disponibles para los recursos:

1. Azure Storage Service Encryption (SSE) para datos en reposo


ayuda a proteger los datos para satisfacer el cumplimiento de
seguridad y normativo de la organización. Cifra los datos antes
de almacenarlos y los descifra antes de recuperarlos. El cifrado

y descifrado son transparentes para el usuario.


2. Cifrado de cliente es donde los datos ya están cifrados

mediante las bibliotecas de cliente. Azure almacena los datos


en estado cifrado en reposo y luego los descifra durante la
recuperación.

Replicación para disponibilidad de almacenamiento

Se configura un tipo de replicación al crear una cuenta de

almacenamiento. La característica de replicación garantiza que los


datos sean duraderos y que estén siempre disponibles. Azure

proporciona replicaciones regionales y geográficas para proteger los


datos frente a desastres naturales y otros desastres locales, como
incendios o inundaciones.

17
COMPARACIÓN ENTRE EL
ALMACENAMIENTO DE
DATOS DE AZURE Y EL
ALMACENAMIENTO
LOCAL
Ahora que conoce las ventajas y las características del almacenamiento
de datos de Azure, veamos en qué se diferencia del almacenamiento

local.

18 El término "local" hace referencia al almacenamiento y mantenimiento


de los datos en servidores y hardware locales. Hay varios factores que
se deben tener en cuenta al comparar el almacenamiento de datos de
forma local con el de Azure.
Rentabilidad

Una solución de almacenamiento local necesita hardware dedicado

que se debe comprar, instalar, configurar y mantener. Este requisito


puede suponer un gasto inicial importante (o inversión de capital). Un

cambio de requisitos puede exigir la inversión en hardware nuevo. El

hardware debe ser capaz de controlar la máxima demanda, lo que


significa que puede permanecer inactivo o estar infrautilizado en horas
de poca actividad.

El almacenamiento de datos de Azure proporciona un modelo de


precios de pago por uso que suele resultar atractivo para las empresas
como un gasto operativo en lugar de una inversión de capital inicial.
También es escalable, lo que permite escalar horizontal o verticalmente
en función de lo que dicte la demanda y revertir el escalado cuando la
19
demanda sea baja. Los servicios de datos se cobran únicamente

cuando se necesitan.
Confiabilidad

El almacenamiento local necesita estrategias de copia de seguridad de

datos, equilibrio de carga y recuperación ante desastres. Estos


requisitos pueden ser complicados y costosos, ya que normalmente

cada uno necesita servidores dedicados que requieren una

considerable inversión en hardware y recursos de TI.

El almacenamiento de datos de Azure proporciona copia de seguridad


de datos, equilibrio de carga, recuperación ante desastres y replicación

de datos como servicios para garantizar la alta disponibilidad y la


seguridad de los datos.

20

Tipos de almacenamiento

En ocasiones, una solución requiere varios tipos de almacenamiento

diferentes, como el almacenamiento de archivos y bases de datos. Un


enfoque local a menudo requiere numerosos servidores y herramientas
administrativas para cada tipo de almacenamiento.
El almacenamiento de datos de Azure proporciona una serie de

opciones de almacenamiento diferentes, incluido el acceso distribuido


y el almacenamiento en niveles. Esta variedad permite integrar una
combinación de tecnologías de almacenamiento y proporciona la
mejor opción de almacenamiento para cada elemento de la solución.

21

Agilidad

Los requisitos y las tecnologías cambian. En una implementación local,


estos cambios pueden significar aprovisionar e implementar servidores

nuevos y elementos de infraestructura, una actividad costosa y que

puede llevar mucho tiempo.

El almacenamiento de datos de Azure ofrece la flexibilidad de crear

servicios en cuestión de minutos. Esta flexibilidad permite cambiar


rápidamente los back-end de almacenamiento sin necesidad de una

inversión considerable en hardware.


Comparación del almacenamiento local con el almacenamiento de

datos de Azure

La tabla siguiente describe las diferencias entre el almacenamiento


local y el almacenamiento de datos de Azure.

Necesidades Local Almacenamiento

de datos de Azure

Cumplimiento y Se necesitan Cifrado del lado


seguridad servidores dedicados cliente y cifrado en
para la privacidad y reposo

la seguridad

Almacenamiento de Se necesitan recursos Azure Data Lake y el


datos estructurados de TI adicionales con portal analizan y
22
y no estructurados servidores dedicados administran todos
los tipos de datos

Replicación y alta Se necesitan más Características de

disponibilidad recursos, licencias y replicación y


servidores redundancia
integradas

disponibles

Uso compartido de El uso compartido de Opciones de uso


aplicaciones y acceso archivos requiere compartido de

a recursos recursos de archivos disponibles

compartidos administración sin licencia adicional


adicionales
Almacenamiento de Necesita un servidor Ofrece opciones de
datos relacional de bases de datos base de datos como

con el rol de servicio

administrador de
base de datos

Almacenamiento Se necesitan recursos Azure Cosmos DB


distribuido y acceso de proceso, redes y proporciona acceso
a datos almacenamiento distribuido
caros

Mensajería y La redundancia de La cola de Azure


equilibrio de carga hardware afecta al proporciona un
presupuesto y a los equilibrio de carga
23 recursos eficaz

Almacenamiento en La administración del Azure ofrece

capas almacenamiento en almacenamiento de

capas necesita una datos en capas


tecnología y un automatizado
conjunto de
aptitudes del

personal
RESUMEN
En este módulo, se han explorado las ventajas de usar Azure para
almacenar los datos. Azure proporciona las siguientes características:

• Almacenamiento de datos estructurados y no estructurados

• Alta seguridad compatible con los estándares de cumplimiento

globales

• Funcionalidades de equilibrio de carga, alta disponibilidad y


redundancia

• Posibilidad de enviar grandes volúmenes de datos


directamente en el explorador mediante características como

Azure Blob Storage


24

Por último, las funcionalidades de almacenamiento de datos de Azure

la convierten en una plataforma ideal para hospedar cualquier


aplicación o portal grande de ámbito global.
Nube pública
Este es el modelo de implementación más común. En este caso, no
tiene que administrar ni mantener actualizado ningún hardware local,

todo se ejecuta en el hardware de su proveedor de servicios en la nube.

En algunos casos, puede ahorrar costos adicionales mediante el uso

compartido de los recursos informáticos con otros usuarios de la nube.

Las empresas pueden usar varios proveedores de servicios en la nube


pública de diferentes escalas. Microsoft Azure es un ejemplo de

proveedor de servicios en la nube pública.

Ventajas

• Alta escalabilidad y agilidad: no tiene que comprar un servidor


1
nuevo cuando sea necesario escalar.
• Precios de pago por uso: solo paga por lo que usa, sin costos

de gastos de capital.
• No debe ocuparse del mantenimiento ni de las actualizaciones
del hardware.
• Conocimientos técnicos mínimos para la configuración y el uso:
puede aprovechar las aptitudes y la experiencia del proveedor

de servicios en la nube para asegurarse de que las cargas de

trabajo sean seguras, estén protegidas y tengan alta


disponibilidad.

Un escenario de caso de uso común es la implementación de una

aplicación web o de un blog sobre hardware y recursos que son

propiedad de un proveedor de servicios en la nube. Usar una nube


pública en este escenario permite a los usuarios de servicios en la nube

poner en marcha rápidamente su sitio web o blog para poder pasar a


centrarse en el mantenimiento del sitio sin tener que preocuparse por
la compra, la administración o el mantenimiento del hardware en el
que se ejecuta.

Desventajas

No todos los escenarios se ajustan a la nube pública. También hay


algunas desventajas que hay que tener en cuenta:

• Puede haber requisitos de seguridad específicos que el uso de

la nube pública no puede satisfacer.


• Puede haber directivas gubernamentales, estándares del sector
o requisitos legales que el uso de la nube pública no puede

2 cumplir.
• El hardware o los servicios no son de su propiedad y no puede
administrarlos como querría.

• Puede ser difícil cumplir requisitos exclusivos de una empresa,


como mantener una aplicación heredada.

Nube privada
En una nube privada, se crea un entorno de nube en su propio centro

de datos y se proporciona acceso de autoservicio a los recursos de

proceso a los usuarios de la organización. Esto ofrece una simulación


de una nube pública a los usuarios, pero sigue siendo completamente

responsable de la compra y del mantenimiento de los servicios de

hardware y software que proporciona.


Ventajas

Este enfoque tiene varias ventajas:

• Puede garantizar que la configuración pueda admitir cualquier


escenario o aplicación heredada.

• Tiene el control y la responsabilidad de la seguridad.

• Las nubes privadas pueden satisfacer estrictos requisitos de


seguridad, cumplimiento o normativas.

Desventajas

Algunos motivos por los que los equipos se alejan de la nube privada
son:

• El usuario tiene que hacerse cargo de los costos incluidos en los


3 gastos de capital y debe comprar el hardware para la puesta en
marcha y el mantenimiento.
• Ser propietario del equipo limita la agilidad; para escalar debe
comprar, instalar y configurar nuevo hardware.
• Para utilizar nubes privadas se requieren aptitudes y
conocimientos de TI difíciles de obtener.

Un caso de uso en el que convendría utilizar una nube privada sería el

de una organización con datos que no se pudieran subir a la nube

pública, por posibles cuestiones legales. Otro ejemplo sería el de una


directiva gubernamental que exige conservar determinados datos
dentro del país o de forma privada.
Una nube privada también puede proporcionar funcionalidad en la

nube a clientes externos o a departamentos internos específicos, como


Contabilidad o RR. HH.

Nube híbrida
Una nube híbrida combina las nubes pública y privada, lo que permite

ejecutar las aplicaciones en la ubicación más adecuada. Por ejemplo,


podría hospedar un sitio web en la nube pública y vincularlo a una base

de datos muy segura hospedada en la nube privada (o el centro de


datos local).

Esto resulta útil cuando tiene algunas cosas que no se pueden poner
en la nube, posiblemente por motivos legales. Por ejemplo, puede ser
4
que tenga información concreta que no se pueda exponer

públicamente (como datos médicos) y que deba conservarse en su


centro de datos privado. Otro ejemplo es una o varias aplicaciones que

se ejecutan en hardware antiguo que no se puede actualizar. En este

caso, puede mantener el sistema antiguo ejecutándose de forma local


y conectarlo a la nube pública para la autorización o el
almacenamiento.

Ventajas

Estas son algunas de las ventajas de la nube híbrida:

• Cualquier sistema que use hardware desactualizado o un


sistema operativo desactualizado se puede mantener en

funcionamiento y accesible.
• Tiene la flexibilidad de escoger lo que se ejecuta localmente y

lo que se ejecuta en la nube.


• Puede aprovechar las economías de escala de los proveedores
de servicios en la nube pública para servicios y recursos siempre
que sea más económico, y complementar con su propio

equipamiento cuando no lo sea.

• Puede usar su propio equipamiento para cumplir con los


requisitos de seguridad, cumplimiento o normativa necesarios

para controlar completamente el entorno.

Desventajas

Algunos problemas con los que debe tener cuidado son los siguientes:

• Puede ser más costoso que seleccionar un modelo de

5 implementación, ya que implica los costos por adelantado de


los gastos de capital.

• Puede ser más complicado de configurar y administrar.


• Resumen
La informática en la nube es flexible y le ofrece la posibilidad

de elegir cómo quiere implementarla. El modelo de

6 implementación en la nube que elija depende del presupuesto

y de las necesidades de seguridad, escalabilidad y


mantenimiento..
TIPOS DE SERVICIOS EN
LA NUBE

Cuando hablamos de la informática en la nube, existen tres categorías

principales. Es importante conocerlas, ya que se usan en la


conversación, la documentación y el aprendizaje.

Exploración de las tres categorías de informática en la nube

Comparación entre IaaS, SaaS y PaaS

Infraestructura como servicio (IaaS)

7 Infraestructura como servicio es la categoría más flexible de servicios

en la nube. Su objetivo es ofrecerle un control completo sobre el


hardware que ejecuta su aplicación (servidores de infraestructura de TI

y máquinas virtuales (VM), almacenamiento, redes y sistemas


operativos). En vez de comprar hardware, con IaaS, se alquila. Se trata
de una infraestructura informática que se aprovisiona y administra a
través de Internet.

Nota

Al utilizar IaaS, garantizar que un servicio está activo y en

funcionamiento es una responsabilidad compartida: el proveedor de

servicios en la nube es el responsable de garantizar que la


infraestructura en la nube funcione correctamente; el cliente del

servicio en la nube es responsable de garantizar que el servicio que


está utilizando esté bien configurado, actualizado y disponible para sus

clientes. Esto se conoce como el modelo de responsabilidad


compartida.

IaaS se acostumbra a usar en las situaciones siguientes:

 Migración de cargas de trabajo. Normalmente, las instalaciones

de IaaS se administran de forma similar a la infraestructura local

y proporcionan una ruta de migración sencilla para trasladar las


aplicaciones existentes a la nube.

 Pruebas y desarrollo. Los equipos pueden configurar y


desmantelar rápidamente los entornos de desarrollo y pruebas,
lo que les permite introducir aplicaciones nuevas al mercado
con mayor rapidez. IaaS facilita el desarrollo del escalado y los
entornos de pruebas de una forma rápida y económica.
8
 Almacenamiento, copia de seguridad y recuperación. Las

organizaciones evitan el desembolso de capital y la


complejidad que supone la administración de almacenamiento,
para la que normalmente se requiere personal capacitado que
administre los datos y cumpla los requisitos legales y de
cumplimiento. IaaS es útil para administrar la demanda

impredecible y las necesidades de almacenamiento en


constante crecimiento. IaaS también puede simplificar la

planificación y administración de sistemas de copia de


seguridad y recuperación.

Plataforma como servicio (PaaS)

PaaS proporciona un entorno para compilar, probar e implementar


aplicaciones de software. El objetivo de PaaS es ayudarle a crear una
aplicación rápidamente sin tener que administrar la infraestructura

subyacente. Por ejemplo, al implementar una aplicación web con PaaS,


no tiene que instalar un sistema operativo o un servidor web, ni
tampoco actualizaciones del sistema.

PaaS es un entorno de desarrollo e implementación completo en la

nube, con recursos que permiten a las organizaciones ofrecerlo todo,


desde sencillas aplicaciones basadas en la nube hasta sofisticadas
aplicaciones empresariales habilitadas para la nube. Puede adquirir los
recursos de un proveedor de servicios en la nube con el método de

pago por uso y acceder a ellos a través de una conexión segura a


Internet.

PaaS se acostumbra a usar en las situaciones siguientes:

9  Plataforma de desarrollo. PaaS ofrece una plataforma que los


desarrolladores pueden usar para desarrollar o personalizar

aplicaciones basadas en la nube. Al igual que una macro de


Microsoft Excel, PaaS permite que los desarrolladores creen
aplicaciones a través de componentes de software integrados.
Se incluyen características de la nube, como escalabilidad, alta
disponibilidad y funcionalidad multiinquilino, lo que permite

reducir la cantidad de codificación que deben realizar los


desarrolladores.

 Analytics o inteligencia empresarial. Las herramientas que se


proporcionan como un servicio con PaaS permiten a las

organizaciones analizar y extraer sus datos. Así, pueden

encontrar información y patrones, y predecir resultados para


mejorar las decisiones empresariales, como las previsiones, el

diseño de productos y el retorno de la inversión.


Software como servicio (SaaS)

SaaS es software que se hospeda y administra de forma centralizada


para el cliente final. Normalmente se basa en una arquitectura donde

se usa una versión de la aplicación para todos los clientes y la licencia

se obtiene a través de una suscripción mensual o anual. Office 365,


Skype y Dynamics CRM Online son ejemplos perfectos de software de
SaaS.

Costo y propiedad

IaaS PaaS SaaS

Costos No hay costos No hay costos Los usuarios no


10 iniciales iniciales. Los iniciales. Los tienen ningún
usuarios solo usuarios solo costo inicial, sino
pagan por lo pagan por lo que pagan una
que consumen que suscripción,
consumen. normalmente de

forma mensual o
anual.

Propiedad El usuario es El usuario es Los usuarios solo

del responsable de responsable usan el software de


usuario la compra, del desarrollo la aplicación, pero

instalación, de sus propias no son

configuración y aplicaciones, responsables de la


administración pero no es administración o

de sus propios responsable


software, de administrar del mantenimiento
sistemas la de dicho software.

operativos, infraestructura

middleware y ni el servidor.
aplicaciones. Esto permite al

usuario
centrarse en la
aplicación o

carga de
trabajo que
quiere
ejecutar.

Propiedad El proveedor de El proveedor El proveedor de

11 del servicios en la de servicios en servicios en la


proveedor nube es la nube es nube es

de responsable de responsable responsable del

servicios garantizar que el de la aprovisionamiento,

en la nube usuario tiene a administración la administración y


su disposición la del sistema el mantenimiento
infraestructura operativo y de del software de la

en la nube la aplicación.

subyacente (por configuración

ejemplo, las de red y del


máquinas servicio. Los
virtuales, el proveedores

almacenamiento de servicios en

y las redes). la nube


acostumbran a
ser los

responsables

de todo, a
excepción de
la aplicación

que el usuario

quiere
ejecutar.
Proporcionan
una completa

plataforma
administrada
en la que se va
12
a ejecutar la

aplicación.

Responsabilidades de administración

Un aspecto que debe entender es que estas categorías son capas,


superpuestas unas sobre otras. Por ejemplo, PaaS agrega una capa
sobre IaaS, al proporcionar un nivel de abstracción. La abstracción tiene

la ventaja de ocultar los detalles sobre los cuales no es necesario


preocuparse, para poder empezar a codificar más rápido. Pero un

aspecto de la abstracción es que se tiene menos control sobre el


hardware subyacente. La siguiente ilustración muestra una lista de

recursos que usted administra y que administra el proveedor de


servicios en cada categoría de servicio en la nube.
Ilustración en la que se muestra el nivel de abstracción en cada

categoría de servicio en la nube.

 IaaS es la infraestructura que requiere una mayor


administración por parte de los usuarios de todos los

servicios en la nube. El usuario es responsable de

administrar los sistemas operativos, datos y aplicaciones.


 PaaS requiere menos administración por parte del usuario.
El proveedor de servicios en la nube administra los sistemas
operativos y el usuario es responsable de las aplicaciones y

los datos que ejecuta y almacena.


 SaaS es la infraestructura que requiere una menor
administración por parte del usuario. El proveedor de

servicios en la nube es responsable de administrarlo todo y

13 el usuario final simplemente usa el software.

Combinación de servicios en la nube para satisfacer sus


necesidades

IaaS, PaaS y SaaS contienen distintos niveles de servicios


administrados. Puede usar fácilmente una combinación de estos tipos

de infraestructura. Podría usar Office 365 en los equipos de la empresa


(SaaS), hospedar en Azure las máquinas virtuales (IaaS) y usar Azure
SQL Database (PaaS) para almacenar los datos. Con la flexibilidad de la
nube, puede usar cualquier combinación que le proporcione el máximo

resultado.
1

Compilación de un bot de
chat de Preguntas más
frecuentes con QnA Maker y
Azure Bot Service
BIENVENIDA
Información sobre QnA Maker y su integración con un bot

En este módulo:

• Aprenderá lo que es QnA Maker.

• Obtendrá información sobre las características clave de QnA

Maker y sobre cómo crear una base de conocimiento.

• Publicará una base de conocimiento de QnA Maker.

• Integrará una base de conocimiento con un bot.

2 Requisitos previos

Ninguno

Introducción 1 min

Información general sobre QnA Maker 4 min

Ejercicio: Creación de una base de conocimientos de QnA 15

min

Ejercicio: Publicación de una base de conocimientos 5 min

Ejercicio: Integración de QnA con un bot 15 min

Prueba de conocimientos 7 min

Resumen 1 min
INTRODUCCIÓN
Un bot es un programa autónomo que interactúa con personas o con
equipos de forma previsible. El creador del bot diseña y programa la
lógica subyacente, a menudo con la ayuda de herramientas como
Microsoft Bot Framework. Microsoft también dispone de otros servicios

de inteligencia artificial, incluidos en Azure Cognitive Services, que


pueden mejorar las funcionalidades de los bots.
3
QnA Maker es uno de los servicios de inteligencia artificial que ayudan
a un bot a responder a preguntas en el lenguaje natural de los usuarios,
para lo que las hace coincidir con la mejor respuesta posible de la base

de conocimientos.

Nota

Este módulo requiere una suscripción de Azure. Los servicios que cree

y use son gratuitos, pero necesitará una suscripción activa o una


versión de prueba para completar los ejercicios. Si no tiene una

suscripción a Azure, cree una cuenta gratuita antes de empezar.

Objetivos de aprendizaje

En este módulo hará lo siguiente:


• Aprenderá lo que es QnA Maker.

• Obtendrá información sobre las características clave de QnA

Maker y sobre cómo crear una base de conocimiento.

• Publicará una base de conocimiento de QnA Maker.

• Integrará una base de conocimiento con un bot.

Siguiente unidad: Información general sobre QnA Maker

4
INFORMACIÓN GENERAL
SOBRE QNA MAKER
Una forma de mejorar la satisfacción de los clientes consiste en

ayudarles a encontrar rápidamente una respuesta a sus preguntas. La

información que buscan puede encontrarse en las Preguntas más


frecuentes (P+F), en la documentación de soporte técnico o en los

manuales de productos.

Las páginas de búsqueda pueden ser útiles, pero muchas


organizaciones prefieren un sistema que ofrezca una interacción más
personal con los clientes, pero sin dejar de usar mecanismos

5 automatizados. El servicio QnA Maker busca en la base de


conocimientos la respuesta que mejor se ajuste a la pregunta
formulada por el usuario en lenguaje natural. Para encontrar la

información que necesitan, los clientes pueden mantener una


conversación natural e interactiva con el servicio automatizado.

Para crear una base de conocimientos de QnA Maker, debe usar un

portal web. En el portal puede crear, administrar, entrenar y publicar su


servicio sin necesidad de tener ninguna experiencia como

desarrollador. Una vez que el servicio se publica en un punto de


conexión, una aplicación cliente como un bot de chat puede usar el

servicio para procesar una conversación con un usuario a fin de

determinar la pregunta que se ha hecho y ofrecer la mejor respuesta.

Arquitectura
Para entender los servicios que brinda QnA Maker, podemos observar

la arquitectura subyacente. Como ya se ha mencionado, se debe usar


un portal basado en web para crear la base de conocimientos. Este
portal forma parte de los servicios de administración de QnA Maker.
Los servicios de administración también proporcionan funciones para

la actualización, el entrenamiento y la publicación de la base de

conocimientos para su uso. También se pueden utilizar API basadas en


REST para administrar la base de conocimientos.

Después de crear y publicar la base de conocimientos, los datos de QnA

Maker y el runtime harán que el servicio esté disponible. Para acceder


al servicio, se usará la suscripción de Microsoft Azure en la región que
eligió durante el proceso de creación. El contenido que ha agregado a

la base de conocimientos se almacena en Azure Search y el punto de

6 conexión de acceso para las aplicaciones cliente se implementa como


un Azure App Service. Azure también permite la integración de

Application Insights en el servicio para fines de análisis.


Siguiente unidad: Creación de una base de conocimientos de QnA

7
EJERCICIO: CREACIÓN DE
UNA BASE DE
CONOCIMIENTOS DE
QNA
Vamos a crear una base de conocimientos (KB) de QnA Maker.

1. Vaya al portal de QnA Maker .

2. Haga clic en Iniciar sesión en la esquina superior derecha e


inicie sesión con sus credenciales de Azure.

8
3. A menos que ya tenga una base de conocimientos, el portal le
indicará que no tiene ninguna.

Hospedaje de una base de conocimientos

Una base de conocimientos es una colección de preguntas y respuestas

donde se pueden realizar búsquedas. Las bases de conocimientos se


hospedan en un servicio QnA, que se crea en Azure y determina la
región en la que colocará la base de conocimientos, así como

su facturación y rendimiento.
Nota

Se recomienda crear el servicio bot y el servicio QnA en la misma región

para conseguir un mayor rendimiento.

Creación de una base de conocimientos y un servicio QnA

1. En el menú ubicado en la parte superior del portal,


seleccione Create a knowledge base (Crear una base de

conocimiento).

2. Haga clic en Create a QnA service (Crear un servicio QnA). Al


seleccionar este botón, se abre Azure Portal e inicia la sesión
con las credenciales que usó anteriormente. Debe crear el

servicio QnA Maker y el servicio asociado de aplicación de


Azure que lo hospedará en este portal.
9
Nota

Antes de crear una base de conocimientos, cree también un servicio de

QnA Maker en Azure Portal.

Especificación de los detalles del servicio QnA Maker

Proporcione estos detalles para crear el servicio QnA Maker:

1. Escriba un nombre único global para el servicio QnA Maker,

como nombre-qna. Anote este nombre porque lo usará más


adelante.

2. Seleccione la suscripción de Azure.


3. Seleccione el plan de tarifa F0 para el servicio, que es el nivel

Gratis.

4. Seleccione una ubicación para el servicio, que debe estar en la


misma región que el servicio bot y cerca de su ubicación física.

5. Cree un grupo de recursos denominado LearnRG.

6. Seleccione F (tres índices), el nivel Gratis, en el plan de tarifa

de búsqueda.

7. Para la ubicación de búsqueda, seleccione la ubicación que usó


anteriormente.

8. Compruebe que el nombre de la aplicación es único en Azure.

(Si lo es, se indicará mediante una marca de verificación verde).


10
9. Seleccione la ubicación para el sitio web, que debe coincidir con

la ubicación que usó anteriormente.

10. Deshabilite App Insights, ya que no lo usará para esta prueba.

11. Haga clic en Crear.

Después de un breve proceso de implementación, se creará el recurso


para el servicio.

Conexión del servicio QnA Maker a la base de conocimientos

1. Vuelva a la pestaña del portal web de QnA Maker y actualice la


página.

2. La página se actualizará. Vaya al paso 2.


3. Las entradas del paso 2 no se habrán rellenado, pero aparecerá

un vínculo a la información de la cuenta.

4. Seleccione el identificador de directorio, el nombre de la


suscripción de Azure, así como el nombre del nuevo servicio

QnA que creó antes.

5. En el paso 3, asigne un nombre a la base de conocimientos.

Usaremos las Preguntas más frecuentes de Microsoft Bot, por


lo que puede asignarle el nombre BotFAQ.

Rellenar la base de conocimientos

Necesitamos algunos datos para nuestra base de conocimientos. Como

ejemplo, vamos a usar una página existente de Preguntas más


frecuentes.
11
1. Descargue el archivo ZIP de Preguntas más frecuentes de
Microsoft Bot y extráigalo en el equipo local.

2. En el paso 4 del proceso del portal web de QnA, haga clic


en Add file (Agregar archivo), busque el documento de Word
extraído en el paso anterior y agréguelo como origen para

rellenar la base de conocimientos.

3. En Chit-chat (Charla), seleccione The

Professional (Profesional) para agregar una personalidad


predefinida a la base de conocimientos. Chit-chat agrega

respuestas a mensajes como hola y adiós.

4. Haga clic en Create your KB (Crear la base de conocimientos).


Tras un breve tiempo, se creará la base de conocimientos y se cargará

la página de edición.

Probar la base de conocimientos

1. Para hacerse una idea de la manera en que un bot puede


responder a las preguntas, seleccione Probar en la esquina

superior derecha.

2. Se abre un panel de prueba, listo para la pregunta.

3. Escriba Hello y seleccione la tecla Entrar. QnA responderá con


un "Hello".

4. Escriba when will v3 retire? (¿Cuándo se retirará la versión 3?)

y pulse Entrar. QnA responderá con un mensaje sobre las


12 versiones y las actualizaciones de esa versión.

5. Escriba what is included in v4? (¿Qué incluye la versión 4?) y


presione Entrar. Lea la respuesta.

Para seguir probando la interacción, realice más preguntas y evalúe las


respuestas para hacerse una idea de cómo se sondea la base de
conocimientos de QnA en busca de respuestas.

Siguiente unidad: Ejercicio: Publicación de una base de conocimientos


EJERCICIO: PUBLICACIÓN
DE UNA BASE DE
CONOCIMIENTOS
Ahora que ya ha creado una base de conocimientos de QnA, es el

momento de publicarla para poder tener acceso a ella desde una


aplicación cliente.

1. En la página de la base de conocimientos de QnA Maker en la

que realizó las pruebas en el ejercicio anterior, haga clic

en PUBLICAR en el menú situado en la parte superior de la


página.
13
2. Lea el mensaje en la página siguiente. Indica que la base de
conocimientos pasará de pruebas a producción. También

señala que la base de conocimientos estará disponible como un


punto de conexión que puede usar en bots y aplicaciones.

3. Haga clic en Publicar.

4. Al poco tiempo aparecerá un mensaje de confirmación (si no se

producen errores).

5. Anote la información de la dirección URL que se muestra. Puede


usar la información proporcionada para probar la base de
conocimientos con Postman o Curl.
En caso necesario, puede hacer clic en Editar servicio para volver a la

base de conocimientos y realizar modificaciones.

Siguiente unidad: Ejercicio: Integración de QnA con un bot

14
EJERCICIO: INTEGRACIÓN
DE QNA CON UN BOT
Ahora que ha creado y publicado una base de conocimientos de QnA,

es el momento de aprender a integrarla con un bot. En este ejercicio,

creará un bot de chat en Azure Portal para integrarlo con la base de


conocimientos de QnA Maker que creó anteriormente.

1. En el portal de QnA Maker, vaya a la página Publish (Publicar) y

publique la base de conocimiento si no se ha publicado todavía.

2. Seleccione Create Bot (Crear bot). Se abre Azure Portal con la


configuración de la creación del bot.
15
3. Especifique la configuración para crear el bot:

1. Asigne un nombre adecuado a su bot.

2. Elija el servicio de suscripción que ha usado en este

curso.

3. Seleccione el grupo de recursos apropiado.

4. Elija la ubicación del bot. Recuerde que es mejor usar la


misma ubicación que el resto de los servicios.

5. Seleccione el plan de tarifa F0.

6. El nombre de la aplicación debería rellenarse de forma


automática.
7. Elija C# como lenguaje del SDK.

8. Deje los campos restantes con el valor predeterminado.

4. Haga clic en Crear. En unos minutos, debería crearse el bot.

Chat con el bot

1. En Azure Portal, abra el nuevo recurso de bot desde la

notificación.

2. Desde Bot management (Administración de bots), seleccione


Test in web chat (Probar en chat web) y pruebe el QnA haciendo

preguntas al bot.

16 Siguiente unidad: Prueba de conocimientos


RESUMEN
Ha hecho un gran avance en este módulo. QnA Maker es una manera
fácil de proporcionar respuestas a preguntas habituales mediante el

uso de documentos existentes o listas de preguntas más frecuentes. La

integración del servicio QnA Maker con un bot de chat puede ayudar

a los usuarios a interactuar más fácilmente con las listas de preguntas


más frecuentes de manera conversacional. De este modo, se evitan
tener que realizar búsquedas en documentos largos en un explorador.

Limpieza

Para evitar costes inesperados en la cuenta de Azure, elimine el grupo


de recursos LearnRG. De este modo, se eliminarán los recursos que ha
creado en este módulo. Estos son los pasos que se deben seguir:
17

1. Busque el grupo de recursos LearnRG. Haga clic en Grupos de

recursos en la barra lateral de Azure para encontrarlo


rápidamente.

2. Seleccione el grupo de recursos y haga clic con el botón


derecho en la fila, o bien use el botón de puntos suspensivos
(…) situado en el extremo derecho de la fila para abrir el menú.

3. Haga clic en Eliminar grupo de recursos.

4. Escriba el nombre del grupo de recursos y haga clic


en Eliminar. Azure quitará todos los recursos.
1

Creación de una cuenta de


Azure
BIENVENIDA
El primer paso para usar Azure es registrarse. Puede registrarse
directamente a través de [Link], con la ayuda de un representante

de Microsoft o a través de un partner. Si no está familiarizado con


Azure, puede registrarse para obtener una cuenta gratuita de Azure y,

de este modo, empezar a explorar con 200 USD de crédito gratuito,


además de poder acceder a servicios gratis.

En este módulo, aprenderá a:

2  Obtener información sobre las opciones de registro de Azure,


incluida la cuenta gratuita de Azure.
 Crear una cuenta gratuita de Azure.

 Comprender cómo funciona la facturación en Azure.


 Obtener información sobre las distintas opciones de soporte
técnico.

Requisitos previos

 Conocimiento de términos y conceptos básicos de informática

en la nube
 Una tarjeta de crédito válida a fin de registrarse para obtener
una cuenta gratuita de Azure (opcional).
Introducción 2 min

Creación de una cuenta de Azure 4 min

Ejercicio: Creación de una cuenta de Azure 10 min

Descripción de la facturación de Azure 8 min

Opciones de soporte técnico de Azure 8 min

Prueba de conocimientos 2 min

Resumen 5 min

3
INTRODUCCIÓN
Para crear y usar los servicios de Azure, necesita una suscripción de
Azure. Al registrarse, se crea una suscripción de Azure para usted. Esta
permite compilar e implementar aplicaciones basadas en la nube, usar
sofisticados servicios de inteligencia artificial y extraer información

esencial de los datos.

Objetivos de aprendizaje
4

En este módulo, aprenderá a:

 Obtener información sobre las opciones de registro de Azure,

incluida la cuenta gratuita de Azure.


 Crear una cuenta gratuita de Azure.

 Comprender cómo funciona la facturación en Azure.


 Obtener información sobre las distintas opciones de soporte

técnico.

Requisitos previos

 Conocimiento de términos y conceptos básicos de informática


en la nube. Una tarjeta de crédito válida a fin de registrarse para
obtener una cuenta gratuita de Azure (opcional).
CREACIÓN DE UNA
CUENTA DE AZURE
Para comprar Azure directamente desde Microsoft, regístrese en el

sitio web de Azure o hágalo a través de un representante de Microsoft.


También puede comprar Azure a través de un partner de Microsoft. Los

partners del Proveedor de soluciones en la nube ofrecen una amplia

gama de soluciones en la nube administradas y completas para Azure.

Si no está familiarizado con Azure, puede registrarse para obtener una


cuenta gratuita en el sitio web de Azure y, de este modo, empezar a
5
explorar sin costo alguno. Cuando esté listo, puede optar por actualizar

y comenzar a pagar por los servicios de Azure que superen las


cantidades gratuitas.

¿Qué es la cuenta gratuita de Azure?

La cuenta gratuita de Azure incluye acceso gratuito a productos


populares de Azure durante 12 meses, un crédito de 200 USD para

gastar durante los primeros 30 días y acceso a más de 25 productos


que siempre son gratuitos. Esta es una manera excelente para que los

nuevos usuarios empiecen y exploren. Para registrarse, necesita un


número de teléfono, una tarjeta de crédito y una cuenta de Microsoft

o de GitHub. La información de la tarjeta de crédito solo se usa para


comprobar su identidad. No se le cobrará por ningún servicio hasta

que actualice.
Opciones de compra de Azure

Con las opciones de compra flexibles, puede elegir la opción que mejor
funcione en su caso. Para comprar Azure, utilice una de las tres

opciones siguientes:

 [Link]: comprar directamente a través de [Link] es la

forma más rápida y fácil que tienen las organizaciones de todos


los tamaños para empezar a usar Azure. Puede administrar las

implementaciones y el uso de Azure usted mismo y obtener una


factura mensual de Microsoft por los servicios usados.
 Representante de Microsoft: la compra de Azure a través de un
representante de Microsoft está pensada para organizaciones

6 de gran tamaño o clientes que ya trabajan con uno. También


administrará las implementaciones y el uso de Azure usted

mismo y obtendrá una factura mensual de Microsoft por los


servicios usados.
 Partner de Microsoft: si compra Azure como servicio
administrado a través de su partner, este le proporcionará

acceso a Azure, administrará la facturación y proporcionará

soporte técnico.
EJERCICIO: CREACIÓN DE
UNA CUENTA DE AZURE

Para crear y usar los servicios de Azure, en primer lugar necesita

registrarse. Si nunca ha probado o pagado Azure antes, puede


registrarse para obtener la cuenta gratuita de Azure.

Para crear la cuenta gratuita de Azure necesitará una tarjeta de crédito

válida. Esta tarjeta se usa solo para validar la identidad. Hasta que

decida actualizar no se le cobrará en la tarjeta.

Registro para obtener una cuenta gratuita

7
1. En un explorador web, vaya a [Link]

2. Desplácese hacia abajo por la página para obtener más


información sobre las ventajas y los servicios gratuitos

disponibles.

3. Seleccione Comenzar gratis.

4. Inicie sesión con sus credenciales de Microsoft o de GitHub, o


cree una cuenta gratuita de Microsoft.

5. En la página Acerca de usted, seleccione su país o región


correctos. Escriba su nombre y apellido, dirección de correo

electrónico y número de teléfono. En función del país, es


posible que aparezcan otros campos, como un número de IVA.
Seleccione Siguiente para continuar.
6. En la pantalla Verificación de identidad mediante teléfono,

seleccione el código de país y escriba un número de teléfono al


que tenga acceso inmediato.

7. Tiene dos opciones para obtener un código de verificación:

mediante el envío de un SMS o con una devolución de llamada.

Seleccione el botón apropiado, escriba el código en el


cuadro Código de verificación y seleccione Comprobar
código.

8. Si el código de verificación es correcto, se le pedirá que escriba


los detalles de una tarjeta de crédito válida. Escriba la

información de la tarjeta y seleccione Siguiente.

9. El último paso es revisar el contrato y la declaración de

8 privacidad y seleccionar Registrarse.

Enhorabuena. Ha configurado correctamente una cuenta gratuita y

debería estar en la página principal de Azure Portal.


DESCRIPCIÓN DE LA
FACTURACIÓN DE AZURE
Con Azure, solo paga por lo que usa. Recibirá una factura mensual con
las instrucciones de pago proporcionadas. Puede organizar la factura

en elementos de línea que tengan sentido para usted y cumplan sus


necesidades de presupuesto y de seguimiento de costos. También

puede realizar la configuración para varias facturas. Veamos cómo


funciona esto.

Suscripción de Azure

Al registrarse, se crea una suscripción de Azure de forma


9
predeterminada. Una suscripción de Azure es un contenedor lógico
que se usa para aprovisionar recursos en Azure. Contiene los detalles

de todos los recursos, como máquinas virtuales, bases de datos, etc.


Cuando se crea un recurso de Azure como una máquina virtual, se
identifica la suscripción a la que pertenece. A medida que se usa la

máquina virtual, el uso de esta se agrega y se factura mensualmente.

Creación de una suscripción de Azure adicional

Es posible que quiera crear suscripciones adicionales para fines de


administración de facturación o de recursos. Por ejemplo, puede optar
por crear suscripciones adicionales para separar lo siguiente:

 Entornos: cuando administra sus recursos, puede optar por


crear suscripciones con el fin de configurar entornos

independientes para el desarrollo y las pruebas, para seguridad


o para aislar los datos por motivos de cumplimiento. Esto es

especialmente útil porque el control de acceso a los recursos se


produce en el nivel de suscripción.

 Estructuras organizativas: puede crear suscripciones para

reflejar las distintas estructuras organizativas. Por ejemplo,


podría limitar un equipo a recursos de bajo costo, al tiempo que

permite que el departamento de TI tenga un alcance completo.


Este diseño permite administrar y controlar el acceso a los
recursos que los usuarios aprovisionan en cada suscripción.

 Facturación: es posible que también quiera crear suscripciones


adicionales para fines de facturación. Dado que los costos se
agregan primero en el nivel de suscripción, es posible que

quiera crear suscripciones para administrar y realizar un


10
seguimiento de los costos en función de sus necesidades. Por

ejemplo, puede que quiera crear una suscripción para las cargas
de trabajo de producción y otra suscripción para las cargas de
trabajo de desarrollo y pruebas.

Es posible que también necesite suscripciones adicionales debido a lo

siguiente:

 Límites de suscripción: las suscripciones se enlazan a algunas


limitaciones de hardware. Por ejemplo, el número máximo de
circuitos ExpressRoute por cada suscripción es de 10. Esos

límites se deben tener en consideración al crear suscripciones


en la cuenta. Si en escenarios concretos hay que superar esos

límites, es posible que se necesiten suscripciones adicionales.


Personalización de la facturación para satisfacer sus necesidades

Si tiene varias suscripciones, puede organizarlas en secciones de la

factura. Cada sección de la factura es un elemento de línea en la factura


que muestra los cargos en los que se incurre ese mes. Por ejemplo,

puede que necesite una única factura para la organización, pero quiere

organizar los cargos por departamento, equipo o proyecto.

En función de sus necesidades, se pueden configurar varias facturas


dentro de la misma cuenta de facturación. Para ello, cree perfiles de

facturación adicionales. Cada perfil de facturación contiene su propia


factura mensual y método de pago.

En el diagrama siguiente se muestra información general sobre cómo


se estructura la facturación. Si ya se ha suscrito a Azure o si su

11 organización tiene un Contrato Enterprise, la facturación podría estar


configurada de forma distinta.
OPCIONES DE SOPORTE
TÉCNICO DE AZURE
Si tiene preguntas sobre los servicios de Azure o tiene curiosidad
sobre sus capacidades, tenemos una serie de recursos que le ayudarán

a encontrar respuestas a sus preguntas. Echemos un vistazo a estos


recursos de soporte técnico.

Recursos gratuitos de soporte técnico de Azure

Tiene acceso ininterrumpido a la documentación en línea, el soporte


técnico de la comunidad y los nuevos vídeos de demostración de

capacidades de Azure en el canal de YouTube. Estos vídeos de


12
demostración, creados por ingenieros de Azure, están disponibles en
Azure Friday, Microsoft Mechanics y en las listas de reproducción de

vídeos de procedimientos de Azure Portal. Como cliente de Azure,


también están disponibles los siguientes recursos gratuitos de soporte
técnico.

 Soporte técnico de administración de facturas y suscripciones

 El Centro de inicio rápido de Azure es una experiencia guiada

en Azure Portal disponible para cualquier usuario que quiera

mejorar sus conocimientos de Azure.

 Azure Service Health ofrece información sobre las incidencias

relacionadas con los servicios de Azure.


 Azure Advisor ofrece recomendaciones personalizadas sobre

cómo optimizar el costo y el rendimiento.

Planes de soporte técnico de Azure

Azure ofrece a los clientes soporte técnico reactivo y proactivo. Elija el


plan de soporte técnico que mejor se adapte a sus necesidades. Puede

comprar el plan de soporte técnico en el sitio web de Azure o en

Azure Portal. Si trabaja con un asociado o representante de Microsoft,


puede comprar a través de ellos un plan de soporte técnico. Microsoft

también proporciona planes de soporte técnico que abarcan Azure,


Office 365 y Dynamics 365. Póngase en contacto con su representante
o asociado de Microsoft para que le proporcione información más
detallada.

13
Developer Standard Professional

Direct

Más Cargas de Cargas de Cargas de

adecuado trabajo no trabajo de trabajo


para críticas producción críticas para
la empresa

Soporte Respuesta en Respuesta en Respuesta en

técnico un día una hora una hora y


reactivo laborable para casos seguimiento
críticos prioritario de

casos críticos

Soporte No aplicable No aplicable Acceso a un


14
técnico grupo de

proactivo expertos
técnicos

Para obtener la lista completa, vea Planes de Soporte técnico de Azure.

Soporte técnico de la comunidad de Azure

Formule preguntas, obtenga respuestas y póngase en contacto con


ingenieros de Microsoft y expertos de la comunidad.

Canal Descripción

Centro de conocimientos de El Centro de conocimientos de


Azure Azure es una base de datos que

permite búsquedas y que


contiene respuestas a preguntas
comunes de soporte técnico.

Microsoft Tech Community Lea las respuestas a preguntas


técnicas sobre Azure de

desarrolladores y evaluadores de

Microsoft para recibir ayuda.

Stack Overflow Puede revisar las respuestas a


preguntas de la comunidad de
desarrollo.

Server Fault Revise las respuestas de la


comunidad a preguntas sobre

administración de sistemas y
15 redes de Azure.

Foro de comentarios de Azure Lea las ideas y sugerencias para


mejorar Azure realizadas por
usuarios de Azure.

Twitter Publique un tweet con

@AzureSupport para obtener


respuestas y soporte técnico del

canal oficial de Microsoft Azure


en Twitter.
1

Introducción a Azure IoT


Edge
BIENVENIDA
Explique las características esenciales de IoT Edge y la funcionalidad de
sus componentes (módulos, entorno de ejecución e interfaz en la

nube). Caracterice los tipos de problemas que puede resolver con IoT
Edge. Describa cómo se pueden combinar los elementos de IoT Edge

para solucionar el problema de la implementación de aplicaciones de


IoT en la nube.

En este módulo, aprenderá a:

2  Evaluar situaciones en las que IoT Edge puede ayudar en la


implementación de aplicaciones de IoT en la nube
 Describir los componentes de IoT Edge

 Enumerar las funciones de IoT Edge para las soluciones de IoT


en la nube

Requisitos previos

 Conocimientos básicos de las aplicaciones IoT e IoT Hub

Introducción 2 min

¿Qué es IoT Edge? 5 min

Funcionamiento de IoT Edge 7 min

Cuándo se debe usar IoT Edge 8 min


Prueba de conocimientos 5 min

Resumen 2 min

3
INTRODUCCIÓN
La nube ha hecho que los costos de almacenamiento y proceso sean

asequibles para los desarrolladores de IoT. En el caso más simple, los


dispositivos IoT se conectan a la nube, donde conservan los datos de

IoT. Pero no siempre se pueden administrar todos los datos de IoT en


la nube. A menudo se necesitan tiempos de respuesta rápidos,

especialmente para aplicaciones críticas. Si almacena todos los datos


en la nube, el recorrido de ida y vuelta a la nube provocaría una latencia

alta y el aumento de los tiempos de respuesta.

Azure IoT Edge acerca la capacidad de proceso al origen de los datos,


4
es decir, a los dispositivos perimetrales. IoT Edge proporciona la

capacidad de trasladar las cargas de trabajo de la nube al perímetro. Al

hacerlo, IoT Edge supera los problemas de latencia y tiempos de


respuesta.

La capacidad de trasladar cargas de trabajo de procesos a dispositivos

perimetrales proporciona otras ventajas, como la implementación de


aplicaciones de inteligencia artificial en dispositivos perimetrales. Los

modelos de aprendizaje automático se pueden entrenar en la nube y

luego implementarse en dispositivos perimetrales. IoT Edge también


proporciona la capacidad de ejecutarse en modo sin conexión y
proporciona la seguridad subyacente para las operaciones confiables

en estos casos.
Imagine que es un médico especializado en el tratamiento de la

diabetes. Quiere supervisar el nivel de glucosa en sangre del paciente


y avisarle cuando los cambios sean preocupantes para su salud. En este

caso, el dispositivo IoT Edge supervisa el nivel de glucosa del paciente

y almacena los datos en el propio dispositivo. El dispositivo inserta los


datos resumidos del perímetro a la nube. Los algoritmos que se
ejecutan en el dispositivo ayudan a supervisar los cambios en los
niveles de glucosa, lo que podría dar lugar a un problema. Si los niveles

de glucosa son preocupantes, el médico recibe una alerta del algoritmo


que se ejecuta en el dispositivo IoT Edge. La alarma se puede generar
rápidamente en respuesta al cambio de los niveles de glucosa porque

el algoritmo se ejecuta en el dispositivo perimetral. Por tanto, no

5 necesita conectarse a la nube, con lo que se evita el recorrido de ida y


vuelta de los datos a la nube, es decir, el tiempo de latencia. Esta

notificación permite al médico responder al paciente de forma


inmediata. El dispositivo también se encarga de situaciones en las que
la conectividad es deficiente. Los datos se almacenan de forma segura

en el dispositivo.
6

Este módulo forma parte de la ruta de aprendizaje de ingeniería de


inteligencia artificial y dispositivos perimetrales. En este módulo se

exploran temas basados en ingeniería como la informática perimetral,

la seguridad y la implementación y administración a gran escala de

tiempos de respuesta en función de las restricciones del sistema y los


dispositivos.
Objetivos de aprendizaje
En este módulo, aprenderá a:

 valuar situaciones en las que IoT Edge puede ayudar en la


implementación de aplicaciones de IoT en la nube

 Describir los componentes de IoT Edge


 Enumerar las funciones de IoT Edge para las soluciones de IoT
7
en la nube

Requisitos previos
 Conocimientos básicos de las aplicaciones IoT e IoT Hub
¿Qué es IoT Edge?
Azure IoT Edge es una combinación de un servicio en la nube que se

ejecuta en la nube y un entorno de ejecución que se ejecuta en el


dispositivo. El entorno de ejecución inicia y administra los flujos de

trabajo en el dispositivo. El flujo de trabajo consta de un conjunto de

contenedores vinculados en un orden específico para crear un


escenario de un extremo a otro. La instancia de IoT Hub administra IoT
Edge. Azure IoT Edge permite ejecutar cargas de trabajo en el
dispositivo perimetral, que se desarrollan mediante servicios en la
nube. La carga de trabajo es un módulo implementado mediante
contenedores compatibles con Docker. Los módulos pueden ser
8
aplicaciones de inteligencia artificial, servicios de Azure y de terceros,
o la lógica de negocios.

IoT Edge le permite:

Reaccionar casi en tiempo real a los cambios locales: como puede

implementar algunas funcionales en el perímetro, el dispositivo dedica


menos tiempo a comunicarse con la nube. Por tanto, el dispositivo

puede reaccionar rápidamente a los cambios locales mediante el

procesamiento de los datos en el dispositivo y la reducción de la


latencia. Además, cuando los módulos se ejecutan de forma local,
pueden tener la opción de usar hardware especializado, como una

matriz de puerta programable de campo.


Administrar dispositivos perimetrales: IoT Edge proporciona una

interfaz en la nube y un módulo de entorno de ejecución, que permite

administrar de forma remota e implementar cargas de trabajo en

dispositivos perimetrales a través de la instancia de IoT Hub.

Implementar mediante contenedores: IoT Edge le permite usar


contenedores compatibles con Docker para ejecutar la lógica de

negocios en el perímetro.

Implementar con hardware seguro y certificado: IoT Edge permite

acceder a hardware de IoT Edge certificado en dispositivos Linux o


Windows que admiten motores de contenedor.

Distribuir cargas de trabajo de inteligencia artificial y análisis en el

perímetro: IoT Edge le permite implementar modelos creados y


9
entrenados en la nube y ejecutarlos en dispositivos perimetrales. IoT
Edge usa el modelo para procesar los datos de forma local y responder
al evento rápidamente.

Usar conjuntos de aptitudes y código de desarrollador

existentes: el código de IoT Edge admite lenguajes como C, C#, Java,

[Link] y Python.

Administrar datos para reducir costos: los dispositivos IoT Edge

capturan una gran cantidad de datos, pero normalmente solo necesita


una pequeña parte de esos datos para su análisis posterior. Si envía

todos los datos a la nube, el usuario incurrirá en costos de transporte


y almacenamiento. IoT Edge reduce los costos, ya que solo le permite

enviar un segmento de los datos según sea necesario. También puede


enviar datos agregados a la nube. El envío de datos agregados a la
nube reduce los costos generales de administración y transporte de los

datos mediante costos reducidos de almacenamiento y ancho de


banda.

Operar de forma confiable sin conexión o en modo intermitente: a

menudo, los dispositivos IoT necesitan trabajar con conectividad


intermitente o sin conexión con la nube. La funcionalidad de

administración de dispositivos IoT Edge sincroniza automáticamente el


estado más reciente de los dispositivos una vez que se han

reconectado a la nube para garantizar el funcionamiento sin


problemas.

Proporcionar seguridad para las implementaciones

perimetrales: IoT Edge proporciona seguridad de varias maneras. Al

10 trabajar con IoT Hub, se puede garantizar que solo los dispositivos
correctos se puedan comunicar entre sí y tengan instalado el software

adecuado. IoT Edge puede proporcionar seguridad adicional mediante

la integración con Azure Security Center. Además, IoT Edge puede


hacer uso de los módulos de seguridad de hardware disponibles para
proporcionar conexiones autenticadas seguras para la informática
confidencial.

Garantizar la privacidad para las implementaciones de IoT: IoT


Edge puede proteger los datos relacionados con las personas. Los

datos relacionados con las personas se pueden limpiar antes de


enviarlos a la nube, para ofrecer una mejor protección de la privacidad.

Al almacenar los datos de forma local, puede cumplir mejor las


regulaciones de seguridad, confidencialidad y privacidad.
Actuar como puerta de enlace: IoT Edge puede funcionar como

puerta de enlace de protocolo y, por tanto, proporcionar conectividad

y análisis perimetral a dispositivos IoT que, de lo contrario, no tendrían

estas funcionalidades.

Disponibilidad de módulos de terceros: puede usar módulos de

terceros de Azure Marketplace para reducir el tiempo de


comercialización y mejorar la solidez de la solución de software en el

perímetro.

11
Funcionamiento de IoT
Edge
Azure IoT Edge consta de tres componentes:

Los módulos de IoT Edge son unidades de ejecución implementadas

como contenedores compatibles con Docker. Los módulos de IoT Edge


pueden ejecutar lógica de negocios en los dispositivos perimetrales.

Los módulos de IoT Edge pueden ejecutar servicios de Azure, de


terceros o código propio. Se implementan en dispositivos IoT Edge y
se ejecutan de forma local en ellos. Puede configurar los módulos para
12
que se comuniquen entre sí a fin de crear una canalización para el
procesamiento de los datos. Si es necesario, los módulos se pueden

ejecutar sin conexión.

El entorno de ejecución de Azure IoT Edge se ejecuta en todos los

dispositivos IoT Edge y administra el entorno de ejecución y la


comunicación de los módulos implementados en cada dispositivo. El

entorno de ejecución de Azure IoT Edge garantiza que los módulos


siempre están en ejecución y notifica el estado del módulo a la nube.

El entorno de ejecución realiza varias funciones:

 Instalación y actualización de cargas de trabajo


 Mantenimiento de los estándares de seguridad de IoT Edge
 Administración de la comunicación entre los dispositivos de

hoja de nivel inferior y el dispositivo IoT Edge


 Administración de la comunicación entre los módulos de un
dispositivo IoT Edge y de las comunicaciones entre un
dispositivo IoT Edge y la nube.

La interfaz en la nube de IoT Edge permite supervisar y administrar

los dispositivos IoT Edge de forma remota. Si la solución ejecuta un


conjunto diverso de dispositivos a escala, puede crear y configurar una

carga de trabajo para que se ejecute en un tipo específico de


dispositivo. Después, tendrá que implementar la carga de trabajo en

un conjunto de dispositivos de ese tipo. Una vez que se ejecuten los


dispositivos, debe supervisar las cargas de trabajo de forma
13
centralizada. La interfaz en la nube de IoT Edge le permite administrar
este ciclo de vida global a escala para un conjunto diverso de
dispositivos, que podrían estar dispersos geográficamente.

Resulta difícil administrar el ciclo de vida de software de millones de


dispositivos IoT que, con frecuencia, tienen marcas y modelos

diferentes, o se encuentran en distintas ubicaciones. Las cargas de


trabajo se crean y configuran para un determinado tipo de dispositivo,
se implementan en todos los dispositivos y se supervisan para detectar

los comportamientos incorrectos de los dispositivos. Estas actividades

no se pueden realizar en cada dispositivo y deben realizarse a escala.

Considere el caso de la implementación de procesamiento de eventos

complejos o aprendizaje automático en dispositivos perimetrales. Si


quiere implementar aprendizaje automático en dispositivos
perimetrales, primero debe entrenar el modelo en la nube. Después de

entrenar el modelo, tendrá que implementar el modelo entrenado en


una amplia gama de dispositivos perimetrales a menudo separados
geográficamente. Una vez implementados, estos modelos se suelen

ejecutar sin conexión en el dispositivo. También tendrá que actualizar


el modelo de manera periódica. Al encapsular los modelos en

contenedores compatibles con Docker, IoT Edge puede administrar el


ciclo de implementación de un extremo a otro para el aprendizaje

automático en IoT. El entorno de ejecución de Azure IoT Edge y la


interfaz en la nube pueden supervisar el estado de los módulos de
aprendizaje automático.

Sin IoT Edge, el desarrollador tendría que crear la funcionalidad


agregada para el mantenimiento del módulo.

14
Cuándo se debe usar IoT
Edge

En esta sección, se explica cómo puede decidir si IoT Edge es la

solución adecuada para usted. El enfoque de la elección se realizará


desde la perspectiva de una gran empresa que planea una
implementación de IoT.

¿La aplicación necesita reaccionar rápidamente a


15
los cambios locales casi en tiempo real? IoT Edge

Respuesta casi en puede ejecutar módulos de forma local en


tiempo real a los dispositivos IoT Edge para permitir una respuesta

cambios locales más rápida a los cambios locales.

¿Es necesario implementar la aplicación en


contenedores compatibles con Docker en

dispositivos IoT Edge? IoT Edge permite usar


contenedores para ejecutar la lógica en IoT Edge.

Implementación y Los contenedores facilitan la administración de las


administración dependencias de software como los entornos de

mediante contenedores ejecución y las bibliotecas, lo que garantiza que la


para dispositivos IoT aplicación se ejecute de forma coherente donde se

Edge implemente.
La falta de seguridad para los dispositivos IoT es
una barrera importante para la entrada de muchas
empresas. IoT Edge proporciona seguridad de

varias maneras. Entre ellas se incluye la integración


Seguridad para las
con Azure Security Center y el uso de módulos de
implementaciones de
seguridad de hardware para proporcionar
IoT Edge
conexiones autenticadas seguras para la

informática confidencial.

¿La aplicación necesita funcionar con conectividad


intermitente o sin conexión? Los dispositivos IoT

Edge sincronizan automáticamente el estado más


Funcionamiento sin reciente de los dispositivos una vez que se han

16 conexión o en modo reconectado a la nube para garantizar el


intermitente funcionamiento sin problemas.

¿Necesita ejecutar algoritmos de aprendizaje


Cargas de trabajo de
automático en dispositivos IoT Edge? IoT Edge le
inteligencia artificial y
permite implementar modelos creados y
análisis en IoT Edge
entrenados en la nube y ejecutarlos en dispositivos
IoT Edge.

La administración de los costos en la


implementación de recursos en la nube es

fundamental. Puede diseñar el sistema de forma


que los datos enviados a la nube se reduzcan

Optimización de los mediante el procesamiento previo en los

costos de datos dispositivos IoT Edge.


¿Necesita garantizar el cumplimiento de las normas
Privacidad para las
de privacidad? IoT Edge puede proteger los datos
implementaciones de
de identificación personal y mantener los datos
IoT Edge
locales para de ese modo mejorar el cumplimiento

normativo.

17
1

Introducción a Azure IoT


Edge
BIENVENIDA
Explique las características esenciales de IoT Edge y la funcionalidad de
sus componentes (módulos, entorno de ejecución e interfaz en la

nube). Caracterice los tipos de problemas que puede resolver con IoT
Edge. Describa cómo se pueden combinar los elementos de IoT Edge

para solucionar el problema de la implementación de aplicaciones de


IoT en la nube.

En este módulo, aprenderá a:

2  Evaluar situaciones en las que IoT Edge puede ayudar en la


implementación de aplicaciones de IoT en la nube
 Describir los componentes de IoT Edge

 Enumerar las funciones de IoT Edge para las soluciones de IoT


en la nube

Requisitos previos

 Conocimientos básicos de las aplicaciones IoT e IoT Hub

Introducción 2 min

¿Qué es IoT Edge? 5 min

Funcionamiento de IoT Edge 7 min

Cuándo se debe usar IoT Edge 8 min


Prueba de conocimientos 5 min

Resumen 2 min

3
INTRODUCCIÓN
La nube ha hecho que los costos de almacenamiento y proceso sean

asequibles para los desarrolladores de IoT. En el caso más simple, los


dispositivos IoT se conectan a la nube, donde conservan los datos de

IoT. Pero no siempre se pueden administrar todos los datos de IoT en


la nube. A menudo se necesitan tiempos de respuesta rápidos,

especialmente para aplicaciones críticas. Si almacena todos los datos


en la nube, el recorrido de ida y vuelta a la nube provocaría una latencia

alta y el aumento de los tiempos de respuesta.

Azure IoT Edge acerca la capacidad de proceso al origen de los datos,


4
es decir, a los dispositivos perimetrales. IoT Edge proporciona la

capacidad de trasladar las cargas de trabajo de la nube al perímetro. Al

hacerlo, IoT Edge supera los problemas de latencia y tiempos de


respuesta.

La capacidad de trasladar cargas de trabajo de procesos a dispositivos

perimetrales proporciona otras ventajas, como la implementación de


aplicaciones de inteligencia artificial en dispositivos perimetrales. Los

modelos de aprendizaje automático se pueden entrenar en la nube y

luego implementarse en dispositivos perimetrales. IoT Edge también


proporciona la capacidad de ejecutarse en modo sin conexión y
proporciona la seguridad subyacente para las operaciones confiables

en estos casos.
Imagine que es un médico especializado en el tratamiento de la

diabetes. Quiere supervisar el nivel de glucosa en sangre del paciente


y avisarle cuando los cambios sean preocupantes para su salud. En este

caso, el dispositivo IoT Edge supervisa el nivel de glucosa del paciente

y almacena los datos en el propio dispositivo. El dispositivo inserta los


datos resumidos del perímetro a la nube. Los algoritmos que se
ejecutan en el dispositivo ayudan a supervisar los cambios en los
niveles de glucosa, lo que podría dar lugar a un problema. Si los niveles

de glucosa son preocupantes, el médico recibe una alerta del algoritmo


que se ejecuta en el dispositivo IoT Edge. La alarma se puede generar
rápidamente en respuesta al cambio de los niveles de glucosa porque

el algoritmo se ejecuta en el dispositivo perimetral. Por tanto, no

5 necesita conectarse a la nube, con lo que se evita el recorrido de ida y


vuelta de los datos a la nube, es decir, el tiempo de latencia. Esta

notificación permite al médico responder al paciente de forma


inmediata. El dispositivo también se encarga de situaciones en las que
la conectividad es deficiente. Los datos se almacenan de forma segura

en el dispositivo.
6

Este módulo forma parte de la ruta de aprendizaje de ingeniería de


inteligencia artificial y dispositivos perimetrales. En este módulo se

exploran temas basados en ingeniería como la informática perimetral,

la seguridad y la implementación y administración a gran escala de

tiempos de respuesta en función de las restricciones del sistema y los


dispositivos.
Objetivos de aprendizaje
En este módulo, aprenderá a:

 valuar situaciones en las que IoT Edge puede ayudar en la


implementación de aplicaciones de IoT en la nube

 Describir los componentes de IoT Edge


 Enumerar las funciones de IoT Edge para las soluciones de IoT
7
en la nube

Requisitos previos
 Conocimientos básicos de las aplicaciones IoT e IoT Hub
¿Qué es IoT Edge?
Azure IoT Edge es una combinación de un servicio en la nube que se

ejecuta en la nube y un entorno de ejecución que se ejecuta en el


dispositivo. El entorno de ejecución inicia y administra los flujos de

trabajo en el dispositivo. El flujo de trabajo consta de un conjunto de

contenedores vinculados en un orden específico para crear un


escenario de un extremo a otro. La instancia de IoT Hub administra IoT
Edge. Azure IoT Edge permite ejecutar cargas de trabajo en el
dispositivo perimetral, que se desarrollan mediante servicios en la
nube. La carga de trabajo es un módulo implementado mediante
contenedores compatibles con Docker. Los módulos pueden ser
8
aplicaciones de inteligencia artificial, servicios de Azure y de terceros,
o la lógica de negocios.

IoT Edge le permite:

Reaccionar casi en tiempo real a los cambios locales: como puede

implementar algunas funcionales en el perímetro, el dispositivo dedica


menos tiempo a comunicarse con la nube. Por tanto, el dispositivo

puede reaccionar rápidamente a los cambios locales mediante el

procesamiento de los datos en el dispositivo y la reducción de la


latencia. Además, cuando los módulos se ejecutan de forma local,
pueden tener la opción de usar hardware especializado, como una

matriz de puerta programable de campo.


Administrar dispositivos perimetrales: IoT Edge proporciona una

interfaz en la nube y un módulo de entorno de ejecución, que permite

administrar de forma remota e implementar cargas de trabajo en

dispositivos perimetrales a través de la instancia de IoT Hub.

Implementar mediante contenedores: IoT Edge le permite usar


contenedores compatibles con Docker para ejecutar la lógica de

negocios en el perímetro.

Implementar con hardware seguro y certificado: IoT Edge permite

acceder a hardware de IoT Edge certificado en dispositivos Linux o


Windows que admiten motores de contenedor.

Distribuir cargas de trabajo de inteligencia artificial y análisis en el

perímetro: IoT Edge le permite implementar modelos creados y


9
entrenados en la nube y ejecutarlos en dispositivos perimetrales. IoT
Edge usa el modelo para procesar los datos de forma local y responder
al evento rápidamente.

Usar conjuntos de aptitudes y código de desarrollador

existentes: el código de IoT Edge admite lenguajes como C, C#, Java,

[Link] y Python.

Administrar datos para reducir costos: los dispositivos IoT Edge

capturan una gran cantidad de datos, pero normalmente solo necesita


una pequeña parte de esos datos para su análisis posterior. Si envía

todos los datos a la nube, el usuario incurrirá en costos de transporte


y almacenamiento. IoT Edge reduce los costos, ya que solo le permite

enviar un segmento de los datos según sea necesario. También puede


enviar datos agregados a la nube. El envío de datos agregados a la
nube reduce los costos generales de administración y transporte de los

datos mediante costos reducidos de almacenamiento y ancho de


banda.

Operar de forma confiable sin conexión o en modo intermitente: a

menudo, los dispositivos IoT necesitan trabajar con conectividad


intermitente o sin conexión con la nube. La funcionalidad de

administración de dispositivos IoT Edge sincroniza automáticamente el


estado más reciente de los dispositivos una vez que se han

reconectado a la nube para garantizar el funcionamiento sin


problemas.

Proporcionar seguridad para las implementaciones

perimetrales: IoT Edge proporciona seguridad de varias maneras. Al

10 trabajar con IoT Hub, se puede garantizar que solo los dispositivos
correctos se puedan comunicar entre sí y tengan instalado el software

adecuado. IoT Edge puede proporcionar seguridad adicional mediante

la integración con Azure Security Center. Además, IoT Edge puede


hacer uso de los módulos de seguridad de hardware disponibles para
proporcionar conexiones autenticadas seguras para la informática
confidencial.

Garantizar la privacidad para las implementaciones de IoT: IoT


Edge puede proteger los datos relacionados con las personas. Los

datos relacionados con las personas se pueden limpiar antes de


enviarlos a la nube, para ofrecer una mejor protección de la privacidad.

Al almacenar los datos de forma local, puede cumplir mejor las


regulaciones de seguridad, confidencialidad y privacidad.
Actuar como puerta de enlace: IoT Edge puede funcionar como

puerta de enlace de protocolo y, por tanto, proporcionar conectividad

y análisis perimetral a dispositivos IoT que, de lo contrario, no tendrían

estas funcionalidades.

Disponibilidad de módulos de terceros: puede usar módulos de

terceros de Azure Marketplace para reducir el tiempo de


comercialización y mejorar la solidez de la solución de software en el

perímetro.

11
Funcionamiento de IoT
Edge
Azure IoT Edge consta de tres componentes:

Los módulos de IoT Edge son unidades de ejecución implementadas

como contenedores compatibles con Docker. Los módulos de IoT Edge


pueden ejecutar lógica de negocios en los dispositivos perimetrales.

Los módulos de IoT Edge pueden ejecutar servicios de Azure, de


terceros o código propio. Se implementan en dispositivos IoT Edge y
se ejecutan de forma local en ellos. Puede configurar los módulos para
12
que se comuniquen entre sí a fin de crear una canalización para el
procesamiento de los datos. Si es necesario, los módulos se pueden

ejecutar sin conexión.

El entorno de ejecución de Azure IoT Edge se ejecuta en todos los

dispositivos IoT Edge y administra el entorno de ejecución y la


comunicación de los módulos implementados en cada dispositivo. El

entorno de ejecución de Azure IoT Edge garantiza que los módulos


siempre están en ejecución y notifica el estado del módulo a la nube.

El entorno de ejecución realiza varias funciones:

 Instalación y actualización de cargas de trabajo


 Mantenimiento de los estándares de seguridad de IoT Edge
 Administración de la comunicación entre los dispositivos de

hoja de nivel inferior y el dispositivo IoT Edge


 Administración de la comunicación entre los módulos de un
dispositivo IoT Edge y de las comunicaciones entre un
dispositivo IoT Edge y la nube.

La interfaz en la nube de IoT Edge permite supervisar y administrar

los dispositivos IoT Edge de forma remota. Si la solución ejecuta un


conjunto diverso de dispositivos a escala, puede crear y configurar una

carga de trabajo para que se ejecute en un tipo específico de


dispositivo. Después, tendrá que implementar la carga de trabajo en

un conjunto de dispositivos de ese tipo. Una vez que se ejecuten los


dispositivos, debe supervisar las cargas de trabajo de forma
13
centralizada. La interfaz en la nube de IoT Edge le permite administrar
este ciclo de vida global a escala para un conjunto diverso de
dispositivos, que podrían estar dispersos geográficamente.

Resulta difícil administrar el ciclo de vida de software de millones de


dispositivos IoT que, con frecuencia, tienen marcas y modelos

diferentes, o se encuentran en distintas ubicaciones. Las cargas de


trabajo se crean y configuran para un determinado tipo de dispositivo,
se implementan en todos los dispositivos y se supervisan para detectar

los comportamientos incorrectos de los dispositivos. Estas actividades

no se pueden realizar en cada dispositivo y deben realizarse a escala.

Considere el caso de la implementación de procesamiento de eventos

complejos o aprendizaje automático en dispositivos perimetrales. Si


quiere implementar aprendizaje automático en dispositivos
perimetrales, primero debe entrenar el modelo en la nube. Después de

entrenar el modelo, tendrá que implementar el modelo entrenado en


una amplia gama de dispositivos perimetrales a menudo separados
geográficamente. Una vez implementados, estos modelos se suelen

ejecutar sin conexión en el dispositivo. También tendrá que actualizar


el modelo de manera periódica. Al encapsular los modelos en

contenedores compatibles con Docker, IoT Edge puede administrar el


ciclo de implementación de un extremo a otro para el aprendizaje

automático en IoT. El entorno de ejecución de Azure IoT Edge y la


interfaz en la nube pueden supervisar el estado de los módulos de
aprendizaje automático.

Sin IoT Edge, el desarrollador tendría que crear la funcionalidad


agregada para el mantenimiento del módulo.

14
Cuándo se debe usar IoT
Edge

En esta sección, se explica cómo puede decidir si IoT Edge es la

solución adecuada para usted. El enfoque de la elección se realizará


desde la perspectiva de una gran empresa que planea una
implementación de IoT.

¿La aplicación necesita reaccionar rápidamente a


15
los cambios locales casi en tiempo real? IoT Edge

Respuesta casi en puede ejecutar módulos de forma local en


tiempo real a los dispositivos IoT Edge para permitir una respuesta

cambios locales más rápida a los cambios locales.

¿Es necesario implementar la aplicación en


contenedores compatibles con Docker en

dispositivos IoT Edge? IoT Edge permite usar


contenedores para ejecutar la lógica en IoT Edge.

Implementación y Los contenedores facilitan la administración de las


administración dependencias de software como los entornos de

mediante contenedores ejecución y las bibliotecas, lo que garantiza que la


para dispositivos IoT aplicación se ejecute de forma coherente donde se

Edge implemente.
La falta de seguridad para los dispositivos IoT es
una barrera importante para la entrada de muchas
empresas. IoT Edge proporciona seguridad de

varias maneras. Entre ellas se incluye la integración


Seguridad para las
con Azure Security Center y el uso de módulos de
implementaciones de
seguridad de hardware para proporcionar
IoT Edge
conexiones autenticadas seguras para la

informática confidencial.

¿La aplicación necesita funcionar con conectividad


intermitente o sin conexión? Los dispositivos IoT

Edge sincronizan automáticamente el estado más


Funcionamiento sin reciente de los dispositivos una vez que se han

16 conexión o en modo reconectado a la nube para garantizar el


intermitente funcionamiento sin problemas.

¿Necesita ejecutar algoritmos de aprendizaje


Cargas de trabajo de
automático en dispositivos IoT Edge? IoT Edge le
inteligencia artificial y
permite implementar modelos creados y
análisis en IoT Edge
entrenados en la nube y ejecutarlos en dispositivos
IoT Edge.

La administración de los costos en la


implementación de recursos en la nube es

fundamental. Puede diseñar el sistema de forma


que los datos enviados a la nube se reduzcan

Optimización de los mediante el procesamiento previo en los

costos de datos dispositivos IoT Edge.


¿Necesita garantizar el cumplimiento de las normas
Privacidad para las
de privacidad? IoT Edge puede proteger los datos
implementaciones de
de identificación personal y mantener los datos
IoT Edge
locales para de ese modo mejorar el cumplimiento

normativo.

17
1

Clasificación y moderación
de texto con Azure Content
Moderator
BIENVENIDA
En este módulo, se presentará Azure Content Moderator y se mostrará

cómo usarlo para la moderación de texto.

En este módulo, aprenderá a:

• Conocer en qué consiste la moderación de contenido de texto.

• Obtener información sobre las características clave de Azure


Content Moderator para la moderación de texto.

• Probar la moderación de texto con la consola de prueba de API


basada en web.

2
Requisitos previos

Ninguno

Introducción 1 min

Introducción a la moderación de texto 4 min

Creación de un recurso de Content Moderator y suscripción a


este 7 min

Ejercicio: Moderación de texto de prueba mediante la consola

de prueba de API 10 min

Comprobación de conocimientos 7 min

Resumen 2 min
INTRODUCCIÓN
La moderación de contenido para aspectos problemáticos puede
llevar mucho tiempo. Microsoft Azure Content Moderator proporciona
moderación asistida automáticamente de imágenes, texto y vídeo. Este
módulo abarca los conceptos clave relacionados con el uso de Content

Moderator para llevar a cabo la moderación de texto.

Nota
3

Este módulo requiere una suscripción de Azure. Los servicios que cree
y use son gratuitos, pero necesitará una suscripción activa o una
versión de prueba para completar los ejercicios. Si no tiene una
suscripción a Azure, cree una cuenta gratuita antes de empezar.

Objetivos de aprendizaje

En este módulo aprenderá a hacer lo siguiente:

• Conocer en qué consiste la moderación de contenido de texto.

• Obtener información sobre las características clave de Azure

Content Moderator para la moderación de texto.

• Probar la moderación de texto con la consola de prueba de API.


INTRODUCCIÓN A LA
MODERACIÓN DE TEXTO
Al usar la moderación de contenido asistida automáticamente, el

contenido se bloquea, aprueba o revisa en función de las directivas y

los umbrales. Esta asistencia automática se usa para aumentar la


moderación humana de los entornos donde socios, empleados y

consumidores generan contenido de texto. Entre estos entornos se


incluyen los siguientes:

 Salas de chat
 Paneles de discusión

4  Bots de chat
 Catálogos de comercio electrónico
 Documentos

La respuesta de Text Moderation API incluye la información siguiente:

 Una lista de palabras potencialmente no deseadas que se


encuentran en el texto.

 El tipo de palabras potencialmente no deseadas.


 La posible información de identificación personal que se ha

encontrado.

Palabras soeces

Al pasar texto a la API, se identifican los posibles términos soeces en el

texto y se devuelven en una respuesta JSON. El elemento soez se

devuelve como un Term en la respuesta JSON, junto con un valor de


índice en el que se muestra la ubicación del término en el texto

proporcionado.

También se pueden usar listas de términos personalizadas con esta API.


En ese caso, si se identifica un término soez en el texto, también se

devuelve un valor ListId para identificar la palabra personalizada

específica que se ha encontrado. Aquí se muestra un ejemplo de una


respuesta JSON:

JSON

"Terms": [

"Index": 118,
5
"OriginalIndex": 118,

"ListId": 0,

"Term": "crap"

Clasificación

Esta característica de la API puede colocar texto en categorías


específicas según las especificaciones siguientes:

 Categoría 1: posible presencia de lenguaje que se puede


considerar sexualmente explícito o para adultos en ciertas
situaciones.
 Categoría 2: posible presencia de lenguaje que se puede

considerar sexualmente insinuante o para adultos en ciertas


situaciones.
 Categoría 3: posible presencia de lenguaje que se puede
considerar ofensivo en ciertas situaciones.

Cuando se devuelve la respuesta JSON, proporciona un valor booleano


para una revisión recomendada del texto. Si es true, debe revisar el
contenido de forma manual para determinar posibles problemas.

Cada categoría también se devuelve con una puntuación entre 0 y 1


para indicar la categoría predicha para el texto evaluado. Cuanto mayor
sea la puntuación, más probable es que se aplique la categoría en
cuestión. Aquí se muestra una respuesta JSON de ejemplo:

6 JSON

"Classification": {

"ReviewRecommended": true,

"Category1": {

"Score": 1.5113095059859916E-06

},

"Category2": {

"Score": 0.12747249007225037

},

"Category3": {
"Score": 0.98799997568130493

Información de identificación personal

La información de identificación personal es de vital importancia en

muchas aplicaciones. Esta característica de la API puede ayudarle a


detectar si algún valor del texto se considera información de
identificación personal antes de publicarlo. Entre los aspectos clave que
se detectan se incluyen los siguientes:

 Direcciones de correo electrónico

 Direcciones de correo postal de EE. UU.


7  Direcciones IP
 Números de teléfono de EE. UU.
 Números de teléfono de Reino Unido
 Números del seguro social

Si se encuentran valores que podrían ser información de identificación


personal, la respuesta JSON incluirá la información pertinente sobre el

texto y la ubicación de índice dentro del texto. Aquí se muestra un


ejemplo de una respuesta JSON:

JSON

"PII": {

"Email": [{

"Detected": "abcdef@[Link]",
"SubType": "Regular",

"Text": "abcdef@[Link]",

"Index": 32

}],

"IPA": [{

"SubType": "IPV4",

"Text": "[Link]",

"Index": 72

}],

8 "Phone": [{

"CountryCode": "US",

"Text": "5557789887",

"Index": 56

}, {

"CountryCode": "UK",

"Text": "+44 123 456 7890",

"Index": 208

}],
"Address": [{

"Text": "1 Microsoft Way, Redmond, WA 98052",

"Index": 89

}],

"SSN": [{

"Text": "999-99-9999",

"Index": 267

}]

9
CREACIÓN DE UN
RECURSO DE CONTENT
MODERATOR Y
SUSCRIPCIÓN A ESTE
Antes de empezar a probar la moderación de contenido o integrarla
en aplicaciones personalizadas, tendrá que crear un recurso de Content
Moderator, suscribirse a este y obtener la clave de suscripción para
tener acceso al servicio.

En este ejercicio, creará un recurso de Content Moderator en Azure


10 Portal.

Creación de un recurso de Content Moderator y suscripción a este

1. Inicie sesión en Azure Portal .

2. En el panel izquierdo, seleccione Crear un recurso.

3. En el cuadro de búsqueda, escriba Content Moderator y


presione ENTRAR.

4. Seleccione Content Moderator en los resultados de la


búsqueda.

5. Haga clic en Crear.

6. Escriba un nombre único para el recurso, elija una suscripción y

seleccione una ubicación cercana a usted.


7. Seleccione el plan de tarifa para este recurso y, después,

seleccione S0.

8. Cree un grupo de recursos denominado LearnRG.

9. Haga clic en Crear.

11

El recurso tardará unos minutos en implementarse. Una vez que lo haya


hecho, vaya al nuevo recurso.
Copia de la clave de suscripción

Para tener acceso al recurso de Content Moderator, necesitará una

clave de suscripción:

1. En el panel de la izquierda, en ADMINISTRACIÓN DE


RECURSOS, seleccione Claves.

2. Copie uno de los valores de las claves de suscripción para usarlo

posteriormente.

12
EJERCICIO: MODERACIÓN
DE TEXTO DE PRUEBA
MEDIANTE LA CONSOLA
DE PRUEBA DE API
Ahora que tiene un recurso disponible en Azure para la moderación
de contenido y que dispone de una clave de suscripción para ese
recurso, ejecutaremos algunas pruebas mediante la consola de prueba
de API basada en web.

1. Vaya a la página de Referencia de Content Moderator API. Esta


13 página está disponible en diferentes regiones para realizar
pruebas en la consola de API.

2. Seleccione el botón con la ubicación adecuada para la región


geográfica más cercana para abrir la consola.

3. Observe los parámetros de consulta que puede seleccionar


para la prueba. Mantenga las opciones predeterminadas para

la primera serie de pruebas.

4. Pegue la clave de suscripción en el cuadro Ocp-Apim-


Subscription-Key.
5. Mantenga el texto de ejemplo y haga clic en Enviar.
14
Evaluación de la respuesta

 Desplácese hacia abajo en la página y evalúe la respuesta de la


consola de pruebas.

En esta primera prueba se usó classification porque el

parámetro classify estaba establecido en true en la parte superior de la

página. La respuesta contiene la información siguiente:

 Se recomienda una revisión.


 El texto se ha clasificado como Categoría 3 (posible presencia

de lenguaje que se podría considerar ofensivo en ciertas


situaciones).

 El término que podría resultar ofensivo es "crap" (porquería).

Ejecución de pruebas adicionales


1. Para ejecutar la segunda prueba, desplácese hasta la parte

superior de la página y establezca el parámetro PII en true.

2. Haga clic en Enviar.


15
Observe que se muestra el contenido de información de identificación
personal. Ahora se considera que la dirección de correo electrónico, la

dirección IP, el número de teléfono, la dirección de correo postal y el


número del seguro social podrían ser información de identificación
personal.

3. Si quiere ejecutar otras pruebas, escriba algunos valores de

texto propios de un documento existente y vuelva a ejecutar las

pruebas para ver los resultados devueltos.

4. Evalúe la respuesta JSON y la sintaxis de la dirección URL de la

solicitud para analizar la manera en que las aplicaciones


personalizadas pueden llamar a esta API.

Sugerencia
Para probar esta API mediante una aplicación de C#, vea Guía de inicio

rápido: Análisis de contenido de textos para detectar material


inapropiado en C#.

16
1

Compilación de un bot de
chat de Preguntas más
frecuentes con QnA Maker y
Azure Bot Service
BIENVENIDA
Información sobre QnA Maker y su integración con un bot

En este módulo:

 Aprenderá lo que es QnA Maker.


 Obtendrá información sobre las características clave de QnA

Maker y sobre cómo crear una base de conocimiento.


 Publicará una base de conocimiento de QnA Maker.

 Integrará una base de conocimiento con un bot.

Requisitos previos

Ninguno
2

Introducción 1 min

Información general sobre QnA Maker 4 min

Ejercicio: Creación de una base de conocimientos de QnA 15

min

Ejercicio: Publicación de una base de conocimientos 5 min

Ejercicio: Integración de QnA con un bot 15 min

Prueba de conocimientos 7 min

Resumen 1 min
INTRODUCCIÓN
Un bot es un programa autónomo que interactúa con personas o con
equipos de forma previsible. El creador del bot diseña y programa la
lógica subyacente, a menudo con la ayuda de herramientas como
Microsoft Bot Framework. Microsoft también dispone de otros servicios

de inteligencia artificial, incluidos en Azure Cognitive Services, que


pueden mejorar las funcionalidades de los bots.

3 QnA Maker es uno de los servicios de inteligencia artificial que ayudan


a un bot a responder a preguntas en el lenguaje natural de los usuarios,
para lo que las hace coincidir con la mejor respuesta posible de la base

de conocimientos.

Nota

Este módulo requiere una suscripción de Azure. Los servicios que cree
y use son gratuitos, pero necesitará una suscripción activa o una

versión de prueba para completar los ejercicios. Si no tiene una

suscripción a Azure, cree una cuenta gratuita antes de empezar.

Objetivos de aprendizaje

En este módulo hará lo siguiente:

• Aprenderá lo que es QnA Maker.


• Obtendrá información sobre las características clave de QnA

Maker y sobre cómo crear una base de conocimiento.

• Publicará una base de conocimiento de QnA Maker.

• Integrará una base de conocimiento con un bot.

4
INFORMACIÓN GENERAL
SOBRE QNA MAKER
Una forma de mejorar la satisfacción de los clientes consiste en

ayudarles a encontrar rápidamente una respuesta a sus preguntas. La

información que buscan puede encontrarse en las Preguntas más


frecuentes (P+F), en la documentación de soporte técnico o en los

manuales de productos.

Las páginas de búsqueda pueden ser útiles, pero muchas


organizaciones prefieren un sistema que ofrezca una interacción más
personal con los clientes, pero sin dejar de usar mecanismos

5 automatizados. El servicio QnA Maker busca en la base de


conocimientos la respuesta que mejor se ajuste a la pregunta
formulada por el usuario en lenguaje natural. Para encontrar la

información que necesitan, los clientes pueden mantener una


conversación natural e interactiva con el servicio automatizado.

Para crear una base de conocimientos de QnA Maker, debe usar un

portal web. En el portal puede crear, administrar, entrenar y publicar su


servicio sin necesidad de tener ninguna experiencia como

desarrollador. Una vez que el servicio se publica en un punto de


conexión, una aplicación cliente como un bot de chat puede usar el

servicio para procesar una conversación con un usuario a fin de

determinar la pregunta que se ha hecho y ofrecer la mejor respuesta.

Arquitectura
Para entender los servicios que brinda QnA Maker, podemos observar

la arquitectura subyacente. Como ya se ha mencionado, se debe usar


un portal basado en web para crear la base de conocimientos. Este
portal forma parte de los servicios de administración de QnA Maker.
Los servicios de administración también proporcionan funciones para

la actualización, el entrenamiento y la publicación de la base de

conocimientos para su uso. También se pueden utilizar API basadas en


REST para administrar la base de conocimientos.

Después de crear y publicar la base de conocimientos, los datos de QnA

Maker y el runtime harán que el servicio esté disponible. Para acceder


al servicio, se usará la suscripción de Microsoft Azure en la región que
eligió durante el proceso de creación. El contenido que ha agregado a

la base de conocimientos se almacena en Azure Search y el punto de

6 conexión de acceso para las aplicaciones cliente se implementa como


un Azure App Service. Azure también permite la integración de

Application Insights en el servicio para fines de análisis.


EJERCICIO: CREACIÓN DE
UNA BASE DE
CONOCIMIENTOS DE
QNA
Vamos a crear una base de conocimientos (KB) de QnA Maker.

1. Vaya al portal de QnA Maker .

2. Haga clic en Iniciar sesión en la esquina superior derecha e


inicie sesión con sus credenciales de Azure.

7
3. A menos que ya tenga una base de conocimientos, el portal le
indicará que no tiene ninguna.

Hospedaje de una base de conocimientos

Una base de conocimientos es una colección de preguntas y respuestas


donde se pueden realizar búsquedas. Las bases de conocimientos se

hospedan en un servicio QnA, que se crea en Azure y determina la

región en la que colocará la base de conocimientos, así como

su facturación y rendimiento.
Nota

Se recomienda crear el servicio bot y el servicio QnA en la misma región

para conseguir un mayor rendimiento.

Creación de una base de conocimientos y un servicio QnA

1. En el menú ubicado en la parte superior del portal,


seleccione Create a knowledge base (Crear una base de

conocimiento).

2. Haga clic en Create a QnA service (Crear un servicio QnA). Al


seleccionar este botón, se abre Azure Portal e inicia la sesión
con las credenciales que usó anteriormente. Debe crear el

servicio QnA Maker y el servicio asociado de aplicación de


Azure que lo hospedará en este portal.
8
Nota

Antes de crear una base de conocimientos, cree también un servicio de

QnA Maker en Azure Portal.

Especificación de los detalles del servicio QnA Maker

Proporcione estos detalles para crear el servicio QnA Maker:

1. Escriba un nombre único global para el servicio QnA Maker,

como nombre-qna. Anote este nombre porque lo usará más


adelante.

2. Seleccione la suscripción de Azure.


3. Seleccione el plan de tarifa F0 para el servicio, que es el nivel

Gratis.

4. Seleccione una ubicación para el servicio, que debe estar en la


misma región que el servicio bot y cerca de su ubicación física.

5. Cree un grupo de recursos denominado LearnRG.

6. Seleccione F (tres índices), el nivel Gratis, en el plan de tarifa

de búsqueda.

7. Para la ubicación de búsqueda, seleccione la ubicación que usó


anteriormente.

8. Compruebe que el nombre de la aplicación es único en Azure.

(Si lo es, se indicará mediante una marca de verificación verde).


9
9. Seleccione la ubicación para el sitio web, que debe coincidir con

la ubicación que usó anteriormente.

10. Deshabilite App Insights, ya que no lo usará para esta prueba.

11. Haga clic en Crear.

Después de un breve proceso de implementación, se creará el recurso


para el servicio.

Conexión del servicio QnA Maker a la base de conocimientos

1. Vuelva a la pestaña del portal web de QnA Maker y actualice la


página.

2. La página se actualizará. Vaya al paso 2.


3. Las entradas del paso 2 no se habrán rellenado, pero aparecerá

un vínculo a la información de la cuenta.

4. Seleccione el identificador de directorio, el nombre de la


suscripción de Azure, así como el nombre del nuevo servicio

QnA que creó antes.

5. En el paso 3, asigne un nombre a la base de conocimientos.

Usaremos las Preguntas más frecuentes de Microsoft Bot, por


lo que puede asignarle el nombre BotFAQ.

Rellenar la base de conocimientos

Necesitamos algunos datos para nuestra base de conocimientos. Como

ejemplo, vamos a usar una página existente de Preguntas más


frecuentes.
10
1. Descargue el archivo ZIP de Preguntas más frecuentes de
Microsoft Bot y extráigalo en el equipo local.

2. En el paso 4 del proceso del portal web de QnA, haga clic


en Add file (Agregar archivo), busque el documento de Word
extraído en el paso anterior y agréguelo como origen para

rellenar la base de conocimientos.

3. En Chit-chat (Charla), seleccione The

Professional (Profesional) para agregar una personalidad


predefinida a la base de conocimientos. Chit-chat agrega

respuestas a mensajes como hola y adiós.

4. Haga clic en Create your KB (Crear la base de conocimientos).


Tras un breve tiempo, se creará la base de conocimientos y se cargará

la página de edición.

Probar la base de conocimientos

1. Para hacerse una idea de la manera en que un bot puede


responder a las preguntas, seleccione Probar en la esquina

superior derecha.

2. Se abre un panel de prueba, listo para la pregunta.

3. Escriba Hello y seleccione la tecla Entrar. QnA responderá con


un "Hello".

4. Escriba when will v3 retire? (¿Cuándo se retirará la versión 3?)

y pulse Entrar. QnA responderá con un mensaje sobre las


11 versiones y las actualizaciones de esa versión.

5. Escriba what is included in v4? (¿Qué incluye la versión 4?) y


presione Entrar. Lea la respuesta.

Para seguir probando la interacción, realice más preguntas y evalúe las


respuestas para hacerse una idea de cómo se sondea la base de
conocimientos de QnA en busca de respuestas.
EJERCICIO: PUBLICACIÓN
DE UNA BASE DE
CONOCIMIENTOS
Ahora que ya ha creado una base de conocimientos de QnA, es el

momento de publicarla para poder tener acceso a ella desde una


aplicación cliente.

1. En la página de la base de conocimientos de QnA Maker en la

que realizó las pruebas en el ejercicio anterior, haga clic

en PUBLICAR en el menú situado en la parte superior de la


página.
12
2. Lea el mensaje en la página siguiente. Indica que la base de
conocimientos pasará de pruebas a producción. También

señala que la base de conocimientos estará disponible como un


punto de conexión que puede usar en bots y aplicaciones.

3. Haga clic en Publicar.

4. Al poco tiempo aparecerá un mensaje de confirmación (si no se

producen errores).

5. Anote la información de la dirección URL que se muestra. Puede


usar la información proporcionada para probar la base de
conocimientos con Postman o Curl.
En caso necesario, puede hacer clic en Editar servicio para volver a la

base de conocimientos y realizar modificaciones.

13
EJERCICIO: INTEGRACIÓN
DE QNA CON UN BOT
Ahora que ha creado y publicado una base de conocimientos de QnA,

es el momento de aprender a integrarla con un bot. En este ejercicio,

creará un bot de chat en Azure Portal para integrarlo con la base de


conocimientos de QnA Maker que creó anteriormente.

1. En el portal de QnA Maker, vaya a la página Publish (Publicar) y

publique la base de conocimiento si no se ha publicado todavía.

2. Seleccione Create Bot (Crear bot). Azure Portal se abre con la


configuración de creación del bot.
14
3. Especifique la configuración para crear el bot:

1. Asigne un nombre adecuado a su bot.

2. Elija el servicio de suscripción que ha usado en este

curso.

3. Seleccione el grupo de recursos apropiado.

4. Elija la ubicación del bot. Recuerde que es mejor usar la


misma ubicación que el resto de los servicios.

5. Seleccione el plan de tarifa F0.

6. El nombre de la aplicación debería rellenarse de forma


automática.
7. Elija C# como lenguaje del SDK.

8. Deje los campos restantes con el valor predeterminado.

4. Haga clic en Crear. En unos minutos, debería crearse el bot.

Chat con el bot

1. En Azure Portal, abra el nuevo recurso de bot desde la

notificación.

2. Desde Bot management (Administración de bots), seleccione


Test in web chat (Probar en chat web) y pruebe el QnA haciendo

preguntas al bot.

15
1

Servicios principales Cloud


Services: Opciones de
proceso de Azure
BIENVENIDA
Revise los servicios de proceso de Azure y explore cómo pueden

resolver necesidades empresariales comunes.

En este módulo, aprenderá a:

 Identificar las opciones de proceso de Azure

 Seleccionar las opciones de proceso que resolverán sus


necesidades empresariales específicas

Requisitos previos

Ninguno
2
Introducción 1 min

Conceptos esenciales de proceso de Azure 7 min

Explorar Azure Virtual Machines 5 min

Explorar contenedores en Azure 10 min

Explorar Azure App Service 5 min

Explorar informática sin servidor en Azure 7 min

Resumen 3 min
INTRODUCCIÓN
Imagine que ha conseguido el trabajo de sus sueños como
desarrollador en una nueva empresa de tecnología espacial. En su
primer día, debe ayudar a los investigadores a analizar un gran
conjunto de datos que se genera para un innovador proyecto de

investigación destinado a detectar la presencia de agua en Marte — y


el tiempo es fundamental. Pero hay un problema: no tiene ningún
3 servidor disponible para realizar el trabajo. Incluso si lo tuviera,
necesitaría dedicar mucho tiempo a configurarlo e instalar software.

Lógicamente, podría solicitar la compra de nuevos equipos, pero el


presupuesto de su departamento es reducido. Además, no quiere
comprar más hardware del necesario, no solo porque quiere dar una

buena impresión a sus superiores, sino también porque no sabe

cuántos datos se generarán en el proyecto.

Idealmente obtendría los recursos que necesita para este trabajo sin
demasiada administración — y simplemente los configuraría para

realizar el trabajo. Y pagaría solo por los recursos de proceso que

necesite mientras los usa.


Eso es exactamente lo que podemos hacer en Azure. Podemos crear

recursos de proceso, configurarlos para hacer el trabajo que


necesitamos y pagar solo por lo que usamos.

Objetivos de aprendizaje

En este módulo, aprenderá a:

• Identificar las opciones de proceso en Azure

• Seleccionar las opciones de proceso adecuadas para la empresa

4
CONCEPTOS ESENCIALES
DE PROCESO DE AZURE
Su equipo de investigación ha recopilado grandes cantidades de datos

de imágenes que podrían conducir a un descubrimiento en Marte.

Deben realizar un procesamiento de datos con gran complejidad de


cálculo, pero no tienen las herramientas para hacer el trabajo. Vamos a

ver por qué Azure es una buena elección para realizar el análisis de
datos.

¿Qué es Azure Compute?

Azure Compute es un servicio de informática a petición para ejecutar


5
aplicaciones basadas en la nube. Proporciona recursos informáticos,

como procesadores de varios núcleos y superequipos a través de


máquinas virtuales y contenedores. También proporciona informática
sin servidor para ejecutar aplicaciones sin necesidad de configurar o
instalar infraestructura. Los recursos están disponibles a petición y
normalmente se pueden crear en minutos o incluso en segundos. Solo

se paga por los recursos que se usan y solo durante el tiempo que se
usan.

Existen cuatro técnicas comunes para realizar el proceso en Azure:

 Máquinas virtuales

 Contenedores

 Azure App Service


 Informática sin servidor

¿Qué son las máquinas virtuales?

Las máquinas virtuales, o VM, son emulaciones de software de


equipos físicos. Incluyen un procesador virtual, memoria,

almacenamiento y recursos de red. Hospedan un sistema operativo

(SO) y permiten instalar y ejecutar software, al igual que en un equipo


físico. Además, si se emplea un cliente de escritorio remoto, puede usar
y controlar la máquina virtual como si se estuviera sentado delante de
ella.

¿Qué son los contenedores?

Los contenedores son un entorno de virtualización para ejecutar


aplicaciones. Al igual que las máquinas virtuales, los contenedores se
6
ejecutan sobre un sistema operativo host. Pero, a diferencia de las
máquinas virtuales, los contenedores no incluyen un sistema operativo
para las aplicaciones que se ejecutan dentro del contenedor. En su

lugar, los contenedores agrupan las bibliotecas y los componentes


necesarios para ejecutar la aplicación y usan el SO host del contenedor.

Por ejemplo, si cinco contenedores se están ejecutando en un servidor

con un kernel de Linux determinado, los cinco contenedores y las


aplicaciones que se ejecuten en ellos compartirán ese mismo kernel de
Linux.

¿Qué es Azure App Service?

Azure App Service es una oferta de plataforma como servicio (PaaS) en

Azure que está diseñada para hospedar aplicaciones empresariales


orientadas a la Web. Puede satisfacer los exigentes requisitos de
rendimiento, escalabilidad, seguridad y cumplimiento mientras usa una

plataforma totalmente administrada para realizar el mantenimiento de


la infraestructura.

¿Qué es la informática sin servidor?

La informática sin servidor es un entorno de ejecución hospedado en

la nube que ejecuta el código pero abstrae por completo el entorno de

hospedaje subyacente. El usuario crea una instancia del servicio y


agrega el código; no se necesita ninguna configuración ni

mantenimiento de la infraestructura, incluso ni se permite.

¿Qué estrategia de informática es adecuada para mí?

No es necesario adoptar un enfoque de "todo o nada" al elegir una


estrategia de informática en nube. Las máquinas virtuales, los
7
contenedores, App Service y la informática sin servidor proporcionan

ventajas, así como inconvenientes, cuando se comparan con otras


opciones.

Por ejemplo, aunque la informática sin servidor elimina la necesidad de


administrar la infraestructura, espera que el trabajo se complete con
rapidez, normalmente en cuestión de segundos o menos. Por lo tanto,

puede ejecutar la aplicación principal en una máquina virtual o un


contenedor pero descargar parte del procesamiento de datos en una
aplicación sin servidor.

Examinemos cada opción más detenidamente para ayudarle a decidir

cuándo usar cada servicio.


EXPLORAR AZURE
VIRTUAL MACHINES
Azure Virtual Machines permite crear y utilizar máquinas virtuales en

la nube. Estas máquinas virtuales proporcionan una infraestructura

como servicio (IaaS) en forma de un servidor virtualizado y se pueden


usar de muchas formas. Al igual que sucede en un equipo físico, se

puede personalizar todo el software que se ejecuta en la máquina


virtual. Las máquinas virtuales son una opción ideal cuando se necesita
lo siguiente:

 Control total sobre el sistema operativo (SO).

8
 Capacidad de ejecutar software personalizado.

 Usar configuraciones de hospedaje personalizadas.

Una máquina virtual de Azure le ofrece la flexibilidad de la


virtualización sin necesidad de adquirir y mantener el hardware físico
que ejecuta la máquina virtual. Sin embargo, sí necesita mantener la

máquina virtual, es decir, configurar, actualizar y mantener el software


que se ejecuta en la máquina virtual.

Al seleccionar una imagen de máquina virtual preconfigurada, podrá

crear y aprovisionar una máquina virtual en cuestión de minutos. La


selección de una imagen es una de las decisiones más importantes que

tomará al crear una máquina virtual. Una imagen es una plantilla que

se usa para crear una máquina virtual. Estas plantillas ya incluyen un


sistema operativo y, a menudo, otro software, como herramientas de

desarrollo o entornos de hospedaje web.

Ejemplos de cuándo usar máquinas virtuales

 Durante las pruebas y el desarrollo. Las máquinas virtuales

proporcionan una manera rápida y sencilla de crear distintas


configuraciones de sistema operativo y de aplicación. El

personal encargado de las pruebas y del desarrollo puede


eliminar fácilmente las máquinas virtuales cuando ya no las
necesite.

 Al ejecutar aplicaciones en la nube. La capacidad de ejecutar


determinadas aplicaciones en la nube pública, en lugar de crear
una infraestructura tradicional para ejecutarlas, puede

9 proporcionar importantes beneficios económicos. Por ejemplo,


si una aplicación necesita controlar las fluctuaciones en la

demanda, el hecho de poder apagar las máquinas virtuales


cuando no las necesite o iniciarlas rápidamente para satisfacer
un aumento repentino de la demanda implica que solo paga
por los recursos que usa.

 A la hora de extender el centro de recursos a la nube. Una


organización puede extender las capacidades de su propia red
local mediante la creación de una red virtual en Azure y al

agregar máquinas virtuales a esa red virtual. De este modo, las


aplicaciones como SharePoint se pueden ejecutar en una

máquina virtual de Azure en lugar de ejecutarse de forma local,


lo que facilita o abarata la implementación en un entorno local.
 Durante la recuperación ante desastres. Igual que con la

ejecución de ciertos tipos de aplicaciones en la nube y con la


extensión de una red local a la nube, puede ahorrar costos de
manera significativa mediante el uso de un enfoque basado en
IaaS para la recuperación ante desastres. Si se produce un error

en un centro de datos principal, puede crear máquinas virtuales

que se ejecuten en Azure para ejecutar las aplicaciones críticas


y, después, puede apagarlas cuando el centro de datos principal

vuelva a estar operativo.

Traslado a la nube con máquinas virtuales

Las máquinas virtuales también son una opción excelente para


trasladarse de un servidor físico a la nube. Puede crear una imagen del
servidor físico y hospedarla en una máquina virtual con pocos o ningún
10
cambio. Al igual que un servidor físico local, las máquinas virtuales
requieren mantenimiento. Por tanto, debe actualizar el sistema
operativo y su software.

Escalado de máquinas virtuales en Azure

Puede ejecutar máquinas virtuales individuales para pruebas,

desarrollo o tareas secundarias, o agrupar máquinas virtuales para

proporcionar alta disponibilidad, escalabilidad y redundancia. Azure


cuenta con varias características para que, independientemente de

cuáles sean los requisitos de tiempo de actividad, pueda cumplirlos.


Estas características son las siguientes:

 Conjuntos de disponibilidad

 Virtual Machine Scale Sets


 Azure Batch

¿Qué son los conjuntos de disponibilidad?

Un conjunto de disponibilidad es una agrupación lógica de dos o


más máquinas virtuales que contribuyen a que la aplicación siga

estando disponible durante el mantenimiento planeado o no planeado.

Un evento de mantenimiento planeado es cuando Microsoft actualiza el

tejido de Azure subyacente que hospeda máquinas virtuales. Un evento


de mantenimiento planificado sirve para aplicar revisiones a

vulnerabilidades de seguridad, mejorar el rendimiento y agregar o


actualizar características. En la mayoría de las ocasiones, estas
actualizaciones no afectan a las máquinas virtuales invitadas. Pero, a
veces, las máquinas virtuales deben reiniciarse para poder completar

11 una actualización. Cuando una máquina virtual forma parte de un


conjunto de disponibilidad, las actualizaciones del tejido de Azure se

ordenan secuencialmente, por lo que no todas las máquinas virtuales


asociadas se reinician al mismo tiempo. Las máquinas virtuales se
colocan en dominios de actualización diferentes. Los dominios de
actualización indican grupos de máquinas virtuales y hardware físico

subyacente que se pueden reiniciar al mismo tiempo. Los dominios de

actualización son una parte lógica de cada centro de datos y se


implementan con software y lógica.

Los eventos de mantenimiento no planeado implican un error de

hardware en el centro de datos, como un corte en el suministro


eléctrico o un error de disco. Las máquinas virtuales que forman parte

de un conjunto de disponibilidad cambian de forma automática a un


servidor físico que funcione para que la máquina virtual continúe
ejecutándose. El grupo de máquinas virtuales que comparten el

hardware común se encuentra en el mismo dominio de error. Un


dominio de error es esencialmente un bastidor de servidores. Ofrece la
separación física de la carga de trabajo en elementos de hardware de
alimentación, refrigeración y redes diferentes que admiten servidores

físicos en los bastidores de servidores del centro de datos. Si el

hardware que da servicio a un bastidor de servidores deja de estar


disponible, la interrupción solo afectará a ese bastidor de servidores.

Con un conjunto de disponibilidad, obtendrá:

 Hasta tres dominios de error con un bastidor de servidores


individual que cuenta con alimentación y recursos de red
dedicados

12  Cinco dominios de actualización lógica que se pueden


aumentar hasta un máximo de 20

Después, las máquinas virtuales se reparten secuencialmente en los

dominios de error y de actualización. En el siguiente diagrama se


muestra un ejemplo: se dispone de seis máquinas virtuales en un
conjunto de disponibilidad repartido entre dos dominios de error y
cinco dominios de actualización.
Los conjuntos de disponibilidad no representan ningún costo. Solo
13
pagará las máquinas virtuales que formen parte del conjunto de
disponibilidad en cuestión. Le recomendamos que coloque cada carga
de trabajo en un conjunto de disponibilidad para evitar tener un único

punto de error en la arquitectura de la máquina virtual.

¿Qué son los conjuntos de escalado de máquinas virtuales?

Azure Virtual Machine Scale Sets permite crear y administrar un grupo


de máquinas virtuales idénticas con equilibrio de carga. Imagine que

está ejecutando un sitio web que permite a los científicos cargar

imágenes de astronomía que deben procesarse. Si ha duplicado la

máquina virtual, normalmente necesitará configurar un servicio


adicional para enrutar las solicitudes entre varias instancias del sitio

web. Virtual Machine Scale Sets puede encargarse de ello.


Los conjuntos de escalado le permiten administrar, configurar y

actualizar de forma centralizada un gran número de máquinas virtuales


en cuestión de minutos para proporcionar aplicaciones altamente
disponibles. El número de instancias de máquina virtual puede
aumentar o disminuir automáticamente según la demanda, o de

acuerdo con una programación definida. Con

Virtual Machine Scale Sets, puede crear servicios a gran escala para
áreas tales como proceso, macrodatos y cargas de trabajo de

contenedor.

¿Qué es Azure Batch?

Azure Batch permite la administración de procesos y programación de


trabajos a gran escala con la capacidad de escalar a decenas, cientos o
miles de máquinas virtuales.
14
Cuando esté listo para ejecutar un trabajo, Batch:

 Iniciará un grupo de máquinas virtuales de proceso por usted.

 Instalará aplicaciones y datos de ensayo.

 Ejecutará trabajos con tantas tareas como tenga.

 Identificará errores.

 Reordenará la cola de trabajo.

 Reducirá verticalmente el grupo a medida que se complete el


trabajo.
Puede haber situaciones en las que necesite potencia informática sin

procesar o potencia de cálculo a nivel de superequipo. Azure


proporciona estas capacidades.

15
EXPLORAR
CONTENEDORES EN
AZURE
Los contenedores son una excelente opción si quiere ejecutar varias

instancias de una aplicación en un solo host de máquina virtual. El


orquestador de contenedores puede iniciar, detener y escalar

horizontalmente las instancias de la aplicación, según sea necesario.

Un contenedor es un entorno de ejecución modificado y basado en un

sistema operativo host que ejecuta la aplicación. Los contenedores no


usan la virtualización, por lo que no consumen recursos para simular
16
hardware virtual con un sistema operativo redundante. Normalmente,

esto hace que los contenedores sean más ligeros que las máquinas
virtuales. Este diseño permite responder rápidamente a cambios a
petición o por error. Otra ventaja de los contenedores es que puede
ejecutar varias aplicaciones aisladas en un único host de contenedor.
Puesto que los contenedores están protegidos y aislados, no necesita
servidores independientes para cada aplicación.

También podría gustarte