Поддержка японского языка

В этой теме результирующие функции Text Analytics Toolbox™, которые поддержка японский текст. Для примера, показывающего, как анализировать японские текстовые данные, смотрите Анализ японских текстовых данных.

Tokenization

The tokenizedDocument функция автоматически обнаруживает японский вход. Кроме того, установите 'Language' опция в tokenizedDocument на 'ja'. Эта опция задает подробные сведения о языке лексем. Чтобы просмотреть подробные сведения о языке лексем, используйте tokenDetails. Эти детали языка определяют поведение removeStopWords, addPartOfSpeechDetails, normalizeWords, addSentenceDetails, и addEntityDetails функций на лексемах.

Чтобы задать дополнительные опции MeCab для токенизации, создайте mecabOptions объект. Для токенизации с использованием заданных опций токенизации MeCab используйте 'TokenizeMethod' опция tokenizedDocument.

Токенизация японского текста

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

str = [
    "恋に悩み、苦しむ。"
    "恋の悩みで苦しむ。"
    "空に星が輝き、瞬いている。"
    "空の星が輝きを増している。"];
documents = tokenizedDocument(str)
documents = 
  4x1 tokenizedDocument:

     6 tokens: 恋 に 悩み 、 苦しむ 。
     6 tokens: 恋 の 悩み で 苦しむ 。
    10 tokens: 空 に 星 が 輝き 、 瞬い て いる 。
    10 tokens: 空 の 星 が 輝き を 増し て いる 。

Детали части речи

tokenDetails функция по умолчанию включает часть деталей речи с данными лексемы.

Получить часть речи Детали японского текста

Токенизация японского текста с помощью tokenizedDocument.

str = [
    "恋に悩み、苦しむ。"
    "恋の悩みで 苦しむ。"
    "空に星が輝き、瞬いている。"
    "空の星が輝きを増している。"
    "駅までは遠くて、歩けない。"
    "遠くの駅まで歩けない。"
    "すもももももももものうち。"];
documents = tokenizedDocument(str);

Для японского текста можно получить детали части речи с помощью tokenDetails. Для английского текста необходимо сначала использовать addPartOfSpeechDetails.

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

    "恋"             1               1         letters           ja       noun            "恋"       non-entity
    "に"             1               1         letters           ja       adposition      "に"       non-entity
    "悩み"           1               1         letters           ja       verb            "悩む"      non-entity
    "、"             1               1         punctuation       ja       punctuation     "、"       non-entity
    "苦しむ"          1               1         letters           ja       verb            "苦しむ"    non-entity
    "。"             1               1         punctuation       ja       punctuation     "。"       non-entity
    "恋"             2               1         letters           ja       noun            "恋"       non-entity
    "の"             2               1         letters           ja       adposition      "の"       non-entity

Распознавание именованной сущности

tokenDetails функция по умолчанию включает в себя сведения о сущности с подробными данными лексемы.

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

Токенизация японского текста с помощью 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 = 11x1 string
    "マリー"
    "さん"
    "ボストン"
    "ニューヨーク"
    "鈴木"
    "さん"
    "東京"
    "大阪"
    "東京"
    "新宿"
    "渋谷"

Стоп-слова

Чтобы удалить стоповые слова из документов в соответствии с подробными данными языка токенов, используйте removeStopWords. Для получения списка японских стоповых слов установите 'Language' опция в stopWords на 'ja'.

Удалить японские стоповые слова

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

str = [
    "ここは静かなので、とても穏やかです"
    "企業内の顧客データを利用し、今年の売り上げを調べることが出来た。"
    "私は先生です。私は英語を教えています。"];
documents = tokenizedDocument(str);

Удалите стоповые слова с помощью removeStopWords. Функция использует детали языка из documents чтобы определить, какой язык остановить слова для удаления.

documents = removeStopWords(documents)
documents = 
  3x1 tokenizedDocument:

     4 tokens: 静か 、 とても 穏やか
    10 tokens: 企業 顧客 データ 利用 、 今年 売り上げ 調べる 出来 。
     5 tokens: 先生 。 英語 教え 。

Lemmatization

Чтобы лемматизировать лексемы согласно деталям языка токенов, используйте normalizeWords и установите 'Style' опция для 'lemma'.

Лемматизируйте японский текст

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

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

Лемматизируйте лексемы, используя normalizeWords.

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

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

Независимые от языка функции

Подсчет слов и N-граммов

The bagOfWords и bagOfNgrams поддержка функций tokenizedDocument вход независимо от языка. Если у вас есть tokenizedDocument массив, содержащий ваши данные, тогда вы можете использовать эти функции.

Моделирование и предсказание

fitlda и fitlsa поддержка функций bagOfWords и bagOfNgrams вход независимо от языка. Если у вас есть bagOfWords или bagOfNgrams объект, содержащий ваши данные, тогда вы можете использовать эти функции.

trainWordEmbedding функция поддерживает tokenizedDocument или файл входа независимо от языка. Если у вас есть tokenizedDocument массив или файл, содержащий ваши данные в правильном формате, тогда можно использовать эту функцию.

См. также

| | | | | | |

Похожие темы