Читать книгу Искусственный интеллект – для вашего бизнеса. Руководство по оценке и применению - Эндрю Берджесс - Страница 9
1. Не верьте пропаганде!
Краткий обзор технологий искусственного интеллекта
ОглавлениеТехнологии, стоящие за искусственным интеллектом, чертовски умны. В их основе лежат алгоритмы – последовательность инструкций или набор правил для выполнения задачи. Алгоритмом можно считать даже железнодорожное расписание и рецепт приготовления блюда или аптечного лекарства. Искусственным интеллектом, естественно, управляют гораздо более продвинутые алгоритмы; по сути, они являются очень сложными статистическими моделями, использующими принципы теории вероятности, чтобы найти регулярные связи в определенном наборе входящих данных, часто с учетом определенной цели («если клиент посмотрел эти фильмы, то какие другие фильмы он захочет посмотреть с наибольшей вероятностью»). Эта книга, разумеется, не претендует на подробное объяснение базовых технологий искусственного интеллекта; более того, она намеренно лишена технической лексики. Однако некоторые принципы, лежащие в основе ИИ-технологии, знать все-таки необходимо.
Один из способов классификации технологий искусственного интеллекта – разделить их на так называемое «контролируемое» и «неконтролируемое» обучение. Контролируемое обучение является более распространенным и относится к ситуациям, когда система искусственного интеллекта обучается путем анализа больших объемов данных. Например, если вы хотите иметь ИИ-приложение, способное идентифицировать изображения собак, то вы должны показать алгоритму тысячи изображений, где собаки есть, и столь же большое количество картинок, где они отсутствуют. На первом этапе вы помечаете все картинки по принципу «есть собака» и «нет собаки». Используя машинное обучение (один из методов, применяемых при разработке искусственного интеллекта, – о нем я расскажу позже) и введенные данные, система изучает, как выглядит собака на изображении (что общего есть между любыми собаками, присутствующими на картинках). Затем систему следует проверить на другом наборе таких же (но не идентичных) данных, где изображения тоже помечены, но на этот раз об этом знаете только вы, а системе ничего не известно. Если система сможет идентифицировать наличие или отсутствие собак на фотографиях, значит, она обучена достаточно хорошо. Вы можете проверять это снова и снова. Если после этого люди будут использовать созданное вами приложение (назовем его условно «Найди собаку на картинке») с подключенной обратной связью, то есть оценивая правильность ответов системы, то ИИ будет продолжать свое обучение прямо по ходу работы. Контролируемое обучение обычно используется там, где входные данные неструктурированы или структурированы лишь частично: изображения, звуки, рукописный текст. Сюда относятся функции распознавания изображений, речи и поиска в соответствии с предложенной мною моделью структуризации искусственного интеллекта.
При неконтролируемом обучении системе предлагается очень большой набор данных, которые в начале процесса для нее ничего не «значат». Однако по ходу анализа искусственный интеллект может определить в этих данных схожие характеристики (так называемые кластеры сходства). Следует отчетливо понимать, что искусственный интеллект не вкладывает в эти сходства и различия никакого «смысла» в человеческом понимании; он просто ищет повторение шаблонов среди океана информации. Но самое замечательное в таком подходе то, что и сам пользователь может ничего не понимать в этих данных. Да ему зачастую и не нужно знать, что он ищет: всю эту работу выполняет искусственный интеллект. Что бы мы ни исследовали, после того как ИИ определит кластеры сходства, он сможет создавать прогнозы для новых входящих данных.
Например, мы хотим определить стоимость дома в определенном районе. Цена дома зависит от многих переменных, таких как местоположение, количество жилых и ванных комнат, года постройки, площади участка земли и т. д. Такое обилие входящей информации затрудняет прогнозирование стоимости. Однако между всеми этими переменными, безусловно, должна быть какая-то скрытая связь, вопрос лишь в том, как ее найти. Именно это и делает за нас искусственный интеллект. Если в его распоряжении есть достаточное количество базовых данных, содержащих все эти переменные вместе с фактической ценой недвижимости, он использует статистический анализ, чтобы найти все доступные связи. Причем некоторые переменные могут очень сильно влиять на цену, а другие, как выясняется, вообще не оказывают на нее воздействия. Подготовив таким образом статистическую модель, мы вводим те же характеристики для дома, цена которого еще неизвестна, и модель сможет предсказать это значение. Входные и выходные данные на этот раз структурированы, но зато сама модель является для нас «черным ящиком» или «вещью в себе». Отсутствие прозрачности в принятии решений и создании прогнозов – одно из самых слабых мест искусственного интеллекта, но все-таки прозрачностью работы моделей можно управлять – об этом я расскажу позже.
Помимо названий двух упомянутых выше видов обучения существуют и некоторые другие термины, связанные с разработкой и применением искусственного интеллекта. Я расскажу о них вкратце, но помните, что тем людям, которые заняты в основном бизнесом, вполне достаточно поверхностного понимания этой терминологии. Итак: существует понятие «нейронные сети» – это термин, используемый для описания процесса, в котором искусственный интеллект имитирует способ обработки информации человеческим мозгом. Множество «нейронов» (в случае человека – это нервные клетки, которых у нас в мозгу около 100 млрд) связаны друг с другом с различной прочностью, причем прочность связи может меняться в процессе обучения как человека, так и машины.
Приведем простой пример. В упомянутом выше случае с распознаванием изображения собаки нейрон, отвечающий за признак «черный нос», будет иметь прочную связь с нейроном, несущим ответ «собака», тогда как нейрон, отвечающий за признак «рога», с нейроном «собака» связи иметь не будет. Все нейроны искусственного интеллекта связаны друг с другом послойно, причем каждый слой характеризуется все возрастающим уровнем сложности. Описанная конструкция называется глубокой нейронной сетью, сокращенно – ГНС (англ. Deep Neural Networks, DNN). Архитектуру ГНС использует технология, называемая «машинное обучение», в которой модель разрабатывает сама машина, а не человек, пишущий код (как в предыдущих примерах). Попробуйте теперь представить себе эти термины как концентрические круги: искусственный интеллект – это общая технология, машинное обучение является основным ее принципом, а технически все это осуществляется с помощью ГНС.
Разумеется, в мире искусственного интеллекта есть и множество других терминов: «анализ дерева решений», «программирование индуктивной логики», «обучение с подкреплением», «байесовские сети» и т. д., но я буду упоминать их лишь тогда, когда это станет абсолютно необходимо. В целом же эта книга посвящена только применению искусственного интеллекта в бизнесе, а не описанию заумных технологий.