什么是神经网络?

这篇具有很好参考价值的文章主要介绍了什么是神经网络?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

神经网络,也称为人工神经网络 (ANN) 或模拟神经网络 (SNN),是机器学习的子集,并且是深度学习算法的核心。其名称和结构是受人类大脑的启发,模仿了生物神经元信号相互传递的方式。

一、神经元的组成

每个神经元包含wx+b的运算和一个激活函数组成。

将各个节点想象成其自身的线性回归模型,由输入数据、权重、偏差(或阈值)和输出组成。公式大概是这样的:

什么是神经网络?

∑wixi + bias = w1x1 + w2x2 + w3x3 + bias

一旦确定了输入层,就会分配权重W。 这些权重有助于确定任何给定变量的重要性,与其他输入相比,较大的权重对输出的贡献更大。 将所有输入乘以其各自的权重,然后求和。 之后,输出通过一个激活函数传递,该函数决定了输出结果。

如下:是具有两个神经元的计算过程

什么是神经网络?什么是神经网络?什么是神经网络?

二、激活函数

激活函数(Activation Function)是一种添加到人工神经网络中的函数,旨在帮助网络学习数据中的复杂模式。类似于人类大脑中基于神经元的模型,激活函数最终决定了要发射给下一个神经元的内容。

什么是神经网络?

1.Sigmoid 激活函数

什么是神经网络?

Sigmoid 函数的图像看起来像一个 S 形曲线。

函数表达式如下:

什么是神经网络?

在什么情况下适合使用 Sigmoid 激活函数呢?

Sigmoid 函数的输出范围是 0 到 1。由于输出值限定在 0 到 1,因此它对每个神经元的输出进行了归一化;

用于将预测概率作为输出的模型。由于概率的取值范围是 0 到 1,因此 Sigmoid 函数非常合适;

梯度平滑,避免「跳跃」的输出值;

函数是可微的。这意味着可以找到任意两个点的 sigmoid 曲线的斜率;

明确的预测,即非常接近 1 或 0。

Sigmoid 激活函数有哪些缺点?

倾向于梯度消失;

函数输出不是以 0 为中心的,这会降低权重更新的效率;

Sigmoid 函数执行指数运算,计算机运行得较慢。

2. Tanh / 双曲正切激活函数

3. ReLU 激活函数

什么是神经网络?

ReLU 激活函数图像如上图所示,函数表达式如下:

什么是神经网络?

ReLU 函数是深度学习中较为流行的一种激活函数,相比于 sigmoid 函数和 tanh 函数,它具有如下优点:

当输入为正时,不存在梯度饱和问题。

计算速度快得多。ReLU 函数中只存在线性关系,因此它的计算速度比 sigmoid 和 tanh 更快。

4. Leaky ReLU

5. ELU

什么是神经网络?

6. Softmax

什么是神经网络?

三、损失函数

影响神经网络训练的因素有很多,比如Loss函数,网络结构,参数优化,训练时间等,本节我们主要对loss函数进行介绍,损失函数可以表示为 L(y,f(x)) ,用以衡量真实值 y和预测值 f(x)之间不一致的程度,一般越小越好。为了便于不同损失函数的比较,常将其表示为单变量的函数,在回归问题中这个变量为 [y−f(x)] ,残差;在分类问题中为 [yf(x)] 趋势一致。

回归问题

(1)MSE 均方误差

均方误差(MSE)是回归损失函数中最常用的误差,也常被称为L2 loss,它是预测值与目标值之间差值的平方和,其公式如下所示:

什么是神经网络?

优点:各点都连续光滑,方便求导,具有较为稳定的解。

缺点:不是特别的稳健,因为当函数的输入值距离中心值较远的时候,使用梯度下降法求解的时候梯度很大,可能导致梯度爆炸。

(2)平均绝对误差

平均绝对误差(MAE)是另一种常用的回归损失函数,也常被称为L1 loss,它是目标值与预测值之差绝对值的和,表示了预测值的平均误差幅度,而不需要考虑误差的方向,范围是0到∞,其公式如下所示:

什么是神经网络?

分类问题

(1)0-1损失函数

以二分类问题为例,错误率=1-正确率,也就是0-1损失函数,可以定义为

(2) 绝对值损失函数

