normalizeWords

Происходите или lemmatize слова

Описание

Используйте normalizeWords уменьшать слова до исходной формы. К lemmatize английским словам (уменьшают их до их словарных форм), установите 'Style' опция к 'lemma'.

Функция поддерживает английский, японский язык, немецкий язык и корейский текст.

пример

updatedDocuments = normalizeWords(documents) уменьшает слова в documents к исходной форме. Для английского и немецкого текста функция, по умолчанию, останавливает слова с помощью Носильщика stemmer для английского и немецкого текста соответственно. Для японского и корейского текста, функции, по умолчанию, lemmatizes слова с помощью токенизатора MeCab.

пример

updatedWords = normalizeWords(words) уменьшает каждое слово в массиве строк words к исходной форме.

updatedWords = normalizeWords(words,'Language',language) уменьшает слова и также задает язык слова.

пример

___ = normalizeWords(___,'Style',style) также задает стиль нормализации. Например, normalizeWords(documents,'Style','lemma') lemmatizes слова во входных документах.

Примеры

свернуть все

Остановите слова в массиве документа с помощью Носильщика stemmer.

documents = tokenizedDocument([
    "a strongly worded collection of words"
    "another collection of words"]);
newDocuments = normalizeWords(documents)
newDocuments = 
  2x1 tokenizedDocument:

    6 tokens: a strongli word collect of word
    4 tokens: anoth collect of word

Остановите слова в массиве строк с помощью Носильщика stemmer. Каждый элемент массива строк должен быть отдельным словом.

words = ["a" "strongly" "worded" "collection" "of" "words"];
newWords = normalizeWords(words)
newWords = 1x6 string array
    "a"    "strongli"    "word"    "collect"    "of"    "word"

Lemmatize слова в массиве документа.

documents = tokenizedDocument([
    "I am building a house."
    "The building has two floors."]);
newDocuments = normalizeWords(documents,'Style','lemma')
newDocuments = 
  2x1 tokenizedDocument:

    6 tokens: i be build a house .
    6 tokens: the build have two floor .

Чтобы улучшить lemmatization, сначала добавьте, что часть речи назначает в документы с помощью addPartOfSpeechDetails функция. Например, если документы содержат детали части речи, то normalizeWords уменьшает единственный глагол "создание" а не существительное "создание".

documents = addPartOfSpeechDetails(documents);
newDocuments = normalizeWords(documents,'Style','lemma')
newDocuments = 
  2x1 tokenizedDocument:

    6 tokens: i be build a house .
    6 tokens: the building have two floor .

Маркируйте японский текст с помощью tokenizedDocument функция. Функция автоматически обнаруживает японский текст.

str = [
    "空に星が輝き、瞬いている。"
    "空の星が輝きを増している。"
    "駅までは遠くて、歩けない。"
    "遠くの駅まで歩けない。"];
documents = tokenizedDocument(str);

Lemmatize лексемы с помощью normalizeWords.

documents = normalizeWords(documents)
documents = 
  4x1 tokenizedDocument:

    10 tokens: 空 に 星 が 輝く 、 瞬く て いる 。
    10 tokens: 空 の 星 が 輝き を 増す て いる 。
     9 tokens: 駅 まで は 遠い て 、 歩ける ない 。
     7 tokens: 遠く の 駅 まで 歩ける ない 。

Маркируйте немецкий текст с помощью tokenizedDocument функция. Функция автоматически обнаруживает немецкий текст.

str = [
    "Guten Morgen. Wie geht es dir?"
    "Heute wird ein guter Tag."];
documents = tokenizedDocument(str);

Остановите лексемы с помощью normalizeWords.

documents = normalizeWords(documents)
documents = 
  2x1 tokenizedDocument:

    8 tokens: gut morg . wie geht es dir ?
    6 tokens: heut wird ein gut tag .

Входные параметры

свернуть все

Введите документы, заданные как tokenizedDocument массив.

Введите слова, заданные как вектор строки, вектор символов или массив ячеек из символьных векторов. Если вы задаете words как вектор символов, затем функция обрабатывает аргумент как отдельное слово.

Типы данных: string | char | cell

Стиль нормализации, заданный как одно из следующего:

  • 'stem' – Остановите слова с помощью Носильщика stemmer. Эта опция поддерживает английский и немецкий текст только. Для английского и немецкого текста это значение является значением по умолчанию.

  • 'lemma' – Извлеките словарную форму каждого слова. Эта опция поддерживает английский, японский язык и корейский текст только. Если слово не находится во внутреннем словаре, то функциональные выходные параметры неизменное слово. Для английского текста выход является нижним регистром. Для японского и корейского текста это значение является значением по умолчанию.

Функция только нормирует лексемы с типом 'letters' и 'other'. Для получения дополнительной информации о типах маркера смотрите tokenDetails.

Совет

Для английского текста, чтобы улучшить lemmatization слов в документах, сначала добавляют детали части речи с помощью addPartOfSpeechDetails функция.

Язык Word, заданный как одно из следующего:

  • 'en' – Английский язык

  • 'de' – Немецкий язык

Если вы не задаете язык, то программное обеспечение обнаруживает язык автоматически. К lemmatize японскому или корейскому тексту используйте tokenizedDocument входной параметр.

Типы данных: char | string

Выходные аргументы

свернуть все

Обновленные документы, возвращенные как tokenizedDocument массив.

Обновленные слова, возвращенные как массив строк, вектор символов или массив ячеек из символьных векторов. words и updatedWords имейте совпадающий тип данных.

Алгоритмы

свернуть все

Детали языка

tokenizedDocument объекты содержат детали о лексемах включая детали языка. Детали языка входных документов определяют поведение normalizeWords. tokenizedDocument функция, по умолчанию, автоматически обнаруживает язык входного текста. Чтобы задать детали языка вручную, используйте 'Language' аргумент пары "имя-значение" tokenizedDocument. Чтобы посмотреть маркерные детали, используйте tokenDetails функция.

Вопросы совместимости

развернуть все

Поведение изменяется в R2018b

Введенный в R2017b

Для просмотра документации необходимо авторизоваться на сайте