Keywords: Fuzzy Logic, Neural Network, Supervised Classification, Multi-spectral Image.
Abstract: In this paper we present an algorithm based on fuzzy logic and neural network for supervised classification of multi-spectral satellite images. To deal with fuzzy information, gray level values of each multi-bath pixel are converted into three linguistic properties. This provides feature vectors in term of fuzzy membership values to the input of a neural network while the output vector is defined in term of membership value of each category. Experiments were carried out using Landsat-Tm data and the results are compared to those obtained by the conventional neural network classifier.
1. Introduction
The multi-layer perceptron (MLP) using the back-propagation (BP) algorithm is the convectional neural network model widely used in the supervised classification of multispectral satellite image data. By using training pixels, the network can be trained adaptively by updating its connection weights. The desired output is clamped to two state values: 1 to 0 (state 1 for 'belong to' and state 0 for 'not belong to' a category) (McCelland, 1986; Rangsanseri, 1998). But in real world, an input feature may possess a property with a certain degree of confidence or a pattern may belong to more than one category.
To deal with this fuzzy classification problem, an algorithm based on fuzzy logic and neural network was proposed. This algorithm is capable of handling input features (gray level values in each multi-band pixel), present in the three linguistic properties corresponding to each input feature, to the input of a neural network while assign output membership values of each category lying in the range [0,1] instead of 0 or 1 to the output vectors (desired output vector). This provides scope for increases its robustness in tackling imprecise input specification and allows modeling of fuzzy data which may belong to more than one category.
The MLP model and BP algorithm is described in the first section. In the following section the fuzzy sets, the pattern representation in linguistic form and the membership of output vector are described. Then we explain the fuzzy extension to BP algorithm. Finally, the experimental results using Landsat-TM data are given and compared to those obtained by the conventional neural network classifier.
2. MLP Model and BP Algorithm
The MLP model using the BP algorithm consists of sets of nodes arranged in multiple layers called input, output, and hidden layers. Only the nodes of two different consecutive layers are connected by weights, but there is no connection among the nodes in the same layer. For all nodes , except the input layers nodes, the total input of each node is the sum of weighted outputs of the nodes in the previous layer. Each node is activated with the input to the node and the activation function of the node. The input and output of the node I (except for the input layer) in a MLP model according to the BP algorithm (Pao, 1989) is :

The sum in eq. (1) is over all nodes j is the previous layer. The Sigmoid function (McCelland, 1986) given in eq. (3) is used to determine the output state.
f(Xi)=1/(1+exp(-Xi)) (3)
where W
ij is the weight of the connection from node i to node j, bi the numerical value called bias, and f() the activation function.
The BP algorithm is designed to reduce an error between the actual output and the desired output of the network in a gradient descent manner. The summed squared error (SSE) is defined as:

Where p indexes the all training patterns and i indexes the output nodes of the network. O
pi and t
pi denote the actual output and the desired output of node i, respectively, when the input vector p is applied to the network.
A set of representative input and output patterns is selected to train the network. The connection weight W
ij are adjusted when each pattern is presented. All the patterns are repeatedly presented to the network until the SSE function is minimized. Application of the gradient descent method (Bendiktsson, 1990) yields the following iterative weight update rule:
DWij(n+1)=h(diOi)+aDWij(n) (5)
where W
ij is the weight of the connection from node i to j,
h the learning factor,
a the momentum factor, and
di the node error. For output node i,
di is then given by:
di =(ti-Oi)Oi(1-Oi) (6)
The node error at an arbitrary hidden node i is:
3. Fuzzy Logic
In conventional neural network classifier, an element r either 'belong to' or 'not belong to' a given category A is expressed as:

Using fuzzy logic, the element r belonging to the universe R, may be assigned a grade of membership with the membership function
mA( r ) to a fuzzy set A is defined as:
A={(mA(r),r)}, rÎR, mA( r )Î [0,1]