Data set
Bcell epitopes were obtained from B cell epitope database (BCIPEP), which contains 2479 continuous epitopes, including 654 immunodominant, 1617 immunogenic epitopes. All the identical epitopes and nonimmunogenic peptides were removed, finally we got 700 unique experimentally proved continuous B cell epitopes. The dataset covers a wide range of pathogenic group like virus, bacteria, protozoa and fungi. Final dataset consists of 700 Bcell epitopes and 700 nonepitopes or random peptides (equal length and same frequency generated from SWISSPROT).
Neural Networks
An artificial neural network (ANN) is an informationprocessing paradigm inspired by the way the densely interconnected, parallel structure of the mammalian brain process information. Artificial neural networks are collections of mathematical models that emulate some of the observed properties of biological nervous system and draw on the analogies of adaptive biological learning. The key element of the ANN paradigm is the novel structure of the information processing system. It is composed of a large number of highly interconnected processing elements that are analogous to neurons and are tied together with weighted connections that are analogous to synapses.
The ABCpred server uses partial recurrent neural network (Jordan network) with a single hidden layer. The networks have optional window length of 10, 12, 14, 16, 18 and 20, and have 35 residues in a single hidden layer. The target output consists of a single binary number and is 1 or 0 (epitope or non epitope). For neural network implementation and to generate the neural network architecture and the learning process, the publicly available free simulation package SNNS4.2v from Stuttgart University (Zell and Mamier, 1997) is used. It allows incorporation of the resulting networks into an ANSI C function for use in standalone code.
Working with Partial recurrent Networks
Recurrent neural network

In this section, the initialization, learning, and update functions for partial recurrent networks are described.
(i)The initialization function JE_Weights
The initialization function JE_Weights requires the specification of five parameters.
 alpha, beta: The weights of the forward connections are randomly chosen from the interval [alpha;Beta];
 lamda: Weights of self recurrent links from content units to themselves. The network use lamda=0;
 gamma: Weights of the other recurrent links to content units. This value is set to 1.0;
 phi: Initial activation of all context units.
(ii)Learning functions
The total network input consists of two components. The first component is the pattern vectors, which was the only input to the partial recurrent network. The second component is a state vector. This state vector is given through the nextstate function in every step. By this way the behavior of a partial recurrent network can be simulated with a simple feedforwaded network, that receives the state not implicitly through recurrent links but as an explicit part of the input vector. In this sense, the backpropagation algorithm can easily be modified for the training of partial recurrent networks.
The learning function has been adapted for the training of partial recurrent Jordan networks.
JE_BP standard Backpropagation has been used for this partial recurrent network.
(iii)Update functions
The update function which has been implemented for partial recurrent network is JE_Order. This update function propagates a pattern from the input layer to the first hidden layer, then to the second hidden layer, etc. and finally to the output layer. After this follows a synchronous update of all context units.