Сведения о маркерах в маркированном массиве документов
Создание маркированного массива документов.
str = [ ... "This is an example document. It has two sentences." "This document has one sentence and an emoticon. :)" "Here is another example document. :D"]; documents = tokenizedDocument(str);
Просмотр сведений о маркерах первых нескольких маркеров.
tdetails = tokenDetails(documents); head(tdetails)
ans=8×5 table
Token DocumentNumber LineNumber Type Language
__________ ______________ __________ ___________ ________
"This" 1 1 letters en
"is" 1 1 letters en
"an" 1 1 letters en
"example" 1 1 letters en
"document" 1 1 letters en
"." 1 1 punctuation en
"It" 1 1 letters en
"has" 1 1 letters en
type содержит тип каждого маркера. Просмотр смайликов в документах.
idx = tdetails.Type == "emoticon";
tdetails(idx,:)ans=2×5 table
Token DocumentNumber LineNumber Type Language
_____ ______________ __________ ________ ________
":)" 2 1 emoticon en
":D" 3 1 emoticon en
Создание маркированного массива документов.
str = [ ... "This is an example document. It has two sentences." "This document has one sentence." "Here is another example document. It also has two sentences."]; documents = tokenizedDocument(str);
Добавление сведений о предложении в документы с помощью addSentenceDetails. Эта функция добавляет номера предложений в таблицу, возвращаемую tokenDetails. Просмотр обновленных сведений о маркерах первых нескольких маркеров.
documents = addSentenceDetails(documents); tdetails = tokenDetails(documents); head(tdetails)
ans=8×6 table
Token DocumentNumber SentenceNumber LineNumber Type Language
__________ ______________ ______________ __________ ___________ ________
"This" 1 1 1 letters en
"is" 1 1 1 letters en
"an" 1 1 1 letters en
"example" 1 1 1 letters en
"document" 1 1 1 letters en
"." 1 1 1 punctuation en
"It" 1 2 1 letters en
"has" 1 2 1 letters en
Просмотрите сведения о маркере второго предложения третьего документа.
idx = tdetails.DocumentNumber == 3 & ...
tdetails.SentenceNumber == 2;
tdetails(idx,:)ans=6×6 table
Token DocumentNumber SentenceNumber LineNumber Type Language
___________ ______________ ______________ __________ ___________ ________
"It" 3 2 1 letters en
"also" 3 2 1 letters en
"has" 3 2 1 letters en
"two" 3 2 1 letters en
"sentences" 3 2 1 letters en
"." 3 2 1 punctuation en
Загрузите данные примера. Файл sonnetsPreprocessed.txt содержит предварительно обработанные версии сонетов Шекспира. Файл содержит один сонет на строку со словами, разделенными пробелом. Извлечь текст из sonnetsPreprocessed.txtразделите текст на документы с новыми символами, а затем пометьте документы.
filename = "sonnetsPreprocessed.txt";
str = extractFileText(filename);
textData = split(str,newline);
documents = tokenizedDocument(textData);Просмотр сведений о маркерах первых нескольких маркеров.
tdetails = tokenDetails(documents); head(tdetails)
ans=8×5 table
Token DocumentNumber LineNumber Type Language
___________ ______________ __________ _______ ________
"fairest" 1 1 letters en
"creatures" 1 1 letters en
"desire" 1 1 letters en
"increase" 1 1 letters en
"thereby" 1 1 letters en
"beautys" 1 1 letters en
"rose" 1 1 letters en
"might" 1 1 letters en
Добавление деталей речи в документы с помощью addPartOfSpeechDetails функция. Эта функция сначала добавляет информацию о предложении в документы, а затем добавляет теги части речи в таблицу, возвращаемую tokenDetails. Просмотр обновленных сведений о маркерах первых нескольких маркеров.
documents = addPartOfSpeechDetails(documents); tdetails = tokenDetails(documents); head(tdetails)
ans=8×7 table
Token DocumentNumber SentenceNumber LineNumber Type Language PartOfSpeech
___________ ______________ ______________ __________ _______ ________ ______________
"fairest" 1 1 1 letters en adjective
"creatures" 1 1 1 letters en noun
"desire" 1 1 1 letters en noun
"increase" 1 1 1 letters en noun
"thereby" 1 1 1 letters en adverb
"beautys" 1 1 1 letters en noun
"rose" 1 1 1 letters en noun
"might" 1 1 1 letters en auxiliary-verb
documents - Исходные документыtokenizedDocument множествоИсходные документы, указанные как tokenizedDocument массив.
tdetails - Таблица сведений о маркерахТаблица сведений о маркере. tdetails имеет следующие переменные:
| Имя | Описание |
|---|---|
Token | Текст маркера, возвращаемый как строковый скаляр. |
DocumentNumber | Индекс документа, которому принадлежит маркер, возвращенный как положительное целое число. |
SentenceNumber | Число предложений маркера в документе, возвращаемое как положительное целое число. Если эти сведения отсутствуют, сначала добавьте сведения о предложении в documents с использованием addSentenceDetails функция. |
LineNumber | Номер строки маркера в документе, возвращаемый как положительное целое число. |
Type | Тип маркера, возвращаемый как один из следующих:
Если эти сведения отсутствуют, сначала добавьте сведения о типе в |
Language | Язык маркера, возвращаемый как один из следующих:
Эти сведения о языке определяют поведение Если эти сведения отсутствуют, сначала добавьте сведения о языке в Дополнительные сведения о языковой поддержке в Toolbox™ Text Analytics см. в разделе Языковые рекомендации. |
PartOfSpeech | Часть речевого тега, указанная как категориальное из одного из следующих имен классов:
Если эти сведения отсутствуют, сначала добавьте сведения о части речи в |
Entity | Тег объекта, указанный как одно из следующих значений:
Если эти сведения отсутствуют, сначала добавьте сведения об объекте в |
Lemma | Форма леммы. Если эти данные отсутствуют, сначала введите данные леммы для |
tokenDetails возвращает тип маркера emoji для символов эмодзиВ R2018b изменилось поведение
Начиная с R2018b, tokenizedDocument обнаруживает символы эмодзи и tokenDetails функция сообщает эти маркеры с типом "emoji". Это упрощает анализ текста, содержащего символы эмодзи.
В R2018a, tokenDetails сообщает символы эмодзи с типом "other". Поиск индексов маркеров с типом "emoji" или "other", используйте индексы idx = tdetails.Type == "emoji" | tdetails.Type == "other", где tdetails - таблица сведений о маркерах.
addEntityDetails | addLanguageDetails | addLemmaDetails | addPartOfSpeechDetails | addSentenceDetails | addTypeDetails | normalizeWords | tokenizedDocument
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.