Конспект лекций Белой / Разработка ИИ. Конспект лекции №5. Белая
.docxКонфигурации нейросетей и основы баз данных
Лекция охватывает два основных блока: архитектуры нейронных сетей (от простых к сложным) и введение в базы данных.
Часть 1. Элементарные конфигурации нейросетей (Базовые архитектуры)
Нейросети прямого распространения (Feed Forward Neural Networks — FFNN)
· Синонимы: Многослойный перцептрон (MLP).
· Основная идея: Это базовая линейная архитектура. Данные движутся строго в одном направлении — от входа к выходу. Циклы и обратные связи отсутствуют.
· Структура: Состоят из последовательно соединенных слоев: входной слой, один или несколько скрытых слоев, выходной слой.
· Обучение: Обычно используется метод обратного распространения ошибки (backpropagation).
· Применение: Классификация, регрессия. Часто служат базовым строительным блоком для более сложных архитектур.
Нейросеть Хопфилда (Hopfield Network — HN)
· Основная идея: Это сеть с симметричной матрицей связей. Она обладает ассоциативной памятью — может восстанавливать целые образы по их фрагментам или искаженным версиям.
· Особенность: Каждый нейрон в такой сети одновременно является и входом, и выходом (рекуррентная архитектура). В процессе работы сеть сходится к одному из устойчивых состояний (хранящимся в памяти образам).
Машина Больцмана (Boltzmann Machine — BM)
· Сходство с сетью Хопфилда: Также является рекуррентной и стохастической (вероятностной) сетью.
· Ключевое отличие: Нейроны делятся на два типа: видимые (входные и выходные) и скрытые.
· Смысл: Скрытые нейроны позволяют моделировать сложные зависимости между видимыми нейронами, выявляя глубинные закономерности в данных. Являются предшественниками более современных моделей (например, Deep Belief Networks).
Часть 2. Продвинутые конфигурации нейросетей
Сверточные нейросети (Convolutional Neural Networks — CNN)
· (Упоминаются в контексте GAN и Deconvolutional Networks)
· Назначение: Специализируются на работе с сетками данных, особенно с изображениями.
· Принцип: Используют операцию свертки (конволюции) для автоматического выделения значимых признаков (краев, текстур, форм) без необходимости ручного определения признаков. Позволяют распознавать детали изображений.
Метод опорных векторов (Support Vector Machines — SVM)
· Классификация: Хотя это не нейросеть в чистом виде, а метод машинного обучения с учителем, его часто изучают в контексте конфигураций классификаторов.
· Основная идея: Поиск оптимальной разделяющей прямой (гиперплоскости), которая не просто разделяет данные на классы, но и максимизирует зазор (отступ) между классами. Чем шире зазор, тем устойчивее и лучше обобщающая способность модели. Классический SVM работает с линейно разделимыми данными.
Остаточные сети (Residual Networks — ResNet)
· Проблема: С увеличением глубины обычных FFNN (более 20-30 слоев) возникает проблема “исчезающего градиента” — сеть перестает обучаться, точность падает.
· Решение ResNet: Добавление “остаточных” (коротких) связей (skip connections), которые перепрыгивают через один или несколько слоев.
· Принцип: Сеть учится не целевому отображению H(x), а “остатку” (разнице) F(x) = H(x) – x. Это упрощает обучение и позволяет создавать сети глубиной более 150 слоев.
· Заблуждение: Несмотря на внешнее сходство, ResNet — это не рекуррентная сеть (вроде LSTM), а особая глубокая архитектура прямого распространения.
Развертывающие нейросети (Deconvolutional Networks — DeconvNet)
· Основная идея: Это архитектура, “обратная” сверточным сетям (CNN). Если CNN преобразует изображение в вектор признаков (например, “это кошка”), то DeconvNet преобразует вектор признаков обратно в изображение.
· Принцип: Вместо свертки используется транспонированная свертка (иногда ошибочно называемая “разверткой/deconvolution”), которая увеличивает размерность данных.
· Применение: Генерация изображений, семантическая сегментация (выделение объектов на картинке), визуализация того, “чему научилась” CNN.
· Вход: На вход подается не строка, а закодированный вектор (например, [1, 0] для кота, [0, 1] для собаки).
Генеративные состязательные сети (Generative Adversarial Networks — GAN)
· Основная идея: Две нейросети соревнуются друг с другом в “игре”.
· Генератор (Generator): Создает новый контент (изображения, текст), пытаясь обмануть Дискриминатор. На вход получает случайный шум.
· Дискриминатор (Discriminator): Оценивает контент, пытаясь отличить реальные данные от подделок, созданных Генератором.
· Процесс: Это “состязание” похоже на игру между фальшивомонетчиком (генератор) и экспертом (дискриминатор). В итоге оба улучшают свои навыки.
· Сложность обучения: Критически важно правильно настроить баланс между двумя сетями, чтобы ни одна не “победила” другую слишком быстро.
Часть 3. Введение в базы данных
Что такое база данных (БД)?
Это структурированный набор данных, организованный по определенным правилам для удобного хранения, управления и доступа.
Основные (характеристики/особенности) баз данных:
· Целостность: Обеспечение точности и непротиворечивости данных.
· Независимость данных: Изменение способа хранения не требует изменения программ, работающих с БД.
· Безопасность: Защита от несанкционированного доступа.
· Минимальная избыточность: Устранение дублирования информации.
Системы управления базами данных (СУБД) — примеры:
· Реляционные: MySQL, PostgreSQL, Oracle, Microsoft SQL Server.
· Нереляционные (NoSQL): MongoDB (документная), Redis (ключ-значение), Neo4j (графовая).
Состав (компоненты) системы баз данных:
· Аппаратное обеспечение (Hardware): Серверы, диски для хранения.
· Программное обеспечение (Software): Ядро СУБД, утилиты.
· Данные (Data): Сама информация, хранящаяся в БД.
· Пользователи (Users): Администраторы, разработчики, конечные пользователи.
· Процедуры (Procedures): Правила и инструкции по работе с БД.
Основные функции СУБД:
· Управление данными во внешней памяти (на диске).
· Управление буферами оперативной памяти (кэширование).
· Журнализация и восстановление после сбоев (обеспечение надежности).
· Поддержка языков баз данных (SQL) для определения и манипуляции данными.
· Обеспечение многопользовательского доступа и блокировок.
