神经网络 (neural network) 概念

更新日期: 2023-01-04 阅读次数: 299 字数: 479 分类: AI

在 PyTorch 的教程及书籍中,经常会看到神经网络这个词。

英文是:neural network。

neural 是个形容词,神经的,神经系统的。中文发音:呢若 / 牛若。

代码中也常见到

torch.nn

# 或者是
from torch import nn

nn 即是 neural network 的缩写。

神经网络是由一堆神经元(neuron)组成。神经元以层(layer)的形式组织起来。

神经网络的作用

简单来说,一个神经网络就是一套算法,自动推导出输入数据与其对应的输出数据(结果)之间的关系。

举个例子,假如你有一套数据集,里面记录了历年的高考成绩,所在省份,及填报志愿的学校排名,以及最终是否被录取。

我们就可以基于这套数据,利用神经网络推算出,一个省份考生的成绩及志愿学校,最终是否会被录取。

一图胜千言

这幅图描绘了一个神经网络的结构

  • 最左侧是三个输入数据
  • 每个箭头代表了一个权重,weight,所以参数形式为 w。权重从训练数据集中自动推算得出
  • 权重可以语义化的理解为每个 item 的重要性。
  • 每个圆圈代表一个神经元

神经元 (neuron)

每个神经元就是一个小的计算单元。其执行简单的计算,以集中处理一个问题。 可以理解为一个小的函数。

中文发音: 诺兰,牛若

层 (layer)

有三种类型的层

  • 输入层 input layer
  • 隐藏层 hidden layer
  • 输出层 output layer

每一层包含了一系列的神经元。但是 output layer 除外,其只有一个神经元。

AI 神经网络 VS 生物学神经网络

AI 中的神经网络只是类比生物学上的神经网络,但是在处理逻辑上,最好不要代入去理解。 容易引起误解。

参考

  • 《Deep Learning with PyTorch 1.x》2019年11月出版

tags: pytorch

谈笑风生

魔法修勾

巨佬!学到了

爱评论不评论