Вопрос или проблема
Предположим, что мы обучили модель для классификации проблемы с 5 классами. Теперь, если мы используем ту же модель без повторного обучения для проблемы с 7 классами, что произойдет? Все еще останутся 5 предыдущих классов с двумя дополнительными классами.
Какие условия должны иметь данные во время выполнения, чтобы оригинальная модель хорошо работала с новыми данными?
Какие термины используют специалисты или ученые для этой проблемы?
Для полностью связанной нейронной сети вы подключаете два новых нейрона в конечном слое вывода ко всем нейронам в предыдущем слое. Поскольку веса не были обучены во время тренировки, вы можете инициализировать их каким-то случайным инициализатором (Xe или He). Во время вывода все нейроны в выходном слое будут иметь какое-то значение, и мы обычно используем сигмоидную активационную функцию в выходном слое, чтобы конденсировать выходы всех нейронов так, чтобы в сумме они давали один.
У вас все равно будет нейрон-победитель с самым высоким значением, но он может быть ошибочным, так как веса для двух новых нейронов не были настроены на входные данные.
Ответ или решение
При применении модели машинного обучения, обученной для классификации с 5 классами, к новым данным, содержащим уже 7 классов, важно учитывать несколько факторов, влияющих на производительность модели. Если модель не была переобучена и использует свои исходные веса, поведение модели будет следующим:
-
Классы, присутствующие в обучении: Модель будет уверенно предсказывать классы, на которых она была обучена (первоначальные 5 классов). Эти классы будут иметь адекватное качество предсказания, если данные, на которых она применяется, схожи по распределению с обучающими данными.
-
Новые классы: Для двух новых классов, которые не были включены в обучение, модель не будет адекватно уметь классифицировать. Поскольку веса для новых нейронов (класс, в данном случае два новых класса) не были обучены, активация таких нейронов будет произвольной. Это может привести к ошибкам в классификации, так как модель попытается присвоить высокий коэффициент активации для нового класса, основываясь на случайно инициализированных весах. Об использовании функций активации, таких как сигмоида, важно помнить, но это также будет не совсем корректно, если инициализация весов не была должным образом настроена.
-
Условия для хорошей производительности: Для того чтобы модель давала приемлемые результаты на новых данных, необходимо:
- Соответствие распределений обучающих и тестовых данных. Входные данные должны поступать из одной и той же области, чтобы модель могла применять свои знания.
- Сравнимаемость признаков. Признаки данных должны быть идентичны или, по крайней мере, довольно близки к тем, что использовались при обучении.
- Устойчивость к новым классам. Если новые классы схожи по признакам и характеристикам с уже существующими классами, то модель, возможно, сможет принять решение по ним на основе сходства.
-
Специфическая терминология: В контексте данной задачи можно использовать следующие термины:
- Классификация с разреженными классами (Class Imbalance) – ситуация, когда некоторые классы представлены значительно хуже других.
- Проблема открытых классов (Open Set Recognition) – задача распознавания классов, которые не были представлены во время обучения.
- Модели, расширяемые без переобучения (Incremental Learning) – подходы, позволяющие добавлять новый класс к уже обученной модели, не требуя полного переобучения.
Таким образом, при применении ранее обученной модели к новым данным с дополнительными классами важно помнить о выполнении вышеописанных условий, а также о возможных подходах к улучшению модели, таких как инкрементальное обучение или дообучение модели с использованием новых меток классов.