Наиболее часто n-грамм
указывает дополнительные параметры, использующие один или несколько аргументов пары имя-значение.tbl = topkngrams(___,Name,Value)
Создайте таблицу наиболее часто встречающихся биграмм модели Bag-of-n-grams.
Загрузите данные примера. Файл sonnetsPreprocessed.txt содержит предварительно обработанные версии сонетов Шекспира. Файл содержит один сонет на строку со словами, разделенными пробелом. Извлечь текст из sonnetsPreprocessed.txtразделите текст на документы с новыми символами, а затем пометьте документы.
filename = "sonnetsPreprocessed.txt";
str = extractFileText(filename);
textData = split(str,newline);
documents = tokenizedDocument(textData);Создайте модель мешка n-grams.
bag = bagOfNgrams(documents)
bag =
bagOfNgrams with properties:
Counts: [154×8799 double]
Vocabulary: [1×3092 string]
Ngrams: [8799×2 string]
NgramLengths: 2
NumNgrams: 8799
NumDocuments: 154
Найдите 5 лучших биграмм.
tbl = topkngrams(bag)
tbl=5×3 table
Ngram Count NgramLength
________________ _____ ___________
"thou" "art" 34 2
"mine" "eye" 15 2
"thy" "self" 14 2
"thou" "dost" 13 2
"mine" "own" 13 2
Найдите 10 лучших биграмм.
tbl = topkngrams(bag,10)
tbl=10×3 table
Ngram Count NgramLength
_________________ _____ ___________
"thou" "art" 34 2
"mine" "eye" 15 2
"thy" "self" 14 2
"thou" "dost" 13 2
"mine" "own" 13 2
"thy" "sweet" 12 2
"thy" "love" 11 2
"dost" "thou" 10 2
"thou" "wilt" 10 2
"love" "thee" 9 2
Загрузите данные примера. Файл sonnetsPreprocessed.txt содержит предварительно обработанные версии сонетов Шекспира. Файл содержит один сонет на строку со словами, разделенными пробелом. Извлечь текст из sonnetsPreprocessed.txtразделите текст на документы с новыми символами, а затем пометьте документы.
filename = "sonnetsPreprocessed.txt";
str = extractFileText(filename);
textData = split(str,newline);
documents = tokenizedDocument(textData);Создайте модель мешка n-grams. Для подсчета n-граммов длины 2 и 3 (биграмы и триграммы) укажите 'NgramLengths' чтобы быть вектором [2 3].
bag = bagOfNgrams(documents,'NgramLengths',[2 3])bag =
bagOfNgrams with properties:
Counts: [154×18022 double]
Vocabulary: [1×3092 string]
Ngrams: [18022×3 string]
NgramLengths: [2 3]
NumNgrams: 18022
NumDocuments: 154
Просмотрите 10 наиболее распространенных n-граммов длины 2 (биграмм).
topkngrams(bag,10,'NGramLengths',2)ans=10×3 table
Ngram Count NgramLength
_______________________ _____ ___________
"thou" "art" "" 34 2
"mine" "eye" "" 15 2
"thy" "self" "" 14 2
"thou" "dost" "" 13 2
"mine" "own" "" 13 2
"thy" "sweet" "" 12 2
"thy" "love" "" 11 2
"dost" "thou" "" 10 2
"thou" "wilt" "" 10 2
"love" "thee" "" 9 2
Просмотрите 10 наиболее распространенных n-граммов длиной 3 (триграммы).
topkngrams(bag,10,'NGramLengths',3)ans=10×3 table
Ngram Count NgramLength
____________________________ _____ ___________
"thy" "sweet" "self" 4 3
"why" "dost" "thou" 4 3
"thy" "self" "thy" 3 3
"thou" "thy" "self" 3 3
"mine" "eye" "heart" 3 3
"thou" "shalt" "find" 3 3
"fair" "kind" "true" 3 3
"thou" "art" "fair" 2 3
"love" "thy" "self" 2 3
"thy" "self" "thou" 2 3
bag - Модель входного мешка n-граммbagOfNgrams объектВходная модель мешка n-граммов, указанная как bagOfNgrams объект.
k - Количество n-граммКоличество возвращаемых n-граммов, указанное как положительное целое число.
Пример: 20
Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.
'NgramLengths',[2 3] возвращает верхние биграммы и триграммы.'NgramLengths' - N-граммовые длиныN-граммовые длины, определяемые как разделенная запятыми пара, состоящая из 'NgramLengths' и положительное целое число или вектор положительных целых чисел.
При указании NgramLengths, то функция возвращает только n-граммов этих длин. Если не указать NgramLengths, то функция возвращает верхние n-грамм независимо от длины.
Пример: [1 2 3]
'IgnoreCase' - Возможность игнорировать регистрfalse (по умолчанию) | trueПараметр для игнорирования регистра, заданного как разделенная запятыми пара, состоящая из 'IgnoreCase' и одно из следующих:
false - рассматривать n-граммы, отличающиеся только в зависимости от случая, как отдельные n-граммы.
true - рассматривать n-граммы, отличающиеся только в зависимости от случая, как одинаковые n-граммы и количество слияний.
'ForceCellOutput' - Индикатор принудительного возврата выходного сигнала в виде массива ячеекfalse (по умолчанию) | trueИндикатор принудительного возврата выходного сигнала в виде массива ячеек, заданного как пара, разделенная запятыми, состоящая из 'ForceCellOutput' и true или false.
Типы данных: logical
tbl - Таблица верхних n-граммТаблица верхних n-граммов отсортирована в порядке частоты или массива ячеек таблиц.
Таблица содержит следующие столбцы:
Ngram | N-грамм указан как строковый вектор |
Count | Количество раз, когда n-грамм появляется в модели мешка n-граммов. |
NgramLength | Длина n-грамма. |
Если bag является нескалярным массивом или 'ForceCellOutput' является trueзатем функция возвращает выходные данные в виде массива ячеек таблиц. Каждый элемент в массиве ячеек представляет собой таблицу, содержащую верхние n-граммы соответствующего элемента bag.
bagOfNgrams | bagOfWords | removeInfrequentNgrams | removeNgrams | tfidf | tokenizedDocument | topkwords
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.