テキストマイニングで熟語を指定する方法

Text Analytics Toolboxを用いてテキストマイニングを行っています。
tokenizedDocumentによりドキュメントをトークン化する際、熟語が想定と異なる分けられ方をしてしまいます。
例えば、近赤外分光で1つの熟語(もしくは近赤外、分光で2つの熟語)として欲しいのですが、近、赤、外、分光で4つのトークンに分かれてしまいます。
ある文字列を熟語として設定する方法はあるのでしょうか。
よろしくお願いします。

 Respuesta aceptada

Kojiro Saito
Kojiro Saito el 18 de Feb. de 2025
Editada: Kojiro Saito el 18 de Feb. de 2025

0 votos

tokenizedDocumentmecabOptionsを入れることでトークンの切れ目を変更できます。
mecabの辞書はhttps://dbarchive.biosciencedbc.jp/en/mecab/download.htmlからダウンロードしたものを使った例です。
ただ、「近赤外」、「分光」でうまく分けられなかったので、カスタムトークンのオプションを入れる方法も紹介します。
str = "近赤外分光";
%% Thesaurus2015.dicを使用
options = mecabOptions('UserModel', 'Thesaurus2015.dic')
documents = tokenizedDocument(str, 'TokenizeMethod', options) % 1 個のトークン: 近赤外分光
%% Nikkaji.dicを使用
options = mecabOptions('UserModel', 'Nikkaji.dic')
documents = tokenizedDocument(str, 'TokenizeMethod', options) % 4 個のトークン: 近 赤 外 分光
%% JSTMeSH.dicを使用
options = mecabOptions('UserModel', 'JSTMeSH.dic')
documents = tokenizedDocument(str, 'TokenizeMethod', options) % 4 個のトークン: 近 赤 外 分光
%% カスタムトークンを使用
documents = tokenizedDocument(str, CustomTokens=["近赤外" "分光"]) % 2 個のトークン: 近赤外 分光

1 comentario

谷口
谷口 el 11 de Mzo. de 2025
回答があったのに気がついておりませんでした。
mecabOptions、MeCab user dictionaryを使うことで実現できるとのことで、実際にできました。
ありがとうございます。

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre プログラミング en Centro de ayuda y File Exchange.

Productos

Versión

R2024b

Preguntada:

el 17 de Feb. de 2025

Comentada:

el 11 de Mzo. de 2025

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!