L(Y,f(X)=|Y−f(X)|

(3) Softmax Loss

对于多分类问题,也可以使用Softmax Loss。

机器学习模型的 Softmax 层,正确类别对于的输出是:

什么是神经网络?

二分类问题用 One Hot Label + Cross Entropy Loss 或者Logistic loss

多分类问题用softmax, 它是sigmoid函数在多分类问题上的推广。

四、根据梯度计算出使损失函数最小的W

梯度是神经网络里绕不开的一个概念。

一句话:梯度是一个向量,用来指明在函数的某一点,沿着哪个方向函数值上升最快,这个向量的模指明函数值上升程度(速度)的大小。

接下来举例

本质上,梯度就是一个向量,如果函数是n元函数,这个向量就是由n个元素组成。如果是二元函数,

什么是神经网络?

这个向量就是:

什么是神经网络?

计算方式为求偏导,然后带入点值。

可以得到在(1,1)这一点,沿着方向(3,1)函数值上升速度最快。

如图,红色是函数C(x,y)的图像,在(1,1)这一点,可以看到沿着(3,1)移动,函数值(Z轴)是上升最快的。

什么是神经网络?

在神经网络中,我们经常要找一个函数的最小值,这个函数即损失(loss)关于网络中各个参数(parameter)的权重的函数。

如果我们算出这个函数的梯度,我们就知道对每一个参数,如何设置能够使损失上升最快。

那么我们减去这个梯度(即参数vector减去梯度vector),就能使损失下降最快了。

再加一个学习率,就能控制这个下降速度了。文章来源地址https://www.toymoban.com/news/detail-433530.html

到了这里,关于什么是神经网络?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 人工神经网络

    🍑 CV专栏 🍑 神经网络 即 模型 🍤 输入 四个参数 -- 结果 🍑 模型训练(学习) 例子 🍑 模型的 输入x 乘 权值ω 减去 阈值θ -- 激活函数 f 🍑 输出 yi (向下传递 或 直接输出) 🍑 多个神经单元 有机组合 🍤 输入层 -- 隐层 -- 输出层 ⭐ 调整 权值和阈值 使得模型准确 🍑 样本

    2023年04月24日
    浏览(25)
  • 人工智能 -- 神经网络

    什么是人工智能?通俗来讲,就是让机器能像人一样思考。这个无需解释太多,因为通过各种科幻电影我们已经对人工智能很熟悉了。大家现在感兴趣的应该是——如何实现人工智能? 从1956年夏季首次提出“人工智能”这一术语开始,科学家们尝试了各种方法来实现它。这

    2024年02月05日
    浏览(44)
  • 人工神经网络ANN

    人工神经网络的灵感来自其生物学对应物。生物神经网络使大脑能够以复杂的方式处理大量信息。大脑的生物神经网络由大约1000亿个神经元组成,这是大脑的基本处理单元。神经元通过彼此之间巨大的连接(称为突触)来执行其功能。 人体神经元模型如下图所示: 接收区(

    2024年02月11日
    浏览(27)
  • 人工智能:CNN(卷积神经网络)、RNN(循环神经网络)、DNN(深度神经网络)的知识梳理

    卷积神经网络(CNN),也被称为ConvNets或Convolutional Neural Networks,是一种深度学习神经网络架构,主要用于处理和分析具有网格状结构的数据,特别是图像和视频数据。CNN 在计算机视觉任务中表现出色,因为它们能够有效地捕获和识别图像中的特征,具有平移不变性(transla

    2024年02月05日
    浏览(49)
  • 实验11 人工神经网络(2)

    1. 实验目的 ①掌握梯度下降法的优化算法; ②能够使用tf.keras构建Sequential模型,完成多分类任务。 2. 实验内容 ①下载MNIST数据集,建立神经网络模型,实现对MNIST手写数字数据集的识别,调整超参数和训练参数,并以可视化的形式输出模型训练的过程和结果; ②下载Fashio

    2024年02月06日
    浏览(26)
  • 人工智能-卷积神经网络

            人和动物如何把看到的图像转化为大脑中的一个概念?         我们知道计算机是把图转换为一大堆数字,通过训练可以知道这堆数字代表什么含义。但通过前面学过神经网络模型和梯度下降法的方法训练费时费力,而且一旦图片进行改变如缩放、旋转或其他变换,

    2024年02月16日
    浏览(40)
  • 实验10 人工神经网络(1)

    1. 实验目的 ①理解并掌握误差反向传播算法; ②能够使用单层和多层神经网络,完成多分类任务; ③了解常用的激活函数。 2. 实验内容 ①设计单层和多层神经网络结构,并使用TensorFlow建立模型,完成多分类任务; ②调试程序,通过调整超参数和训练模型参数,使模型在测

    2024年02月04日
    浏览(26)
  • 人工智能-线性神经网络

    线性神经网络 在介绍深度神经网络之前,我们需要了解神经网络训练的基础知识。 本章我们将介绍神经网络的整个训练过程, 包括:定义简单的神经网络架构、数据处理、指定损失函数和如何训练模型。 为了更容易学习,我们将从经典算法———— 线性 神经网络开始,介

    2024年02月06日
    浏览(38)
  • 【人工智能】— 深度神经网络、卷积神经网络(CNN)、多卷积核、全连接、池化

    Pre-training + Fine-tuning Pre-training(预训练) : 监督逐层训练是多隐层网络训练的有效手段, 每次训练一层隐层结点, 训练时将上一层隐层结点的输出作为输入, 而本层隐结点的输出作为下一层隐结点的输入, 这称为”预训练”. Fine-tuning(微调) : 在预训练全部完成后, 再对整个网络进行

    2024年02月10日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包