基本的に、カスタム フレア言語モデルを使用して、単語または文のベクトルへの埋め込みを取得しようとしています。これは可能ですか、それとも flair NER モデルを使用する場合にのみ flair 埋め込みが機能しますか?
埋め込み .embed() 関数を使用すると、"[文: "痛み" [- トークン: 1]]" のような出力が返されます。ここで、連続した数値のベクトルを探しています。
ありがとうございました。
フレアの作者自身による単語の埋め込みに関する公式のチュートリアルがあり、このトピックを正確にカバーしているように見えるため、私はかなり混乱しています。.embed()
問題は、処理された文オブジェクトをそのオブジェクトの実際の.embedding
プロパティと混同していることだと思います。
いずれにせよ、次のように個々のトークンの単語埋め込みを単純に繰り返すことができます (上記のチュートリアルから取得)。
from flair.embeddings import WordEmbeddings
from flair.data import Sentence
# init embedding
glove_embedding = WordEmbeddings('glove')
# create sentence.
sentence = Sentence('The grass is green .')
# embed a sentence using glove.
glove_embedding.embed(sentence)
# now check out the embedded tokens.
for token in sentence:
print(token)
print(token.embedding)
任意の文字シーケンスに適用できるかどうかを知るには、Flair に精通していませんが、トークンに対してはうまくいきました。