python - 为什么代码无法逼近平方函数?
问题描述
为什么以下代码不能用作平方逼近器?我得到奇怪的尺寸。当我尝试绘制损失时,图表不知何故没有显示任何内容。我是 pytorch 的初学者,所以我将不胜感激。
import torch
from torch import nn
import matplotlib.pyplot as plt
import numpy as np
data = [[i] for i in range(-10000, 10000)]
y = [[i[0] * i[0]] for i in data]
data=torch.FloatTensor(data)
y=torch.FloatTensor(y)
class MyModel(nn.Module):
def __init__(self, numfeatures, outfeatures):
super().__init__()
self.modele = nn.Sequential(
nn.Linear( numfeatures, 2*numfeatures),
nn.ReLU(),
nn.Linear(2 * numfeatures, 4 * numfeatures),
nn.ReLU(),
nn.Linear(4* numfeatures, 2 * numfeatures),
nn.ReLU(),
nn.Linear(2*numfeatures, numfeatures),
)
def forward(self, x):
return self.modele(x)
model = MyModel(1, 1)
criterion = nn.MSELoss()
optimizer = torch.optim.SGD(model.parameters(), lr=0.01)
n_epochs = 10000
epoch_loss= []
for i in range(n_epochs):
y_pred = model(data)
loss = criterion(y_pred, y)
optimizer.zero_grad()
loss.backward()
optimizer.step()
epoch_loss.append(loss.item())
plt.plot(epoch_loss)
解决方案
推荐阅读
- angular - 无法预测 Angular 中扫描仪或键盘的输入
- javascript - D3 Charting Tool:如何在柱形图中的目标线(附加水平线)右侧添加标签
- ubuntu - k8 在 bazel info local_cpu_resources 的输出中意味着什么
- java - 如何在 Android 的 TextView 和 EditText 中显示来自 API 服务器的 JSON 数据?
- python - 如何编写for循环来查找Python中每一行的多列中存在或不存在的特定数字?
- php - 从值创建数组键。我已经创建了数组定义到波纹管。我区分了实际结果和预期结果
- javascript - Chrome滚动条占用空间,但在样式化之前是不可见的
- android - 如何在 Android 的 OnTextChange 侦听器中验证 DOB?
- amazon-web-services - 使用公共子网有多安全?
- wordpress - Wordpress 创世纪主题:如何从当前类别的子类别中排除帖子