5 research outputs found

    Machine Learning for Microcontroller-Class Hardware -- A Review

    Full text link
    The advancements in machine learning opened a new opportunity to bring intelligence to the low-end Internet-of-Things nodes such as microcontrollers. Conventional machine learning deployment has high memory and compute footprint hindering their direct deployment on ultra resource-constrained microcontrollers. This paper highlights the unique requirements of enabling onboard machine learning for microcontroller class devices. Researchers use a specialized model development workflow for resource-limited applications to ensure the compute and latency budget is within the device limits while still maintaining the desired performance. We characterize a closed-loop widely applicable workflow of machine learning model development for microcontroller class devices and show that several classes of applications adopt a specific instance of it. We present both qualitative and numerical insights into different stages of model development by showcasing several use cases. Finally, we identify the open research challenges and unsolved questions demanding careful considerations moving forward.Comment: Accepted for publication at IEEE Sensors Journa

    Optimizing AI at the Edge: from network topology design to MCU deployment

    Get PDF
    The first topic analyzed in the thesis will be Neural Architecture Search (NAS). I will focus on two different tools that I developed, one to optimize the architecture of Temporal Convolutional Networks (TCNs), a convolutional model for time-series processing that has recently emerged, and one to optimize the data precision of tensors inside CNNs. The first NAS proposed explicitly targets the optimization of the most peculiar architectural parameters of TCNs, namely dilation, receptive field, and the number of features in each layer. Note that this is the first NAS that explicitly targets these networks. The second NAS proposed instead focuses on finding the most efficient data format for a target CNN, with the granularity of the layer filter. Note that applying these two NASes in sequence allows an "application designer" to minimize the structure of the neural network employed, minimizing the number of operations or the memory usage of the network. After that, the second topic described is the optimization of neural network deployment on edge devices. Importantly, exploiting edge platforms' scarce resources is critical for NN efficient execution on MCUs. To do so, I will introduce DORY (Deployment Oriented to memoRY) -- an automatic tool to deploy CNNs on low-cost MCUs. DORY, in different steps, can manage different levels of memory inside the MCU automatically, offload the computation workload (i.e., the different layers of a neural network) to dedicated hardware accelerators, and automatically generates ANSI C code that orchestrates off- and on-chip transfers with the computation phases. On top of this, I will introduce two optimized computation libraries that DORY can exploit to deploy TCNs and Transformers on edge efficiently. I conclude the thesis with two different applications on bio-signal analysis, i.e., heart rate tracking and sEMG-based gesture recognition

    The potential of error-related potentials. Analysis and decoding for control, neuro-rehabilitation and motor substitution

    Get PDF
    Las interfaces cerebro-máquina (BMIs, por sus siglas en inglés) permiten la decodificación de patrones de activación neuronal del cerebro de los usuarios para proporcionar a personas con movilidad severamente limitada, ya sea debido a un accidente o a una enfermedad neurodegenerativa, una forma de establecer una conexión directa entre su cerebro y un dispositivo. En este sentido, las BMIs basadas en técnicas no invasivas, como el electroencefalograma (EEG) han ofrecido a estos usuarios nuevas oportunidades para recuperar el control sobre las actividades de su vida diaria que de otro modo no podrían realizar, especialmente en las áreas de comunicación y control de su entorno.En los últimos años, la tecnología está avanzando a grandes pasos y con ella la complejidad de dispositivos ha incrementado significativamente, ampliando el número de posibilidades para controlar sofisticados dispositivos robóticos, prótesis con numerosos grados de libertad o incluso para la aplicación de complejos patrones de estimulación eléctrica en las propias extremidades paralizadas de un usuario, que le permitan ejecutar movimientos precisos. Sin embargo, la cantidad de información que se puede transmitir entre el cerebro y estos dispositivos sigue siendo muy limitada, tanto por el número como por la velocidad a la que se pueden decodificar los comandos neuronales. Por lo tanto, depender únicamente de las señales neuronales no garantiza un control óptimo y preciso.Para poder sacar el máximo partido de estas tecnologías, el campo de las BMIs adoptó el conocido enfoque de “control-compartido". Esta estrategia de control pretende crear un sistema de cooperación entre el usuario y un dispositivo inteligente, liberando al usuario de las tareas más pesadas requeridas para ejecutar la tarea sin llegar a perder la sensación de estar en control. De esta manera, los usuarios solo necesitan centrar su atención en los comandos de alto nivel (por ejemplo, elegir un elemento específico que agarrar, o elegir el destino final donde moverse) mientras el agente inteligente resuelve problemas de bajo nivel (como planificación de trayectorias, esquivar obstáculos, etc.) que permitan realizar la tarea designada de la manera óptima.En particular, esta tesis gira en torno a una señal neuronal cognitiva de alto nivel originada como la falta de coincidencia entre las expectativas del usuario y las acciones reales ejecutadas por los dispositivos inteligentes. Estas señales, denominadas potenciales de error (ErrPs), se consideran una forma natural de intercomunicar nuestro cerebro con máquinas y, por lo tanto, los usuarios solo requieren monitorizar las acciones de un dispositivo y evaluar mentalmente si este último se comporta correctamente o no. Esto puede verse como una forma de supervisar el comportamiento del dispositivo, en el que la decodificación de estas evaluaciones mentales se utiliza para proporcionar a estos dispositivos retroalimentación directamente relacionada con la ejecución de una tarea determinada para que puedan aprender y adaptarse a las preferencias del usuario.Dado que la respuesta neuronal de ErrP está asociada a un evento exógeno (dispositivo que comete una acción errónea), la mayoría de los trabajos desarrollados han intentado distinguir si una acción es correcta o errónea mediante la explotación de eventos discretos en escenarios bien controlados. Esta tesis presenta el primer intento de cambiar hacia configuraciones asíncronas que se centran en tareas relacionadas con el aumento de las capacidades motoras, con el objetivo de desarrollar interfaces para usuarios con movilidad limitada. En este tipo de configuraciones, dos desafíos importantes son que los eventos correctos o erróneos no están claramente definidos y los usuarios tienen que evaluar continuamente la tarea ejecutada, mientras que la clasificación de las señales EEG debe realizarse de forma asíncrona. Como resultado, los decodificadores tienen que lidiar constantemente con la actividad EEG de fondo, que típicamente conduce a una gran cantidad de errores de detección de firmas de error. Para superar estos desafíos, esta tesis aborda dos líneas principales de trabajo.Primero, explora la neurofisiología de las señales neuronales evocadas asociadas con la percepción de errores durante el uso interactivo de un BMI en escenarios continuos y más realistas.Se realizaron dos estudios para encontrar características alternativas basadas en el dominio de la frecuencia como una forma de lidiar con la alta variabilidad de las señales del EEG. Resultados, revelaron que existe un patrón estable representado como oscilaciones "theta" que mejoran la generalización durante la clasificación. Además, se utilizaron técnicas de aprendizaje automático de última generación para aplicar el aprendizaje de transferencia para discriminar asincrónicamente los errores cuando se introdujeron de forma gradual y no se conoce presumiblemente el inicio que desencadena los ErrPs. Además, los análisis de neurofisiología arrojan algo de luz sobre los mecanismos cognitivos subyacentes que provocan ErrP durante las tareas continuas, lo que sugiere la existencia de modelos neuronales en nuestro cerebro que acumulan evidencia y solo toman una decisión al alcanzar un cierto umbral. En segundo lugar, esta tesis evalúa la implementación de estos potenciales relacionados con errores en tres aplicaciones orientadas al usuario. Estos estudios no solo exploran cómo maximizar el rendimiento de decodificación de las firmas ErrP, sino que también investigan los mecanismos neuronales subyacentes y cómo los diferentes factores afectan las señales provocadas.La primera aplicación de esta tesis presenta una nueva forma de guiar a un robot móvil que se mueve en un entorno continuo utilizando solo potenciales de error como retroalimentación que podrían usarse para el control directo de dispositivos de asistencia. Con este propósito, proponemos un algoritmo basado en el emparejamiento de políticas para el aprendizaje de refuerzo inverso para inferir el objetivo del usuario a partir de señales cerebrales.La segunda aplicación presentada en esta tesis contempla los primeros pasos hacia un BCI híbrido para ejecutar distintos tipos de agarre de objetos, con el objetivo de ayudar a las personas que han perdido la funcionalidad motora de su extremidad superior. Este BMI combina la decodificación del tipo de agarre a partir de señales de EEG obtenidas del espectro de baja frecuencia con los potenciales de error provocados como resultado de la monitorización de movimientos de agarre erróneos. Los resultados muestran que, en efecto los ErrP aparecen en combinaciones de señales motoras originadas a partir de movimientos de agarre consistentes en una única repetición. Además, la evaluación de los diferentes factores involucrados en el diseño de la interfaz híbrida (como la velocidad de los estímulos, el tipo de agarre o la tarea mental) muestra cómo dichos factores afectan la morfología del subsiguiente potencial de error evocado.La tercera aplicación investiga los correlatos neuronales y los procesos cognitivos subyacentes asociados con desajustes somatosensoriales producidos por perturbaciones inesperadas durante la estimulación eléctrica neuromuscular en el brazo de un usuario. Este estudio simula los posibles errores que ocurren durante la terapia de neuro-rehabilitación, en la que la activación simultánea de la estimulación aferente mientras los sujetos se concentran en la realización de una tarea motora es crucial para una recuperación óptima. Los resultados muestran que los errores pueden aumentar la atención del sujeto en la tarea y desencadenar mecanismos de aprendizaje que al mismo tiempo podrían promover la neuroplasticidad motora.En resumen, a lo largo de esta tesis, se han diseñado varios paradigmas experimentales para mejorar la comprensión de cómo se generan los potenciales relacionados con errores durante el uso interactivo de BMI en aplicaciones orientadas al usuario. Se han propuesto diferentes métodos para pasar de la configuración bloqueada en el tiempo a la asíncrona, tanto en términos de decodificación como de percepción de los eventos erróneos; y ha explorado tres aplicaciones relacionadas con el aumento de las capacidades motoras, en las cuales los ErrPs se pueden usar para el control de dispositivos, la sustitución de motores y la neuro-rehabilitación.Brain-machine interfaces (BMIs) allow the decoding of cortical activation patterns from the users brain to provide people with severely limited mobility, due to an accident or disease, a way to establish a direct connection between their brain and a device. In this sense, BMIs based in noninvasive recordings, such as the electroencephalogram (EEG) have o↵ered these users new opportunities to regain control over activities of their daily life that they could not perform otherwise, especially in the areas of communication and control of their environment. Over the past years and with the latest technological advancements, devices have significantly grown on complexity expanding the number of possibilities to control complex robotic devices, prosthesis with numerous degrees of freedom or even to apply compound patterns of electrical stimulation on the subjects own paralyzed extremities to execute precise movements. However, the band-with of communication between brain and devices is still very limited, both in terms of the number and the speed at which neural commands can be decoded, and thus solely relying on neural signals do not guarantee accurate control them. In order to benefit of these technologies, the field of BMIs adopted the well-known approach of shared-control. This strategy intends to create a cooperation system between the user and an intelligent device, liberating the user from the burdensome parts of the task without losing the feeling of being in control. Here, users only need to focus their attention on high-level commands (e.g. choose the final destination to reach, or a specific item to grab) while the intelligent agent resolve low-level problems (e.g. trajectory planning, obstacle avoidance, etc) to perform the designated task in the optimal way. In particular, this thesis revolves around a high-level cognitive neural signal originated as the mismatch between the expectations of the user and the actual actions executed by the intelligent devices. These signals, denoted as error-related potentials (ErrPs), are thought as a natural way to intercommunicate our brain with machines and thus users only require to monitor the actions of a device and mentally assess whether the latter is behaving correctly or not. This can be seen as a way to supervise the device’s behavior, in which the decoding of these mental assessments is used to provide these devices with feedback directly related with the performance of a given task so they can learn and adapt to the user’s preferences. Since the ErrP’s neural response is associated to an exogenous event (device committing an erroneous action), most of the developed works have attempted to distinguish whether an action is correct or erroneous by exploiting discrete events under well-controlled scenarios. This thesis presents the first attempt to shift towards asynchronous settings that focus on tasks related with the augmentation of motor capabilities, with the objective of developing interfaces for users with limited mobility. In this type of setups, two important challenges are that correct or erroneous events are not clearly defined and users have to continuously evaluate the executed task, while classification of EEG signals has to be performed asynchronously. As a result, the decoders have to constantly deal with background EEG activity, which typically leads to a large number of missdetection of error signatures. To overcome these challenges, this thesis addresses two main lines of work. First, it explores the neurophysiology of the evoked neural signatures associated with the perception of errors during the interactive use of a BMI in continuous and more realistic scenarios. Two studies were performed to find alternative features based on the frequency domain as a way of dealing with the high variability of EEG signals. Results, revealed that there exists a stable pattern represented as theta oscillations that enhance generalization during classification. Also, state-of-the-art machine learning techniques were used to apply transfer learning to asynchronously discriminate errors when they were introduced in a gradual fashion and the onset that triggers the ErrPs is not presumably known. Furthermore, neurophsysiology analyses shed some light about the underlying cognitive mechanisms that elicit ErrP during continuous tasks, suggesting the existence of neural models in our brain that accumulate evidence and only take a decision upon reaching a certain threshold. Secondly, this thesis evaluates the implementation of these error-related potentials in three user-oriented applications. These studies not only explore how to maximize the decoding performance of ErrP signatures but also investigate the underlying neural mechanisms and how di↵erent factors a↵ect the elicited signals. The first application of this thesis presents a new way to guide a mobile robot moving in a continuous environment using only error potentials as feedback which could be used for the direct control of assistive devices. With this purpose, we propose an algorithm based on policy matching for inverse reinforcement learning to infer the user goal from brain signals. The second application presented in this thesis contemplates the first steps towards a hybrid BMI for grasping oriented to assist people who have lost motor functionality of their upper-limb. This BMI combines the decoding of the type of grasp from low-frequency EEG signals with error-related potentials elicited as the result of monitoring an erroneous grasping. The results show that ErrPs are elicited in combination of motor signatures from the low-frequency spectrum originated from single repetition grasping tasks and evaluates how di↵erent design factors (such as the speed of the stimuli, type of grasp or mental task) impact the morphology of the subsequent evoked ErrP. The third application investigates the neural correlates and the underlying cognitive processes associated with somatosensory mismatches produced by unexpected disturbances during neuromsucular electrical stimulation on a user’s arm. This study simulates possible errors that occur during neurorehabilitation therapy, in which the simultaneous activation of a↵erent stimulation while the subjects are concentrated in performing a motor task is crucial for optimal recovery. The results showed that errors may increase subject’s attention on the task and trigger learning mechanisms that at the same time could promote motor neuroplasticity. In summary, throughout this thesis, several experimental paradigms have been designed to improve the understanding of how error-related potentials are generated during the interactive use of BMIs in user-oriented applications. Di↵erent methods have been proposed to shift from time-locked to asynchronous settings, both in terms of decoding and perception of the erroneous events; and it has explored three applications related with the augmentation of motor capabilities, in which ErrPs can be used for control of devices, motor substitution and neurorehabilitation.<br /

    Machine Learning for Biomedical Application

    Get PDF
    Biomedicine is a multidisciplinary branch of medical science that consists of many scientific disciplines, e.g., biology, biotechnology, bioinformatics, and genetics; moreover, it covers various medical specialties. In recent years, this field of science has developed rapidly. This means that a large amount of data has been generated, due to (among other reasons) the processing, analysis, and recognition of a wide range of biomedical signals and images obtained through increasingly advanced medical imaging devices. The analysis of these data requires the use of advanced IT methods, which include those related to the use of artificial intelligence, and in particular machine learning. It is a summary of the Special Issue “Machine Learning for Biomedical Application”, briefly outlining selected applications of machine learning in the processing, analysis, and recognition of biomedical data, mostly regarding biosignals and medical images
    corecore