A Web-Based Tool For Teaching Neural Network Concepts AYBARS UGUR, AHMET CUMHUR KINACI EGE Universitesi Bilgisayar Muhendisligi Bolumu Bornova, Izmir 35100, Turkey Received 28 December 2006; accepted 23 August 2007 ABSTRACT: Although neural networks (NN) are important especially for engineers, scientists, mathema- ticians and statisticians, they may also be hard to understand. In this article, application areas of NN are discussed, basic NN components are described and it is explained how an NN work. A web-based simulation and visualization tool (EasyLearnNN) is developed using Java and Java 2D for teaching NN concepts. Perceptron, ADALINE, Multilayer Perceptron, LVQ and SOM models and related training algorithms are implemented. As a result, comparison with other teaching methods of NN concepts is presented and discussed. ß 2009 Wiley Periodicals, Inc. Comput Appl Eng Educ 18: 449457, 2010; View this article online at wileyonlinelibrary.com; DOI 10.1002/cae.20184 Keywords: neural networks; web-based simulation; visualization; software development; Java INTRODUCTION Machine learning algorithms and techniques allow computers to ‘‘learn.’’ An artificial neural network (NN) is a machine learning approach inspired by the way in which the brain performs a particular learning task. Neural networks are interdisciplinary and have been used extensively in various fields ranging from electrical engineering to computer science from biology to image processing. Neural networks can solve prediction, estimation, classification, cluster- ing, forecasting, control and decision making problems accu- rately and quickly. Artificial neural networks (ANN) are relatively crude electronic models based on the neural structure of the brain and can be thought as adaptive machines. The definition proposed by Haykin is quite general: ‘‘A neural network is a massively parallel distributed processor made up of simple processing units, which has a natural propensity for storing experiential knowledge and making available for use [1].’’ NNs have ability to learn from its environment and improve the performance through learning. The procedure used to self- learning process of an NN is called a learning algorithm. Some important application areas of NN are: * Engineering and industrial applications. * Business applications. * Medical applications. * Military applications. * Financial applications. Some engineering and industrial applications are [2]: * control, monitoring and modeling; * process engineering; * technical diagnosis; * nondestructive testing; * power systems; * robotics; * transportation; * telecommunications; * remote sensing; * image processing. The use of NN offers the following useful properties and capabilities [1]: * Nonlinearity. * Inputoutput mapping. * Adaptivity. * Evidential response. * Contextual information. * Fault tolerance. * VLSI implementability. * Uniformity of analysis and design. * Neurobiological analogy. So, especially engineers need and use this powerful machine learning technique for research activities and for commercial applications. Neural networks are based on mathematics and include many complex models. Learning these structures is not so Correspondence to A. Ugur (aybars.ugur@ege.edu.tr). ß 2009 Wiley Periodicals Inc. 449