在我以前的文章中,我詢問了使用Encog AI Framework進行時間序列預測。 現在我有3個問題與預測使用支持向量機預測多個輸出的可能性有關。使用支持向量機與Encog 3和多個輸出
1)爲了澄清一下,我想預測deviceConsumption的前5天使用deviceConsumption和TotalPower的前10天。 這可能嗎?
2)SVM是否使用TotalPower和deviceConsumption構建模式(如人工神經網絡)?
3)是否有可能在訓練集上訓練ANN或SVM並保存訓練網絡(用於ANN)或SVM訓練的超平面,並且在第二時間將一個值添加到訓練集的尾部並將這個新的訓練集提交給先前訓練過的網絡函數(或SVM),並再次訓練先前訓練過的網絡(或SVM),而不會失去所獲得的結果(所學到的啓發式)?
對不起,我的英語;-) 感謝
TemporalMLDataSet result = new TemporalMLDataSet(10,5);
TemporalDataDescription desc = new TemporalDataDescription(
TemporalDataDescription.Type.RAW,true,true);
result.addDescription(desc);
TemporalDataDescription desc2 = new TemporalDataDescription(
TemporalDataDescription.Type.RAW,false,true);
result.addDescription(desc2);
for(int year = TRAIN_START;year<TRAIN_END;year++)
{
TemporalPoint point = new TemporalPoint(2);
point.setSequence(year);
point.setData(0, this.deviceConsumption[year]);
point.setData(1, this.TotalPower[year]);
result.getPoints().add(point);
}
result.generate();
SVM svm = new SVM(windowSize,true);
SVMSearchTrain train = new SVMSearchTrain(svm,result);
do {
train.iteration();
System.out.println("Epoch #" + train.getIteration() + " Error:" + train.getError()+ " ");
} while(train.getError()> 0.01);
EncogUtility.evaluate(svm, result);
Encog.getInstance().shutdown();