【问题标题】:Numpy Neural Network error:'NeuralNetwork' object has no attribute 'think'Numpy 神经网络错误:'NeuralNetwork' 对象没有属性'think'
【发布时间】:2018-01-27 02:44:39
【问题描述】:

我对学习一些机器学习很感兴趣,所以我开始四处点击。我开始按照说明创建此代码。

from numpy import exp, array, random, dot

class NeuralNetwork():
    def __init__(self):
        # seed the genarator
        random.seed(1)
        self.synaptic_weights = 2 * random.random((3,1)) - 1
    
    def __sigmoid(self, x):
        return 1 /(1 + exp(-x))

    def predict(self, inputs):
        return self.__sigmoid(dot(inputs, self.synaptic_weights))

    def __sigmoid_derivative(self, x):
        return x * (x - 1)

    def train(self, trainingSetInputs, trainingSetOutputs, numberOfIterations):
        for iteration in range(numberOfIterations):
            output = self.predict(trainingSetInputs)
            error = trainingSetOutputs - output
            adjustment = dot(trainingSetInputs.T, error * 
self.__sigmoid_derivative(output))
            self.synaptic_weights += adjustment





if __name__ == '__main__':
    # make one network
    neuralNetwork = NeuralNetwork()

    print('random starting synaptic weights')
    print(neuralNetwork.synaptic_weights)

    # training data
    trainingSetInputs = array([[0,0,1], [1,1,1], [1,0,1], [0,1,1]])
    trainingSetOutputs = array([[0,1,1,0]]).T

    #train the network 10000 times
    neuralNetwork.train(trainingSetInputs, trainingSetOutputs, 10000)

    print('new wheights')
    print(neuralNetwork.synaptic_weights)

    # test the network
    print("testing")
    print(neuralNetwork.think(array([1,0,1])))

我按照信中的说明进行操作,但也许我错过了什么? 他的教程是here

编辑:我得到的错误是:'NeuralNetwork' 对象没有属性'think'

【问题讨论】:

  • 您还没有创建一个名为think() 的方法,那么为什么要这样做呢?
  • 您发布的链接是针对 youtube.... 定义的神经网络也没有 think 方法,因此该错误是意料之中的
  • 您忘记在您的NeuralNetwork() 类中实现think() 方法。
  • 好吧对不起,这主要是我的错,我不是最好的程序员,虽然我正在努力变得更好

标签: python numpy neural-network


【解决方案1】:

你需要创建 think() 方法。查看您的代码应该是:

def think(self, inputs):
    #pass inputs through our single neuron(our single neuron)
    return self.___sigmoid(dot(inputs, self.synaptic_weights))

这样做,你会没事的!

【讨论】:

    猜你喜欢
    • 2020-10-02
    • 1970-01-01
    • 2018-08-04
    • 2020-04-11
    • 2017-11-20
    • 2020-10-02
    • 2021-03-11
    • 2021-01-25
    • 2020-01-16
    相关资源
    最近更新 更多