Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Лекция 12.3 — Ограниченные машины Больцмана
Лекция 12.3 — Ограниченные машины Больцмана [Нейронные сети для машинного обучения]
Машины Больцмана имеют упрощенную архитектуру без связей между скрытыми единицами, что позволяет легко вычислить равновесное распределение скрытых единиц, когда видимые единицы зафиксированы. Алгоритм обучения для машин Больцмана медленный, но в 1998 году был обнаружен обходной путь, который привел к эффективному алгоритму обучения для ограниченных машин Больцмана (RBM). RBM имеют ограниченную возможность подключения, с одним слоем скрытых блоков и отсутствием соединений между скрытыми или видимыми блоками. Архитектура RBM представляет собой двудольный граф с независимыми вычислениями для каждой единицы.
Ярлык позволяет быстро вычислить ожидаемые значения соединений между видимыми и скрытыми единицами параллельно. Алгоритм обучения для RBM, представленный в 2008 году, включает в себя фиксацию вектора данных на видимых единицах, вычисление ожидаемых значений соединений и их усреднение по векторам данных в мини-пакете. В отрицательной фазе фантазийные частицы (глобальные конфигурации) используются для обновления каждой частицы несколько раз, а ожидаемые значения связей усредняются по фантазийным частицам. Этот алгоритм строит хорошие модели плотности для бинарных векторов.
Другой алгоритм обучения для RBM быстрее, но не так эффективен при построении моделей плотности. Он включает в себя чередующуюся цепочку обновлений между видимыми и скрытыми единицами. Правило обучения обновляет веса на основе разницы между ожидаемыми значениями соединений в начале и в конце цепочки. Нет необходимости запускать цепь в течение длительного времени для достижения теплового равновесия; даже короткая цепочка обеспечивает эффективное обучение.
Ярлык работает, потому что цепь Маркова отклоняется от данных к равновесному распределению. Изменяя веса, чтобы снизить вероятность реконструкции и повысить вероятность данных после одного полного шага, цепочка перестает отклоняться от данных. Обучение останавливается, когда данные и реконструкции имеют одинаковое распределение. Поверхность энергии в пространстве глобальных конфигураций модифицируется для создания минимума энергии в точке данных во время обучения.
Однако ярлык не работает для регионов, далеких от данных. Постоянные частицы, которые запоминают свое состояние и подвергаются дополнительным обновлениям, могут помочь решить эту проблему. Компромисс между скоростью и правильностью заключается в том, чтобы начинать с малых весов и использовать контрастную дивергенцию (CD) с несколькими шагами (CD-1, CD-3, CD-5 и т. д.) по мере роста весов. Этот подход поддерживает эффективное обучение даже при уменьшении скорости смешивания цепи Маркова.
Используя этот подход, алгоритм обучения для ограниченных машин Больцмана (RBM) обеспечивает баланс между скоростью и точностью. Он начинается с малых весов и использует контрастную дивергенцию (CD) с небольшим количеством шагов, например CD-1, по мере постепенного увеличения веса. Эта стратегия гарантирует, что процесс обучения будет продолжать работать достаточно хорошо, даже когда скорость смешения цепи Маркова замедляется.
Важно учитывать области пространства данных, которым отдает предпочтение модель, но которые далеки от реальных точек данных. Эти области, известные как низкоэнергетические дыры, могут вызвать проблемы с членом нормализации. Чтобы решить эту проблему, можно использовать метод, называемый стойкими частицами. Постоянные частицы сохраняют свое состояние и подвергаются дополнительным обновлениям после каждого обновления веса. Поступая таким образом, они могут исследовать и в конечном итоге заполнить эти низкоэнергетические дыры, улучшая производительность модели.
Алгоритм обучения RBM с использованием ярлыка и различных методов, таких как CD с разным количеством шагов и использование персистентных частиц, позволяет эффективно обучаться и строить модели эффективной плотности для наборов бинарных векторов. Хотя этот метод отличается от обучения с максимальным правдоподобием и имеет теоретические ограничения, он хорошо зарекомендовал себя на практике, что привело к возрождению интереса к машинному обучению Больцмана.
Лекция 12.4 — Пример обучения RBM
Лекция 12.4 — Пример обучения RBM [Нейронные сети для машинного обучения]
В этом видео мы продемонстрируем простой пример ограниченной машины Больцмана (RBM), обучающей модель рукописных двоек. Как только модель будет обучена, мы оценим ее способность восстанавливать двойки и наблюдать за ее поведением, когда для реконструкции дается другая цифра. Кроме того, мы рассмотрим веса, полученные путем обучения более крупного RBM на всех классах цифр, который изучает широкий спектр функций, эффективных для реконструкции и моделирования различных классов цифр.
RBM, используемый в этом примере, имеет 16x16-пиксельные изображения двоек и 50 двоичных скрытых единиц, которые функционируют как детекторы признаков. Когда представлен случай данных, RBM активирует детекторы признаков, используя веса и связи между пикселями и детекторами признаков. Каждый бинарный нейрон принимает стохастическое решение принять состояние 1 или 0. Затем RBM использует эти активации для восстановления данных, принимая бинарные решения для каждого пикселя. Веса обновляются путем увеличения весов между активными пикселями и активными детекторами признаков во время обработки данных и уменьшения весов во время реконструкции.
Изначально веса случайны, а реконструкции имеют меньшую энергию, чем данные. Благодаря обучению на сотнях примеров цифр и корректировке весов веса постепенно формируют шаблоны. Многие детекторы признаков начинаются как глобальные детекторы, становясь более локализованными по мере обучения. Окончательные веса показывают, что каждый нейрон стал отдельным детектором признаков, причем большинство детекторов являются локальными по своей природе. Например, детектор признаков может обнаруживать вершину двойки, активируя свои белые пиксели, когда присутствует вершина двойки, и черные пиксели, когда ничего нет.
Изучив модель, мы можем оценить ее возможности реконструкции. Когда дается тестовый пример двойки, реконструкция в целом достоверна, хотя и немного размыта. Однако если мы предоставим тестовый пример из другого класса цифр, например тройки, RBM реконструирует изображение, которое больше напоминает двойку, чем тройку. Такое поведение возникает из-за того, что RBM в первую очередь изучил детекторы признаков, специфичные для двоек, и не имеет детекторов для определенных характеристик других цифр.
Кроме того, мы демонстрируем детекторы признаков, изученные в первом скрытом слое более крупного RBM, обученного для всех десяти разрядных классов. Эти детекторы признаков демонстрируют широкий спектр шаблонов. Некоторые обнаруживают определенные особенности, такие как наклонные линии, в то время как другие фиксируют дальние или пространственные закономерности, возникающие в результате нормализации данных. В целом, RBM демонстрирует свою способность изучать сложные способы представления и обнаружения признаков во входных данных.
Кроме того, я хотел бы указать, что RBM, используемый в этой демонстрации, состоит из 500 скрытых единиц, что позволяет моделировать все десятизначные классы. Эта модель подверглась интенсивному обучению с использованием техники, называемой контрастной дивергенцией. В результате он приобрел разнообразный набор детекторов признаков.
Изучая детекторы признаков в скрытом слое, мы наблюдаем интригующие закономерности. Например, есть детектор признаков, обозначенный синим прямоугольником, который подходит для обнаружения наличия диагональных линий. С другой стороны, детектор признаков в красной рамке демонстрирует уникальную характеристику. Он предпочитает активировать пиксели, расположенные очень близко к нижней части изображения, и не любит пиксели в определенной строке, расположенной на 21 пиксель выше нижней части. Такое поведение связано с нормализацией данных, где высота цифр не может превышать 20 пикселей. Следовательно, пиксель, активированный в области положительного веса, не может одновременно активироваться в области отрицательного веса, что приводит к изучению этой дальнодействующей закономерности.
Кроме того, еще один детектор признаков, выделенный зеленым прямоугольником, демонстрирует интересное свойство. Он определяет нижнее положение вертикального штриха и может обнаруживать его в нескольких положениях, игнорируя промежуточные положения. Это поведение напоминает наименее значащую цифру в двоичном числе, которая поочередно активна и неактивна по мере увеличения величины числа. Это демонстрирует способность RBM разрабатывать сложные представления пространственных отношений и положений.
Эти примеры иллюстрируют способность RBM изучать и извлекать значимые признаки из входных данных. Регулируя веса в процессе обучения, RBM стремится сделать данные с низкой энергией, сохраняя при этом более высокую энергию для реконструкций. Этот механизм обучения позволяет RBM эффективно моделировать и реконструировать изображения цифр, фиксируя как глобальные, так и локальные особенности цифр в своих изученных представлениях.
Лекция 12.5 — RBM для совместной фильтрации
Лекция 12.5 — RBM для совместной фильтрации [Нейронные сети для машинного обучения]
В этом видео мы обсудим применение ограниченных машин Больцмана (RBM) в совместной фильтрации, особенно в контексте конкурса Netflix. Совместная фильтрация предполагает прогнозирование того, насколько пользователю понравится продукт, исходя из его предпочтений в отношении других продуктов и предпочтений других пользователей. Конкурс Netflix предлагает участникам предсказать, насколько фильм понравится пользователю, основываясь на их оценках других фильмов.
Обучающие данные для этого конкурса состоят из большого набора данных с сотней миллионов оценок восемнадцати тысяч фильмов от полумиллиона пользователей. Чтобы решить проблему отсутствия оценок для большинства фильмов, при использовании RBM используется важный прием. Используя этот трюк, модели могут эффективно обучаться и доказывать свою полезность на практике, о чем свидетельствует победа в конкурсе.
Подход к использованию RBM для совместной фильтрации включает в себя рассмотрение каждого пользователя как учебного примера, где каждый пользователь представлен в виде вектора рейтингов фильмов. Для каждого фильма вместо двоичных единиц используется видимая единица с пятью альтернативными значениями (пятисторонний softmax). Архитектура RBM состоит из видимых блоков, представляющих фильмы, и двоичных скрытых блоков. RBM распределяют веса между пользователями, которые оценили один и тот же фильм, что позволяет распределять веса и сокращать количество параметров. Обучение CD (контрастное расхождение) применяется для обучения RBM, сначала с CD1, а затем с CD3, CD5 и CD9.
Модели RBM работают сравнимо с методами матричной факторизации, обычно используемыми в совместной фильтрации. Однако они дают разные ошибки. Сочетание прогнозов RBM с прогнозами моделей матричной факторизации приводит к значительным улучшениям. Победившая группа в конкурсе Netflix использовала несколько моделей RBM и моделей матричной факторизации в своем ансамбле, чтобы получить более точные прогнозы.
Таким образом, применение машин Больцмана с ограниченным доступом (RBM) в совместной фильтрации для конкурса Netflix включало рассмотрение каждого пользователя как обучающего примера с использованием RBM с видимыми единицами, представляющими фильмы, и бинарными скрытыми единицами. Используя распределение веса между пользователями, которые оценили один и тот же фильм, RBM могут эффективно обрабатывать большой набор данных.
RBM были обучены с использованием обучения CD с итерациями CD1, CD3, CD5 и CD9, и они работали аналогично моделям матричной факторизации, обычно используемым в совместной фильтрации. Однако комбинация моделей RBM и матричной факторизации привела к значительному улучшению прогнозов. Победившая работа в конкурсе Netflix использовала несколько моделей RBM и моделей матричной факторизации в их ансамбле, демонстрируя эффективность этого подхода.
Использование RBM в совместной фильтрации демонстрирует их способность обрабатывать большие и разреженные наборы данных, такие как набор данных Netflix с миллионами оценок. Моделируя отношения между пользователями и фильмами, RBM предоставляет мощный инструмент для создания точных прогнозов и улучшения систем рекомендаций.
Успешное применение RBM в совместной фильтрации демонстрирует их полезность в области машинного обучения и систем рекомендаций, а также подчеркивает потенциал использования ансамблевых подходов для дальнейшего повышения точности прогнозирования.
Лекция 13.1 — Плюсы и минусы обратного распространения
Лекция 13.1 — Взлеты и падения обратного распространения [Нейронные сети для машинного обучения]
В видео обсуждается история обратного распространения, подчеркивая его происхождение в 1970-х и 1980-х годах и почему оно потеряло популярность в 1990-х годах. Это бросает вызов распространенному мнению о том, что обратное распространение не удалось из-за его неспособности обрабатывать несколько слоев нелинейных функций. Вместо этого основными причинами отказа от него были ограниченная вычислительная мощность и небольшие наборы данных, доступные в то время.
Обратное распространение несколько раз независимо изобреталось разными исследователями, в том числе Брайсоном и Хо в конце 1960-х, Полом Уоллесом в 1974 году, Рамой Хартом и Уильямсом в 1981 году, Дэвидом Паркером и Юнгокаром в 1985 году. заставляет исследователей отказываться от него. Однако в 1986 году статья продемонстрировала его потенциал для изучения нескольких слоев нелинейных детекторов признаков.
К концу 1990-х годов большинство исследователей машинного обучения отказались от обратного распространения, отдав предпочтение машинам опорных векторов (SVM). Популярным объяснением было то, что обратное распространение боролось с несколькими скрытыми слоями и повторяющимися сетями. Однако, с исторической точки зрения, реальными причинами его провала были ограниченная вычислительная мощность и небольшие помеченные наборы данных, которые мешали обратному распространению сиять в сложных задачах, таких как зрение и речь.
Различные типы задач машинного обучения имеют разные требования. В статистике низкоразмерные данные с шумом требуют отделения истинной структуры от шума. Байесовские нейронные сети хорошо справляются с этим, в то время как небайесовские нейронные сети, такие как обратное распространение ошибки, не так эффективны. Для таких задач больше подходят машины опорных векторов и гауссовы процессы. В искусственном интеллекте многомерные данные со сложной структурой требуют поиска подходящих представлений, которые может изучить обратное распространение, используя несколько уровней и достаточную вычислительную мощность.
Обсуждаются ограничения машин опорных векторов, отмечая, что они рассматриваются как расширение персептронов с уловкой ядра. Они полагаются на неадаптивные функции и один слой адаптивных весов. Хотя они работают хорошо, они не могут изучить несколько уровней представления. В видео также кратко упоминается исторический документ 1995 года, пари между Ларри Джекелом и Владимиром Вапником относительно теоретического понимания и будущего использования больших нейронных сетей, обученных с помощью обратного распространения ошибки. В конечном итоге обе стороны пари оказались неправы, поскольку ограничения были скорее практическими, чем теоретическими.
Неудача обратного распространения в 1990-х годах может быть связана с ограничениями вычислительной мощности и небольшими наборами данных, а не с присущими ей возможностями. У него все еще был потенциал для решения сложных задач, и в конечном итоге он стал успешным, когда стали доступны более крупные наборы данных и более мощные компьютеры. В видео подчеркивается важность учета различных задач машинного обучения и их конкретных требований при выборе подходящих алгоритмов.
Лекция 13.2 — Сети доверия
Лекция 13.2 — Сети доверия [Нейронные сети для машинного обучения]
Я отказался от обратного распространения в 1990-х из-за его зависимости от большого количества меток, которых в то время было мало. Однако меня вдохновил успех обучения с несколькими явными ярлыками. Чтобы сохранить преимущества обучения градиентному спуску без необходимости использования расширенных меток, я исследовал альтернативные целевые функции. Генеративные модели, которые нацелены на моделирование входных данных, а не на предсказание меток, хорошо согласуются с этим стремлением. Графические модели, концепция, сочетающая дискретные графовые структуры с вычислениями с действительными значениями, стали многообещающим подходом в статистике и искусственном интеллекте. В то время как машины Больцмана были ранними примерами ненаправленных графических моделей, в 1992 году Брэдфорд Нил представил ориентированные графические модели, называемые сигмовидными сетями доверия, в которых использовались те же единицы, что и в машинах Больцмана. Затем проблема заключалась в том, как изучить эти сигмовидные сети убеждений.
Изучение сигмовидных убеждений Nets столкнулось с несколькими проблемами. Глубокие сети с несколькими скрытыми слоями страдали от медленного обучения. Было обнаружено, что этой проблеме способствовала неправильная инициализация веса. Обратное распространение также имело тенденцию застревать в субоптимальных локальных оптимумах, которые, хотя и были достаточно хорошими, были далеки от оптимальных для глубоких сетей. Хотя отступление к более простым моделям, допускающим выпуклую оптимизацию, было возможным, оно не учитывало сложность реальных данных. Чтобы преодолеть эти ограничения, в качестве решения появилось обучение без учителя. Используя неконтролируемое обучение, мы могли использовать эффективность и простоту градиентных методов и стохастического мини-пакетного спуска для корректировки веса. Однако акцент сместился на моделирование структуры сенсорного ввода, а не отношения ввода-вывода. Веса будут скорректированы, чтобы максимизировать вероятность того, что генеративная модель будет производить наблюдаемые сенсорные данные.
Возникли две основные проблемы: проблема вывода и проблема обучения. Проблема вывода заключалась в выводе состояний ненаблюдаемых переменных с целью получения распределений вероятностей по этим переменным при условии, что они не были независимыми друг от друга. Проблема обучения заключалась в настройке взаимодействий между переменными, чтобы повысить вероятность того, что сеть будет генерировать обучающие данные. Это повлекло за собой определение того, какие узлы влияют на другие и силу их воздействия.
Сочетание графических моделей и нейронных сетей имело уникальную динамику. Ранние графические модели полагались на определяемые экспертами структуры графов и условные вероятности, стремясь решить проблему логического вывода. С другой стороны, нейронные сети отдавали приоритет обучению и избегали передачи знаний вручную. Хотя нейронным сетям не хватало интерпретируемости и разреженной связи для легкого вывода, у них было преимущество обучения на обучающих данных. Однако были разработаны нейросетевые версии сетей убеждений. При построении генеративных моделей с использованием идеализированных нейронов возникло два типа: энергетические модели и каузальные модели. В моделях, основанных на энергии, использовались симметричные связи между бинарными стохастическими нейронами, что привело к созданию машин Больцмана. Хотя изучение машин Больцмана оказалось сложной задачей, ограничение возможности подключения упростило обучение для ограниченных машин Больцмана. Однако такой подход ограничивал возможности нейронных сетей с несколькими скрытыми слоями. Причинные модели, в которых использовались ориентированные ациклические графы с бинарными стохастическими нейронами, породили сигмовидные сети доверия. В 1992 году Нил продемонстрировал, что сигмовидные сети доверия немного легче изучить по сравнению с машинами Больцмана. В сигмовидной сети убеждений все переменные представляют собой бинарные стохастические нейроны, а генерация данных включает принятие стохастических решений слой за слоем, что в конечном итоге приводит к созданию несмещенных выборок видимых значений.
Приняв причинно-следственные модели или гибридные подходы, мы смогли преодолеть ограничения обратного распространения и использовать неконтролируемое обучение для эффективного моделирования структуры сенсорного ввода.
Прежде чем углубляться в причинно-следственные сети убеждений, состоящие из нейронов, важно предоставить некоторую информацию о взаимосвязи между искусственным интеллектом (ИИ) и вероятностью. В 1970-х и начале 1980-х внутри сообщества ИИ существовало сильное сопротивление вероятности. Вероятность считалась неблагоприятной, и исследователи ИИ предпочли дискретную обработку символов без включения вероятностных элементов. Однако заметным исключением был Джон фон Нейман, который осознал возможность связи между формальной логикой и термодинамикой, особенно работами Больцмана. К сожалению, идеи фон Неймана не получили распространения при его жизни.
В конце концов, вероятности нашли свое применение в ИИ благодаря разработке графических моделей, сочетающих теорию графов и теорию вероятностей. В 1980-х годах исследователи ИИ работали над практическими проблемами, связанными с неопределенностью, такими как медицинский диагноз или разведка полезных ископаемых. Хотя существовало отвращение к вероятностям, стало ясно, что использование вероятностей более эффективно, чем специальные методы. Графические модели, представленные Перлом Хакерманом Лауритценом и другими, обеспечили основу для представления неопределенности и выполнения вероятностных вычислений на основе графовых структур.
Графические модели охватывают различные типы моделей, и одним из подмножеств являются сети убеждений. Сети доверия представляют собой ориентированные ациклические графы, состоящие из стохастических переменных. Эти графы часто имеют редко связанные узлы и позволяют использовать эффективные алгоритмы вывода, которые вычисляют вероятности ненаблюдаемых узлов. Однако эти алгоритмы становятся экспоненциально сложными при применении к плотно связанным сетям.
Сеть убеждений служит порождающей моделью, и ее задача вывода включает в себя определение состояний ненаблюдаемых переменных, что приводит к распределению вероятностей по этим переменным. Проблема обучения фокусируется на корректировке взаимодействий между переменными, чтобы повысить вероятность получения наблюдаемых обучающих данных.
В контексте нейронных сетей существует связь между графическими моделями и нейронными сетями. Ранние графические модели полагались на определяемые экспертами графовые структуры и условные вероятности, в первую очередь решая проблему логического вывода. С другой стороны, нейронные сети делали упор на обучение на обучающих данных и избегали ручных знаний. Хотя нейронным сетям не хватало интерпретируемости и редкой связности, они предлагали преимущество в адаптивности за счет обучения.
Для построения генеративных моделей с идеализированными нейронами можно рассмотреть два основных типа. Модели на основе энергии, такие как машины Больцмана, симметрично соединяют бинарные стохастические нейроны. Однако изучение машин Больцмана является сложной задачей. Другой вариант — причинно-следственные модели, в которых используются ориентированные ациклические графы, состоящие из бинарных стохастических нейронов. В 1992 году Нил представил сигмовидные сети доверия, которые было легче изучить, чем машины Больцмана. Сигмовидные сети убеждений — это каузальные модели, в которых все переменные являются бинарными стохастическими нейронами.
Чтобы генерировать данные из причинно-следственной модели, такой как сигмовидная сеть убеждений, стохастические решения принимаются слой за слоем, начиная с верхнего слоя и каскадно спускаясь к видимым эффектам. Этот процесс дает несмещенную выборку видимых значений в соответствии с убеждениями нейронной сети.
Принимая обучение без учителя и используя причинно-следственные модели или гибридные подходы, можно преодолеть ограничения обратного распространения и использовать возможности обучения без учителя для эффективного моделирования структуры сенсорного ввода. Эти достижения открывают многообещающие возможности для решения проблем, связанных с глубокими нейронными сетями, и прокладывают путь к более сложным и эффективным алгоритмам обучения.
В заключение, исследование сетей убеждений и их связи с нейронными сетями открыло новые возможности для ИИ и вероятностного моделирования. Первоначальное сопротивление вероятности в ИИ было преодолено, и графические модели стали мощной основой для представления неопределенности и проведения вероятностных вычислений.
Сети убеждений, особенно сигмовидные сети убеждений, предлагают альтернативный подход к генеративному моделированию по сравнению с энергетическими моделями, такими как машины Больцмана. Используя направленные ациклические графы и бинарные стохастические нейроны, сигмовидные сети доверия предоставляют средства для более эффективного генерирования данных и обучения на обучающих наборах.
Интеграция неконтролируемого обучения с причинно-следственными моделями или гибридными подходами может устранить ограничения обратного распространения в глубоких нейронных сетях. Путем моделирования структуры сенсорного ввода и максимизации вероятности наблюдаемых данных эти подходы предлагают способ использовать эффективность и простоту градиентных методов, одновременно фиксируя сложность реальных данных.
Эволюция ИИ и принятие теории вероятности изменили область, позволив исследователям разрабатывать более надежные и адаптируемые модели. По мере того, как путешествие продолжается, вероятно, появятся дальнейшие достижения в вероятностном моделировании, нейронных сетях и обучении без учителя, что приведет к созданию более сложных и интеллектуальных систем ИИ.
Объединяя сильные стороны графических моделей и нейронных сетей, исследователи могут продолжать расширять границы ИИ, открывая новые возможности для понимания, обучения и принятия решений в сложных и неопределенных условиях.
Лекция 13.3 — Изучение сигмовидных сетей доверия
Лекция 13.3 — Обучение сигмовидным сетям доверия [Нейронные сети для машинного обучения]
В видео обсуждаются проблемы изучения сигмовидных сетей убеждений и представлены два разных метода решения этих проблем. В отличие от машин Больцмана, сигмовидные сети убеждений не требуют двух разных фаз для обучения, что упрощает процесс. Это локально нормализованные модели, избавляющие от необходимости иметь дело со статистическими суммами и их производными.
Изучение сигмовидных сетей убеждений становится легким, если мы можем получить несмещенные выборки из апостериорного распределения по скрытым единицам с учетом наблюдаемых данных. Однако получение несмещенных выборок затруднено из-за явления, называемого «объяснением», которое влияет на апостериорное распределение. Это явление возникает из-за антикорреляции между скрытыми причинами при возникновении наблюдаемого эффекта.
Обучение в глубоких сигмовидных сетях убеждений с несколькими слоями скрытых переменных становится еще более сложной задачей. Апостериорное распределение по первому слою скрытых переменных не является факторным из-за отсутствия объяснения, и корреляции между скрытыми переменными существуют как в априорном, так и в апостериорном. Вычисление априорного термина для первого уровня требует интеграции всех возможных паттернов деятельности на более высоких уровнях, что усложняет процесс обучения.
Обсуждаются два метода изучения сетей глубокого убеждения: метод Монте-Карло и вариационные методы. Метод Монте-Карло включает запуск цепи Маркова для аппроксимации апостериорного распределения и получения выборок. Однако это может быть медленным для больших сетей глубокого убеждения. С другой стороны, вариационные методы направлены на получение приблизительных выборок из другого распределения, которое аппроксимирует апостериорное. Хотя эти выборки и не беспристрастны, их все же можно использовать для обучения по методу максимального правдоподобия, а путем повышения нижней границы логарифмической вероятности можно добиться улучшений в моделировании данных.
Обучение в сигмовидных сетях убеждений создает проблемы, особенно в глубоких сетях, но метод Монте-Карло и вариационные методы предлагают подходы для решения этих трудностей и делают обучение возможным.
Лекция 13.4 — Алгоритм бодрствования и сна
Лекция 13.4 — Алгоритм бодрствования и сна [Нейронные сети для машинного обучения]
Алгоритм бодрствования-сна — это метод обучения, используемый для направленных графических моделей, таких как сигмовидные сети доверия. Он состоит из двух фаз: фазы бодрствования и фазы сна. В отличие от машин Больцмана, которые используются для неориентированных графических моделей, алгоритм бодрствования-сна специально разработан для сигмовидных сетей доверия.
Алгоритм является частью вариационного обучения, подхода к машинному обучению, который аппроксимирует апостериорное распределение для изучения сложных графических моделей. Вместо вычисления точного апостериорного распределения, что часто бывает сложно, вариационное обучение аппроксимирует его более дешевым приближением. Затем на основе этого приближения применяется обучение с максимальным правдоподобием.
Удивительно, но процесс обучения по-прежнему работает эффективно благодаря двум факторам: улучшению способности модели генерировать наблюдаемые данные и подгонке приблизительных апостериорных значений к реальным апостериорным. Этот эффект позволяет вариационному обучению хорошо работать для сигмовидных сетей убеждений.
Алгоритм бодрствования-сна использует два набора весов: генеративные веса и веса распознавания. На этапе пробуждения данные передаются в видимый слой, и выполняется прямой проход с использованием весов распознавания. Стохастические бинарные решения принимаются для каждой скрытой единицы независимо, генерируя стохастические бинарные состояния. Эти состояния рассматриваются как выборки из истинного апостериорного распределения, и к генеративным весам применяется обучение по методу максимального правдоподобия.
В фазе сна происходит обратный процесс. Начиная со случайного вектора в верхнем скрытом слое, бинарные состояния генерируются для каждого слоя с использованием генеративных весов. Цель состоит в том, чтобы восстановить скрытые состояния из данных. Веса распознавания обучены для достижения этой цели.
Алгоритм бодрствования-сна имеет недостатки, такие как веса распознавания, не соответствующие правильному градиенту, и неправильное усреднение режима из-за аппроксимации независимости. Несмотря на эти ограничения, некоторые исследователи, такие как Карл Фристон, считают, что это похоже на то, как работает мозг. Однако другие считают, что в будущем будут открыты более совершенные алгоритмы.
Алгоритм бодрствования-сна аппроксимирует апостериорное распределение и чередует фазы бодрствования и сна, чтобы изучить генеративную модель. Несмотря на свои ограничения, он оказал влияние на область машинного обучения.
Лекция 14.1 — Изучение слоев объектов путем наложения RBM
Лекция 14.1 — Изучение слоев функций путем наложения RBM [Нейронные сети для машинного обучения]
В этом видео спикер обсуждает другой подход к изучению сигмовидных сетей убеждений. Они объясняют, что, работая над сигмовидными сетями убеждений, они переключили свое внимание на машины Больцмана и обнаружили, что ограничительные машины Больцмана можно эффективно изучить. Они поняли, что, рассматривая признаки, изученные ограничительной машиной Больцмана, как данные, они могут применить другую ограничительную машину Больцмана для моделирования корреляций между этими признаками. Это привело к идее объединения нескольких машин Больцмана для изучения нескольких слоев нелинейных функций, что вызвало возрождение интереса к глубоким нейронным сетям.
Затем спикер исследует проблему объединения машин Больцмана в одну модель. Хотя можно было бы ожидать многослойную машину Больцмана, студент по имени Йитай обнаружил, что результат больше похож на сигмовидную сеть убеждений. Это неожиданное открытие решило проблему изучения глубоких сигмовидных сетей убеждений, сосредоточившись на изучении ненаправленных моделей, таких как машины Больцмана.
Докладчик описывает процесс обучения слоя функций, которые напрямую получают входные данные от пикселей, и использования шаблонов активации этих функций для изучения другого слоя функций. Этот процесс можно повторить, чтобы изучить несколько уровней, при этом каждый уровень моделирует коррелированную деятельность на уровне ниже. Доказано, что добавление еще одного слоя признаков улучшает вариационную нижнюю границу логарифмической вероятности генерации данных.
Чтобы объединить машины Больцмана в одну модель, спикер объясняет процедуру изучения каждой машины по отдельности, а затем составления их вместе. Полученная комбинированная модель называется глубокой сетью убеждений, которая состоит из верхних слоев, напоминающих ограничительную машину Больцмана, и нижних слоев, напоминающих сигмовидную сеть убеждений. Докладчик также обсуждает преимущества суммирования машин Больцмана и объясняет концепцию усреднения факторных распределений. Они демонстрируют, как усреднение двух факторных распределений не приводит к факторному распределению. В видео также подробно рассматривается процесс обучения объединению машин Больцмана и точной настройке составной модели с использованием варианта алгоритма бодрствования и сна. Три этапа обучения включают корректировку генеративных весов и весов распознавания, выборку скрытых и видимых единиц и обновление весов с использованием контрастного расхождения.
Представлен пример, в котором 500 двоичных скрытых единиц используются для изучения всех десятизначных классов в изображениях размером 28x28 пикселей. После обучения RBM изученные признаки используются для задач распознавания и генерации.
В видео рассказывается о неожиданном открытии использования сложенных машин Больцмана для изучения глубоких сетей убеждений, а также рассказывается о процессах обучения и тонкой настройки.
Лекция 14.2 — Различающее обучение для DBN
Лекция 14.2 — Различающее обучение для DBN [Нейронные сети для машинного обучения]
В этом видео мы исследуем процесс изучения сети глубоких убеждений. Мы начинаем с объединения ограничительных машин Больцмана для формирования начальных слоев, которые затем рассматриваются как глубокая нейронная сеть. Мы настраиваем эту сеть, используя дискриминационные методы вместо генеративных, чтобы улучшить ее способность различать классы. Этот подход оказал значительное влияние на распознавание речи, что побудило многие ведущие группы использовать глубокие нейронные сети для снижения количества ошибок в этой области.
Чтобы настроить глубокую сеть, мы следуем фазе предварительного обучения, на которой мы изучаем один слой функций за раз, используя сложенные ограничительные машины Больцмана. Этот этап предварительной подготовки обеспечивает хороший начальный набор весов для глубокой нейронной сети. Затем мы используем обратное распространение, процедуру локального поиска, для дальнейшего уточнения и оптимизации сети для дискриминации. Эта комбинация предварительного обучения и точной настройки преодолевает ограничения традиционного обратного распространения, упрощая изучение глубоких нейронных сетей и улучшая их возможности обобщения.
Предварительное обучение предлагает преимущества с точки зрения оптимизации и обобщения. Он хорошо масштабируется для больших сетей, особенно когда каждый уровень демонстрирует локальность. Процесс обучения становится более распараллеленным, так как меньше взаимодействия между удаленными друг от друга местами. Кроме того, предварительное обучение позволяет нам начать обратное распространение с помощью детекторов разумных признаков, что приводит к более значимым начальным градиентам по сравнению со случайными весами. Кроме того, предварительно обученные сети демонстрируют меньше переобучения, потому что большая часть информации в окончательных весах поступает из моделирования входного распределения, которое обычно содержит больше информации, чем сами метки.
Использование предварительного обучения также устраняет возражение, что оно может привести к изучению нерелевантных функций для рассматриваемой задачи различения. Хотя мы действительно можем изучить функции, которые никогда не используются, вычислительная мощность современных компьютеров позволяет нам позволить себе такую неэффективность. Среди изученных функций всегда будут очень полезные, превосходящие необработанные входные данные и компенсирующие неиспользуемые функции. Кроме того, предварительное обучение снижает нагрузку на обратное распространение для обнаружения новых функций, уменьшая потребность в больших объемах размеченных данных. Немаркированные данные остаются ценными для обнаружения хороших функций на этапе предварительного обучения.
Чтобы проиллюстрировать эффективность предварительного обучения и тонкой настройки, в видео обсуждается моделирование набора данных MNIST. Три скрытых уровня функций изучаются полностью без присмотра, создавая реалистично выглядящие цифры из разных классов. Чтобы оценить полезность этих функций для дискриминации, был добавлен последний слой softmax с десятью путями, а для точной настройки использовалось обратное распространение. Результаты показывают улучшенную производительность по сравнению с чисто дискриминационным обучением, особенно в задачах, инвариантных к перестановкам, где стандартное обратное распространение изо всех сил пытается достичь низкого уровня ошибок.
Различные эксперименты демонстрируют преимущества предварительной подготовки. При использовании стека машин Больцмана для предварительного обучения и тонкой настройки частота ошибок в задаче MNIST, инвариантной к перестановкам, может быть снижена до 1,0%. Добавив слой softmax с 10 путями непосредственно поверх предварительно обученных машин Больцмана, можно дополнительно повысить частоту ошибок до 1,15% с некоторыми корректировками. Работа Micro Yerin вместе с группой Yan Lecun показывает, что предварительное обучение особенно эффективно при наличии большего количества данных и более качественных априорных данных. Их эксперименты с использованием дополнительных искаженных изображений цифр и сверточной нейронной сети позволили снизить уровень ошибок до 0,39%, установив новые рекорды в распознавании речи.
Этот прогресс в предварительном обучении и тонкой настройке глубоких нейронных сетей оказал значительное влияние на распознавание речи, что привело к улучшениям в этой области. Многие исследователи и группы, в том числе Microsoft Research, использовали глубокие нейронные сети для задач распознавания речи, ссылаясь на успех и достижения, которые стали возможными благодаря этому подходу.
Успех предварительной подготовки и точной настройки глубоких нейронных сетей вызвал новый интерес к нейронным сетям для различных приложений, помимо распознавания речи. Исследователи начали изучать потенциал глубоких нейронных сетей в компьютерном зрении, обработке естественного языка и других областях. Сочетание предварительного обучения и точной настройки оказалось мощным методом изучения иерархических представлений и повышения производительности нейронных сетей.
Одна из причин эффективности предварительного обучения заключается в том, что оно помогает преодолеть ограничения традиционного обратного распространения, особенно при работе с глубокими сетями. Глубокие сети со многими слоями могут страдать от проблемы исчезающего градиента, когда градиенты уменьшаются по мере их распространения по слоям, что затрудняет эффективное обучение сети. Предварительно обучая сеть слой за слоем и инициализируя веса на основе изученных функций, мы обеспечиваем хорошую отправную точку для обратного распространения, что приводит к более эффективной оптимизации.
Еще одним преимуществом предварительной подготовки является то, что она помогает зафиксировать значимые и иерархические представления входных данных. Слои сети изучают все более сложные и абстрактные функции по мере того, как мы углубляемся в сеть. Это иерархическое представление позволяет сети извлекать признаки высокого уровня, полезные для распознавания. Предварительно обучая сеть моделировать распределение входных векторов, мы гарантируем, что изученные функции фиксируют важные закономерности и вариации данных, что помогает улучшить производительность сети при обобщении.
Сочетание генеративного предварительного обучения и различительной тонкой настройки стало популярной парадигмой глубокого обучения. Он использует преимущества неконтролируемого обучения для изучения полезных начальных функций, а затем настраивает эти функции, используя помеченные данные для конкретной задачи различения. Этот подход оказался успешным в различных приложениях и привел к прорыву в производительности.
Поскольку область глубокого обучения продолжает развиваться, исследователи постоянно изучают новые методы и архитектуры для улучшения обучения и производительности глубоких нейронных сетей. Успех предварительного обучения и тонкой настройки проложил путь для достижений в других областях, таких как трансферное обучение, когда предварительно обученные модели используются в качестве отправной точки для новых задач, и обучение с самоконтролем, когда модели учатся у немаркированные данные путем предсказания определенных аспектов данных.
В заключение можно сказать, что сочетание предварительной подготовки и тонкой настройки произвело революцию в области глубокого обучения. Используя неконтролируемое обучение для изучения начальных функций, а затем уточняя эти функции с помощью обучения с учителем, глубокие нейронные сети могут повысить производительность и возможности обобщения. Этот подход оказал значительное влияние на различные приложения, включая распознавание речи, компьютерное зрение и обработку естественного языка, и продолжает способствовать развитию в области глубокого обучения.
Лекция 14.3 — Дискриминационная тонкая настройка
Лекция 14.3 — Дискриминационная тонкая настройка [Нейронные сети для машинного обучения]
В этом видео мы углубимся в процесс дискриминационной тонкой настройки после предварительного обучения нейронной сети с использованием стека машин Больцмана. Мы наблюдаем, что во время тонкой настройки веса в нижних слоях претерпевают минимальные изменения, однако эти небольшие корректировки оказывают значительное влияние на эффективность классификации сети, точно определяя границы решений.
Предварительное обучение также повышает эффективность более глубоких сетей по сравнению с более мелкими. Без предварительного обучения более мелкие сети, как правило, превосходят более глубокие. Однако предварительное обучение меняет эту тенденцию: глубокие сети работают лучше, а мелкие сети без предварительного обучения хуже.
Кроме того, мы предоставляем убедительный аргумент в пользу того, чтобы начать с генеративного обучения, прежде чем рассматривать дискриминационное обучение. Сравнивая выходные данные сетей в наборе тестовых случаев и визуализируя их с помощью t-SNE, мы наблюдаем два различных класса: сети без предварительного обучения вверху и сети с предварительным обучением внизу. Сети внутри каждого класса имеют сходство, но между двумя классами нет пересечения.
Предварительное обучение позволяет сетям обнаруживать качественно иные решения по сравнению с запуском с небольшими случайными весами. Решения, найденные с помощью генеративного предварительного обучения, приводят к различным областям в функциональном пространстве, в то время как сети без предварительного обучения демонстрируют большую изменчивость.
Наконец, мы обсудим, почему предварительная подготовка оправдана. При создании пар изображение-метка более вероятно, что метка зависит от объектов реального мира, а не только от пикселей изображения. Информация, передаваемая изображением, превосходит информацию этикетки, поскольку этикетка содержит ограниченную информацию. В таких случаях имеет смысл сначала инвертировать широкополосный путь от мира к изображению, чтобы восстановить основные причины, а затем определить соответствующую метку. Это оправдывает фазу предварительного обучения, на которой изучается сопоставление изображения с причинами, за которой следует фаза различения для сопоставления причин с меткой с потенциальной точной настройкой сопоставления изображения с причинами.
Чтобы проиллюстрировать преимущества предварительной тренировки, мы рассмотрим конкретный эксперимент, проведенный в лаборатории Йоши Банджо. Эксперимент направлен на тонкую настройку после генеративного предварительного обучения. Перед тонкой настройкой рецептивные поля в первом скрытом слое детекторов признаков демонстрируют минимальные изменения. Однако эти тонкие изменения в значительной степени способствуют улучшению распознавания.
Эксперимент включает в себя различение цифр в большом наборе искаженных цифр. Результаты показывают, что сети с предварительным обучением неизменно демонстрируют меньшие ошибки тестирования по сравнению с сетями без предварительного обучения, даже при использовании сетей с одним скрытым слоем. Преимущество предварительной подготовки становится более заметным при использовании более глубоких сетей. Глубокие сети с предварительным обучением практически не перекрываются с мелкими сетями, что еще больше подчеркивает эффективность предварительного обучения в повышении производительности сети.
Кроме того, мы исследуем влияние количества слоев на ошибку классификации. Без предобучения два слоя кажутся оптимальным выбором, так как дальнейшее увеличение количества слоев приводит к значительному ухудшению производительности. Напротив, предварительное обучение смягчает эту проблему, поскольку сети с четырьмя слоями превосходят сети с двумя слоями. Разброс ошибок уменьшается, а общая производительность улучшается.
Для визуального представления изменений веса сети во время обучения используются визуализации t-SNE. Веса как предварительно обученных, так и необученных сетей отображаются в одном и том же пространстве. Полученные графики показывают два различных класса: сети без предварительного обучения вверху и сети с предварительным обучением внизу. Каждая точка представляет собой модель в функциональном пространстве, а траектории показывают прогресс подобия во время обучения. Сети без предварительного обучения оказываются в разных областях функционального пространства, что указывает на более широкий разброс решений. С другой стороны, сети с предварительным обучением сходятся в определенной области, что указывает на большее сходство между ними.
Сравнение только векторов весов недостаточно, потому что сети с разными конфигурациями весов могут демонстрировать одинаковое поведение. Вместо этого выходные данные сетей в тестовых примерах объединяются в векторы, и для визуализации их сходства применяется t-SNE. Цвета на графиках t-SNE представляют разные этапы обучения, дополнительно иллюстрируя прогресс сходства.
Предварительное обучение нейронных сетей с использованием генеративного обучения перед дискриминационным обучением дает несколько преимуществ. Он повышает производительность классификации за счет точного определения границ решений, повышает эффективность более глубоких сетей и предоставляет четкие решения в функциональном пространстве. Рассматривая путь с высокой пропускной способностью от мира к изображению и путь с низкой пропускной способностью от мира к метке, предварительное обучение позволяет восстановить основные причины до определения метки. Этот двухэтапный подход оправдывает использование предварительного обучения в обучении нейронной сети.