主要内容

ClassificationLayer.

分类输出层

描述

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

该层根据前一层的输出大小推断类的数量。例如,指定类的数量K.在网络中,您可以包含具有输出大小的完全连接的图层K.和分类层之前的软MAX层。

= ClassificationLayer.创建分类层。

例子

= ClassificationLayer(名称,价值的)设置可选姓名ClassWeights,课堂属性使用一个或多个名称值对。例如,ClassificationLayer('name','输出')创建一个名称为'输出'

例子

全部收缩

使用名称创建分类层'输出'

tillay = classificationlayer('姓名''输出'的)
tillay = scassificationOutputLayer具有属性:名称:'输出'类:'auto'类重量:'无'输出大小:'auto'hyperparameters lockfunction:'crossentropyex'

类中包含分类输出层大批。

层= [......ImageInputLayer([28 28 1])卷积2dlayer(5,20)rululayer maxpooling2dlayer(2,'走吧',2)全连接层(10)SoftMaxLayer分类层]
图层数组:1”的形象输入28 x28x1图像zerocenter正常化2”卷积20 5 x5旋转步[1]和填充[0 0 0 0]3”ReLU ReLU 4”马克斯池2 x2马克斯池步(2 - 2)和填充[0 0 0 0]5“完全连接10完全连接层6”Softmax Softmax crossentropyex 7”分类输出

为三个类创建加权分类层,其中包含名称“CAT”,“狗”和“鱼”,分别为0.7,0.2和0.1分别为0.7,0.2和0.1。

类= [“猫”“狗”“鱼”];Classweights = [0.7 0.2 0.1];tillay = classificationlayer(......“类”、类......'classweight',同等级)
tillay = ClassificationOutputLayer带有属性:名称:''类:[Cat Dog Fish]类别重量:[3x1 Double]输出:3 HyperParameter损失:'crossentropyex'

在图层阵列中包括加权分类输出层。

numclasses = numel(类);层= [......ImageInputLayer([28 28 1])卷积2dlayer(5,20)rululayer maxpooling2dlayer(2,'走吧',2)全连接列(numclasses)softmaxlayer类层(“类”、类'classweight',同等级)]
图层数组:1”的形象输入28 x28x1图像zerocenter正常化2”卷积20 5 x5旋转步[1]和填充[0 0 0 0]3”ReLU ReLU 4”马克斯池2 x2马克斯池步(2 - 2)和填充[0 0 0 0]5“完全连接3完全连接层6”Softmax Softmax 7”分类输出类加权Crossentropyex与'cat'和其他两个类

输入参数

全部收缩

名称 - 值参数

指定可选的逗号分离对名称,价值参数。姓名是参数名称和价值为对应值。姓名必须出现在引号内。您可以以任何顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:ClassificationLayer('name','输出')创建一个名称为'输出'

层名,指定为字符向量或字符串标量。为阵列输入,Trainnetwork.assembleNetworklayerGraph,dlnetwork.函数自动为层分配名称姓名设置''

数据类型:字符|细绳

加权交叉熵丢失的类重量,指定为正数的向量或'没有任何'

对于向量类的权值,每个元素表示课堂财产。要指定类权重向量,还必须指定使用的类“类”

如果是ClassWeights属性是'没有任何',则该层应用未加权交叉熵损失。

输出层的类,指定为分类向量、字符串数组、字符向量单元格数组或'汽车'.如果课堂'汽车',然后软件会在培训时间自动设置类。如果指定字符串数组或字符向量数组str,则软件将输出层的类设置为分类(str,str)

数据类型:字符|分类|细绳|细胞

输出参数

全部收缩

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

有关连接层以构建卷积神经网络架构的信息,请参见

更多关于

全部收缩

分类层

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

对于典型的分类网络,分类层通常遵循Softmax层。在分类层中,Trainnetwork.从SoftMax函数中获取值,并将每个输入分配给其中一个K.使用跨熵函数的相互排斥的类,用于1-of-K.编码方案[1]

损失 = - 1 N. σ. N. = 1 N. σ. 一世 = 1 K. W. 一世 T. N. 一世 ln y N. 一世

在哪里N.是样本数量,K.是课程的数量, W. 一世 是课堂的重量一世 T. N. 一世 是指的指标N.样本属于一世班级,和 y N. 一世 输出的是样品吗N.为类一世,本例中为softmax函数的值。换句话说, y N. 一世 网络关联的概率是多少N.用课堂输入一世

参考文献

[1]毕晓普模式识别和机器学习.施普林格,纽约,纽约,2006。

扩展能力

C / C ++代码生成
使用MATLAB®Coder™生成C和c++代码。

GPU代码生成
使用GPU Coder™为NVIDIA®GPU生成CUDA®代码。

在R2016A介绍