Нейросетевые технологии и прикладные модели машинного обучения в инфокоммуникациях
Покупка
Издательство:
Поволжский государственный технологический университет
Авторы:
Овчинников Владимир Викторович, Кислицын Алексей Александрович, Елсуков Алексей Александрович, Павлов Вячеслав Владимирович, Бастракова Марина Ивановна
Год издания: 2024
Кол-во страниц: 84
Дополнительно
Вид издания:
Практикум
Уровень образования:
ВО - Бакалавриат
ISBN: 978-5-8158-2421-8
Артикул: 858112.01.99
Издание, кроме необходимых теоретических сведений, включает описание четырех лабораторных работ в области разработки интеллектуальных систем связи, использующих аппарат нейросетевых технологий и методы машинного обучения, которые позволяют решать практические задачи в области инфокоммуникаций.
Для студентов направлений подготовки 11.04.02 и 11.03.02 «Инфокоммуникационные технологии и системы связи», а также 09.03.02 «Информационные системы и технологии».
Тематика:
ББК:
УДК:
ОКСО:
- ВО - Бакалавриат
- 09.03.02: Информационные системы и технологии
- 11.03.02: Инфокоммуникационные технологии и системы связи
- ВО - Магистратура
- 11.04.02: Инфокоммуникационные технологии и системы связи
ГРНТИ:
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов
НЕЙРОСЕТЕВЫЕ ТЕХНОЛОГИИ И ПРИКЛАДНЫЕ МОДЕЛИ МАШИННОГО ОБУЧЕНИЯ В ИНФОКОММУНИКАЦИЯХ Практикум Йошкар-Ола ПГТУ 2024
УДК 621.396.6(075.8) ББК 32.844я73 Н 46 Авторы: Овчинников В. В., Кислицын А. А., Елсуков А. А., Павлов В. В., Бастракова М. И. Р ецензенты : Григорьевых Е. А., канд. техн. наук, доцент кафедры радиотехнических и медико-биологических систем ФГБОУ ВО «Поволжский государственный технологический университет; Михайлов А. И., руководитель направления линейного цеха центра эксплуатации филиала в Республике Марий Эл ПАО «Ростелеком» Печатается по решению редакционно-издательского совета ПГТУ Н 46 Нейросетевые технологии и прикладные модели машинного обучения в инфокоммуникациях: практикум / В. В. Овчинников, А. А. Кислицын, А. А. Елсуков и др. – Йошкар-Ола: Поволжский государственный технологический университет, 2024. – 84 с. ISBN 978-5-8158-2421-8 Издание, кроме необходимых теоретических сведений, включает описание четырех лабораторных работ в области разработки интеллектуальных систем связи, использующих аппарат нейросетевых технологий и методы машинного обучения, которые позволяют решать практические задачи в области инфокоммуникаций. Для студентов направлений подготовки 11.04.02 и 11.03.02 «Инфокоммуникационные технологии и системы связи», а также 09.03.02 «Информационные системы и технологии». УДК 621.396.6(075.8) ББК 32.844я73 ISBN 978-5-8158-2421-8 В. В. Овчинников, А. А. Кислицын, А. А. Елсуков, В. В. Павлов, М. И. Бастракова, 2024 © Поволжский государственный технологический университет, 2024
ИСПОЛЬЗУЕМЫЕ СОКРАЩЕНИЯ CNN – сверточная нейронная сеть GAN – генеративная состязательная сеть LSTM – Long Short-Term Memory – долгая краткосрочная память MAE – Mean Absolute Error (средняя абсолютная ошибка) MAPE – Mean Absolute Percentage Error (средняя абсолютная процентная ошибка) RAM – Random Access Memory (оперативная память) RNN – рекуррентная нейронная сеть SNR – отношение сигнал/шум XOR – исключающее «или» ИНС – искусственная нейронная сеть КВ – короткие волны МО – машинное обучение МПЧ – максимально применимая частота НС – нейронная сеть ОРЧ – оптимальная рабочая частота РНС – рекуррентная нейронная сеть СКО – среднеквадратическое отклонение
ВВЕДЕНИЕ В современном мире большое количество задач решается программным способом. Сейчас без труда можно посчитать дифференциальное уравнение, создать точный прогноз погоды. Задачи, которые ранее считались трудновыполнимыми для человека, теперь решает компьютер. Но существуют задачи, с которыми компьютеру справиться не под силу. В связи с этим развитие получили искусственные нейронные сети (ИНС). Человеку и высшим животным буквально на каждом шагу приходится распознавать, принимать решения и обучаться. Нейросетевой подход возник из стремления понять, каким образом мозг решает столь сложные задачи, и реализовать эти принципы в автоматических устройствах. Пока искусственные нейронные сети являются лишь предельно упрощёнными аналогами естественных нейронных сетей. Нервные системы животных и человека гораздо сложнее тех устройств, которые можно создать с помощью современных технологий. Однако для успешного решения многих практических задач оказалось вполне достаточно подсмотреть лишь общие принципы функционирования нервной системы. Некоторые разновидности ИНС представляют собой математические модели, имеющие лишь отдалённое сходство с нейрофизиологией, что отнюдь не препятствует их практическому применению. В последнее время в мире огромный интерес вызывает к себе эта новая область прикладной математики, специализирующаяся на искусственных нейронных сетях. Актуальность исследований в данной области подтверждается огромным количеством самых разнообразных практических применений ИНС. Настоящий лабораторный практикум направлен на формирование навыков практической реализации и обучения нейронных сетей для решения задач машинного обучения в области инфокоммуникаций, а также представления о влиянии гиперпараметров и архитектуры.
ЧАСТЬ I. ОСНОВЫ ТЕОРИИ НЕЙРОННЫЕ СЕТИ: ТИПЫ, НАСТРОЙКИ, ОСНОВНЫЕ ИНСТРУМЕНТЫ И БИБЛИОТЕКИ 1.1. Нейронные сети Основные типы задач, которые решаются с использованием искусственных нейронных сетей (НС) – это классификация и регрессия. По сравнению с некоторыми другими методами машинного обучения, НС обладают рядом преимуществ: • возможностью самостоятельно определять значимые для решения задачи факторы; • способностью к обучению и дообучению; • устойчивостью к «шуму» в данных; • универсальностью. К недостаткам нейросети относят высокую требовательность к вычислительным ресурсам, к объемам и разнообразию обучающих данных, но вместе с тем опасность «переобучения». Кроме того, результаты, получаемые НС, с трудом поддаются объяснению с точки зрения человека. Исторически первой широко известной моделью нейронной сети стал перцептрон, в котором поступающие от датчиков сигналы передаются ассоциативным элементам, а затем реагирующим элементам. Выход перцептрона – это линейная комбинация значений на его входах (xi) и соответствующих весов в «связях» (ωi) – модель классического перцептрона представлена на рисунке 1. Используемые в настоящее время НС, как правило, имеют входной слой, выходной слой и произвольное количество промежуточных (скрытых) слоёв.
Рисунок 1. Модель классического перцептрона В современных НС узлами являются искусственные нейроны, распределённые по слоям НС. Нейроны фактически реализуют некоторую математическую функцию (функцию активации) от линейной комбинации всех входных сигналов. Полученный результат пересылается на единственный имеющийся у нейрона выход. Нейроны классифицируют на основе их положения в топологии сети: входные, выходные (таковой часто один) и нейроны в промежуточных слоях. В большинстве классических архитектур НС связи имеются только между нейронами предыдущего и последующего слоев, но не внутри слоя. 1.2. Настройки нейросетевой модели В отличие от других алгоритмов машинного обучения, где главной составляющей успеха является выбор входных параметров, при создании нейросетевой модели основной задачей ИИ инженера является подбор характеристик НС. Хотя в последнее время появились алгоритмы, способные к автоматизированному подбору таких характеристик, они обладают высокой вычислительной сложностью, поэтому опыт инженера по-прежнему востребован. К характеристикам НС относят: Собственно коэффициенты модели (параметры). Их итоговые значения устанавливаются алгоритмом обучения НС, который оптимизирует их так, чтобы итоговая ошибка модели была минимальной. Тем
не менее, важным моментом может быть инициализация – определение начальных значений параметров, которая позволили бы более быстрое выполнение алгоритма (сокращая время обучения). Одной из стратегий инициализации является «перенос знаний» (transfer learning) из существующих моделей. Например, имеющаяся НС, обученная предсказывать возраст людей по фотографиям лиц, может быть доработана для распознавания выражаемых эмоций. Ещё одна из возможных стратегий при построении НС – нормализация данных, т.е. приведение входных значений к одинаковой шкале и диапазону, например [0;1]. Гиперпараметры – в отличие от параметров модели, они не изменяются в ходе работы алгоритма машинного обучения и, следовательно, должны быть обоснованно выбраны инженером. К основным гиперпараметрам относят: Количество скрытых слоёв. Чем оно меньше, тем быстрее работает НС, однако чем оно больше, тем качественнее НС может решать сложные задачи. При его выборе инженер может либо руководствоваться теоретическими соображениями (например, о структурах головного мозга человека, отвечающих за распознавание визуальной информации), либо начать с небольшого количества слоёв, постепенно увеличивая их, пока качество модели не перестанет увеличиваться. Функция активации. Это функция, которая вычисляет выходное значение нейрона на основе линейной комбинации входных параметров. Часто используемые функции – это Sigmoid, Tanh и ReLU (рис. 2). Например, из них RELU обладает наименьшей вычислительной сложностью. Поэтому часто она применяется во всех внутренних слоях, в то время как выходной слой использует более сложную функцию Sigmoid. Алгоритм оптимизации, задающий «движение» к оптимуму. Классическим вариантом является Stochastic Gradient Descent (SGD), который минимизирует потери на основе градиента, выбирая на каждой итерации обучающие данные случайным образом. В настоящее время более прогрессивными считаются алгоритмы RMSProp (отличается от SGD тем, что у каждого параметра адаптируемая скорость обучения) и Adam Optimizer (позволяет устанавливать гиперпараметры НС).
Рисунок 2. Примеры функций активации Скорость обучения. Размер «шага» на каждой итерации алгоритма, стремящегося к минимизации функции потерь. Слишком большой шаг ведёт к повышению риска, что алгоритм «промахнётся» мимо оптимума, а слишком маленький – к увеличению времени обучения НС. В настоящее время существуют алгоритмы, способные с определённым успехом варьировать этот шаг в зависимости от «кривизны» функции потерь в текущей точке. Эпохи обучения. Отражает заданную продолжительность обучения НС. Может задаваться инженером исходя из вычислительной сложности модели, но может и определяться алгоритмом. Например, обучение может автоматически останавливаться в случае, когда ошибка (значение функции потерь) перестаёт уменьшаться в течение какого-либо количества эпох. Архитектуры – это то, как организованы слои в НС и установлены связи между нейронами. В настоящее время для решения реальных задач наиболее популярны две архитектуры: • свёрточные; • рекуррентные. Свёрточные НС (CNN) – приобрели популярность для многих задач, связанных с распознаванием изображений. CNN представляет
собой чередование свёрточных слоёв (обрабатывает предыдущий слой по фрагментам – например, «окнами» 8*8 клеток) и субдискретезирующих слоёв («уплотняет» фрагменты предыдущего слоя, уменьшая их размер). Такой подход является чрезвычайно прогрессивной альтернативой попиксельному распознаванию изображений. К недостаткам CNN относят значительное количество гиперпараметров сети (количество слоёв, шаг сдвига ядра при обработке слоя, необходимость слоёв субдискретизации, степень уменьшения ими размерности, функция по уменьшению размерности и др.), значения которых в основном приходится подбирать «творчески». Рекуррентные НС (RNN) – наиболее широко подходят для решения задач, связанных с распознаванием каких-либо последовательностей: голосовых, текстовых, музыкальных и т.п. RNN отличаются наличием памяти: можно сказать, что нейроны запоминают свои предыдущие ответы и при следующем запуске используют их как дополнительные входные данные. Для ограничения роста количества связей применяются алгоритмы, осуществляющие сброс запомненных значений («забывание»). Тем не менее, для обучения RNN требуются очень значительные вычислительные ресурсы (помимо значительного количества обучающих данных). Также новинкой в области архитектур НС (предложенной в 2014 году) являются генеративно-состязательные сети (GAN), способные к обучению без учителя. Основным принципом в таком алгоритме является наличие двух НС, одна из которых генерирует образцы, а другая (дискриминативная) старается отличить правильные образцы от неправильных. Генеративная сеть работает на основе смешивания нескольких исходных образцов (имеющихся данных) и стремится повысить процент ошибок второй сети. Дискриминативная сеть обучается различать подлинные и поддельные образцы, а результаты различения подаются на вход генеративной сети, чтобы она могла подправить входной набор латентных параметров. С использованием данной технологии были, в частности, сгенерированы фотографии людей, которые неотличимы от настоящих.