Наиболее частые n-граммы
задает дополнительные опции, используя один или несколько аргументы пары "имя-значение".tbl = topkngrams(___,Name,Value)
Составьте таблицу наиболее частых биграммов модели мешка n-граммов.
Загрузите данные примера. Файл sonnetsPreprocessed.txt содержит предварительно обработанные версии сонетов Шекспира. Файл содержит по одному сонету на линию со словами, разделенными пространством. Извлеките текст из sonnetsPreprocessed.txtразделите текст на документы в символах новой строки, а затем пометьте его токеном.
filename = "sonnetsPreprocessed.txt";
str = extractFileText(filename);
textData = split(str,newline);
documents = tokenizedDocument(textData);Создайте модель сумки n-граммов.
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-граммов. Для подсчета 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 объектВходная модель bag-of-n-gams, заданная как 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. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.