Машинное обучение и нейронные сети - страница 36

 

Как обучали ChatGPT



Как обучали ChatGPT

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

  • 00:00:00 ChatGPT — это система машинного обучения, предназначенная для имитации человеческого разговора. Он обучается с использованием генеративного подхода к предварительному обучению, основанного на огромном количестве неструктурированных текстовых данных.

  • 00:05:00 ChatGPT — это чат-бот, обученный отвечать на запросы пользователей по-человечески. Он делает это, сначала настраивая модель на созданном вручную примере, иллюстрирующем желаемое поведение, а затем используя обучение с подкреплением, чтобы настроить модель в соответствии с предпочтениями пользователя.

  • 00:10:00 ChatGPT — это чат-бот, который обучается с помощью ранжирования K выходов для заданного ввода. Модель вознаграждения будет назначать скалярную оценку каждому члену пары, представляющую логиты или ненормализованные логарифмические вероятности. Чем выше балл, тем выше вероятность того, что модель, выбранная для этого ответа, будет предпочтительной. Стандартная перекрестная энтропия используется для потери, рассматривая модель вознаграждения как двоичный классификатор. После обучения скалярные оценки можно использовать в качестве вознаграждения. Это обеспечит более интерактивное обучение, чем полностью контролируемая настройка. На этапе обучения с подкреплением наша модель политики, которая представляет собой чат-бот, будет точно настроена по сравнению с окончательной контролируемой моделью. Он испускает действия своих последовательностей токенов при ответе человеку в разговорной среде. Учитывая конкретное состояние, которое представляет собой историю разговоров и соответствующее действие, модель вознаграждения возвращает числовое вознаграждение. Разработчики решили использовать проксимальную оптимизацию политик или PPO в качестве алгоритма обучения с подкреплением. Мы не будем вдаваться в детали PPO в этом видео, но это популярный выбор в разных областях. Теперь модель обучения, которую мы оптимизируем, является достойным приближением к истинной цели, которая нас волнует. Тем не менее, это всего лишь приблизительная цель.
How ChatGPT is Trained
How ChatGPT is Trained
  • 2023.01.24
  • www.youtube.com
This short tutorial explains the training objectives used to develop ChatGPT, the new chatbot language model from OpenAI.Timestamps:0:00 - Non-intro0:24 - Tr...
 

Реальный потенциал генеративного ИИ



Реальный потенциал генеративного ИИ

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

  • 00:00:00 В видео обсуждаются потенциальные преимущества и проблемы использования больших языковых моделей, а затем объясняется, как Human Loop может помочь вам создавать дифференцированные приложения на основе этих моделей.

  • 00:05:00 В видео обсуждается, как генеративный ИИ может помочь разработчикам в создании прототипов, оценке и настройке их приложений. В нем отмечается, что работа разработчика, вероятно, изменится в будущем, поскольку технология искусственного интеллекта помогает расширить их рабочий процесс.

  • 00:10:00 В видео обсуждается потенциал генеративного ИИ и обсуждаются некоторые препятствия на пути его широкого распространения. В нем отмечается, что, хотя технология имеет большой потенциал, она все еще находится на ранних стадиях, и необходимы дополнительные исследования, чтобы обеспечить ее этичное и безопасное использование.

  • 00:15:00 Потенциал генеративного ИИ огромен, и в ближайшем будущем у него будет множество потенциальных применений. Стартапы должны быть готовы к кембрийскому взрыву новых приложений, некоторые из которых трудно предсказать.

  • 00:20:00 В этом видео обсуждается потенциал генеративного ИИ и то, как его можно использовать для создания новых и инновационных продуктов.
The REAL potential of generative AI
The REAL potential of generative AI
  • 2023.02.28
  • www.youtube.com
What is a large language model? How can it be used to enhance your business? In this conversation, Ali Rowghani, Managing Director of YC Continuity, talks wi...
 

Vrije Universiteit Amsterdam Machine Learning 2019 — 1 Введение в машинное обучение (MLVU2019)



Vrije Universiteit Amsterdam Machine Learning 2019 — 1 Введение в машинное обучение (MLVU2019)

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

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

  • 00:00:00 В этом разделе спикер рассказывает о том, как подготовиться к курсу машинного обучения. Они предлагают студентам внимательно прочитать основные материалы курса и сосредоточиться на том, что необходимо. Кроме того, студенты могут пройти тест, чтобы проверить свое понимание и запомнить то, что говорит им преподаватель. Студентам будет дано домашнее задание и разрешено использовать распечатанный лист с формулами, чтобы делать заметки в оставшейся части ручкой.

  • 00:05:00 В этом разделе спикер обращается к опасениям по поводу того, что машинное обучение может быть пугающим и пугающим, особенно для тех, у кого нет опыта работы в области компьютерных наук. Он объясняет, что цель проекта — помочь людям привыкнуть к машинному обучению, предоставляя наборы данных и ресурсы для изучения и экспериментов. Спикер подчеркивает важность сотрудничества и призывает использовать предоставленные рабочие листы и компьютерные инструменты для облегчения обучения.

  • 00:10:00 В этом разделе спикер обсуждает важность групповой динамики и коммуникативных навыков в сфере машинного обучения. Он подчеркивает, что способность эффективно работать и общаться в группах так же важна, как и навыки технического письма. Спикер также призывает участников регистрироваться на групповые занятия и общаться с другими участниками программы, чтобы наладить эффективные рабочие отношения. Он советует участникам использовать доступные ресурсы, такие как дискуссионные онлайн-форумы, для связи с другими участниками программы и создания продуктивных отношений сотрудничества.

  • 00:15:00 В этом разделе спикер знакомит с различными типами машинного обучения, начиная с контролируемого машинного обучения. Они объясняют, что рассмотрят два типа машинного обучения с учителем — классификацию и регрессию — с обсуждением регрессии после перерыва. Спикер также упоминает, что они кратко обсудят неконтролируемое машинное обучение и объяснят, почему машинное обучение отличается от обычного машинного обучения.

  • 00:20:00 В этом разделе спикер проводит различие между традиционным программированием на основе правил, которое по существу следует набору заранее определенных инструкций, и машинным обучением, которое представляет собой процесс использования больших наборов данных для построения прогностических моделей, которые можно использовать. принимать решения на основе новых данных. Машинное обучение полезно в ситуациях, когда принятие решений должно быть быстрым, надежным и неподкупным. Однако важно помнить, что модели машинного обучения не идеальны и могут неожиданно дать сбой, поэтому для принятия окончательных решений по-прежнему необходим человеческий вклад. Поддержка принятия клинических решений — один из примеров того, как машинное обучение может использоваться для предоставления врачам дополнительной информации, помогающей им в принятии решений.

  • 00:25:00 В этом разделе спикер объясняет концепцию онлайн-обучения или добавочного обучения в машинном обучении. Они заявляют, что онлайн-обучение может быть эффективным в ситуациях, когда существует постоянный поток данных, а модель должна постоянно обновлять и прогнозировать новую информацию, что является сложной задачей. Поэтому они рекомендуют сосредоточиться на применении онлайн-обучения путем разделения и воспроизведения базовых данных, чтобы модель могла легче делать прогнозы. Кроме того, спикер обсуждает, как ученые в 1950-х и 60-х годах использовали простые искусственные мозги, называемые персептронами, для изучения того, как мозг обучается, используя такие примеры, как обучение персептрона распознаванию различий между мужчинами и женщинами.

  • 00:30:00 В этом разделе видео спикер обсуждает основы машинного обучения и знакомит с концепцией обучения с учителем, когда машина обучается классифицировать данные по определенным категориям на основе входных признаков. Приводится пример классификации электронных писем как спама или не спама путем измерения таких характеристик, как частота встречаемости определенных слов. Цель состоит в том, чтобы передать эти данные алгоритму обучения, который создает модель, которая затем может точно предсказать класс новых, невидимых примеров. Существует множество различных алгоритмов классификации, которые можно использовать для решения этого типа задач.

  • 00:35:00 В этом разделе спикер приводит два примера того, как машинное обучение можно использовать для задач классификации. Первый пример включает в себя распознавание многозначных чисел в контрактах Аризоны с использованием классификации изображений. Они используют изображения цифр размером 28x28 пикселей в качестве функций, и цель состоит в том, чтобы предсказать, какая цифра находится на изображении. Второй пример включает в себя использование машинного обучения для обучения вождению автомобиля, когда они собирают данные с помощью датчиков в рулевом колесе, разбивают их на кадры и используют функции 960 для классификации направления автомобиля.

  • 00:40:00 В этом разделе спикер обсуждает, как построить алгоритм для решения задачи регрессии. В приведенном примере прогнозируется продолжительность поездки на автобусе на основе количества пассажиров. Спикер также упоминает, что есть страница с полным расписанием курса, что важно из-за смены времени между группами и случайных визуалов, которые могут меняться. Наконец, спикер рассказывает об использовании двух функций для прогнозирования роста человека, что является примером задачи обучения с учителем.

  • 00:45:00 В этом разделе спикер представляет концепцию представления данных в пространстве признаков с помощью оси, которая позволяет визуально представлять элементы и их интерфейсы. Нарисовав линию в этом пространстве, можно создать классификатор, который делит пространство на две области, где одна область представляет все, что находится над линией, а другая область представляет все, что находится под ней. Логистическая соска — лучший выбор при использовании линий, и каждая линия может быть описана тремя числами, которые определяют свойство на плоскости трехмерного пространства. Функция потерь, которая является коммутируемой функцией, позволяет вычислить количество примеров, в которых модель ошибается, а более низкое значение означает лучшее соответствие модели.

  • 00:50:00 В этом разделе спикер приводит примеры пространств и то, как их можно использовать для создания моделей. Он объясняет концепцию деревьев решений и то, как их можно усложнить в большом пространстве. Он также демонстрирует, как можно сделать процесс классификации простым и эффективным, используя несколько вариантов спецификации и диверсификации. Наконец, выступающий затрагивает классификацию с несколькими классами и несколькими метками и то, как они могут быть полезны в случаях, когда объекты не являются взаимоисключающими.

  • 00:55:00 В этом разделе спикер объясняет, как определить правильную оценку вероятности класса и выходное пространство, создав функции на основе важных данных. Для оценки тета линии и функции потери мышечной массы используется метод остатков, который измеряет расстояние между прогнозируемым значением модели и фактическим выходным значением. Используя регрессию для построения невязки и вычисления суммы квадратов невязок, можно повысить точность прогнозирования, поскольку она тянет линию к данным на основе правильного квадрата расстояния.
  • 01:00:00 В этом разделе спикер обсуждает важность использования конкретных алгоритмов, таких как множественная линейная регрессия, для анализа данных и создания моделей. Он объясняет, что эти модели не всегда точны из-за переобучения, поэтому данные следует разбивать на разные фрагменты и анализировать соответствующим образом. Спикер также подчеркивает, что обобщение является наиболее важным аспектом при создании алгоритмов машинного обучения, чтобы гарантировать, что модель способна точно предсказывать результаты с новыми данными.

  • 01:05:00 В этом разделе видео обсуждается машинное обучение и то, как оно включает обучение на основе большого объема данных. Модели машинного обучения строятся путем помещения данных в набор функций и меток с целью поиска закономерностей и создания модели, которая может точно предсказать метку на основе функций. Такие методы, как кластеризация k-средних, можно использовать для группировки точек данных со схожими функциями, что может помочь в построении более точных моделей. Кроме того, важно понимать, что поиск оптимальной модели требует множества проб и ошибок, и нет простого способа заранее узнать, что будет работать лучше всего.

  • 01:10:00 В этом разделе докладчик представляет концепцию оценки плотности и то, как она помогает определить распределение вероятностей данных. Оценка плотности выполняется путем предположения об интересующем распределении и захвата его на основе выборочных данных. Модель предсказывает плотность вероятности для каждой точки в функциях и присваивает число, представляющее вероятность различных скоростей. Однако для сложных данных, таких как изображения людей, оценка плотности становится затруднительной из-за особенностей большого размера, и необходим альтернативный подход для получения другой аналогичной выборки.

  • 01:15:00 В этом разделе спикер упоминает, что помимо машинного обучения существуют и другие области, которые могут сбить людей с толку, заставив их думать, что они связаны с машинами, например городское планирование или планирование ванн. Однако эти области не обязательно требуют больших затрат или времени. Спикер также намекает на стратегию, которая будет более подробно обсуждаться на следующей неделе и которая включает в себя разбиение больших наборов данных на более мелкие группы для того, чтобы делать точные прогнозы. Эта стратегия часто используется в таких областях, как распознавание голоса или символов.

  • 01:20:00 В этом разделе спикер обсуждает различные способы мышления о машинном обучении и существующие методы и модели, которые можно использовать для этого. Он также затрагивает вопрос о том, как глубокое обучение способствовало увеличению числа людей, работающих над машинным обучением. Кроме того, он дает советы новичкам, которые хотят начать работу с машинным обучением, и упоминает о наличии ресурсов, которые помогут им в обучении.
