Python AI 入门实战:从线性回归到图像分类
环境搭建与 Hello World
做 AI 开发,环境是第一步。PyTorch 是目前最主流的选择之一,安装时直接通过 pip 拉取即可。
# 安装 PyTorch 及常用依赖
pip install torch torchvision numpy matplotlib
准备好环境后,我们写一个最简单的 AI 程序——线性回归。这能帮你快速理解模型训练的基本流程:定义数据、构建模型、计算损失、反向传播。
import torch
import torch.nn as nn
import numpy as np
import matplotlib.pyplot as plt
# 生成简单的线性训练数据
x = torch.linspace(0, 10, 100).unsqueeze(1)
y = 2 * x + 1 + torch.randn(100, 1) * 0.5
# 定义一个简单的线性模型
class LinearModel(nn.Module):
def __init__(self):
super(LinearModel, self).__init__()
self.linear = nn.Linear(1, 1)
def forward(self, x):
return self.linear(x)
# 实例化模型、损失函数和优化器
model = LinearModel()
criterion = nn.MSELoss()
optimizer = torch.optim.SGD(model.parameters(), lr=0.01)
# 开始训练
epochs = 100
for epoch in range(epochs):
outputs = model(x)
loss = criterion(outputs, y)
optimizer.zero_grad()
loss.backward()
optimizer.step()
(epoch + ) % == :
()
torch.no_grad():
predicted = model(x)
plt.scatter(x.numpy(), y.numpy(), label=)
plt.plot(x.numpy(), predicted.numpy(), , label=)
plt.legend()
plt.show()
()

