我正在尝试建立可以识别数字(0〜9)的数字网络
但是由于某些错误,它不起作用。
所以我该怎么办?
当我尝试建立该代码时,出现此错误消息。
---------------------------------
NameError Traceback (most recent call last)
<ipython-input-3-bdb6f33f1c38> in <module>
5 get_ipython().run_line_magic('matplotlib', 'inline')
6
----> 7 class neuralNetwork:
8 def __init__(self, inputnodes, hiddennodes, outputnodes, learningrate):
9 self.inodes = inputnodes
<ipython-input-3-bdb6f33f1c38> in neuralNetwork()
56 learing_rate = 0.1
57
---> 58 n = neuralNetwork(input_nodes, hidden_nodes, output_nodes, learning_rate)
59
60 training_data_file = open("C:/ProgramData/Anaconda3/pkgs/notebook-6.0.0-py37_0/Lib/site-packages/notebook/mnist/mnist_trian.csv", 'r')
NameError: name 'neuralNetwork' is not defined
import numpy
import scipy.special
import matplotlib.pyplot
%matplotlib inline
class neuralNetwork:
def __init__(self, inputnodes, hiddennodes, outputnodes, learningrate):
self.inodes = inputnodes
self.hnodes = hiddennodes
self.onodes = outputnodes
self.lr =learningrate
----
n = neuralNetwork(input_nodes, hidden_nodes, output_nodes, learning_rate)
training_data_file = open("C:/ProgramData/Anaconda3/pkgs/notebook-6.0.0-py37_0/Lib/site-packages/notebook/mnist/mnist_trian.csv", 'r')
training_data_list = training_data_file.readlines()
traning_data_file.close()
epochs = 5
for e in range(epochs):
for record in training_data_list:
all_values = record.split(',')
inputs - (numpy.asfarray(all_values[1:])/255.0 * 0.99) + 0.01
targets = numpy.zeros(output_nodes)+0.01
targets[int(all_values[0])] = 0.99
n.train(inputs, targets)
pass
pass
-----
您正在尝试初始化神经网络内部该类。确保缩进正确,并确保使用正确的值初始化类(因此不要简单地复制参数名称)