1 Introduction to Machine Learning (MLVU2019)
1 Introduction to Machine Learning (MLVU2019)
  • 2019.02.06
  • www.youtube.com
slides: https://mlvu.github.io/lectures/11.Introduction.annotated.pdfcourse materials: https://mlvu.github.ioThe first lecture in the 2019 Machine learning c...
 

2 Линейные модели 1: гиперплоскости, случайный поиск, градиентный спуск (MLVU2019)



2 Линейные модели 1: гиперплоскости, случайный поиск, градиентный спуск (MLVU2019)

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

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

  • 00:00:00 В этом разделе спикер объясняет основной рецепт машинного обучения, который включает в себя абстрагирование проблемы, выбор экземпляров и признаков, выбор класса модели и поиск хорошей модели. Затем они представляют линейные модели в качестве выбранного класса моделей и обсуждают, как их записать на математическом языке. Они говорят о методах поиска, включая градиентный спуск, и подчеркивают, что эти методы не являются специфическими для линейных моделей и будут использоваться в других контекстах. Также введена нотация для описания наборов данных с использованием надстрочных индексов для сопоставления экземпляров и соответствующих значений. Наконец, на протяжении всей лекции в качестве рабочего примера используется простой набор данных регрессии.

  • 00:05:00 В этом разделе спикер обсуждает линейные модели и то, как их можно использовать для отображения одного пространства в другое пространство. В линейной модели для этого используется функция, описывающая линию. Линейная функция имеет два параметра, W и B, которые представляют наклон и смещение соответственно. Спикер объясняет, что количество признаков в наборе данных может быть произвольным, и модель должна работать с любым количеством признаков. Для нескольких объектов каждый экземпляр представляется в виде вектора с использованием жирного шрифта, и каждый из этих векторов соответствует одному значению.

  • 00:10:00 В этом разделе спикер объясняет, как расширить линейную модель с плоскости на гиперплоскость, присвоив вес каждой функции и сохранив единственное значение B. Эта функция может быть выражена как скалярное произведение W и X плюс B, что является простой операцией над двумя векторами одинаковой длины. Скалярное произведение также может быть выражено как длина двух векторов в пространстве, умноженная на косинус угла между ними. Спикер также упоминает интересный принцип: добавляя в модель простые функции, она может стать более мощной. Наконец, чтобы найти хорошую модель, используется функция потерь и способ поиска в пространстве всех моделей значения, которое минимизирует эту функцию потерь.

  • 00:15:00 В этом разделе докладчик обсуждает функцию потери среднеквадратичной ошибки, используемую в линейной регрессии. Функция измеряет расстояние между предсказанием модели и фактическим значением, возводит это расстояние в квадрат и суммирует все остатки для определения потерь. Чем ниже значение, тем лучше модель. Докладчик объясняет, почему функция возводит значения в квадрат, а не использует абсолютные значения, чтобы положительные и отрицательные значения не сокращались. Квадрат также накладывает дополнительный штраф на выбросы, делая их более весомыми в функции потерь. В этом разделе также кратко обсуждаются пространства моделей и признаков, а также то, как поиск значений с низкими потерями в ландшафте потерь приводит к подгонке модели к данным.

  • 00:20:00 простая модель, случайный поиск можно использовать для нахождения оптимальных значений параметров, начиная со случайной точки и используя цикл для выбора другой точки, которая очень близка к ней, вычисляя потери для обеих точек, и если Потеря для новой точки лучше, переход на новую точку. Процесс продолжается до тех пор, пока не будут достигнуты оптимальные значения параметров. Это похоже на то, как путешественник перемещается во время метели, делая небольшие шаги в каждом направлении, чтобы определить, где горный склон поднимается больше всего, и делая шаги в этом направлении, пока не достигнет долины. Однако в условиях машинного обучения, где пространство многомерно, увидеть всю картину сразу невозможно, поэтому процесс аналогичен походу в метель, где маленькие шаги совершаются на фиксированном расстоянии в произвольном направлении до достижения оптимальных значений.

  • 00:25:00 В этом разделе видео обсуждается концепция выпуклости в машинном обучении и ее влияние на использование случайного поиска в качестве метода поиска модели. Выпуклая поверхность потерь или поверхность, имеющая форму чаши при математическом отображении, имеет только один минимум, что позволяет найти глобальный минимум. Однако, когда поверхность потерь не является выпуклой и имеет несколько локальных минимумов, случайный поиск может застрять и сойтись на локальном минимуме. Чтобы решить эту проблему, вводится имитация отжига в качестве метода поиска, который учитывает вероятность движения в гору, позволяя потенциалу избежать локальных минимумов и найти глобальный минимум.

  • 00:30:00 В этом разделе видео обсуждается использование методов оптимизации черного ящика, таких как случайный поиск и имитация отжига, для оптимизации непрерывного или дискретного модельного пространства путем рассмотрения функции потерь как черного ящика, который не требует никаких знание внутреннего устройства модели. Отмечается, что эти методы также можно распараллелить для одновременного выполнения нескольких поисков, чтобы увеличить шансы найти глобальный оптимум. Кроме того, в видео упоминается, что эти методы оптимизации часто вдохновлены природными явлениями, такими как эволюционные алгоритмы, частицы и колонии.

  • 00:35:00 В этом разделе спикер представляет базовый алгоритм эволюционного метода поиска, вдохновленного эволюцией. Этот метод начинается с популяции моделей, вычисляет их потери, ранжирует их, убивает половину популяции и размножает другую половину, чтобы создать новую популяцию. Новые модели выбираются на основе свойств старых, и некоторые вариации добавляются в популяцию с помощью мутаций. Спикер также объясняет метод ветвящегося поиска, вариант случайного поиска, при котором вместо выбора одного случайного направления выбираются K случайных направлений, и выбирается направление с наименьшими потерями. В заключение докладчик отмечает гибкость и мощь эволюционных методов, но предупреждает об их высокой вычислительной стоимости и требованиях к настройке параметров.

  • 00:40:00 В этом разделе докладчики обсуждают различные методы поиска оптимальной модели для данной задачи. По мере увеличения количества моделей они тратят больше времени на изучение локальной кривизны, что приводит к более прямой линии к оптимуму. Вместо того, чтобы делать случайный шаг, они могут потратить больше времени на изучение местности и определение оптимального направления перед движением. Затем авторы вводят градиентный спуск, который включает в себя просмотр функции потерь и вычисление направления, в котором функция уменьшается быстрее всего, с помощью исчисления. Этот метод требует, чтобы функция была дифференцируемой, гладкой и непрерывной, и больше не является моделью черного ящика.

  • 00:45:00 В этом разделе спикер обсуждает наклоны и касательные линии в связи с функцией потерь. Поверхность потерь не является линейной функцией, но наклон касательной, представляющей производную функции потерь, может указать направление и скорость, с которой функция уменьшается. В более высоких измерениях эквивалентом касательной линии является касательная гиперплоскость, которая также может указать нам направление, в котором поверхность потерь уменьшается быстрее всего. Лекция также затрагивает интерпретацию векторов как точки в пространстве или направления, что полезно при работе с линейными функциями, такими как гиперплоскости.

  • 00:50:00 В этом разделе спикер обсуждает, как обобщить производную для нескольких измерений и как найти направление наискорейшего спуска для гиперплоскости. Эквивалентом взятия производной в нескольких измерениях является вычисление градиента, который представляет собой вектор, состоящий из производной в частных производных по X, Y и Z. Эти три значения вместе определяют три параметра для плоскости, а три значения вместе определяют гиперплоскость. Направление W наискорейшего спуска можно найти, максимизируя норму W, умноженную на косинус a, который максимизируется, когда расстояние между X и W равно углу между X и W или когда X и W одинаковы. Таким образом, направление наискорейшего спуска — W.

  • 00:55:00 В этом разделе спикер объясняет простой алгоритм поиска минимума функции потерь, называемый градиентным спуском. Алгоритм начинается со случайной точки в пространстве модели, вычисляет градиент потерь в этой точке, умножает его на небольшое значение, называемое анта, а затем вычитает его из модели. Нет никакой случайности, только чисто детерминированные шаги. Градиент дает как направление, так и размер шага. Затем спикер переходит к вычислению градиента для ландшафта потерь с использованием исчисления, объясняя правила сумм и цепочек, и в итоге получает двумерный вектор производной функции потерь по отношению к W и B.
  • 01:00:00 В этом разделе спикер обсуждает реализацию градиентного спуска в Python и то, как он позволяет сделать шаг в направлении вектора, следуя кривизне поверхности, чтобы найти минимум и остаться там. Чтобы продемонстрировать это, они представляют веб-сайт под названием Playground.tensorflow.org, который позволяет пользователям экспериментировать с простой линейной моделью с использованием градиентного спуска. Однако спикер также отмечает, что градиентный спуск имеет некоторые ограничения, такие как необходимость выбирать скорость обучения и вероятность застревания в локальном минимуме.

  • 01:05:00 В этом разделе видео более подробно обсуждается градиентный спуск и его применение к линейным моделям. При градиентном спуске алгоритм обновляет параметры, делая шаги в направлении отрицательного градиента функции потерь, и этот процесс повторяется до тех пор, пока не достигнет минимума. Скорость обучения определяет, насколько велик каждый шаг, и очень важно найти скорость обучения, которая не слишком велика и не слишком мала, поскольку она влияет на то, насколько быстро алгоритм сходится к минимуму. Линейные функции позволяют разработать оптимальную модель без поиска. Однако более сложные модели требуют использования градиентного спуска. Градиентный спуск быстрый, требует мало памяти и точен, но не избегает локальных минимумов и работает только в непрерывных модельных пространствах с гладкими функциями потерь. Наконец, видео знакомит с классификацией и границами решений, где цель состоит в том, чтобы отделить синие точки от красных точек, найдя линию, которая делает это оптимально в пространстве признаков.

  • 01:10:00 В этом разделе спикер обсуждает процесс поиска классификатора для простого набора данных классификации, состоящего из шести экземпляров. Для этого они ищут функцию потерь, которую можно использовать для оценки потенциальных линейных моделей или плоскостей в наборе данных, с целью минимизировать количество неправильно классифицированных точек для получения хорошей оценки. Однако изначально используемая ими функция потерь не подходит для поиска оптимальной модели, поскольку имеет плоскую структуру, что делает неэффективными случайный поиск и градиентное восхождение. Затем выступающий заявляет, что иногда функция потерь должна отличаться от функции оценки, и представляет функцию потерь, которая имеет минимум вокруг желаемой точки, но является гладкой везде.

  • 01:15:00 В этом разделе лектор демонстрирует, как принцип наименьших квадратов, используемый в регрессии, может быть применен к классификации путем присвоения значений баллов и рассмотрения проблемы как проблемы регрессии. Этот подход хорошо работает при кластеризации линейно разделимых точек, но нет гарантии, что он разделит кластеры, которые не являются линейно разделимыми. Они показывают, как работает алгоритм градиентного спуска, предпринимая определенные шаги в пространстве признаков, чтобы минимизировать функцию потерь. Используемый пример представляет собой набор данных с линейно разделяемыми точками, и лектор также подчеркивает, как линейные модели ограничены в том, что они могут выражать, как показано на примере основного набора данных со сложными границами.

  • 01:20:00 В этом разделе инструктор обсуждает ограничения линейных моделей и то, как они могут не классифицировать нелинейно разделимые наборы данных, например набор данных со спиральным узором. Однако линейные модели могут хорошо работать в многомерных пространствах признаков, а также не требуют больших вычислительных затрат. Преподаватель объясняет, что стохастический градиентный спуск является мощным инструментом оптимизации, но требует, чтобы гладкая функция потерь использовалась в качестве прокси для дискретных функций потерь. Преподаватель завершает предварительным просмотром будущих тем, которые будут обсуждаться, таких как методология машинного обучения.
