不理解来自 convnetjs 的训练数据

Don't understand train data from convnetjs

我正在尝试使用 javascript 中的神经网络预测一些数据。为此,我发现 convnetjs 似乎易于使用。

在示例中,他们使用了一种称为 MagicNet 的东西,因此您无需了解 NN 即可使用它。这是使用示例:

// toy data: two data points, one of class 0 and other of class 1
var train_data = [new convnetjs.Vol([1.3, 0.5]), new convnetjs.Vol([0.1, 0.7])];
var train_labels = [0, 1];

// create a magic net
var magicNet = new convnetjs.MagicNet(train_data, train_labels);
magicNet.onFinishBatch(finishedBatch); // set a callback a finished evaluation of a batch of networks

// start training MagicNet. Every call trains all candidates in current batch on one example
setInterval(function(){ magicNet.step() }, 0});

// once at least one batch of candidates is evaluated on all folds we can do prediction!
function finishedBatch() {
  // prediction example. xout is Vol of scores
  // there is also predict_soft(), which returns the full score volume for all labels
  var some_test_vol = new convnetjs.Vol([0.1, 0.2]);
  var predicted_label = magicNet.predict(some_test_vol);
}

我不明白的是: 他们创建像 [new convnetjs.Vol([1.3, 0.5]), new convnetjs.Vol([0.1, 0.7])] 这样的训练数据,然后使用 2 个标签。这些标签,分别对应数组的每个位置或子数组中这些位置的每个元素??

这是一个直观的例子:

[new 0, new 1]还是像[new convnetjs.Vol([0, 1]), new convnetjs.Vol([0, 1])]

样本 new convnetjs.Vol([1.3, 0.5]) 有标签 0

示例 new convnetjs.Vol([0.1, 0.7]) 具有标签 1

一般来说,在机器学习中,你通常会有非常高维的样本(这里它们只是二维的),但每个样本都有一个标签,它告诉你哪个"class" 它属于。 类 的实际含义取决于您要解决的问题;例如,它们可能是由手写数字图像表示的数字。