Мета-обучение (информатика) — Meta learning (computer science)
Метаобучение — это подполе машинного обучения, где алгоритмы автоматического обучения применяются к метаданным об экспериментах с машинным обучением. По состоянию на 2017 год термин не нашел стандартной интерпретации, однако основная цель состоит в том, чтобы использовать такие метаданные, чтобы понять, как автоматическое обучение может стать гибким при решении задач обучения, следовательно, для повышения производительности существующих алгоритмов обучения или для изучения (стимулирования) самого алгоритма обучения, поэтому альтернативный термин обучение обучению .
важен, потому что каждый алгоритм обучения основан на наборе предположений о данных, его индуктивном смещении. Это означает, что он будет хорошо учиться, только если предвзятость соответствует задаче обучения. Алгоритм обучения может очень хорошо работать в одной области, но не в другой. Это накладывает серьезные ограничения на использование методов машинного обучения или интеллектуального анализа данных, поскольку взаимосвязь между проблемой обучения (часто своего рода базой данных ) и эффективностью различных алгоритмов обучения еще не изучены.
Используя различные виды метаданных, такие как свойства задачи обучения, свойства алгоритма (например, показатели производительности) или шаблоны, ранее полученные из данных, можно изучать, выбирать, изменять или комбинировать различные алгоритмы обучения эффективно решить данную учебную задачу. Критика подходов к метаобучению очень похожа на критику метаэвристики, возможно, связанной проблемы. Хорошая аналогия с метаобучением и вдохновение для ранних работ Юргена Шмидхубера (1987) и Йошуа Бенджио и др. (1991) считает, что генетическая эволюция изучает процедуру обучения, закодированную в генах и выполняемую в мозгу каждого человека. В открытой иерархической системе метаобучения, использующей генетическое программирование, лучшие эволюционные методы могут быть изучены с помощью метаэволюции, которая сама может быть улучшена с помощью мета-метаэволюции и т. Д.
- 1 Определение
- 2 Общие подходы
- 2.1 Модельно-ориентированные
- 2.1.1 Нейронные сети с расширенной памятью
- 2.1.2 Мета-сети
- 2.2.1 Сверточная сиамская нейронная сеть
- 2.2.2 Соответствующие сети
- 2.2.3 Сеть отношений
- 2.2.4 Прототипные сети
- 2.3.1 Мета-обучающийся LSTM
- 2.3.2 Временная дискретность
- 2.3.3 Рептилии
Определение
Предлагаемое определение для системы метаобучения сочетает в себе три требования:
- Система должна включать подсистема обучения.
- Опыт приобретается за счет использования мета-знаний, извлеченных
- в предыдущем учебном эпизоде в одном наборе данных, или
- из разных областей.
Смещение относится к допущениям, которые влияют на выбор поясняющих гипотез, а не к понятию смещения, представленному в дилемме смещения-дисперсии. Мета-обучение связано с двумя аспектами предвзятости обучения.
- Декларативное смещение определяет представление пространства гипотез и влияет на размер пространства поиска (например, представляет гипотезы с использованием только линейных функций).
- Смещение процедуры накладывает ограничения на порядок индуктивных гипотез (например, предпочитая меньшие гипотезы).
Общие подходы
Есть три общих подхода: 1) использование (циклических) сетей с внешней или внутренней памятью (на основе моделей); 2) изучение эффективных дистанционных метрик (на основе метрик); 3) явная оптимизация параметров модели для быстрого обучения (на основе оптимизации).
Основанные на моделях
Модели метаобучения на основе моделей быстро обновляют свои параметры с помощью нескольких шагов обучения, которые могут быть достигается его внутренней архитектурой или контролируется другой моделью метаобучающегося.
Нейронные сети с расширенной памятью
Модель известна как MANN, сокращенно от Memory-Augmented Neural Networks, которая, как ожидается, будет быстро кодировать новую информацию и, таким образом, адаптироваться к новые задачи после всего лишь нескольких примеров, он хорошо подходит для метаобучения.
Мета-сети
Мета-сети (MetaNet) изучают метауровневые знания по задачам и быстро меняют свои индуктивные предубеждения. параметризация для быстрого обобщения.
На основе показателей
Основная идея в метаобучении на основе показателей аналогична алгоритмам ближайших соседей, вес которых генерируется ядром функция. Он нацелен на изучение функции метрики или расстояния по объектам. Понятие хорошей метрики зависит от проблемы. Он должен отражать взаимосвязь между входами в пространстве задач и способствовать решению проблем.
Сверточная сиамская нейронная сеть
сиамская нейронная сеть состоит из двух двойных сетей, выходные данные которых обучаются совместно. Выше приведена функция для изучения взаимосвязи между парами выборок входных данных. Две сети одинаковы, имеют одинаковый вес и параметры сети.
Соответствующие сети
Соответствующие сети изучают сеть, которая сопоставляет небольшой помеченный набор поддержки и немаркированный пример со своей меткой, что позволяет избежать необходимость тонкой настройки для адаптации к новым типам классов.
Сеть отношений
Сеть отношений (RN) обучается от начала до конца с нуля. Во время метаобучения он учится изучать метрику большого расстояния для сравнения небольшого количества изображений в эпизодах, каждый из которых предназначен для имитации настройки нескольких кадров.
Прототипные сети
Прототипные сети изучают метрическое пространство, в котором классификация может выполняться путем вычисления расстояний до прототипных представлений каждого класса. По сравнению с недавними подходами к обучению за несколько шагов, они отражают более простое индуктивное смещение, которое выгодно в этом режиме ограниченных данных, и позволяют достичь удовлетворительных результатов.
На основе оптимизации
На основе оптимизации Алгоритмы метаобучения предназначены для настройки алгоритма оптимизации так, чтобы модель могла хорошо учиться на нескольких примерах.
Мета-обучающийся LSTM
Мета-обучающийся на основе LSTM должен изучить точный алгоритм оптимизации, используемый для обучения другого обучаемого нейронной сети классификатор в режиме коротких выстрелов. Параметризация позволяет ему изучать соответствующие обновления параметров специально для сценария, в котором будет выполнено заданное количество обновлений, а также изучить общую инициализацию сети обучаемого (классификатора), которая обеспечивает быструю сходимость обучения.
Temporal Discreteness
MAML, сокращение от Model-Agnostic Meta-Learning, представляет собой довольно общий алгоритм оптимизации, совместимый с любой моделью, которая обучается посредством градиентного спуска.
Reptile
Reptile — это замечательно простой алгоритм оптимизации метаобучения, учитывая, что оба основаны на метаоптимизации посредством градиентного спуска и оба не зависят от модели.
Примеры
Некоторые подходы, которые рассматривались как примеры метаобучения:
- Рекуррентные нейронные сети (RNN) — это универсальные компьютеры. В 1993 году Юрген Шмидхубер показал, как «самореференциальные» RNN могут в принципе научиться посредством обратного распространения ошибки запускать собственный алгоритм изменения веса, который может сильно отличаться от обратного распространения. В 2001 г. Зепп Хохрайтер и А.С. Янгер и П.Р. Конвелл построили успешного контролируемого метаобучаемого на основе долгосрочной краткосрочной памяти RNN. Он изучил посредством обратного распространения алгоритм обучения квадратичным функциям, который намного быстрее, чем обратное распространение. Исследователи из Deepmind (Марцин Андрыхович и др.) Расширили этот подход до оптимизации в 2017 году.
- В 1990-х годах в исследовательской группе Шмидхубера была реализована технология Meta Reinforcement Learning или Meta RL благодаря самомодифицирующиеся политики, написанные на универсальном языке программирования, который содержит специальные инструкции по изменению самой политики. Есть единственный суд на всю жизнь. Цель агента RL — максимизировать вознаграждение. Он учится ускорять получение вознаграждения, постоянно совершенствуя свой собственный алгоритм обучения, который является частью политики «самореференции».
- Экстремальный тип мета обучения с подкреплением воплощен в Машина Гёделя, теоретическая конструкция, которая может проверять и модифицировать любую часть своего собственного программного обеспечения, которая также содержит общее средство доказательства теорем. Он может достичь рекурсивного самосовершенствования доказуемо оптимальным способом.
- Мета-обучение, не зависящее от модели (MAML), было введено в 2017 году Челси Финн и др. При заданной последовательности задач параметры данной модели обучаются таким образом, что несколько итераций градиентного спуска с небольшим количеством обучающих данных из новой задачи приведут к хорошей производительности обобщения для этой задачи. MAML «обучает модель, чтобы ее можно было легко настраивать». MAML был успешно применен к тестам классификации изображений с несколькими кадрами и к обучению с подкреплением на основе градиента политики.
- Обнаружение метазнаний работает путем получения знаний (например, правил), которые выражают, как каждый метод обучения будет выполнять различные учебные задачи. Метаданные формируются характеристиками данных (общие, статистические, теоретико-информационные. ) в задаче обучения и характеристиками алгоритма обучения (тип, настройки параметров, показатели эффективности. ). Затем другой алгоритм обучения изучает, как характеристики данных соотносятся с характеристиками алгоритма. Учитывая новую проблему обучения, измеряются характеристики данных и прогнозируется производительность различных алгоритмов обучения. Следовательно, можно предсказать алгоритмы, наиболее подходящие для новой задачи.
- Многослойное обобщение работает путем комбинирования нескольких (разных) алгоритмов обучения. Метаданные формируются на основе прогнозов этих различных алгоритмов. Другой алгоритм обучения учится на основе этих метаданных предсказывать, какие комбинации алгоритмов обычно дают хорошие результаты. Учитывая новую проблему обучения, прогнозы выбранного набора алгоритмов комбинируются (например, путем (взвешенного) голосования), чтобы обеспечить окончательный прогноз. Поскольку предполагается, что каждый алгоритм работает с подмножеством проблем, ожидается, что комбинация будет более гибкой и сможет давать хорошие прогнозы.
- Повышение связано с составным обобщением, но использует один и тот же алгоритм несколько раз, где примеры в обучающих данных получают разные веса при каждом запуске. Это дает разные прогнозы, каждое из которых сосредоточено на правильном прогнозировании подмножества данных, и объединение этих прогнозов приводит к лучшим (но более дорогостоящим) результатам.
- Выбор динамического смещения работает путем изменения индуктивного смещения алгоритма обучения на соответствовать данной проблеме. Это делается путем изменения ключевых аспектов алгоритма обучения, таких как представление гипотез, эвристические формулы или параметры. Существует множество различных подходов.
- Индуктивный перенос изучает, как процесс обучения можно улучшить с течением времени. Метаданные состоят из знаний о предыдущих этапах обучения и используются для эффективной разработки эффективной гипотезы для новой задачи. Связанный подход называется обучение обучению, цель которого состоит в том, чтобы использовать полученные знания из одной области, чтобы помочь обучению в других областях.
- Другие подходы с использованием метаданных для улучшения автоматического обучения: 34>обучающие системы классификаторов, рассуждения на основе случаев и удовлетворение ограничений.
- Была начата начальная теоретическая работа по использованию прикладного анализа поведения в качестве основы для агентно-опосредованного метаобучения о способностях учащихся-людей и корректировки учебного курса искусственного агента.
- AutoML, например, проект Google Brain «ИИ, создающий ИИ», который, согласно Google, ненадолго превзошел существующие ImageNet тесты в 2017 году.
Ссылки
Внешние ссылки
- Metalearning статья в Scholarpedia
- Вилалта Р. и Дрисси Я. (2002). Перспективный взгляд и обзор метаобучения, Обзор искусственного интеллекта, 18 (2), 77-95.
- Жиро-Карриер, К., Келлер, Дж. (2002). Работа с потоком данных, Дж. Мейдж (редактор), глава «Мета-обучение». STT / Beweton, Гаага.
- Браздил П., Жиро-Керриер К., Соареш К., Вилалта Р. (2009) Metalearning: приложения для интеллектуального анализа данных, глава Metalearning: Concepts and Systems, Springer
- Видеокурсы по метаобучению с пошаговым объяснением MAML, Prototypical Networks и Relation Networks.
Мета-обучение
Мета-обучение(англ. Meta-learning) — подход, позволяющий определять наиболее подходящий алгоритм (иногда, вместе с параметрами к нему) для конкретной задачи из портфолио алгоритмов. Основная идея мета-обучения — свести задачу выбора алгоритма к задаче обучения с учителем: задачи описываются мета-признаками. Мета-признак описывает свойство задачи — например, разрежен ли датасет или нет, число категориальных или численных признаков объектов в датасете, число возможных меток, размер датасета и многое другое.
От хорошей модели ожидается высокая адаптируемость к новым задачам и окружениям, на небольшом количестве примеров.
Обзор
Модель должна быть обучена на множестве задач и оптимизирована для лучшей производительности на нескольких задачах, включая такие, с которыми модель не сталкивалась ранее. Каждой задаче соответствует множество наборов данных $\mathcal$, каждый из которых содержит и векторы признаков и разметку. Оптимальные параметры модели:
\begin \theta^* = \arg\min_\theta \mathbb_<\mathcal\sim p(\mathcal)> [\mathcal_\theta(\mathcal)] \end
Очень похоже на обычную задачу машинного обучения, только один датасет принимается за один образец данных.
Ограничения — Теорема о том, что бесплатного завтрака не бывает(англ. No Free Lunch Theorem, сокр. NFL) theorem [1] [2] , доказанная в 1996 году.
Пусть [math]P(d_
^| f, m, a)[/math] — условная вероятность получения частного решения $d_m$ после $m$ итераций работы алгоритма $a$ при целевой функции $f$. Для любой пары алгоритмов $a_1$ и $a_2$ имеет место равенство: [math] \\ \begin \sum_P(d_ ^| f, m, a_1) = \sum_P(d_ ^| f, m, a_2) \end [/math] Иными словами, если встречается задача, которая не похожа на то, что решалось ранее, то мы не сможем сразу придумать для него эффективное решение.
Общая идея мета-обучения: для каждого набора данных $d \in \mathcal$ вычисляется вектор мета-признаков, которые описывают свойства этого набора данных. Ими могут быть: число категориальных или численных признаков объектов в $d$, число возможных меток, размер $d$ и многие другие [3] . Подробнее о конкретных метапризнаках смотреть ниже
Каждый алгоритм запускается на всех наборах данных из $\mathcal$. После этого вычисляется эмпирический риск, на основе которого формируются метки классов. Затем мета-классификатор обучается на полученных результатах. В качестве описания набора данных выступает вектор мета-признаков, а в качестве метки — алгоритм, оказавшийся самым эффективным с точки зрения заранее выбранной меры качества.
Каждый датасет $d \in \mathcal$ содержит пары признаков и меток, $\<(x_i, y_i)\>$, каждая метка принадлежит известному множеству меток $\mathcal$. Датасет $d$ делится на две части: $d=\langle S, B\rangle$, обучающую $S$ и тестовую $B$ выборки. Часто принимается k-shot N-class задача — обучающая выборка содержит $k$ размеченных примеров для каждого из $N$ классов. Скажем, наш классификатор $f_\theta$ с параметром $\theta$ показывает вероятность принадлежности точки из данных к классу $y$ при векторе признаков, $P_\theta(y|x)$. Оптимальные параметры должны максимизировать вероятность получения верных меток среди нескольких обучающих выборок $B⊂\mathcal$:
В пристрелочной (few-shot) классификации цель — уменьшить ошибку предсказания на неразмеченных данных. Чтобы его ускорить, сделаем следующее:
- Возьмем подмножество меток, $T\subset\mathcal$
- Возьмем обучающее множество $S^T⊂D$ и обучающую выборку $B^T⊂D$. Оба содержат только данные с метками из подмножества с пункта 1: $L, y \in L, \forall (x, y) \in S^T, B^T$
- Множество $S^T$ подается на вход модели
- Конечная оптимизация использует множество $B^T$, чтобы посчитать функцию потерь и обновить параметры модели через обратное распространение, так же, как это делается в обучении с учителем.
\begin \theta = \arg\max_\theta \color<\mathbb_>>[ \mathbb_<\color B \color> [\sum_ <(x, y) \in B>P_\theta(y \vert \mathbf \color)]] \end Красным цветом выделена разница между обучением с учителем и подходом мета-обучения.
Идея в некоторой степени аналогична использованию предварительно обученной модели в классификации изображений (ImageNet) или в NLP (большие текстовые корпуса), когда доступен только ограниченный набор образцов данных для конкретной задачи. Модель обучается таким образом, чтобы она могла обобщиться до других датасетов.
Оптимизации методов Мета-обучения
LSTM-meta-learner
Основная статья: Долгая краткосрочная память
Оптимизационный алгоритм может быть явно смоделирован. Рави и Ларошель [4] это и сделали и назвали его «meta-learner». Цель meta-learner’а — эффективно обновлять свои параметры используя небольшую обучающую выборку так, чтобы learner мог быстро адаптироваться к новым задачам.
Пусть модель ученика будет $M_\theta$, параметризованной $\theta$, и meta-learner как $R_\theta$ с параметром $\theta$, и функция потерь $\mathcal$.
Обновление параметров learner’a во время $t$ со скоростью обучения $\alpha_t$ (шаг градиентного спуска):
\begin \theta_t = \theta_ — \alpha_t \nabla_<\theta_>\mathcal_t \end
Обновление памяти ячейки LSTM выглядит так:
\begin c_t = f_t \odot c_ + i_t \odot \tilde_t = \theta_ — \alpha_t\nabla_<\theta_>\mathcal_t \end
$c_t$ — параметры сети $\theta_t$, $\tilde_t = -\nabla_>\mathcal_t$ при $f_t$ = 1.
$f_t$ = 1, $\tilde_t = -\nabla_>\mathcal_t$ — не оптимальные значения, их изменение может оказаться полезным, если вы попали в неудачный локальный минимум.
\begin f_t &= \sigma(\mathbf_f \cdot [\nabla_>\mathcal_t, \mathcal_t, \theta_, f_] + \mathbf_f) & \\ i_t &= \sigma(\mathbf_i \cdot [\nabla_>\mathcal_t, \mathcal_t, \theta_, i_] + \mathbf_i) & \\ \tilde_t &= -\nabla_>\mathcal_t & \\ \theta_t &= f_t \odot \theta_ + i_t \odot \tilde_t & \\ \end $f_t$ — как сильно мы забываем старые значения параметров на шаге $t$, $i_t$ — рейт обучения на шаге $t$.
REPTILE
Reptile — относительно простой алгоритм мета-обучения, похожий на MAML, например, тем, что оба используют мета-оптимизацию через градиентный спуск и оба не чувствительны к модели.
- Случайным образом разбиваем задачук на подмножества
- тренируемся на ней несколькими шагами градиентного спуска
- сдвигаем веса модели к новым параметрам.
$\text(\mathcal_, \theta, k)$ выполняет стохастический градиентный спуск на $k$ шагов c функцией потерь $\mathcal_$, начиная с параметра $\theta$ и возвращает конечный вектор параметров. Градиент reptile определяется как $(\theta — W)/\alpha$, где $\alpha$ — размер шага, используемый функцией $SGD$.
// Алгоритм REPTILE Initialize $\theta$ for $iteration = 1, 2. $ do Sample tasks $\tau_1, \tau_2, . \tau_n$ for $i = 1, 2, . n$ do Compute $W_i = \text(\mathcal_, \theta, k)$ end for Update $\theta \leftarrow \theta + \beta 1/n \sum (W_i - \theta)$ end for
Определение множества конфигураций
Предшествующие вычисления могут быть также использованы для изучения пространства более успешных конфигураций $\theta^$. Более подходящие под задачу конфигурации могут серьезно ускорить поиск оптимальных моделей, это важно при ограниченных вычислительных ресурсах.
Альтернативный подход сперва узнать оптимальные гиперпараметры, а потом через приращение производительности определить важность каждого из гиперпараметров. Это и было сделано в лаборатории OpenML, где провели около 500 000 экспериментов на 6 алгоритмах, использовав при этом 38 датасетах. Стандартные значения изучались вместе для всех гиперпараметров алгоритма посредством обучения суррогатных моделей на большом числе задач. После того, как уже проверены многие варианты конфигураций, выбирается такая, которая минимизирует средний риск для всех задач, и становится стандартной. Далее определяется важность каждого из гиперпараметров. Чем больше меняется приращение производительности, тем более важный гиперпараметр мы изменяем.
Если мы хотим предоставить рекомендации для конкретной задачи $t_$, нам нужна дополнительная информация о том, насколько $t_$ похожа на предыдущие задачи $t_j$. Первый способ — посчитать число рекомендованных конфигураций для $t_$,получая новое докозательство $\mathbf_$. Если позже мы будем наблюдать, что вычисления $P_$ соответствуют $P_$, то $t_$ и $t_$ могут быть очень похожими. Мы можем применить это знания для обучения meta-learner’a который предсказывает множество рекомендуемых конфигураций $\Theta^_$ for $t_$. Более того, можно пойти дальше и добавить $\Theta^_$ в $P_
Суррогатные модели
Более гибкий способ передать информацию — построить суррогатную модель $s_(\theta_) = P_$ для всех предшествующих задач $t_$, обученную с использованием всех доступных $\mathbf$. Можно определить «похожесть» задач в терминах ошибок между $s_(\theta_)$ и $P_$: если суррогатная модель для $t_$ может генерировать точные предсказания для $t_$, тогда такие задачи весьма похожи. Обычно это делается в комбинации с Байесовской оптимизацией для определения следующей $\theta_$.
Так же можно обучать суррогатные модели на Гауссовских процессах (GP) для каждой предыдущей задачи и еще одну для $t_$ и объединить их во взвешенную и нормализованную сумму, с медианой $\mu$ определенной как взвешанная сумма $\mu_$ полученных из задач $t_$. Веса $\mu_$ считаются методом Надарая-Ватсона [5] , где каждая задача представлена вектором относительных ориентиров (англ. relative landmarks) или ядром Епанечникова [6] , используется для определения похожести между векторами относительных ориентиров для $t_$ и $t_$. Чем больше $t_$ похожа на $t_$, тем больше получится вес $s_$, увеличивающий влияние суррогатной модели для $t_$.
Суррогатные модели обучаются только на $P_$, а следующий $\theta_$ получается путем нахождения средневзвешенного expected improvement $P_$ и предсказанных улучшений на всех предшествующих $P_$. Веса предшествующих задач могут быть переопределены через точность суррогатной модели или через относительных ориентиров. Вес ожидаемого улучшения (expected improvement) постепенно возрастает с каждой итерацией (с увеличением собранного эвиденса $P_$).
Обучение на свойствах задачи (learning on task properties)
Каждая задача $t_ \in T$ может быть описана вектором $m(t_j) = (m_, . m_)$ из $K$ мета-признаков $m_ \in M$,где $M$ — множество мета-признаков. Можно определить меру «похожести» задач, основанную, например, на Евклидовом расстоянии между $m(t_i)$ и $m(t_j)$, тогда можно будет использовать информацию из наиболее похожей задачи на новую задачу $t_$. Более того, используя предшествующие вычисления $\textbf$ можно обучить meta-learner’a $L$ предсказывать производительность $P_$ конфигураций $\theta_$ на новых задачах $t_$.
$L: \Theta \times M \rightarrow \textbf$
В таблице ниже представлен обзор наиболее используемых мета-признаков.
мета-признаки
Название Формула Объяснение Варианты простые instances $n$ Speed, Scalability [7] $p/n$, $log(n)$, log(n/p) features $p$ Curse of dimensionality $log(p)$, % categorical classes $c$ Complexity, imbalance ratio min/maj class Percent of missing values $m$ Imputation effects [8] % missing outliers $o$ Data noisiness [9] $o/n$ статистические Skewness $\frac ^>$ Feature normality min,max,$\mu$,$\sigma$,$q_,q_$ Kurtosis $\frac ^>$ Feature normality min,max,$\mu$,$\sigma$,$q_,q_$ Correlation $\rho_ $ Feature interdependence min,max,$\mu$,$\sigma$,$\rho_$ Covariance $cov_ $ Feature interdependence min,max,$\mu$,$\sigma$,$cov_$ Concentration $\tau_ $ Feature interdependence [10] min,max,$\mu$,$\sigma$,$\tau_$ Sparsity sparsity(X) Degree of discreteness [11] min,max,$\mu$,$\sigma$ Gravity gravity(X) Inter-class dispersion [12] ANOVA p-value $p__X_>>$ Feature redundancy $p_ $ Coeff. of variation $\frac><\mu_ >$ Variation in target [13] PCA $\rho_<\lambda_>$ $\sqrt<\frac<\lambda_><1+\lambda_>>$ Variance in first PC $\frac<\lambda_> \lambda_>$ PCA skewness Skewness of first PC PCA kurtosis PCA 95\% $\frac> $
Intrinsic dimensionality [14] Class probability $P(\texttt)$ Class distribution min,max,$\mu$,$\sigma$ информационно-теоретические Class entropy $H(\texttt)$ Class imbalance Norm. entropy $\frac $ Feature informativeness [15] min,max,$\mu$,$\sigma$ Mutual inform. $MI(\texttt,\texttt)$ Feature importance min,max,$\mu$,$\sigma$ Uncertainty coeff. $\frac $ [16] min,max,$\mu$,$\sigma$ Equiv. nr. feats $\frac<\overline>$ Intrinsic dimensionality Noise-signal ratio $\frac<\overline -\overline><\overline>$ Noisiness of data сложностные Fisher’s discrimin. $\frac<(\mu_ -\mu_)^>^-\sigma_^>$ Separability classes $c_,c_$ Volume of overlap Class distribution overlap [17] Concept variation Task complexity [18] Data consistency Data quality [19] основанные на модели # nodes, leaves [math]|\eta|,|\psi|[/math] Concept complexity [20] Tree depth Branch length Concept complexity min,max,$\mu$,$\sigma$ Nodes per feature [math]|\eta_|[/math] Feature importance min,max,$\mu$,$\sigma$ Leaves per class [math]\frac<|\psi_ |><|\psi|>[/math] Class complexity [21] min,max,$\mu$,$\sigma$ Leaves agreement [math]\frac >[/math] Class separability [22] min,max,$\mu$,$\sigma$ Information gain Feature importance min,max,$\mu$,$\sigma$, gini ориентиры (landmarks) Landmarker(1NN) $P(\theta_,t_)$ Data sparsity [23] Landmarker(Tree) $P(\theta_,t_)$ Data separability Stump,RandomTree Landmarker(Lin) $P(\theta_,t_)$ Linear separability Lin.Discriminant Landmarker(NB) $P(\theta_,t_)$ Feature independence [24] Relative LM $P_ — P_$ Probing performance [25] Subsample LM $P(\theta_,t_,s_)$ Probing performance [26] Непрерывные признаки $X$ и таргет $Y$ имеют медиану $\mu_$, стандартное отклонение $\sigma_$ и дисперсию $\sigma^_$. Категориальные признаки $\texttt$ и класс $\texttt$ имеют категориальные значения $\pi_$, условные вероятности $\pi_$, совместные вероятности $\pi_$, предельные вероятности $\pi_=\sum_\pi_$ и энтропию $H(\texttt)=-\sum_\pi_log_(\pi_)$.
Многие мета-признаки вычисляются по одиночным признакам или их комбинации, и должны быть агрегированы через min, max, $\mu$, $\sigma$, квартили или гистограммы.
Во время вычисления похожести задач важно нормализовать все мета-признаки, использовать отбор признаков [27] или использовать уменьшение размерности (например, principal component analisys — PCA).
Ориентиры (англ. landmarks)
Ориентиры — один из подходов для описания задач мета-обучения. В отличие от предшественников, использовавших только статистические метрики, ориентиры стараются определить расположение конкретной задачи мета-обучения в пространстве всех задач обучения, измеряя производительность некоторых простых и эффективных алгоритмов. Таким образом, можно сказать, что алгоритм обучения сам характеризуют задачу.
Относительные ориентиры
Первая мера для вычисления «похожести» задач вычисляла попарно разницу в производительности, так же называемую «relative landmarks» $RL_ = P_ — P_$ между двумя конфигурациями $\theta_$ и $\theta_$ на конкретной задаче $t_$.
Линейный дискриминант
Линейный дискриминант (англ. linear discriminant) $P(\theta_,t_)$ можно понимать как группировка и разделение категорий соответствующих конкретным признакам. Линейный дискриминант обычно ищет линейную комбинацию признаков, которая лучше всего разделит классы. Результат — линия, плоскость или гиперплоскость, зависит от числа комбинированных признаков.
Наивный Байесовский лэндмарк
Наивный Байесовский лэндмарк $P(\theta_,t_)$ [28] — вероятностный классификатор, основанный на теореме Байеса. Называется наивным потому что предполагается, что все атрибуты независимы друг от друга.
1NN
Elite 1-nearest neighbor $P(\theta_,t_)$ [29] kNN c $k = 1$. Elite — вариация основного метода, но в этом случае на вход kNN подается предварительно отобранное множество самых информативных примеров (у них минимлаьная разница приращения информации (information gain).Помогает установить, является ли задача релевантной, если похожи их атрибуты.
Примечания
- ↑Wolpert and Macready, 1996
- ↑Giraud-Carrier and Provost, 2005
- ↑Datasets meta-feature description for recommending feature selection algorithm
- ↑Ravie & Larochelle, Optimization as a model for a few-shot learning, 2017
- ↑Nadaraya-Watson estimator
- ↑V. A. Epanechnikov, Non-Parametric Estimation of a Multivariate Probability Density
- ↑Donald Michie, David J. Spiegelhalter, Charles C. Taylor, and John Campbell. Machine Learning, Neural and Statistical Classification, 1994
- ↑ A. Kalousis. Algorithm Selection via Meta-Learning. PhD thesis, University of Geneva, Department of Computer Science, 2002
- ↑ Peter J. Rousseeuw and Mia Hubert. Robust statistics for outlier detection. Wiley Interdisciplinary Reviews: Data Mining and Knowledge Discovery, 2011.
- ↑ Alexandros Kalousis and Melanie Hilario. Model selection via meta-learning: a comparative study.Intl Journ. on Artificial Intelligence Tools, 2001.
- ↑ Mostafa A. Salama, Aboul~Ella Hassanien, and Kenneth Revett. Employment of neural network and rough set in meta-learning, 2013.
- ↑ Shawkat Ali and Kate~A. Smith-Miles. On learning algorithm selection for classification. Applied Soft Computing, 2006.
- ↑ C. Soares, P. Brazdil, and P. Kuba. A meta-learning method to select the kernel width in support vector regression, 2004.
- ↑ R ́emi Bardenet, M ́aty ́as Brendel, Bal ́azs K ́egl, and Michele Sebag. Collaborative hyperparameter tuning. In Proceedings of ICML 2013, pages 199–207, 2013
- ↑ Ciro Castiello, Giovanna Castellano, and Anna~Maria Fanelli. Meta-data: haracterization of input features for meta-learning, pages 457 — 468, 2005.
- ↑ Feature importance A. Agresti. Categorical Data Analysis. Wiley Interscience, 2002.
- ↑ Tin Kam Ho and Mitra Basu. Complexity measures of supervised classification problems. Pattern Analysis and Machine Intellig, 2002.
- ↑ R. Vilalta. Understanding accuracy performance through concept characterization and algorithm analysis. ICML Workshop on Recent Advances in Meta-Learning and Future Work, 1999.
- ↑ C K\ddotpf and I Iglezakis. Combination of task description strategies and case base properties for meta-learning, 2002.
- ↑ Y Peng, P Flach, C Soares, and P Brazdil. Improved dataset characterisation for meta-learning, 2002.
- ↑ Andray Filchenkov and Arseniy Pendryak. Dataset metafeature description for recommending feature selection. In \emph, pages 11—18, 2015.
- ↑ Bernhard Pfahringer, Hilan Bensusan, and Christophe G. Giraud-Carrier. Meta-learning by landmarking various learning algorithms.In \emph
- ↑ Bernhard Pfahringer, Hilan Bensusan, and Christophe G. Giraud-Carrier. Meta-learning by landmarking various learning algorithms.In \emph, pages 743 — 750, 2000.
- ↑ Daren Ler, Irena Koprinska, and Sanjay Chawla. Utilizing regression-based landmarkers within a meta-learning framework for algorithm selection. \emph, pages 44—51, 2005.
- ↑ J F\ddotrnkranz and J Petrak. An evaluation of landmarking variants. \emph, pages 57—68, 2001.
- ↑ Taciana AF Gomes, Ricardo BC Prudencio, Carlos Soares, Andre LD Rossi and Andre Carvalho. Combining meta-learning and search techniques to select parameters for support vector machines, 2012.
- ↑ L Todorovski and S Dzeroski. Experiments in meta-level learning with ILP. Lecture Notes in Computer Science, 1704:98–106, 1999.
- ↑ Daren Ler, Irena Koprinska, and Sanjay Chawla. Utilizing regression-based landmarkers within a meta-learning framework for algorithm selection. \emph, pages 44—51, 2005.
- ↑ Bernhard Pfahringer, Hilan Bensusan, and Christophe G. Giraud-Carrier. Meta-learning by landmarking various learning algorithms.In \emph, pages 743 — 750, 2000.
См. Также
Источники информации
- https://lilianweng.github.io/lil-log/2018/11/30/meta-learning.html#define-the-meta-learning-problem
- https://arxiv.org/pdf/1810.03548.pdf
- https://www.ml4aad.org/wp-content/uploads/2018/09/chapter2-metalearning.pdf
- https://openreview.net/pdf?id=rJY0-Kcll
- https://www1.maths.leeds.ac.uk/~charles/statlog/whole.pdf
- https://www.fruct.org/publications/ainl-fruct/files/Fil.pdf
Что такое метаобучение?
Одно из самых быстроразвивающихся направлений исследований в обучение с помощью машины это площадь мета-обучение. Метаобучение в контексте машинного обучения — это использование алгоритмов машинного обучения для помощи в обучении и оптимизации других моделей машинного обучения. По мере того, как метаобучение становится все более популярным и разрабатывается все больше методов метаобучения, полезно иметь представление о том, что такое метаобучение, и иметь представление о различных способах его применения. Давайте рассмотрим идеи, лежащие в основе метаобучения, виды мета-обучения, а также некоторые способы использования метаобучения.
Термин «метаобучение» был введен Дональдом Модсли для описания процесса, посредством которого люди начинают формировать то, что они изучают, становясь «все более контролирующими привычки восприятия, исследования, обучения и роста, которые они усвоили». Позднее ученые-когнитивисты и психологи описывали метаобучение как «обучение тому, как учиться».
Для версии метаобучения с машинным обучением общая идея «обучения тому, как учиться» применяется к системам ИИ. В смысле ИИ метаобучение — это способность машины с искусственным интеллектом учиться выполнять различные сложные задачи, используя принципы, которые она использовала для изучения одной задачи, и применяя их к другим задачам. Системы ИИ обычно должны быть обучены выполнять задачу путем освоения множества небольших подзадач. Это обучение может занять много времени, и агентам ИИ нелегко перенести знания, полученные во время выполнения одной задачи, в другую задачу. Создание моделей и методов метаобучения может помочь ИИ научиться обобщать методы обучения и быстрее приобретать новые навыки.
Типы метаобучения
Оптимизатор Метаобучение
Метаобучение часто используется для оптимизации производительности уже существующей нейронной сети. Методы метаобучения оптимизатора обычно функционируют путем настройки гиперпараметров другой нейронной сети для повышения производительности базовой нейронной сети. В результате целевая сеть должна лучше выполнять задачу, на которой она обучается. Одним из примеров оптимизатора метаобучения является использование сети для улучшения градиентный спуск результаты.
Мета-обучение «Несколько выстрелов»
Подход метаобучения с несколькими выстрелами — это подход, при котором создается глубокая нейронная сеть, способная обобщать наборы обучающих данных до невидимых наборов данных. Пример групповой классификации похож на обычную задачу классификации, но вместо этого выборки данных представляют собой целые наборы данных. Модель обучается на множестве различных обучающих задач/наборов данных, а затем оптимизируется для достижения максимальной производительности на множестве обучающих задач и невидимых данных. В этом подходе одна обучающая выборка разбивается на несколько классов. Это означает, что каждая обучающая выборка/набор данных потенциально может состоять из двух классов, всего 4 выстрела. В этом случае общая тренировочная задача может быть описана как задача классификации 4-х классов из 2 выстрелов.
Идея обучения за несколько выстрелов состоит в том, что отдельные обучающие выборки минималистичны и что сеть может научиться идентифицировать объекты, увидев всего несколько изображений. Это очень похоже на то, как ребенок учится различать предметы, увидев всего пару картинок. Этот подход использовался для создания таких методов, как одноразовые генеративные модели и нейронные сети с расширенной памятью.
Метричное метаобучение
Метаобучение на основе метрик — это использование нейронных сетей для определения того, эффективно ли используется метрика и достигают ли сеть или сети целевого показателя. Мета-обучение метрик похоже на обучение за несколько шагов в том смысле, что используется всего несколько примеров для обучения сети и изучения метрического пространства. Одна и та же метрика используется в разных доменах, и если сети расходятся с метрикой, они считаются несостоятельными.
Метаобучение рекуррентной модели
Метаобучение с рекуррентной моделью — это применение методов метаобучения к Рекуррентные нейронные сети и тому подобное Долгосрочная кратковременная память сети. Этот метод работает путем обучения РНН/LSTM для последовательного изучения набора данных и последующего использования этой обученной модели в качестве основы для другого обучающегося. Мета-обучение берет на вооружение конкретный алгоритм оптимизации, который использовался для обучения исходной модели. Унаследованная параметризация мета-обучения позволяет ему быстро инициализироваться и сходиться, но при этом иметь возможность обновляться для новых сценариев.
Как работает метаобучение?
Точный способ проведения метаобучения зависит от модели и характера поставленной задачи. Однако в целом задача метаобучения включает копирование параметров первой сети в параметры второй сети/оптимизатора.
В метаобучении есть два процесса обучения. Модель метаобучения обычно обучается после нескольких этапов обучения базовой модели. После шагов прямого, обратного и оптимизации, которые обучают базовую модель, для модели оптимизации выполняется прямой проход обучения. Например, после трех-четырех шагов обучения на базовой модели вычисляются мета-потери. После вычисления метапотери вычисляются градиенты для каждого метапараметра. После этого метапараметры в оптимизаторе обновляются.
Одна из возможностей расчета мета-потери состоит в том, чтобы завершить предварительный этап обучения исходной модели, а затем объединить уже вычисленные потери. Мета-оптимизатор может быть даже другим мета-обучателем, хотя в определенный момент необходимо использовать дискретный оптимизатор, такой как ADAM или SGD.
Многие модели глубокого обучения могут иметь сотни тысяч или даже миллионы параметров. Создание мета-обучения с совершенно новым набором параметров было бы дорогостоящим в вычислительном отношении, и по этой причине обычно используется тактика, называемая совместным использованием координат. Совместное использование координат включает разработку мета-обучения/оптимизатора таким образом, чтобы он изучал один параметр из базовой модели, а затем просто клонировал этот параметр вместо всех других параметров. В результате параметры, которыми обладает оптимизатор, не зависят от параметров модели.
Раскрытие возможностей Metalearning: основа для лучшего обучения

TLDR Метаобучение — это самонаправленный подход к обучению, который включает в себя изучение того, как учиться, извлечение основ из предыдущего обучения и использование самонаправленного мышления для улучшения понимания того, почему, что и как лучше усваивать.
Summarize any YouTube video Summarize any video by yourself
Install on Chrome
Ключевые выводы
Метаобучение — это интеллектуальное обучение, направленный поиск того, что вы хотите знать, и получение нужных ресурсов для достижения ваших целей, а не просто следование традиционному подходу из учебников.
Метаобучение может помочь нам сосредоточиться на том, почему, что и как можно улучшить в обучении.
Понимание цели, стоящей за обучением, может помочь нам избежать создания ненужных ожиданий по отношению к самим себе и получать удовольствие от процесса приобретения новых навыков или знаний.
Метаобучение предполагает определение того, чего вы хотите достичь, и постановку перед собой трех вопросов: какие концепции мне нужно понять, какие факты я должен запомнить и какие процедуры я должен практиковать.
Метаобучение — это использование фреймворков для понимания концепций, а не просто запоминание фактов.
Выделение и исключение ресурсов является ключом к построению вашего собственного пути к желаемому результату в обучении.
Просмотреть больше Обучение и просвещение
Отмеченное временем резюме
Метаобучение — это самостоятельный подход к обучению, который фокусируется на интеллектуальном обучении и поиске нужных ресурсов для достижения ваших целей, и включает в себя изучение того, как учиться, что является ключом к воспроизведению человеческого интеллекта с помощью искусственного интеллекта и машинного обучения.
Метаобучение — это извлечение фреймворков из предыдущих уроков, чтобы эффективно применять их к новому контенту, и трата времени на метаобучение может улучшить понимание того, почему, что и как лучше усваивается.
Важно понимать, почему мы хотим учиться, поскольку наши мотивации могут варьироваться от практических до внутренних, и игнорирование этого может привести к нереалистичным ожиданиям и ненужному давлению.
Определите, чего вы хотите достичь, и задайте себе три вопроса, чтобы сосредоточиться на концепциях, фактах и процедурах, которые действительно важны для ваших целей обучения.
Метаобучение — это использование фреймворков для понимания концепций и разработки сокращений памяти, таких как понимание сложения и порядка перехода от подсчета к сложной математике.
Узнайте, как учиться, определив наиболее распространенный путь к желаемому результату и создав ментальную модель, на которую можно опереться своими знаниями.
Обучение — это исследование и построение собственного пути к результату, объединение различных ресурсов и выделение или исключение их в зависимости от актуальности и легкости усвоения.
Самонаправленное мышление — это самый мощный аспект метаобучения, который включает в себя процесс обучения, отучения и переучивания заново, а также добавление новых фреймворков в ваш когнитивный набор инструментов.
Summarize any video by yourself
- 2.1 Модельно-ориентированные