丹摩|使用服务器跑深度学习算法

@

文章目录

  • 丹摩|使用服务器跑深度学习算法
  • 前言
  • 一、如何在服务器上跑代码
  • 二、如何跑通深度学习代码
  • 1.引入库
  • 2.生成简单数据
  • 3 右键新建一个ipynb
  • 4 最后点击运行结果如下
  • 总结


前言

深度学习是人工智能领域中备受瞩目的技术之一,它通过多层神经网络模拟人脑的学习过程,帮助计算机在语音识别、图像分类和自然语言处理等领域取得突破性进展。相比传统机器学习,深度学习的一个重要特点是可以自动提取特征,而不需要人工定义特征,这大幅提升了效率和效果。

在本文中,我们将从简单的代码示例入手,介绍深度学习的基本算法和其背后的核心思想。


一、如何在服务器上跑代码

第一步,点击创建实例

在这里插入图片描述


第二步:选择自己心仪的服务器

在这里插入图片描述


第三步:点击立即创建

在这里插入图片描述


第四步 我们创建好实例点击进入

在这里插入图片描述


我们就来到了这个界面

在这里插入图片描述

二、如何跑通深度学习代码

我们用一个简单的深度学习代码示例,用于构建一个两层的神经网络来完成逻辑回归分类任务。我们使用 PyTorch 框架,针对一个简单的二分类任务(例如:判断输入点是属于类别0还是类别1)

1.引入库

代码如下(示例):

import torch
import torch.nn as nn
import torch.optim as optim
import matplotlib.pyplot as plt

2.生成简单数据

代码如下(示例):

# 2. 定义简单的神经网络
class SimpleNN(nn.Module):
    def __init__(self):
        super(SimpleNN, self).__init__()
        self.fc1 = nn.Linear(2, 4)  # 输入为2维,隐藏层为4维
        self.fc2 = nn.Linear(4, 1)  # 隐藏层为4维,输出为1维(二分类)
        self.sigmoid = nn.Sigmoid()  # 二分类激活函数

    def forward(self, x):
        x = torch.relu(self.fc1(x))  # 第一层激活函数ReLU
        x = self.fc2(x)  # 输出层
        x = self.sigmoid(x)  # 使用Sigmoid将输出转换为概率
        return x

# 3. 初始化模型、损失函数和优化器
model = SimpleNN()
criterion = nn.BCELoss()  # 二分类的交叉熵损失
optimizer = optim.Adam(model.parameters(), lr=0.01)

# 4. 训练模型
epochs = 100
losses = []
for epoch in range(epochs):
    # 前向传播
    outputs = model(x_data).squeeze()  # 将模型输出展平
    loss = criterion(outputs, y_data)  # 计算损失

    # 反向传播和优化
    optimizer.zero_grad()  # 梯度清零
    loss.backward()  # 反向传播
    optimizer.step()  # 更新参数

    losses.append(loss.item())
    if (epoch + 1) % 10 == 0:
        print(f"Epoch [{epoch+1}/{epochs}], Loss: {loss.item():.4f}")

# 5. 可视化训练损失
plt.plot(losses)
plt.xlabel('Epoch')
plt.ylabel('Loss')
plt.title('Training Loss')
plt.show()

# 6. 测试模型
with torch.no_grad():
    test_point = torch.tensor([[0.6, 0.6], [0.2, 0.2]])
    prediction = model(test_point).squeeze()
    print("Test Points: ", test_point)
    print("Predicted Probabilities: ", prediction)

3 右键新建一个ipynb

在这里插入图片描述

4 最后点击运行结果如下

在这里插入图片描述

总结

通过这个简单的深度学习代码示例,我们学习了如何使用 PyTorch 构建一个两层的神经网络来解决基本的二分类问题。从数据生成到模型训练,再到测试预测,我们完整地体验了深度学习的核心流程。

在这里插入图片描述

Logo

尧米是由西云算力与CSDN联合运营的AI算力和模型开源社区品牌,为基于DaModel智算平台的AI应用企业和泛AI开发者提供技术交流与成果转化平台。

更多推荐