В чем разница между тонкой настройкой и обучением за несколько выстрелов?
Я пытаюсь понять концепцию
Я понимаю необходимость тонкой настройки. По сути, это настройка предварительно обученной модели для конкретной последующей задачи. Однако в последнее время я видел множество сообщений в блогах, в которых говорится об обучении с нулевым выстрелом, обучении за один раз и обучении с несколькими выстрелами.
- Чем они отличаются от тонкой настройки? Мне кажется, что обучение за несколько выстрелов — это специализация тонкой настройки. Что мне здесь не хватает?
Кто-нибудь может мне помочь, пожалуйста!
2 ответа
Точная настройка. Когда у вас уже есть модель, обученная выполнять нужную вам задачу, но в другом наборе данных, вы инициализируете ее с помощью предварительно обученных весов и обучаете ее на целевом (обычно меньшем) наборе данных (обычно с меньшей скоростью обучения).
Обучение с небольшим количеством выстрелов. Когда вы хотите обучить модель какой-либо задаче, используя очень мало образцов. например, у вас есть модель, обученная другой, но связанной задаче, и вы (необязательно) модифицируете ее и обучаете целевой задаче, используя небольшое количество примеров.
Например:
Точная настройка — обучение модели классификации намерений, а затем ее точная настройка на другом наборе данных.
Небольшое обучение — обучение языковой модели на большом текстовом наборе данных и ее изменение (обычно последний (несколько) слой) для классификации намерений путем обучения на небольшом помеченном наборе данных.
Там может быть много других способов сделать несколько выстрелов обучения. Еще один пример: обучение модели классификации изображений, где некоторые классы имеют очень маленькое (или 0 для нулевого снимка и 1 для одного снимка) количество обучающих выборок. Здесь, в выводе, правильная классификация этих редких классов (редких в обучении) становится целью обучения за несколько выстрелов.
Здесь хотелось бы добавить пару моментов. И точная настройка, и однократное обучение с несколькими попытками представляют собой методы трансферного обучения. Трансферное обучение — это использование модели, обученной определенной задаче, для выполнения чего-то другого.
- В случае точной настройки нейронной сети может потребоваться обновить веса всех слоев, но в случае однократной или малой схемы могут быть обновлены только самые верхние слои.
- Точная настройка в основном используется при большом количестве данных, тогда как такие методы, как нулевой выстрел, один выстрел и несколько выстрелов, являются удобными инструментами, когда у вас недостаточно данных для проблемы, которую вы пытаетесь классифицировать.
Короче говоря, трансферное обучение — это всеобъемлющая концепция использования знаний, полученных из одной задачи, для повышения производительности при выполнении другой связанной задачи. Точная настройка, однократное обучение и обучение с несколькими этапами — это особые методы, используемые в трансферном обучении для достижения этой цели, каждый из которых имеет свой собственный подход к использованию уже существующих знаний из исходной задачи или ограниченных помеченных данных для повышения производительности при выполнении задачи. целевая задача.