A computer-implemented neural network module comprising: an input layer comprising one or more input nodes arranged to receive input data; a rule base layer comprising one or more rule nodes, each rule node having a minimum activation threshold, each rule node configured to be activated where input data satisfies the minimum activation threshold of the rule node, wherein each rule node is defined by two vectors of connection weights W1(r) and W2(r); an output layer comprising one or more output nodes; and an adaptation component arranged to aggregate selected two or more rule nodes (90,92,94) in the rule base layer based on the input data, and to increase the minimum activation threshold of one or more rule nodes not selected for aggregation, wherein the adaptation component is adapted to adjust W1(r) through unsupervised learning based on a similarity measure within a local area of input space and through a learning rate which is individually adjusted for each individual rule node, wherein when an input data is associated with a rule node r j, a receptive field and a sensitivity threshold S i of the rule node are adjusted according to the formulas: Rj 2 = Rj 1 + D W 1 r j 2, W 1 r j 1, R j 2 < = Rmax, and Sj 2 = Sj 1 − D W 1 r j 2, W 1 r j 1, where R j is the radius of the receptive field, D is the fuzzy normalised distance, and Rmax is a parameter set to restrict the maximum radius of the receptive field of a rule node, and wherein the adaptation component is adapted to adjust W2(r) based on the individually adjusted learning rate and through supervised learning based on output error or on reinforcement learning based on output hint. an input layer comprising one or more input nodes arranged to receive input data; a rule base layer comprising one or more rule nodes, each rule node having a minimum activation threshold, each rule node configured to be activated where input data satisfies the minimum activation threshold of the rule node, wherein each rule node is defined by two vectors of connection weights W1(r) and W2(r); an output layer comprising one or more output nodes; and an adaptation component arranged to aggregate selected two or more rule nodes (90,92,94) in the rule base layer based on the input data, and to increase the minimum activation threshold of one or more rule nodes not selected for aggregation, wherein the adaptation component is adapted to adjust W1(r) through unsupervised learning based on a similarity measure within a local area of input space and through a learning rate which is individually adjusted for each individual rule node, wherein when an input data is associated with a rule node r j, a receptive field and a sensitivity threshold S i of the rule node are adjusted according to the formulas: Rj 2 = Rj 1 + D W 1 r j 2, W 1 r j 1, R j 2 < = Rmax, and Sj 2 = Sj 1 − D W 1 r j 2, W 1 r j 1, where R j is the radius of the receptive field, D is the fuzzy normalised distance, and Rmax is a parameter set to restrict the maximum radius of the receptive field of a rule node, and wherein the adaptation component is adapted to adjust W2(r) based on the individually adjusted learning rate and through supervised learning based on output error or on reinforcement learning based on output hint.