您的位置:首页 > 游戏 > 手游 > 大连工业大学是211还是985_华为手机应用引擎_抖音seo关键词优化_本地建站软件有哪些

大连工业大学是211还是985_华为手机应用引擎_抖音seo关键词优化_本地建站软件有哪些

2025/3/14 18:44:48 来源:https://blog.csdn.net/yournameplease/article/details/146198405  浏览:    关键词:大连工业大学是211还是985_华为手机应用引擎_抖音seo关键词优化_本地建站软件有哪些
大连工业大学是211还是985_华为手机应用引擎_抖音seo关键词优化_本地建站软件有哪些

提供一个简单的深度学习模型(类似 DeepSeek 工作原理的简单示例,比如一个简单的神经网络实现手写数字识别,使用 PyTorch 框架)示例代码

import torch
import torch.nn as nn
import torch.optim as optim
from torchvision import datasets, transforms
from torch.utils.data import DataLoader# 数据预处理
transform = transforms.Compose([transforms.ToTensor(),transforms.Normalize((0.1307,), (0.3081,))
])# 加载训练集和测试集
train_dataset = datasets.MNIST(root='./data', train=True,download=True, transform=transform)
test_dataset = datasets.MNIST(root='./data', train=False,download=True, transform=transform)# 创建数据加载器
train_loader = DataLoader(train_dataset, batch_size=64, shuffle=True)
test_loader = DataLoader(test_dataset, batch_size=64, shuffle=False)# 定义神经网络模型
class Net(nn.Module):def __init__(self):super(Net, self).__init__()self.conv1 = nn.Conv2d(1, 16, kernel_size=3, padding=1)self.relu1 = nn.ReLU()self.pool = nn.MaxPool2d(2, 2)self.conv2 = nn.Conv2d(16, 32, kernel_size=3, padding=1)self.relu2 = nn.ReLU()self.fc1 = nn.Linear(32 * 7 * 7, 128)self.relu3 = nn.ReLU()self.fc2 = nn.Linear(128, 10)def forward(self, x):x = self.conv1(x)x = self.relu1(x)x = self.pool(x)x = self.conv2(x)x = self.relu2(x)x = self.pool(x)x = x.view(-1, 32 * 7 * 7)x = self.fc1(x)x = self.relu3(x)x = self.fc2(x)return x# 初始化模型、损失函数和优化器
model = Net()
criterion = nn.CrossEntropyLoss()
optimizer = optim.Adam(model.parameters(), lr=0.001)# 训练模型
num_epochs = 10
for epoch in range(num_epochs):model.train()running_loss = 0.0for batch_idx, (data, target) in enumerate(train_loader):optimizer.zero_grad()output = model(data)loss = criterion(output, target)loss.backward()optimizer.step()running_loss += loss.item()if batch_idx % 10 == 0:print('Train Epoch: {} [{}/{} ({:.0f}%)]\tLoss: {:.6f}'.format(epoch, batch_idx * len(data), len(train_loader.dataset),100. * batch_idx / len(train_loader), loss.item()))# 在测试集上评估模型
model.eval()
test_loss = 0
correct = 0
with torch.no_grad():for data, target in test_loader:output = model(data)test_loss += criterion(output, target).item()pred = output.argmax(dim=1, keepdim=True)correct += pred.eq(target.view_as(pred)).sum().item()test_loss /= len(test_loader.dataset)
print('\nTest set: Average loss: {:.4f}, Accuracy: {}/{} ({:.0f}%)\n'.format(test_loss, correct, len(test_loader.dataset),100. * correct / len(test_loader.dataset)))

以上代码构建了一个简单的卷积神经网络用于 MNIST 手写数字识别,包含了数据加载、模型定义、训练和测试等流程。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com