Neural network 用于异常值检测的复制器神经网络,导致相同预测的逐步函数

Neural network 用于异常值检测的复制器神经网络,导致相同预测的逐步函数,neural-network,outliers,Neural Network,Outliers,在我的项目中,我的目标之一是找到航空发动机数据中的异常值,并选择使用Replicator神经网络来这样做,并阅读以下关于它的报告(),我对逐步函数(第4页,图3)和由此产生的预测值有一点了解 上述报告中对replicator神经网络的解释做了最好的描述,但作为背景,我构建的replicator神经网络的工作原理是:输出数量与输入数量相同,具有3个隐藏层,具有以下激活功能: 隐层1=tanh乙状体S1(θ)=tanh, 隐层2=阶梯式,S2(θ)=1/2+1/(2(k− 1) ){求和每个变量j}

在我的项目中,我的目标之一是找到航空发动机数据中的异常值,并选择使用Replicator神经网络来这样做,并阅读以下关于它的报告(),我对逐步函数(第4页,图3)和由此产生的预测值有一点了解

上述报告中对replicator神经网络的解释做了最好的描述,但作为背景,我构建的replicator神经网络的工作原理是:输出数量与输入数量相同,具有3个隐藏层,具有以下激活功能:

隐层1=tanh乙状体S1(θ)=tanh, 隐层2=阶梯式,S2(θ)=1/2+1/(2(k− 1) ){求和每个变量j}tanh[a3(θ)−(j/N)] 隐层3=tanh乙状体S1(θ)=tanh, 输出层4=正常S形S3(θ)=1/1+e^-θ 我已经实现了这个算法,它似乎正在训练中(因为在训练过程中均方误差稳步下降)。我唯一不明白的是,当应用带有逐步激活功能的中间层时,预测是如何进行的,因为它会导致3个中间节点的激活变为特定的离散值(例如,我上次在3个中间节点上的激活是1.0,-1.0,2.0),这会导致这些值向前传播,每次我都会得到非常相似或完全相同的预测

报告第3-4页的章节对算法进行了最好的描述,但我不知道要解决这个问题我必须做些什么,我也没有太多时间:(

任何帮助都将不胜感激


谢谢

我面临着实现此算法的问题,以下是我对您可能遇到的问题的见解:中间层通过使用逐步函数,实质上是对数据执行聚类。每一层将数据转换为离散数字,可以解释为网格中的坐标想象一下,我们在中间层使用两个神经元,步长值在2到2之间,增量为1。这样我们就定义了一个5x5网格,其中每个特征集都会被放置。你允许的步骤越多,网格越多,网格越多,你所拥有的“簇”就越多。

这听起来很好,毕竟,我们正在将数据压缩成一个更小的(维度)表示,然后用它来尝试重建原始输入

然而,这一步进函数本身有一个大问题:反向传播(理论上)不适用于步进函数。你可以在中找到更多关于这一点的信息。在上一篇文章中,他们建议将步进函数切换为类似斜坡的函数。也就是说,拥有几乎无限数量的簇

您的问题可能与此直接相关。请尝试将逐步函数切换为渐变函数,并测量错误在整个学习阶段的变化情况


顺便问一下,你有没有这些代码可供其他研究人员使用?

哇,我很抱歉回答了这么长时间!当我回到问题所在并感谢你时,渐变函数非常有意义。(意外按下enter键)我要做的是挖掘我写的代码。我基本上在C++中创建了一个通用的神经网络程序,在那里你可以指定层和节点,它是在我的旧硬盘上,当时很痛苦,但我会在我有机会的时候找到它并把它贴在任何其他研究者的网上。