![]() |
Go to Paper
Return to GeoComputation 99 Index
Applying Saliency Analysis to Neural Network Rainfall - Runoff Modelling
ABRAHART, Robert J. (bob@ashville.demon.co.uk), University of Greenwich, School of Earth and Environmental Sciences, U.K.; SEE, Linda, and KNEALE, Pauline E., University of Leeds, School of Geography, Leeds LS2 9JT, U.K.
Key Words: rainfall-runoff modelling, neural networks, saliency analysis
Explanation and understanding are two important objectives of model building. Most current hydrological model building utilises knowledge of the physical system to build a set of cause and effect relationships based on mathematical equations. But the fact that a model works is not a sufficient justification for the existence of causal relationships. This must be inferred from logical reasoning. Such arguments also will be true for neural networks that are often criticised on the grounds that these tools are nothing more than "black box" models. This paper considers the nature of explanation from a model building standpoint and provides an illustrated example of how a neural network can be disaggregated in terms of its forecasting inputs. This disaggregation, termed "saliency analysis," is based on a neurocomputing method for assessing the relative importance of different neural network components and, in this work, is used to examine the significance of various internal relationships. For example, it could be assumed that connections with low weights are less important than those with large weights, and then use the magnitude of a weight value as a measure of its importance. But this approach has limited theoretical justification.
A more useful alternative would be to define relative importance in terms of the effect that each item has on the network error function. In particular, the importance of a weight or node could be defined in terms of the change in the error function that results from small changes to, or deletions of, individual weights or nodes. Deletion in a practical sense could involve setting the weights to zero, setting all node output values to zero, or passing zero values to the nodes. Most standard neural network packages do not contain the tools that are needed to perform these types of operations on an iterative basis; however, converting a neural network solution into 3GL code allows the manipulation of input values using program loops and embedded functions to achieve this aim.
It must be stressed that "saliency analysis" is not a form of "sensitivity analysis" since the purpose of the exercise is not to examine "the rate of change in one factor with respect to change in another." Saliency analysis is concerned with excluding one or more variables, and then exploring inherent variation associated with the remainder. Neural networks are ideal tools for this type of analysis because of the distributed nature of their information processing structure, which enables inputs to be omitted while the model is running.
Neural network solutions for generating one-step-ahead river flow predictions based on TOPMODEL hydrological inputs were used in this analysis. Embedded functions were used to perform input "saliency analysis" assessment. Time series plots showed that certain inputs were influential controls in different parts of the hydrograph. This technique is useful for building parsimonious neural network modelling solutions and for rapid prototyping of more complex mechanisms.