Conclusions

The goal of this project was to create a neural network visualization tool that would allow the user to understand the evolutionary and computational processes involved in training a population of networks to solve an input-output mapping problem using a genetic algorithm, and to use this information to more quickly and easily solve problems using neural networks. We have seen in the course of this report that, in addition to depicting in graphical form the organization of a single network and the inheritance relationships among multiple networks in different generations, the tool developed has provided unexpected insights into the nature of the search space for a specific problem, and into the phenomenon of genetic drift. We have found the depiction of a single network to be useful in the design of networks to solve problems, the extraction of domain knowledge, and (potentially) optimization of network topology. Finally, we have seen that this tool can be used to solve a wide variety of input-output mapping problems, including such challenging problems as Image Recognition and Breast Cancer Diagnosis.
As indicated in the section on "Future Work", many opportunities remain for the enhancement of this tool. Notions of attribute-values, training set vs. test set, sessions, and many others could all be built into the program to create a more powerful and useful tool. Alternatively, the visualization algorithms presented in this report could be used to create an entirely new tool, possibly for genetic algorithms alone, or perhaps for neural networks trained in the absence of genetic algorithms. Whatever the future of this particular tool, I hope it is clear that neural networks are a powerful tool for solving real-world problems, and that visualization represents one step toward the achievement of such solutions.

Matt Streeter
March, 2000