Помогает ли увеличение шума в данных улучшить способность к обучению сети? Имеет ли это какое-то значение или это зависит от решаемой проблемы? Как это влияет на процесс обобщения в целом?
Помогает ли увеличение шума в данных улучшить способность к обучению сети? Имеет ли это какое-то значение или это зависит от решаемой проблемы? Как это влияет на процесс обобщения в целом?
Шум в данных в разумных пределах может помочь сети лучше обобщаться. Иногда это имеет противоположный эффект. Отчасти это зависит от вида шума («истинный» или искусственный).
AI FAQ по ИНС дает обзор хороший. Выдержка:
Шум в реальных данных никогда не бывает хорошим, поскольку он ограничивает точность обобщения, которая может быть достигнута независимо от того, насколько обширным является обучающий набор. С другой стороны, введение искусственного шума (джиттера) во входные данные во время обучения является одним из нескольких способов улучшить обобщение для плавных функций, когда у вас есть небольшой тренировочный набор.
В некоторых областях, таких как компьютерное зрение, обычно увеличивают размер обучающего набора, копируя некоторые образцы и добавляя некоторые шумы или другие преобразования.
Мы обычно думаем о моделях машинного обучения как о моделировании двух разных частей обучающих данных - основной обобщаемой правды (сигнала) и случайности, специфичной для этого набора данных (шума).
Подгонка обеих этих частей увеличивает точность обучающего набора, но подгонка сигнала также увеличивает точность испытательного комплекта (и реальную производительность), в то время как подгонка шума уменьшает оба. Таким образом, мы используем такие вещи, как регуляризация и отсев, а также аналогичные методы, чтобы затруднить согласование с шумом и повысить вероятность соответствия сигналу.
Одним из таких подходов является просто увеличение количества шума в обучающих данных, но вряд ли оно будет таким же полезным. Сравните случайный джиттер с состязательным усилением, например; первый медленно и косвенно улучшит устойчивость, тогда как последний значительно и напрямую улучшит ее.
PS: здесь уже есть несколько очень хороших ответов, я просто добавлю к ним ответы в надежде, что кто-то найдет это полезным:
Введение шума в набор данных действительно может оказать положительное влияние на модель. Фактически это можно рассматривать как то же самое, что вы обычно делаете с регуляризаторами, такими как dropout . Некоторым примером этого является Zur at.al , Cires¸at.al, где авторы успешно добавили шум в набор данных для уменьшения избыточной подгонки.
Загвоздка в том, чтобы знать, сколько шума слишком много. Если вы добавите слишком много шума, это может сделать ваш набор данных бесполезным из-за того, что результирующий набор данных может больше не содержать достаточного сходства с исходным набором данных, поэтому вы можете также тренироваться на совершенно другом наборе данных. Таким образом, слишком много шума может привести к недостаточной подгонке, как и чрезвычайно высокие показатели отсева.
Как говорится; изменение баланса - это специя жизни :).