搭建一个三层神经网络的模板
这些代码可用于创建、训练和查询3层神经网络(输入层,隐藏层,输出层),进行几乎任何任务。
class neuralNetwork :
创建一个神经网络
def _init_(self, inputnodes, hiddennodes, outputnodes, learningrate) :
self.inodes = inputnodes
self.hnodes = hiddennodes
self.onodes = outputnodes
self.wih= numpy.random.normal(0.0,pow(self.hnodes,-0.5),(self.hnodes, self.inodes))
self.who= numpy.random.normal(0.0,pow(self.onodes,-0.5),(self.onodes, self.hnodes))
self.lr = learningrate
self.activation_function = lambda x: scipy.special.expit(x)
pass
训练这个神经网络
def train(self, input_list, targets_list) :
inputs = nunmpy.array(input_list, ndmin=2).T
targets =numpy.array(target_list, ndmin=2).T
hidden_inputs = numpy.dot(self.wih, inputs)
hidden