- BrainTools - https://www.braintools.ru -
Всем привет! Это Данила Ляпин, наставник курса «Специалист по Data Science» [1]. Собрал для вас подборку материалов по компьютерному зрению [2] и обучению [3] нейросетей. Здесь вы найдёте полноценные курсы, туториалы, обзорные статьи и справочные материалы. Подборка пригодится как новичкам в ML, так и практикующим инженерам — старался пояснять в описаниях, для кого подойдёт конкретный материал.

Глава из учебника по машинному обучению о свёрточных нейросетях для распознавания изображений. Объясняется, почему полносвязные сети неэффективны для картинок, как работают свёртки и зачем нужна инвариантность к сдвигам.
Разбираются ключевые блоки: max pool, global average pool, residual connection, регуляризация через аугментации, label smoothing и mixup. В конце перечислены знаковые архитектуры, заметно повлиявшие на мир свёрточных нейронных сетей в задаче классификации картинок (и не только). [4]
Перейти → [4]

Цель руководства — на простых примерах дать фундаментальное понимание того, как работает нейронная сеть и почему обучение сети связано с подбором правильных весов и смещений на основе данных. Автор объясняет концепции на примере предсказания цены дома. Повествование строится вокруг визуализации процесса: от базовой модели с одним входом и одним выходом к моделям с несколькими параметрами. На английском языке. [5]
Перейти → [5]

Статья о том, как работают паддинг и страйд в свёрточных сетях. Автор на простых примерах объясняет, почему изображение уменьшается после применения фильтров (border effects), как padding помогает сохранить размер, а stride — уменьшить его специально. Подходит новичкам, на английском языке. [6]
Перейти → [6]

Курс знакомит с фундаментальными идеями компьютерного зрения и тем, как нейронная сеть может «понимать» изображения, чтобы решать те же задачи, которые решает человеческая зрительная система [7]. К концу курса вы сможете создавать классификаторы изображений уровня профессиональных приложений и будете готовы к более продвинутым темам вроде GAN и сегментации изображений. На английском языке.
Перейти → [8]

Документация по двумерному свёрточному слою в PyTorch. Описывает назначение ‘torch.nn.Conv2d’, его входные и выходные данные, основные параметры (‘kernel_size’, ‘stride’, ‘padding’, ‘dilation’, ‘groups’ и так далее), а также ключевые переменные. На английском языке. [9]
Перейти → [9]

Предобработка данных — критически важный шаг в любом ML-пайплайне, и PyTorch предлагает разнообразные инструменты и техники для этого процесса. В статье разбираются лучшие практики предобработки данных в PyTorch с фокусом на загрузку данных, нормализацию, трансформацию и аугментацию. Эти практики необходимы для подготовки данных к обучению модели, улучшения производительности модели и обеспечения обучения на высококачественных данных. На английском языке. [10]
Перейти → [10]

Эта статья — полноценная техно-история YOLO. Авторы рассказывают, что представляет из себя задача детекции, как работала самая первая YOLO и как её дорабатывали во всех последующих версиях. В тексте встречаются термины из машинного обучения, но в целом статья написана доступным языком и будет понятна и интересна как опытным читателям, так и начинающим.
Перейти → [11]
Видеолекция, в которой автор объясняет, что такое YOLO в целом, разбирает архитектуру сети YOLO v3 и как она детектирует объекты на разных масштабах. Рассказывает, что такое anchor boxes и как вычисляются bounding boxes, объясняет процесс обучения сети и, в заключение, что такое objectness score. На английском языке.

