问题标签 [encog]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
295 浏览

artificial-intelligence - 不同类型的时间序列分割算法,而不是使用 Encog 的滑动窗口

我想知道 Encog AI Framework 是否支持不同类型的分割算法,而不是普通的滑动寡妇方法来进行时间序列预测。Eamonn Keogh 的调查显示,滑动窗是最糟糕的。

这是调查https://www.cs.rutgers.edu/~pazzani/Publications/survey.pdf

让我知道 Encog 是否已经支持用于 ts 预测的不同类型的时间序列分割。

谢谢

0 投票
1 回答
231 浏览

java - 输出文件中的 ENCOG 值被错误地非规范化?

以下是使用最新版本的 encog-workbench (3.2.0) 生成的

我想知道这是一个错误还是我没有掌握输出文件的目的。

当我在 encog 工作台中运行 [ sunspot example ][1] 时,没有隔离,我希望输出文件具有模型的拟合值。当我创建验证图表时,它向我展示了教程中的数字,所以这似乎是正确的。

但是当我转到 sunspots_output.csv 输出文件时,我得到以下输出:

对于文件的其余部分,所有输出值都在 8 左右。

现在,当我回到验证图表时,有一个选项卡数据,其中包含以下列:

如果我对这些列中的值进行非规范化,我会得到以下结果。

这些似乎是实际的正确值(如果我将它们与原始数据进行比较),因此这些应该是输出列中的预测值。这是一个错误还是 output(t+1) 列中的值有其他含义。

我将这些值复制到 excel 中并通过输入 (-1,1) 的公式进行非规范化。我希望每次运行实验时都不必这样做。

我最终将转向代码。只是想通过工作台获得一些初步结果。顺便说一句,使用隔离会导致同样的问题。如果它是一个错误,我会在 encog 网站上报告它。

谢谢你的回答,

弗洛里安

更新

嘿 Jef,我下载了你的 zip 并使用我的工作台重现了这个问题。

只有当我不隔离时才会出现问题,我不想这样做。workbench-excecutable3.2.0 创建的 .ega 文件有一些明显的区别,当我使用您的 .ega 文件并删除 seggregate 部分时,它可以工作。当我使用我的时,它不会。这就是为什么我上传我的项目 [这里][2]:

也许您可以发现新事物是否会干扰输出正确的值。希望能帮助到你!

更新 3:

我的实际目标是构建一个可以在这里找到项目的预测器: http ://wikisend.com/download/477372/Myproject.rar

我想知道你是否能告诉我我是否做错了什么,因为目前我的输出完全是垃圾。

再次感谢。

0 投票
1 回答
519 浏览

neural-network - Encog预测神经网络结果

我一直在使用 Encog 神经网络工作台(3.2 版)运行太阳黑子预测例程,并注意到当将未来预测窗口更改为大于 1 时,sunspot_output.csv中的结果似乎是时间偏移的,因此当输出网络在t=0时评估的结果并不是真的(t+1)、(t+2)、(t+3)等。我很可能不了解工作台如何显示结果,所以也许有人可以澄清这一点为了我。

据我了解,如果您使用 30 的过去窗口和 14 的未来窗口,那么网络将查看最后 30 条记录并从最后一条可用记录向前预测(在这种情况下,假设11/1/1951是最后一条可用记录)。因此,对 1951 年 11 月 1 日的评估回顾 1949 年 5 月 1 日的 30 条记录,并使用此信息通过经过训练的网络来预测1951 年 12 月 1 日(t+1)、1952 年 1 月 1 日的数据(t+2)、2/1/1952 (t+3)等。但是,查看结果文件似乎并非如此。“预测”实际上似乎是前 14 条记录中模式的重复。所以 (t+1)比(t=0)的下一条记录更能代表(t-14) 08/01/1950这将是1951年 12 月 1 日。

我有一张图片显示了这一点,但不幸的是,我似乎还没有发布它的声誉点。要重现此问题,我建议使用 Encog 工作台并使用 30 的过去窗口、14 的未来窗口和 1% 或 2% 的训练误差。

总结:

  1. 在查看预测网络结果时,有没有其他人注意到这个问题,尤其是提前超过一个时间?
  2. 为什么工作台结果显示,当您查看与输出相关的日期时,encog 预测神经网络无法正确预测未来。

感谢您的任何想法!

