Middle — Senior
Co jsou to kontextové vnoření? Uveďte příklady modelů.
sobes.tech AI
Odpověď od AI
Kontekstové vložky jsou vektorové reprezentace slov nebo tokenů, které závisí na kontextu, ve kterém jsou tato slova používána. Na rozdíl od statických vložek (například Word2Vec nebo GloVe), kde má každé slovo pevné zobrazení, se kontextové vložky mění v závislosti na okolním textu, což umožňuje lépe zachytit víceméně a syntaktické vlastnosti.
Příklady modelů, které generují kontextové vložky:
- ELMo (Embeddings from Language Models) — používá obousměrné LSTM k vytváření vložek závislých na kontextu.
- BERT (Bidirectional Encoder Representations from Transformers) — transformátor, který je trénován na úloze maskovaného jazyka a generuje vložky zohledňující kontext vlevo i vpravo.
- GPT (Generative Pre-trained Transformer) — autoregresivní model, který generuje vložky s ohledem na předchozí kontext.
Příklad použití BERT k získání vložek slova v kontextu:
from transformers import BertTokenizer, BertModel
import torch
tokenizer = BertTokenizer.from_pretrained('bert-base-uncased')
model = BertModel.from_pretrained('bert-base-uncased')
sentence = "The bank will not approve the loan."
inputs = tokenizer(sentence, return_tensors='pt')
outputs = model(**inputs)
# outputs.last_hidden_state obsahuje vložky pro každý token s ohledem na kontext
embeddings = outputs.last_hidden_state