def __init__(self, num_in = 16, num_epoch = 1, scale = 100, parent=None): QWidget.__init__(self, parent) self.setGeometry(200, 200, 500, 500) self.setWindowTitle("Plot Gui") self.com_reader = ComReader('/dev/ttyUSB0', 460800) self.f_data = open("f_data.txt", "w") self.run = 0 self.scale = scale self.mas = [0 for i in xrange(self.scale)] self.num_in = num_in self.num_neuron = 2 self.num_epoch = num_epoch self.net = sofm_net([self.num_in, self.num_neuron]) self.train = 0
y = [] for cur in data: x += [cur[0]] y += [cur[1]] # Переносим значения y в зиапазон 0 - 255 y = normVec(y, 2**14) num_in = int(sys.argv[2]) num_neuron = 2 num_epoch = int(sys.argv[3]) net_data_in = vec2mas(y, num_in) # Создаем сеть и обучаем её p = sofm_net([num_in, num_neuron]) p.net_train(net_data_in, num_epoch) print p.w for i in xrange(len(p.w)): memForm('w' + str(i), p.w[i], num_in) # Формируем выходные данные net_data_out = p.masOut(net_data_in) # Строим графики subplot(311) plot(x, y) subplot(312) plot(range(size(net_data_out)), net_data_out)