2 Linear Models 1: Hyperplanes, Random Search, Gradient Descent (MLVU2019)
2 Linear Models 1: Hyperplanes, Random Search, Gradient Descent (MLVU2019)
  • 2019.02.07
  • www.youtube.com
slides: https://mlvu.github.io/lectures/12.LinearModels1.annotated.pdfcourse materials: https://mlvu.github.ioIn this lecture, we discuss the linear models: ...
 

3 Методология 1: площадь под кривой, смещение и дисперсия, отсутствие бесплатного обеда (MLVU2019)



3 Методология 1: площадь под кривой, смещение и дисперсия, отсутствие бесплатного обеда (MLVU2019)

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

В этом видео рассматриваются три важные концепции машинного обучения: AUC (площадь под кривой), предвзятость и дисперсия, а также теорема «бесплатных обедов не бывает». AUC — это метрика, используемая для оценки моделей бинарной классификации, тогда как смещение и дисперсия относятся к различиям между предсказанными значениями модели и истинными значениями в наборе данных. Теорема «бесплатного обеда не бывает» подчеркивает важность выбора подходящего алгоритма для данной задачи, поскольку не существует единого алгоритма, который мог бы оптимально работать со всеми возможными задачами и наборами данных.

  • 00:20:00 В этом разделе спикер обсуждает первую методологию оценки моделей машинного обучения, метрику площади под кривой (AUC). AUC измеряет эффективность моделей классификации, вычисляя площадь под кривой рабочей характеристики приемника (ROC). Докладчик также вводит понятия смещения и дисперсии, которые измеряют, насколько хорошо модель соответствует обучающим данным и насколько хорошо она обобщается на новые данные, соответственно. Наконец, спикер объясняет теорему «бесплатных обедов не бывает», в которой говорится, что не существует универсального алгоритма для всех задач машинного обучения, и подчеркивается важность выбора подходящего алгоритма для каждой конкретной задачи.

  • 01:10:00 В этом разделе спикер представляет три ключевых понятия методологии машинного обучения: площадь под кривой (AUC), предвзятость и дисперсию, а также теорему «бесплатных обедов не бывает». AUC — это метрика, используемая для оценки производительности моделей бинарной классификации и представляющая вероятность того, что модель ранжирует случайно выбранный положительный пример выше, чем случайно выбранный отрицательный пример. Смещение относится к разнице между ожидаемым значением прогнозов модели и истинными значениями в наборе данных, а дисперсия относится к дисперсии прогнозов модели при обучении на разных наборах данных. Теорема «бесплатных обедов не бывает» утверждает, что не существует единого алгоритма, который может лучше всего работать со всеми возможными задачами и наборами данных, что подчеркивает важность выбора подходящего алгоритма для данной задачи.
3 Methodology 1: Area-under-the-curve, bias and variance, no free lunch (MLVU2019)
3 Methodology 1: Area-under-the-curve, bias and variance, no free lunch (MLVU2019)
  • 2019.02.12
  • www.youtube.com
slides: https://mlvu.github.io/lectures/21.Methodology1.annotated.pdfcourse materials: https://mlvu.github.ioIn this lecture, we discuss the practicalities t...
 

4 Методология 2: очистка данных, анализ главных компонентов, собственные грани (MLVU2019)



4 Методология 2: очистка данных, анализ главных компонентов, собственные грани (MLVU2019)

Эта первая часть видео охватывает различные важные аспекты предварительной обработки и очистки данных перед применением алгоритмов машинного обучения, начиная с решающей важности понимания предвзятости и перекоса данных. Затем докладчик обсуждает методы работы с отсутствующими данными, выбросами, дисбалансом классов, выбором функций и нормализацией. Далее в видео обсуждается концепция базиса и распределения MVN, объясняется, как использовать отбеливание для преобразования данных в нормальное распределение для нормализации, и завершается использованием анализа основных компонентов (PCA) для уменьшения размерности. От манипулирования обучающим набором до использования методов вменения, PCA проецирует данные в пространство более низкого измерения, сохраняя при этом информацию из исходных данных.

Во второй части видео обсуждается использование анализа основных компонентов (PCA) для очистки данных и уменьшения размерности для машинного обучения. Этот метод включает центрирование данных по среднему значению, вычисление выборочной ковариации и ее разложение с использованием собственного разложения для получения собственных векторов, выровненных с осью, которые охватывают наибольшую дисперсию. Использование первых K основных компонентов обеспечивает хорошую реконструкцию данных, что позволяет повысить производительность машинного обучения. Также представлена концепция Eigenfaces, и показано, что PCA эффективно сжимает данные до 30 измерений, сохраняя при этом большую часть необходимой информации для машинного обучения. Обсуждаются различные приложения PCA, в том числе его использование в антропологии и при изучении сложных наборов данных, таких как ДНК и лица.

  • 00:00:00 В этом разделе видео ведущий рассказывает об основах очистки и предварительной обработки данных перед применением алгоритмов машинного обучения. Важность того, чтобы не принимать данные за чистую монету, подчеркивается при обсуждении систематической ошибки выжившего, когда сосредоточение внимания только на выживающем населении может привести к искаженным результатам. Затем докладчик обсуждает такие методы, как работа с отсутствующими данными, выбросами, дисбалансом классов, выбором функций и нормализацией. Наконец, вторая половина видео посвящена обсуждению уменьшения размерности с использованием алгоритма анализа главных компонентов.

  • 00:05:00 В этом разделе видео представлены практические советы по очистке данных и обработке отсутствующих данных в наборе данных, включая удаление отсутствующих функций или экземпляров, которые не являются значительными, и обеспечение того, чтобы удаление не изменило распределение данных. Вместо того, чтобы удалять пропущенные значения, может быть полезнее сохранить их для обучающих данных и проверить ответы модели. Чтобы максимизировать объем обучающих данных, для отсутствующих данных доступен метод вменения, который заполняет догадки, например, с использованием режима или среднего значения. Руководящим принципом работы с отсутствующими данными является рассмотрение реального варианта использования или производственной среды, чтобы подготовить модель к работе с ожидаемыми отсутствующими данными наиболее подходящим и практичным способом.

  • 00:10:00 В этом разделе спикер обсуждает два типа выбросов в данных: механические и естественные выбросы. Механические выбросы возникают из-за таких ошибок, как отсутствие данных или ошибки при вводе данных, и их следует рассматривать как отсутствующие данные, подлежащие очистке. С другой стороны, естественные выбросы возникают из-за ненормального распределения определенных переменных и должны быть сохранены в наборе данных, чтобы обеспечить лучшее соответствие. Докладчик приводит примеры обоих типов выбросов, включая необычные черты лица в наборе данных о лицах и чрезвычайно высокие доходы в наборе данных о распределении доходов.

  • 00:15:00 В этом разделе обсуждается важность проверки предположений о нормальности данных. Линейная регрессия, например, основана на этих допущениях, поэтому важно проверять их на нормальность и помнить, что допущения могут скрываться в моделях и оставаться неизвестными. Выбросы также следует учитывать при моделировании и проверке данных, и важно тестировать модели с обучающим набором, который представляет производственные ситуации, чтобы убедиться, что модели могут правильно обрабатывать выбросы. Кроме того, обсуждается важность преобразования данных в категориальные или числовые признаки для алгоритмов машинного обучения и потенциальная потеря информации, связанная с такими преобразованиями.

  • 00:20:00 В этом разделе спикер обсуждает важность выбора правильных функций для алгоритмов машинного обучения и способы извлечения значимой информации из данных. Они объясняют, что простая интерпретация чисел, таких как номера телефонов, как числовые значения бесполезна, и вместо этого предлагают искать категориальные признаки, такие как коды городов или статусы мобильных и стационарных телефонов. В тех случаях, когда алгоритм машинного обучения принимает только числовые признаки, спикер рекомендует использовать одно горячее кодирование вместо целочисленного, чтобы избежать произвольного порядка данных. Цель состоит в том, чтобы извлечь необходимую информацию, не теряя важных деталей, и выбрать функции, которые точно и эффективно передают информацию, необходимую для выполнения поставленной задачи.

  • 00:25:00 В этом разделе спикер обсуждает ценность расширения функций, чтобы сделать модель более мощной. На примере набора данных для классификации спама в электронной почте спикер объясняет, как два взаимосвязанных признака нельзя интерпретировать, не зная значения другого, что делает невозможным проведение линейным классификатором границ между классами. Чтобы устранить это ограничение, спикер обсуждает добавление функции перекрестного произведения, которая умножает значения существующих функций, позволяя провести границу классификации в более высоком пространстве функций, даже если она не является линейно разделимой в исходном пространстве. Затем докладчик приводит пример класса точек с круговой границей решения, чтобы еще раз проиллюстрировать важность расширения функций.

  • 00:30:00 В этом разделе спикер объясняет, как добавление дополнительных функций может помочь линейному классификатору решить проблемы классификации. Добавляя квадрат координат x и y в качестве признаков к граничной задаче решения, линейный классификатор можно использовать для различения двух классов точек. Докладчик показывает, как с помощью TensorFlow Playground обучение классификатора приводит к границе решения, которая для человеческого глаза кажется круглой. Также показаны веса признаков и показано, что для решения этой задачи классификации необходим только один признак.

  • 00:35:00 В этом разделе видео спикер обсуждает, как расширение пространства признаков может привести к более мощной модели даже для регрессии. Они иллюстрируют этот момент, показывая, как добавление переменной в квадрате к модели линейной регрессии приводит к получению параболы, которая лучше соответствует данным. Спикер также советует, как бороться с дисбалансом классов, предлагая манипулировать обучающим набором с помощью таких методов, как передискретизация или увеличение данных. Наконец, они вводят тему нормализации и предоставляют мотивирующий пример того, как различия в единицах могут повлиять на производительность модели классификации K ближайших соседей.

  • 00:40:00 В этом разделе видео спикер обсуждает важность нормализации данных для алгоритмов машинного обучения. Они объясняют три способа нормализации данных: нормализация, стандартизация и отбеливание. Нормализация включает в себя сжатие диапазона данных в диапазоне от нуля до единицы, тогда как стандартизация предполагает, что среднее значение данных равно нулю, а дисперсия равна единице. Третий метод, отбеливание, представляет собой несколько более качественную нормализацию, которая учитывает все корреляции в данных и сводит их к сфере в пространстве признаков. Спикер объясняет, что отбеливание полезно для уменьшения размерности.

  • 00:45:00 В этом разделе спикер объясняет концепцию отбеливания данных, которая включает преобразование данных в некоррелированный набор функций. Докладчик использует линейную алгебру, чтобы продемонстрировать, как выбрать другую основу для данных, выбрав два других вектора для новой системы координат. Синяя точка, первоначально представленная как (3,2) в стандартной системе координат, пересчитывается относительно новой базовой системы и имеет новые координаты (2,5, 0,5). Это приводит к обобщенному обозначению вставки базисных векторов в матрицу в виде столбцов.

  • 00:50:00 В этом разделе спикер обсуждает концепцию базиса и то, как его можно использовать для преобразования между разными базами с помощью транспонирования матрицы. Матричная обратная операция является дорогостоящей и численно неточной, поэтому предпочтительнее ортонормированный базис, в котором базисные векторы имеют длину один и ортогональны друг другу. Затем докладчик объясняет, как многомерное нормальное распределение является обобщением нормального распределения для нескольких измерений и может помочь в интерпретации данных. Среднее значение распределения представляет собой вектор, а дисперсия становится ковариационной матрицей в многомерном нормальном распределении. Докладчик также кратко объясняет формулу для вычисления выборочной ковариации для подбора многомерного нормального распределения к данным.

  • 00:55:00 В этом разделе вводится понятие многомерного нормального (MVN) распределения, которое имеет нулевое среднее значение, дисперсию, равную единице в каждом направлении, отсутствие корреляций и может быть преобразовано в любое другое распределение MVN. Далее поясняется процесс отбеливания данных, в котором преобразование распределения MVN выполняется в обратном порядке, чтобы преобразовать данные в нормальное распределение для нормализации. В этом разделе также рассматривается уменьшение размерности многомерных данных с помощью анализа основных компонентов (PCA) — метода, который выполняет как отбеливание, так и уменьшение размерности. Находя новые функции, производные от исходных функций, которые сохраняют как можно больше релевантной информации, PCA проецирует данные в пространство более низкого измерения, сохраняя при этом важную информацию из исходных данных.

  • 01:00:00 В этом разделе видео ведущий обсуждает анализ основных компонентов (PCA) и то, как он упорядочивает измерения по захваченной дисперсии, что позволяет выполнять полезную реконструкцию данных и уменьшение размерности. Докладчик объясняет собственные векторы и то, как они представляют собой особые векторы, направление которых не меняется при преобразовании, и как их можно использовать для нахождения максимальной дисперсии исходных данных. Докладчик также объясняет, как найти собственные векторы для диагональной матрицы и как повернуть матрицу, чтобы выровнять собственные векторы вдоль оси.

  • 01:05:00 В этом разделе мы узнаем об использовании анализа основных компонентов (PCA) для предварительной обработки данных для алгоритмов машинного обучения. Сначала мы имеем в виду центрирование данных для удаления перевода, затем вычисляем выборочную ковариацию и разлагаем ее, используя собственное разложение. Затем мы преобразуем данные обратно в стандартное многомерное нормальное пространство (MVN) и отбрасываем все, кроме первых K признаков. Собственные векторы, полученные в результате разложения, выравниваются с осью, что позволяет нам сохранить направление с наибольшей дисперсией. Это приводит к значительному снижению размерности, что позволяет повысить производительность машинного обучения.

  • 01:10:00 В этом разделе ведущий объясняет концепцию уменьшения размерности с помощью анализа главных компонентов (PCA). Целью уменьшения размерности является сохранение неизменности при сохранении как можно большего количества данных. Максимизация дисперсии в проекции аналогична минимизации ошибки реконструкции, которая представляет собой функцию потерь, используемую для измерения разницы между исходными и спроецированными данными. Первый главный компонент — это линия, которая отражает наибольшую дисперсию, а следующие компоненты отражают оставшуюся дисперсию. Использование первых K главных компонент обеспечивает хорошую реконструкцию данных.

  • 01:15:00 В этом разделе спикер обсуждает использование анализа главных компонентов (PCA) в исследовательских приложениях. Одно из таких приложений находится в области антропологии, где его можно использовать для количественной оценки и демонстрации характеристик окаменелых костей. Выполняя измерения различных аспектов кости и создавая многомерное пространство признаков для сравнения, PCA затем можно использовать для уменьшения размеров данных до двух основных компонентов, что позволяет визуально группировать и идентифицировать выбросы. Кроме того, PCA применялся для изучения ДНК в европейских популяциях, где ДНК преобразуется в многомерный вектор признаков, и PCA можно использовать для выявления паттернов и кластеров в данных.

  • 01:20:00 В этом разделе спикер обсуждает, как анализ основных компонентов (PCA) можно применить к набору данных признаков ДНК и как его можно использовать для определения приблизительной формы Европы. Глядя на два основных компонента набора данных ДНК, раскрашенных по странам происхождения, можно определить, как далеко на север или запад/восток проживал человек или его предки. PCA часто рассматривается как волшебный метод из-за его способности давать представление о сложных наборах данных, таких как собственные векторы набора данных лиц, применяемых в собственных лицах. Вычисляя среднее значение набора данных лиц и рассматривая собственные векторы ковариации этого набора данных, PCA может указать направления в многомерном пространстве изображений лиц.

  • 01:25:00 В этом разделе спикер обсуждает концепцию Eigenfaces и то, как анализ основных компонентов (PCA) помогает в очистке данных. Добавляя небольшое количество первого собственного вектора к среднему лицу, говорящий демонстрирует, как это соответствует возрасту в чертах лица. Второй и четвертый собственные векторы соответствуют освещению и полу соответственно. Пятый собственный вектор показывает, насколько открыт или закрыт рот. Собственные векторы служат основой для нового пространства, а сжатие данных до 30 измерений обеспечивает хорошее представление исходного лица. Точка перегиба возникает около 30 собственных векторов, где остальные детали можно отбросить, сохраняя большую часть информации, необходимой для машинного обучения.
