如何解决函数缺少 2 个必需的位置参数:“X_train”和“y_train”
- 我正在使用 Jupyter notebook 编写 Python 参考并遇到此类错误:
TypeError Traceback (most recent call last)
<ipython-input-11-3a2267df06a1> in <module>
1 # Section II: First run the backpropagation simulation
----> 2 model_s = vanilla_backpropagation()
TypeError: vanilla_backpropagation() missing 2 required positional arguments: 'X_train' and 'y_train'
- 当我尝试运行它时引起的:
# Section II: First run the backpropagation simulation
model_s = vanilla_backpropagation()
- 这是该 vanilla_backpropagation 函数的代码并拆分训练测试
def vanilla_backpropagation(X_train,y_train):
best_model = None
best_score = 100.00
for i in range(N):
model_s = build_ann(LOSS)
model_s.fit(X_train,y_train,epochs = STEPS,batch_size = batch_size,verbose = 0)
train_score = model_s.evaluate(X_train,batch_size = BATCH_SIZE,verbose = 0)
if train_score > best_score:
best_model = model_s
best_score = train_score
return best_model
if __name__ == "__main__":
# Section I: Build the data set
X_train,X_test,y_test = train_test_split(X,y,test_size=0.2,shuffle = None)
有人可以帮忙解决这个错误吗?我已经坚持了好几天了。谢谢
解决方法
当您定义具有某些输入的函数时,您需要在调用函数时将这些输入提供给该函数。在主函数的最后一行拆分数据后
X_train,X_test,y_train,y_test = train_test_split(X,y,test_size=0.2,shuffle = None)
你可以像这样调用你的函数
vanilla_backpropagation(X_train,y_train)
您似乎对 Python 和深度学习都不熟悉。请阅读相关文档和示例,首先学习如何训练网络和使用python函数。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。