PyTorch官网demo解读——第一个神经网络(2) 上一篇:PyTorch官网demo解读——第一个神经网络(1)

上一篇:PyTorch官网demo解读——第一个神经网络(1)

继上一篇文章我们展示了第一个神经网络的完整代码,今天我们来聊聊这个神经网络的模型设计。

这个demo实际上只使用了一个简单的线性模型:y = wx + b;

手写数字识别最后其实只输出10个结果(0~9),所以我们可以将结果表示为包含十个数的一维矩阵 [10],矩阵中的每个值是预测的概率值,表示索引代表的数字的概率。

我们的图片是28*28=784像素的,我们用一维矩阵[784]来表示,所以我们的目标就是将784 => 10。因为这个demo中只使用了一层神经网络,于是我们将我们的权重参数设计成784x10的二维矩阵[784, 10],这样每张图片的像素值乘以权重矩阵就得出10个数的一维矩阵[10],再加上10个数的偏差值bias就是我们预测的结果了。是不是很简单:=))

每个权重参数其实就是一个神经元,那么我们总共只使用了7840个神经元,就可以识别数字了。

每个神经元执行的计算也很简单,就是进行了一次 y = wx + b 的函数运算,结果y再进行一次激活函数运算(log_softmax)

模型运行简化流程如下图:

对应demo中的关键代码:
# 初始化权重和偏差值,权重是随机出来的784*10的矩阵,偏差初始化为0
weights = torch.randn(784, 10) / math.sqrt(784)
weights.requires_grad_()
bias = torch.zeros(10, requires_grad=True)

# 激活函数
def log_softmax(x):
    return x - x.exp().sum(-1).log().unsqueeze(-1)

# 定义模型:y = wx + b
# 实际上就是单层的Linear模型
def model(xb):
    return log_softmax(xb @ weights + bias)

ok,今天就先聊到这里吧!

原来数学如此的美,代码的尽头是数学?

相关推荐

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

    2023-12-18 07:34:02       14 阅读
  2. [解读]Spark Shuffle

    2023-12-18 07:34:02       13 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-18 07:34:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-18 07:34:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-18 07:34:02       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-18 07:34:02       20 阅读

热门阅读

  1. kafka入门(四):kafka生产者发送消息

    2023-12-18 07:34:02       38 阅读
  2. 基于Spring、SpringMVC、MyBatis的校园订餐系统

    2023-12-18 07:34:02       49 阅读
  3. 开源语音识别faster-whisper部署教程

    2023-12-18 07:34:02       42 阅读
  4. C# 内存的分配管理

    2023-12-18 07:34:02       41 阅读
  5. React 表单与事件

    2023-12-18 07:34:02       37 阅读
  6. 第二十章 : Spring Boot 集成RabbitMQ(四)

    2023-12-18 07:34:02       45 阅读
  7. 解决spa页面首屏加载慢的方式笔记

    2023-12-18 07:34:02       43 阅读
  8. 解决阿里云ECS磁盘在线扩容不生效

    2023-12-18 07:34:02       43 阅读
  9. 微服务Redis-Session共享登录状态

    2023-12-18 07:34:02       27 阅读
  10. centos-静态ip及修改主机名

    2023-12-18 07:34:02       36 阅读
  11. 【React基础三】组件传值、高阶组件、Hook

    2023-12-18 07:34:02       38 阅读