classificationLayer

文章目录

  • classificationLayer
    • 语法
    • 描述
    • 例子
      • 创建分类图层
      • 创建加权分类图层
    • 输入参数
      • 名称-值参数
      • `Name`— 图层名称 `" "`(默认)|字符向量|字符串标量
      • `ClassWeights`— 加权交叉熵损失 `"none"`(默认值)的类权重|正数向量
      • `Classes`— 输出层 `的类"auto"`(默认)|分类向量|字符串数组 |字符向量的单元格数组
    • 输出参数
      • `layer`— 分类层 `分类输出层`对象

分类输出图层

语法

layer = classificationLayer
layer = classificationLayer(Name,Value)

描述

分类层计算具有互斥类的分类和加权分类任务的交叉熵损失。

该层根据前一层的输出大小推断类的数量。例如,要指定网络的类 K 的数量,可以在分类图层之前包括输出大小为 K 的全连接图层和 softmax 图层。

图层 = 分类图层创建分类图层。

layer = classificationLayer(Name,Value)` 使用一个或多个名称-值对设置可选的 、 和属性。例如,创建名为 的分类图层。`Name``ClassWeights``Classes``classificationLayer('Name','output')``'output'

例子

创建分类图层

复制命令复制代码

创建名为 的分类图层。'output'

layer = classificationLayer('Name','output')
layer = ClassificationOutputLayer with properties:Name: 'output'Classes: 'auto'ClassWeights: 'none'OutputSize: 'auto'HyperparametersLossFunction: 'crossentropyex'

在数组中包括分类输出图层。Layer

layers = [ ...imageInputLayer([28 28 1])convolution2dLayer(5,20)reluLayermaxPooling2dLayer(2,'Stride',2)fullyConnectedLayer(10)softmaxLayerclassificationLayer]
layers = 7x1 Layer array with layers:1   ''   Image Input             28x28x1 images with 'zerocenter' normalization2   ''   Convolution             20 5x5 convolutions with stride [1  1] and padding [0  0  0  0]3   ''   ReLU                    ReLU4   ''   Max Pooling             2x2 max pooling with stride [2  2] and padding [0  0  0  0]5   ''   Fully Connected         10 fully connected layer6   ''   Softmax                 softmax7   ''   Classification Output   crossentropyex

创建加权分类图层

复制命令复制代码

为名称分别为“cat”、“dog”和“fish”的三个类创建加权分类图层,权重分别为 0.7、0.2 和 0.1。

classes = ["cat" "dog" "fish"];
classWeights = [0.7 0.2 0.1];layer = classificationLayer( ...'Classes',classes, ...'ClassWeights',classWeights)
layer = ClassificationOutputLayer with properties:Name: ''Classes: [cat    dog    fish]ClassWeights: [3x1 double]OutputSize: 3HyperparametersLossFunction: 'crossentropyex'

在图层数组中包括加权分类输出图层。

numClasses = numel(classes);layers = [ ...imageInputLayer([28 28 1])convolution2dLayer(5,20)reluLayermaxPooling2dLayer(2,'Stride',2)fullyConnectedLayer(numClasses)softmaxLayerclassificationLayer('Classes',classes,'ClassWeights',classWeights)]
layers = 7x1 Layer array with layers:1   ''   Image Input             28x28x1 images with 'zerocenter' normalization2   ''   Convolution             20 5x5 convolutions with stride [1  1] and padding [0  0  0  0]3   ''   ReLU                    ReLU4   ''   Max Pooling             2x2 max pooling with stride [2  2] and padding [0  0  0  0]5   ''   Fully Connected         3 fully connected layer6   ''   Softmax                 softmax7   ''   Classification Output   Class weighted crossentropyex with 'cat' and 2 other classes

输入参数

名称-值参数

指定可选的逗号分隔参数对。 是参数名称,并且是相应的值。 必须出现在引号内。可以按任意顺序指定多个名称和值对参数,如 。Name,Value``Name``Value``Name``Name1,Value1,...,NameN,ValueN

示例:分类层(“名称”、“输出”)创建一个名为“输出”的分类图层

Name— 图层名称 " "(默认)|字符向量|字符串标量

图层名称,指定为字符向量或字符串标量。对于 Layer 数组输入,trainNetworkassembleNetworklayerGraphdlnetwork 函数会自动为 Name 设置为 '' 的层分配名称

数据类型: char|string

ClassWeights— 加权交叉熵损失 "none"(默认值)的类权重|正数向量

加权交叉熵损失的类权重,指定为正数或 的向量。'none'

对于矢量类权重,每个元素表示属性中相应类的权重。若要指定类权重的向量,还必须使用“Classes”指定类。Classes

如果属性为 ,则层应用未加权的交叉熵损失。ClassWeights``'none'

Classes— 输出层 的类"auto"(默认)|分类向量|字符串数组 |字符向量的单元格数组

输出层的类,指定为分类向量、字符串数组、字符向量单元格数组或“auto”。如果课程“自动”的,则软件会在训练时自动设置课程。如果指定字符串数组或字符向量 str 的单元格数组,则软件会将输出层的类设置为 categorical(str,str)。

数据类型: char| categorical|string|cell

输出参数

