addEntityDetails

Добавьте теги сущности в документы

Используйте addEntityDetails, чтобы добавить теги сущности в документы.

Используйте addEntityDetails, чтобы обнаружить имена человека, местоположения, организации и другие именованные сущности в тексте. Этот процесс известен как распознавание именованной сущности.

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

Синтаксис

updatedDocuments = addEntityDetails(documents)
updatedDocuments = addEntityDetails(documents,'RetokenizeMethod',method)

Описание

пример

updatedDocuments = addEntityDetails(documents) обнаруживает именованные сущности в documents. Функция добавляет, что детали к лексемам с недостающей сущностью детализируют только. Чтобы получить детали сущности от updatedDocuments, используйте tokenDetails.

updatedDocuments = addEntityDetails(documents,'RetokenizeMethod',method) также задает метод, чтобы повторно маркировать документы.

Совет

Используйте addEntityDetails перед использованием lower, upper, normalizeWords, removeWords, и функции removeStopWords как addEntityDetails используют информацию, которая удалена этими функциями.

Примеры

свернуть все

Создайте маркируемый массив документа.

str = [
    "Mary moved to Natick, Massachusetts."
    "John uses MATLAB at MathWorks."];
documents = tokenizedDocument(str);

Добавьте, что сущность назначает в документы с помощью функции addEntityDetails. Эта функция обнаруживает именованные сущности в тексте и добавляет детали в таблицу, возвращенную функцией tokenDetails. Посмотрите обновленные маркерные детали первых нескольких лексем.

documents = addEntityDetails(documents);
tdetails = tokenDetails(documents)
tdetails=13×8 table
         Token         DocumentNumber    SentenceNumber    LineNumber       Type        Language    PartOfSpeech       Entity   
    _______________    ______________    ______________    __________    ___________    ________    ____________    ____________

    "Mary"                   1                 1               1         letters           en       proper-noun     person      
    "moved"                  1                 1               1         letters           en       verb            non-entity  
    "to"                     1                 1               1         letters           en       adposition      non-entity  
    "Natick"                 1                 1               1         letters           en       proper-noun     location    
    ","                      1                 1               1         punctuation       en       punctuation     non-entity  
    "Massachusetts"          1                 1               1         letters           en       proper-noun     location    
    "."                      1                 1               1         punctuation       en       punctuation     non-entity  
    "John"                   2                 1               1         letters           en       proper-noun     person      
    "uses"                   2                 1               1         letters           en       verb            non-entity  
    "MATLAB"                 2                 1               1         letters           en       proper-noun     other       
    "at"                     2                 1               1         letters           en       adposition      non-entity  
    "MathWorks"              2                 1               1         letters           en       proper-noun     organization
    "."                      2                 1               1         punctuation       en       punctuation     non-entity  

Просмотрите слова, помеченные с сущностями "person", "location", "organization" или "other". Эти слова являются словами, не помеченными с "non-entity".

idx = tdetails.Entity ~= "non-entity";
tdetails.Token(idx)
ans = 6×1 string array
    "Mary"
    "Natick"
    "Massachusetts"
    "John"
    "MATLAB"
    "MathWorks"

Маркируйте японский текст с помощью tokenizedDocument.

str = [
    "マリーさんはボストンからニューヨークに引っ越しました。"
    "駅で鈴木さんに迎えに行きます。"
    "東京は大阪より大きいですか?"
    "東京に行った時、新宿や渋谷などいろいろな所に訪れたました。"];
documents = tokenizedDocument(str);

Для японского текста программное обеспечение автоматически добавляет теги именованной сущности, таким образом, вы не должны использовать функцию addEntityDetails. Это программное обеспечение обнаруживает имена человека, местоположения, организации и другие именованные сущности. Чтобы посмотреть детали сущности, используйте функцию tokenDetails.

