Александр Чичулин "Нейросети. Раскройте всю мощь нейронных сетей: полное руководство по пониманию, внедрению ИИ"

None

date_range Год издания :

foundation Издательство :Издательские решения

person Автор :

workspaces ISBN :9785006012592

child_care Возрастное ограничение : 999

update Дата обновления : 09.06.2023

4. Масштабирование функций:

– Масштабирование признаков гарантирует, что числовые объекты находятся в аналогичном масштабе, не позволяя одним объектам доминировать над другими из-за различий в величинах.

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

5. Уменьшение размерности:

– Методы уменьшения размерности уменьшают количество входных элементов, сохраняя при этом важную информацию.

– Анализ главных компонент (PCA) и t-SNE (t-распределенное стохастическое встраивание соседей) являются популярными методами уменьшения размерности.

– Уменьшение размерности может помочь смягчить проклятие размерности и повысить эффективность обучения.

6. Сплит и перекрестная проверка обучения-тестирования:

– Чтобы оценить производительность нейронной сети, важно разделить данные на обучающий и тестовый наборы.

– Обучающий набор используется для обучения сети, а тестовый – для оценки ее производительности на невидимых данных.

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

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

Обработка отсутствующих данных

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

1. Удаление отсутствующих данных:

– Одним из простых подходов является удаление экземпляров или объектов, содержащих отсутствующие значения.

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

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

2. Среднее/медианное условное исчисление:

– Среднее или медианное условное исчисление предполагает замену отсутствующих значений средним или медианным значением соответствующего признака.

– Этот метод предполагает, что отсутствующие значения отсутствуют случайным образом (MAR), а непропущенные значения обладают теми же статистическими свойствами.

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

3. Регрессионное вменение:

– Регрессионное условное исчисление предполагает прогнозирование пропущенных значений с использованием регрессионных моделей.

– Регрессионная модель обучается на непропущенных значениях, а затем модель используется для прогнозирования отсутствующих значений.

– Этот метод фиксирует взаимосвязи между отсутствующим признаком и другими признаками, что позволяет более точно вменить.

– Тем не менее, он предполагает, что отсутствие функции может быть разумно предсказано другими переменными.

4. Множественное вменение:

– Множественное условное исчисление – это метод, при котором отсутствующие значения вменяются несколько раз для создания нескольких полных наборов данных.

– Каждому набору данных присваиваются различные правдоподобные значения, основанные на наблюдаемых данных и их неопределенности.

– Затем нейронная сеть обучается на каждом вмененном наборе данных, и результаты объединяются для получения более надежных прогнозов.

– Множественное условное исчисление объясняет неопределенность в условном исчислении недостающих значений и может привести к более надежным результатам.

5. Выделенные архитектуры нейронных сетей:

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

– Например, замаскированный автоэнкодер для оценки распределения (MADE) и автоэнкодер шумоподавления (DAE) могут обрабатывать пропущенные значения во время обучения и вывода.

– Эти архитектуры учатся восстанавливать отсутствующие значения на основе имеющейся информации и могут обеспечить повышенную производительность наборов данных с отсутствующими данными.

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

Работа с категориальными переменными

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

1. Кодирование этикетки:

– Кодировка меток присваивает уникальную числовую метку каждой категории в категориальной переменной.

– Каждая категория сопоставляется с целочисленным значением, что позволяет нейронным сетям обрабатывать данные.

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

2. Одногорячее кодирование:

– Одноразовое кодирование – популярный метод представления категориальных переменных в нейронной сети.

– Каждая категория преобразуется в двоичный вектор, где каждый элемент представляет наличие или отсутствие определенной категории.

– Однотонная кодировка гарантирует, что каждая категория представлена одинаково, и удаляет любые подразумеваемые порядковые отношения.

– Это позволяет нейронной сети рассматривать каждую категорию как отдельную функцию.

3. Встраивание:

– Встраивание – это метод, который изучает низкоразмерное представление категориальных переменных в нейронной сети.

– Он сопоставляет каждую категорию с плотным вектором непрерывных значений, при этом аналогичные категории имеют векторы, расположенные ближе в пространстве внедрения.

– Встраивание особенно полезно при работе с многомерными категориальными переменными или когда отношения между категориями важны для задачи.

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

4. Встраивание сущностей:

– Встраивание сущностей – это специализированная форма внедрения, использующая преимущества связей между категориями.

– Например, в рекомендательных системах встраивание сущностей может представлять категории пользователей и элементов в совместном пространстве внедрения.

– Встраивание сущностей позволяет нейронной сети изучать отношения и взаимодействия между различными категориями, повышая ее предсказательную силу.

5. Хеширование функций:

– Хеширование признаков, или трюк с хешированием, – это метод, который преобразует категориальные переменные в векторное представление фиксированной длины.

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

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

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

Часть II: Построение и обучение нейронных сетей

Нейронные сети с прямой связью

Структура и принципы работы

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

1. Нейроны:

– Нейроны являются основными строительными блоками нейронных сетей.

– Они принимают входные сигналы, выполняют вычисления и выдают выходные сигналы.

– Каждый нейрон применяет линейное преобразование ко входу, за которым следует нелинейная функция активации для введения нелинейности.

2. Слои:

– Нейронные сети состоят из нескольких слоев взаимосвязанных нейронов.

– Входной слой получает входные данные, выходной слой создает окончательные прогнозы, и между ними может быть один или несколько скрытых слоев.

– Скрытые слои позволяют сети изучать сложные представления данных, извлекая соответствующие функции.

3. Веса и смещения:

– Каждая связь между нейронами в нейронной сети связана с весом.

– Веса определяют силу связи и контролируют влияние выхода одного нейрона на вход другого.

– Смещения – это дополнительные параметры, связанные с каждым нейроном, позволяющие им вносить сдвиг или смещение в вычисления.

4. Функции активации:

– Активационные функции привносят нелинейность в вычисления нейронов.

– Они определяют, следует ли активировать нейрон или нет, основываясь на его входе.

– Общие функции активации включают сигмоид, tanh, ReLU (выпрямленный линейный блок) и softmax.

5. Распространение с прямой связью:

– Распространение с прямой связью – это процесс передачи входных данных через слои сети для создания прогнозов.

– Каждый слой выполняет вычисления на основе входных данных, полученных от предыдущего слоя, применяя веса, смещения и функции активации.

– Выходы одного слоя служат входными данными для следующего слоя, продвигаясь по сети до тех пор, пока не будут получены окончательные прогнозы.

6. Обратное распространение:

– Обратное распространение – алгоритм, используемый для обучения нейронных сетей.

– Он вычисляет градиенты функции потерь по отношению к весам и смещениям сети.

– Градиенты указывают направление и величину самого крутого спуска, направляя обновления параметров сети для минимизации потерь.

Похожие книги


Все книги на сайте предоставены для ознакомления и защищены авторским правом