Обработка естественного языка

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

Обработка текстов на естественном языке (Natural Language Processing, NLP) — общее направление искусственного интеллекта и математической лингвистики. Оно изучает проблемы компьютерного анализа и синтеза текстов на естественных языках. Применительно к искусственному интеллекту анализ означает понимание языка, а синтез — генерацию грамотного текста.

Задачи и ограничения

[править | править код]

Теоретически, построение естественно-языкового интерфейса для компьютеров — очень привлекательная цель. Ранние системы, такие как SHRDLU, работая с ограниченным «миром кубиков» и используя ограниченный словарный запас, выглядели чрезвычайно хорошо, вдохновляя этим своих создателей. Однако оптимизм быстро иссяк, когда эти системы столкнулись со сложностью и неоднозначностью реального мира.

Понимание естественного языка иногда считают[кто?] AI-полной задачей, потому как распознавание живого языка требует огромных знаний системы об окружающем мире и возможности с ним взаимодействовать. Само определение смысла слова «понимать» — одна из главных задач искусственного интеллекта [источник не указан 903 дня].

Сложности понимания

[править | править код]

В русском языке

[править | править код]

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

  • Сложности с раскрытием анафор (распознаванием, что имеется в виду при использовании местоимений): предложения «Мы отдали бананы обезьянам, потому что они были голодные» и «Мы отдали бананы обезьянам, потому что они были перезрелые» похожи по синтаксической структуре. В одном из них местоимение они относится к обезьянам, а в другом — к бананам. Правильное понимание зависит от знаний компьютера, какими могут быть бананы и обезьяны.
  • Свободный порядок слов может привести к совершенно иному толкованию фразы: «Бытие определяет сознание» — что определяет что?
  • В русском языке свободный порядок компенсируется развитой морфологией, служебными словами и знаками препинания, но в большинстве случаев для компьютера это представляет дополнительную проблему.
  • В речи могут встретиться неологизмы, например, глагол «Пятидесятирублируй» — то есть высылай 50 рублей. Система должна уметь отличать такие случаи от опечаток и правильно их понимать.
  • Правильное понимание омонимов — ещё одна проблема. При распознавании речи, помимо прочих, возникает проблема фонетических омонимов. Во фразе «Серый волк в глухом лесу встретил рыжую лису» выделенные слова слышатся одинаково, и без знания, кто глухой, а кто рыжий, не обойтись (кроме того, что лиса может быть рыжей, а лес — глухим, лес также может быть рыжим (характеристика, в данном случае обозначающая преобладающий цвет листвы в лесу), в то время как лиса может быть глухой, что порождает дополнительную проблему, вытекающую из предыдущей, хотя и отчасти компенсируется морфологией — у прилагательных в данном предложении род явно разный).

Классификация задач

[править | править код]

Популярные задачи:[1][2][3]

  1. Распознавание речи
  2. Анализ текста
  3. Генерирование текста
  4. Синтез речи

Задачи анализа и синтеза в комплексе:

Общая классификация:

  1. Категоризация текстов
  2. Классификация последовательностей символов
    1. Распознавание именованных сущностей
    2. Определение частей речи слов
  3. Распознавание фраз
  4. Извлечение информации из текста
  5. Синтаксическая аннотация
  6. Семантическая аннотация
  7. Генерирование текста
    1. Генерация текста на основе распознанной речи
    2. Машинный перевод
    3. Обобщение текста

Программное обеспечение

[править | править код]

Примечания

[править | править код]
  1. Shervin Minaee, Nal Kalchbrenner, Erik Cambria, Narjes Nikzad, Meysam Chenaghlu. Deep Learning Based Text Classification: A Comprehensive Review // arXiv:2004.03705 [cs, stat]. — 2020-04-05. Архивировано 24 июня 2020 года.
  2. Tom Young, Devamanyu Hazarika, Soujanya Poria, Erik Cambria. Recent Trends in Deep Learning Based Natural Language Processing // arXiv:1708.02709 [cs]. — 2018-11-24. Архивировано 6 мая 2020 года.
  3. Prof. Jason Eisner. Курс по автоматической обработке текста (англ.). Дата обращения: 7 мая 2020. Архивировано 13 мая 2020 года.