Sobes.tech
Middle — Senior

Эмбеддинги контекстӣ чист? Моделҳоро мисол кунед.

sobes.tech AI

Ҷавоб аз AI

Embedingsи контекстуалӣ ин намоишҳои вектории калимаҳо ё токенҳо мебошанд, ки аз контексти истифодаи онҳо вобастаанд. Баръакси embedingsи статикӣ (масалан, Word2Vec ё GloVe), ки ҳар калима дорои намоиши доимӣ аст, embedingsи контекстуалӣ дар асоси матни гирду атроф тағйир меёбанд, ки имкон медиҳад беҳтар ба маънои бисёрҷониба ва хусусиятҳои синтаксиси диққат диҳанд.

Моделҳое, ки embedingsи контекстуалӣ истеҳсол мекунанд:

  • ELMo (Embeddings from Language Models) — аз LSTM ду самтӣ барои эҷоди embedings, ки аз контекст вобастаанд, истифода мебарад.
  • BERT (Bidirectional Encoder Representations from Transformers) — трансформатор, ки дар вазифаи забони маскировкашуда омӯзонида шудааст ва embedings-ро, ки контекстро аз чап ва рост ба назар мегирад, истеҳсол мекунад.
  • GPT (Generative Pre-trained Transformer) — модел, ки бо дар назар гирифтани контексти қаблӣ, embedings-ро истеҳсол мекунад.

Маслиҳат барои истифодаи BERT барои гирифтани embedings калима дар контекст:

from transformers import BertTokenizer, BertModel
import torch

tokenizer = BertTokenizer.from_pretrained('bert-base-uncased')
model = BertModel.from_pretrained('bert-base-uncased')

сентенс = "The bank will not approve the loan."
inputs = tokenizer(сентенс, return_tensors='pt')
outputs = model(**inputs)

# outputs.last_hidden_state дорои embedings барои ҳар токен бо дар назар гирифтани контекст
embeddings = outputs.last_hidden_state