Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

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

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

Изучение функций может быть контролируемым или неконтролируемым.

  • При обучении с учителем функции изучаются с использованием помеченных входных данных. Примеры включают контролируемые нейронные сети , многослойный персептрон и (контролируемое) изучение словаря .
  • При неконтролируемом обучении функций функции изучаются с немаркированными входными данными. Примеры включают изучение словаря, независимый компонентный анализ , автоэнкодеры , матричную факторизацию [2] и различные формы кластеризации . [3] [4] [5]

Под наблюдением [ править ]

Контролируемое изучение функций - это изучение функций на основе помеченных данных. Метка данных позволяет системе вычислить член ошибки, степень, в которой система не может создать метку, которую затем можно использовать в качестве обратной связи для корректировки процесса обучения (уменьшения / минимизации ошибки). Подходы включают:

Контролируемое изучение словаря [ править ]

При изучении словаря создается набор (словарь) репрезентативных элементов из входных данных, так что каждая точка данных может быть представлена ​​как взвешенная сумма репрезентативных элементов. Элементы словаря и веса могут быть найдены путем минимизации средней ошибки представления (по входным данным) вместе с регуляризацией L1 весов для обеспечения разреженности (т. Е. Представление каждой точки данных имеет только несколько ненулевых весов).

В контролируемом изучении словаря используется как структура, лежащая в основе входных данных, так и метки для оптимизации элементов словаря. Например, эта [6] методика обучения словарей с учителем применяет изучение словаря к задачам классификации путем совместной оптимизации элементов словаря, весов для представления точек данных и параметров классификатора на основе входных данных. В частности, формулируется задача минимизации, в которой целевая функция состоит из ошибки классификации, ошибки представления, регуляризации L1 для представляющих весов для каждой точки данных (для обеспечения разреженного представления данных) и регуляризации L2 для параметров классификатора.

Нейронные сети [ править ]

Нейронные сети - это семейство алгоритмов обучения, которые используют «сеть», состоящую из нескольких уровней взаимосвязанных узлов. Он вдохновлен нервной системой животных, где узлы рассматриваются как нейроны, а края - как синапсы. Каждое ребро имеет связанный вес, и сеть определяет вычислительные правила для передачи входных данных от входного слоя сети к выходному слою. Сетевая функция, связанная с нейронной сетью, характеризует взаимосвязь между входным и выходным слоями, которая параметризуется весами. С соответствующим образом определенными сетевыми функциями можно выполнять различные обучающие задачи, минимизируя функцию стоимости над сетевой функцией (весами).

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

Без присмотра[ редактировать ]

Неконтролируемое изучение функций - это изучение функций на основе немаркированных данных. Целью неконтролируемого изучения функций часто является обнаружение низкоразмерных функций, которые фиксируют некоторую структуру, лежащую в основе входных данных большой размерности. Когда обучение функций выполняется неконтролируемым образом, это позволяет использовать форму полууправляемого обучения, когда функции, полученные из немаркированного набора данных, затем используются для повышения производительности в контролируемой настройке с помеченными данными. [7] [8] Ниже представлены несколько подходов.

K- означает кластеризацию [ править ]

Кластеризация K- средних - это подход к векторному квантованию. В частности, для заданного набора из n векторов k- означает, что кластеризация группирует их в k кластеров (т. Е. Подмножеств) таким образом, что каждый вектор принадлежит кластеру с ближайшим средним значением. Проблема является NP-трудной в вычислительном отношении, хотябыли разработанынеоптимальные жадные алгоритмы .

Кластеризацию K-средних можно использовать для группировки немаркированного набора входных данных в k кластеров, а затем использовать центроиды этих кластеров для создания функций. Эти функции могут быть созданы несколькими способами. Самый простой - добавить k двоичных функций к каждой выборке, где каждая характеристика j имеет значение один, если и только если j- й центроид, полученный с помощью k -means, является ближайшим к рассматриваемой выборке. [3] Также возможно использовать расстояния до кластеров как функции, возможно, после их преобразования с помощью радиальной базисной функции (метод, который использовался для обучения сетей RBF [9]). Коутс и Нг отмечают, что некоторые варианты k- средних ведут себя аналогично алгоритмам разреженного кодирования . [10]

