В чем разница между тонкой настройкой и обучением за несколько выстрелов?

Я пытаюсь понять концепциюиобучение.

Я понимаю необходимость тонкой настройки. По сути, это настройка предварительно обученной модели для конкретной последующей задачи. Однако в последнее время я видел множество сообщений в блогах, в которых говорится об обучении с нулевым выстрелом, обучении за один раз и обучении с несколькими выстрелами.

  • Чем они отличаются от тонкой настройки? Мне кажется, что обучение за несколько выстрелов — это специализация тонкой настройки. Что мне здесь не хватает?

Кто-нибудь может мне помочь, пожалуйста!

2 ответа

Точная настройка. Когда у вас уже есть модель, обученная выполнять нужную вам задачу, но в другом наборе данных, вы инициализируете ее с помощью предварительно обученных весов и обучаете ее на целевом (обычно меньшем) наборе данных (обычно с меньшей скоростью обучения).

Обучение с небольшим количеством выстрелов. Когда вы хотите обучить модель какой-либо задаче, используя очень мало образцов. например, у вас есть модель, обученная другой, но связанной задаче, и вы (необязательно) модифицируете ее и обучаете целевой задаче, используя небольшое количество примеров.

Например:

Точная настройка — обучение модели классификации намерений, а затем ее точная настройка на другом наборе данных.

Небольшое обучение — обучение языковой модели на большом текстовом наборе данных и ее изменение (обычно последний (несколько) слой) для классификации намерений путем обучения на небольшом помеченном наборе данных.

Там может быть много других способов сделать несколько выстрелов обучения. Еще один пример: обучение модели классификации изображений, где некоторые классы имеют очень маленькое (или 0 для нулевого снимка и 1 для одного снимка) количество обучающих выборок. Здесь, в выводе, правильная классификация этих редких классов (редких в обучении) становится целью обучения за несколько выстрелов.

Здесь хотелось бы добавить пару моментов. И точная настройка, и однократное обучение с несколькими попытками представляют собой методы трансферного обучения. Трансферное обучение — это использование модели, обученной определенной задаче, для выполнения чего-то другого.

  1. В случае точной настройки нейронной сети может потребоваться обновить веса всех слоев, но в случае однократной или малой схемы могут быть обновлены только самые верхние слои.
  2. Точная настройка в основном используется при большом количестве данных, тогда как такие методы, как нулевой выстрел, один выстрел и несколько выстрелов, являются удобными инструментами, когда у вас недостаточно данных для проблемы, которую вы пытаетесь классифицировать.

Короче говоря, трансферное обучение — это всеобъемлющая концепция использования знаний, полученных из одной задачи, для повышения производительности при выполнении другой связанной задачи. Точная настройка, однократное обучение и обучение с несколькими этапами — это особые методы, используемые в трансферном обучении для достижения этой цели, каждый из которых имеет свой собственный подход к использованию уже существующих знаний из исходной задачи или ограниченных помеченных данных для повышения производительности при выполнении задачи. целевая задача.