3

NLTK DependencyGraphを使用して、CoNLL 入力から依存関係ツリーを作成しようとしています。私が理解したのは、このクラスがとの間のない依存関係のためのtree() methodビルドツリー構造を提供するということです。木にはPOSタグもありません。また、head、relation、および従属に POS タグを提供するtriple()もあります。トリプルメソッドでは、単語のインデックスがトリプルにないため、文の中で単語が繰り返される場合、依存関係を取得するのは困難です。ここでは、同じ単語に対して 2 つの異なるノードがあります。relationheaddependents methodthe red car is behind the blue carcar

では、CoNLL 入力から、ヘッド ワード、そのタグ、リレーション、子を含む依存関係ツリーを取得する方法を説明します。また、この情報 (主語、そのタグ、関係、子) を特定の文で見つけることができる同様のデータ構造にすることもできます。任意の提案を歓迎します。以下は、開始に使用できるコードです。

from nltk.parse import DependencyGraph


conll_data2 = """1   Cathy             Cathy             N     N     eigen|ev|neut                    2   su      _  _
2   zag               zie               V     V     trans|ovt|1of2of3|ev             0   ROOT    _  _
3   hen               hen               Pron  Pron  per|3|mv|datofacc                2   obj1    _  _
4   wild              wild              Adj   Adj   attr|stell|onverv                5   mod     _  _
5   zwaaien           zwaai             N     N     soort|mv|neut                    2   vc      _  _
6   .                 .                 Punc  Punc  punt                             5   punct   _  _

1   the _   DET DT  _   3   det _   _
2   blue    _   ADJ JJ  _   3   amod    _   _
3   car _   NOUN    NN  _   4   nsubj   _   _
4   is  _   VERB    VBZ _   0   ROOT    _   _
5   behind  _   ADP IN  _   4   prep    _   _
6   the _   DET DT  _   8   det _   _
7   red _   ADJ JJ  _   8   amod    _   _
8   car _   NOUN    NN  _   5   pobj    _   _

1   Ze                ze                Pron  Pron  per|3|evofmv|nom                 2   su      _  _
2   had               heb               V     V     trans|ovt|1of2of3|ev             0   ROOT    _  _
3   met               met               Prep  Prep  voor                             8   mod     _  _
4   haar              haar              Pron  Pron  bez|3|ev|neut|attr               5   det     _  _
5   moeder            moeder            N     N     soort|ev|neut                    3   obj1    _  _
6   kunnen            kan               V     V     hulp|ott|1of2of3|mv              2   vc      _  _
7   gaan              ga                V     V     hulp|inf                         6   vc      _  _
8   winkelen          winkel            V     V     intrans|inf                      11  cnj     _  _
9   ,                 ,                 Punc  Punc  komma                            8   punct   _  _
10  zwemmen           zwem              V     V     intrans|inf                      11  cnj     _  _
11  of                of                Conj  Conj  neven                            7   vc      _  _
12  terrassen         terras            N     N     soort|mv|neut                    11  cnj     _  _
13  .                 .                 Punc  Punc  punt                             12  punct   _  _
"""


graphs = [DependencyGraph(entry)
for entry in conll_data2.split('\n\n') if entry]

for graph in graphs:

 #find data structure here to get head word, its tag, relation, children. 
4

0 に答える 0