При сравнительной оценке методов неконтролируемого обучения функций Коутс, Ли и Нг обнаружили, что k- означает кластеризацию с соответствующим преобразованием по эффективности более недавно изобретенных автокодировщиков и RBM в задаче классификации изображений. [3] K- средство также улучшает производительность в области НЛП , особенно для распознавания именованных сущностей ; [11] там он конкурирует с кластеризацией Брауна , а также с распределенными представлениями слов (также известными как нейронные вложения слов). [8]

Анализ главных компонентов [ править ]

Анализ главных компонентов (PCA) часто используется для уменьшения размерности. Учитывая немаркированный набор из n векторов входных данных, PCA генерирует p (что намного меньше, чем размер входных данных) правых сингулярных векторов, соответствующих p наибольшим сингулярным значениям матрицы данных, где k- я строка матрицы данных являются к - й вектор входных данных сдвинуты на образец среднего входа (то есть, вычитание выборочного среднего из вектора данных). Эквивалентно, эти сингулярные векторы являются собственными векторами, соответствующими p наибольшим собственным значениям выборочной ковариационной матрицывходных векторов. Эти p сингулярных векторов являются векторами признаков, извлеченными из входных данных, и они представляют направления, вдоль которых данные имеют наибольшие вариации.

PCA - это линейный подход к изучению признаков, поскольку p сингулярных векторов являются линейными функциями матрицы данных. Особые векторы могут быть сгенерированы с помощью простого алгоритма с p итерациями. На i- й итерации проекция матрицы данных на (i-1) -й собственный вектор вычитается, и i- й сингулярный вектор находится как правый сингулярный вектор, соответствующий наибольшему сингулярному числу матрицы остаточных данных.

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

Локальное линейное встраивание [ править ]

Локальное линейное встраивание (LLE) - это подход нелинейного обучения для создания низкоразмерных сохраняющих соседей представлений из (немаркированных) входных данных большой размерности. Подход был предложен Roweis и Saul (2000). [12] [13] Общая идея LLE состоит в том, чтобы восстановить исходные многомерные данные с использованием точек более низкой размерности, сохраняя при этом некоторые геометрические свойства окрестностей в исходном наборе данных.

LLE состоит из двух основных этапов. Первый шаг предназначен для «сохранения соседей», когда каждая точка входных данных Xi восстанавливается как взвешенная сумма K ближайших соседних точек данных, а оптимальные веса находятся путем минимизации средней квадратичной ошибки восстановления (т. Е. Разницы между входными данными точка и ее реконструкция) при ограничении, что веса, связанные с каждой точкой, в сумме равны единице. Второй шаг - для «уменьшения размерности» путем поиска векторов в пространстве меньшей размерности, который минимизирует ошибку представления с использованием оптимизированных весов на первом шаге. Обратите внимание, что на первом этапе веса оптимизируются с фиксированными данными, которые могут быть решены методом наименьших квадратов.проблема. На втором этапе точки меньшей размерности оптимизируются с фиксированными весами, что может быть решено с помощью разреженного разложения на собственные значения.

Веса реконструкции, полученные на первом этапе, фиксируют «внутренние геометрические свойства» окрестности во входных данных. [13] Предполагается, что исходные данные лежат на гладком многообразии меньшей размерности , и ожидается, что «внутренние геометрические свойства», зафиксированные весами исходных данных, также будут на этом многообразии. Вот почему те же веса используются на втором этапе LLE. По сравнению с PCA LLE более эффективен в использовании базовой структуры данных.

Независимый компонентный анализ [ править ]

Анализ независимых компонентов (ICA) - это метод формирования представления данных с использованием взвешенной суммы независимых негауссовских компонентов. [14] Предположение негауссовости накладывается, поскольку веса не могут быть однозначно определены, когда все компоненты следуют гауссовскому распределению.

Самостоятельное изучение словаря [ править ]

При обучении словарей без учителя не используются метки данных, а структура, лежащая в основе данных, используется для оптимизации элементов словаря. Примером неконтролируемого изучения словаря является разреженное кодирование , которое направлено на изучение базовых функций (элементов словаря) для представления данных из немаркированных входных данных. Разреженное кодирование может применяться для изучения переполненных словарей, в которых количество элементов словаря превышает размер входных данных. [15] Аарон и др. предложен алгоритм K-SVD для изучения словаря элементов, допускающий разреженное представление. [16]

