- Терминология (от А до D)
- Управление возможностями ИИ
- AIOps
- Альбументации
- Производительность активов
- автоассоциатор
- обратное распространение
- Теорема Байеса
- Big Data
- Чат-бот: руководство для начинающих
- Вычислительное мышление
- Компьютерное зрение
- Матрица путаницы
- Сверточные нейронные сети
- Информационная безопасность
- Фабрика данных
- Рассказ данных
- Наука данных
- Хранилище данных
- Древо решений
- Deepfakes
- Глубокое обучение
- Глубокое обучение
- Девопс
- DevSecOps
- Диффузионные модели
- Цифровой Твин
- Уменьшение размерности
- Терминология (от E до K)
- Edge AI
- Эмоция AI
- Обучение ансамблю
- Этические Хакинг
- ETL
- Объясняемый ИИ
- Федеративное обучение
- ФинОпс
- Генеративный ИИ
- Генеративная Состязательная Сеть
- Генеративное против дискриминационного
- Повышение градиента
- Градиентный спуск
- Небольшое обучение
- Классификация изображений
- ИТ-операции (ITOps)
- Автоматизация инцидентов
- Инжиниринг влияния
- Кластеризация K-сред
- K-Ближайшие соседи
- Терминология (от L до Q)
- Терминология (от R до Z)
- Усиление обучения
- Ответственный AI
- РЛХФ
- Роботизированная автоматизация процессов
- Структурированный против неструктурированного
- Анализ настроений
- Контролируемый против неконтролируемого
- Поддержка векторных машин
- Синтетические данные
- Синтетические носители
- Классификация текста
- КрошечныйML
- Передача обучения
- Трансформаторные нейронные сети
- Тест Тьюринга
- Поиск сходства векторов
AI 101
Что такое трансферное обучение?
Оглавление
Что такое трансферное обучение?
При использовании машинного обучения обучение модели может занять много времени. Создание архитектуры модели с нуля, ее обучение и последующая настройка — это огромное количество времени и усилий. Гораздо более эффективный способ обучения модели машинного обучения — использовать уже определенную архитектуру, возможно, с уже рассчитанными весами. Это основная идея трансферное обучение, взяв модель, которая уже использовалась, и перепрофилировав ее для новой задачи.
Прежде чем углубляться в различные способы использования трансферного обучения, давайте поймем, почему трансферное обучение является таким мощным и полезным методом.
Решение проблемы глубокого обучения
Когда вы пытаетесь решить проблему глубокого обучения, например создание классификатора изображений, вам необходимо создать архитектуру модели, а затем обучить модель на ваших данных. Обучение классификатора модели включает в себя корректировку весов сети, процесс, который может занять часы или даже дни в зависимости от сложности как модели, так и набора данных. Время обучения будет масштабироваться в соответствии с размером набора данных и сложностью архитектуры модели.
Если модель не достигает точности, необходимой для задачи, вероятно, потребуется выполнить настройку модели, а затем ее необходимо будет переобучить. Это означает больше часов обучения, пока не будет найдена оптимальная архитектура, продолжительность обучения и разделение набора данных. Если учесть, сколько переменных должно быть согласовано друг с другом, чтобы классификатор был полезным, становится понятно, что инженеры по машинному обучению всегда ищут более простые и эффективные способы обучения и реализации моделей. По этой причине была создана методика трансферного обучения.
После разработки и тестирования модели, если модель оказалась полезной, ее можно сохранить и повторно использовать позже для решения аналогичных задач.
Типы трансферного обучения
В общем, есть два разных виды трансферного обучения: разработка модели с нуля и использование предварительно обученной модели.
Когда вы разрабатываете модель с нуля, вам необходимо создать архитектуру модели, способную интерпретировать данные обучения и извлекать из них закономерности. После первого обучения модели вам, вероятно, потребуется внести в нее изменения, чтобы добиться от модели оптимальной производительности. Затем вы можете сохранить архитектуру модели и использовать ее в качестве отправной точки для модели, которая будет использоваться для аналогичной задачи.
Во втором условии — использование предварительно обученной модели — вам просто нужно выбрать предварительно обученную модель для использования. Многие университеты и исследовательские группы сделают спецификации своих моделей общедоступными. Архитектуру модели можно скачать вместе с весами.
При проведении трансферного обучения вся архитектура модели и веса могут использоваться для поставленной задачи или могут использоваться только определенные части/слои модели. Использование только части предварительно обученной модели и обучение остальной части модели называется тонкой настройкой.
Тонкая настройка сети
Тонкая настройка сети описывает процесс обучения только некоторых слоев сети. Если новый набор данных для обучения очень похож на набор данных, используемый для обучения исходной модели, можно использовать многие из тех же весов.
Количество слоев в сети, которые необходимо разморозить и переобучить, должно масштабироваться в соответствии с размером нового набора данных. Если обучаемый набор данных невелик, лучше оставить большинство слоев такими, какие они есть, и обучить только последние несколько слоев. Это делается для предотвращения переобучения сети. В качестве альтернативы можно удалить последние слои предварительно обученной сети и добавить новые слои, которые затем будут обучены. Напротив, если набор данных представляет собой большой набор данных, потенциально больший, чем исходный набор данных, вся сеть должна быть переобучена. Чтобы использовать сеть как экстрактор с фиксированными функциями, большая часть сети может использоваться для извлечения функций, в то время как только последний слой сети может быть разморожен и обучен.
Когда вы настраиваете сеть, просто помните, что более ранние слои ConvNet содержат информацию, представляющую более общие характеристики изображений. Это такие функции, как края и цвета. Напротив, более поздние слои ConvNet содержат детали, которые более специфичны для отдельных классов, содержащихся в наборе данных, на котором модель была первоначально обучена. Если вы обучаете модель на наборе данных, который сильно отличается от исходного набора данных, вы, вероятно, захотите использовать начальные слои модели для извлечения признаков и просто переобучить остальную часть модели.
Примеры трансферного обучения
Наиболее распространенными приложениями трансферного обучения, вероятно, являются те, которые используют данные изображения в качестве входных данных. Часто это задачи прогнозирования/классификации. Путь Сверточные нейронные сети интерпретация данных изображения позволяет повторно использовать аспекты моделей, поскольку сверточные слои часто различают очень похожие функции. Одним из примеров распространенной проблемы трансфертного обучения является задача ImageNet 1000, массивный набор данных, содержащий 1000 различных классов объектов. Компании, которые разрабатывают модели, обеспечивающие высокую производительность на этом наборе данных, часто выпускают свои модели по лицензиям, которые позволяют другим повторно использовать их. Некоторые из моделей, возникших в результате этого процесса, включают Модель Microsoft ResNet, начальная модель Google и Оксфордская модель VGG группа.
Блогер и программист со специализацией в Машинное обучение и Глубокое обучение темы. Дэниел надеется помочь другим использовать возможности ИИ на благо общества.
Вам может понравиться
Расширение возможностей моделей большого видения (LVM) в задачах, специфичных для предметной области, посредством трансферного обучения
Растущее влияние моделей малого языка
Как обучаются модели машинного обучения?
Что такое обучение в несколько выстрелов?
Что такое нейронные сети-трансформеры?
Что такое Edge AI и Edge Computing?