Вокруг ИИ и связанных с ним технологий ведется много дискуссий. Конечно, вокруг искусственного интеллекта существует информационная перегрузка, однако одна вещь, которая выделяется, заключается в том, что, несмотря на всю доступную информацию, некоторые бизнес-лидеры, похоже, не понимают, что такое искусственный интеллект.

Несколько неправильных представлений о том, что такое искусственный интеллект, что могут сделать существующие технологии, где они применимы, и, что наиболее важно, знание различий между RPA, машинным обучением, обработкой естественного языка, вычислительной лингвистикой и многим другим. Поэтому, если вы пытаетесь получить некоторые основы по этим темам, нижеследующее может помочь прояснить некоторые нерешенные вопросы и то, как они применимы в реальном мире.

Примечание. Это не техническая статья, и мы не будем углубляться в технические аспекты какой-либо конкретной технологии. Кроме того, ИИ — очень широкая тема, в этом блоге не будут обсуждаться такие понятия, как распознавание изображений, компьютерное зрение, робототехника, дополненная реальность, автономные транспортные средства, распознавание эмоций в реальном времени, когнитивная кибербезопасность и другие новые технологии. Постараюсь сделать это в следующем блоге.

Что будет обсуждаться?

В этой статье делается попытка широко охватить такие темы, как

  • РПА
  • OCR
  • Машинное обучение (контролируемое, полуконтролируемое, неконтролируемое обучение, обучение с подкреплением)
  • Обработка, понимание и генерация естественного языка
  • Разговорный ИИ
  • Нейронные сети (глубокие нейронные сети и сверточные нейронные сети)

… проектирование и создание интеллектуальных агентов, которые получают указания из окружающей среды и предпринимают действия, влияющие на эту среду. - Искусственный интеллект: современный подход (Пирсон, 1995 г.)

Роботизированная автоматизация процессов (RPA). Большинство из вас, возможно, читали/знали, что такое RPA, но напомним, что роботизированная автоматизация процессов — это способ, с помощью которого «системы составляют список действий, наблюдая за действиями пользователя. эту задачу в графическом пользовательском интерфейсе приложения (GUI), а затем выполнять автоматизацию, повторяя эти задачи непосредственно в GUI». Вероятно, это один из широко используемых методов автоматизации на нескольких предприятиях. Однако существует много заблуждений, что RPA — это искусственный интеллект, или были случаи, когда владельцы бизнес-процессов предполагали, что RPA — это машинное обучение.

RPA можно рассматривать и рассматривать как отдельную горизонталь, а не включать ее в корзину ИИ. Роль/цель Robotic Process Automation состоит в том, чтобы имитировать и автоматизировать повторяющиеся задачи и канцелярскую деятельность. По сути, он создан для экономии времени и денег на рынке труда «белых воротничков».

Примером применения RPA в бизнес-процессе может быть автоматизация выплаты налога на имущество со счета условного депонирования. Этот ежеквартальный процесс удивительно архаичен из-за устаревшей банковской и/или государственной системы. Высокоуровневое представление процесса влечет за собой следующие шаги

Базовые этапы этого процесса идеально подходят для RPA, который включает в себя, помимо прочего, выборку значений, сравнение значений, выполнение внешних процессов, очистку экрана, вплоть до инициирования процесса выплаты. Однако RPA не может читать отсканированные документы, PDF-файлы, неструктурированные данные и интеллектуально выполнять последующие процессы (мы вернемся к этому чуть позже).

Перед тем, как приступить к RPA, необходимо рассмотреть несколько вещей. Наиболее важным шагом является определение проектов, которые являются стабильными, зрелыми, оптимизированными, основанными на правилах, повторяющимися и имеют большие объемы «транзакций». Другие вещи, которые следует учитывать, — это привлечение высшего руководства и поиск подходящего лидера, который готов принять новый способ ведения бизнеса. Иметь хороший план внедрения и пост-внедрения, который включает обслуживание RPA, управление инфраструктурой и измеримые показатели успеха.

Оптическое распознавание символов (OCR) –сначала давайте сделаем что-нибудь правильно. OCR — это средство для достижения цели, а не сама цель интеллектуального решения. Так что же такое OCR? Это систематический способ преобразования изображений/отсканированных файлов, содержащих текст, рукописный текст и/или фотографии, в машиночитаемый формат.

