係り受け解析の基本
文中で単語がどう結び付くかを見る
「係り受け解析の基本」は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フィードバックを取得できます。ローカル設定は不要です。