一、PyTorch 簡介
PyTorch 是由 Facebook AI Research 團隊開發的開源深度學習框架。它以動態圖機制、靈活性強、易于調試而著稱,廣泛應用于自然語言處理、計算機視覺和學術研究。
二、安裝 PyTorch
2.1 通過官網選擇安裝命令(推薦)
訪問官網安裝頁面:
https://pytorch.org/get-started/locally/
選擇操作系統、Package、Python版本、CUDA版本,自動生成安裝命令。
2.2 pip 安裝(CPU 版本)
pip install torch torchvision torchaudio
2.3 pip 安裝(GPU + CUDA 版本示例)
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
注意:需安裝對應版本的 NVIDIA 驅動和 CUDA Toolkit。
2.4 conda 安裝(推薦 Anaconda 用戶)
conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
三、驗證安裝
import torch
print(torch.__version__)
print("CUDA 是否可用:", torch.cuda.is_available())
四、PyTorch 基本使用
4.1 創建張量
import torchx = torch.tensor([1.0, 2.0, 3.0])
y = torch.ones(3)
print(x + y)
4.2 Tensor 與 NumPy 互轉
import numpy as npa = np.array([1, 2, 3])
b = torch.from_numpy(a)
c = b.numpy()
4.3 使用 GPU
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
x = torch.rand(3, 3).to(device)
五、構建神經網絡模型
import torch.nn as nn
import torch.nn.functional as Fclass Net(nn.Module):def __init__(self):super(Net, self).__init__()self.fc1 = nn.Linear(784, 128)self.fc2 = nn.Linear(128, 10)def forward(self, x):x = F.relu(self.fc1(x))return self.fc2(x)
六、訓練模型示例
model = Net()
criterion = nn.CrossEntropyLoss()
optimizer = torch.optim.SGD(model.parameters(), lr=0.01)for epoch in range(10):# 假設有 inputs 和 labelsoutputs = model(inputs)loss = criterion(outputs, labels)optimizer.zero_grad()loss.backward()optimizer.step()
七、保存與加載模型
保存
torch.save(model.state_dict(), 'model.pth')
加載
model.load_state_dict(torch.load('model.pth'))
model.eval()
八、常見問題
Q1: 安裝后 torch
無法導入?
請檢查當前環境是否為正確的 Python 解釋器,并確保 PyTorch 安裝成功。
Q2: CUDA 不可用?
請確認:
- 安裝的 PyTorch 是 GPU 版本
- 安裝了兼容的 CUDA 驅動和工具包
- 顯卡驅動安裝無誤
九、學習資源推薦
- PyTorch 中文文檔
- 官方文檔
- 動手學深度學習(PyTorch)
- 深度學習 100 例項目
本文由“小奇Java面試”原創發布,轉載請注明出處。
可以搜索【小奇JAVA面試】第一時間閱讀,回復【資料】獲取福利,回復【項目】獲取項目源碼,回復【簡歷模板】獲取簡歷模板,回復【學習路線圖】獲取學習路線圖。