computer vision and deep learning
TRANSCRIPT
Компьютерное зрениеи deep learning
Григорий Сапунов
Хакатон GoToHack Big DataМосква 22.02.2016
eclass.cc RoadAR
“Простые задачи”Распознавание: классификация
и локализация
Классификация и Детектирование
http://tutorial.caffe.berkeleyvision.org/caffe-cvpr15-detection.pdf
(задача сложнее)
Распознавание: Дорожные знаки (IJCNN 2011)The German Traffic Sign Recognition Benchmark
● Мультиклассовая классификация● >40 классов● >50,000 изображений с реальных дорог
http://benchmark.ini.rub.de/?section=gtsrb&subsection=dataset
Распознавание: Дорожные знаки (IJCNN 2011)Первый случай создания системы с качеством распознавания выше человеческого.
http://benchmark.ini.rub.de/index.php?section=gtsrb&subsection=results#
Rank Team Representative Method Correct recognition rate(error rate)
1 IDSIA Dan Ciresan Committee of CNNs 99.46 % (0.54%)
2 INI Human Performance 98.84 % (1.16%)
3 sermanet Pierre Sermanet Multi-Scale CNNs 98.31 % (1.69%)
4 CAOR Fatin Zaklouta Random Forests 96.14 % (3.86%)
Распознавание: Рукописные цифры (MNIST)
● мультиклассовая классификация● 10 классов, 60000 изображений 28*28 пикселей
http://yann.lecun.com/exdb/mnist/
Распознавание: Рукописные цифры (MNIST)Человек: ≈0.2% ошибок
Первый сопоставимый результат: 0.23% (2012)
“Multi-column Deep Neural Networks for Image Classification”,Dan Cireșan, Ueli Meier, Jurgen Schmidhuberhttp://repository.supsi.ch/5145/1/IDSIA-04-12.pdf
http://rodrigob.github.io/are_we_there_yet/build/classification_datasets_results.html
Распознавание: CIFAR-10/100● 10/100 классов● 60000 изображений ● 32*32 пикселя
Человек: ~6% ошибок
https://www.cs.toronto.edu/~kriz/cifar.html
Распознавание: CIFAR-10/100
http://rodrigob.github.io/are_we_there_yet/build/classification_datasets_results.html#43494641522d3130
Large Scale Visual Recognition Challenge (ILSVRC)ILSVRC2015
● Object detection (200 категорий)● Object localization (1000 категорий)● Object detection from video
(30 категорий)● Scene classification (401 категория)
http://image-net.org/challenges/LSVRC/2015/index#maincomp
Для тех, кто в теме
Large Scale Visual Recognition Challenge (ILSVRC)
http://arxiv.org/abs/1409.0575
http://karpathy.github.io/2014/09/02/what-i-learned-from-competing-against-a-convnet-on-imagenet/
“Consider that there are more than 120 species of dogs in the dataset. We estimate that 28 (37%) of the human errors fall into this category, while only 7 (7%) of GoogLeNet errors do”
Ещё про ILSVRC
http://arxiv.org/abs/1502.01852
“We achieve 4.94% top-5 test error on the ImageNet 2012 classification dataset. This is a 26% relative improvement over the ILSVRC 2014 winner (GoogLeNet, 6.66%). To our knowledge, our result is the first to surpass human-level performance (5.1%, Russakovsky et al.) on this visual recognition challenge.”
http://vision.stanford.edu/teaching/cs231n/
http://vision.stanford.edu/teaching/cs231n/
Распознавание: Brain Image Segmentation (2012)
http://fiji.sc/Segmentation_of_neuronal_structures_in_EM_stacks_challenge_-_ISBI_2012
Распознавание: Brain Image Segmentation (2012)2 набора 512 × 512 пикселей × 30 срезов
Распознавание: Brain Image Segmentation (2012)Задача: по фотографиям электронного микроскопа срезов мозга (в данном случае это дрозофила) построить 3D-модель нейронов и дендритов.
Человеческий труд крайне долгий.
http://ufldl.stanford.edu/housenumbers/
>600 000 картинок с реальными фотографиями из Google Street View.
The Street View House Numbers (SVHN) Dataset
Компьютеры становятся лучше
человека в родных для него задачах
на восприятие
… хотя иногда и довольно беспомощныhttp://www.mirror.co.uk/news/weird-news/friendly-robot-hitchhiking-across-america-6184914
Автомобили-роботы
Автомобили-роботы
Автомобили-роботы
Автомобили-роботы: определение объектов
Автомобили-роботы: детекция пешеходов
Автомобили-роботы: распознавание знаков
Это началось не вчера.Немножко истории
DARPA Urban Challenge 2007
1 месторобот “Boss”
96 км «улиц», доставка условного груза в установленную точку менее, чем за 6 часов. Роботы должны были соблюдать правила дорожного движения (включая учёт дорожных знаков), ехать в потоке, уметь парковаться.
DARPA Grand Challenge 2005
1 месторобот “Stanley”6 часов 54 мин
Маршрут длиной 211,8 километра по каменистой пустыне Мохаве
Ernst DickmannsРаботы по роботизированным автомобилям в 1980-90е годы.
1994: "VAmP" Mercedes 500 SEL проехал более 1000 км по кольцевому шоссе в Париже со скоростю до 130 км/ч, автоматически перестраиваясь и пропуская машины.Автоматическое отслеживание до 12 других автомобилей.
1995: Тур в 1758 км из Мюнхена в Данию и обратно. Разгон на шоссе до 175 км/ч. Средняя дистанция автономной езды без перезапуска системы ~9 км; самый длинный полностью автономный участок 158 км. 95% дистанции проехано автономно.
Видеокамеры и саккадное зрение, процессоры 8086 (забудьте про GPU!).
http://www.youtube.com/watch?v=YZ6nPhUG2i0
Ernst Dickmanns: VAmP Mercedes 500 SEL (1990-е)
Ernst Dickmanns
https://www.youtube.com/watch?v=_HbVWm7wdmE
Живём в интересное время
George Hotz: Acura HackMeet the 26-Year-Old Hacker Who Built a Self-Driving Car... in His Garagehttps://www.youtube.com/watch?v=KTrgRYa2wbI
Дроны и коптеры
http://www.digitaltrends.com/cool-tech/swiss-drone-ai-follows-trails/
Поиск потерявшихся людей
● NVidia Jetson TK1/TX1 (192/256 CUDA Cores)● Raspberry Pi (ARM Cortex-A7 900MHz 4-ядра, 1 Гб ОЗУ)● Планшеты, телефоны, …● Google Project Tango
Hackers’ Time
SLAM
SLAM: Simultaneous Localization and Mapping
SLAM: Simultaneous Localization and MappingОдновременная локализация и построение карты.
Visual SLAM (vision-based SLAM) — использует только камеру (а не лидар или инерционные датчики). Может использовать одну камеру (монокулярный SLAM) или две (стерео SLAM).
Обычно real-time.
Это (в основном пока) не про deep learning. Но уже есть совмещение с семантической разметкой (здесь deep learning).
SLAM: Simultaneous Localization and MappingПример с использованием лидара:
LSD-SLAM: Large-Scale Direct Monocular SLAM
http://vision.in.tum.de/research/vslam/lsdslam
Семантический SLAM
https://www.doc.ic.ac.uk/~rfs09/docs/Salas-Moreno-R-2014-PhD-Thesis.pdf
SLAM++: SLAM на уровне объектов
http://www.doc.ic.ac.uk/~rfs09/slampp.html
Семантическая сегментация
http://arxiv.org/pdf/1301.3572.pdf Indoor Semantic Segmentation using depth information
http://mi.eng.cam.ac.uk/research/projects/VideoRec/CamVid/
https://www.youtube.com/watch?v=ZJMtDRbqH40 NYU Semantic Segmentation with a Convolutional Network (33 categories)
Другие интересные задачи работы с изображениями
Генерация описаний картинок
http://arxiv.org/abs/1411.4555 “Show and Tell: A Neural Image Caption Generator”
More Hacking: NeuralTalk and Walk
Ингредиенты:
● https://github.com/karpathy/neuraltalk2 Project for learning Multimodal Recurrent Neural Networks that describe images with sentences
● Веб-камера/ноутбук
Результат:
● https://vimeo.com/146492001
More hacking: NeuralTalk and Walk
More Hacking: DenseCap and ?
http://arxiv.org/abs/1511.07571 DenseCap: Fully Convolutional Localization Networks for Dense Captioning
Как же оно всё работает?
Как же оно всё работает?● Convolutional neural networks (CNN), свёрточные нейросети● Recurrent neural networks (RNN), рекуррентные нейросети + LSTM (Long
short-term memory)● Word embeddings (word2vec, GloVe)● Restricted Boltzmann Machines (RBM)● Autoencoders
Комбинации готовых “кирпичиков”
Операция свёртки (convolution)
Свёрточная нейронная сеть (Convolutional neural net, CNN) использует операцию свёртки для выделения локальных признаков на изображении.
inputkernel
output
http://intellabs.github.io/RiverTrail/tutorial/
http://www.gimpbible.com/files/convolution-matrix/
CNN: Convolutional Neural Network
http://www.clarifai.com/technology
RNN: Recurrent Neural Network
https://github.com/farizrahman4u/seq2seq
RNN: Sequence to Sequence Learning
https://github.com/farizrahman4u/seq2seq
RNN: Sequence to Sequence Learning
http://www.cs.toronto.edu/~graves/arabic_ocr_chapter.pdf
Мультимодальное обучение
http://arxiv.org/abs/1411.2539 Unifying Visual-Semantic Embeddings with Multimodal Neural Language Models
Мультимодальное обучение
https://www.cs.utexas.edu/~vsub/
Word embeddings: word2vec
https://code.google.com/archive/p/word2vec/
Word embeddings: word2vec
https://code.google.com/archive/p/word2vec/
Word embeddings: GloVe
http://nlp.stanford.edu/projects/glove/
Ещё немного красивостейи интересностей
Visual Question Answering
https://avisingh599.github.io/deeplearning/visual-qa/
Visual Question Answering
http://arxiv.org/abs/1505.02074 Exploring Models and Data for Image Question Answering
Visual Question Answering
http://arxiv.org/abs/1505.02074 Exploring Models and Data for Image Question Answering
Reinforcement LearningУправление симулированным автомобилем на основе видеосигнала (2013)http://people.idsia.ch/~juergen/gecco2013torcs.pdf http://people.idsia.ch/~juergen/compressednetworksearch.html
Reinforcement Learning
Reinforcement LearningHuman-level control through deep reinforcement learning (2014)http://www.nature.com/nature/journal/v518/n7540/full/nature14236.html
Playing Atari with Deep Reinforcement Learning (2013)http://arxiv.org/abs/1312.5602
Reinforcement Learning
More Fun & Hacking: Deep Dream
http://www.telegraph.co.uk/technology/google/11730050/deep-dream-best-images.html?frame=3370674
More Fun & Hacking: Neural Style
http://www.dailymail.co.uk/sciencetech/article-3214634/The-algorithm-learn-copy-artist-Neural-network-recreate-snaps-style-Van-Gogh-Picasso.html
Neural Style
http://www.dailymail.co.uk/sciencetech/article-3214634/The-algorithm-learn-copy-artist-Neural-network-recreate-snaps-style-Van-Gogh-Picasso.html
More Fun & Hacking: MtG cards
http://www.escapistmagazine.com/articles/view/scienceandtech/14276-Magic-The-Gathering-Cards-Made-by-Artificial-Intelligence
Интересно?Что делать дальше
Библиотеки для работы● OpenCV (http://opencv.org/) ● Caffe (http://caffe.berkeleyvision.org/) ● Torch7 (http://torch.ch/) ● Theano/Keras/… (http://deeplearning.net/software/theano/, http://keras.io/) ● TensorFlow (https://www.tensorflow.org/) ● Neon (http://neon.nervanasys.com/) ● ...
Что читать и смотреть- CS231n: Convolutional Neural Networks for Visual Recognition, Fei-Fei
Li, Andrej Karpathy, Stanford (http://vision.stanford.edu/teaching/cs231n/index.html)
- CS224d: Deep Learning for Natural Language Processing, Richard Socher, Stanford (http://cs224d.stanford.edu/index.html)
- Neural Networks for Machine Learning, Geoffrey Hinton (https://www.coursera.org/course/neuralnets)
- Подборка курсов по компьютерному зрению (http://eclass.cc/courselists/111_computer_vision_and_navigation)
- Подборка курсов по deep learning (http://eclass.cc/courselists/117_deep_learning)
- “Deep Learning”, Ian Goodfellow, Yoshua Bengio and Aaron Courville(http://www.deeplearningbook.org/)
Что читать и смотреть- Google+ Deep Learning community (https://plus.google.
com/communities/112866381580457264725) - VK Deep Learning community (http://vk.com/deeplearning) - Quora (https://www.quora.com/topic/Deep-Learning) - FB Deep Learning Moscow (https://www.facebook.
com/groups/1505369016451458/)- Twitter Deep Learning Hub (https://twitter.com/DeepLearningHub)- NVidia blog (https://devblogs.nvidia.com/parallelforall/tag/deep-learning/)- IEEE Spectrum blog (http://spectrum.ieee.org/blog/cars-that-think) - http://deeplearning.net/ - ...
За кем следить?- Jürgen Schmidhuber (http://people.idsia.ch/~juergen/) - Geoffrey E. Hinton (http://www.cs.toronto.edu/~hinton/)- Google DeepMind (http://deepmind.com/) - Yann LeCun (http://yann.lecun.com, https://www.facebook.com/yann.lecun) - Yoshua Bengio (http://www.iro.umontreal.ca/~bengioy, https://www.quora.
com/profile/Yoshua-Bengio)- Andrej Karpathy (http://karpathy.github.io/) - Andrew Ng (http://www.andrewng.org/)- ...
https://ru.linkedin.com/in/grigorysapunov [email protected]
Спасибо!