Browsing by Author "Lopes, Vasco Ferrinho"
Now showing 1 - 2 of 2
Results Per Page
Sort Options
- Improving Neural Architecture Search With Bayesian Optimization and Generalization MechanismsPublication . Lopes, Vasco Ferrinho; Alexandre, Luís Filipe Barbosa de AlmeidaAdvances in Artificial Intelligence (AI) and Machine Learning (ML) obtained impressive breakthroughs and remarkable results in various problems. These advances can be largely attributed to deep learning algorithms, especially Convolutional Neural Networks (CNNs). The ever-growing success of CNNs is mainly due to the ingenuity and engineering efforts of human experts who have designed and optimized powerful neural network architectures, which obtained unprecedented results in a vast panoply of tasks. However, applying a ML method to a problem for which it has not been explicitly tailor-made usually leads to sub-optimal results, which in extreme cases can even lead to poor performances, thus hindering the sustainability of a system and the wide-spread application of ML by non-experts. Designing tailor-made CNNs for specific problems is a difficult task, as many design choices depend on each other. Thus, it became logical to automate this process by designing and developing automated Neural Architecture Search (NAS) methods. Architectures found with NAS achieve state-of-the-art performance in various tasks, outperforming human-designed networks. However, NAS methods still face several problems. Most heavily rely on human-defined assumptions constraining the search, such as the architecture’s outer-skeletons, number of layers, parameter heuristics, and search spaces. Common search spaces consist of repeatable modules (cells) instead of fully exploring the architecture’s search space by designing entire architectures (macro-search), which requires deep human expertise and restricts the search to pre-defined settings and narrows the exploration of new and diverse architectures by having forced rules. Also, considerable computation is still inherent to most NAS methods, and only a few can perform macro-search. In this thesis, we focused on proposing novel solutions to mitigate the problems mentioned above. First, we provide a comprehensive review of NAS components, methods, and benchmarks. For the latter, we conduct a study on operation importance to evaluate how the operation pool of search spaces influences the performance of generated architectures. Following, we studied how different neural networks behave for different classification problems and proposed two novel methods to improve upon existing neural networks with NAS by i) searching for a new classification head and ii) searching for a fusion method that allows performing multimodal classification. We then looked into improving the search cost of NAS methods by proposing a zero-proxy estimation strategy that scores architectures at initialization stage through the analysis of the Jacobian matrix and an evolutionary strategy that generates architectures by performing operation mutation and by leveraging the zero-cost proxy estimation to efficiently guide the search process. To further improve the capabilities of NAS methods, we extend the analysis of architectures at initialization stage by proposing a second zero-cost proxy method, which looks at the Neural Tangent Kernel of a generated architecture to infer its final performance if trained. With this, we also propose a novel search space that leverages large pre-trained feature extractors (CNNs) and forces the search only to a small middleware architecture that learns a downstream task. These two methods showed that large models can be efficiently leveraged to learn new tasks without requiring any fine-tuning or extensive computational resources. To further improve the search and memory costs of NAS methods, we proposed MANAS. This method frames NAS as a multi-agent optimization problem and uses independent agents that search for operations in a distributed manner. With MANAS, we showed that both the search cost and the memory resources can be heavily reduced while improving the final performance. Finally, to push NAS to less constrained search spaces and settings, we proposed LCMNAS, a NAS method that performs macrosearch without relying on pre-defined heuristics or bounded search spaces. LCMNAS introduces three components for the NAS pipeline: i) a method that leverages information about well-known architectures to autonomously generate complex search spaces based on weighted directed graphs with hidden properties, ii) an evolutionary search strategy that generates complete architectures from scratch, and iii) a mixed-performance estimation approach that combines information about architectures at initialization stage and lower fidelity estimates to infer their trainability and capacity to model complex functions. Results obtained by the proposed methods show that it is possible to improve NAS methods regarding search and memory costs, as well as computation requirements, while still obtaining state-of-the-art results. All proposed methods were evaluated in multiple search spaces and several data sets, showing improved performances while requiring only a fraction of previous NAS methods’ time and computation needs.
- RobotChain: Artificial Intelligence on a Blockchain using Tezos TechnologyPublication . Lopes, Vasco Ferrinho; Alexandre, Luís Filipe Barbosa de AlmeidaBlockchain technology is not only growing everyday at a fast-passed rhythm, but it is also a disruptive technology that has changed how we look at financial transactions. By providing a way to trust an unknown network and by allowing us to conduct transactions without the need for a central authority, blockchain has grown exponentially. Moreover, blockchain also provides decentralization of the data, immutability, accessibility, non-repudiation and irreversibility properties that makes this technology a must in many industries. But, even thought blockchain provides interesting properties, it has not been extensively used outside the financial scope. Similarly, robots have been increasingly used in factories to automate tasks that range from picking objects, to transporting them and also to work collaboratively with humans to perform complex tasks. It is important to enforce that robots act between legal and moral boundaries and that their events and data are securely stored and auditable. This rarely happens, as robots are programmed to do a specific task without certainty that that task will always be performed correctly and their data is either locally stored, without security measures, or disregarded. This means that the data, especially logs, can be altered, which means that robots and manufacturers can be accused of problems that they did not cause. Henceforth, in this work, we sought to integrate blockchain with robotics with the goal to provide enhanced security to robots, to the data and to leverage artificial intelligence algorithms. By doing an extensive overview of the methods that integrate blockchain and artificial intelligence or robotics, we found that this is a growing field but there is a lack of proposals that try to improve robotic systems by using blockchain. It was also clear that most of the existing proposals that integrate artificial intelligence and blockchain, are focused on building marketplaces and only use the latter to storage transactions. So, in this document, we proposed three different methods that use blockchain to solve different problems associated with robots. The first one is a method to securely store robot logs in a blockchain by using smart-contracts as storage and automatically detect when anomalies occur in a robot by using the data contained in the blockchain and a smart-contract. By using smart-contracts, it is assured that the data is secure and immutable as long as the blockchain has enough peers to participate in the consensus process. The second method goes beyond registering events to also register information about external sensors, like a camera, and by using smart-contracts to allow Oracles to interact with the blockchain, it was possible to leverage image analysis algorithms that can detect the presence of material to be picked. This information is then inserted into a smart-contract that automatically defines the movement that a robot should have, regarding the number of materials present to be picked. The third proposal is a method that uses blockchain to store information about the robots and the images derived from a Kinect. This information is then used by Oracles that check if there is any person located inside a robot workspace. If there is any, this information is stored and different Oracles try to identify the person. Then, a smart-contract acts appropriately by changing or even stopping the robot depending on the identity of the person and if the person is located inside the warning or the critical zone surrounding the robot. With this work, we show how blockchain can be used in robotic environments and how it can beneficial in contexts where multi-party cooperation, security, and decentralization of the data is essential. We also show how Oracles can interact with the blockchain and distributively cooperate to leverage artificial intelligence algorithms to perform analysis in the data that allow us to detect robotic anomalies, material in images and the presence of people. We also show that smart-contracts can be used to perform more tasks than just serve the purpose of automatically do monetary transactions. The proposed architectures are modular and can be used in multiple contexts such as in manufacturing, network control, robot control, and others since they are easy to integrate, adapt, maintain and extend to new domains. We expect that the intersection of blockchain and robotics will shape part of the future of robotics once blockchain is more widely used and easy to integrate. This integration will be very prominent in tasks where robots need to behave under certain constraints, in swarm robotics due to the fact that blockchain offers global information and in factories because the actions undertaken by a robot can easily be extended to the rest of the robots by using smart-contracts.