Pytorch学习第二周--Day 12-13: 构建你的第一个神经网络

Day 12-13: 构建你的第一个神经网络

在这两天里,我动手实践构建了我的第一个神经网络,目的是解决一个基本的分类问题。使用了两个主流的深度学习框架:PyTorch和TensorFlow,以对比和理解它们在神经网络构建方面的不同。

目标:构建一个全连接的神经网络来处理分类问题。

过程:

设计网络结构,包括输入层、若干隐藏层和输出层。
选择合适的激活函数,如ReLU。
定义损失函数和优化器,例如使用交叉熵损失和Adam优化器。
实现:

在PyTorch中,我定义了一个nn.Module类,通过定义forward方法来实现数据的前向传播。
在TensorFlow中,我使用Sequential API来构建模型,这是一种更简洁、更高级的方法。
以下是具体的实现代码:

PyTorch代码示例
import torch
import torch.nn as nn
import torch.optim as optim

定义一个全连接神经网络

class FullyConnectedNN(nn.Module):
def init(self):
super(FullyConnectedNN, self).init()
self.fc1 = nn.Linear(784, 128) # 假设输入是28x28图像,展平后的大小为784
self.relu = nn.ReLU()
self.fc2 = nn.Linear(128, 10) # 假设有10个类别

def forward(self, x):
    x = self.fc1(x)
    x = self.relu(x)
    x = self.fc2(x)
    return x

实例化模型

model = FullyConnectedNN()

定义损失函数和优化器

criterion = nn.CrossEntropyLoss()
optimizer = optim.Adam(model.parameters(), lr=0.001)

TensorFlow代码示例

import tensorflow as tf
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense

定义一个全连接神经网络

model = Sequential([
Dense(128, activation=‘relu’, input_shape=(784,)), # 假设输入是28x28图像,展平后的大小为784
Dense(10, activation=‘softmax’) # 假设有10个类别
])

编译模型

model.compile(optimizer=‘adam’,
loss=‘sparse_categorical_crossentropy’,
metrics=[‘accuracy’])

在这两个实现中,我专注于构建一个相对简单的神经网络,适用于处理基本的分类问题。通过这个练习,我加深了对神经网络结构和深度学习框架的理解,并获得了实际操作的经验。

相关推荐

  1. #04 构建第一神经网络PyTorch入门指南

    2024-01-20 11:08:01       14 阅读
  2. pytorch-11 神经网络学习

    2024-01-20 11:08:01       17 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-20 11:08:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-20 11:08:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-20 11:08:01       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-20 11:08:01       20 阅读

热门阅读

  1. LSTM 模型“实现”整数相加运算

    2024-01-20 11:08:01       32 阅读
  2. Unity中的协程

    2024-01-20 11:08:01       35 阅读
  3. 什么是CSS Sprite,以及如何在页面或网站中使用它

    2024-01-20 11:08:01       28 阅读
  4. vue解决部署文件缓存方式

    2024-01-20 11:08:01       33 阅读
  5. 「HDLBits题解」Counters

    2024-01-20 11:08:01       36 阅读
  6. 服务器防火墙有哪些用处

    2024-01-20 11:08:01       36 阅读
  7. vue3使用element-plus 树组件(el-tree)数据回显

    2024-01-20 11:08:01       30 阅读
  8. 【洛谷 P2084】进制转换 题解(模拟+字符串)

    2024-01-20 11:08:01       32 阅读