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

НЛП действительно выводит бизнес на новый уровень процветания, поскольку оно позволяет эффективно масштабировать их операции и повышать качество их продуктов и услуг, делая его более персонализированным для своих клиентов. Согласно IBM Global AI index 2021, почти половина респондентов упоминают, что их компания в настоящее время использует НЛП, а четверть планируют использовать его в ближайшие 12 месяцев. В отчете также упоминается, что важной причиной роста внедрения ИИ является то, что с годами он стал более доступным, особенно в последние два-три года.

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

Эта статья является началом этой серии. Сначала мы немного напомним основные концепции НЛП, а затем объясним план проекта. Итак, давайте погрузимся!

Повторный курс обработки естественного языка (NLP):

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

Но как это возможно? Машины понимают только числа, особенно двоичную систему (0 и 1). В последние годы большой прогресс позволил улучшить дизайн текстовых представлений, которые могут использоваться компьютерами.

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

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

Затем мы преобразуем каждый документ в набор векторов, которые будут рассматриваться в качестве входных данных для нашей модели, чтобы предсказать метку y (скажем, настроение или задача классификации темы для простоты), вы можете просто объединить один -горячие векторы для каждого слова, содержащегося в документе.

Как вы заметили, этот подход неэффективен из-за большого объема памяти, необходимого для моделирования всех векторов и документов.

Представьте, что ваш словарный запас составляет 10 000 слов. А затем представьте, что у вас есть несколько предложений или документов, длина которых составляет 100 слов. Таким образом, этот вектор документа будет иметь длину 10 000 * 100 = 1 000 000 значений. И самое главное 99,99% этих значений просто 0, что не несет в модель ничего полезного. Кроме того, это представление чрезмерно упрощает сложность языков, поскольку они требуют большего внимания к значениям и контексту слов.

Конечно, существуют гораздо лучшие методы представления текста, такие как Term-frequency Inverse-document-frequency (TF-IDF) и Word Embeddings. Мы пока не будем углубляться в них, так как это понадобится только для будущей статьи, когда мы будем проектировать и обучать нашу модель.

Все, что вы должны усвоить из этого раздела, это то, что в НЛП нам нужно кодировать наш текст в векторы, математически структурированные данные. Я считаю, что это то, что лежит в основе НЛП, а все остальное — это либо детали, либо лежащие на пересечении других областей, таких как машинное обучение и лингвистика: для обработки вашего текста вам необходимо понимать лингвистические понятия, такие как стоп-слова, части речи теги и токенизация. А для обучения вашей модели вам потребуются статистические модели, такие как машины опорных векторов (SVM) и нейронные сети (NN).

Почему важно НЛП?

«Ну, НЛП — это круто и все такое, но как мы можем использовать его для более эффективного улучшения нашего бизнеса? Чем он может отличаться от более традиционных методов?»

Как мы уже говорили ранее, НЛП позволяет машинам эффективно понимать человеческие языки и манипулировать ими. Благодаря этому вы сможете автоматизировать многие задачи и повысить их скорость и масштаб, такие как маркировка данных, перевод, обратная связь с клиентами и анализ текста. Применение НЛП к реальным случаям, а не только в исследовательских целях, принесет значительное конкурентное преимущество многим компаниям.

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

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

Еще одна увлекательная история связана с Касисто. Основанная в 2015 году, компания создала чат-бот под названием KAI, который может помочь банковским и финансовым организациям разработать собственных чат-ботов, которые помогут их клиентам получать свои услуги и управлять своими финансами. Эти чат-боты, конечно же, сделаны с использованием НЛП.

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

НЛП также вошло в юридическую сферу, поскольку многие компании, такие как Росс Интеллект, использующие IBM Watson, разработали интерфейсы запросов на естественном языке, так что вы задаете вопросы так, как будто есть юрист, который ответит на все ваши вопросы.

Теперь, это несколько историй из многих. Я надеюсь, что вы видите причины, по которым действительно следует задуматься о принятии НЛП. Итак, теперь давайте сделаем обзор того, что мы будем изучать в этой серии!

Обзор проекта

Итак, у вас есть коллекция документов, таких как pdf, XML или даже txt, и вы хотите тщательно их проанализировать. Например, вы хотите обнаружить все объекты, присутствующие во всем корпусе. Вы можете обучить модель распознавания именованных объектов. Вы можете аннотировать свой текст вручную или использовать инструменты текстовых аннотаций. Затем аннотированные документы передаются в модель NER, чтобы она, наконец, смогла выполнить желаемый анализ.

В этой серии мы будем обучать пользовательскую модель NER, чтобы использовать ее для анализа биржевых новостей. Мы также уделим особое внимание части маркировки данных. Маркировка данных или аннотация данных очень важны в машинном обучении. Мусор на входе, мусор на выходе.

Вот схема сериала:

  • Обзор проекта
  • Сбор данных
  • Предварительная обработка данных
  • Маркировка данных
  • Обучение модели
  • Развертывание модели
  • Мониторинг модели
  • Интеллектуальный анализ текста

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

Заключение

Эта серия предназначена в основном для тех, кто хоть немного знаком с НЛП, но изо всех сил пытается перейти на следующий уровень. Мы также постараемся сделать сериал удобным для нетехнических людей, особенно для тех, кто хочет использовать его возможности в своем бизнесе. UBIAI поделится некоторыми своими советами по всей серии. UBIAI — это компания, которая специализируется на аннотациях данных и создании пользовательских моделей НЛП. Не стесняйтесь обращаться к нам по адресу [email protected] или Twitter.

Оставайтесь с нами и увидимся в следующей статье!