Я тестирую NN на одном изображении и получаю метку '2'
вместо '1'
. Как я могу визуализировать как изображение то, что видит NN? Я хотел бы визуально сравнить тестовое изображение ниже с тем, что видит NN.
Тестовое изображение:
![test image](https://i.stack.imgur.com/3Si0k.png)
Сеть
class Network():
def __init__(self, inn, hidd, outt, lr):
self.InNodes = inn
self.HiddenNodes = hidd
self.OutNodes = outt
self.LearningRate = lr
self.wih = numpy.random.normal(0.0, pow(self.InNodes,-0.5), (self.HiddenNodes,self.InNodes))
self.woh = numpy.random.normal(0.0, pow(self.OutNodes,-0.5), (self.OutNodes,self.HiddenNodes))
pass
def train(self, inputs_list, targets_list):
inputs = numpy.array(inputs_list, ndmin=2).T
targets = numpy.array(targets_list, ndmin=2).T
hidden_inputs = numpy.dot(self.wih, inputs)
hidden_outputs = sigmoid(hidden_inputs)
self.final_inputs = numpy.dot(self.woh, hidden_outputs)
self.final_outputs = sigmoid(self.final_inputs)
output_errors = targets - self.final_outputs
hidden_errors = numpy.dot(self.woh.T, output_errors)
self.woh = self.woh + self.LearningRate * numpy.dot((output_errors * self.final_outputs * (1 - self.final_outputs)), numpy.transpose(hidden_outputs))
self.wih = self.wih + self.LearningRate * numpy.dot((hidden_errors * hidden_outputs * (1 - hidden_outputs)), numpy.transpose(inputs))
def query(self, inputs_list):
inputs = numpy.array(inputs_list, ndmin=2).T
hidden_inputs = numpy.dot(self.wih, inputs)
print('wih shape = ', hidden_inputs.shape, self.wih.shape)
hidden_outputs = sigmoid(hidden_inputs)
self.final_inputs = numpy.dot(self.woh, hidden_outputs)
print('woh shape = ', self.final_inputs.shape, self.woh.shape)
self.final_outputs = sigmoid(self.final_inputs)
return self.final_outputs
def sigmoid(z):
"""The sigmoid function."""
return 1.0/(1.0+numpy.exp(-z))
Тренировка
import mnist_loader
training_data, validation_data, test_data = mnist_loader.load_data_wrapper()
input_nodes = 784
hidden_nodes = 10
output_nodes = 10
learning = 0.1
Net = Network(input_nodes, hidden_nodes, output_nodes, learning)
img_array = imageio.imread(r"\IMG\output-onlinepngtools.png", as_gray=True)