【发布时间】:2014-06-24 12:57:03
【问题描述】:
我制作了一个基于 Encog 的 ANN 来识别材料的光谱。 我训练网络将更多频谱传递到矩阵中。 示例:
input[0] = material 0
input[1] = material 1
每个向量有 10000 个元素, 培训结束后,我想识别从传感器采集中传递的材料之一。 查询encog网络的功能是什么?
更新
这是识别功能:
public void ProcessInput()
{
try
{
IMLDataSet _testInput = new BasicMLDataSet(_inputToAnalize, _annOutput);
IMLData output = null;
List<double> transformedMatrixOutputToArray = _annOutput.Select(x => x[0]).ToList<double>();
foreach (double[] item in _annOutput)
{
output = _network.Compute(_testInput[0].Input);
Console.WriteLine("actual=" + output[0] + @",ideal=" + item[0]);
}
int value = GetClosestIndex(transformedMatrixOutputToArray, output[0]);
}
catch (Exception)
{
}
}
以及从理想输出中检索最接近值输出的函数:
Func<List<double>, double,int > GetClosestIndex =
(doublelist, targetvalue) => doublelist.IndexOf(doublelist.OrderBy(d => Math.Abs(d - targetvalue)).ElementAt(0));
在这种模式下工作是否正确? 谢谢
【问题讨论】:
标签: c# artificial-intelligence encog