Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/318.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
编程神经网络时python出错(相当简单…我是python新手) 类神经网络: 定义初始化(自、输入节点、隐藏节点、输出节点、学习速率): self.inodes=输入节点 self.hnodes=隐藏节点 self.onodes=输出节点 self.lr=学习率 通过 def序列(): 通过 def query(): 通过 输入节点=3 隐藏节点=3 输出节点=3 学习率=0.3 n=神经网络(输入节点、隐藏节点、输出节点、学习率) 进口numpy self.wih=(numpy.random.rand(self.hnodes,self.inodes)-0.5) self.who=(numpy.random.rand(self.onodes,self.hnodes)-0.5) --------------------------------------------------------------------------- NameError回溯(最近一次呼叫上次) 在() ---->1 self.wih=(numpy.random.rand(self.hnodes,self.inode)-0.5) 2 self.who=(numpy.random.rand(self.onodes,self.hnodes)-0.5) NameError:未定义名称“self”_Python_Neural Network - Fatal编程技术网

编程神经网络时python出错(相当简单…我是python新手) 类神经网络: 定义初始化(自、输入节点、隐藏节点、输出节点、学习速率): self.inodes=输入节点 self.hnodes=隐藏节点 self.onodes=输出节点 self.lr=学习率 通过 def序列(): 通过 def query(): 通过 输入节点=3 隐藏节点=3 输出节点=3 学习率=0.3 n=神经网络(输入节点、隐藏节点、输出节点、学习率) 进口numpy self.wih=(numpy.random.rand(self.hnodes,self.inodes)-0.5) self.who=(numpy.random.rand(self.onodes,self.hnodes)-0.5) --------------------------------------------------------------------------- NameError回溯(最近一次呼叫上次) 在() ---->1 self.wih=(numpy.random.rand(self.hnodes,self.inode)-0.5) 2 self.who=(numpy.random.rand(self.onodes,self.hnodes)-0.5) NameError:未定义名称“self”

编程神经网络时python出错(相当简单…我是python新手) 类神经网络: 定义初始化(自、输入节点、隐藏节点、输出节点、学习速率): self.inodes=输入节点 self.hnodes=隐藏节点 self.onodes=输出节点 self.lr=学习率 通过 def序列(): 通过 def query(): 通过 输入节点=3 隐藏节点=3 输出节点=3 学习率=0.3 n=神经网络(输入节点、隐藏节点、输出节点、学习率) 进口numpy self.wih=(numpy.random.rand(self.hnodes,self.inodes)-0.5) self.who=(numpy.random.rand(self.onodes,self.hnodes)-0.5) --------------------------------------------------------------------------- NameError回溯(最近一次呼叫上次) 在() ---->1 self.wih=(numpy.random.rand(self.hnodes,self.inode)-0.5) 2 self.who=(numpy.random.rand(self.onodes,self.hnodes)-0.5) NameError:未定义名称“self”,python,neural-network,Python,Neural Network,为什么不定义自己? 那么我如何修复这个错误。。。我忽略了好几次,但仍然找不到任何解决办法。尽管在教程中有这样的解释。非常感谢您的帮助。self被传递到对实例方法的调用中。您正在寻找实例本身的地址 class neuralNetwork: def __init__(self, input_nodes, hidden_nodes, output_nodes, learning_rate): self.inodes = input_nodes self.hnod

为什么不定义自己?


那么我如何修复这个错误。。。我忽略了好几次,但仍然找不到任何解决办法。尽管在教程中有这样的解释。非常感谢您的帮助。

self
被传递到对实例方法的调用中。您正在寻找实例本身的地址

class neuralNetwork:
    def __init__(self, input_nodes, hidden_nodes, output_nodes, learning_rate):
        self.inodes = input_nodes
        self.hnodes = hidden_nodes
        self.onodes = output_nodes
        self.lr = learning_rate
        pass

    def train():
        pass

    def query():
        pass

input_nodes = 3
hidden_nodes = 3
output_nodes = 3

learning_rate = 0.3
n = neuralNetwork(input_nodes,hidden_nodes,output_nodes, learning_rate)

import numpy