layer— 分类层 分类输出层对象

分类层,作为 ClassificationOutputLayer 对象返回。

【matlab深度学习工具箱】classificationLayer参数详解相关推荐

  1. 【MATLAB深度学习工具箱】学习笔记--体脂估计算例再分析:拟合神经网络fitnet里面的数据结构】

    原文链接如下 [MATLAB深度学习工具箱]学习笔记--体脂估计Body Fat Estimation_bear_miao的博客-CSDN博客介绍本示例展示一个函数拟合神经网络如何根据解剖学测量结果估 ...

  2. 【MATLAB深度学习工具箱】学习笔记--体脂估计算例再分析:拟合神经网络fitnet里面的函数】

    介绍 上一篇 [MATLAB深度学习工具箱]学习笔记--体脂估计算例再分析:拟合神经网络fitnet里面的数据结构]_bear_miao的博客-CSDN博客原文链接如下[MATLAB深度学习工具箱]学 ...

  3. MATLAB调用refprop计算物性参数详解

    MATLAB调用refprop计算物性参数详解 欢迎使用Markdown编辑器 欢迎使用Markdown编辑器 REFPROP(REference Fluid PROPerties)是一款国际权威工质 ...

  4. 深度学习网络模型——Vision Transformer详解 VIT详解

    深度学习网络模型--Vision Transformer详解 VIT详解 通用深度学习网络效果改进调参训练公司自己的数据集,训练步骤记录: 代码实现version-Transformer网络各个流程, ...

  5. 机器学习,深度学习基础算法原理详解(图的搜索、交叉验证、PAC框架、VC-维(持续更新))

    机器学习,深度学习基础算法原理详解(图的搜索.交叉验证.PAC框架.VC-维.支持向量机.核方法(持续更新)) 机器学习,深度学习基础算法原理详解(数据结构部分(持续更新)) 文章目录 1. 图的搜索 ...

  6. 深度学习网络模型——RepVGG网络详解、RepVGG网络训练花分类数据集整体项目实现

    深度学习网络模型--RepVGG网络详解.RepVGG网络训练花分类数据集整体项目实现 0 前言 1 RepVGG Block详解 2 结构重参数化 2.1 融合Conv2d和BN 2.2 Conv2 ...

  7. MATLAB深度学习工具箱

    深度学习工具箱下载地址:https://github.com/rasmusbergpalm/DeepLearnToolbox.(ps:此项目已经停止,不再更新了.相关更加详细的介绍请参考Hinton和 ...

  8. dbn源代码matlab,深度学习工具箱的DBN代码的例子有问题

    从这里找到的,https:// github.co/ rasmusbergpalm/ DeepLearnToolbox 当然,搜索深度学习工具箱也行. function test_example_DB ...

  9. 【深度学习】Batch Normalization详解

    Batch Normalization 学习笔记 原文地址:http://blog.csdn.net/hjimce/article/details/50866313 作者:hjimce 一.背景意义 ...

  10. 深度学习---循环神经网络RNN详解(LSTM)

    上一节我们详细讲解了RNN的其中一个学习算法即BPTT,这个算法是基于BP的,只是和BP不同的是在反向传播时,BPTT的需要追溯上一个时间的权值更新,如下图,当前时刻是s(t),但是反向传播时,他需要 ...

最新文章

  1. svn检出图标不会发生改变_SVN系列操作(二)svn不显示图标的解决方法
  2. 关于前端缓存的一个封装思路
  3. python中transpose函数_对numpy中的transpose和swapaxes函数详解
  4. python 基础篇(一)--linux命令篇
  5. C语言高级编程:数组指针与数组
  6. 开源纯C#工控网关+组态软件(九)定制Visual Studio
  7. java enumeration 排序_Java如何对java.util.Enumeration进行排序?
  8. 4.10/4.11/4.12 lvm讲解 4.13 磁盘故障小案例
  9. tushare 安装
  10. python nltk —— 文本预处理
  11. SecureCRT和SecureFX的下载和安装2022
  12. 网易互娱2020游戏研发实习生笔经面经
  13. dnf mysql数据库密码_mysql重置root密码
  14. EPOCH、INTERATION、BATCH_SIZE的区别
  15. Mysql(下载、安装、环境配置详细图文)
  16. Transflow安装时弹出错误:You are using pip version 9.0.1, however version 19.1.1 is available. You should co
  17. 不会写诗的古人不是好古人 不会写代码的今人不是现代人
  18. 管理的几大基本职能和要求
  19. 【转】Lisp语言发明者、“人工智能之父” John McCarthy与世长辞
  20. j揭秘电脑键盘上你所不知道的秘密。太涨知识了

热门文章

  1. 豆瓣电影、纪录片、书籍......下载神器
  2. 计算机相关专业EI及SCI国际会议及期刊汇总
  3. M70仿真系统软件下载和使用
  4. 【MATLAB】通信信号调制通用函数 — 带通滤波器
  5. 贵州大学旧物交易系统
  6. VOSviewer使用方法(详细便捷)附下载网址
  7. 良心安利陶瓷材质贴图素材网站
  8. 深度学习 和 技术开锁
  9. Android 蓝牙手柄开发
  10. DNF2020年全新脚本展示第三部分