4 Methodology 2: Data cleaning, Principal Component Analysis, Eigenfaces (MLVU2019)
4 Methodology 2: Data cleaning, Principal Component Analysis, Eigenfaces (MLVU2019)
  • 2019.02.14
  • www.youtube.com
slides: https://mlvu.github.io/lectures/22.Methodology2.annotated.pdfcourse materials: https://mlvu.github.ioIn this lecture we discuss how to prepare your d...
 

Лекция 5 Вероятность 1: Энтропия, (Наивный) Байес, Кросс-энтропийная потеря (MLVU2019)



5 Вероятность 1: энтропия, (наивный) Байес, кросс-энтропийная потеря (MLVU2019)

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

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

  • 00:00:00 В этом разделе видео о вероятности спикер начинает с того, что советует учащимся присоединиться к групповому проекту, если они еще этого не сделали, и не слишком беспокоиться о поиске идеальной группы, а вместо этого максимально использовать что они получают. Затем докладчик представляет теорию вероятности и энтропию, которые тесно связаны и полезны в машинном обучении. Он объясняет, что энтропия в данном контексте означает измерение степени неопределенности или случайности в системе. Понятие энтропии важно в машинном обучении и используется для объяснения наивного Байеса и перекрестной потери энтропии, которые будут обсуждаться позже в лекции. В лекции также будут рассмотрены основы классификации и линейных классификаторов.

  • 00:05:00 В этом разделе спикер обсуждает функции потерь и представляет кросс-энтропийную потерю, которая считается очень хорошей функцией потерь. Они приводят пример, связанный с азартными играми подростка, и объясняют, как в этом сценарии работают вероятности. Спикер также затрагивает понятия частоты и вероятности и то, как они применяются в реальных жизненных ситуациях.

  • 00:10:00 В этом разделе спикер обсуждает разницу между субъективными и объективными вероятностями. Они объясняют, что субъективная вероятность основана на личных убеждениях и опыте, в то время как объективная вероятность основана на частотной вероятности, полученной из экспериментов и наблюдений. Докладчик отмечает, что в машинном обучении основное внимание уделяется минимизации потерь на тестовом наборе на основе обучающего набора, и что теория вероятностей используется в качестве математической основы для описания вероятностей. Докладчик также вводит понятие случайных величин и выборочного пространства.

  • 00:15:00 В этом разделе видео объясняет концепции пространства выборки и пространства событий в теории вероятностей. Пространство выборки охватывает все возможные исходы, причем никакие два исхода не имеют другого исхода между ними. Пространство событий включает в себя набор подмножеств пространства выборки, что позволяет идентифицировать вероятности различных событий, таких как получение нечетного или четного числа при броске костей. Вероятности могут быть присвоены как дискретным, так и непрерывным пространствам выборок. Кроме того, в видео упоминается использование случайных переменных и функций для моделирования вероятностных наборов данных, что помогает объяснить вероятность исходов событий.

  • 00:20:00 В этом разделе спикер знакомит с основными понятиями вероятности, включая случайные величины и их представление в виде функций. Докладчик объясняет, что случайная величина может быть представлена одним числом и конкретизирована как переменная. Они также обсуждают использование обозначения равенства и то, как на случайные величины можно ссылаться либо с помощью функции, либо с помощью определенного значения. Затем докладчик приводит пример пространства событий, определяемого двумя случайными величинами, X и Y, и вводит понятие условной вероятности.

  • 00:25:00 В этом разделе спикер обсуждает вероятности и то, как их можно переписать и спроецировать для определения вероятности различных событий. Они объясняют, что если две переменные независимы, то знание значения одной не изменит вероятности другой. Затем выступающий использует пример двух человек, живущих в разных частях города, чтобы проиллюстрировать, как вероятность того, что один человек придет вовремя на работу, не влияет на вероятность того, что другой человек придет вовремя. Однако они отмечают, что есть одна редкая возможность, когда вероятности двух людей могут быть связаны.

  • 00:30:00 В этом разделе спикер обсуждает вероятность и теорему Байеса, которая является фундаментальной концепцией машинного обучения. Спикер использует пример пробки, чтобы объяснить условную независимость и то, как знание того, что Алиса опаздывает на работу, немного повышает уверенность в том, что Боб тоже опаздывает. Теорема Байеса считается самой важной формулой в этой области и объясняет, как изменить условную вероятность. Наконец, спикер объясняет, как машинное обучение сопоставляет распределение вероятностей с данными и как частотный подход определяет наилучшие параметры с учетом доступной информации.

  • 00:35:00 В этом разделе спикер обсуждает принцип оценки максимального правдоподобия и байесовскую вероятность. Принцип оценки максимального правдоподобия основан на предположении, что наблюдаемые точки данных независимы, и вероятность этих точек максимизирует степень правдоподобия. С другой стороны, байесовская вероятность предполагает обновление убеждений на основе предшествующих знаний и наблюдаемых данных. Байесовская вероятность использует компромисс между двумя сторонами, частотниками и байесовцами, для выражения распределения убеждений, что хорошо работает в машинном обучении.

  • 00:40:00 В этом разделе спикер обсуждает концепцию распределения вероятностей и способы их моделирования без дерева с единственным результатом. Использование беспрефиксного кода или префиксного дерева представлено как средство для создания широкого диапазона вероятностных распределений. Спикер поясняет, что этот подход можно использовать для коммуникации и нахождения вероятности тех или иных исходов в различных сценариях. Также приведен пример использования монеты для имитации трехгранной кости и достижения равномерного распределения.

  • 00:45:00 В этом разделе спикер обсуждает семейство вероятностных распределений, которые можно описать с помощью алгоритма беспрефиксного кода. Этот алгоритм, известный как Наивный Байес, эффективен для данных и обеспечивает хорошую связь между методами описания и распределением вероятностей. В основном этот алгоритм используется для объяснения энтропии, которая является мерой неопределенности случайной величины. Докладчик объясняет, как этот алгоритм можно использовать для кодирования данных из определенного распределения вероятностей и получения распределения вероятностей, которое хорошо подходит для заданных данных.

  • 00:50:00 В этом разделе спикер обсуждает энтропию и кросс-энтропийные потери как меры однородности данных. Энтропия может использоваться для представления однородности данных среди различных элементов, при этом меньшая энтропия указывает на более однородные данные. Перекрестная энтропия используется для представления ожидаемой длины кода, когда используется другой код, и всегда равна или больше энтропии с минимальным значением, равным нулю. Эти меры помогают понять расстояние между двумя распределениями вероятностей и обеспечивают теоретическую основу для анализа наборов данных как последовательности случайных величин.

  • 00:55:00 В этом разделе спикер объясняет концепции дискриминативного и генеративного классификаторов для бинарной классификации. Дискриминационная классификация просто различает экземпляры, в то время как генеративная классификация моделирует вероятность данных данного класса. Генеративные классификаторы варьируются от оптимального байесовского классификатора до наивного байесовского классификатора, который делает предположение об условной независимости и считается неправильным, но все же работает очень хорошо и дешево.

  • 01:00:00 В этом разделе спикер объясняет, как вычислить вероятность принадлежности новой точки к определенному классу, используя модель многомерного нормального распределения. Они объясняют, что, оценив распределения вероятностей и заполнив их, мы можем присвоить вероятности каждому классу на основе наибольшей вероятности. Однако при работе с высокой размерностью может быть недостаточно данных для точного соответствия модели, и в этом случае вместо этого можно использовать категориальное распределение для моделирования функций с помощью распределения Бернулли.

  • 01:05:00 В этом разделе объясняется концепция условной независимости признаков, которая позволяет эффективно подобрать распределение вероятностей для классификатора. Однако одно нулевое значение вероятности может сильно повлиять на точность классификатора, что можно решить путем сглаживания или настройки псевдонаблюдений, чтобы гарантировать наличие хотя бы одного наблюдения для каждого признака. Это гарантирует, что вероятность никогда не станет равной нулю, а точность классификатора не пострадает.

  • 01:10:00 В этом разделе докладчик обсуждает способы избежать искажения результатов в моделях машинного обучения, гарантируя наличие хотя бы одного экземпляра со значением для каждого возможного класса и функции. Они суммируют генеративные классификаторы как имеющие предположения о независимости, которые хорошо работают с большими и многомерными наборами данных, но требуют сглаживания Лапласа для обработки нулевых экземпляров. Докладчик вводит понятие потери энтропии как более эффективной функции потерь для линейных классификаторов по сравнению с точностью.

  • 01:15:00 В этом разделе спикер объясняет, как вместо присвоения значений моделям классификаторов можно присвоить вероятности с помощью логистической сигмовидной функции. Линейная модель по-прежнему используется, но она сжата в диапазоне от 0 до 1. Этот метод позволяет более точно интерпретировать положительные и отрицательные случаи.

  • 01:20:00 В этом разделе ведущий объясняет функцию потери перекрестной энтропии, которая используется для измерения разницы между тем, что предсказывает модель машинного обучения, и тем, что говорят данные. Функция потерь предназначена для максимизации размера линий между прогнозами и данными с целью увеличения синих линий и минимизации отрицательного логарифма всех линий, чтобы в конечном итоге максимизировать размер этих линий.

  • 01:25:00 В этом разделе спикер обсуждает, как работает функция кросс-энтропийных потерь, наказывая большие остатки больше, чем маленькие. Функция зависимости P от M также показывает, что небольшие столбцы вносят большой вклад в убыток, что эквивалентно возведению в квадрат в предыдущих моделях. Затем докладчик обсуждает производную логарифма и то, как постоянный множитель включается в уравнение. Для упрощения математики постоянным множителем можно пренебречь или двоичный логарифм можно определить через натуральный логарифм.

  • 01:30:00 В этом разделе спикер обсуждает потерю кросс-энтропии и роль сигмовидной функции в ее упрощении. Симметрии сигмовидной функции допускают коллапс функции потерь, что в конечном итоге делает ее проще. Логистическая сигмоида, примененная к логистической регрессии, может без проблем обрабатывать точки, находящиеся далеко от границы решения. Логистическая регрессия может привести к нескольким хорошим решениям в области неопределенности.

  • 01:35:00 В этом разделе лектор объясняет концепцию вероятности и классифицирует точки как синие или красные в зависимости от их значений вероятности. Далее он намекает, что следующая лекция будет посвящена потере SVM в качестве окончательной функции потерь.
