• No results found

Data Flows

In document Evacuation by Earliest Arrival Flows (Page 98-101)

Azure es una plataforma online de PaaS e IaaS que ofrece una gran cantidad de servicios y herramientas tanto de hosting, como para desarrollo. Además, ofrece la integración con otras tecnologías. A continuación, vamos a hacer una breve descripción de las herramientas de inteligencia y análisis:

- HDInsight: Un servicio de Spark y Hadoop en la nube para empresas.

HDInsight es la única oferta de Hadoop en la nube totalmente administrada que proporciona clústeres de análisis de código abierto optimizados para Spark, Hive, MapReduce, HBase, Storm, Kafka y R Server, con el respaldo de un acuerdo de nivel de servicio del 99,9 %. Cada una de estas tecnologías de macrodatos, así como aplicaciones de fabricantes de software

independientes, se pueden implementar fácilmente como clústeres administrados, con seguridad y supervisión de nivel empresarial.

- Aprendizaje automático: Análisis de gran eficacia basado en la nube, ahora en Cortana Intelligence Suite

- Análisis de transmisiones: Procesamiento de flujo de datos en tiempo real procedente de millones de dispositivos IoT.

- Servicios cognitivos: Agregar funcionalidades de API inteligentes para habilitar interacciones contextuales

- Servicio bot de Azure: Servicio de bots inteligentes sin servidor que se escala a petición

- Análisis con Data Lake: Servicio de análisis distribuido que facilita los macrodatos

- Almacén Data Lake: Primer servicio de análisis en la nube donde puede desarrollar y ejecutar fácilmente programas de procesamiento y

transformación de petabytes de datos en paralelo de forma masiva con los lenguajes U-SQL, R, Python y .Net. Sin infraestructura para administrar, puede procesar los datos a petición, escalar las unidades de análisis de forma instantánea y pagar solo por trabajo.

- Power BI Embedded: Insertar visualizaciones de datos totalmente interactivas en las aplicaciones.

Azure Machine Learning Studio

Se trata de una plataforma de PaaS, enlazada a Azure para poder integrarse con servicios web o herramientas como Spark o Jupyter. La herramienta tiene una filosofía similar a la de eM, trabajando de forma gráfica y con la posibilidad de añadir scripts en Python o R. A continuación, se adjunta una captura de pantalla sobre la pantalla principal de Azure Machine Learning en la realización de un proyecto, figura 8.

Figura 8. Interfaz principal de A.M.L.S Ventajas

- No se requieren conocimientos programáticos para la creación de modelos, se trabaja de forma gráfica. Todo esto es gracias a los módulos proporcionados por Azure Machine Learning.

- Existe la posibilidad de crear modelos en distintos lenguajes de programación como Python o R para adecuarse a las necesidades de los científicos de datos. - No requiere instalación de software adicional al acceder al servicio vía web. - La curva de aprendizaje es rápida debido al uso de un interfaz gráfico. - Permite la visualización de código de forma ágil y sencilla.

- Dispone de un interfaz agradable para la visualización e introducción de código por parte del usuario.

- Permite ver la descripción de las funciones de los módulos de una manera fácil y sencilla.

Figura 9. Proceso de ejecución en A.M.L.S

- Permite hacer un seguimiento de la ejecución, de modo que te va dando información sobre qué modulo está corriendo, o si este ya se ha ejecutado y, en ese caso, de si ha acabado de manera exitosa o no.

- Permite una visualización de los resultados de una manera muy gráfica y limpia, figura 10.

- Permite visualizar los resultados, tanto los datos finales, como los resultantes a la salida de cada módulo, figura 11.

Figura 11. Visualización de los resultados en A.M.L.S

- Permite en los distintos módulos como, por ejemplo, en el de las redes neuronales, editar los distintos parámetros, como se puede observar en la figura 12.

Figura 12. Edición de los parámetros en los módulos en A.M.L.S

- Tiene la posibilidad de evaluar los estadísticos de los datos a la entrada y a la salida de cada módulo (densidad de probabilidad, proporciones de cada categoría…), como se puede apreciar en la figura 13. Lo que permite tener una mejor comprensión de lo que está desarrollándose en cada módulo y en el sistema en general.

Figura 13. Salida de un módulo de A.M.L.S.

- Permite ejecutar solo ciertos módulos seleccionados dentro de un modelo, lo que es bastante cómodo cuando tienes varias ramas que hacen funciones independientes en un mismo modelo y quieres comprobar el funcionamiento de una de ellas solo.

- Los módulos son representados como unas “cajas” a las que llegan flechas de entrada (inputs) y de las que salen otras flechas que van a otras cajas (outputs). Se implementan una función visual muy útil que es la de que cuando estás sacando una flecha de un módulo, se te iluminan en verde los inputs de los módulos que admiten el mismo tipo de formato que el del output que estás sacando, y en rojo los que no. Figura 14.

- Presenta planes de promoción para estudiantes o pruebas para

profesionales del sector, lo que fomenta el uso de la plataforma y ayuda a crear una comunidad, a aumentar el número de ejemplos y documentación sobre la misma.

- Existe un control de versión del proyecto. Inconvenientes

- A la hora de ejecutar los modelos la ejecución es lenta si son modelos pequeños.

- Copiar proyectos y experimentos de un lugar de trabajo a otro es una tarea pesada y se ha de realizar manualmente.

- No es un servicio gratuito.

2.2.2. Tensor Flow

TensorFlow es una librería de código abierto proporcionada por Google para hacer computación numérica usando flujos de grafos. Los nodos en el grafo representan operaciones matemáticas, mientras que los bordes del grafo representan tensores, es decir, arrays de datos multidimensionales que se comunican entre ellos. Su arquitectura flexible permite desplegar la computación en una o más CPUs o GPUs en un escritorio, servidor o móvil con una sola API.

TensorFlow se engendró con el propósito de llevar a cabo investigaciones de aprendizaje automático y redes neuronales, pero el sistema es lo suficientemente abierto como para utilizarlo en una amplia variedad de aplicaciones.

Aunque funciona de forma programática, merece mención especial por una herramienta que incluye llamada TensorBoard, una interfaz gráfica de visualización muy detallada y exhaustiva. La información que queremos representar la vamos acumulando con unas funciones llamadas summaries.writers y a partir de ellos se generan distintas visualizaciones de lo que está ocurriendo. Alguna de las cuales podemos observar a continuación:

Gráficos

Figura 15. Visualización gráfica en T.F. Histogramas

Representaciones de escalares

Figura 17. Representación de escalares en T.F. Ventajas

- Permite visualizar con gran nivel de detalle los módulos y componentes que forman nuestro sistema, lo que permite al usuario tener un mayor control sobre su modelo, figura 18.

- Es un paquete elaborado en Python por Google y que se distribuye de forma libre. Contiene herramientas muy potentes en ámbitos de aprendizaje profundo.

Inconvenientes

- Funciona de forma programática, esto hace que la curva de aprendizaje sea mucho más lenta.

- TensorBoard, la interfaz gráfica, sirve solo para visualizar, no permite edición de forma gráfica.

- Dependes de la potencia de tu máquina a la hora de hacer los cálculos. - Necesitas realizar la instalación de la herramienta en tu equipo.

In document Evacuation by Earliest Arrival Flows (Page 98-101)