3.12_ValueError: x and y must have same first dimension, but have shapes (100,) and (1,)
在练习3.12-权重衰减时,运行如下代码报错:
#定义和训练测试
batch_size,num_epochs,lr = 1,100,0.003
net,loss = d2l.linreg,d2l.squared_lossdataset = torch.utils.data.TensorDataset(train_features,train_labels)
train_iter = torch.utils.data.DataLoader(dataset,batch_size,shuffle=True)def fit_and_plot(lambd):w,b = init_params()train_ls,test_ls = [],[]for _ in range(num_epochs):for X,y in train_iter:#添加了L2范数惩罚项l = loss(net(X,w,b),y) + lambd * l2_penalty(w)l = l.sum()if w.grad is not None:w.grad.data.zero_()b.grad.data.zero_()l.backward()d2l.sgd([w,b],lr,batch_size)train_ls.append(loss(net(train_features,w,b),train_labels).mean().item())test_ls.append(loss(net(test_features,w,b),test_labels).mean().item())d2l.semilogy(range(1,num_epochs + 1),train_ls,'epochs','loss',range(1,num_epochs + 1),test_ls,['train','test'])print('L2 norm of w:',w.norm().item())#观察过拟合
fit_and_plot(lambd=0)
如图:
字面意思是“x和y必须具有相同的第一维度,但具有形状(100)和(1)”。报错时所指向的包是确认无误的,逐行对比输入代码和书里的代码内容也没有差异,最后发现是最后几行没有对齐所导致的
修改后:
train_ls.append(loss(net(train_features,w,b),train_labels).mean().item())test_ls.append(loss(net(test_features,w,b),test_labels).mean().item())d2l.semilogy(range(1,num_epochs + 1),train_ls,'epochs','loss',range(1,num_epochs + 1),test_ls,['train','test'])print('L2 norm of w:',w.norm().item())
运行结果 :
3.12_ValueError: x and y must have same first dimension, but have shapes (100,) and (1,)相关推荐
- ValueError: x and y must have same first dimension, but have shapes (100,) and (0,)
成功解决运行YOLOX训练日志文件数据画图报错 ValueError: x and y must have same first dimension, but have shapes (100,) a ...
- ValueError: x and y must have same first dimension, but have shapes (0,) and (951424,)
ValueError: x and y must have same first dimension, but have shapes (0,) and (951424,) 使用Python画图的时候 ...
- 【Python】ValueError: x and y must have same first dimension, but have shapes (5,) and (4,)
调用 matplotlib 作图的时候,输入的 x 和 y 的值数量不一致产生的.画图的 xy 的值必须在一个维度,就是 x 有几个数,y 就要有几个数.比如下面代码,我 x 输出 [2, 4, 6 ...
- Python如何对数组求导(差分)?
文章目录 diff ediff1d diff diff是numpy中用于求差分的函数,函数定义为 diff(a, n=1, axis=-1, prepend=<no value>, app ...
- python predict y和x是必须一致吗_数据科学python错误 - ValueError:x和y必须具有相同的第一维...
对于背景,我计算了一组sample_means,每个样本大小200次.然后,我计算每个样本大小的平均值和标准偏差,然后将其存储在数组中.这是我的代码: in[] = sample_sizes = np ...
- 基于Python的QPSK音频的波形和频谱
1.需求分析 现有一个QPSK.wav的音频文件,要求使用Python读取该文件画出其波形和频谱. 2.代码实现 import wave import numpy as np import pyl ...
- 机器学习实战——Logistic回归
书籍:<机器学习实战>中文版 IDE:PyCharm Edu 4.02 环境:Adaconda3 python3.6 关键词:sigmoid函数.批梯度上升法.随机梯度上升法 from ...
- NameError: name ‘weights‘ is not defined
Error display: NameError: name 'weights' is not defined Root Cause: missing code : # add this code w ...
- Machine Learning in Action 读书笔记---第5章 Logistic回归
Machine Learning in Action 读书笔记 第5章 Logistic回归 文章目录 Machine Learning in Action 读书笔记 一.Logistic回归 1.L ...
- Python数据分析入门与实践-笔记
第1章 实验环境的搭建 本章将主要介绍Anaconda和Jupyter Notebook.包括如何在windows,Mac,linux等平台上安装Anaconda,以及Jupyter Notebook ...
最新文章
- Python显示图像
- WKWebView自适应大小
- python转义符个数,python(五)——运算符、字符串、转义字符
- php pdo预处理语句与存储过程
- [课程设计]Scrum 多鱼点餐系统(团队交流日)
- AC日记——【模板】最小费用最大流 P3381
- Java命令行界面(第12部分):CLAJR
- input内的字体颜色_嘉兴市硅胶喷涂颜色油订制
- 简单版:带干扰线的图形验证码生成
- java枚举怎么编译不行的_java – 打开枚举时Maven编译失败
- 在机器学习中,likelihood和probability的区别是什么?
- [BZOJ]2820: YY的GCD
- 【python教程入门学习】用Python制作迷宫GIF
- python tkinterRadiobutton控件
- 计算机应用基础数制试题及答案,计算机应用基础试题及答案1
- 欧拉角到方向余弦矩阵
- word用宏设置图片的大小
- 2019-07高德地图行政区域省市区json数据获取(php代码)
- Excel 多级下拉菜单设置,数据有效性
- 解压文件-提示:“必要的压缩卷不存在”
热门文章
- 【安全牛学习笔记】离线密码破解
- vue面试题整理(2022-持续更新中...)
- 接口测试工具设计与实现
- 计算机网络规范化发生在,关于计算机网络系统工程设计工作规范化的几点建议.pdf...
- 就业管理系统(Java毕业设计:SpringBoot项目)
- 遗传算法适应度函数的计算原理
- 树上战争 HDU - 2545
- 校友全剧透CMU :ME + 转CS + 其他主要项
- VTK学习之一(基本介绍、一个简单的VTK例子)
- 【论文笔记】Imagenet-trained cnns are Biased towards Texture; Increasing Shape Bias Improves accuracy