【问题标题】:classification using multilayer perceptron使用多层感知器进行分类
【发布时间】:2013-12-11 01:19:29
【问题描述】:

我想使用带有反向传播算法的多层感知器进行分类。

我有 5 个类,任何输入数据都属于一个类。(没有多类)

例如:C1 C2 C3 C4 C5

输入 1 仅属于 C2 输入 2 仅属于 C5

我应该如何表示每个输入的输出层??

input layer                   Output Layer
input1             :           0 1 0 0 0
input1             :           0 0 0 0 1

or 
take only single neuron in output layer.
input layer                   Output Layer
input1             :           0.4
input1             :           1.0

if <=0.2 C1
if <=0.4 C2
if <=0.6 C3
if <=0.8 C4
if <=1.0 C5

还有其他更好的方法吗??

谢谢, 阿蒂什

【问题讨论】:

    标签: neural-network classification


    【解决方案1】:

    在 NN 的许多情况下,您最好配置一个输出节点来表示一个类。 :)

    【讨论】:

      【解决方案2】:

      你应该用 5 个二进制输出来表示你的 5 个类。这被称为 1-of-C 编码、one-hot 编码、虚拟变量、指标,...

      然后,您需要在输出层中使用softmax activation function,它将为您提供类概率作为输出。此外,您应该使用交叉熵 (CE) 误差函数。 Softmax+CE 将在输出层为您提供与 identity+SSE 相同的梯度:dE/da_i = y_i - t_i。 Softmax+CE 已用于 ImageNet 数据集中多达 20,000 个类。

      【讨论】:

        猜你喜欢
        • 2021-07-31
        • 2016-08-23
        • 2021-07-25
        • 2014-06-28
        • 2018-03-27
        • 2017-07-08
        • 2021-12-25
        • 2017-04-12
        相关资源
        最近更新 更多