神经网络分类器如何从仅绘制决策平面进行分类?

人工智能 神经网络 分类 线性代数
2021-11-14 06:43:07

我知道神经网络基本上会扭曲(非线性变换)并改变输入空间的视角(线性变换)以绘制平面来对数据进行分类。如果输入是平面的一侧并因此输出决策,网络如何推断?提前致谢。

3个回答

如果您正在使用监督学习,则每个训练示例都有一个标签。该标签是您对所提供输入的分类。就像线性或逻辑回归一样,如果您的问题只有 2 个类别(例如确定肿瘤是否为恶性),您的网络将只有一个输出。1.0 的输出值可以代表一个类,0.0 的输出代表另一个。这基本上是确定您的输入在多维平面的哪一侧。

如果您有超过 2 (m) 个类,那么您的网络将有 m 个输出。每个输出将代表输入匹配该类的可能性。例如,如果您的图像识别网络有 4 个类别:狗、卡车、船、人,您将有 4 个输出,每个输出代表该图像是类别之一的可能性。把它想象成 4 个独立的平面,每个平面都在做一个决定:这个图像是否匹配这个类({狗、卡车、船、人}的 1 个)。如果你有狗的输出:0.3,卡车:0.25,船:0.7,人:0.4,一个简单的算法是简单地选择具有最大值的类——在这种情况下,它将这个图像分类为船。

对于和我有同样问题的其他人,我会回答的。

我上面的观点是不一致的。最终,简单前馈网络的最后一层没有前几层表现出的任何特殊属性。NN 只是美化的数学函数。它用线性(矩阵乘法)和非线性函数扭曲空间。

没有“决策平面”,只有函数映射到我们想要将输入(在这种情况下为二进制分类问题)映射到两个单独的数字(通常为 1 或 0)的最后。

希望这对进入 NN 的人们有所了解。

所以我认为在逻辑回归任务的情况下,神经网络的工作原理是这样的。

首先,我认为所有节点都执行将点映射到象限的工作,在 n 空间坐标系中,n 空间由问题陈述本身迭代决定。简而言之,节点决定手头任务中输入事项的多项式项的组合。在隐藏层中,因为我们不执行分类任务,它输出实数。但是输出层根据分类任务对数字进行四舍五入。

如果你有一个隐藏层,它的节点可以被认为是输出重要的值。它给了神经网络一定的自由度。就像在机器学习中我们选择多项式组合一样,NN 自己迭代地选择它。但是如果看到输出节点的功能,它只是将数字四舍五入到01因此,输出节点可以在没有隐藏层的情况下执行简单的分类任务(比如一个点位于哪个象限)。我相信如果我们能够破译隐藏节点想要传达给我们的信息,我们就可以完全移除输出节点。因为隐藏节点传达信息,例如,在哪个象限中,一个点仅以一种神秘的格式存在,由输出节点迭代解析。在知道了信息之后,我们可以很容易地通过逻辑语句来解决它。

但这颂歌并不贬低输出节点的力量。在线性回归的情况下,没有任何隐藏层的单个输出节点可以近似为正弦波的四分之一(通过调整 的指数e使 t 看起来像正弦波)。所以它只取决于你如何使用神经网络。

但基本原理是相同的,节点决定输入是正数还是负数(在逻辑激活的情况下)或输出一个实数,具体取决于您如何使用它。

如果您发现任何矛盾之处,请纠正我。