Митасов Андрей Павлович :
другие произведения.
Металоция неведомого. Модуль С. Структуры
Самиздат:
[
Регистрация
] [
Найти
] [
Рейтинги
] [
Обсуждения
] [
Новинки
] [
Обзоры
] [
Помощь
|
Техвопросы
]
Ссылки:
Школа кожевенного мастерства: сумки, ремни своими руками
Комментарии: 3, последний от 18/02/2024.
© Copyright
Митасов Андрей Павлович
(
apm@tut.by
)
Размещен: 18/02/2024, изменен: 24/11/2024. 963k.
Статистика.
Эссе
:
Философия
,
Естествознание
,
Изобретательство
Металоция неведомого
Иллюстрации/приложения: 9 шт.
Ваша оценка:
не читать
очень плохо
плохо
посредственно
терпимо
не читал
нормально
хорошая книга
отличная книга
великолепно
шедевр
Аннотация:
Выжимка информации из Инета по структурам нейросетей.
Предварительный анализ.
Крайнее изменение 24.11.2024
"Следует стремиться увидеть в каждой вещи то,
чего еще никто не видел и над чем еще никто не думал."
"Кто не понимает ничего, кроме химии, тот и её понимает недостаточно."
"Изучай все не из тщеславия, а ради практической пользы."
Георга Кристоф Лихтенберг.
Оглавление:
Вместо предисловия.
Зоопарк нейронных сетей.
Структуры нейросетей для задач компьютерного зрения.
Структуры нейросетей для задач визуального детектирования.
Структуры нейронок YOLO.
Пошаговый разбор работы трансформера.
Структура сети ViT.
Структура сети Swin.
Сверточная сеть "для чайников".
И еще немного сверточных сетей.
И снова трансформеры.
Что общего между структурным мышлением и структурой нейросетей?
Inductive bias в нейронных сетях.
Двоичные нейронные сети "для чайников".
Насколько реально обучение BNN методом сплошного перебора?
KAN - это новая эра глубокого обучения?
Еще "немного" о попытках трансформировать трансформеры.
"Возвращение рекуррентного короля"?
Метод автономного адаптивного управления.
А как сейчас проектируются бинарные нейросети?
"Лакмусовая бумажка" уровня понимания существующих нейросетей.
Аналоговые решения для дискретных нейросетей.
Возвращение троичной логики?
Абсолютная экзотика - оптические нейронные сети (ОНС).
Очередная "новая модель нейрона".
Можно ли обойтись без перемножения матриц?
Введение в графовые нейросети.
"Звонок другу" по теме графовых нейросетей.
Нейросеть на 8-битном микроконтроллере.
Хороший обзор о "возвращении короля (RNN)".
Кто Вы такая - Mamba?
Иллюстрации:
Тральщик "Наставник" от "Модели Kandinsky 2.1".
Тральщики "Наставник" от "Модели Kandinsky 3.0".
Тральщик "Наставник" от "Модели Kandinsky 3.01".
Тральщик "Наставник" от "Модели Kandinsky 3.1".
"Графовые сети" от Copilot.
==========
17.02.2024 19:03
Вместо предисловия.
В оглавление.
Этот модуль задуман как учебный и исследовательский материал
по анализу предлагавшихся ранее и используемых в настоящее время
структур нейросетей и Используемых в них архитектурных и композиционных решений.
Безусловно, при чтении его предполагается какое-то минимальное представление/знание
начальных азов "нейросетевых наук".
Если с этим есть какие-то затруднения, то можно начать с материалов,
расположенных в "Модуле Л. Ликбез.", например, см.:
"Нейронная сеть простыми словами."
"Структуры нейросетей простыми словами."
"Трансформеры простыми словами."
Цели этого модуля не совсем традиционные, предполагается,
что основное внимание будет уделяться
не столько особенностям конструирования/архитектуры нейросетей.
Хотя сейчас это становится все более актуальным, так как в дополнение
к "стандартным" нейронкам начинают разрабатываться и другие структуры,
использующие эти стандартные модели уже как "строительные блоки"
для создания специализированных систем, например, см.:
"Режем, клеим, дообучаем - нейросеть собираем."
Этому направлению, конечно, тоже будет уделено внимание,
но все-таки основная цель модуля в другом.
Хочется, анализируя различные архитектуры,
попытаться понять внутреннюю механику работы нейросетей,
возможности улучшения процессов/методов их обучения
и, самое главное, с другой стороны попытаться подступиться
к пониманию "внутреннего пространства эмбеддингов" нейросетей, подробнее см.:
"Каково же оно "пространство эмбеддингов" нейронки?"
Представляется, что понимание "пространства эмбеддингов" нейросетей
будет более надежным ориентиром/инструментом в конструировании
различных новых архитектур нейросетей,
чем простое "полушаманское"/"полуэвристическое" манипулирование блоками и элементами,
как это, большей частью, происходит сейчас.
=========
15.01.2024 8:58
Зоопарк нейронных сетей.
В оглавление.
Погружение в структуры современных нейросетей, наверно,
стоит начать с экскурса по своеобразной "кунсткамере",
сравнительного обзора целых направлений нейросетей,
которые предлагались в "дотрансформерную эпоху".
Часть из этих конструкций достаточно активно используется и развивается,
а часть уже "канула в Лету".
Но какие-то идеи, лежащие в основание этих структур,
наверно, все-таки еще проявятся в той или иной форме:
"Зоопарк архитектур нейронных сетей. Часть 1"
Автор: xopxe
https://habr.com/ru/companies/wunderfund/articles/313696/
.
26 окт 2016 в 19:44
Автор оригинала: FJODOR VAN VEEN
http://www.asimovinstitute.org/neural-network-zoo/
//// Начало цитирования.
......
За всеми архитектурами нейронных сетей,
которые то и дело возникают последнее время,
уследить непросто.
Даже понимание всех аббревиатур, которыми бросаются профессионалы,
поначалу может показаться невыполнимой задачей.
Поэтому я решил составить шпаргалку по таким архитектурам.
Большинство из них - нейронные сети,
но некоторые - звери иной породы.
Хотя все эти архитектуры подаются как новейшие и уникальные,
когда я изобразил их структуру,
внутренние связи стали намного понятнее.
У изображения нейросетей в виде графов есть один недостаток:
граф не покажет, как сеть работает.
Например, вариационный автоэнкодер (variational autoencoders, VAE)
выглядит в точности как простой автоэнкодер (AE),
в то время как процесс обучения у этих нейросетей совершенно разный.
Сценарии использования различаются еще сильнее:
в VAE на вход подается шум,
из которого они получают новый вектор,
в то время как AE просто находят для входных данных
ближайший соответствующий вектор из тех,
что они "помнят".
Добавлю еще, что этот обзор не имеет цели объяснить
работу каждой из топологий изнутри
(но это будет темой одной из следующих статей).
Следует отметить, что не все (хотя и большинство)
из используемых здесь сокращений общеприняты.
Под RNN иногда понимают рекурсивные нейронные сети
(recursive neural networks),
но обычно эта аббревиатура означает рекуррентную нейронную сеть
(recurrent neural network).
Но и это еще не все:
во многих источниках вы встретите RNN как обозначение
для любой рекуррентной архитектуры,
включая LSTM, GRU и даже двунапраленные варианты.
Иногда похожая путаница происходит с AE:
VAE, DAE и им подобные могут называть просто AE.
Многие сокращения содержат разное количество N в конце:
можно сказать "сверточная нейронная сеть"
- CNN (Convolutional Neural Network),
а можно и просто "сверточная сеть" - CN.
Составить полный список топологий практически невозможно,
так как новые появляются постоянно.
Даже если специально искать публикации,
найти их может быть сложно,
а некоторые можно просто упустить из виду.
Поэтому, хотя этот список поможет вам создать представление
о мире искусственного интеллекта,
пожалуйста, не считайте его исчерпывающим,
особенно, если читаете статью спустя долгое время после ее появления.
Для каждой из архитектур, изображенной на схеме,
я привел очень короткое описание.
Некоторые из них будут полезны,
если вы хорошо знакомы с несколькими архитектурами,
но не знакомы конкретно с этой.
Сети прямого распространения (Feed forward neural networks, FF or FFNN)
и перцептроны (perceptrons, P) очень просты
- они передают информацию от входа к выходу.
Считается, что у нейронных сетей есть слои,
каждый из которых состоит из входных, скрытых или выходных нейронов.
Нейроны одного слоя между собой не связаны,
при этом каждый нейрон этого слоя связан с каждым нейроном соседнего слоя.
Простейшая мало-мальски рабочая сеть состоит из двух входных
и одного выходного нейрона
и может моделировать логический вентиль
- базовый элемент цифровой схемы, выполняющий элементарную логическую операцию.
FFNN обычно обучают методом обратного распространения ошибки,
подавая модели на вход пары входных и ожидаемых выходных данных.
Под ошибкой обычно понимаются различные степени отклонения выходных данных
от исходных (например, среднеквадратичное отклонение
или сумма модулей разностей).
При условии, что сеть обладает достаточным количеством скрытых нейронов,
теоретически она всегда сможет установить связь
между входными и выходными данными.
На практике использование сетей прямого распространения ограничено,
и чаще они используются совместно с другими сетями.
Rosenblatt, Frank. "The perceptron: a probabilistic model
for information storage and organization in the brain."
Psychological review 65.6 (1958): 386.
> Original Paper PDF
http://www.ling.upenn.edu/courses/cogs501/Rosenblatt1958.pdf
Сети радиально-базисных функций (radial basis function, RBF)
- это FFNN с радиально-базисной функцией в качестве функции активации.
Больше здесь нечего добавить.
Мы не хотим сказать, что она не используется,
но большинство FFNN с другими функциями активации
обычно не выделяют в отдельные группы.
Broomhead, David S., and David Lowe. Radial basis functions,
multi-variable functional interpolation and adaptive networks.
No. RSRE-MEMO-4148. ROYAL SIGNALS AND RADAR ESTABLISHMENT MALVERN
(UNITED KINGDOM), 1988.
> Original Paper PDF
http://www.dtic.mil/cgi-bin/GetTRDoc?AD=ADA196234
Нейронная сеть Хопфилда - полносвязная сеть
(каждый нейрон соединен с каждым),
где каждый нейрон выступает во всех трех ипостасях.
Каждый нейрон служит входным до обучения,
скрытым во время него и выходным после.
Матрица весов подбирается таким образом,
чтобы все <запомненные> вектора являлись бы для нее собственными.
Однажды обученная одному или нескольким образам
система будет сходиться к одному из известных ей образов,
потому что только одно из этих состояний является стационарным.
Отметим, что это не обязательно соответствует желаемому состоянию
(к сожалению, у нас не волшебный черный ящик).
Система стабилизируется только частично из-за того,
что общая "энергия" или "температура" сети во время обучения
постепенно понижается.
Каждый нейрон обладает порогом активации,
соизмеримым с этой температурой,
и если сумма входных данных превысит этот порог,
нейрон может переходить в одно из двух состояний
(обычно -1 или 1, иногда 0 или 1).
Узлы сети могут обновляться параллельно,
но чаще всего это происходит последовательно.
В последнем случае генерируется случайная последовательность,
которая определяет порядок,
в котором нейроны будут обновлять свое состояние.
Когда каждый из нейронов обновился и их состояние больше не изменяется,
сеть приходит в стационарное состояние.