biLSTM-CRF
forkortelse for bidirectional Long Short-Term Memory - Conditional Random Field
biLSTM-CRF er en arkitektur, der anvender en bidirectional LSTM til at fange kontekst fra begge sider af et ord og en CRF til at lære sekvensafhængigheder mellem etiketterne.
Kort fortalt
En model til at forudsige labels for hvert ord i en sætning, der tager højde for både ordets omgivelser og regler for label-sekvenser.
- Kategori
- arkitektur
- Niveau
- øvet
- Udtale
- /baɪ ɛl ɛs tiː ɛm siː ɑːr ɛf/
Betydninger
1- 1
En neurale netværksarkitektur til sekvensmærkning, der kombinerer en tovejs lang korttidshukommelse (biLSTM) med en betinget tilfældig markov-felt (CRF) for at modellere afhængigheder mellem output-etiketter.
- biLSTM-CRF opnår state-of-the-art resultater inden for navngiven entitetsgenkendelse (NER). — forskningsartikel, 2015
- Ved at bruge CRF-laget kan biLSTM-CRF tage hensyn til transitioner mellem etiketter.
Hvornår bruges det
biLSTM-CRF anvendes især i NLP-opgaver som navngiven entitetsgenkendelse (NER), ordklassetagging (POS) og chunking. Modellen trænes på annoterede korpusser og har fungeret som en standardbaseline i årevis.
Kodeeksempel
import torch
import torch.nn as nn
from torchcrf import CRF
class BiLSTM_CRF(nn.Module):
def __init__(self, vocab_size, tagset_size, embedding_dim, hidden_dim):
super().__init__()
self.embedding = nn.Embedding(vocab_size, embedding_dim)
self.lstm = nn.LSTM(embedding_dim, hidden_dim // 2, bidirectional=True, batch_first=True)
self.hidden2tag = nn.Linear(hidden_dim, tagset_size)
self.crf = CRF(tagset_size, batch_first=True)
def forward(self, x, tags=None):
x = self.embedding(x)
lstm_out, _ = self.lstm(x)
emissions = self.hidden2tag(lstm_out)
if tags is not None:
return -self.crf(emissions, tags)
else:
return self.crf.decode(emissions)Kort eksempel på en biLSTM-CRF-model i PyTorch, hvor en CRF anvendes som det sidste lag til at lære overgange mellem etiketter.
Oprindelse
Arkitekturen blev først fremtrædende med artiklen 'Bidirectional LSTM-CRF Models for Sequence Tagging' af Huang, Xu og Yu i 2015.
Kilder
1- Bidirectional LSTM-CRF Models for Sequence Tagging (Huang, Xu, Yu, 2015)