Semantic-based neural network repair
Recently, neural networks have spread into numerous fields including many safety-critical systems. Neural networks are built (and trained) by programming in frameworks such as TensorFlow and PyTorch. Developers apply a rich set of pre-defined layers to manually program neural networks or to automati...
Saved in:
Main Authors: | , |
---|---|
Format: | text |
Language: | English |
Published: |
Institutional Knowledge at Singapore Management University
2023
|
Subjects: | |
Online Access: | https://ink.library.smu.edu.sg/sis_research/8117 https://ink.library.smu.edu.sg/context/sis_research/article/9120/viewcontent/3597926.3598045_pvoa.pdf |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Institution: | Singapore Management University |
Language: | English |
id |
sg-smu-ink.sis_research-9120 |
---|---|
record_format |
dspace |
spelling |
sg-smu-ink.sis_research-91202023-09-14T08:39:47Z Semantic-based neural network repair SCHUMI, Richard SUN, Jun Recently, neural networks have spread into numerous fields including many safety-critical systems. Neural networks are built (and trained) by programming in frameworks such as TensorFlow and PyTorch. Developers apply a rich set of pre-defined layers to manually program neural networks or to automatically generate them (e.g., through AutoML). Composing neural networks with different layers is error-prone due to the non-trivial constraints that must be satisfied in order to use those layers. In this work, we propose an approach to automatically repair erroneous neural networks. The challenge is in identifying a minimal modification to the network so that it becomes valid. Modifying a layer might have cascading effects on subsequent layers and thus our approach must search recursively to identify a ”globally” minimal modification. Our approach is based on an executable semantics of deep learning layers and focuses on four kinds of errors which are common in practice. We evaluate our approach for two usage scenarios, i.e., repairing automatically generated neural networks and manually written ones suffering from common model bugs. The results show that we are able to repair 100% of a set of randomly generated neural networks (which are produced with an existing AI framework testing approach) effectively and efficiently (with an average repair time of 21.08s) and 93.75% of a collection of real neural network bugs (with an average time of 3min 40s). 2023-07-01T07:00:00Z text application/pdf https://ink.library.smu.edu.sg/sis_research/8117 info:doi/10.1145/3597926.3598045 https://ink.library.smu.edu.sg/context/sis_research/article/9120/viewcontent/3597926.3598045_pvoa.pdf http://creativecommons.org/licenses/by-nc-nd/4.0/ Research Collection School Of Computing and Information Systems eng Institutional Knowledge at Singapore Management University automatic AI model repair deep learning models semantics specification AI model generation neural network generation TensorFlow Prolog Artificial Intelligence and Robotics Software Engineering |
institution |
Singapore Management University |
building |
SMU Libraries |
continent |
Asia |
country |
Singapore Singapore |
content_provider |
SMU Libraries |
collection |
InK@SMU |
language |
English |
topic |
automatic AI model repair deep learning models semantics specification AI model generation neural network generation TensorFlow Prolog Artificial Intelligence and Robotics Software Engineering |
spellingShingle |
automatic AI model repair deep learning models semantics specification AI model generation neural network generation TensorFlow Prolog Artificial Intelligence and Robotics Software Engineering SCHUMI, Richard SUN, Jun Semantic-based neural network repair |
description |
Recently, neural networks have spread into numerous fields including many safety-critical systems. Neural networks are built (and trained) by programming in frameworks such as TensorFlow and PyTorch. Developers apply a rich set of pre-defined layers to manually program neural networks or to automatically generate them (e.g., through AutoML). Composing neural networks with different layers is error-prone due to the non-trivial constraints that must be satisfied in order to use those layers. In this work, we propose an approach to automatically repair erroneous neural networks. The challenge is in identifying a minimal modification to the network so that it becomes valid. Modifying a layer might have cascading effects on subsequent layers and thus our approach must search recursively to identify a ”globally” minimal modification. Our approach is based on an executable semantics of deep learning layers and focuses on four kinds of errors which are common in practice. We evaluate our approach for two usage scenarios, i.e., repairing automatically generated neural networks and manually written ones suffering from common model bugs. The results show that we are able to repair 100% of a set of randomly generated neural networks (which are produced with an existing AI framework testing approach) effectively and efficiently (with an average repair time of 21.08s) and 93.75% of a collection of real neural network bugs (with an average time of 3min 40s). |
format |
text |
author |
SCHUMI, Richard SUN, Jun |
author_facet |
SCHUMI, Richard SUN, Jun |
author_sort |
SCHUMI, Richard |
title |
Semantic-based neural network repair |
title_short |
Semantic-based neural network repair |
title_full |
Semantic-based neural network repair |
title_fullStr |
Semantic-based neural network repair |
title_full_unstemmed |
Semantic-based neural network repair |
title_sort |
semantic-based neural network repair |
publisher |
Institutional Knowledge at Singapore Management University |
publishDate |
2023 |
url |
https://ink.library.smu.edu.sg/sis_research/8117 https://ink.library.smu.edu.sg/context/sis_research/article/9120/viewcontent/3597926.3598045_pvoa.pdf |
_version_ |
1779157160153841664 |