Что может быть интереснее DeepSearch? Разумеется, приложения пучков в нейронках и теории оригами.
А действительно ли есть полезные применения пучков?
Зависит от того, что мы понимаем под полезными.
Обзор содержит широкое описание приложений в разных областях, в частности для интуиционистской логике, лямбда-исчисления, вычислительной линвистики, для теории ТДА итд. Но здесь я сфокусируюсь на примерах из ML/DS.
Одним из первых применять пучки к обработке данных предложил Роберт Грист (советую его топовое введение в прикладную топологию). В 2013 он применял пучки к задачам, связанным с потоками в сетях. Далее, Карри концептуально развил направление пучков и ко-пучков на клеточных комплексах, что легко в основу современных приложений.
Нейронные пучки. Архитектура графовой свёрточной сети (GCN) с индуктивным смещением на основе пучков - Sheaf Neural Networks впервые была предложена Гебхардом (соавтор обзора), однако он не "выучивает" пучок, т.е. не подбирает restriction map на основе цели обучения, а просто "вручную" инициализирует restriction map. Мне кажется, что отдельная важная тема исследований - поиск хорошего способа инициализации restriction map без обучения на основе знаний из предметной области.
🇹🇫🔥Направление дизайна пучковых DNN архитектур расширили Боднар и Бронштейн, предложив архитектуру Neural Sheaf Diffusion (NSD), где restriction map F (почти честно, но нет) выучиваются через диффузию. Они показали, что NSD с лапласианом пучка выразительнее GCN с обычным лапласином графа, NSD также решает важную (так принято считать в комьюнити, на самом деле, это дискуссионный вопрос, есть ли такая проблема, я к этому скептичен) проблему работы с гетерофильными графами. Это подробно изложено в must-read диссертации Боднара, советую его почитать, это пример по-настоящему крутой диссертации. В итоге, они открыли бездну в мир нейро-пучков и их модификаций, и тут понеслось...
Далее Барберо комбинирует способы получения пучка, сначала он строит отображения на основе данных детерминированным способом как Гебхард, а потом доучивает как Боднар, в итоге лучше перформанса в задаче классификации узлов.
В статье Sheaf Attention Network предложено добавлять в пучки на графах механизм внимания. В борьбе с овер-параметризацией в Bundle Neural Networks предлагается заменить пучок на векторные расслоения. Пучки также определяются и на гиперграфах - Sheaf Hypergraph Convolutional Network. Еще предложено улучшать NSD через интеграцию особых positional encoding для вершин графа.
В этом канале я накидал еще больше ссылок на DNN-архитектуры на основе пучков. Там я просто собираю полезные статьи без их разборов в режиме шитпостинга.
Среди теоретических приложений есть статья того самого Роберта Гриста про приложения пучков к теории оригами - Unified Origami Kinematics via Cosheaf Homology.
Приложения в народном хозяйстве. Есть и совсем конкретные приложения пучков для анализа корпусов документов, для графовых рекомендательных систем, к задаче community detection на основе топологии графа. В естественных науках предложено приложение пучков к описанию физических систем моделирующих динамику молекул. Нетрудно заметить, что логика пучков заточена под анализ локально-глобальных отношений, это мотивирует применять пучки к федеративному обучению, как сделано в FedSheafHN.
Гиперпараметром архитектуры NSD является размерность векторных пространств на стеблях (ширина стебля). Большая ширина стебля даёт более высокую выразительную силу модели, но увеличивает риск переобучения.
Открытая практическая проблема: недостача эмпирических исследований того, как должна масштабироваться ширина стебля при увеличении размера графа для получения приемлемого перформанса. И в целом, есть существенная недостача применений пучков для больших графов.
"А на сегодня всё, до новых встреч."
Post #188
1.87K
- 👍 13
- ❤ 7
- 🔥 7