paddle线性回归预测代码
时间: 2023-09-14 07:04:41 浏览: 112
paddle版本的tracking代码
以下是使用PaddlePaddle实现的线性回归预测代码:
```python
import paddle
import numpy as np
# 定义数据
x_data = np.array([[1.0], [2.0], [3.0], [4.0], [5.0]])
y_data = np.array([[2.0], [4.0], [6.0], [8.0], [10.0]])
# 定义网络结构
x = paddle.to_tensor(x_data)
y = paddle.to_tensor(y_data)
w = paddle.create_parameter(shape=[1, 1], dtype='float32', default_initializer=paddle.nn.initializer.Constant(0.0))
b = paddle.create_parameter(shape=[1], dtype='float32', default_initializer=paddle.nn.initializer.Constant(0.0))
# 定义损失函数
def cost(x, y, w, b):
y_pred = paddle.matmul(x, w) + b
return paddle.mean(paddle.square(y_pred - y))
# 定义优化器
optimizer = paddle.optimizer.SGD(learning_rate=0.01)
# 训练模型
for i in range(1000):
loss = cost(x, y, w, b)
loss.backward()
optimizer.step()
optimizer.clear_grad()
if i % 100 == 0:
print('Epoch:{}, Loss:{}'.format(i, loss.numpy()))
# 预测结果
x_test = np.array([[6.0], [7.0], [8.0]])
y_test = paddle.matmul(paddle.to_tensor(x_test), w) + b
print('Prediction:', y_test.numpy())
```
该代码中,首先定义了数据集,然后定义了线性回归模型的网络结构,包括权重w和偏置b。接着,定义了损失函数和优化器,并在循环中进行训练,每100轮输出一次损失值。最后,用训练好的模型对新的数据进行预测。
阅读全文