時系列予測のシステムを開発しています。Book of Encog3 for Java を購入しましたが、3 列の CSV ファイルを送信して 2 列目の予測を試みるには、よく知っておく必要があります。CSV は次のように定義されます。
Date
、DeviceConsumption
、TotalPower
そのファイルをローダーにロードしてから、予測する列 (つまりDeviceConsumption
) を指定する必要があります。3 番目の列は、詳細情報を提供し、パターンを作成するために使用されます。
例では(黒点のように)私は見る
TemporalMLDataSet result = new TemporalMLDataSet(windowSize,1);
TemporalDataDescription desc = new TemporalDataDescription(new ActivationSIN(),Type.RAW, false, true);
result.addDescription(desc);
しかし、予測したい列をどこで定義できますか??
ありがとうございました。
EDIT 2 いくつかの改善を行いました:
申し訳ありませんが、まだわかりません。おっしゃる通り、2つのTemporalDataDescriptionを作成できました。しかし、両方を同じ TemporalMLDataSet に追加する必要がありますか?
TemporalMLDataSet result = new TemporalMLDataSet(WINDOW_SIZE,1);
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();
それが正しいか?
EDIT3前のコードは正しかったです!