首页 > 其他分享 >神经网络

神经网络

时间:2023-02-23 15:44:06浏览次数:37  
标签:输出 函数 神经网络 激活 输入 神经元

神经网络

神经网络被发明后,最初的动机是能够编写软件、能够模拟人的大脑或生物的大脑学习和思考的方式。人类的一切思想起源于大脑的神经元,神经元发送电脉冲,有时会与其他的神经元形成新的连接。一个神经元使用树突接受输入,轴突用于输出。在某些数据庞大的应用领域,使用神经网络可以极大地提高运算效率。

image-20230216113518058

一、神经网络是如何工作的

首先,举一个简单的例子,例如我们准备预测衣服的销量如何。我们收集到了衣服的价格、种类以及哪些是畅销的等信息。在这个例子中,衣服的价格是输入,使用逻辑回归后的预测结果作为输出。在逻辑回归中,使用a表示输出,它的意思是“激活”,这是神经科学中的术语,指的是一个神经元向下游的其他神经元发送高输出值或许多电脉冲的程度。这个逻辑回归模型就相当于一个简化的神经元,输入特征“价格”,经过计算输出商品畅销的概率,

image-20230216115142323

事实上逻辑回归算法比真正的神经元简化的多,但是人工神经网络在深度学习中是非常有用的。我们已经了解了单个神经元的工作,接下来用更复杂的例子了解神经网络的工作流程。

我们将使用四个特征来预测衣服的是否畅销,这些特征包括价格、运输成本、营销能力以及面料的质量。我们可以想到,一件衣服是否畅销取决于几个因素,一是可负担性,二是知名度,三是对质量的感知。创造几个人工神经元来估计畅销的概率:

1.可负担性是关于价格和运输成本的函数,输入价格和运输成本,使用一个逻辑回归单元预测是否能负担;

2.创造一个神经元评估知名度,这里主要指营销能力;

3.再创建一个神经元来评估人们是否认为衣服质量好,这一般与价格和面料的质量有关。

将这三个神经元组合在一起成为一层称作隐藏层,因为我们可知数据集样本为(x,y) ,可观察到输入x和输出y,而中间的被隐藏起来了。输入的特征作为一层称为输入层,输出也作为一层称为输出层。可负担性、知名度、质量感知等特征作为隐藏层的激活值。

image-20230216122137287

在这个模型中,选择价格和成本两个特征作为可负担性这个神经元的输入,但如果在大型神经网络中,由我们手动选择哪些特征作为哪些神经元的输入,这是十分麻烦的,于是需要简化模型。神经网络中,每个神经元都处于某一层,每一个神经元都可以访问从上层到输入层的每一个值。通过适当的设置参数,使得神经网络只关注需要作为输入的特征。将输入的几个特征变成特征向量x,输入到隐藏层层,得到几个激活值,这又变成一个激活向量a,将它输入到输出层得到这件衣服畅销的概率。

有意思的是,当我们不看输入层,隐藏层部分到输入层部分实际上是一个逻辑回归模型,使用可负担性、知名度、感知质量作为输入,使用逻辑回归预测畅销的概率。在线性回归模型中,我们手动设计了特征,比如将长和宽的积“面积”作为新的特征。但神经网络所做的是,不需要手动设计特征,它会自动学习特征,这个特点使神经网络成为世界上最强大的学习算法之一。

二、神经网络数学原理及术语

image-20230216163425612

三、前向传播

由于神经网络的计算是从左到右,一层一层的推进,例如从输入x到计算a1再到a2......直到输出,所以这种算法被称为前向传播算法。

image-20230216164638629

四、TensorFlow中的数据形式

先看一下numpy中的数据形式,是如何存储矩阵的。

image-20230216165802844

TensorFlow中用张量表示矩阵

image-20230216171541022

五、在TensorFlow中搭建神经网络

image-20230216173256217

六、前向传播的一般实现(纯Python)

image-20230216182252461

七、人工智能的分类

人工智能分为弱人工智能和强人工智能。弱人工智能指的是在某些应用领域可实现智能化,诸如智能音箱、自动驾驶、智能搜索、智慧农场等。而强人工智能指的是能够模拟人的行为,做人类可以做的任何事。

微信图片_20230222113816

八、激活函数

1、常见的激活函数

经常使用到的激活函数有三种,线性函数、Sigmoid函数、Relu函数。

微信图片_20230222113817

2、如何选择激活函数

通常,我们依据输出标签来选择合适的激活函数。对于二分类问题,只有两种可能的输出,就选择Sigmoid函数;对于输出可能有正有负,就选择线性函数;对于输出为非负值,就选择Relu函数。

