元の質問:
単語の多義性は、それが持つ感覚の数です。WordNetを使用すると、名詞dogがlen(wn.synsets('dog'、'n'))で7つの感覚を持っていることを判別できます。WordNetに従って、名詞、動詞、形容詞、副詞の平均多義性を計算します。
質問から集めたものから、私はWordNetでNLTKに組み込まれた多義性メソッドを使用して、何かが持っている感覚の数を見つけることでした。
さらに重要なことに、私は利用可能なすべてのシンセットを使用してそれらをループし、返されたすべての値をセットに入れようとしています。この後、合計を受け取るために新しく作成されたセット(整数で埋められた)内のすべてのシンセットの総数を追加するつもりでした。この合計を取得した後、平均を受け取るためにエントリの総数を分割します。
私の最大の質問は...名詞、動詞、形容詞、副詞だけでなく、利用可能なすべてのシンセットをループする方法を教えてください。
- さまざまなWebサイトを調べたところ、「wn.all_synsets('n')」の場合、可能な名詞のsynsetがすべて返されることがわかりました。
ただし、返されるタイプは「ジェネレーター」です。ループを使用して「ジェネレーター」タイプを反復処理するにはどうすればよいですか?
。>>>allsynsets= wn.all_synsets('n')
。>>>allsynsets
<.generator object all_synsets at 0x04359F30>
。>>>type(allsynsets)
<.type'ジェネレータ'>
誰もがこの問題の答えを見つけることができるように、十分な情報を提供したことを願っています。この問題のジェネレータタイプを理解するためのインポートとテストを除いて、ソースコードはありません。
お時間をいただきありがとうございます。