Encog One Of - 解码

时间:2013-10-24 15:45:55

标签: encog

我在其中一个项目中使用了Encog,并且在解雇One-Of Class时遇到了困难。 字段规范化操作之一是NormalizationAction.OneOf,它有三个输出。当我评估时,我想解码预测值。如何解码......?

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

以上代码适用于Equilateral。我怎样才能为One-Of做同样的事。

谢谢, 各Kans

1 个答案:

答案 0 :(得分:5)

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

  

var outputIndex = EngineArray.MaxIndex(output);

     

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

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

所以你可以使用你的分析师课程。如果您持有分析师文件,则可以使用

将其加载到内存中
  

var analyst = new EncogAnalyst();

     

analyst.Load(AnalystFilePath.ToString());