Автор книги: Эндрю Берджесс
Жанр: Прочая образовательная литература, Наука и Образование
Возрастные ограничения: +16
сообщить о неприемлемом содержимом
Текущая страница: 5 (всего у книги 23 страниц) [доступный отрывок для чтения: 8 страниц]
3. Структура искусственного интеллекта и границы его возможностей
Введение
Невозможно извлечь ценность из чего-либо, не понимая сути того, с чем имеешь дело. Разве что это бывает по счастливой случайности, но в мире искусственного интеллекта счастливых случайностей не существует – все здесь разработано детальнейшим образом и направлено на конкретные цели. Таким образом, единственный способ в бизнесе по-настоящему извлечь выгоду из искусственного интеллекта – это научиться в нем как следует разбираться. Понятно, что «разбираться» подразумевает «в разумных пределах», ведь эта область знаний чрезвычайно сложна и полна нетривиальной математики, так что «обычный» деловой человек, конечно, не должен тратить остаток жизни на то, чтобы сделаться профессиональным ИИ-специалистом.
Подход, который я предлагаю в этой книге, состоит в том, чтобы разобраться в искусственном интеллекте с точки зрения его возможностей в контексте реальных проблем и задач, стоящих перед тем или иным предпринимателем. Для этого я разработал такую структуру изложения, которая сводит все многообразие функций искусственного интеллекта к восьми возможностям. Теоретически любое использование искусственного интеллекта должно вписываться в один из этих восьми вариантов, что позволяет специалисту по искусственному интеллекту быстро оценивать и применять различные алгоритмы ИИ в подходящих аспектах того или иного бизнеса. И наоборот, если у вас есть конкретная коммерческая задача, нашу классификацию можно использовать для определения наиболее подходящих возможностей искусственного интеллекта, которые могли бы удовлетворить ваши потребности. Несмотря на сказанное, я уверен, что любой ученый или эксперт в области искусственного интеллекта найдет пробелы в предлагаемой мною структуре. Это и понятно: я не даю вам «железобетонное» решение всех проблем, моя книга не претендует на что-то большее, чем быть полезным практическим инструментом для предпринимателей и руководителей компаний, помогающим им извлечь максимальную выгоду из возможностей искусственного интеллекта.
В области искусственного интеллекта есть много тем, полезных для обсуждения. Некоторые из них уже прозвучали в предыдущих главах: контролируемое и неконтролируемое обучение; машинное и символическое обучение; работа со структурированными или неструктурированными данными; усиление человеческого интеллекта или его замена. Все эти аспекты действительно важны, и все они могут быть достаточно хорошо поняты в рамках предлагаемой мной структуры.
Иначе говоря, описывая каждую из восьми возможностей для использования искусственного интеллекта, я объясню, потребует ли такой вариант контролируемого или неконтролируемого обучения (или их сочетания), какой тип искусственного интеллекта обычно используется для обеспечения данной возможности (например, машинное обучение), обрабатывает ли он структурированные или неструктурированные данные и, самое главное, чем такое решение выгодно для бизнеса. В последующих главах я приведу варианты комплексного использования ИИ, сгруппированные по следующим темам: улучшение обслуживания клиентов, оптимизация бизнес-процессов и принятие более эффективных решений.
Еще одна перспектива для внедрения искусственного интеллекта в бизнесе (я уже писал о ней в главе 1) – это метаанализ данных с возможностью объяснения и предсказания. Самое важное, что нужно понять в этой схеме, – искусственный интеллект «стремится достичь» трех важнейших целей: захват информации, определение сути процесса и выявление причин, вызывающих этот процесс. Каждая из моих восьми функций ИИ вписывается в одну из этих целей (рис. 3.1):
Захват информации наш мозг делает очень хорошо, а вот машинам это дается с большим трудом. Так, способность распознавать лица развивалась у людей с момента появления нас как биологического вида. Это навык, который позволяет нам избегать опасности и создавать полезные отношения, – вот почему для работы над ним используется много ресурсов нашего мозга. Для машин (которые не учились этому в процессе эволюции) данная функция очень трудоемка и требует колоссальных объемов обучающих данных и высокоскоростных процессоров. Но все-таки сегодня уже есть возможность распознавания лиц на компьютерах, мобильных телефонах и даже фотоаппаратах. Не всегда компьютерное распознавание лиц осуществляется быстро или точно, но фундаментально этот рубеж искусственным интеллектом уже достигнут.
Большинство примеров захвата (сбора) информации – это когда неструктурированные данные (например, изображение лица) превращаются в структурированные (имя человека). Сбор информации годится, естественно, и для структурированных данных, причем когда этих данных много, искусственный интеллект способен действовать вполне самостоятельно. Опять же, человеческий мозг очень хорошо распознает закономерности в разнородных данных (например, как связана работа главного тренера и место футбольной команды в турнирной таблице), но когда мы имеем дело с сотнями схожих переменных и миллионами единиц данных, то видим только «деревья», а «лес» теряем из виду.
Искусственный интеллект способен обнаруживать шаблоны или кластеры сходства, невидимые для человека. Эти шаблоны позволяют предоставлять информацию конечному пользователю в такой форме, которая имеет реальную ценность для бизнеса. Например, искусственный интеллект может находить закономерности между предпочтениями клиентов и, например, демографическими данными. На поиск подобных связей человеку потребуются годы, если идея о их наличии вообще возникнет. Иначе говоря, для нас может оказаться очень полезным то, что искусственный интеллект «неразборчив» по отношению к данным. Я еще вернусь к данному вопросу позже, но уже сейчас следует обратить внимание на эту важную для бизнеса концепцию.
Следующая цель искусственного интеллекта заключается в том, чтобы определить суть процесса, стоящего за данными. Как правило, характер работы ИИ в этом направлении зависит от того, как именно информация была получена машиной. Например, для извлечения уже кем-то произнесенных слов из звукового файла или живого разговора можно использовать распознавание речи, но в этот момент искусственный интеллект получил бы только отдельные слова, а не смысл того, что человек пытался сказать. Вот здесь должны подключиться алгоритмы понимания естественного языка (NLU) – они берут поток слов и пытаются определить содержание или значение законченных предложений. Итак, мы перешли от цифрового потока звуков к набору слов (например, «я», «хочу», «отменить», «мой», «списание», «счет», «для», «ипотека», «защита»), чтобы в итоге выяснить, что это некое лицо хочет отменить автоплатеж со своего банковского счета на обслуживание ипотечного страхования.
Затем мы можем применить другие функции из данной категории, чтобы продолжить обработку запроса. Например, мы могли бы использовать оптимизационный подход, чтобы помочь клиенту понять, что если он отменит автоплатеж, то ему, вероятно, потребуется и аннулировать страховой полис, с которым эти платежи связаны. И затем мы прибегли бы к функции прогнозирования, чтобы проверить, не собирается ли этот клиент уйти из нашего банка и обратиться к одному из конкурирующих банков (проанализировав множество аналогичных клиентских запросов, искусственный интеллект способен выяснить, что отмена регулярных платежных поручений является признаком, говорящем о намерениях клиента перейти в другой банк).
Таким образом, даже из столь простого и кратковременного устного взаимодействия с клиентом искусственный интеллект может извлечь самые различные возможности для сбора информации, распознания смысла сказанного, получения прогнозов и удовлетворения запросов клиента. Но хотя в приведенном примере искусственный интеллект смог идентифицировать клиента в качестве кандидата на разрыв отношений с нашим банком, на самом деле ИИ не «понимает», что все это значит. Единственное, что он сделал, это сопоставил один набор данных (запросы клиентов) с другим (клиенты, которые расторгают контракт), а затем применил результат к новой точке данных (запрос на отмену постоянного банковского поручения от нашего клиента). Для системы искусственного интеллекта данные могут быть какими угодно – от вкусов мороженого до прогнозов погоды. Он не имеет представления о концепции постоянных платежных поручений, равно как о самих банках или клиентах. Возможности искусственного интеллекта, которыми мы располагаем сегодня и будем иметь в ближайшем будущем (если не вообще всегда), не включают в себя способность понимать что-либо в человеческом смысле. Для деловых задач очень важно умение различать те узконаправленные компетенции, которыми обладает современный искусственный интеллект (и эти вещи он делает обычно лучше, чем мы сами), и универсальный интеллект, которого пока не существует и который может появиться, только если машина начнет понимать и связывать между собой концепции – то есть делать все, подо что идеально «заточен» наш мозг.
Теперь, когда мы определили все три цели искусственного интеллекта – захват информации, определение сути процесса и понимание его причин, – становится очевидно, что из них сегодня актуальны для нас только первые две. А значит, пора приступить к более подробному рассмотрению каждой из восьми конкретных функций искусственного интеллекта.
Распознавание изображений
На сегодня одно из наиболее активных направлений исследований в области искусственного интеллекта – это распознавание изображений. Вот где в первую очередь потребовалась совместная работа всех четырех главных «катализаторов» современных компьютерных технологий! Распознавание изображений основано на машинном обучении и требует тысяч и даже миллионов маркированных изображений для обучения; следовательно, здесь необходимы чудовищные объемы памяти для хранения данных и очень быстрые процессоры для их обработки. Повсеместные каналы связи не менее важны для получения доступа к максимальному разнообразию графических данных, причем значительная их часть общедоступна. В главе 2 я упомянул изображения рукописных чисел, лиц, животных, но есть, конечно, и другие, например, аэрофотоснимки, городские пейзажи, природные ландшафты и т. д.
Изображения, естественно, попадают в категорию неструктурированных данных. Для каких задач вы можете использовать распознавание изображений? Есть три основных типа подобных задач.
Вероятно, самые популярные из ИИ-приложений – те, что идентифицируют на картинках различные объекты. Результаты такой сортировки изображений можно записать в виде тегов – пометок, поясняющих содержание фотографии или рисунка. Я уже описывал этот прием несколько раз: вы можете узнать, например, есть ли на изображении собака, кошка или другие животные (или же там вообще животных нет). Он часто используется, чтобы выявить среди фотографий те, что содержат в себе порнографию или что-нибудь оскорбительное, а может просто служить способом создать тематические альбомы, скажем, «снимки, сделанные на пляже». Создание тегов для классификации фотографий является ярким примером контролируемого обучения, когда искусственный интеллект обучается на тысячах или миллионах заранее помеченных фотографий – вот почему компании, имеющие доступ к большим объемам изображений, такие как Google и Facebook, создали самые продвинутые системы по распознанию графических объектов.
Другое использование функции распознавания изображений – это поиск графических файлов, похожих на данный рисунок или фотографию. Одни из самых популярных инструментов для этого – приложение Google Reverse Image Search. Вы просто загружаете изображение в сеть, и алгоритм будет искать все изображения, похожие на ваш оригинал (этот метод часто используется для защиты авторских прав или для выявления случаев использования фотографий из новостей намеренно вне контекста). В отличие от фототегов, это как раз скорее пример неконтролируемого обучения; искусственному интеллекту не требуется знать, что именно изображено на картинке, нужно лишь проверить, похожа ли она на другую картинку. Простой способ понять, как это делается: представьте себе, что искусственный интеллект преобразует файл изображения в длинный ряд чисел (так оно и есть) и затем ищет другие изображения, которые имеют подобный ряд чисел.
И наконец, еще один тип приложений для распознавания изображений отвечает за поиск различий. Наиболее распространено использование этих алгоритмов в медицинской визуализации (рентген, томография и т. п.). Системы искусственного интеллекта используются для просмотра изображений органов человека и выявления любых аномалий, таких как опухоли или инородные предметы. Платформа IBM Watson был пионером в этой области и регулярно используется для поддержки работы рентгенологов и других диагностиков. Данный подход использует контролируемое обучение и помечает, например, рентгеновский снимок как аномальный, содержащий отклонения от нормы. На основе созданной алгоритмической модели искусственный интеллект оценивает новые изображения и каждый раз определяет, есть ли риск для пациента. Сообщалось даже, что IBM Watson показывает более точные результаты при определении меланом, чем при диагностике вручную (ИИ здесь дает точность около 95 % по сравнению с показателями от 75 % до 84 % для врачей).
Распознавание изображений, вероятно, требует больше всего исходных данных из всех алгоритмов, о которых я рассказываю в этой главе. Изображения по своей природе неструктурированы и очень вариабельны, поэтому для эффективной подготовки системы распознавания требуются очень большие объемы первоначальных данных. Веб-сайт Pinterest, позволяющий пользователям создавать «ленты» и постеры из своих любимых изображений, использовал фотоматериалы сотен миллионов пользователей, чтобы помочь дальнейшему развитию своих систем. С одной стороны, он хорошо функционирует как поисковик изображений, похожих на те, которые вы опубликовали, даже если они не помечены и достаточно абстрактны. С другой стороны, его разработчики создают и новые приложения для искусственного интеллекта, например Pinterest Lens, которое позволяет вам, направив камеру вашего телефона на объект, найти в приложении изображения объектов, которые визуально похожи на него, связаны с ним по какому-то принципу, или точно такой же объект, но запечатленный в другой обстановке.
Другие приложения по распознаванию изображений не настолько альтруистичны или безобидны. Один из веб-сайтов (он называется Find Face) в России, где законы о конфиденциальности являются более расплывчатыми, чем в большинстве западных стран, позволяет пользователям идентифицировать людей на улице с помощью камеры телефона. Алгоритм на этом сайте использует в качестве «топлива» около 410 млн фотографий из пользовательских профилей самого популярного в стране социального медиасайта «ВКонтакте» (VK), поскольку такие фотографии считаются по умолчанию общественной собственностью. Таким образом, сервис Find Face может сопоставить с точностью около 70 % лицо, на которое вы наводите камеру, с профилем пользователя «ВКонтакте». Намеренное и довольно непристойное использование этого приложения иллюстрируется фотографиями женщин на домашней странице Find Face, но вместе с тем оно прекрасно демонстрирует, насколько хорошо может работать технология распознавания изображений, если для нее проведено достаточно обширное и квалифицированное обучение.
Тем не менее распознавание изображений все еще находится на довольно незрелой стадии развития, и его реальный потенциал значительно мощнее. Использование изображений и видео растет в геометрической прогрессии как в нашей повседневной жизни, так и в мире бизнеса, и поэтому возможность индексировать и извлекать значимые данные из всей этой массы материала становится все более и более важным «занятием» для искусственного интеллекта.
Распознавание речи
Распознавание речи, иногда называемое преобразованием речи в текст, обычно является первым этапом в цепочке функций искусственного интеллекта, запускаемой голосовыми командами пользователя. Машина получает извне звуки (неважно, в реальном времени или записанные) и перекодирует их в слова и предложения, форматированные как текст. На следующем этапе, когда требуется определить значение закодированных предложений, искусственный интеллект должен задействовать другие свои возможности, наподобие NLU.
Огромную выгоду технологии распознавания речи принесла разработка методов глубоких нейронных сетей (DNN), хотя до сих пор широко используются некоторые «традиционные» подходы к работе с искусственным интеллектом (чаще всего это так называемая скрытая марковская модель, англ. Hidden Markov Model, HMM) – главным образом из-за эффективности моделирования более длинных фрагментов речи. Как и в случае изображений, речевые входные данные являются неструктурированными, и поэтому для распознавания речи используют контролируемое обучение, при котором закодированные слова сопоставляются с помеченными обучающими образцами речи (существует целый ряд общедоступных речевых наборов для обучения ИИ).
С эффективностью и точностью систем распознавания речи есть много проблем. Большинство читателей прекрасно знает, сколько сил требуется, чтобы заставить свой смартфон действительно понимать голосовые команды. Одним из основных препятствий является качество ввода – из-за шума на улице или в толпе или из-за того, что голос искажается телефоном или другим аппаратом для голосовой коммуникации: так, когда мы говорим в микрофон телефона, точность распознавания снижается более чем вдвое. Точность распознавания измеряется так называемым показателем словесных ошибок (англ. Word Error Rate, WER), который для компьютера в идеале составляет около 7 %, а для человека – около 4 %. Искажения телефонной линии снижают эффективность работы ИИ примерно до 16 %.
Некоторые проблемы довольно очевидны и знакомы большинству из нас – к примеру, различия в языках и акцентах, – но все-таки важнейшим фактором является объем словаря, используемый разными людьми для описания той или иной ситуации. Для очень узкой задачи, скажем, при проверке баланса вашего банковского счета, большой словарь не потребуется, должно хватить десяти слов или чуть больше. Однако для систем, которые, как предполагается, смогут реагировать на широкий круг вопросов (скажем, Amazon Alexa), нужен куда более объемный словарный запас, который представляет гораздо большую проблему для обработки искусственным интеллектом.
Более обширный словарный запас означает также резкое повышение сложности контекста, в котором происходит распознавание речи. Контекст играет в распознавании речи огромную роль, потому что он дает подсказки о том, какие слова будут сказаны далее с наибольшей вероятностью. Например, если мы слышим слово «окружение», нам необходимо понять, в каком контексте оно сказано, чтобы определить, что имеется в виду – окружающие нас люди или, скажем, военная операция. К счастью, глубокие нейронные сети, особенно специфический их тип, называемый «рекуррентная нейронная сеть» (англ. Recurrent Neural Network), очень неплохо умеют «заглядывать» назад и вперед через предложение, чтобы постоянно уточнять вероятность появления того или иного смысла у многозначных слов.
Стоит отметить, что распознавание речи – не совсем то же самое, что распознавание голоса. Распознавание голоса используется для идентификации людей по их голосам, а не для распознавания слов, которые они говорят. Но многие алгоритмы искусственного интеллекта, используемые в этих двух приложениях, похожи или идентичны.
Распознавание речи и родственное ему понимание естественного языка (NLU) разрабатываются сейчас очень активно, поскольку люди все сильнее и сильнее привыкают к такому способу «общаться» со своим смартфоном и хотят в этом диалоге больше комфорта и уверенности. В качестве пользовательского интерфейса распознавание речи, вероятно, станет с годами основным методом ввода информации для большинства автоматизированных процессов.
Поиск информации
Я использую в этой книге понятие «поиск информации» в совершенно определенном смысле (другой общий термин для этого процесса – «извлечение информации»). Речь идет, собственно, об умении искусственного интеллекта извлекать структурированные данные из неструктурированного текста точно так же, как функции распознавания изображений и речи делают это с графическими и звуковыми файлами.
Извлечение информации в виде значимых для какой-либо цели слов и предложений из свободно написанного текста осуществляется методом, известным как анализ естественного языка (англ. Natural Language Processing, NLP; не путать с нейролингвистическим программированием, которое в этой книге вообще не упоминается. – Прим. пер.). Я, однако, предпочитаю использовать термин «поиск информации», потому что он лучше описывает смысл того, что мы имеем на выходе. Ниже в этой главе вы узнаете об алгоритмах понимания естественного языка (NLU), которые обычно описываются как подмножество алгоритмов NLP, но, на мой взгляд, оно является отдельной, дополнительной функцией, использующей результаты распознавания речи.
Поиск, осуществляемый искусственным интеллектом, основан почти исключительно на контролируемом обучении и работает как с неструктурированными, так и с полуструктурированными данными. Под неструктурированными данными я подразумеваю что-то вроде письма или отчета, написанного в свободной форме. Полуструктурированные документы, как правило, основаны на некотором едином шаблоне, но все равно достаточно изменчивы по стилю и вокабуляру, затрудняя этим (иногда очень сильно) их обработку на чисто логической основе. Примером системы анализа текста для извлечения информации является приложение Robotic Process Automation (RPA).
Характерным примером полуструктурированного документа является счет-фактура. Как правило, любой счет-фактура содержит информацию, повторяющуюся из документа в документ, например наименование поставщика, дату и стоимость товара. Но у одного может быть сумма без учета НДС, у другого – с его включением; в одних документах пишут промежуточные итоги, в других – только окончательный. Адрес поставщика может указываться то в правом, то в левом верхнем углу, его имя может быть написано по-разному (скажем, лишь с инициалами или же с расшифровкой инициалов), дату продажи часто пишут в различных форматах.
Традиционный способ получения информации из счета-фактуры и преобразование ее в определенный стандарт записи – использование системы оптического распознавания символов (англ. Optical Character Recognition, OCR) и шаблона для каждой отдельной версии счета-фактуры (их существует несколько сотен), чтобы алгоритм «понимал», откуда он берет тот или иной тип данных. Система искусственного интеллекта, обученная один раз с использованием образцов реальных счетов-фактур, способна справиться со всеми описанными выше вариантами. Если адрес находится в другом месте, алгоритм все равно его найдет; если где-то есть строка для НДС, а где-то – нет, это также не имеет значения; если дата присутствует в разных форматах, она будет распознана в любом виде и преобразована в единый стандартный формат.
Интересно, что искусственный интеллект работает при этом в полной противоположности шаблонному подходу: чем больше обнаруживается различных «версий» того или иного документа, ИИ, вместо того чтобы запутаться в них и создавать все новые и новые шаблоны, действует все увереннее и способен с каждым разом справиться со все возрастающей изменчивостью. Это связано с тем, что по мере накопления данных ИИ имеет все больше материала для сопоставления формы нового документа с исходными шаблонами.
В случае неструктурированного текста, такого как электронные письма, напечатанные в свободной форме, искусственный интеллект может делать две вещи. Первая – классифицировать текст, сопоставляя образцы слов с теми, которые он уже выучил. Например, если вы «вручаете» ИИ случайную новостную статью, он может определить, о чем эта статья – о политике, бизнесе, спорте и т. д., если его алгоритмы были заранее обучены на примере других новостных статей, помеченных тегами. Речь идет не о том, чтобы просто искать слово «футбол» или чтобы определить статью как спортивную (в конце концов, есть много статей о футболе, но в деловом ключе), а о том, чтобы смотреть на статью интегрально, создавая алгоритмическую модель, которая представляет «спортивные статьи» в целом. Любая новая статья с похожей моделью или рисунком, скорее всего, будет определена как посвященная спорту.
Вторая принципиальная операция с текстами, характерная для искусственного интеллекта, – это извлечение «именованных объектов». Именованным объектом может быть имя собственное – например, топоним или имя человека – или даже дата или число. Возьмем отрывок текста: «Эндрю Берджесс, живущий в Лондоне, написал в 2017 году свою вторую книгу, опубликованную в издательстве Palgrave Macmillan». Здесь именованными сущностями будут «Эндрю Берджесс», «Лондон», «второй», «2017» и «Palgrave Macmillan».
Для этой задачи существуют специфические алгоритмы распознавания именованных объектов (англ. Named Entity Recognition, NER), но все они должны быть предварительно обучены и настроены для достижения необходимой точности. Лучшие системы NER для английского языка в настоящее время обеспечивают почти человеческое качество распознавания. Точность NER можно улучшить через более глубокое обучение их конкретным областям знаний: один алгоритм будет, например, специализироваться на юридических документах, а другой – на медицинских.
Задачи категоризации и извлечения сущностей можно объединить для поиска информации в документах произвольной формы, то есть в неструктурированных текстах, которые системы «читают» и классифицируют, а затем извлекают все метаданные. Это, например, означает, что письмо с клиентским запросом, отправленное в компанию по электронной почте, будет категоризировано таким образом, чтобы его можно было автоматически пересылать нужному человеку в организации вместе со всеми соответствующими метаданными, извлеченными из документа и «разложенными по полочкам». Эти метаданные могут автоматически вводиться в систему управления делами компании, чтобы агент по обслуживанию клиентов имел всю доступную информацию сразу при получении дела.
Поиск и извлечение информации является, по-видимому, одной из наиболее разработанных функций в моей классификации возможностей ИИ. Существуют весьма авторитетные поставщики программного обеспечения с относительно зрелыми продуктами, не говоря уже о множестве стартапов. Как вы увидите в последующих главах, основная привлекательность данной функции на сегодня заключается в том, что она обеспечивает полезное дополнение к алгоритму Robotic Process Automation (RPA), поскольку роботам в качестве входящей информации нужны уже структурированные данные, а интеллектуальный поиск способен эффективно превратить неструктурированный текст в структурированные данные, открывая таким образом доступ к множеству задач, для решения которых требуется анализ, основанный на работе RPA.
Правообладателям!
Данное произведение размещено по согласованию с ООО "ЛитРес" (20% исходного текста). Если размещение книги нарушает чьи-либо права, то сообщите об этом.Читателям!
Оплатили, но не знаете что делать дальше?