tdetails = tokenDetails(documents);
head(tdetails)
ans=8×8 table
       Token        DocumentNumber    LineNumber     Type      Language    PartOfSpeech       Lemma          Entity  
    ____________    ______________    __________    _______    ________    ____________    ____________    __________

    "マリー"               1               1         letters       ja       proper-noun     "マリー"         person    
    "さん"                1               1         letters       ja       noun            "さん"           person    
    "は"                  1               1         letters       ja       adposition      "は"            non-entity
    "ボストン"             1               1         letters       ja       proper-noun     "ボストン"        location  
    "から"                1               1         letters       ja       adposition      "から"           non-entity
    "ニューヨーク"          1               1         letters       ja       proper-noun     "ニューヨーク"    location  
    "に"                  1               1         letters       ja       adposition      "に"            non-entity
    "引っ越し"             1               1         letters       ja       verb            "引っ越す"        non-entity

Просмотрите слова, помеченные с сущностью "person", "location", "organization" или "other". Эти слова являются словами не теговый "non-entity".

idx = tdetails.Entity ~= "non-entity";
tdetails(idx,:).Token
ans = 11×1 string array
    "マリー"
    "さん"
    "ボストン"
    "ニューヨーク"
    "鈴木"
    "さん"
    "東京"
    "大阪"
    "東京"
    "新宿"
    "渋谷"

Маркируйте немецкий текст с помощью tokenizedDocument.

str = [
    "Ernst zog von Frankfurt nach Berlin."
    "Besuchen Sie Volkswagen in Wolfsburg."];
documents = tokenizedDocument(str);

Чтобы добавить теги сущности в немецкий текст, используйте функцию addEntityDetails. Эта функция обнаруживает имена человека, местоположения, организации и другие именованные сущности.

documents = addEntityDetails(documents);

Чтобы посмотреть детали сущности, используйте функцию tokenDetails.

tdetails = tokenDetails(documents);
head(tdetails)
ans=8×8 table
       Token       DocumentNumber    SentenceNumber    LineNumber       Type        Language    PartOfSpeech      Entity  
    ___________    ______________    ______________    __________    ___________    ________    ____________    __________

    "Ernst"              1                 1               1         letters           de       proper-noun     person    
    "zog"                1                 1               1         letters           de       verb            non-entity
    "von"                1                 1               1         letters           de       adposition      non-entity
    "Frankfurt"          1                 1               1         letters           de       proper-noun     location  
    "nach"               1                 1               1         letters           de       adposition      non-entity
    "Berlin"             1                 1               1         letters           de       proper-noun     location  
    "."                  1                 1               1         punctuation       de       punctuation     non-entity
    "Besuchen"           2                 1               1         letters           de       verb            non-entity

Просмотрите слова, помеченные с сущностью "person", "location", "organization" или "other". Эти слова являются словами, не помеченными с "non-entity".

idx = tdetails.Entity ~= "non-entity";
tdetails(idx,:)
ans=5×8 table
       Token        DocumentNumber    SentenceNumber    LineNumber     Type      Language    PartOfSpeech       Entity   
    ____________    ______________    ______________    __________    _______    ________    ____________    ____________

    "Ernst"               1                 1               1         letters       de       proper-noun     person      
    "Frankfurt"           1                 1               1         letters       de       proper-noun     location    
    "Berlin"              1                 1               1         letters       de       proper-noun     location    
    "Volkswagen"          2                 1               1         letters       de       noun            organization
    "Wolfsburg"           2                 1               1         letters       de       proper-noun     location    

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

свернуть все

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

Метод, чтобы повторно маркировать документы, заданные как одно из следующего:

  • 'entity' – Преобразуйте лексемы для распознавания именованной сущности. Функция объединяет лексемы от той же сущности в одну лексему.

  • 'none' Не повторно маркируйте документы.

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

свернуть все

Обновленные документы, возвращенные как массив tokenizedDocument. Чтобы получить маркерные детали от updatedDocuments, используйте tokenDetails.

Алгоритмы

свернуть все

Детали языка

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

Введенный в R2019a