Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Please look at the below section of the source code. In the code you have added a code as for j w in . What

Please look at the below section of the source code. In the code you have added a code as "for j w in ". What is that? What is for i, w in at the end of the line. I pasted your answer at the below.Please correct it , I think there is a mistake. Thanks

image text in transcribed

import random import math

# The number of input units N_INPUTS = 2

# The number of cluster units N_CLUSTERS = 50

# The topology of the cluster units (1-dimensional lattice) TOPOLOGY = [i for i in range(N_CLUSTERS)]

# The initial radius INITIAL_RADIUS = 4

# The epochs at which the radius changes RADIUS_CHANGE_EPOCHS = [1000, 5000, 10000, 25000]

# The initial learning rate INITIAL_LEARNING_RATE = 0.5

# The final learning rate FINAL_LEARNING_RATE = 0.01

# The number of epochs over which to linearly decrease the learning rate LEARNING_RATE_DECAY_EPOCHS = 20000

# The number of training points to generate N_TRAINING_POINTS = 50000

# The maximum value for the initial weights of the cluster units MAX_INITIAL_WEIGHT = 1

# The minimum value for the initial weights of the cluster units MIN_INITIAL_WEIGHT = -1

# The training data training_data = []

# Generate the training data for i in range(N_TRAINING_POINTS): x = random.uniform(-0.5, 0.5) x2 = random.uniform(-0.5, 0.5) if x + x2

# Initialize the weights of the cluster units to random values weights = [[random.uniform(MIN_INITIAL_WEIGHT, MAX_INITIAL_WEIGHT) for j in range(N_INPUTS)] for i in range(N_CLUSTERS)]

# The current radius radius = INITIAL_RADIUS

# The current learning rate learning_rate = INITIAL_LEARNING_RATE

# The current epoch epoch = 0

# Train the network while True: # Increment the epoch counter epoch += 1

# Update the radius and learning rate if necessary if epoch in RADIUS_CHANGE_EPOCHS: radius_index = RADIUS_CHANGE_EPOCHS.index(epoch) radius = [4, 3, 2, 1, 0][radius_index] if epoch

# Shuffle the training data random.shuffle(training_data)

# Iterate over the training data for x in training_data: # Find the winner min_distance = float("inf") winner = None for i, w in

Kohonen self-organizing maps Write a computer program to implement a Kohonen self-organizing neural network. Use 2 input units, 50 cluster units, and a linear topology (one-dimensional lattice) for the cluster units. Allow the winner and its topological neighbors to learn such that: the radius must be chosen as 4 initially, 3 between 10005000 epochs, 2 between 5000 10000 epochs, 1 between 1000025000 epochs and 0 after 25000 epochs (In other words, if unit J is the winner, then nearest 2r units located on the both sides of J also learn, unless Jr50.) Use an initial learning rate of 0.5, and gradually reduce it to 0.01 (over 20000 epochs). The learning rate should be kept constant at 0.01 after 20000 epochs. The initial weights on all cluster units are to be random numbers between 1 and +1 (for each component of the weight vector for each unit). Generate training data as follows: Choose two random numbers between 0.5 and 0.5, and call them x1 and x2. Put the point (x1,x2) in the training set if x12+x22

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image_2

Step: 3

blur-text-image_3

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Advances In Spatial And Temporal Databases 10th International Symposium Sstd 2007 Boston Ma Usa July 2007 Proceedings Lncs 4605

Authors: Dimitris Papadias ,Donghui Zhang ,George Kollios

2007th Edition

3540735399, 978-3540735397

More Books

Students also viewed these Databases questions

Question

7. Identify six intercultural communication dialectics.

Answered: 1 week ago