Formalization of deep learning techniques with the Why3 proof platform
Autor(a) principal: | |
---|---|
Data de Publicação: | 2022 |
Tipo de documento: | Dissertação |
Idioma: | eng |
Título da fonte: | Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
Texto Completo: | https://hdl.handle.net/1822/80109 |
Resumo: | Dissertação de mestrado integrado em Engenharia Informática |
id |
RCAP_bd8c7079196ee3c00b147e5f21bd2965 |
---|---|
oai_identifier_str |
oai:repositorium.sdum.uminho.pt:1822/80109 |
network_acronym_str |
RCAP |
network_name_str |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
repository_id_str |
7160 |
spelling |
Formalization of deep learning techniques with the Why3 proof platformFormalização de técnicas de Deep Learning com a plataforma de prova Why3Deep learningMachine learningRede neuronalVerificação formalWhy3Formal verificationNeural networkDissertação de mestrado integrado em Engenharia InformáticaMachine Learning como um campo, parte integrante da área de Inteligência Artificial, tem crescido exponencialmente, principalmente nesta última década, onde passou de quase desconhecido pelo público em geral para a existência de carros autónomos e até robôs humanóides como o robô Sophia da Arábia Saudita. A maioria de nós agora lida com Inteligência Artificial todos os dias, em anúncios direcionados por exemplo, o que é agora a norma. Deep Learning, um ramo específico de Machine Learning de onde originaram as Redes Neuronais, é vastamente utilizado no desenvolvimento de sistemas autónomos de alta complexidade. Alguns destes sistemas em particular podem ser classificados como sistemas críticos, o que traz a necessidade de fornecer alguma forma de garantia de que estes sistemas vão sempre funcionar como é suposto, uma vez que qualquer falha em sistemas desta categoria pode ter consequências graves. Isto naturalmente levanta preocupações relativas à segurança, levando a comunidade a procurar uma forma de obter tais garantias, eventualmente levando-os aos métodos de Verificação Formal para atingir os níveis de confiabilidade necessários para a adoção pública de tais sistemas. Tem havido um interesse crescente quanto a este assunto, uma vez que as aplicações de Redes Neuronais estão em constante expansão, e muitas ferramentas de software já resultaram deste trabalho, sendo algumas dessas ferramentas analisadas nesta dissertação. Este estudo vem contribuir para esse esforço, e tem como objetivo principal a avaliação do Why3, a fim de compreender se esta ferramenta possui as características necessárias que lhe permitam juntar-se a estas ferramentas já existentes como um novo meio de verificação da correção de Redes Neuronais. Para atingir este objetivo, primeiramente criamos um proof-of-concept a fim de analisar se o Why3 fornece o suporte necessário para esta tarefa. Em seguida, damos um passo em frente e formalizamos uma Rede Neuronal à escala de uma aplicação real no Why3, de onde tiraremos as nossas conclusões. Durante o trabalho sobre a formalização de Redes Neuronais, pretendemos também compilar um guia abrangente sobre Why3, desde as funcionalidades que oferece, até exemplos de como pode ser aplicado explicados passo a passo, com o objetivo de oferecer uma base de conhecimento compreensiva para qualquer pessoa interessada em explorar o Why3, contribuindo ao mesmo tempo para a escassa documentação existente sobre o Why3.Machine Learning as a field, from the realms of Artificial Intelligence, has been growing exponentially, especially in this last decade, where it went from the general public barely even hearing about it to the existence of self-driving cars and even humanoid robots like the Saudi Arabian Sophia. Most of us now deal with AI everyday, in targeted ads for example, and it has become the norm. Deep Learning, a particular branch of Machine Learning from where Neural Networks stem, is widely used in the development of high-complexity autonomous systems. Some of these systems in particular can be classified as critical systems, which brings the necessity of providing some form of guarantee that these will always work as intended, since any failure from this category of systems can have serious consequences. This naturally raises security concerns, hence leading the community to search for a way of attaining such guarantees, eventually leading them to Formal Verification methods to achieve the necessary reliability levels for the public adoption of said systems. There has been a growing interest regarding this matter, since the applications of Neural Networks are continuously expanding, and many software tools have already resulted from this work, some of which will be analysed in this dissertation. This study comes to contribute to this effort, and has as its main objective the evaluation of Why3, in order to understand if this tool possesses the necessary characteristics that may allow it to join these already existing tools as a new mean of verifying the correctness of Neural Networks. To achieve this objective, firstly we create a proof-of-concept in order to analyse if Why3 provides the necessary support for this task. Then we go a step further and formalize a real life application scale Neural Network in Why3, from where we will draw our conclusions. While working on the formalization of Neural Networks, we also aim to compile a comprehensive guide on Why3, where we go from the functionalities that it provides, to examples of how it can be applied explained step by step, with the goal of offering an understandable knowledge base for anyone that may be interested in exploring Why3, while also contributing to the scarce existing documentation of Why3.Pinto, Jorge SousaAzevedo, Paulo J.Universidade do MinhoSousa, Márcio Alexandre Mota2022-04-052022-04-05T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttps://hdl.handle.net/1822/80109eng203022939info:eu-repo/semantics/openAccessreponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2023-12-09T01:21:00Zoai:repositorium.sdum.uminho.pt:1822/80109Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-19T19:44:16.223739Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse |
dc.title.none.fl_str_mv |
Formalization of deep learning techniques with the Why3 proof platform Formalização de técnicas de Deep Learning com a plataforma de prova Why3 |
title |
Formalization of deep learning techniques with the Why3 proof platform |
spellingShingle |
Formalization of deep learning techniques with the Why3 proof platform Sousa, Márcio Alexandre Mota Deep learning Machine learning Rede neuronal Verificação formal Why3 Formal verification Neural network |
title_short |
Formalization of deep learning techniques with the Why3 proof platform |
title_full |
Formalization of deep learning techniques with the Why3 proof platform |
title_fullStr |
Formalization of deep learning techniques with the Why3 proof platform |
title_full_unstemmed |
Formalization of deep learning techniques with the Why3 proof platform |
title_sort |
Formalization of deep learning techniques with the Why3 proof platform |
author |
Sousa, Márcio Alexandre Mota |
author_facet |
Sousa, Márcio Alexandre Mota |
author_role |
author |
dc.contributor.none.fl_str_mv |
Pinto, Jorge Sousa Azevedo, Paulo J. Universidade do Minho |
dc.contributor.author.fl_str_mv |
Sousa, Márcio Alexandre Mota |
dc.subject.por.fl_str_mv |
Deep learning Machine learning Rede neuronal Verificação formal Why3 Formal verification Neural network |
topic |
Deep learning Machine learning Rede neuronal Verificação formal Why3 Formal verification Neural network |
description |
Dissertação de mestrado integrado em Engenharia Informática |
publishDate |
2022 |
dc.date.none.fl_str_mv |
2022-04-05 2022-04-05T00:00:00Z |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/masterThesis |
format |
masterThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
https://hdl.handle.net/1822/80109 |
url |
https://hdl.handle.net/1822/80109 |
dc.language.iso.fl_str_mv |
eng |
language |
eng |
dc.relation.none.fl_str_mv |
203022939 |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.format.none.fl_str_mv |
application/pdf |
dc.source.none.fl_str_mv |
reponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação instacron:RCAAP |
instname_str |
Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação |
instacron_str |
RCAAP |
institution |
RCAAP |
reponame_str |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
collection |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
repository.name.fl_str_mv |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação |
repository.mail.fl_str_mv |
|
_version_ |
1799133002729521152 |