Как работает дозированное распознавание текста? причем здесь ИИ?

Для простоты предположим, что цветной документ с богатой графикой и текстом доступен в печатном виде. На высоком уровне он проходит следующие шаги (могут быть не в этом конкретном порядке) во время OCR.

  • Сканирование документа/страницы — в идеале качество сканирования эквивалентно 300 dpi или выше.
  • Отсканированное изображение проходит преобразование цветов в шкалу серого или двухтональное, т.е. черно-белое. Этот шаг также известен как бинаризация.
  • Нормализация. Под этим заголовком я разделяю несколько шагов, от ориентации страницы до перекоса страницы, удаления обтекания и удаления шума.
  • Анализ макета — на этом этапе инструменты определяют области текста, таблиц и графики. Некоторые сложные инструменты смогут распознавать списки, если страница разбита на две колонки или страницу с одной колонкой. Определение порядка чтения имеет решающее значение для любого хорошего OCR-инструмента, так как позволяет различать текст, связанный с подписью рисунка, табличными данными и текущим текстом абзаца. Особенно, если вашей целью является поиск информации и/или классификация документов, логический анализ макета будет очень полезен.
  • OCR/извлечение — после выполнения всех вышеперечисленных шагов процесс извлечения/распознавания символов завершен. На этом этапе находится большая часть AI/ML. Существует несколько методов, которые можно использовать в качестве подхода, например, KNN (K — ближайшие соседи), подход дерева решений и т. Д. Сложные и / или специально созданные инструменты OCR могут углубляться в морфологические операции, связанные компонентный анализ и другие методы сегментации. Наиболее важным процессом на этом этапе является обнаружение функций (если вам интересно узнать больше, нажмите здесь). Здесь используется различное количество математических алгоритмов, таких как статистическая корреляция, отслеживание границ, прореживание области
    , математическая морфология, методы преобразования и многое другое.

Машинное обучение (МО) –это чрезвычайно широкая тема, и в настоящее время этот блог будет освещать ее на очень высоком уровне. К настоящему времени у большинства людей есть хорошее или приличное понимание того, что такое машинное обучение, но просто в качестве переподготовки:

Машинное обучение (ML) технически является ветвью ИИ, которая позволяет машинам обрабатывать большие объемы данных и учиться на этих данных в идеале без какого-либо вмешательства человека.

Так где же грань между ML и AI? — Машинное обучение в первую очередь фокусируется на статистике и теориях вероятности, где функции более высокого порядка, такие как использование вычислительных моделей для воспроизведения биологических структур (также известных как нейронные сети), идеально подходят для того, чтобы мы вступали в область искусственного интеллекта.

Концептуально в любом случае использования машинного обучения есть три широко используемых метода. Эти методы известны как Обучение с учителем, Обучение без учителя и Обучение с подкреплением.

  • Обучение с учителем. В основном это означает, что существует целевой результат, на котором машина обучается, используя некоторые помеченные данные и несколько входных переменных. Хорошим примером этого может быть предсказание цен на жилье или прогнозирование того, какие школьные округа или учащиеся хорошо справятся с тестами штата.
  • Неконтролируемое обучение. Применяется, когда доступно большое количество переменных данных, и никто не знает, что из них сделать. Другими словами, он использует неразмеченные данные и пытается найти скрытые структуры, кластеры, закономерности, аномалии и так далее. Примером этого может быть просмотр различных точек данных, чтобы увидеть, насколько успешно работает долгосрочное децентрализованное продвижение продуктов.
  • Обучение с подкреплением — просто объясняется, что это целенаправленное обучение, которое непрерывно изучается посредством взаимодействия с окружающей средой. Самый известный пример — игра Alpha Go. Эта статья https://skymind.ai/wiki/deep-reinforcement-learning дает очень хорошее руководство для начинающих по RL.

