HOME 首页
SERVICE 服务产品
XINMEITI 新媒体代运营
CASE 服务案例
NEWS 热点资讯
ABOUT 关于我们
CONTACT 联系我们
创意岭
让品牌有温度、有情感
专注品牌策划15年

    神经网络的分类方式(神经网络的分类方式有)

    发布时间:2023-04-13 14:44:13     稿源: 创意岭    阅读: 72        

    大家好!今天让创意岭的小编来大家介绍下关于神经网络的分类方式的问题,以下是小编对此问题的归纳整理,让我们一起来看看吧。

    开始之前先推荐一个非常厉害的Ai人工智能工具,一键生成原创文章、方案、文案、工作计划、工作报告、论文、代码、作文、做题和对话答疑等等

    只需要输入关键词,就能返回你想要的内容,越精准,写出的就越详细,有微信小程序端、在线网页版、PC客户端

    官网:https://ai.de1919.com

    创意岭作为行业内优秀的企业,服务客户遍布全球各地,如需了解SEO相关业务请拨打电话175-8598-2043,或添加微信:1454722008

    本文目录:

    神经网络的分类方式(神经网络的分类方式有)

    一、神经网络(Neural Network)

    (1)结构:许多树突(dendrite)用于输入,一个轴突 (axon)用于输出。

    (2)特性:兴奋性和传导性。兴奋性是指当信号量超过某个阈值时,细胞体就会被激活,产生电脉冲。传导性是指电脉冲沿着轴突并通过突触传递到其它神经元。

    (3)有两种状态的机器:激活时为“是”,不激活时为“否”。神经细胞的状态取决于从其他神经细胞接收到的信号量,以及突触的性质(抑制或加强)。

    (1)神经元——不重要

    ① 神经元是包含权重和偏置项的 函数 :接收数据后,执行一些计算,然后使用激活函数将数据限制在一个范围内(多数情况下)。

    ② 单个神经元:线性可分的情况下,本质是一条直线, ,这条直线将数据划分为两类。而线性分类器本身就是一个单层神经网络。

    ③ 神经网络:非线性可分的情况下,神经网络通过多个隐层的方法来实现非线性的函数。

    (2)权重/参数/连接(Weight)——最重要

    每一个连接上都有一个权重。一个神经网络的训练算法就是让权重的值调整到最佳,以使得整个网络的预测效果最好。

    (3)偏置项(Bias Units)——必须

    ① 如果没有偏置项,所有的函数都会经过原点。

    ② 正则化偏置会导致欠拟合:若对偏置正则化,会导致激活变得更加简单,偏差就会上升,学习的能力就会下降。

    ③ 偏置的大小度量了神经元产生激励(激活)的难易程度。

    (1)定义:也称为转换函数,是一种将输入 (input) 转成输出 (output) 的函数。

    (2)作用:一般直线拟合的精确度要比曲线差很多,引入激活函数能给神经网络 增加一些非线性 的特性。

    (3)性质:

    ① 非线性:导数不是常数,否则就退化成直线。对于一些画一条直线仍然无法分开的问题,非线性可以把直线变弯,就能包罗万象;

    ② 可微性:当优化方法是基于梯度的时候,处处可导为后向传播算法提供了核心条件;

    ③ 输出范围:一般限定在[0,1],使得神经元对一些比较大的输入会比较稳定;

    ④ 非饱和性:饱和就是指,当输入比较大的时候输出几乎没变化,会导致梯度消失;

    ⑤ 单调性:导数符号不变,输出不会上蹿下跳,让神经网络训练容易收敛。

    (1)线性函数 (linear function)—— purelin()

    (2)符号函数 (sign function)—— hardlim() 

    ① 如果z值高于阈值,则激活设置为1或yes,神经元将被激活。

    ② 如果z值低于阈值,则激活设置为0或no,神经元不会被激活。

    (3)对率函数 (sigmoid function)—— logsig()

    ① 优点:光滑S型曲线连续可导,函数阈值有上限。

    ② 缺点:❶ 函数饱和使梯度消失,两端梯度几乎为0,更新困难,做不深;

                    ❷ 输出不是0中心,将影响梯度下降的运作,收敛异常慢;

                    ❸ 幂运算相对来讲比较耗时

    (4)双曲正切函数(hyperbolic tangent function)—— tansig()

    ① 优点:取值范围0中心化,防止了梯度偏差

    ② 缺点:梯度消失现象依然存在,但相对于sigmoid函数问题较轻

    (5)整流线性单元 ReLU 函数(rectified linear unit)

    ① 优点:❶ 分段线性函数,它的非线性性很弱,因此网络做得很深;

                    ❷ 由于它的线性、非饱和性, 对于随机梯度下降的收敛有巨大的加速作用;

    ② 缺点:❶ 当x<0,梯度都变成0,参数无法更新,也导致了数据多样化的丢失;

                    ❷ 输出不是0中心

    (6)渗漏型整流线性单元激活函数 Leaky ReLU 函数

    ① 优点:❶ 是为解决“ReLU死亡”问题的尝试,在计算导数时允许较小的梯度;

                    ❷ 非饱和的公式,不包含指数运算,计算速度快。

    ② 缺点:❶ 无法避免梯度爆炸问题; (没有体现优于ReLU)

                    ❷ 神经网络不学习 α 值。

    (7)指数线性单元 ELU (Exponential Linear Units)

    ① 优点:❶ 能避免“死亡 ReLU” 问题;

                    ❷ 能得到负值输出,这能帮助网络向正确的方向推动权重和偏置变化;

                    ❸ 在计算梯度时能得到激活,而不是让它们等于 0。

    ② 缺点:❶ 由于包含指数运算,所以计算时间更长;

                    ❷ 无法避免梯度爆炸问题; (没有体现优于ReLU)

                    ❸ 神经网络不学习 α 值。

    (8)Maxout(对 ReLU 和 Leaky ReLU的一般化归纳)

    ① 优点:❶ 拥有ReLU的所有优点(线性和不饱和)

                    ❷ 没有ReLU的缺点(死亡的ReLU单元)

                    ❸ 可以拟合任意凸函数

    ② 缺点 :参数数量增加了一倍。难训练,容易过拟合

    (9)Swish

    ① 优点:❶ 在负半轴也有一定的不饱和区,参数的利用率更大

                    ❷ 无上界有下界、平滑、非单调

                    ❸ 在深层模型上的效果优于 ReLU

    每个层都包含一定数量的单元(units)。增加层可增加神经网络输出的非线性。

    (1)输入层:就是接收原始数据,然后往隐层送

    (2)输出层:神经网络的决策输出

    (3)隐藏层:神经网络的关键。把前一层的向量变成新的向量,让数据变得线性可分。

    (1)结构:仅包含输入层和输出层,直接相连。

    (2)作用:仅能表示 线性可分 函数或决策,且一定可以在有限的迭代次数中收敛。

    (3)局限:可以建立与门、或门、非门等,但无法建立更为复杂的异或门(XOR),即两个输入相同时输出1,否则输出0。 (“AI winter”)

    (1)目的:拟合某个函数      (两层神经网络可以逼近任意连续函数)

    (2)结构:包含输入层、隐藏层和输出层 ,由于从输入到输出的过程中不存在与模型自身的反馈连接,因此被称为“前馈”。    (层与层之间全连接)

    (3)作用: 非线性 分类、聚类、预测等,通过训练,可以学习到数据中隐含的知识。

    (4)局限:计算复杂、计算速度慢、容易陷入局部最优解,通常要将它们与其他网络结合形成新的网络。

    (5)前向传播算法(Forward Propagation)

    ① 方法:从左至右逐级依赖的算法模型,即网络如何根据输入X得到输出Y,最终的输出值和样本值作比较, 计算出误差 。

    ② 目的:完成了一次正反向传播,就完成了一次神经网络的训练迭代。通过输出层的误差,快速求解对每个ω、b的偏导,利用梯度下降法,使Loss越来越小。

    ② 局限:为使最终的误差达到最小,要不断修改参数值,但神经网络的每条连接线上都有不同权重参数,修改这些参数变得棘手。

    (6)误差反向传播(Back Propagation)

    ① 原理:梯度下降法求局部极值

    ② 方法:从后往前,从输出层开始计算 L 对当前层的微分,获得各层的误差信号,此误差信号即作为修正单元权值的依据。计算结束以后,所要的两个参数矩阵的 梯度 就都有了。

    ③ 局限:如果激活函数是饱和的,带来的缺陷就是系统迭代更新变慢,系统收敛就慢,当然这是可以有办法弥补的,一种方法是使用 交叉熵函数 作为损失函数。

    (1)原理:随着网络的层数增加,每一层对于前一层次的抽象表示更深入。在神经网络中,每一层神经元学习到的是前一层神经元值的更抽象的表示。通过抽取更抽象的特征来对事物进行区分,从而获得更好的区分与分类能力。

    (2)方法:ReLU函数在训练多层神经网络时,更容易收敛,并且预测性能更好。

    (3)优点:① 易于构建,表达能力强,基本单元便可扩展为复杂的非线性函数

                          ② 并行性号,有利于在分布是系统上应用

    (4)局限:① 优化算法只能获得局部极值,性能与初始值相关

                          ② 调参理论性缺乏

                          ③ 不可解释,与实际任务关联性模糊

    (1)原理:由手工设计卷积核变成自动学习卷积核

    (2)卷积(Convolutional layer): 输入与卷积核相乘再累加 (内积、加权叠加)

    ① 公式:

    ② 目的:提取输入的不同特征,得到维度很大的 特征图(feature map)

    ③ 卷积核:需要训练的参数。一般为奇数维,有中心像素点,便于定位卷积核

    ④ 特点:局部感知、参数变少、权重共享、分层提取

    (3)池化(Pooling Layer):用更高层的抽象表达来表示主要特征,又称“降采样”

    ① 分类: 最大 (出现与否)、平均(保留整体)、随机(避免过拟合)

    ② 目的:降维,不需要训练参数,得到新的、维度较小的特征

    (4)步长(stride):若假设输入大小是n∗n,卷积核的大小是f∗f,步长是s,则最后的feature map的大小为o∗o,其中

    (5)填充(zero-padding)

    ① Full模式:即从卷积核(fileter)和输入刚相交开始做卷积,没有元素的部分做补0操作。

    ② Valid模式:卷积核和输入完全相交开始做卷积,这种模式不需要补0。

    ③ Same模式:当卷积核的中心C和输入开始相交时做卷积。没有元素的部分做补0操作。

    (7)激活函数:加入非线性特征

    (8)全连接层(Fully-connected layer)

    如果说卷积层、池化层和激活函数层等是将原始数据映射到隐层特征空间(决定计算速度),全连接层则起到将学到的“分布式特征表示”映射到样本标记空间的作用(决定参数个数)。

    参考:

    [1]  神经网络(入门最详细)_ruthy的博客-CSDN博客_神经网络算法入门

    [2]  神经网络(容易被忽视的基础知识) - Evan的文章 - 知乎

    [3]  人工神经网络——王的机器

    [4]  如何简单形象又有趣地讲解神经网络是什么? - 舒小曼的回答 - 知乎

    [5]  神经网络15分钟入门!足够通俗易懂了吧 - Mr.括号的文章 - 知乎

    [6]  神经网络——最易懂最清晰的一篇文章_illikang的博客-CSDN博客_神经网络

    [7]  直觉化深度学习教程——什么是前向传播——CSDN

    [8]  “反向传播算法”过程及公式推导(超直观好懂的Backpropagation)_aift的专栏-CSDN

    [9]  卷积、反卷积、池化、反池化——CSDN

    [10]  浙大机器学习课程- bilibili.com

    二、神经网络及其分类

    前馈网络中各个神经元按接受信息的先后,分为不同的组,每一组可以看作一个神经层,每一层中的神经元接受前一层神经元的输出,并输出到下一层神经元。整个网络中的信息是朝一个方向传播,没有反向的信息传播(优化算法 是什么反向传播来着)

    回答上章提出 是否每层激活函数一样的问题,

    答案是,是的。

    每一层的输出(活性值) 等于净输入 代入激活函数 以此来实现 非线性 结构 b就是偏置,也就是偏差 每一层都不一样。

    净输入 表示成向量,权重 表示成矩阵

    diag 是个对角矩阵,也就是说,除了对角线,其余全为0

    三、神经网络的分类:

    选择模式:这将取决于数据的表示和应用。过于复杂的模型往往会导致问题的学习。

    学习算法:在学习算法之间有无数的权衡。几乎所有的算法为了一个特定的数据集训练将会很好地与正确的超参数合作。然而,选择和调整的算法上看不见的数据训练需要显著量的实验。

    稳健性:如果该模型中,成本函数和学习算法,适当地选择所得到的神经网络可以是非常健壮的。有了正确的实施,人工神经网络,可以自然地应用于在线学习和大型数据集的应用程序。其简单的实现和表现在结构上主要依赖本地的存在,使得在硬件快速,并行实现。

    神经网络的分类方式(神经网络的分类方式有)

    四、Matlab—神经网络二分类

    %% 神经网络二分类问题

    clc,clear,close all

    %% 对照组指标数据 0组

    p1=[0.73 9.9 512.6 0.000488341 94.23

    0.58 13.3 105.5 0.00028624 123.86

    0.52 12.8 596.4 0.000898535 105.47

    0.41 12.7 621.9 0.003519715 110.65

    0.51 9 342 0.001070026 123.61

    0.73 11.7 237.4 0.000592125 103.07

    0.72 10.6 670.1 0.001646966 108.40

    0.61 11.2 210.8 0.000714758 125.00

    0.6 7.1 614.7 0.002473218 112.82

    0.62 6 234.8 0.011008547 128.19

    0.6 7.3 126.5 0.001716387 118.42

    0.53 8 506.6 0.002412081 140.29

    0.6 9.9 254.8 0.00047552 124.17

    0.58 11.9 376.7 0.001550388 112.13

    0.62 10.7 570.5 0.001077933 125.78

    0.79 8.5 105.9 0.000389824 105.67

    0.81 7.6 137.8 0.000960825 112.74

    0.56 5.7 148.6 0.001310584 117.40

    0.63 7.5 97 0.001244019 119.11

    ]; %归为0

    %% 实验组指标数据 1组

    p2=[0.88 14.1 168.9 0.00319027 104.30

    0.67 7.2 141.2 0.000685297 90.61

    0.9 9.4 298.5 0.004820393 90.46

    0.68 10.8 70.3 0.000395073 98.36

    1.25 9.2 1614.6 0.076472875 87.21

    0.5 9.2 210.2 0.001139238 115.26

    0.72 12.6 132.4 0.00102688 81.74

    0.64 8.6 243.9 0.000489883 114.94

    0.97 16.9 581.4 0.005763578 68.53

    0.67 10.6 242.8 0.00101917 95.64

    0.54 7 372.6 0.002005217 123.43

    0.86 10.1 172.4 0.002088703 85.23

    0.68 13.6 213.1 0.001856427 115.22

    2.16 37.1 2206.6 0.027308957 33.12

    1.02 21.5 75.3 0.010366863 70.40

    0.73 11.8 100.8 0.000373529 109.38

    3.14 22.1 1727.2 0.942625053 9.11

    0.77 9.8 103.3 0.001319323 119.84

    0.64 10.8 100.1 0.028400355 120.72

    1.85 18.4 4761.6 0.232148915 31.60

    0.84 7.7 93.3 0.001710846 96.96

    1.3 9.8 410.1 0.570991575 74.78

    ]; %归为1

    %% 结果标签

    flag = [ones(size(p1,1),1); zeros(size(p2,1),1)];

    %% 神经网络

    p=[p1;p2]';

    pr=minmax(p);

    goal=[ones(1,size(p1,1)),zeros(1,size(p2,1));zeros(1,size(p1,1)),ones(1,size(p2,1))];

    % plot(p1(:,1),p1(:,2),'h',p2(:,1),p2(:,2),'o')

    net=newff(pr,[3,2],{'logsig','logsig'});  % 3个隐层,2种传递方式

    net.trainParam.show = 10;

    net.trainParam.lr = 0.05;

    net.trainParam.goal = 1e-10;    % 容忍误差

    net.trainParam.epochs = 1000;  % 迭代次数

    net = train(net,p,goal);

    %% 训练结果

    outcome = sim(net,p) ;%给p1和p2分类作用,分为0和1

    train_predict(outcome(1,:) >= 0.5,1) = 1;

    train_predict(outcome(1,:) <  0.5,1) = 0;

    true = sum(1 - abs(flag - train_predict)) / size(flag,1)

    %% 预测

    %{

    x = [55 0.89 2.89 1.16 1.03

    461.7 0.97 1.13 1.37 0.47

    148.3 0.49 1.56 0.71 0.66

    ]'; % 指标数据

    y = sim(net,x) %给待鉴定样本分类

    test_predict(y(1,:) >= 0.5,1) = 1;

    test_predict(y(1,:) <  0.5,1) = 0;

    %}

    以上就是关于神经网络的分类方式相关问题的回答。希望能帮到你,如有更多相关问题,您也可以联系我们的客服进行咨询,客服也会为您讲解更多精彩的知识和内容。


    推荐阅读:

    神经网络是线性分类器吗(神经网络是线性分类器吗为什么)

    画gpt神经网络(gin图神经网络)

    神经网络的分类方式(神经网络的分类方式有)

    学校ip形象设计说明

    网上那些约的是真的假的(网上那些约的安全吗)