Нейронные сети (Neural network, NN) или Искусственные нейронные сети (Artificial neural networks, ANN) – один из видов машинного обучения.
Сегодня нейронные сети используют как альтернативу всем существующим алгоритмам для машинного перевода, распознавания речи и музыки, обработки изображений, определения объектов на фото и видео. Глубокое обучение (Deep learning) – это метод машинного обучения, основанный, в первую очередь, на нейронных сетях, хотя можно применять и другие методы. В современной реальности практически во всем, что касается Deep Learning, используют нейронные сети.
Успех глубокого обучения напрямую зависит от мощности техники. На момент появления нейронных сетей мощности компьютеров были низкими, из-за чего и сами сети были довольно слабыми. Именно поэтому в то время невозможно было создать большое количество слоёв нейронных сетей, а именно от количества слоёв зависят возможности сети. Но с появлением GPU и TPU всё изменилось. Современный Deep Learning способен справиться с большими размерами сетей. А для глубокого обучения используют специальные фреймворки: Keras, Detectron, TensorFlow, PyTorch и другие.
В интернете масса материалов, в которых сравнивают работу нейронной сети и человеческого мозга. Аналогия с биологией понятна только в самом общем смысле, но не дает понимания каким конкретно образом работает нейронная сеть. Для тех, кто хочет разобраться в теме глубже, но не любит формулы и математические абстракции, мы разобрали как работает нейронная сеть, как она обучается и описали в отдельной статье.
Нейронные сети используют практически во всех задачах, где человек пытается применить ИИ. Рассмотрим буквально несколько примеров со ссылками на более подробные статьи в зависимости от типа нейросети.
Это стихотворение было на самом деле написано RNN. Интересной особенностью данных сетей является их умение создавать собственные уникальные слова, которых не было в словаре, на котором их обучали.
Пример стихов на русском (взят тут)
CNN или Convolutional neural network – одни из самых влиятельных инноваций в области компьютерного зрения. Применяются везде, где необходимо распознать и/или классифицировать образы/лица. Из сложных задач, например, для обеспечения безопасности в аэропортах, на вокзалах, в системах допуска корпораций с высоким уровнем секретности. В ежедневном использовании – для более удобного способа совершать покупки. Подробнее мы описали в статьях о кейсе нашего клиента “Ваш пульт” и “Визуальный поиск – революция в e-commerce”.
Подробное описание работы и применения CNN можно прочитать тут.
GAN или Generative Adversarial Nets используются, например, в криминалистике, когда нужно создать фоторобот преступника по описанию, в дизайне – для создания предметов одежды или интерьера, исходя из их назначения, в кинопроизводстве – когда нужно поменять освещение, настроение кадра, состарить/омолодить героя. Именно нейронная сеть типа GAN используется в тестах Фейсбук типа “Как бы ты выглядел, если бы был противоположного пола”.
Пример работы GAN
Подробнее о GAN можно прочесть здесь.
Нейронные сети типа DQN или Deep Q Learning использутся для принятий решений ИИ на оснований анализа текущей ситуации. То есть система сама собирает данные, сама их анализирует, прогнозирует наиболее вероятный исход в той или иной ситуации, принимает максимально выгодное решение на основании всех факторов. Работу таких нейронных сетей демонстрируют беспилотные автомобили, трейдинговые боты, чат-боты и пр.
Именно DQN лежит в основе машинного обучения типа “обучение без учителя”. Один из ярких примеров – самообучение бота в компьютерной игре.
Подробнее обо всех инструментах ML читайте в наших статьях: « Искусственный интеллект, машинное обучение и нейронные сети – в чем разница и для чего их используют», «Классическое обучение как разновидность машинного обучения», «Обучение с подкреплением как разновидность машинного обучения», «Ансамбли как вид машинного обучения».