Многослойные / глубокие архитектуры [ править ]

Иерархическая архитектура биологической нейронной системы вдохновляет архитектуры глубокого обучения на изучение функций путем наложения нескольких уровней обучающих узлов. [17] Эти архитектуры часто разрабатываются на основе предположения о распределенном представлении.: наблюдаемые данные генерируются взаимодействием множества различных факторов на разных уровнях. В архитектуре глубокого обучения выходные данные каждого промежуточного уровня можно рассматривать как представление исходных входных данных. Каждый уровень использует представление, созданное на предыдущем уровне, в качестве входных данных и производит новые представления в качестве выходных данных, которые затем передаются на более высокие уровни. Входными данными нижнего слоя являются необработанные данные, а выходными данными последнего слоя - окончательный низкоразмерный объект или представление.

Ограниченная машина Больцмана [ править ]

Машины Больцмана с ограничениями (RBM) часто используются в качестве строительного блока для архитектур многоуровневого обучения. [3] [18] RBM может быть представлен неориентированным двудольным графом, состоящим из группы двоичных скрытых переменных , группы видимых переменных и ребер, соединяющих скрытые и видимые узлы. Это частный случай более общих машин Больцмана с ограничением отсутствия внутриузловых соединений. Каждое ребро в RBM связано с весом. Веса вместе со связями определяют функцию энергии , на основе которой совместное распределениевидимых и скрытых узлов. В зависимости от топологии RBM скрытые (видимые) переменные независимы и зависят от видимых (скрытых) переменных. [ требуется пояснение ] Такая условная независимость упрощает вычисления.

RBM можно рассматривать как однослойную архитектуру для неконтролируемого изучения функций. В частности, видимые переменные соответствуют входным данным, а скрытые переменные соответствуют детекторам признаков. Веса могут обучаться за счет максимизации вероятности видимых переменных , используя Hinton «s контрастный дивергенции алгоритм (CD). [18]

В общем, обучение RBM путем решения задачи максимизации имеет тенденцию приводить к нерезким представлениям. Разреженный RBM [19] был предложен для обеспечения разреженных представлений. Идея состоит в том, чтобы добавить член регуляризации в целевую функцию правдоподобия данных, который штрафует отклонение ожидаемых скрытых переменных от небольшой константы .

Автоэнкодер [ править ]

Автоассоциатор , состоящий из кодера и декодера , это парадигма для глубокого изучения архитектур. Пример предоставлен Хинтоном и Салахутдиновым [18], где кодировщик использует необработанные данные (например, изображение) в качестве входных и создает функцию или представление в качестве выходных данных, а декодер использует извлеченные из кодера характеристики в качестве входных данных и восстанавливает исходные исходные входные данные как выход. Кодер и декодер построены путем наложения нескольких уровней RBM. Параметры, задействованные в архитектуре, изначально обучались жадным послойным способом: после изучения одного уровня детекторов признаков они используются как видимые переменные для обучения соответствующего RBM. Современные подходы обычно предусматривают сквозное обучение сметоды стохастического градиентного спуска . Обучение можно повторять до тех пор, пока не будут выполнены некоторые критерии остановки.

См. Также [ править ]

  • Автоматизированное машинное обучение (AutoML)
  • Базовая функция
  • Глубокое обучение
  • Обнаружение функций (компьютерное зрение)
  • Извлечение признаков
  • Уловка ядра
  • Векторное квантование

