2

我在其中一个项目中使用 Encog,我在解码 One-Of 类时卡住了。该字段的规范化操作之一是 NormalizationAction.OneOf,它具有三个输出。当我评估时,我想解码预测值。如何解码...?

 var eq = new Encog.MathUtil.Equilateral(classCount, normalizationHigh, normalizationLow);
var predictedClassInt = eq.Decode(output);

上面的代码是等边的。我怎样才能为 One-Of 做同样的事情。

谢谢,堪斯

4

1 回答 1

5

这是用于解码 n 个编码类之一的示例代码(在 C# 中)。

var outputIndex = EngineArray.MaxIndex(输出);

var classOutput = Analyst.Script.Normalize.NormalizedFields[index].Classes[outputIndex].Name;

意思是,您首先使用获取输出数组。然后Network.Compute()您尝试找出输出数组中的哪个元素具有最大值(The Winner)。然后您可以使用该索引和分析师信息来获取类名。

所以你可以使用你的分析师类。如果您已持久化分析文件,则可以使用将其加载到内存中

var 分析师 = 新的 EncogAnalyst();

分析师.Load(AnalystFilePath.ToString());

于 2013-12-04T07:12:31.417 回答