这部分代码摘自本教程中有关在Infer.NET库中使用学习者的内容。我打算将其用于机器学习,但不幸的是我无法获得此代码片段。请帮帮我。
/// <summary>
/// A mapping for the Bayes Point Machine classifier tutorial.
/// </summary>
public class ClassifierMapping
: IClassifierMapping<IList<Vector>, int, IList<string>, string, Vector>
{
public IEnumerable<int> GetInstances(IList<Vector> featureVectors)
{
for (int instance = 0; instance < featureVectors.Count; instance++)
{
yield return instance;
}
}
public Vector GetFeatures(int instance, IList<Vector> featureVectors)
{
return featureVectors[instance];
}
public string GetLabel(
int instance, IList<Vector> featureVectors, IList<string> labels)
{
return labels[instance];
}
public IEnumerable<string> GetClassLabels(
IList<Vector> featureVectors = null, IList<string> labels = null)
{
return new[] { "Female", "Male" };
}
}
先感谢您!
唯一的远程复杂的位是yield return
:
public IEnumerable<int> GetInstances(IList<Vector> featureVectors)
{
for (int instance = 0; instance < featureVectors.Count; instance++)
{
yield return instance;
}
}
可以替换为:
public IEnumerable<int> GetInstances(IList<Vector> featureVectors)
{
var result = new List<int>();
for (int instance = 0; instance < featureVectors.Count; instance++)
{
result.Add(instance);
}
return result;
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句