Основные термины в Natural Language Processing

Когда к нам приходят новые разработчики, до этого не встречавшие NLP, то первым делом они уяснять себе терминологию. У нас есть внутренняя обучающая документация и решили написать небольшую статью на эту тему. Конечно, это мог бы быть отдельный раздел на сайте, типа»Глоссарий», но пока на полноценный словарь терминов не потянем, поэтому начнем со статьи.

  1. И первым у нас будет определение, собственно,  термина Natural Language Processing. Переводиться, как «обработка естественного языка».  Мы употребляем его, чтобы датьпонять, чтомы говорим о взаимодействии натурального человеского языка и компьютерных или роботизированных устройств.
  2. Токенизация — это самый первый шаг при обработке текста. Заключается в разбиении (разделении) длинных строк текста в более мелкие: абзацы делим на предложения, предложения на слова.
  3. Нормализация — для качественной обработки текст должен быть нормализированным. Это серия операций, в результате которых текст приводиться к «рафинированному» виду: всеслова приводятся к одному регистру, удаляются знаки пунктуации, расшифровываются сокращения, числа приводятся к их текстовому написанию и т.д. Нормализация необходима для унификации методов обработки текста.
  4. Стеммизация —  образовано от английского слова stem, которое переводиться как «лингвистическая основа слова». В восточнославянских языках к этому близко понятие «корень слова». Так, стеммизация — это устранение придатков к корню, то есть отделение суффикса,приставки, окончания.
  5. Лемматизация — близка к стеммизация. Отличие в том, что лемматизация приводит слово к смысловой канонической форме слова (инфинитив для глагола, именительный падеж единственного числа — для существительных и прилагательных). Это более сложная операция. Например: зафрахтованный — фрахтовать,  ценами — цена, лучший — хороший.
  6. Корпус — в самом простом понимании, это набор текстов. Также, используется термин корпора — это множество корпусов. Корпус может состоять из текстов на одном языке, а может из текстов на разных. Корпус используется исключительно для проверки гипотез, обучения и статистического лингвистического анализа.
  7. Стоп-слова — слова, которые не несут никакой смысловой нагрузки. Их еще называют шумовыми словами. Стоп-слова уже давно применяются в алгоритмах поисковых машин. Например,в английском языке — это артикли, в русском — междометия, союзы, маты и т.д.
  8. POS (Part-of-Speech) tagging, морфологическая разметка — это процесс назначения тега токенизированной части предложения. Наиболее популярная разметка определяет слова как имена существительные, прилагательные, глаголы и другие части речи.
  9. Statistical Language Modeling (статистическое моделирование языка) — процесс построения статистической модели языка, целью которой является создать текст, максимально близкий к натуральной речи. Математически SLM — это распределение вероятности появления строки S как целого предложения.
  10. «Сумка слов» (bag of words) — это детальная репрезентативая модель, используемая для упрощения обработки содержание выделенного текста. Эта модель не берет во внимание грамматику или порядок слов. Главная задача — определение количества вхождений слов в данный текст.
  11. n-граммы. Это другая модель для упрощения распознавания содержание текста. В отличии от моделей, гдене учитывается порядок слов, n-граммная модель определяет и сохраняет смежные последовательности слов в тексте.

 

Напишите нам!

Мы ответим в течение 2 часов