5 Probability 1: Entropy, (Naive) Bayes, Cross-entropy loss (MLVU2019)
5 Probability 1: Entropy, (Naive) Bayes, Cross-entropy loss (MLVU2019)
  • 2019.02.19
  • www.youtube.com
slides: https://mlvu.github.io/lectures/31.ProbabilisticModels1.annotated.pdfcourse materials: https://mlvu.github.ioApologies for the bad audio (and missing...
 

Лекция 6 Линейные модели 2: нейронные сети, обратное распространение ошибки, SVM и методы ядра (MLVU2019)



6 Линейные модели 2: нейронные сети, обратное распространение, SVM и методы ядра (MLVU2019)

Эта первая часть видео о линейных моделях посвящена введению нелинейности в линейные модели и исследует две модели, которые полагаются на расширение пространства признаков: нейронные сети и машины опорных векторов (SVM). Для нейронных сетей спикер объясняет, как настроить сеть для задач регрессии и классификации с использованием функций активации, таких как сигмоид или softmax. Затем лекция углубляется в обратное распространение, метод, используемый для вычисления градиентов, используемых в нейронных сетях. Для SVM спикер вводит концепцию максимизации поля до ближайших точек каждого класса и демонстрирует, как это может быть выражено в виде задачи оптимизации с ограничениями. Видео представляет собой четкое введение в принципы нейронных сетей и SVM, рекомендуя студентам сосредоточиться на первой половине лекции в качестве отправной точки для остальной части курса.

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

  • 00:00:00 В этом разделе спикер обсуждает, как изучать нелинейные функции с помощью линейных моделей, добавляя дополнительные функции, которые являются производными от используемых функций, что было объяснено ранее на прошлой неделе. Затем докладчик сосредоточится на двух моделях, а именно на нейронных сетях и машинах опорных векторов, которые основаны на расширении пространства признаков. Нейронные сети требуют обучаемого экстрактора признаков, в то время как машины опорных векторов используют трюк ядра, чтобы увеличить пространство признаков. В лекции объясняется обратное распространение, особый метод вычисления градиентов, используемый в нейронных сетях, а также функция потери шарнира, используемая в машинах опорных векторов. Докладчик рекомендует сосредоточиться на первой половине лекции для лучшего понимания линейных моделей, поскольку она служит отправной точкой для остальной части курса.

  • 00:05:00 В этом разделе спикер обсуждает историю нейронных сетей, начиная с конца 50-х и начала 60-х годов, когда исследователи начали черпать вдохновение в человеческом мозге для разработки систем искусственного интеллекта. Они создали упрощенную версию нейрона под названием персептрон, которая работала как линейная модель и использовалась для классификации. Однако интересным в мозге является то, как большая группа нейронов работает вместе, поэтому исследователи начали связывать эти персептроны вместе, чтобы построить сеть.

  • 00:10:00 В этом разделе лекции о линейных моделях спикер объясняет, как ввести нелинейность в сеть персептронов, чтобы иметь возможность изучать обычно нелинейные функции и более интересные модели. Один из способов сделать это — использовать сигмовидную функцию, которая берет диапазон чисел и сжимает их в диапазоне от 0 до 1. Объединяя вместе персептроны с нелинейными функциями активации в сеть с прямой связью или многоуровневый персептрон, один может превратить его в модель регрессии или классификации, где каждая строка представляет параметр сети, который необходимо настроить. Процесс адаптации этих чисел для решения задачи обучения называется обратным распространением, который будет обсуждаться позже в лекции.

  • 00:15:00 В этом разделе видео под названием «6 линейных моделей 2: нейронные сети, обратное распространение, SVM и методы ядра (MLVU2019)» спикер объясняет, как настроить нейронную сеть для задач регрессии и классификации. Для регрессии настраивается сеть с одним скрытым слоем и без активации на выходном слое, после чего применяется функция потерь регрессии. Для бинарной классификации к выходному слою добавляется сигмовидная активация, и полученные вероятности можно интерпретировать как вероятность того, что входные данные будут положительными. Для многоклассовой классификации добавляется активация softmax, которая создает по одному выходному узлу для каждого класса и нормализует вероятности так, чтобы они в сумме равнялись единице. Функция потерь используется для обучения весов сети до тех пор, пока кросс-энтропийные потери не будут минимизированы.

  • 00:20:00 В этом разделе спикер обсуждает основной принцип нейронных сетей, использующий градиентный спуск. Однако, поскольку вычисление потерь по всему набору данных может быть дорогостоящим, используется стохастический градиентный спуск, при котором для вычисления потерь используется только один пример в наборе данных, оптимизируя модель для этого единственного примера. Стохастический градиентный спуск добавляет случайности и создает небольшую случайность, помогая избежать локальных минимумов. Затем спикер добавляет скрытый слой на игровую площадку цветка внимания для классификации, где показана вероятностная классификация. Тем не менее, модель, похоже, не очень хорошо справляется с этой конкретной задачей.

  • 00:25:00 В этом разделе видео спикер обсуждает функции активации для линейных моделей, сравнивая сигмовидную и ReLU функции активации. Функция ReLU подбирает данные быстрее, и ее граница решения является кусочно-линейной, в то время как сигмоид создает извилистую границу решения. Спикер рекомендует поэкспериментировать с дополнительными слоями, чтобы сделать модель более мощной, хотя добавленная сложность затрудняет обучение. Затем видео углубляется в обратное распространение, которое позволяет компьютерам эффективно вычислять градиенты с использованием символьного дифференцирования без экспоненциальных затрат. Спикер объясняет, что основная идея состоит в том, чтобы описать функцию как композицию модулей и многократно применять цепное правило.

  • 00:30:00 В этом разделе алгоритм обратного распространения объясняется как метод, позволяющий взять любую заданную модель и разбить ее на цепочку модулей, чтобы вычислить глобальный градиент для определенного входа путем умножения градиентов каждого подмодуля. вместе. Этот процесс начинается с вычисления производной каждого модуля относительно его входных данных, символически используя ручку и бумагу, а затем переходит к численным вычислениям. Приводится простой пример, иллюстрирующий идею составления функции в виде последовательности модулей с использованием локальных производных и повторным применением цепного правила для получения глобальной производной. Результирующие факторы называются глобальными и локальными производными соответственно.

  • 00:35:00 В этом разделе видео обсуждается обратное распространение путем разбивки системы на модули и применения ее к двухслойной нейронной сети с сигмовидной активацией. Основное внимание уделяется поиску производной функции потерь по весам, а не по входным данным. Первый модуль — это функция потерь, за которой следует Y, который представляет собой линейную функцию активации. Каждое скрытое значение получает модуль со своей функцией активации, в данном случае сигмовидной функцией, применяемой к нему. H2 простое число является линейным входом в функцию активации. Наконец, в видео говорится, что важно понимать разницу между производной модели по входным данным и производной функции потерь по весам.

  • 00:40:00 В этом разделе спикер обсуждает локальные градиенты каждого модуля, в частности, производную потерь по V2 и Y по V2. Производная L по Y упрощается с помощью цепного правила и дает 2 умноженное на Y минус T, что является просто квадратом нормы ошибки. Y над V2 — линейная функция, а производная — это просто H2. При применении градиентного спуска к параметру z2 он обновляется путем вычитания ошибки, умноженной на активацию H2. Спикер приводит аналогию нейронной сети в виде правительства с премьер-министром наверху, министрами на втором уровне и государственными служащими на первом уровне. Министры слушают государственных служащих и громче выкрикивают определенные решения, что интерпретируется как положительное доверие, а молчание означает отрицательное доверие. Премьер-министр регулирует свой уровень доверия на основе ошибки и обратно распространяет ее по сети для обновлений.

  • 00:45:00 В этом разделе спикер объясняет, как работает обратное распространение ошибки, возлагая ответственность за ошибки в выходных данных модели на все веса. Он использует надуманную аналогию, чтобы продемонстрировать, что глобальная ошибка вычисляется и умножается на уровень доверия к министрам, которые способствовали возникновению проблемы. Затем докладчик показывает, как необходимо учитывать функцию активации при обновлении уровня доверия. Обратное распространение, по сути, распространяет ошибку обратно по сети для обновления весов модели. Спикер резюмирует, что нейронные сети представляют собой комбинацию линейных и нелинейных функций, а простейшая версия — это сеть с прямой связью.

  • 00:50:00 В этом разделе видео обсуждается история и проблемы с нейронными сетями, а также то, как интерес к ним снизился из-за сложности их обучения и неопределенности, связанной с настройкой их параметров. Машины опорных векторов, которые имеют выпуклую поверхность потерь, позволяющую немедленно получить обратную связь о том, работает ли модель, стали более популярными из-за отсутствия неопределенности, связанной с их обучением. Затем в видео представлены машины опорных векторов как решение проблемы нескольких моделей, которые по-разному работают с аналогичными данными, с использованием концепции максимизации поля до ближайших точек и называя их опорными векторами.

  • 00:55:00 В этом разделе вводится концепция машин опорных векторов (SVM) как метода нахождения границы решения для задачи бинарной классификации. Алгоритм SVM стремится найти линию, которая максимизирует запас или расстояние между границей решения и ближайшими точками каждого класса. Цель SVM может быть выражена как задача оптимизации с ограничениями, где цель состоит в том, чтобы максимизировать маржу при удовлетворении ограничений, которые гарантируют, что выход модели равен +1 для положительных векторов поддержки и -1 для отрицательных векторов поддержки. SVM можно дополнительно упростить, введя параметр метки, который кодирует, является ли точка положительной или отрицательной, что позволяет свести две цели к одной цели, которую можно полностью записать в терминах параметров гиперплоскости.

  • 01:00:00 В этом разделе докладчик обсуждает концепцию максимизации запаса между границами решений в машинах опорных векторов (SVM). Размер поля зависит от длины вектора, которая может быть определена параметрами модели. Цель состоит в том, чтобы максимизировать эту маржу при соблюдении определенных ограничений. Однако, если данные не являются линейно разделимыми, модель необходимо ослабить, добавив параметр резерва, который позволяет модели нарушать определенные ограничения, чтобы найти лучшее соответствие. Каждая точка данных имеет свой собственный параметр временного резерва, который может быть установлен либо равным нулю, либо положительным значением.

  • 01:05:00 В этом разделе лектор обсуждает концепцию SVM с мягкими границами, которая позволяет обрабатывать наборы данных, которые не являются линейно разделимыми, добавляя штрафное значение к точкам, которые не соответствуют ограничениям классификации. Этот штраф выражается через функцию потерь, которую можно минимизировать с помощью метода градиентного спуска. Лектор также представляет вариант переписывания функции потерь в терминах опорных векторов в качестве альтернативы трюку с ядром, который позволяет решить задачу условной оптимизации. Функция потери шарнира представлена как способ реализации этой системы штрафов.

  • 01:10:00 В этом разделе инструктор обсуждает различные функции потерь в машинном обучении, такие как точность, метод наименьших квадратов, кросс-энтропийные потери и потери SVM с мягкой маржой. Мягкая маржа SVM работает, максимизируя маржу между границей решения и ближайшими точками со штрафами. Однако, поскольку эта функция оптимизации имеет ограничения и седловую точку, она не может быть эффективно решена с помощью градиентного спуска. Преподаватель знакомит с методом множителей Лагранжа, который помогает переписать задачу оптимизации с ограничениями в гораздо более простой форме, не избавляясь от ограничений. Используя этот метод, инструктор демонстрирует, как можно переписать функцию оптимизации SVM с мягким запасом, что позволит применить прием ядра.

  • 01:15:00 В этом разделе докладчик обсуждает машины опорных векторов (SVM) и трюк ядра, который представляет собой способ замены скалярных произведений пар точек в наборе данных другими скалярными произведениями. SVM работают, штрафуя размер альфы, указывая, какие точки являются опорными векторами, и суммируя по всем парам точек в наборе данных. Хитрость ядра позволяет вычислять скалярное произведение в многомерном пространстве, что приводит к гораздо более мощной модели при тех же затратах, что и вычисление линейной модели. Приведен пример, когда функции расширяются за счет добавления всех перекрестных произведений, что значительно увеличивает пространство функций и позволяет создавать гораздо более мощные модели.

  • 01:20:00 В этом разделе обсуждается концепция использования функций ядра для получения многомерных пространственных признаков для классификации. Используя скалярное произведение и расширяя его до более высоких степеней, пространство признаков можно расширить, включив в него перекрестные произведения и бесконечномерные пространства признаков, сохраняя при этом низкую стоимость. Этот метод, однако, склонен к переоснащению и может быть сложным в реализации. Использование функций ядра также может быть распространено на нечисловые данные, такие как текст или последовательности белков, где прямое извлечение признаков не является простым. Хотя в настоящее время функции ядра могут быть не в моде, в некоторых случаях они все же могут быть полезны.

  • 01:25:00 В этом разделе обсуждаются различия между машинами опорных векторов (SVM) и нейронными сетями. SVM ограничены тем, что их время обучения является квадратичным, тогда как нейронным сетям требуется только определенное количество проходов по данным. Тем не менее, SVM все еще можно обучать с помощью градиентного спуска, но этот метод упускает из виду трюк с ядром. Примерно в 2005 году обучение SVM становилось все труднее из-за большого количества задействованных данных, что привело к возрождению нейронных сетей. Кроме того, культура машинного обучения сместилась к признанию того, что нейронные сети работают, даже если причина их успеха еще не полностью понята. В конечном итоге этот сдвиг позволил использовать модели нейронных сетей для выполнения более продвинутых типов классификации, которые будут обсуждаться в следующем разделе.