0 投票
1 回答
888 浏览

neural-network - Encog中的自组织地图训练策略

我正在尝试使用 Encog3 训练 SOM。在 encog-examples 中有两个这样做的例子——一个是训练一个 XOR SOM,其中所有数据都用于训练直到收敛,另一个是 Color SOM,其中 15 种颜色中的一种在 1000 次迭代中的每次迭代中随机采样。我的问题是,第二种方法是否如此,示例在足够短的时间内完成了足够的结果,或者是否有这样做的原因。如果我在每次迭代中使用所有 15 种输入颜色进行训练,会产生更好的结果吗?

0 投票
1 回答
927 浏览

neural-network - 使用 Encog 的神经网络阵列模式识别——如何测试下一个模式?

我正在使用 Encog 库通过遵循 Jeff Heaton 先生提供的基本示例来解决模式识别问题。我有模式

这是我的理想模式,输出 1(这意味着它是 100% 相同)现在我想输入另一个模式,看看它与理想模式有多相似。

此代码用于创建网络

然后,我训练网络

最后,我打印结果:

再次回到我的问题:

我如何输入另一个模式,看看它是否看起来像我的?

欢迎任何可能导致我找到解决方案的想法。谢谢

0 投票
1 回答
1052 浏览

machine-learning - 使用神经网络的 OCR

我正在努力理解神经网络的用法以执行 OCR,我的目标与通常的 OCR 算法有点不同。

我的目标是能够确定一个特定的输入是否是一个特定的字母,例如我希望从用户那里得到字母“A”,我需要确保我没有得到不同的形状。

我需要能够确定给定的输入是否是正确的形状。

从我一直在阅读的内容来看,这里有几个选项,MLP、SOM 网络、反向传播网络。

据我了解,由于我计划为每个形状(字母)创建样本以训练网络,我应该定义一个 SOM 网络,对吗?

我不确定哪个方向是首选,如果你能指出我正确的方向,那就太好了。

我打算使用 Encog 框架,不确定这是否重要。

0 投票
1 回答
983 浏览

c# - 如何在 Encog 中设置归一化范围?

我想从 CSV 文件创建一个训练集,并将其标准化为 [0, 1] 或 [-1, 1] 范围(根据用户选择的激活函数)。我怎样才能做到这一点?在阅读 Encog 教程和指南后,我有这样的事情:

根据API 文档,该Normalize()方法不带参数,并且

规范化数据集,并分配内存来保存它。

它归一化到什么范围?我可以强制它使用不同的吗?也许这不是从 CSV 加载训练数据并将其规范化到内存中的正确方法?

我想使用一个使用反向传播的简单前馈网络来解决回归问题。

0 投票
1 回答
163 浏览

artificial-intelligence - 根据 50 个因素设计用于决策的神经网络

我正在构建一个反向传播神经网络(带有 Encog 库),它根据大约 50 个因素做出决策,我希望获得最佳设计方面的帮助:我们肯定需要 50 个输入神经元,以及 4 个神经元作为输出来给出答案(4数字)但我不确定隐藏层中的神经元数量,有多少是最好的?我还想问一下,使用 segmoid 激活函数的反向传播是否最适合这种情况。感谢提前。

0 投票
1 回答
246 浏览

c# - Encog输入层大小错误?

所以我是 Encog 的新手,我按照 Mr.Heaton 对 Encog in C# 的介绍进行了尝试。我的简单练习是开发一个网络,根据一个人的年龄预测他们的“精神错乱程度”,我提供了一个训练集。但是,我发现自己面临这个问题:

“输入层大小 6 必须匹配训练输入大小 1。”

我确定我在某处犯了一个重大错误,这是我的简单代码。

实际上,这与 Mr.Heaton 在教程中讨论的代码相同。请帮帮我,谢谢!

0 投票
1 回答
1906 浏览

c# - C# 开发一个简单的销售预测系统?

我对机器学习很陌生,我一直在尝试开发一个系统来预测一年的销售数量,具体取决于之前使用 Encog 神经网络给出的示例,但我不太明白如何开发它。其实很简单:

x 轴(年)=>

2000,2001,2002,2003,2004

y 轴(销售数量)=>

分别为 30、25、45、60、55

因此,如果提出一个问题来预测 2005 年的销售额,我该如何在神经网络中实现呢?你们有示例代码吗?