На этом шаге мы перечислим те области, где используются искусственные нейронные сети.
Несмотря на то что искусственные нейронные сети появились еще в середине XX века, до последнего десятилетия они не были широко распространены. Массовое применение нейронных сетей сдерживалось отсутствием достаточно производительного оборудования. Сегодня в машинном обучении искусственные нейронные сети стали областью с поистине взрывным ростом, потому что они работают!
За последние десятилетия искусственные нейронные сети позволили создать очень интересные компьютерные приложения, ориентированные на пользователя. К ним относятся практичное (с точки зрения достаточной точности) распознавание голоса, распознавание изображений и рукописных текстов. Распознавание голоса имеется в таких средствах голосового ввода, как Dragon Naturally Speaking, и цифровых помощниках, таких как Siri, Alexa и Cortana. Конкретный пример распознавания изображений - автоматическая отметка людей на фотографиях в Facebook посредством распознавания лиц. В последних версиях iOS можно выполнять поиск в заметках, даже если они написаны от руки, с помощью распознавания рукописного ввода.
Более старая технология распознавания, эффективность которой можно повысить за счет использования нейронных сетей, - это оптическое распознавание символов (optical character recognition, OCR). Технология OCR применяется при сканировании документов и возвращает редактируемый текст вместо изображения. OCR позволяет почтовой службе считывать индексы на конвертах для быстрой сортировки корреспонденции.
В рассмотренных шагах было показано, что нейронные сети успешно действуют в задачах классификации. Подобные приложения, в которых хорошо работают нейронные сети, - это системы выдачи рекомендаций. Именно так Netflix предлагает фильм, который вас может заинтересовать, a Amazon - книгу, которую вы, вероятно, захотите прочитать. Существуют и другие методы машинного обучения, хорошо подходящие для систем рекомендаций (Amazon и Netflix не обязательно используют нейронные сети для этих целей, детали реализации таких систем обычно не разглашаются), поэтому нейронные сети следует выбирать только после того, как все параметры изучены.
Нейронные сети могут применяться в любой ситуации, когда необходима аппроксимация неизвестной функции. Это делает их полезными для прогнозирования. Нейронные сети могут использоваться и используются для прогнозирования результатов спортивных событий, выборов или торгов на фондовом рынке. Конечно, их точность зависит от того, насколько хорошо они обучены, то есть от того, насколько велик был набор данных, относящихся к событию с неизвестным результатом, насколько хорошо настроены параметры нейронной сети и сколько итераций обучения выполнено. Как и в большинстве приложений с применением нейронных сетей, одна из самых сложных частей прогнозирования - выбор структуры сети, которая часто определяется методом проб и ошибок.
Со следующего шага мы начнем рассматривать состязательный поиск.