Статья от разработчиков YOLOv4 и фреймворка Darknet. Автор сравнивает нейросети для детекции объектов по скорости и точности, показывает, почему YOLOv4 и DL-фреймворк Darknet работают быстрее и точнее, чем DL-фреймворки и нейронные сети: Google TensorFlow EfficientDet, Facebook* Detectron RetinaNet/MaskRCNN, PyTorch YOLOv3-ASFF и многие другие. При этом YOLOv4 требует в 5 раз более дешевое оборудование.
Автор делится сравнительными графиками, рассказывает об особенностях разработки и делится выводами о создании нейросетей для детекции. Много полезных ссылок на инструкции и код. Must-read.
*принадлежит компании Meta, деятельность которой признана экстремистской и запрещена на территории РФ. [12]
Перейти → [12]

Практическое объяснение того, как работают ключевые модули и классы PyTorch: ‘torch.nn’, ‘torch.optim’, ‘Dataset’ и ‘DataLoader’. Чтобы понять, что они делают, автор сначала обучает нейросеть на MNIST только с базовыми тензорными операциями, а затем постепенно добавляет по одному компоненту, показывая, как каждый делает код короче или гибче. Требует знания основ PyTorch и тензорных операций (или NumPy). Есть ссылка на ноутбук. На английском языке. [13]
Перейти → [13]

Несмотря на большое количество библиотек и фреймворков, которые дают надежду на то, что технология работает «из коробки», обучать нейронные сети не так просто. Андрей Карпатый (Tesla, OpenAI) объясняет, почему это так и почему подход к обучению «быстрее, выше, сильнее» не работает и ведёт к дополнительным страданиям. Затем он подробно описывает свой подход и делится советами. Не подходит для абсолютных новичков. На английском языке. [14]
Перейти → [14]

Культовый курс от Стэнфордского университета. В свободном доступе можно посмотреть лекции за разные годы, почитать конспекты и познакомиться с практическими заданиями. Считается одним из наиболее полных курсов, посвящённых компьютерному зрению, постоянно обновляется. Может быть сложен для восприятия [15], если вы абсолютный новичок и никогда не работали с Python. На английском языке.
Перейти к курсу → [16]
Смотреть лекции → [17]
Автор: Danila_Ly
Источник [19]
Сайт-источник BrainTools: https://www.braintools.ru
Путь до страницы источника: https://www.braintools.ru/article/25732
URLs in this post:
[1] «Специалист по Data Science»: https://practicum.yandex.ru/data-scientist/?utm_source=content&utm_medium=media&utm_campaign=cv-resources&utm_content=16-02-26
[2] зрению: http://www.braintools.ru/article/6238
[3] обучению: http://www.braintools.ru/article/5125
[4] . : https://education.yandex.ru/handbook/ml/article/svyortochnye-nejroseti
[5] е.: https://jalammar.github.io/visual-interactive-guide-basics-neural-networks/
[6] е.: https://machinelearningmastery.com/padding-and-stride-for-convolutional-neural-networks/
[7] зрительная система: http://www.braintools.ru/article/9236
[8] Перейти → : https://www.kaggle.com/learn/computer-vision
[9] е.: https://docs.pytorch.org/docs/stable/generated/torch.nn.Conv2d.html
[10] е.: https://www.geeksforgeeks.org/deep-learning/data-preprocessing-in-pytorch/
[11] Перейти →: https://habr.com/ru/articles/865834/
[12] Ф.: https://habr.com/ru/articles/503200/
[13] е.: https://docs.pytorch.org/tutorials/beginner/nn_tutorial.html
[14] е.: https://karpathy.github.io/2019/04/25/recipe/
[15] восприятия: http://www.braintools.ru/article/7534
[16] Перейти к курсу →: https://cs231n.stanford.edu/
[17] Смотреть лекции →: https://www.youtube.com/watch?v=2fq9wYslV0A&list=PLoROMvodv4rOmsNzYBMe0gJY2XS8AQg16
[18] Перейти к конспектам →: https://cs231n.github.io/
[19] Источник: https://habr.com/ru/companies/yandex_praktikum/articles/992168/?utm_campaign=992168&utm_source=habrahabr&utm_medium=rss
Нажмите здесь для печати.