Energy and performance modeling of NVIDIA Jetson TX1 embedded GPU in hyperspectral image classification tasks for cancer detection using Machine Learning

Sancho Aragón, Jaime (2018). Energy and performance modeling of NVIDIA Jetson TX1 embedded GPU in hyperspectral image classification tasks for cancer detection using Machine Learning. Thesis (Master thesis), E.T.S.I. y Sistemas de Telecomunicación (UPM).

Description

Title: Energy and performance modeling of NVIDIA Jetson TX1 embedded GPU in hyperspectral image classification tasks for cancer detection using Machine Learning
Author/s:
  • Sancho Aragón, Jaime
Contributor/s:
  • Salvador Perea, Rubén
Item Type: Thesis (Master thesis)
Masters title: Ingeniería de Sistemas y Servicios para la Sociedad de la Información
Date: 20 July 2018
Subjects:
Freetext Keywords: Imágen hiperespectral; Medicina de precisión
Faculty: E.T.S.I. y Sistemas de Telecomunicación (UPM)
Department: Ingeniería Telemática y Electrónica
Creative Commons Licenses: Recognition - No derivative works - Non commercial

Full text

[img]
Preview
PDF - Requires a PDF viewer, such as GSview, Xpdf or Adobe Acrobat Reader
Download (4MB) | Preview
[img] Archive (ZIP) (Anexos) - Users in campus UPM only
Download (13MB)

Abstract

En los últimos años la inteligencia artificial se ha convertido en una de las ramas más importantes de la ciencia de la computación. Su uso se ha extendido no solo a diversos campos de investigación sino que también se encuentra ya como componente fundamental de multitud de aplicaciones y servicios tanto en la nube como cada vez más en sistemas empotrados. Un campo de aplicación con grandes repercusiones sociales es el de la medicina, donde se pueden explotar los algoritmos de inteligencia artificial para encontrar patrones de enfermedades y detectarlas automáticamente mediante el procesamiento de diversos tipos de imágenes y pruebas clínicas. Este trabajo está enmarcado en el proyecto europeo HELICoiD, en el que se hace uso de imágenes híper espectrales junto con algoritmos de aprendizaje automático para detectar tejido canceroso en cerebros humanos durante operaciones de resección de tumores. La gran cantidad de información disponible en este tipo de imágenes ofrece la posibilidad de clasificar sus píxeles entre tejido sano o tejido canceroso. Sin embargo, precisamente ese gran volumen de datos contenido en las imágenes híper espectrales así como la carga computacional de los algoritmos utilizados en el proyecto: Principal Component Analysis (PCA), Support Vector Machine (SVM) y K-Nearest Neighbours (KNN), requieren una capacidad de cómputo que impide el procesamiento en tiempo real con un procesador de propósito general. Por este motivo, se hace uso de un acelerador basado en una GPU empotrada: el sistema Jetson TX1 de NVIDIA. En este documento se recogen el análisis de los algoritmos, la plataforma y el lenguaje de programación de NVIDIA CUDA C/C++ para proponer una implementación que cumpla los requerimientos de la aplicación. Además, se incluye una implementación alternativa a la original que obtiene resultados funcionales semejantes (con cierto error) a los originales y un tiempo de ejecución mucho menor. Esta idea, basada en el algoritmo SVM y un filtro espacial, está recogida en el trabajo fin de grado de Guillermo Bermejo. Este trabajo tiene como objetivo no solo la implementación de la cadena de procesamiento de HELICoiD sino también evaluar la idoneidad de este tipo de plataformas para el desarrollo futuro de sistemas de clasificación de bajo coste en aplicaciones de medicina personalizada. Por ello, se recoge también una caracterización de la plataforma en términos de rendimiento y eficiencia energética para este tipo de aplicaciones. Para ello se ha desarrollado un método para medir la energía consumida por la plataforma basado en el medidor de voltaje integrado INA3221. Utilizando este método, se desarrollan dos aplicaciones: un monitor gráfico para medir la potencia consumida en tiempo real y una biblioteca de funciones de C para medir la energía consumida durante la ejecución de una aplicación (basada en C). Finalmente, utilizando las bibliotecas proporcionadas por CUDA y la desarrollada para medir energía, se aborda la caracterización de la plataforma y se ofrecen resultados de rendimiento y eficiencia energética para los dos proyectos y los algoritmos que los forman. Por último se concluye con una discusión de los resultados donde se extraen las conclusiones de este trabajo y se plantean algunas posibles líneas futuras de trabajo. Abstract: The last few years the artificial intelligence has emerged as one of the most important branches in computing science. It is being currently used not only in very different research fields but also as a key component in a lot of cloud applications, services and embedded systems. Medicine is an area of application with high social impact where artificial intelligence can contribute to automatic medical diagnosis through the processing of diverse images and clinical tests. This work is framed within the European project HELICoiD, in which hyperspectral images and machine learning algorithms are used to detect cancerous tissue in human brains during tumour resection operations. The huge amount of information available in this type of images enables automatic pixel classification between healthy or cancerous tissue. Nevertheless, it is indeed this huge data volume and the computational load required by the involved algorithms; Principal Component Analysis (PCA), Support Vector Machine (SVM) and K-Nearest Neighbours (KNN) that require a processing power unattainable in real time by a general purpose processor. As a consequence, an embedded GPU-based accelerator is used in this work: the NVIDIA Jetson TX1 system. This document tackles the algorithm, platform and NVIDIA CUDA C/C++ programming language analysis and an implementation proposal that achieves the application requirements. In addition, an alternative implementation, which obtains similar functional results (with a certain level of error) to the original, is included. This idea, based on the SVM and an spatial filter, is proposed in the final degree project of Guillermo Bermejo. This work aims not only at implementing the HELICoiD processing chain but also at evaluating the suitability of this type of platforms for future embedded, low-cost classification systems in personalised medicine applications. Therefore, this work also tackles the platform characterisation in terms of throughput and energy efficiency for this kind of applications. To do so, a method to measure the energy consumed by the platform based on the integrated voltage sensor INA3221, is developed in this work. With the method, two applications are created: a graphical monitor for real time power monitoring and a C library for energy consumption measurement of C-based applications. Finally, using CUDA libraries and the energy measurement library developed in this work, the platform is characterised obtaining throughput and energy efficiency results for both projects and the algorithms involved. Lastly, a final discussion on the obtained results is included, and possible future lines of work are sketched.

Funding Projects

TypeCodeAcronymLeaderTitle
FP7618080HELiCoiDUniversidad de Las Palmas de Gran CanariaHypErspectraL Imaging Cancer Detection

More information

Item ID: 54379
DC Identifier: http://oa.upm.es/54379/
OAI Identifier: oai:oa.upm.es:54379
Deposited by: Biblioteca Universitaria Campus Sur
Deposited on: 20 Mar 2019 06:36
Last Modified: 20 Mar 2019 06:39
  • 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