我正在尝试使用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])]
?
答案 0 :(得分:3)
示例new convnetjs.Vol([1.3, 0.5])
标签为0
。
示例new convnetjs.Vol([0.1, 0.7])
标签为1
。
一般情况下,在机器学习中,您通常会拥有尺寸相当高的样本(此处它们只是二维的),但您每个样本都有一个标签可以告诉您哪个"班"它属于。类实际意味着什么取决于你想要解决的问题;例如,它们可以是由手写数字图像表示的数字。