下面给你一个从零到入门的 Python 深度学习实践路线,配合最常用的工具和示例代码,适合初学者。
建议使用 Python 3.9+
最常用的是 PyTorch 和 TensorFlow
pip install torch torchvision
pip install tensorflow
数据 → 模型 → 损失函数 → 优化器 → 训练 → 评估
import torch
from torch import nn
from torch.utils.data import DataLoader
from sklearn.datasets import make_classification
from sklearn.model_selection import train_test_split
X, y = make_classification(n_samples=1000, n_features=20, random_state=42)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)
X_train = torch.tensor(X_train, dtype=torch.float32)
y_train = torch.tensor(y_train, dtype=torch.long)
X_test = torch.tensor(X_test, dtype=torch.float32)
y_test = torch.tensor(y_test, dtype=torch.long)
class Net(nn.Module):
def __init__(self):
super().__init__()
self.net = nn.Sequential(
nn.Linear(20, 64),
nn.ReLU(),
nn.Linear(64, 2)
)
def forward(self, x):
return self.net(x)
model = Net()
criterion = nn.CrossEntropyLoss()
optimizer = torch.optim.Adam(model.parameters(), lr=0.001)
for epoch in range(50):
model.train()
optimizer.zero_grad()
output = model(X_train)
loss = criterion(output, y_train)
loss.backward()
optimizer.step()
print(f"Epoch {epoch+1}, Loss: {loss.item():.4f}")
model.eval()
with torch.no_grad():
pred = model(X_test).argmax(dim=1)
acc = (pred == y_test).float().mean()
print("Accuracy:", acc.item())
如果你刚入门,推荐 TensorFlow + Keras
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense
model = Sequential([
Dense(64, activation='relu', input_shape=(20,)),
Dense(2, activation='softmax')
])
model.compile(
optimizer='adam',
loss='sparse_categorical_crossentropy',
metrics=['accuracy']
)
model.fit(X_train, y_train, epochs=20, batch_size=32)
| 任务 | 常用库 |
|---|---|
| 图像 | torchvision / TensorFlow |
| 文本 | transformers / torchtext |
| 语音 | librosa + PyTorch |
| 强化学习 | gym + PyTorch |
如果你愿意,我可以:
你现在是零基础还是已经会 Python 了?
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。