Оригинальная ссылка:Tickets.WeChat.QQ.com/Yes/At 9QB JE OL О…
Я кратко представил несколько классических алгоритмов, обычно используемых в машинном обучении, в трех статьях ранее, и, конечно же, он также включает популярный в настоящее время алгоритм CNN:
- Резюме и сравнение часто используемых алгоритмов машинного обучения (часть 1)
- Резюме и сравнение часто используемых алгоритмов машинного обучения (посередине)
- Резюме и сравнение часто используемых алгоритмов машинного обучения (конец)
Каждый из этих алгоритмов имеет свои преимущества и недостатки и области применения.С ними необходимо быть знакомым, но как их применять также требует конкретного анализа конкретных задач.Общие направления применения машинного обучения включают следующее:
- Компьютерное зрение (резюме)
- Обработка естественного языка (NLP)
- Распознавание речи
- Рекомендуемая система
- рекламировать
и т.д
Для получения более подробной информации, пожалуйста, обратитесь к ранее рекомендованному веб-сайту:
Этот веб-сайт очень подробно разделен на 16 основных направлений, включая в общей сложности 1081 поднаправление. Если вы хотите войти в область машинного обучения, вы должны сначала выбрать область, а затем понять и ознакомиться с алгоритмами и конкретными навыками решения, необходимыми в этой области.
Конечно, эта статья в основном знакомит с применением компьютерного зрения, а компьютерное зрение является одним из самых популярных и зрелых направлений среди этих 16 направлений.
Компьютерное зрение можно разделить на следующие основные направления:
- классификация изображений
- Обнаружение цели
- Сегментация изображения
- передача стиля
- реконструкция изображения
- супер разрешение
- генерация изображения
- человеческое лицо
- разное
Хотя здесь упоминаются все изображения, на самом деле видео также является объектом исследования компьютерного зрения, поэтому есть классификация видео, обнаружение, генерация и отслеживание, но связь между длиной и текущим направлением исследований также сосредоточена на изображениях. Знакомство с содержанием видеоприложений.
Каждое направление будет кратко знакомить с проблемами, которые необходимо решить в этом направлении, и рекомендовать некоторые проекты Github, документы или обзорные статьи.
1. Классификация изображений
Классификация изображений, также известная как распознавание изображений, как следует из названия, предназначена для определения того, что представляет собой изображение или к какой категории относится объект на изображении.
Классификацию изображений можно разделить на множество исходных направлений в соответствии с различными стандартами классификации.
Например, по метке категории ее можно разделить на:
- Две проблемы классификации, такие как определение того, есть ли на картинке лицо;
- Проблемы множественной классификации, такие как идентификация птиц;
- Классификация с несколькими метками, каждая категория содержит метки с несколькими атрибутами. Например, для классификации одежды можно добавить такие метки, как цвет одежды, текстура и длина рукава. На выходе получается не только одна категория, но и несколько атрибутов.
По объекту классификации его можно разделить на:
- Общая классификация, такая как простое разделение на категории, такие как птицы, автомобили, кошки, собаки и т. д.;
- Мелкозернистая классификация, в настоящее время наиболее популярные области классификации изображений, такие как птицы, цветы, кошки и собаки и т. д., некоторые из их более тонких категорий очень похожи, и одна и та же категория может быть связана с окклюзией, углом, освещением и другие причины трудно различить.
По количеству категорий его также можно разделить на:
- Обучение с небольшим количеством выстрелов: то есть обучение с небольшой выборкой, количество каждой категории в обучающем наборе очень мало, в том числе
one-shot
иzero-shot
; - Крупномасштабное обучение: крупномасштабное выборочное обучение также является текущим основным методом классификации, что также связано с требованиями глубокого обучения для наборов данных.
Рекомендуемые проекты Github:
бумага:
- ImageNet Classification With Deep Convolutional Neural Networks, 2012
- Very Deep Convolutional Networks for Large-Scale Image Recognition, 2014.
- Going Deeper with Convolutions, 2015.
- Deep Residual Learning for Image Recognition, 2015.
- Inceptionv4 && Inception-ResNetv2, 2016 г.
- RexNext, 2016 г.
- NasNet, 2017
- ShuffleNetV2, 2018
- SKNet, 2019
статья:
- Начало работы | От VGG до NASNet, обзор сетей классификации изображений
- Эволюция сетевой архитектуры CNN: от LeNet к DenseNet
- Вэй Сюшен, Megvii Nanjing Research Institute: Обзор мелкозернистого анализа изображений
- Годовой прогресс в обучении на малых выборках | VALSE2018
Часто используемые наборы данных классификации изображений:
- Mnist: набор данных рукописных цифр, состоящий из 60 000 обучающих изображений и 10 000 тестовых изображений.
- Cifar: Делится на Cifar10 и Cifar100. Первый содержит 60 000 изображений в 10 категориях, по 6 000 изображений в каждой категории. Последние представляют собой 100 категорий по 600 изображений в каждой. Категории включают животных, таких как кошки, собаки и птицы, и транспортные средства, такие как самолеты, автомобили и лодки.
- Imagenet: это должен быть самый большой в настоящее время набор данных изображений с открытым исходным кодом, содержащий 15 миллионов изображений и 22 000 категорий.
2. Обнаружение объекта
Обнаружение объекта обычно включает в себя два аспекта работы, первый — найти цель, а второй — идентифицировать цель.
Обнаружение объектов можно разделить на обнаружение одного объекта и обнаружение нескольких объектов, то есть количество объектов на изображении.Примеры следующие:
Приведенные выше два примера — это изображения из набора данных VOC 2012, на самом деле есть много более сложных сцен, таких как примеры изображений из набора данных MS COCO:
В области обнаружения целей на самом деле существует множество методов, и история их развития такова:
Как видно из приведенного рисунка, существует несколько серий методов:
- Серия R-CNN, от R-CNN до Fast R-CNN, Faster R-CNN, Mask R-CNN;
- Серия YOLO, от v1 до v3 в 2018 г.
Проект на гитхабе:
бумага:
- R-CNN, 2013
- Fast R-CNN, 2015 г.
- Faster R-CNN, 2015 г.
- Mask R-CNN, 2017
- YOLO, 2015 г.
- YOLOv2, 2016 г.
- YOLOv3, 2018
- SSD, 2015 г.
- FPN, 2016 г.
статья:
- Узнайте об обнаружении целей в одной статье: R-CNN, Fast R-CNN, Faster R-CNN, YOLO, SSD
- Учебное пособие | Обзор одноэтапных методов обнаружения объектов: YOLO и SSD
- От RCNN до SSD — это должен быть самый полный список алгоритмов обнаружения целей.
- От R-CNN до RFBNet: всесторонний обзор пятилетней эволюции архитектуры обнаружения целей.
Часто используемые наборы данных:
3. Сегментация объектов
Сегментация изображения основана на обнаружении изображения, которое необходимо для обнаружения целевого объекта, а затем сегментации объекта.
Сегментацию изображения можно разделить на три типа:
- Обычная сегментация: отдельные области пикселей, принадлежащие разным объектам, например, сегментация областей переднего плана и фона;
- Семантическая сегментация: на основе обычной сегментации, классификации на уровне пикселей, пиксели, принадлежащие к одной и той же категории, должны быть отнесены к одной категории, например, сегментация различных категорий объектов;
- Сегментация экземпляра: на основе семантической сегментации каждый объект экземпляра сегментируется, например, несколько собак на изображении сегментируются, и они идентифицируются как разные люди, а не только к какой категории они принадлежат.
Ниже показан пример сегментации графа. На следующем рисунке показан пример сегментации экземпляров. Для представления разных экземпляров используются разные цвета.
Гитхаб:
бумага:
статья:
4. Передача стиля
Перенос стиля относится к применению стиля одного домена или нескольких изображений к другим доменам или изображениям. Например, применяя стиль абстракции к реалистичным картинкам.
Пример переноса стиля следующий: рисунок А — исходное изображение, а следующие пять изображений Б-Е — результаты, полученные по разным стилям.
Общий набор данных принимает обычно используемый набор данных, а также некоторые известные произведения искусства, такие как Ван Гог, Пикассо и т. д.
Гитхаб:
- A simple, concise tensorflow implementation of style transfer (neural style)
- TensorFlow (Python API) implementation of Neural Style
- TensorFlow CNN for fast style transfer
бумага:
- A Neural Algorithm of Artistic Style, 2015 г.
- Image Style Transfer Using Convolutional Neural Networks, 2016
- Deep Photo Style Transfer, 2017
статья:
- Краткая история передачи стиля изображения (нейронный стиль)
- Перенос стиля | Обзор переноса стиля
- Потери восприятия
- Передача стиля изображения
- Перенос стиля (Style Transfer) Чтение бумаги и аранжировка (1)
5. Реконструкция изображения
Реконструкция изображения, также известная как закрашивание изображения (Image Inpainting), предназначена для восстановления отсутствующих частей изображения, например, может быть использована для восстановления некоторых старых поврежденных черно-белых фотографий и видео. Обычно используется обычно используемый набор данных, а затем искусственно создаются места на изображении, которые необходимо восстановить.
Пример восстановления показан ниже, всего необходимо восстановить четыре изображения, пример из статьи «Закрашивание изображения для неправильных отверстий с использованием частичных сверток».
бумага:
- Pixel Recurrent Neural Networks, 2016.
- Image Inpainting for Irregular Holes Using Partial Convolutions, 2018.
- Highly Scalable Image Reconstruction using Deep Neural Networks with Bandpass Filtering, 2018.
- Generative Image Inpainting with Contextual Attention, 2018
- Free-Form Image Inpainting with Gated Convolution, 2018
- EdgeConnect: Generative Image Inpainting with Adversarial Edge Learning, 2019
Гитхаб:
статья:
- Богиня была закодирована? Один мазок за раз, эффект превосходит Adobe | Открытый исходный код
- 2018 CVPR image inpainting
6. Супер-разрешение
Суперразрешение относится к задаче создания более высокого разрешения и более четких деталей, чем исходное изображение. Пример показан на рисунке ниже с легендой из статьи «Фотореалистичное сверхвысокое разрешение одиночного изображения с использованием генеративной состязательной сети».
Обычно модели со сверхвысоким разрешением также можно использовать для решения задач восстановления и окрашивания изображений, поскольку они оба решают относительно связанные проблемы.
Обычно используемые наборы данных в основном предназначены для использования существующих наборов данных и создания изображений с более низким разрешением для обучения модели.
Гитхаб:
- Image Super-Resolution for Anime-Style Art-- Приложение с супер разрешением для аниме-изображений, 14 000 звезд.
- neural-enhance
- Image super-resolution through deep learning
бумага:
- Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network, 2017.
- Deep Laplacian Pyramid Networks for Fast and Accurate Super-Resolution, 2017.
- Deep Image Prior, 2017.
- ESRGAN: Enhanced Super-Resolution Generative Adversarial Networks, 2018
статья:
-
Недавний обзор сверхразрешения изображений для глубокого обучения: от модели к приложению
-
ESRGAN: метод улучшенного сверхвысокого разрешения на основе GAN (с анализом кода)
7. Синтез изображений
Генерация изображения — это задача создания измененного изображения или совершенно нового изображения на основе изображения. Это приложение быстро развивалось в последние годы, в основном потому, что GAN являются очень популярным направлением исследований в последние годы, а генерация изображений является основным применением GAN.
Пример генерации изображения выглядит следующим образом:
Githubs:
- tensorflow-generative-model-collections-- код, объединяющий несколько GAN
- The-gan-zoo-- Соберите все текущие документы, связанные с GAN.
- AdversarialNetsPapers
бумага:
- Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks, 2015.
- Conditional Image Generation with PixelCNN Decoders, 2016.
- Pix2Pix--Image-to-image translation with conditional adversarial networks, 2016 г.
- Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks, 2017.
- bigGAN--LARGE SCALE GAN TRAINING FOR HIGH FIDELITY NATURAL IMAGE SYNTHESIS, 2018
статья:
- Галантерея | Объясните простым языком GAN·Основная текстовая версия (полная)
- Глубина | Введение в генеративно-состязательные сети для начинающих: понимание основных принципов GAN в одной статье (с ресурсами)
- Эксклюзив | NIPS 2016, отец GAN, выступил с живой речью: всесторонняя интерпретация принципов и будущего генеративно-состязательных сетей (с PPT)
- Nvidia делает еще один шедевр GAN! Генератор лица для переноса стиля с многоуровневыми функциями
8. Лица
Приложения для распознавания лиц, включая распознавание лиц, обнаружение лиц, сопоставление лиц, выравнивание лиц и т. д., должны быть самыми популярными и наиболее зрелыми приложениями в области компьютерного зрения и широко использоваться в различных приложениях безопасности, аутентификации личности и т. д., таких как как оплата лицом, разблокировка лицом.
Вот несколько проектов Github, документов, статей и наборов данных, которые непосредственно рекомендуются
Гитхаб:
- awesome-Face_Recognition: Сборник всех статей, связанных с лицом за последние десять лет.
- face_recognition: Библиотека распознавания лиц, которая может реализовать такие функции, как распознавание, обнаружение, сопоставление и так далее.
- facenet
бумага:
- FaceNet: A Unified Embedding for Face Recognition and Clustering, 2015 г.
- Face Recognition: From Traditional to Deep Learning Methods, 2018
- MSFD:Multi-Scale Receptive Field Face Detector, 2018
- DSFD: Dual Shot Face Detector, 2018
- Neural Architecture Search for Deep Face Recognition, 2019
статья:
- Всесторонний обзор технологии распознавания лиц: от традиционных методов к глубокому обучению
- Ресурсы | От обнаружения лиц до семантической сегментации, библиотека предварительно обученных моделей OpenCV
набор данных:
10. Другие
На самом деле существует множество других направлений, в том числе:
- Подпись к изображению: создайте описание для изображения.
Show and Tell: A Neural Image Caption Generator, 2014.
- Текст в изображение: создание изображений на основе текста.
AttnGAN: Fine-Grained Text to Image Generation with Attentional Generative Adversarial Networks, 2017.
- Раскрашивание изображения: изменение изображения с черно-белого на цветное.
Colorful Image Colorization, 2016.
- Оценка позы человека: определение действий человека
Cascaded Pyramid Network for Multi-Person Pose Estimation, 2017
Есть также направления, включая 3D, видео, медицинские изображения, вопросы и ответы, автоматическое вождение, отслеживание и т. д., вы можете проверить следующий веб-сайт для получения подробной информации:
документы с code.com/area/com Обычные…
Если вы определили направление и хотите начать изучать этот аспект, рекомендуется сначала поискать обзорные статьи или документы на китайском языке.Конечно, если у вас есть хорошие навыки чтения на английском языке, вы также можете просмотреть обзорные статьи на английском языке и проверить следующее. просмотрев обзор. Для статей, которые вам нужно прочитать, рекомендуется читать статьи за последние 3-5 лет. Для статей, которые слишком стары, если вам не нужно больше узнать об алгоритме, вы не нужно их прочитать.
Кроме того, необходимо углубить понимание алгоритма в сочетании с реальным проектом.Запустив код, вы также можете лучше понять, как реализован алгоритм.
Ссылаться на
резюме
В этой статье кратко представлены несколько приложений компьютерного зрения, в том числе проблемы, решаемые приложением, и рекомендованы несколько проектов и документов Github, статей и часто используемых наборов данных.
Добро пожаловать, чтобы обратить внимание на мою общедоступную учетную запись WeChat — машинное обучение и компьютерное зрение, или отсканируйте QR-код ниже, давайте общаться, учиться и прогрессировать вместе!
Прекрасная рекомендация в прошлом
Серия машинного обучения
- Вводный урок по машинному обучению для начинающих!
- Методы оценки модели, переобучения, недообучения и настройки гиперпараметров
- Резюме и сравнение часто используемых алгоритмов машинного обучения (конец)
- Резюме и сравнение часто используемых алгоритмов машинного обучения (часть 1)
- Серия «Введение в машинное обучение» (2) — «Как создать полноценный проект по машинному обучению» (1)
- Предварительная обработка данных для разработки признаков (часть 1)
Рекомендация руководства по проектам и ресурсам Github
- [Рекомендовано проектом Github] Лучший веб-сайт для чтения и поиска статей
- [Совместное использование ресурсов] Официальное руководство по китайской версии TensorFlow здесь
- Обязательные к прочтению блоги об искусственном интеллекте и глубоком обучении
- [Учебник] Простое для понимания руководство по TensorFlow.
- [Ресурс] Порекомендуйте несколько книг и руководств по Python, как вводных, так и продвинутых!
- [Рекомендация проекта Github] Шпаргалка по машинному обучению и знаниям Python
- [Рекомендация проекта Github] Порекомендуйте три инструмента, которые помогут вам лучше использовать Github.
- Информация о крупных университетах на Github и видео зарубежных публичных курсов
- Вы правильно произнесли эти слова? Кстати, я рекомендую три учебника по английскому языку для программистов!