Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Андрей Фильченков - Погружение в глубокие нейронные сети за 20 минут - Muzis Hackathon

1,415 views

Published on

Андрей Фильченков - Погружение в глубокие нейронные сети за 20 минут - Muzis Hackathon

Published in: Software
  • Be the first to comment

Андрей Фильченков - Погружение в глубокие нейронные сети за 20 минут - Muzis Hackathon

  1. 1. Погружение в глубокие нейронные сети за 20 минут Андрей Фильченков к.ф.-м.н., доц., рук. иссл. гр. МО каф. КТ, МНЛ КТ Hackathon по чатботам и AI 30 июля 2016, СПб
  2. 2. 2 / 37 Что такое нейронная сеть и какие задачи она решает Как устроена глубокая нейронная сеть Prisma и другие нашумевшие применения Глубокие сети для чатботов Где научиться глубоким нейронным сетям План выступления Погружение в глубокие нейронные сети за 20 минут
  3. 3. 3 / 37 Что такое нейронная сеть и какие задачи она решает Как устроена глубокая нейронная сеть Prisma и другие нашумевшие применения Глубокие сети для чатботов Где научиться глубоким нейронным сетям План Погружение в глубокие нейронные сети за 20 минут
  4. 4. 4 / 37 Глубокая нейронная сеть Глубокая сеть Глубинная (нейронная) сеть Deep learning Нейронная сеть Искусственная нейронная сеть Несколько слов о терминологии Погружение в глубокие нейронные сети за 20 минут
  5. 5. 5 / 37 Глубокая нейронная сеть: Семейство математических алгоритмов Слабо связана с нейробиологией Очень сильно связана с машинным обучением Получила популярность примерно в 2012 году От обычных нейронных сетей отличается числом скрытых слоев (больше двух) Что же такое глубокая нейронная сеть? Погружение в глубокие нейронные сети за 20 минут
  6. 6. 6 / 37 Источники знаний для интеллектуальной системы Эксперты нужно правильно опросить и правильно занести Данные нужно правильно обработать: нужны алгоритмы машинного обучения Откуда берутся знания Погружение в глубокие нейронные сети за 20 минут
  7. 7. 7 / 37 Алгоритмы, у которых качество решения задачи повышается с опытом Наиболее популярная задача — задача предсказания Алгоритмам нужны данные и (в предсказании) правильные ответы (метки) При обучении таких алгоритмов минимизируются ошибка / максимизируется степень похожести на правильный ответ Машинное обучение Погружение в глубокие нейронные сети за 20 минут
  8. 8. 8 / 37 Все объекты описываются вектором признаков. Объект становится точкой в многомерном пространстве. Векторное представление объектов Погружение в глубокие нейронные сети за 20 минут
  9. 9. 9 / 37 Линейная разделяющая поверхность Погружение в глубокие нейронные сети за 20 минут Линейная поверхность в виде нейрона
  10. 10. 10 / 37 Однако так бывает не всегда Погружение в глубокие нейронные сети за 20 минут
  11. 11. 11 / 37 Многослойная нейронная сеть Погружение в глубокие нейронные сети за 20 минут Просто постоим композицию нейронов (как функцию)
  12. 12. 12 / 37 Что такое нейронная сеть и какие задачи она решает Как устроена глубокая нейронная сеть Prisma и другие нашумевшие применения Глубокие сети для чатботов Где научиться глубоким нейронным сетям План Погружение в глубокие нейронные сети за 20 минут
  13. 13. 13 / 37 Огромное множество архитектур Алгоритмы обучения отличаются от обычного обучения нейронной сети (backpropogation), но не радикально Существует множество эвристических приемов, техник и методов для построения и обучения глубоких сетей Современные глубокие сети Погружение в глубокие нейронные сети за 20 минут
  14. 14. 14 / 37 Сверточные нейронные сети (CNN) Погружение в глубокие нейронные сети за 20 минут LeCun, Yann, et al. "Gradient-based learning applied to document recognition." Proceedings of the IEEE 86.11 (1998): 2278-2324. Szegedy, Christian, et al. "Going deeper with convolutions." arXiv preprint arXiv:1409.4842 (2014).
  15. 15. 15 / 37 Визуализация слоев Погружение в глубокие нейронные сети за 20 минут
  16. 16. 16 / 37 Автоэнкодеры, кодеры и декодеры Погружение в глубокие нейронные сети за 20 минут Элементы архитектуры, в котором в промежуточном слое меньше элементов, чем в соседних Слева — кодер Справа — декодер
  17. 17. 17 / 37 Рекуррентные нейронные сети (RNN) Погружение в глубокие нейронные сети за 20 минут Глубокая сеть с рекуррентными (обратными) связями
  18. 18. 18 / 37 Long Short-Term Memory (LSTM) Погружение в глубокие нейронные сети за 20 минут Специальный подвид RNN, который умеет неплохо представлять сильно разделенные (например, во времени) зависимости
  19. 19. 19 / 37 Что такое нейронная сеть и какие задачи она решает Как устроена глубокая нейронная сеть Prisma и другие нашумевшие применения Глубокие сети для чатботов Где научиться глубоким нейронным сетям План Погружение в глубокие нейронные сети за 20 минут
  20. 20. 20 / 37 FindFace в явном виде использует сверточные сети, выполняя для фотографий поиск похожих лиц Распознавание изображений Погружение в глубокие нейронные сети за 20 минут
  21. 21. 21 / 37 Развернем сеть, и пусть она по меткам предсказывает изображения Генерация изображений Погружение в глубокие нейронные сети за 20 минут Dosovitskiy, A., Tobias Springenberg, J., & Brox, T. (2015). Learning to generate chairs with convolutional neural networks. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (pp. 1538-1546).
  22. 22. 22 / 37 Будем сохранять «внутреннее представление» изображения (матрицы Грэхема 𝐺 𝐿 на конволюционных слоях) Затем, инициализировав новую сеть случайным образом, будем обучать ее до похожести ее конволюционных слоя с сохраненными. Генерация текстур Погружение в глубокие нейронные сети за 20 минут Gatys, L., Ecker, A. S., & Bethge, M. (2015). Texture synthesis using convolutional neural networks. In Advances in Neural Information Processing Systems (pp. 262-270).
  23. 23. 23 / 37 Стиль = текстура. Изображение = контент и представлено последним конволюционным слоем. Будем обучать изображение, похожее и на стиль, и на контент. Стилизация изображений Погружение в глубокие нейронные сети за 20 минут Gatys, L. A., Ecker, A. S., & Bethge, M. (2015). A neural algorithm of artistic style. arXiv preprint arXiv:1508.06576.
  24. 24. 24 / 37 В 2015 создан DeetArt: https://deepart.io/ Они в явном виде использовали описанный алгоритм В июне 2016 создана Prisma, они завернули это в мобильное приложение, оптимизировали и вместо подгрузки «стилевых» картинок есть фильтрыю DeepArt и Prisma Погружение в глубокие нейронные сети за 20 минут
  25. 25. 25 / 37 В июне 2016 два сотрудника Яндекса записывают альбом в стиле Летова: https://music.yandex.ru/artist/4445922 “Другая мода А в глазах твоих нет слез Твоя свобода Ветер дунул и унес” «Мы будем драться» Основано на нейропоэте: https://yandex.ru/autopoet Нейронная оборона Погружение в глубокие нейронные сети за 20 минут
  26. 26. 26 / 37 Что такое нейронная сеть и какие задачи она решает Как устроена глубокая нейронная сеть Prisma и другие нашумевшие применения Глубокие сети для чатботов Где научиться глубоким нейронным сетям План Погружение в глубокие нейронные сети за 20 минут
  27. 27. 27 / 37 Строим сеть машинного перевода из запросов в ответы (Ritter et al., 2011) Sequence to sequence model (Cho et al., 2014) Seq2Seq with attention (Bahdanau et al., 2014) Основная модель Погружение в глубокие нейронные сети за 20 минут Ritter, A., Clark, S., & Etzioni, O. (2011, July). Named entity recognition in tweets: an experimental study. In Proceedings of the Conference on Empirical Methods in Natural Language Processing (pp. 1524-1534). Association for Computational Linguistics. Cho, K., Van Merriënboer, B., Gulcehre, C., Bahdanau, D., Bougares, F., Schwenk, H., & Bengio, Y. (2014). Learning phrase representations using RNN encoder-decoder for statistical machine translation. arXiv preprint arXiv:1406.1078. Bahdanau, D., Cho, K., & Bengio, Y. (2014). Neural machine translation by jointly learning to align and translate. arXiv preprint arXiv:1409.0473.
  28. 28. 28 / 37 Извлечение vs генерация Известны ли заранее ответы? Короткие сессии vs длинные сессии Несколько вопросов или беседа Закрытые vs открытые Фиксирована ли тема беседы? Типы моделей Погружение в глубокие нейронные сети за 20 минут
  29. 29. 29 / 37 Большой успех, хорошо развито, можно написать самому Пример: Google Smart Reply, генерация автоматических ответов на письма Поисковая закрытая ответная модель Погружение в глубокие нейронные сети за 20 минут Kannan, A., Kurach, K., Ravi, S., Kaufmann, T., Tomkins, A., Miklos, B., Corrado, G., Lukács, L., Ganea, M., Young, P. and Ramavajjala, V., 2016. Smart Reply: Automated Response Suggestion for Email}. In Proceedings of the ACM SIGKDD Conference on Knowledge Discovery and Data Mining (KDD)} (Vol. 36, pp. 495-503).
  30. 30. 30 / 37 Невозможно построить соответствующий корпус для систем, основанных на поиске; они могут быть только для генеративных систем, но это почти что сильный искусственный интеллект. Открытые системы Погружение в глубокие нейронные сети за 20 минут
  31. 31. 31 / 37 Длинную сессию можно рассмотреть как набор коротких сессий для закрытых систем. В открытых системах поддерживать долгую беседу очень сложно Длинные сессии Погружение в глубокие нейронные сети за 20 минут Serban, I. V., Sordoni, A., Bengio, Y., Courville, A., & Pineau, J. (2016, March). Building end-to-end dialogue systems using generative hierarchical neural network models. In Proceedings of the 30th AAAI Conference on Artificial Intelligence (AAAI-16).
  32. 32. 32 / 37 Проблемы: Отсутствие знаний Проблемы с построением языковой модели Отсутствие модели себя и интенционности Генеративные модели Погружение в глубокие нейронные сети за 20 минут
  33. 33. 33 / 37 Что такое нейронная сеть и какие задачи она решает Как устроена глубокая нейронная сеть Prisma и другие нашумевшие применения Глубокие сети для чатботов Где научиться глубоким нейронным сетям План Погружение в глубокие нейронные сети за 20 минут
  34. 34. 34 / 37 Курс по глубоким сетям от CS центра (только что закончился): http://compsciclub.ru/courses/deep-learning/2016- summer/ Курс по Data mining (с 8 лекции будут нейронные сети) от Mail.ru Group: https://www.youtube.com/playlist?list=PLrCZzMib1e 9pXgyJ8Y9Io4AocGy66pj1X Курсы и лекции (на русском) Погружение в глубокие нейронные сети за 20 минут
  35. 35. 35 / 37 Курс по глубоким сетям от Google: https://www.udacity.com/course/deep-learning--ud Курс по глубоким сетям от Nando de Freitas в Oxford: https://www.youtube.com/watch?v=dV80NAlEins&li st=PLE6Wd9FR--EfW8dtjAuPoTuPcqmOV53Fu Курсы и лекции (на английском) Погружение в глубокие нейронные сети за 20 минут
  36. 36. 36 / 37 Главный сайт про глубокое обучение: http://deeplearning.net/ Паблик в VK по глубокому обучению: https://vk.com/deeplearning Короткая обзорная лекция Жени Путина про глубокие сети: https://www.youtube.com/watch?v=bicXInoeLG4 «Поковыряться» в нейронной сети и посмотреть на то, как она обучается: http://playground.tensorflow.org/ Полезные ссылки Погружение в глубокие нейронные сети за 20 минут
  37. 37. 37 / 37 Для Python: Theano, TensorFlow, Caffe, Pylearn2, Deepnet Для C: Torch Для C++: Caffe, nnForge, CXXNET, Cuda-convent Для Matlab: Caffe, DeepLearningToolbox, Deepmat, Cuda CNN Библиотеки Погружение в глубокие нейронные сети за 20 минут
  38. 38. Спасибо! Вопросы? Андрей Фильченков aaafil@mail.ru Hackathon по чатботам и AI 30 июля 2016, СПб

×