Обработка естественного языка (NLP) — очень механически, это процесс, в котором компьютеры/машины обрабатывают и анализируют текст или естественный человеческий язык. Однако, если бы это было так просто, как указано выше, это не было бы предметом исследований большого количества ученых, занимающихся ИИ. Сложность этого заключается в том, что существует несколько методологий, которые используются для расшифровки двусмысленности в языке и/или тексте. Английский язык развивался и продолжает оставаться одним из сложных языков во всем мире. Простое слово «Беги» имеет несколько различных значений или коннотаций, и его необходимо интерпретировать в зависимости от контекста, в котором оно представлено. Например, «Все системы работают как положено» — это не то же самое, что «Bolt работает как положено». Для работы любой функции НЛП требуется база знаний, такая как сеть слов, тезаурус, словарь слов, лингвистические и грамматические правила, онтология и современные сущности. Эта база знаний поможет в устранении неоднозначности слов, маркировке частей речи (маркировка POS), извлечении сущностей и отношений, автоматическом суммировании, естественном языке, понимании, распознавании и / или генерации.

NLP в основном используется для анализа письменного текста или обработки речи. В случае письменного текста, как правило, можно выполнить следующие шаги на высоком уровне.

  • токенизация
  • нормализация
  • выведение
  • морфологический анализ
  • лексический, семантический и синтаксический анализ базы знаний
  • анализ речи
  • анализ настроений

В случае анализа речи применимо все вышеперечисленное плюс распознавание речи и синтез речи. Подобно машинному обучению, это чрезвычайно широкая тема, к которой мы еще вернемся в последующих блогах.

Понимание естественного языка.Подобно НЛП, понимание языка проходит почти те же этапы при разложении предложения. Применение NLU стало очень важным в нескольких аспектах, наиболее важными из которых являются разговорный ИИ и/или интерпретация голоса/речи. Существует несколько техник и/или методов, которым можно следовать при создании компонента NLU в вашей структуре ИИ. Перед этим нужно понять несколько концепций. Эти концепции

  • Синтаксис. По сути, это идентификация предложения, чтобы увидеть, каким наборам грамматических правил оно соответствует
  • Семантика. В основном это определяет значение текста
  • Дискурс/прагматика — Проще говоря, контекстуальное значение предложения
  • Рассуждение — вывод логического значения предложения или текста.

Проф. Перси Лян из Стэнфорда дает подробный обзор различных методов подхода к NLU, в первую очередь:

  1. Распределение
    2) Основанное на фреймах
    3) Теоретико-модельное
    4) Интерактивное обучение

Посмотрите видео здесь

Генерация естественного языка.Проще говоря, это область ИИ, в которой создание повествовательного текста создается с использованием определенных входных данных. Хотя это не новая концепция, в последние годы несколько предприятий все чаще используют NLG. Примеры того, где он применяется, следующие:

  • Персонализированное общение с клиентами (электронная почта, текстовые сообщения и/или обмен сообщениями в приложении)
  • Отчеты и сводки по клиентскому портфелю
  • BI-отчеты и анализ панели мониторинга

Типичный подход к системе NLG следует следующим шагам.

Во время синтеза данных учитываются правила и условная логика, применимые в конкретной бизнес-среде. После синтеза данных следующие три шага являются наиболее важными, когда лингвистическая информация извлекается из базы знаний и формируется структура (например, древовидная структура). Из этой структуры организуется схема слова и текста и формируются структуры предложений. Существует большое количество контролируемых и/или неконтролируемых методов, которые можно использовать для этой функции. После того, как предложение сформировано, предложение уточняется с помощью грамматических вставок и методов, чтобы следовать правильному порядку чтения, и, наконец, создается исчерпывающий абзац и / или документ.

При этом это все еще очень развивающаяся область, где такие понятия, как намерения, эмоции, комментарии экспертов в конкретной области, все еще уточняются. На этом этапе следуют трем дугообразным подходам:

  • Простой NLG — т.е. перевод данных в текст, другими словами 25% выписывается как двадцать пять процентов.
  • На основе шаблона — т. е. работник умственного труда определяет шаблон, стандартные предложения, правила интерпретации данных и основные структуры предложений. Лучшим примером здесь может быть отчет о кредитном риске или отчет о выписке из больницы.
  • Интеллектуальное повествование — это, по сути, то, где машины создают весь отчет или повествование. Машина оценивает данные, определяет важность каждой части информации. составляет тексты почти в разговорной манере, которая подходит конечному пользователю, которому может быть трудно различить текст, созданный человеком, и текст, созданный машиной.

