Diseño de una plataforma IoT para el análisis y la detección de una enfermedad

Martínez Calleja, Daniel (2020). Diseño de una plataforma IoT para el análisis y la detección de una enfermedad. Proyecto Fin de Carrera / Trabajo Fin de Grado, E.T.S.I. de Sistemas Informáticos (UPM), Madrid.

Description

Title: Diseño de una plataforma IoT para el análisis y la detección de una enfermedad
Author/s:
  • Martínez Calleja, Daniel
Contributor/s:
  • Muñoz Fernández, Isabel
  • Arévalo Viñuales, Sergio
Item Type: Final Project
Degree: Grado en Ingeniería de Computadores
Date: 2020
Subjects:
Freetext Keywords: Data Mining; Minería de datos
Faculty: E.T.S.I. de Sistemas Informáticos (UPM)
Department: Sistemas Informáticos
Creative Commons Licenses: Recognition - No derivative works - Non commercial

Full text

[img] PDF - Users in campus UPM only - Requires a PDF viewer, such as GSview, Xpdf or Adobe Acrobat Reader
Download (8MB)
[img] Archive (ZIP) - Users in campus UPM only
Download (179kB)

Abstract

El objetivo del presente proyecto es explicar una posible plataforma que puede ser diseñada para predecir una enfermedad. Aunque el ejemplo expuesto en el proyecto está relacionado con la enfermedad del cáncer, sin embargo, puede ser aplicado a un diferente tipo de enfermedad. En los últimos años, uno de los campos en el cual Internet of Things ha tenido un crecimiento notable, es el campo de la medicina. Esto es debido a que IoT permite coleccionar la información a partir de diferentes fuentes, como pueden ser los dispositivos móviles, sensores, marcadores o actuadores entre otros. Una vez que la información ha sido recolectada y almacenada en un posible Data Lake la información puede ser usada para generar un modelo que puede ser aplicado más tarde para predecir un posible caso. Esto es relevante ya que la aplicación de Internet of Thing en el campo médico puede realizar la detección de la enfermedad, así como la monitorización de los pacientes graves. El propósito es proveer al médico con las herramientas y los recursos que necesita para estudiar y analizar la enfermedad, así como predecir la posible evolución que podría tomar la enfermedad a lo largo del tiempo. A pesar de que la arquitectura descrita en el proyecto está basada únicamente en un clúster con cuatro máquinas, en un entorno real puede ser escalado en un entorno cloud con una infraestructura mejorada, haciendo posible analizar de forma masiva gran cantidad de conjunto de datos de pacientes, identificando posibles casos de una forma automatizada. En el pasado, esto no era posible y era necesario emplear meses o años configurando una plataforma que pudiese funcionar con Machine Learning a escala. Incluso aunque, la máquina de aprendizaje ha sido usada en este proyecto para el desarrollo de la plataforma. Sin embargo, hoy en día compañías como Databricks o Microsoft están apostando por usar técnicas más específicas como Deep Learning o Learning Reinforcement, la razón es porque permiten conseguir predicciones más acertadas y son capaces de tratar problemas más complejos. La arquitectura que ha sido elegida es Lambda. Este tipo de arquitectura es capaz de procesar de forma masiva grandes cantidades de datos, proveyendo acceso a un procesamiento en batch y otro en streaming al mismo tiempo. Mientras que el dato fluye continuamente en la capa en streaming, en la capa batch el proceso es diferente en términos de funcionalidad. Usando la máquina de aprendizaje y con el conjunto de datos de los pacientes, el objetivo es construir un modelo que básicamente pueda ayudarnos a predecir casos potenciales, aplicando este modelo a los casos de los diferentes pacientes que van siendo procesados en la capa streaming. La pipeline ha sido creada en Spark, permitiéndonos aplicar el modelo a los datos que están siendo procesados en la capa en streaming y devolviendo la predicción en el mismo proceso en streaming. Una vez que el paso de predicción ha concluido, la predicción así como las características del sujeto son almacenadas en conjunto en una base de datos relacional conocida como Cassandra. A pesar de que el proceso conlleva varios pasos, todos son agrupados dentro de la pipeline. Viendo el proyecto en su conjunto, podríamos decir que tiene tres fases. La primera fase, se corresponde con el batch, en el cual el modelo es generado. La secunda fase se corresponde con la ingesta de los datos haciendo uso de la pipeline para procesar todos los datos y aplicando el modelo a cada sujeto en tiempo real. Y la última fase, corresponde con el almacenamiento de los datos generados en Cassandra siguiendo un enfoque orientado al dato. Abstract: The current project aims to explain a possible platform that can be designed to predict a disease. Although the example which is exposed in the project is related to cancer disease, however, it can be applied to a different kind of disease. In the recent years, one of the fields in which Internet of Things has had a sharp increase in its application is the medical field. This is due to the fact that Internet of Things allows to collect information from different sources, such as mobile phones, sensors, tags, actuators and so on. As soon as the information is collected and stored in a possible Data Lake., so the information can be used to generate a model that it can be apply later to predict a possible case. This is so relevant since the application of Internet of Thing in the medical field may realize the disease detection as well as the monitoring of severe patients, daily health care of ordinary users and yield analysis of popular disease. The purpose is to provide to the doctor with the tools and resources that he needs to study and analyse a disease, as well as predict the possible evolution that it could have along the time. In spite of the architecture of the solution described in the project is only based on a cluster with four machines, in a real-world it can be scaled in a cloud environment with an improved infrastructure, making it possible to analyse massive amount of patient datasets, identifying possible cases in an automated way. In the past, this could not be possible, and it was necessary to spend months or years to set up a platform that could work out with machine learning at scale. Even though, Machine Learning has been used in this project for the deployment of the platform. However, nowadays companies such as Databricks or Microsoft are bidding for specific techniques such as Deep Learning or Learning Reinforcement, the reason is as they allow to get more accurate predictions and they are able to address far more complex problems. The architecture that has been chosen is Lambda, this kind of architecture is able to process massive quantities of data, providing access to a batch-processing and stream-processing methods at once. Meanwhile the data comes continuously in the streaming layer, in the batch layer the process is rather than different in terms of functionality. Using Machine Learning and with the patient datasets, the goal is to build a model that basically can help us to predict potential cases, applying this model to the data collected in the streaming layer from different patients. A pipeline has been created with Spark, allowing us to apply the model to the data that is being processed in the streaming layer and returning the prediction in the same streaming process. Once the prediction step has concluded then the prediction as well as the features of the subject are stored all together in a well-known non-relational database, called Cassandra. Despite this process involves several steps, all are encompassed within the pipeline. Seeing the project as a whole, we could say that the project has three stages. The first stage belongs to the batch, in which the model is generated. The second stage corresponds with the ingestion of the data taking advantage of a pipeline to process all the data and applying the model to each subject in real-time. And the last stage corresponds with the storage of the generated data into Cassandra, following a data-driven approach.

More information

Item ID: 64927
DC Identifier: http://oa.upm.es/64927/
OAI Identifier: oai:oa.upm.es:64927
Deposited by: Biblioteca Universitaria Campus Sur
Deposited on: 03 Nov 2020 09:41
Last Modified: 03 Nov 2020 09:41
  • Logo InvestigaM (UPM)
  • Logo GEOUP4
  • Logo Open Access
  • Open Access
  • Logo Sherpa/Romeo
    Check whether the anglo-saxon journal in which you have published an article allows you to also publish it under open access.
  • Logo Dulcinea
    Check whether the spanish journal in which you have published an article allows you to also publish it under open access.
  • Logo de Recolecta
  • Logo del Observatorio I+D+i UPM
  • Logo de OpenCourseWare UPM