self.wih = (numpy.random.rand(self.hnodes, self.inodes) - 0.5)
self.who = (numpy.random.rand(self.onodes, self.hnodes) - 0.5)



---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-20-8474973d8450> in <module>()
----> 1 self.wih = (numpy.random.rand(self.hnodes, self.inodes) - 0.5)
  2 self.who = (numpy.random.rand(self.onodes, self.hnodes) - 0.5)
NameError: name 'self' is not defined
简单地说一下
self
是如何工作的,这并不神奇。以班级为例:

nnet = neuralNetwork(input_nodes,hidden_nodes,output_nodes, learning_rate)
nnet.wih = (numpy.random.rand(nnet.hnodes, nnet.inodes) - 0.5)
nnet.who = (numpy.random.rand(nnet.onodes, nnet.hnodes) - 0.5)

self
作为一个函数调用时被传递到
speak
。可以将其称为
this
,但
self
是Python的惯例

self
被传递到对实例方法的调用中。您正在寻找实例本身的地址

class neuralNetwork:
    def __init__(self, input_nodes, hidden_nodes, output_nodes, learning_rate):
        self.inodes = input_nodes
        self.hnodes = hidden_nodes
        self.onodes = output_nodes
        self.lr = learning_rate
        pass

    def train():
        pass

    def query():
        pass

input_nodes = 3
hidden_nodes = 3
output_nodes = 3

learning_rate = 0.3
n = neuralNetwork(input_nodes,hidden_nodes,output_nodes, learning_rate)

import numpy


self.wih = (numpy.random.rand(self.hnodes, self.inodes) - 0.5)
self.who = (numpy.random.rand(self.onodes, self.hnodes) - 0.5)



---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-20-8474973d8450> in <module>()
----> 1 self.wih = (numpy.random.rand(self.hnodes, self.inodes) - 0.5)
  2 self.who = (numpy.random.rand(self.onodes, self.hnodes) - 0.5)
NameError: name 'self' is not defined
简单地说一下
self
是如何工作的,这并不神奇。以班级为例:

nnet = neuralNetwork(input_nodes,hidden_nodes,output_nodes, learning_rate)
nnet.wih = (numpy.random.rand(nnet.hnodes, nnet.inodes) - 0.5)
nnet.who = (numpy.random.rand(nnet.onodes, nnet.hnodes) - 0.5)

self
作为一个函数调用时被传递到
speak
。可以将其称为
this
,但
self
是Python的惯例

因为您从未定义过
self
。“self”仅在您定义的神经网络函数中定义(顺便说一下,它应该缩进到“类”定义中)。你需要用“n”来代替“self”,因为它是你的神经网络类,我想?那么我该如何定义self?就像你定义其他变量一样。但我认为对你来说,最重要的是要了解你的方法中的
self
实际上是什么。现在,学习Python中OOP的基础知识。因为您从未定义过
self
。“self”仅在您定义的神经网络函数中定义(顺便说一下,应该在“类”定义中缩进)。你需要用“n”来代替“self”,因为它是你的神经网络类,我想?那么我该如何定义self?就像你定义其他变量一样。但我认为对你来说,最重要的是要了解你的方法中的
self
实际上是什么。注意,学习Python中OOP的基本知识。@kamazibel修复了这个问题,我没有更新我如何声明这个变量。TypeError:\uuuu init\uuuuuuuuuu()缺少4个必需的位置参数:“输入节点”、“隐藏节点”、“输出节点”和“学习速率”。@kamazibel将您的参数复制到声明中。您是否打算将
wih
who
分配给
神经网络
?@kamazibel您需要初始化参数(
输入节点
隐藏节点
输出节点
学习速率
)。然后使用上面的@joshk代码。@kamazibel修复了这个问题,我没有更新我声明变量的方式。TypeError:\uuuu init\uuuuuuuuu()缺少4个必需的位置参数:“输入节点”、“隐藏节点”、“输出节点”和“学习速率”。@kamazibel将您的参数复制到声明中。您是否打算将
wih
who
分配给
神经网络
?@kamazibel您需要初始化参数(
输入节点
隐藏节点
输出节点
学习速率
)。然后使用上面的@joshk代码。