Глубокое обучение. Как правило, глубокое обучение является частью машинного обучения. Глубокий по существу означает глубину или «многочисленные» слои в нейронной сети. Нейронная сеть — это слой математических функций/алгоритмов, которые имитируют поведение нейронов человека. Чаще всего они требуют интенсивных вычислений и используют много графических процессоров. Это одна из развивающихся областей ИИ, где все еще открываются новые модели и архитектуры. Тем не менее, обычно слышимые архитектуры в этом пространстве:

  • Сверточные нейронные сети (CNN). Хорошо, мы знаем, что такое нейронная сеть, поэтому мы можем сосредоточиться на части «C» CNN. По сути, «Свертка — это математическая операция двух функций для получения третьей функции»,поэтому она широко используется в областях распознавания изображений или классификации текста, структурирования предложений и других сложных наборов задач. Сверточный слой имеет набор независимых фильтров (нейронов), каждый фильтр сшивается вместе для создания так называемой карты объектов. Каждая из этих карт функций затем объединяется в сеть. Каждый нейрон будет иметь вес соединения. Например, давайте взглянем на одномерную CNN, здесь предположим, что ввод представляет собой «Предложение», и каждое слово в предложении можно рассматривать как один фильтр. Идея заключалась бы в том, чтобы взять скалярное произведение слов в предложении, чтобы получить последовательность слов в предложении. Каждое предложение можно рассматривать как функцию, а несколько карт функций объединяются в абзац (чрезвычайно упрощенный пример).
  • Рекуррентные нейронные сети. Можно провести параллель с бессознательной человеческой памятью, влияющей на ваше поведение, или, другими словами, ваши прошлые действия влияют на принятие вами решений в настоящее время. Точно так же в RNN используются две формы ввода: текущий ввод и недавний прошлый скрытый слой. Простое математическое представление этого будет (Текущий ввод + Предыдущий скрытый слой) = Новое скрытое состояние. RNN обычно используется в задачах прогнозирования последовательности, в частности, в последовательностях слов.
  • Долгосрочная память (LSTM). Концепция LSTM довольно проста, как следует из названия, концептуально это способ хранения соответствующей информации/данных, которые будут вызываться/использоваться по мере необходимости. Упрощенный пример: когда вы впервые обучаете ребенка, показывая несколько цветов, его мозг будет хранить эту информацию. Через несколько часов, если вы покажете ребенку набор цветов желтого цвета, его мозг вспомнит только соответствующую информацию, например, название цвета, но на этот раз мозг также сохранит информацию о том, что такое цветок, чтобы он мог вспомнить эту информацию. когда это необходимо в будущем состоянии. «LSTM содержат информацию, выходящую за рамки обычного потока рекуррентной сети в закрытой ячейке. Информация может храниться в ячейке, записываться или считываться из нее, подобно данным в памяти компьютера. Ячейка принимает решения о том, что хранить и когда разрешать чтение, запись и стирание, через ворота, которые открываются и закрываются.

Разговорный ИИ.Подобно большинству других дисциплин ИИ, разговорный ИИ существует уже давно, конечно, в первые дни он в основном основывался на операторах if else. В последнее время мы видим, как машины ведут интеллектуальные разговоры, а такие устройства, как Google Home и Alexa, могут обрабатывать сложные разговоры все эффективнее. Типичная архитектура разговорного ИИ состоит из базы знаний, диспетчера намерений, диспетчера диалогов, который имеет уровень компонентов понимания естественного языка (NLU) и обработки естественного языка (NLP). Банк памяти, механизм принятия решений и другие базовые уровни коммуникации/интерфейса пользователя. Является ли чат-бот таким же, как разговорный ИИ? Понятие разговорного относится к тому факту, что система должна иметь способ поддерживать состояние разговора и отвечать на запрос пользователя в контексте. В этом простая разница между ботом и разговорным ИИ. Вот пример того, как работает Siri и Google Assistant

Все, что мы обсуждали выше, от НЛП до НЛУ, контролируемого обучения, LSTM и других техник/методов, используется для создания эффективного механизма диалогового ИИ.