NLP Academy · レッスン

係り受け解析の基本

文中で単語がどう結び付くかを見る

レッスン 4/413 ステップ

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

単一のタグを超えて

POSタグは各単語の役割を示しますが、単語同士のつながりまでは示しません。依存構文解析を使うと、どの単語がどの単語に依存しているかが分かり、文の構造を地図のように表せます。🔗

文を木構造として見る

パーサーは単語を木構造に配置します。1つの単語がルートになり、それ以外の単語はラベル付きのリンクを通じてルートからつながります。

ルート動詞

rootは通常、文の中心となる主動詞です。The cat chased the mouseでは、ルートはchasedです。

ヘッドと子ノード

すべての単語には、その単語がつながる先であるheadがあります。そこにつながる単語が子ノードとなり、木構造の枝を形成します。

関係を読む

各リンクには依存関係を表すラベルがあります。主語にはnsubj、直接目的語にはdobjというタグが付けられます。

spaCyなら無料で構文解析できる

単語にタグを付ける同じモデルで、構文解析も実行できます。nlp()の後は、すべてのトークンに依存関係の情報が含まれているため、すぐに読み取れます。

doc = nlp("The cat chased the mouse")

dep_とheadを読む

関係にはtoken.dep_を、つながり先の単語にはtoken.headを使います。この2つで、木構造におけるトークンの位置を表せます。

for t in doc:
    print(t.text, t.dep_, t.head.text)

主語を見つける

動作を行う人物や物を取得するには、dep_がnsubjであるトークンを探します。その単語が動詞の文法上の主語です。

subj = [t.text for t in doc if t.dep_ == "nsubj"]

関係を説明する

ラベルの意味が分かりませんか。spacy.explain()に渡せば、POSタグのときと同じように、分かりやすい説明を取得できます。

print(spacy.explain("dobj"))

木構造を可視化する

displacyで構文解析結果を描画します。styleをdepに設定すると、各ヘッドから子ノードへ向かうラベル付きの矢印が描かれます。

from spacy import displacy
displacy.render(doc, style="dep")

構文解析が重要な理由

依存関係が分かると、動作とその行為者や対象を結び付けるなど、実際の意味を捉えられます。この構造が、情報抽出、検索、質問応答を支えます。

クイックチェック

構文解析で主語がどのように示されるか思い出してください。

まとめ

ヘッドと子ノードからなる木構造として文を捉え、spaCyでdep_を読み取り、displacyで構文解析結果を描画しました。これで単語同士の関係を地図のように表せます。🎉

無料で開始

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. spaCy で単語にタグを付ける
  3. タグパターンでフレーズを抽出する
  4. 係り受け解析の基本
← NLP Academyに戻る