# Code Example 2

This example is similar to Example 1, but now neighborhood weight updating and radius reduction are involved. With the constants involved below, neighboring weights will update through 80% of the training iterations, then focus un updating only the winning weights to the end.

Example Results

I didn't feel like spending time on sorting the output, but it still makes sense enough.

Iterations: 101

Neighborhood radius reduced after 80 iterations.

Clusters for training input:

Vector (1, 1, 1, 0, 0, 0, 0, ) fits into category 4

Vector (0, 0, 0, 0, 1, 1, 1, ) fits into category 2

Vector (0, 0, 1, 1, 1, 0, 0, ) fits into category 0

Vector (0, 0, 0, 0, 0, 0, 1, ) fits into category 2

Vector (1, 0, 0, 0, 0, 0, 0, ) fits into category 4

Vector (0, 0, 0, 1, 0, 0, 0, ) fits into category 0

Vector (1, 0, 1, 0, 1, 0, 1, ) fits into category 3

Weights for Node 0 connections:

.000, .000, .492, 1.000, .492, .000, .000,

Weights for Node 1 connections:

.213, .000, .407, .400, .594, .187, .600,

Weights for Node 2 connections:

.178, .000, .178, .000, .584, .406, 1.000,

Weights for Node 3 connections:

.718, .134, .570, .000, .574, .139, .718,

Weights for Node 4 connections:

1.000, .492, .492, .000, .000, .000, .000,

Categorized test input:

Vector (1, 1, 1, 1, 0, 0, 0, ) fits into category 4

Vector (0, 1, 1, 0, 1, 1, 1, ) fits into category 2

Vector (0, 1, 0, 1, 0, 1, 0, ) fits into category 0

Vector (0, 1, 0, 0, 0, 0, 0, ) fits into category 4

Vector (0, 0, 0, 0, 1, 0, 0, ) fits into category 1

Vector (0, 0, 0, 1, 1, 1, 1, ) fits into category 1

public void footer() {