Я делаю предварительную обработку данных и собираюсь создать Convonets на моих данных после.
Мой вопрос: скажем, у меня есть общие наборы данных со 100 изображениями, я вычислял среднее значение для каждого из 100 изображений, а затем вычитал его из каждого из изображений, затем делил его на набор обучающих и проверочных данных, и я делаю то же самое шаги для обработки на данном наборе тестов, но кажется, что это неправильный способ сделать это по этой ссылке: http://cs231n.github.io/neural-networks-2/#datapre
« Общая ошибка . Важное замечание о предварительной обработке заключается в том, что любая статистика предварительной обработки (например, среднее значение данных) должна рассчитываться только на обучающих данных, а затем применяться к данным проверки / тестирования. Например, вычисление среднего значения и вычитание его из каждое изображение во всем наборе данных и последующее разбиение данных на разбиения train / val / test было бы ошибкой, вместо этого среднее значение должно быть вычислено только по обучающим данным и затем вычтено равным образом из всех разбиений (train / val / test). "
Я предполагаю, что автор говорит, что не вычисляйте среднее значение и не вычитайте его в пределах каждого изображения, а вычисляйте среднее значение всего набора изображений (то есть (image1 + ... + image100) / 100) и вычитайте среднее значение для каждый из изображения.
Я не совсем понимаю, кто-нибудь может объяснить? а также, возможно, объяснить, почему то, что я делал, неправильно (если это действительно так).
Ответы:
Предположим, у вас есть 100 изображений; 90 - тренировочные данные и 10 - тестовые данные.
Авторы правильно утверждают, что использование целого образца 100 изображений для вычисления образца означает, что неверно. Это потому, что в этом случае у вас будет утечка информации. Информация из ваших элементов «вне выборки» будет перенесена в ваш тренировочный набор. В частности, для оценки , если вы используете 100 вместо 90 изображений, вы даете своему тренировочному набору более осмысленное среднее значение, чем оно должно было бы иметь. В результате ваша ошибка обучения будет потенциально ниже, чем должна быть.μ^ μ^
Предполагаемый распространен в течение всей процедуры обучения / проверки / тестирования. Тот же самый должен использоваться для центрирования всех ваших данных. (Я упоминаю об этом позже, потому что у меня сложилось небольшое впечатление, что вы используете среднее значение каждого отдельного изображения для центрирования этого изображения.)μ^ μ^
источник
A
еслиA
не будет распространяться на разные возрасты. Если мы вычислим средний возраст во всем наборе данных, мы получим более представительный средний возраст. Если мы теперь используем этот беспристрастный средний возраст в модели,A
мы, вероятно, получим лучшую производительность, чем раньше, несмотря на то, чтоA
не будем хорошо обобщать для разных возрастов.)