微信图片_202302221138171

更多的,在神经网络中,我们通常将隐藏层的激活函数设置成Relu函数,将输出层的激活函数设置成Sigmoid函数,隐藏层一般不使用线性函数。

微信图片_202302221138173

3、为什么需要激活函数

当我们把所有的激活函数都设置成线性,最后的效果是等同于没有改变。这样,神经网络的设计就失去了意义。

微信图片_20230222113818 image-20230222120302000

九、高级优化方法

梯度下降算法是机器学习中被应用得最广泛的优化算法,它是线性回归、逻辑回归还有神经网络早期的基础,但是除此之外还有一些其它的优化算法来最小化代价函数,甚至比梯度下降还好。

Adam算法

Adam算法可以自动调整学习率,当学习率太小导致下降过慢时,Adam算法可以适当提高学习率,使之更快到达最小点;当学习率过大导致下降时发生震荡,Adam算法可以减小学习率,使之更平滑的下降到最低点。

image-20230222151953443

十、其它的网络层类型

目前我们接触过的网络层都是全连接类型,其中这一层的每个神经元都从前一层得到所有的激活。但在实际生活中,可能会使用不同类型的层,在某些工作中可能会看到另一种层类型,被称为卷积层。

image-20230222153133200

为了识别图片上的数字,让隐藏层的每一个神经元只识别图片的一部分区域,这样可提高训练的速度,并且只需要更少的数据,不容易过拟合。这种层被称为卷积层。使用卷积层的神经网络被称为卷积神经网络。

image-20230222153942347

最新的前沿模型还有transformer、LSTM(长短期记忆网络)、attention(注意力模型)。

标签:输出,函数,神经网络,激活,输入,神经元
From: https://www.cnblogs.com/dxmstudy/p/17148214.html

相关文章

  • m基于BP神经网络的房屋价值变换趋势预测matlab仿真
    1.算法描述      住宅价格是住宅市场的核心,住宅市场的变化关系到广大消费者的切身利益,商品房价格是升是降,销售是冷是旺,是社会关注的热点问题。因此,从不同角度来看,对......
  • 详解神经网络基础部件BN层
    摘要:在深度神经网络训练的过程中,由于网络中参数变化而引起网络中间层数据分布发生变化的这一过程被称为内部协变量偏移(InternalCovariateShift),而BN可以解决这个问题。......
  • 人工智能真的快要来临了!全球首个光电子神经网络问世
    神经网络正席卷着计算世界。在它们的帮助下,研究人员得以推进机器学习的进程。面部识别、对象识别、自然语言处理、机器翻译……这些原本都是人类才有的技能,现在逐渐成为......
  • 17、神经网络----线性层以及其他层的介绍
    1、正则化层  Normalization Layers对 输入 采用正则化的话,可以加快神经网络的训练速度  也就是通道数的大小2、RecurrentLayers****(特定网络使用)一般用......
  • 图卷积神经网络分类的pytorch实现
    图神经网络(GNN)目前的主流实现方式就是节点之间的信息汇聚,也就是类似于卷积网络的邻域加权和,比如图卷积网络(GCN)、图注意力网络(GAT)等。下面根据GCN的实现原理使用Pytorch......
  • 15、神经网络----最大池化的使用
    1、打开官网---torch.nn---PoolingLayers最大池化,平均池化,自适应池化最常用的是MaxPool2d   2、池化操作:::    默认情况下 ceil_mode 是False ......
  • Python绘制神经网络模型图
      本文介绍基于Python语言,对神经网络模型的结构进行可视化绘图的方法。  最近需要进行神经网络结构模型的可视化绘图工作。查阅多种方法后,看到很多方法都比较麻烦,例如......
  • 13、神经网络的基本框架----nn.Module的使用
    1、打开pytorch的官网-----官方文档doc里的pytorch-----关于神经网络的一些工具主要在torch.nn里面(nn是neuralnetwork的缩写)2、torch.nn分为不同的类别containers:......
  • 从矩阵的谱半径到神经网络梯度消失
    一、矩阵的范数 二、矩阵的谱半径虽然,谱半径小于等于任意矩阵范数。但是,也必存在一个算子范数,小于等于谱半径+一个小的正数 从线性方程组的迭代法的收敛性......
  • 嵌入式Linux入门级板卡的神经网络框架ncnn移植与测试-米尔i.MX6UL开发板
    本篇测评由电子发烧友的优秀测评者“ALSET”提供。 米尔MYD-Y6ULX-V2开发板,基于NXPi.MX6UL/i.MX6ULL处理器,该开发板被米尔称之为经典王牌产品。本次测试目标是在此......