我推荐深入研究CNTK Readers!
@Stanislav Grigorev 是正确的。
输入维度完全取决于您的数据集。例如,此处示例中的ATIS 如下所示:
代码示例可以在here找到。
用阅读器读入数据:
IList<StreamConfiguration> streamConfigurations = new StreamConfiguration[]
{
new StreamConfiguration(featuresName, inputDim, true, "S0"),
// new StreamConfiguration(featuresName, inputDim, true, "S1"), // Not used in the old example.
new StreamConfiguration(labelsName, numOutputClasses, false, "S2")
};
以及使用 TextFormatMinibatchSource 读取:
var minibatchSource = MinibatchSource.TextFormatMinibatchSource(
Path.Combine(DataFolder, "Train.ctf"),
streamConfigurations,
MinibatchSource.InfinitelyRepeat,
true);
var featureStreamInfo = minibatchSource.StreamInfo(featuresName);
var labelStreamInfo = minibatchSource.StreamInfo(labelsName);
然后是一行,在while循环中:
var minibatchData = minibatchSource.GetNextMinibatch(minibatchSize, device);
读取每个小批量。这对任何阅读代码的人来说都是显而易见的,但为了说明数据的读取方式,我提供了这个示例。
数据集参数在代码示例中给出:
const int inputDim = 2000;
const int numOutputClasses = 5;
重要的是这些数字是正确的!
我已经创建了一个网站:http://www.cntking.com/ 来尝试在 C# 和 CNTK 上取得成功,我认为它是一种非常被低估的机器学习语言 C#。