6 Linear Models 2: Neural Networks, Backpropagation, SVMs and Kernel methods (MLVU2019)
6 Linear Models 2: Neural Networks, Backpropagation, SVMs and Kernel methods (MLVU2019)
  • 2019.02.27
  • www.youtube.com
NB: There is a mistake in slide 59. It should be max(0, 1 - y^i(w^T\x + b) ) (one minus the error instead of the other way around).slides: https://mlvu.githu...
 

Глубокое обучение 1: обратное распространение для тензоров, сверточные нейронные сети (MLVU2019)



7 Глубокое обучение 1: обратное распространение для тензоров, сверточные нейронные сети (MLVU2019)

Эта первая часть видео о глубоком обучении и обратном распространении охватывает несколько тем, включая основы структуры глубокого обучения, тензоры, алгоритм обратного распространения и проблему исчезающего градиента. Докладчик объясняет, как можно реализовать нейронные сети, используя последовательность операций линейной алгебры, и как можно использовать алгоритм обратного распространения ошибки для определения модели как композиции функций. В видео также рассказывается, как вычислять производные с помощью матричных операций, и исследуются решения проблемы исчезающего градиента, такие как инициализация веса и использование ReLU в качестве функции активации. Наконец, видео затрагивает мини-пакетный градиентный спуск и различные оптимизаторы, которые можно использовать в сложной нейронной сети.

