有人可以告诉我为什么这位作者在规范化中使用了以下代码。
第一行对我来说很好,他们已经通过以下公式对训练集进行了标准化;
(x - mean(x))/ std(x)
然而,第二行和第三行(验证和测试)他们使用列车平均值(trainme)和列车标准偏差(trainstd)。他们是否应该使用验证平均值(validationme)和验证标准偏差(validationstd)以及测试平均值和测试标准偏差?
您还可以通过以下链接(page 173)
查看该书中的页面答案 0 :(得分:1)
作者所做的是合理的,而且是传统上所做的。我们的想法是将相同的规范化应用于所有输入。这基本上是分配一些新参数(偏移和比例)并从训练数据中估计它们。在该方案中,如果输入值100,则标准化值为(100 - 偏移)/标度,无论100来自哪里(训练,测试,等等)。
我想也可以提出一个论点,即偏移量和比例应该是上下文相关的,如果给你一组数据,并且由于某种原因,偏移和比例与原始训练数据有很大不同,也许重要的是每个值相对于同一数据集中其他值的大小。例如。如果在包含200的数据集中比例是两倍,那么你应该将200与100相同。
是否必须根据具体情况决定数据相关的缩放是否合理。我不记得曾见过它,但在某些情况下这可能是正确的事情。
顺便说一下,您可以在stats.stackexchange.com和/或datascience.stackexchange.com上对一般统计问题更感兴趣。