Learning algorithm for neural network: The learning of the NN can be seen as supervised learning and its purpose is to tune the weights of the NN to achieve good clustering performance or to minimize the clustering error. Before the learning, several variables have to be defined. Let training pattern set be X={Xi,X2,..., Xn} where Np is total number of training patterns. The ith pattern is {Xj|p, X占,X jJ} where n is the total number of features of patterns and cluster of the ith pattern is p. To evaluate the clustering performance, the total error number is set as Nm and total error rate Et is define below; learning algorithm can be described as.