利用paddle库写一个线性回归代码
时间: 2024-09-24 09:03:33 浏览: 34
在PaddlePaddle(简称Paddle)库中,你可以很容易地编写一个简单的线性回归模型。PaddlePaddle是一个强大的深度学习框架,下面是一个基本的例子,展示如何创建一个线性回归模型并训练它:
```python
import paddle
# 定义数据结构
data = paddle.to_tensor([[1], [2], [3], [4], [5]], dtype='float32') # X值
label = paddle.to_tensor([2, 4, 6, 8, 10], dtype='float32') # Y值
# 定义模型参数
w = paddle.Parameter(paddle.randn([1, data.shape[1]]), name='weight')
b = paddle.Parameter(paddle.zeros([1]), name='bias')
# 定义预测函数(模型)
def linear_regression(x):
return x @ w + b
# 损失函数和优化器
loss_fn = paddle.nn.MSELoss() # 均方误差损失
optimizer = paddle.optimizer.SGD(learning_rate=0.01) # 使用随机梯度下降优化器
# 训练循环
for epoch in range(100): # 设置训练轮数
y_pred = linear_regression(data)
loss = loss_fn(y_pred, label)
# 反向传播和更新参数
loss.backward()
optimizer.step()
optimizer.clear_grad()
print(f'Epoch {epoch+1}, Loss: {loss.numpy()}')
```
在这个例子中,我们首先创建了输入数据`X`和标签`Y`,然后定义了权重参数`w`和偏置参数`b`。通过前向传播计算预测值,接着使用均方误差作为损失函数,并使用SGD优化器进行参数更新。每次迭代都会打印当前的损失。
阅读全文