NLP Academy · レッスン

レンマ化: より賢い基本形への変換

単語を実在する辞書形に戻す

レッスン 4/413 ステップ

「レンマ化: より賢い基本形への変換」はCoddyKit上の無料NLP Academyレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはNLP Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 NLP Academyコースには全4レッスンが含まれています。

より賢い縮約方法

ステミングは機械的に切り落としますが、レンマ化は単語を、lemma と呼ばれる実際の辞書上の基本形に変換します。その結果は常に正しい単語になります。📖

レンマと語幹の違い

ステミングでは studies が studi になりますが、レンマ化では正しい基本形 study が返されます。この整った有効な出力こそが、レンマ化の大きな利点です。

語彙を使用する

レンマ化器は、WordNetのような実際の語彙で単語を検索します。この検索によって、better の基本形が bett ではなく better だと判断できます。

WordNet Lemmatizer

NLTKにはWordNetLemmatizerが用意されています。インスタンスを作成し、単語に対して lemmatize を呼び出すと、基本形が返されます。

from nltk.stem import WordNetLemmatizer
lem = WordNetLemmatizer()
print(lem.lemmatize('cars'))

品詞が重要

デフォルトでは、レンマ化器はすべての単語を名詞として扱います。そのため、動詞の running は、その単語が動詞だと指定しない限り running のままです。

print(lem.lemmatize('running'))

正しいタグを渡す

pos 引数を渡せば、この問題を解決できます。その単語が動詞だとレンマ化器に伝えると、running は基本形のrunまで変換されます。

print(lem.lemmatize('running', pos='v'))

不規則変化にも対応

実際の文法を理解しているため、レンマ化器は難しい単語にも対応できます。動詞 went は正しく基本形のgoになります。これはステマーにはできない処理です。

print(lem.lemmatize('went', pos='v'))

形容詞と複数形

ほかの品詞にも対応しています。形容詞のタグを付けると、レンマ化器は better を基本形のgoodに変換します。

print(lem.lemmatize('better', pos='a'))

トークンのリストをレンマ化する

ステミングと同じように、内包表記を使って文書全体に適用できます。各トークンが、正しく整った基本形として返されます。

words = ['dogs', 'boxes', 'wishes']
print([lem.lemmatize(w) for w in words])

遅いが精度が高い

レンマ化には辞書と、できれば品詞タグが必要なため、ステミングより処理が遅くなります。速度と引き換えに、より整った正確な結果を得る方法です。⚖️

どちらを選ぶべきか

高速で大規模な検索にはステミングを使い、モデルの特徴量を作る場合のように、読みやすく正確な基本形が重要ならレンマ化を使います。

簡単な確認

2つの縮約方法を比較しましょう。

まとめ

レンマ化では、語彙と品詞タグを使って実際の基本形を返すことを学びました。ステミングより遅い一方で、結果ははるかに整っています。すばらしいです!🎉

無料で開始

AI チューターと学ぶ Python — 無料

ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。

コース
30
レッスン
120

よくある質問

「レンマ化: より賢い基本形への変換」レッスンは無料ですか?

はい。「レンマ化: より賢い基本形への変換」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、NLP Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 NLP Academyコースには全4レッスンが含まれています。

「レンマ化: より賢い基本形への変換」で何を学びますか?

単語を実在する辞書形に戻す ブラウザで直接実行するハンズオンコードでNLP Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

NLP Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのNLP Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。

「レンマ化: より賢い基本形への変換」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このNLP Academyレッスンでコードを書いて実行できますか?

はい。すべてのNLP Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. 大文字小文字と空白が重要な理由
  2. 小文字化と空白の除去
  3. ステミング: 語幹まで切り詰める
  4. レンマ化: より賢い基本形への変換
← NLP Academyに戻る