Эта вторая часть охватывает ряд тем, связанных с глубоким обучением, включая алгоритмы оптимизации и методы регуляризации. Оптимизация Адама объясняется как популярный алгоритм глубокого обучения, а регуляризация L1 и L2 исследуется как методы предотвращения переобучения. Также обсуждается потенциал нейронных сетей в обработке изображений, при этом сверточные нейронные сети выделяются как мощный инструмент для задач распознавания изображений. В видео также рассказывается о работе этих сетей и о том, как они создают функции для распознавания сложных изображений, а также о концепции сквозного обучения как способа преодоления ограничений, связанных с объединением нескольких модулей в цепочку.

  • 00:00:00 В этом разделе видео о глубоком обучении спикер начинает с обзора концепций, обсуждавшихся на предыдущем занятии, таких как нейронные сети и их организация по уровням. Затем они обсуждают, что нейронные сети, по сути, представляют собой просто серию шагов линейной алгебры с случайными нелинейными функциями, такими как сигмовидная функция. Это важно, поскольку упрощает процесс реализации нейронной сети и позволяет проводить более эффективное обучение. Спикер также отмечает, что нейронные сети на какое-то время потеряли популярность, потому что их было трудно обучать, но в следующем разделе они рассмотрят, как обратное распространение помогает преодолеть эту проблему.

  • 00:05:00 В этом разделе видео рассказывается об основах системы или фреймворка глубокого обучения, которые требуют понимания тензорного матричного исчисления и пересмотра алгоритма обратного распространения ошибки. Спикер подчеркивает, что, несмотря на нейросетевой багаж, связанный с глубоким обучением, в нем нет ничего особенного, поскольку это просто последовательность операций линейной алгебры. Первым шагом в разработке общей основы для нейронных сетей является эффективное и простое определение операций, чтобы их можно было легко эффективно обучить. Более того, при использовании графических процессоров или видеокарт все происходит примерно в 20 раз быстрее благодаря их эффективности при умножении матриц. Наконец, в видео излагаются остальные темы, которые будут затронуты в серии лекций, в том числе слои свертки, автоэнкодеры и обсуждение философских аспектов глубокого обучения.

  • 00:10:00 В этом разделе спикер обсуждает тензоры, структуру данных, используемую для хранения набора чисел, которые можно использовать в глубоком обучении. Тензоры используются для хранения наборов данных и должны иметь одинаковый тип данных для всех элементов, обычно содержащих числа с плавающей запятой. Докладчик объясняет, как сохранить изображение в трехтензоре, который представляет собой стек из трех изображений в градациях серого, по одному для каждого цветового канала, и как сохранить набор изображений в четырехтензоре, добавив еще один индекс, который выполняет итерацию по изображениям в набор данных. Наконец, спикер объясняет, что функции или операции в глубоком обучении такие же, как и в языке программирования, но с тензорами в качестве входных и выходных данных, и что обратное вычисление, которое вычисляет локальный градиент, также реализуется вместе с прямым вычислением.

  • 00:15:00 В этом разделе видео обсуждается алгоритм обратного распространения и то, как его можно использовать для определения модели нейронной сети как композиции функций. Градиент по всей сети вычисляется как произведение всех локальных градиентов каждой функции, а обратное распространение используется для распространения потерь по всему графу вычислений. В видео объясняется, что существует два способа определения графа вычислений — ленивое выполнение и активное выполнение — и хотя ленивое выполнение является простым, оно не идеально подходит для отладки или исследований. Стремительное выполнение в настоящее время используется по умолчанию в таких средах, как PyTorch и TensorFlow, поскольку оно позволяет пользователю определять граф вычислений, выполняя вычисления, что упрощает отладку и изменение модели во время обучения.

  • 00:20:00 В этом разделе спикер обсуждает граф вычислений и то, как он строится с использованием скалярных переменных. Затем он приводит пример того, как нейронная сеть может быть реализована в структуре с использованием графа вычислений. Значение потерь вычисляется в нейронной сети, и процесс обратного распространения инициируется из значения потерь для получения градиента по параметрам сети. Как только градиент получен, можно выполнить один шаг градиентного спуска, вычитая немного градиента из значения.

  • 00:25:00 В этом разделе спикер обсуждает два важных аспекта обратного распространения ошибки для систем глубокого обучения: обработка нескольких путей вычислений и работа с тензорами. Докладчик представляет правило многомерной цепочки для обработки ромбов в графе вычислений, где несколько путей ведут к одному и тому же значению. Кроме того, спикер объясняет важность работы с тензорами при обратном распространении, где все промежуточные значения являются тензорами, а не скалярными значениями. Цель состоит в том, чтобы вычислить производные с помощью матричных операций, что позволит ускорить вычисления. Докладчик демонстрирует, как получить производную вектора по матрице, используя простой пример функции, которая выводит скаляр, входом которого является вектор, максимально упрощая функцию, рассматривая скалярное произведение.

  • 00:30:00 В этом разделе спикер объясняет, как вычислять производные тензоров на примерах вектора и матрицы. Первый пример показывает, что производная скаляра по вектору — это просто вектор чисел, который является градиентом. Затем второй пример демонстрирует, что производная вектора по матрице — это просто матрица. Спикер подчеркивает, что если взять все возможные значения и упорядочить их в матрицу, получится исходная матрица P.

  • 00:35:00 В этом разделе спикер объясняет, как получение производной функции дает нам матрицу возможных скалярных производных для векторных входных и выходных данных и тензор производных для входных/выходных данных более высокого порядка. Однако вычисление этих промежуточных значений может быть трудным и сложным, особенно при работе с комбинацией вектор/матрица. Чтобы упростить этот процесс, мы можем накапливать произведение, вычисляя каждую производную последовательно слева направо, вместо того, чтобы иметь дело с этими промежуточными значениями. Докладчик объясняет, как обратная реализация функции принимает в качестве входных данных производную потерь по отношению к ее выходу.

  • 00:40:00 В этом разделе спикер объясняет, как вычислить значение с точки зрения матричных вычислений, удалив промежуточные продукты. Они должны вычислить производную по всем входным данным относительно всех входных данных и использовать правило многомерной цепочки, в котором оно указывает путь вычисления и суммирует результаты. Даже если K является тензором или тензором высокого уровня, им необходимо вывести каждый элемент и сложить итог, который может быть неэффективным для вычисления таким способом, поэтому они извлекают элементы матричного умножения в скалярное произведение i-й строки W-x-X с X скалярным произведением I-й строки W на X. В конце концов, в конце каждого прямого и обратного прохода они оптимизируют каждую последовательность отслеживания, чтобы она соответствовала заданной целевой переменной, минимизируя результат функции потерь. .

  • 00:45:00 В этом разделе видео о глубоком обучении и обратном распространении спикер обсуждает, как вычислять производные с помощью многомерного цепного правила и матричных операций. Производные для каждого элемента весовой матрицы W могут быть вычислены, а локальный градиент для W получен с использованием внешнего произведения двух векторов. Тот же самый процесс может быть выполнен для других входов. Прямое вычисление линейного слоя вычисляется с использованием WX + B, а обратное вычисление может быть достигнуто путем вычисления градиентов потерь по отношению к W, X и B с использованием матричного умножения. Однако спикер отмечает, что в большинстве систем глубокого обучения уже реализована обратная функция, поэтому пользователям нет необходимости вычислять ее самостоятельно.

  • 00:50:00 В этом разделе спикер объясняет, что проблема исчезающего градиента была самой большой неудачей для глубокого обучения в 90-х годах. Они исследуют проблему с инициализацией весов, так как веса не должны быть слишком большими или маленькими, иначе функции активации не будут работать эффективно, в результате чего выходные данные всегда будут равны нулю. Решение состоит в том, чтобы инициализировать веса сети, используя случайные ортогональные значения или выборки из равномерного распределения между двумя положительными значениями, гарантируя, что собственные значения равны единице. Это гарантирует, что среднее значение и дисперсия выходных данных останутся неизменными, и, следовательно, сеть сможет эффективно обучаться.

  • 00:55:00 В этом разделе видео обсуждаются проблемы, возникающие при использовании сигмовидных функций для сетей глубокого обучения, такие как проблема исчезающего градиента, при которой градиенты становятся все меньше и сеть не обучается. Вместо этого в видео предлагается использовать ReLU в качестве более простой функции активации, которая имеет функцию идентичности, равную 1 для входных данных больше нуля, и нулевую производную в противном случае, поэтому градиент не затухает. В видео также представлен мини-пакетный градиентный спуск как промежуточная версия обычного и стохастического градиентного спуска, который вычисляет потери по отношению к небольшой партии, допуская случайность и параллельную обработку. Тем не менее, видео предупреждает, что существует компромисс между большими размерами пакетов, которые используют память графического процессора и работают быстрее, и меньшими пакетами, которые более эффективны для получения оптимальных результатов. Наконец, в видео затрагиваются различные оптимизаторы, использующие концепцию градиентного спуска, но немного корректирующиеся для учета различных градиентов, которые могут возникать в сложной нейронной сети.
  • 01:00:00 В этом разделе инструктор описывает три метода работы с очень маленькими локальными минимумами и сглаживания грубых поверхностей потерь: импульс, импульс Нестерова и метод Адама. Основная интуиция, лежащая в основе импульса, заключается в том, чтобы рассматривать градиенты как силу, аналогичную гравитации, и навигацию по поверхности потерь, рассматривая модель как валун, катящийся с холма. С импульсом Нестерова добавляется небольшое понимание, так что сначала можно применить шаг импульса, а затем можно вычислить градиент. Адам объединяет эту идею вместе с идеей о том, что каждый параметр в модели имеет свою собственную поверхность потерь и предпочтения относительно того, насколько агрессивно он должен двигаться в определенном направлении, поэтому средний градиент оценивается для каждого измерения в пространстве модели, и обновления масштабируются соответствующим образом. Экспоненциальное скользящее среднее берется как для градиента, так и для дисперсии, что допускает своего рода влияние предыдущего градиента, которое добавляется к среднему значению.

  • 01:05:00 В этом разделе видео обсуждаются оптимизаторы и регуляризаторы в глубоком обучении. Адам объясняется как алгоритм оптимизации, который представляет собой небольшую адаптацию к градиентному спуску, который хорошо работает в глубоком обучении. Он имеет несколько гиперпараметров, и настройки по умолчанию работают хорошо. Затем обсуждаются регуляризаторы как метод предотвращения переобучения в больших моделях с большим пространством для запоминания данных. Регуляризация L2 включает добавление гиперпараметра, умноженного на длину вектора весового тензора, к потерям, что побуждает систему отдавать предпочтение моделям с меньшими весами. Регуляризация L1 также следует этой идее, но вычисляет расстояние, используя норму L1 вектора тензора, что дает углы поверхности потерь. Регулятор L1 предпочитает разреженные решения, в которых система может удалять соединения, не влияющие на результат.

  • 01:10:00 В этом разделе спикер объясняет концепцию регуляризации в глубоком обучении, которая представляет собой метод, используемый для предотвращения переобучения моделей. Регуляризация помогает гарантировать, что модель хорошо обобщает невидимые данные. L1 и L2 — два популярных типа регуляризации, используемых в глубоком обучении. Регуляризация L2 подтягивает модели к началу координат и предотвращает слишком большое увеличение веса, в то время как регуляризация L1 создает канавку по краям. Также обсуждается отсев, который включает в себя случайное отключение скрытых узлов во время обучения и принуждение каждого узла учитывать несколько источников информации. Наконец, спикер рассказывает о достижениях глубокого обучения, включая единую нейронную сеть, которая потребляет изображения и производит текст.

  • 01:15:00 В этом разделе видео обсуждаются различные техники обработки изображений с помощью нейронных сетей. Одним из интересных методов является передача стиля, когда нейронная сеть может преобразовать фотографию, используя стиль данной картины. Преобразование изображения в изображение — это еще один метод, при котором сеть учится генерировать недостающие фрагменты изображения на основе обучения ненасыщенным изображениям или изображениям с обнаруженными краями. Сверточные слои помогают сделать сеть более эффективной за счет совместного использования весов и уменьшения пространства параметров, что особенно важно для обработки изображений. В целом, видео подчеркивает невероятный потенциал нейронных сетей в обработке изображений, но подчеркивает важность тщательного проектирования архитектуры на основе знаний предметной области для достижения наилучших результатов.

  • 01:20:00 В этом разделе спикер объясняет, как работают сверточные нейронные сети, которые представляют собой тип искусственной нейронной сети с прямой связью, которая обычно используется для распознавания изображений и задач классификации. Основная идея этих сетей состоит в том, чтобы ограничить количество параметров за счет использования общих весов и уменьшения разрешения изображения за счет использования слоя с максимальным объединением. Они состоят из серии полностью связанных слоев, за которыми следуют один или несколько слоев свертки, которые используют скользящее окно, называемое ядром, для фильтрации входного изображения и создания выходного изображения с измененными каналами. Объединив эти слои свертки и максимального объединения в цепочку и добавив несколько полносвязных слоев, можно создать базовую сеть классификации изображений, которая дает очень точные результаты.

  • 01:25:00 В этом разделе спикер обсуждает визуализацию того, что на самом деле делает сверточная нейронная сеть, просматривая узлы высоко в сети, чтобы увидеть, какой вход вызывает высокий отклик. Первый уровень сети в основном реагирует на обнаружение ребер, а следующий уровень собирает отдельные ребра в объекты. Этот процесс продолжается, постепенно наращивая изображения и заканчивая целыми лицами. Для дальнейшего изучения того, как работает нейронная сеть, спикер описывает оптимизацию ввода, чтобы вызвать активацию определенного нейрона, что приводит к изображениям, подобным абстрактному искусству. Изучая эти изображения, говорящий может определить, на какие черты реагирует нейрон, например, на черты птиц или собак. Наконец, спикер объясняет, что основное различие между традиционным машинным обучением и глубоким обучением заключается в идее сквозного обучения, когда конвейер не нужен, а сеть может, например, анализировать газеты и выполнять обработку естественного языка без многостадийный процесс.

  • 01:30:00 В этом разделе спикер объясняет ограничение объединения нескольких модулей, обладающих высокой точностью при выполнении задач машинного обучения. Накопленные ошибки от каждого модуля могут создавать помехи для последующих модулей, что значительно снижает точность всей системы. Затем в качестве решения этой проблемы вводится сквозное обучение. Вместо того, чтобы изолировать обучение для каждого модуля, весь конвейер обучается в целом, чтобы учиться на необработанных данных от начала до конца с использованием метода градиентного спуска. Это делает подход более гибким и позволяет системе глубокого обучения решать более широкий спектр задач.
7 Deep learning 1: Backpropagation for tensors, Convolutional Neural Networks (MLVU2019)
7 Deep learning 1: Backpropagation for tensors, Convolutional Neural Networks (MLVU2019)
  • 2019.02.27
  • www.youtube.com
slides: https://mlvu.github.io/lectures/41.DeepLearning1.annotated.pdfcourse materials: https://mlvu.github.ioThis lecture builds on the explanation of backp...
 

8 Вероятность 2: максимальное правдоподобие, смешанные модели Гаусса и максимизация ожидания (MLVU2019)



