我想从 CSV 文件创建一个训练集,并将其标准化为 [0, 1] 或 [-1, 1] 范围(根据用户选择的激活函数)。我怎样才能做到这一点?在阅读 Encog 教程和指南后,我有这样的事情:
var source = new CSVDataSource(openFileDialog.FileName, true, CSVFormat.DecimalPoint);
data = new VersatileMLDataSet(source);
data.DefineSourceColumn("x", 0, ColumnType.Continuous);
var outputColumnDefinition = data.DefineSourceColumn("y", 1, ColumnType.Continuous);
data.Analyze();
data.DefineSingleOutputOthersInput(outputColumnDefinition);
data.Normalize();
根据API 文档,该Normalize()
方法不带参数,并且
规范化数据集,并分配内存来保存它。
它归一化到什么范围?我可以强制它使用不同的吗?也许这不是从 CSV 加载训练数据并将其规范化到内存中的正确方法?
我想使用一个使用反向传播的简单前馈网络来解决回归问题。