Ссылки [ править ]

  1. ^ Y. Bengio; А. Курвиль; П. Винсент (2013). «Репрезентативное обучение: обзор и новые перспективы». IEEE Transactions по анализу шаблонов и машинному анализу . 35 (8): 1798–1828. arXiv : 1206,5538 . DOI : 10.1109 / tpami.2013.50 . PMID  23787338 .
  2. ^ Nathan Srebro; Джейсон Д.М. Ренни; Томми С. Яаккола (2004). Факторизация матрицы максимальной маржи . НИПС .
  3. ^ a b c d Коутс, Адам; Ли, Хонглак; Нг, Эндрю Ю. (2011). Анализ однослойных сетей в неконтролируемом обучении функций (PDF) . Междунар. Конф. по искусственному интеллекту и статистике (AISTATS). Архивировано из оригинального (PDF) 13 августа 2017 года . Проверено 24 ноября 2014 .
  4. ^ Csurka, Габриэлла; Танец, Кристофер С .; Fan, Lixin; Вилламовски, Ютта; Брей, Седрик (2004). Визуальная категоризация с помощью пакетов ключевых точек (PDF) . Семинар ECCV по статистическому обучению в компьютерном зрении.
  5. ^ Даниэль Джурафски ; Джеймс Х. Мартин (2009). Обработка речи и языка . Pearson Education International. С. 145–146.
  6. ^ Майраль, Жюльен; Бах, Фрэнсис; Понсе, Жан; Сапиро, Гильермо; Зиссерман, Андрей (2009). «Обучение словарю с учителем». Достижения в системах обработки нейронной информации .
  7. ^ Перси Лян (2005). Полу-контролируемое обучение естественному языку (PDF) (M. Eng.). Массачусетский технологический институт . С. 44–52.
  8. ^ а б Джозеф Туриан; Лев Ратинов; Йошуа Бенжио (2010). Представления слов: простой и общий метод обучения без учителя (PDF) . Материалы 48-го ежегодного собрания Ассоциации компьютерной лингвистики. Архивировано из оригинального (PDF) 26 февраля 2014 года . Проверено 22 февраля 2014 .
  9. ^ Швенкер, Фридхельм; Kestler, Hans A .; Пальма, Гюнтер (2001). «Три этапа обучения для сетей с радиальной базисной функцией». Нейронные сети . 14 (4–5): 439–458. CiteSeerX 10.1.1.109.312 . DOI : 10.1016 / s0893-6080 (01) 00027-2 . PMID 11411631 .  
  10. ^ Коутс, Адам; Нг, Эндрю Ю. (2012). «Изучение представлений функций с помощью k-средних». В G. Montavon, GB Orr и K.-R. Мюллер (ред.). Нейронные сети: хитрости . Springer.
  11. ^ Деканг ​​Линь; Сяоюнь Ву (2009). Кластеризация фраз для разборчивого обучения (PDF) . Proc. J. Conf. ACL и 4-й Междунар. ж. конф. по обработке естественного языка AFNLP. С. 1030–1038.
  12. ^ Роуис, Сэм Т; Сол, Лоуренс К. (2000). «Снижение нелинейной размерности локально линейным вложением». Наука . Новая серия. 290 (5500): 2323–2326. Bibcode : 2000Sci ... 290.2323R . DOI : 10.1126 / science.290.5500.2323 . JSTOR 3081722 . PMID 11125150 .  
  13. ^ а б Саул, Лоуренс К.; Роуис, Сэм Т. (2000). «Введение в локально линейное вложение» . Цитировать журнал требует |journal=( помощь )
  14. ^ Хювэринен, Аапо; Оя, Эркки (2000). «Независимый компонентный анализ: алгоритмы и приложения». Нейронные сети . 13 (4): 411–430. DOI : 10.1016 / s0893-6080 (00) 00026-5 . PMID 10946390 . 
  15. ^ Ли, Хонглак; Битва, Алексис; Райна, Раджат; Нг, Эндрю Y (2007). «Эффективные алгоритмы разреженного кодирования». Достижения в системах обработки нейронной информации .
  16. ^ Аарон, Михал; Элад, Майкл; Брукштейн, Альфред (2006). «K-SVD: алгоритм разработки переполненных словарей для разреженного представления». IEEE Trans. Сигнальный процесс . 54 (11): 4311–4322. Bibcode : 2006ITSP ... 54.4311A . DOI : 10.1109 / TSP.2006.881199 .
  17. ^ Bengio, Yoshua (2009). «Изучение глубинных архитектур для искусственного интеллекта». Основы и тенденции в машинном обучении . 2 (1): 1–127. DOI : 10.1561 / 2200000006 .
  18. ^ a b c Хинтон, GE; Салахутдинов, Р.Р. (2006). «Уменьшение размерности данных с помощью нейронных сетей» (PDF) . Наука . 313 (5786): 504–507. Bibcode : 2006Sci ... 313..504H . DOI : 10.1126 / science.1127647 . PMID 16873662 .  
  19. ^ Ли, Хонглак; Эканадхам, Чайтанья; Эндрю, Нг (2008). «Модель разреженной сети глубоких убеждений для визуальной области V2». Достижения в системах обработки нейронной информации .