8 Вероятность 2: максимальное правдоподобие, смешанные модели Гаусса и максимизация ожидания (MLVU2019)

Этот раздел видео посвящен вероятностным моделям для оценки плотности с использованием оценки максимального правдоподобия, нормальных распределений, смешанных моделей Гаусса и алгоритма максимизации ожидания. Докладчик объяснил принцип максимального правдоподобия и показал его применение при выборе наилучшей вероятностной модели. Они исследовали нормальное распределение, объяснили разницу между функциями вероятности и плотности вероятности и представили модели гауссовой смеси. Докладчик также обсудил метод выборки из одномерного и многомерного нормального распределения и то, как модель гауссовой смеси помогает идентифицировать различные кластеры в популяции. Кроме того, был представлен алгоритм максимизации ожиданий, чтобы подогнать гауссовские смешанные модели к наборам данных. Докладчик также объяснил, как формализовать подход максимизации ожидания с использованием аппроксимации функции Q, и доказал, что он сходится к локальному оптимуму.

В этом видео рассматриваются темы максимального правдоподобия, гауссовых смешанных моделей и максимизации ожидания (EM). Докладчик объясняет алгоритм EM, его доказательство и почему он сходится. Они также обсуждают М-шаг, где они максимизируют L, выбирая тета, сохраняя Q фиксированным. Подгонка смешанной модели Гаусса к данным требует использования алгоритма EM, и докладчик объясняет его приложения, такие как кластеризация и исследовательский анализ, а также то, как его можно использовать для классификации путем подгонки смешанной модели Гаусса к каждому классу. В видео также упоминается предстоящая лекция о подгонке вероятностных моделей к сложным нейронным сетям.

  • 00:00:00 В этом разделе видео спикер представляет концепцию использования вероятностных моделей для оценки плотности путем подгонки вероятностных распределений к данным. Они уделяют особое внимание оценке максимального правдоподобия и применяют ее к четырем различным моделям, основанным на нормальном или гауссовском распределении. В видео также представлен пример использования принципа максимального правдоподобия для определения того, какая монета использовалась в случайной последовательности из 12 подброшенных монет, где одна монета согнута, а другая прямая. Затем они вводят смешанную модель Гаусса, которая является мощной, но сложной моделью для подбора с использованием максимального правдоподобия, и погружаются в алгоритм максимизации ожидания как способ подбора смешанных моделей Гаусса.

  • 00:05:00 В этом разделе объясняется принцип максимального правдоподобия, который используется при выборе модели для машинного обучения. Он включает в себя подгонку модели к наблюдаемым данным, чтобы выбрать модель с наибольшей вероятностью предоставления этих данных. Логарифм вероятности обычно берется для простоты, и это монотонная функция, которая не изменится там, где функция достигает своей высшей точки. Также вводятся нормальные распределения со средним значением и дисперсией или стандартным отклонением в качестве параметров, и они используются в различных моделях, включая регрессионные и многомерные нормальные распределения. Смешанные модели Гаусса также обсуждаются как комбинация нескольких нормальных распределений.

  • 00:10:00 В этом разделе спикер обсуждает различные типы распределений и важность наличия определенной шкалы, которую обеспечивают нормальные распределения. Докладчик также обращается к разнице между функциями вероятности и функциями плотности вероятности, подчеркивая, что отдельные события имеют плотность вероятности, и вероятность получается путем интегрирования по этой плотности. Затем оратор представляет формулу нормального распределения и показывает, как она обеспечивает выполнение фундаментального требования наличия определенного масштаба за счет экспоненциального убывания. Формула дополнительно улучшена за счет добавления квадрата члена, который еще больше ускоряет затухание.

  • 00:15:00 В этом разделе видео ведущий объясняет, как создать функцию плотности вероятности нормального распределения путем масштабирования и перемещения базовой функции. Он показывает, как можно использовать точки перегиба, чтобы поместить массу вероятности туда, где она больше всего нужна, и как контролировать размер шкалы, а также как перемещать функцию, чтобы скорректировать среднее значение. Наконец, он обсуждает оценку параметров по максимальному правдоподобию для создания нормального распределения по данным.

  • 00:20:00 В этом разделе докладчик обсуждает оценку максимального правдоподобия и ее применение для нахождения высшей точки в вероятностном пространстве. Они представляют цель максимизировать сумму логарифма вероятностей для параметров одномерного гауссовского распределения. Затем они берут производную по среднему значению и решают ее для максимума. Они обнаружили, что оценка максимального правдоподобия для среднего значения нормального распределения — это просто среднее значение данных, и тот же подход можно применить к нахождению стандартного отклонения для всех этих функций. Докладчик также упоминает о существовании аналитического решения для нахождения оптимума.

  • 00:25:00 В этом разделе видео обсуждается предположение о нормальности в регрессии по методу наименьших квадратов. Модель предполагает, что данные генерируются путем добавления небольшого количества шума к линии, а распределение вероятностей данных можно рассматривать как нормальное распределение. Чтобы максимизировать вероятность параметров линейной модели, они должны максимизировать вероятность Y при заданных X, W и B. При заполнении этого уравнения и вычислении логарифма нормализующая часть исчезает, а оставшаяся функция аналогична наименьшей целевая функция квадратов. Также обсуждается многомерное распределение со средним значением в начале координат и экспоненциально убывающей плотностью вероятности по мере увеличения расстояния.

  • 00:30:00 В этом разделе докладчик обсуждает использование линейного преобразования для перемещения единичного круга, который содержит большую часть вероятностной массы нормализованной колоколообразной кривой, вокруг в пространстве, чтобы соответствовать данным. Линейное преобразование определяет матрицу и вектор T, которые применяются к единичной окружности, которая сначала нормализуется, чтобы вычислить и разделить на нее общий объем под кривой. Применение этого преобразования растягивает круг в определенном направлении и увеличивает плотность вероятности. Чтобы исправить это, определитель матрицы делится на увеличенный объем, чтобы получить плотность вероятности конкретной точки под преобразованной гауссианой.

  • 00:35:00 В этом разделе спикер обсуждает метод выборки из нестандартного одномерного нормального распределения с заданным средним и сигмой. Для этого можно выбрать x из стандартного нормального распределения, умножить его на дисперсию и добавить среднее значение, чтобы получить выборку из желаемого распределения. Точно так же выборка из многомерного нормального распределения с заданным средним значением и сигмой включает в себя разложение сигмы, выборку из стандартного распределения и применение линейного преобразования. Докладчик также вводит понятие смешанной модели Гаусса, которое будет в центре обсуждения после перерыва. Докладчик использует пример распределения оценок, чтобы проиллюстрировать концепцию различных совокупностей в выборке.

  • 00:40:00 В этом разделе спикер обсуждает смешанную модель Гаусса и то, как она может помочь идентифицировать различные кластеры в популяции. Создав три отдельных нормальных распределения с разными весами и масштабированием, результирующая функция плотности вероятности будет иметь три пика или моды. Чтобы подогнать эту модель к данным, цель максимального правдоподобия используется для определения наилучших параметров смешанной модели Гаусса. Хотя в некоторых случаях градиент может быть полезен, работать с ним непросто из-за суммы внутри логарифма. Вместо этого используется алгоритм максимизации ожидания, аналогичный алгоритму кластеризации k-средних, для нахождения оптимальной кластеризации данных.

  • 00:45:00 В этом разделе видео обсуждается использование смешанных моделей Гаусса, которые, по сути, представляют собой модель со скрытыми переменными, которая включает выборку набора случайных значений и ее использование для выборки значения X из разных компонентов с их соответствующими весами. Однако проблема в том, что наблюдаются только значения X, а значения Z скрыты. Решение состоит в использовании алгоритма максимизации ожиданий (EML), который итерирует процесс случайного предположения для компонентов, назначения мягких обязанностей каждой точке, подгонки распределений к подмножествам данных и вывода распределения по заданным значениям с учетом заданных значений. значения Х. Благодаря этому итеративному процессу алгоритм может оценить параметры модели и максимизировать вероятность данных.

  • 00:50:00 В этом разделе видео обсуждается алгоритм максимизации ожидания (EM), который используется для подбора гауссовых смешанных моделей к наборам данных, где некоторые точки важнее других. Алгоритм работает, сначала назначая мягкие обязанности каждой точке, что означает, что каждая точка несет некоторую долю ответственности от каждого компонента. Эти обязанности затем используются для подгонки модели Гаусса к взвешенному набору данных, где среднее значение и дисперсия рассчитываются с использованием взвешенных средних и дисперсий. Процесс повторяется через этапы ожидания и максимизации, пока не будет достигнуто хорошее соответствие. На видео показана визуализация этого процесса, демонстрирующая, как модель смещается в сторону более важных точек, пока не будет найдено хорошее соответствие.

  • 00:55:00 В этом разделе спикер обсуждает формализацию интуитивной природы максимизации ожидания и как доказать, что она сходится к локальному оптимуму. Используя функции Q в качестве аппроксимаций истинного правдоподобия, функцию правдоподобия можно разложить на два члена: дивергенцию KL и функцию L, которая измеряет, насколько хорошим является приближение. Логарифмируя эти члены, выступающий показывает, что функция L может быть вычислена путем вычитания логарифма аппроксимированного набора Q из логарифма набора функций правдоподобия при заданных оптимальных параметрах. Это разложение полезно для понимания и доказательства сходимости подхода максимизации ожидания.

  • 01:00:00 В этом разделе спикер обсуждает доказательство алгоритма EM и почему он сходится. Показано, что путем перестановки совместного распределения и условного распределения математическое ожидание логарифма x при заданном тета может быть записано как константа относительно Q. Затем докладчик объясняет, как переопределить алгоритм EM с точки зрения дивергенции KL и выбор подсказки с учетом некоторых данных и произвольной тета, чтобы сделать расхождение KL равным 0 при сохранении фиксированных данных, что приводит к тому, что L покрывает все пространство и достигается максимальная вероятность.

  • 01:05:00 В этом разделе спикер объясняет М-шаг, когда они максимизируют L, выбирая тета, чтобы максимизировать L, сохраняя Q фиксированным. Они объясняют, как этот шаг приводит к увеличению вероятности и почему итерация E/M постоянно увеличивает вероятность. Докладчик также объясняет, как они могут преобразовать M-шаг в цель максимизации и получить оценки максимального правдоподобия для алгоритма максимизации ожидания. Они обсуждают приложения этого метода, такие как кластеризация и исследовательский анализ, и то, как его можно использовать для классификации путем подгонки смешанной модели Гаусса к каждому классу.

  • 01:10:00 В этом разделе спикер обсуждает смешанные модели Гаусса и то, как они могут принимать разные формы, что делает их намного более мощными, чем нормальные распределения. Подгонка смешанной модели Гаусса к данным требует использования алгоритма максимизации ожидания, поскольку не существует аналитического решения в закрытой форме для подбора максимального правдоподобия. Однако после того, как модель подобрана, ее можно использовать по-разному, например, используя базовый классификатор для классификации новых точек на основе их плотности вероятности. На следующей лекции спикер планирует обсудить модели скрытых переменных в нейронных сетях и то, как подогнать вероятностные модели к сложным нейронным сетям.
8 Probability 2: Maximum Likelihood, Gaussian Mixture Models and Expectation Maximization (MLVU2019)
8 Probability 2: Maximum Likelihood, Gaussian Mixture Models and Expectation Maximization (MLVU2019)
  • 2019.03.01
  • www.youtube.com
slides: https://mlvu.github.io/lectures/42.ProbabilisticModels2.annotated.pdfcourse materials: https://mlvu.github.ioWe return to the subject of probability,...