-
07_question-answering_v2.ipynbtransformer 2024. 8. 16. 15:51
sequence classification
text classification
[0.8, 0.2] -> 확률분포
[31.2, 21.7] ->logit 하나의 위치(CLS) token에서만 logit vector를 뽑음
head
[representation vector, context vector]
[ ] [ ] [ ] [ ] [ ]
1 2 3 4 5
[CLS] i love this soup .....
representation vector : 문장의 의미를 전부담고있는 vector
context vector :문장의 의미를 전부담고있는 vector
[CLS] token을 맨앞에 두면 일관성있게 작업가능. CLS token 위치에 있는 vecor가 문장의 의미를 담고있음.
NER
token classification
[logits] [logits] [logits] [logits] [logits]
head head head head -> 각단어에 head붙여서 각위치에서 logit vector를 뽑음
[ ] [ ] [ ] [ ] [ ]
1 2 3 4 5
[CLS] Pack love this store .....
QA (주어진 텍스트에서 찾을때만)
start and end logit -> 이렇게 해서 값이 2개씩나옴 -> 답변이 어디있는지 시작, 끝
[v1,v2] [v1,v2] [v1,v2] [v1,v2] [v1,v2] => [v1, v1, v1, v1, v1], [v2, v2, v2, v2, v2]
head head head head -> 5개모아서 이중 값이 큰게 시작위치, 뒤쪽백터는 가장큰값이 끝위치
[ ] [ ] [ ] [ ] [ ]
1 2 3 4 5
[CLS] Pack love this store .....QA 파이프라인
해이스택은 QA파이프라인을 구축하기 편리하게 해주는 패키지
Retriever는 많은 문서중 관련 문서를 찾아서 reader(자연어모델)가 답을 찾아서 사용자에게 돌려준다.
(아래그림) 문서단어행렬
전체vocab을 열로 취하고, 문서를 row로 취해서 , 각 문서에 나온 단어갯수를 counting.
(아래그림)
tf 는 위 문서단어 행렬에서 나온 특정단어 t의 횟수
idf 는 df의 역수(반비례)
df가(특정단어)가 0일수도 있어서 분무가 0이 되면 문제되서 1을 더해준것
예를들어 the라는 특정단어인경우,
df(t) 가 n에 가까워지며서,
log( n/1+dft)는 log 1이라서
0값이 된다.아래그림)
문서 하나의 vocab 에 있는 단어를 몇십에서 몇백개밖에 쓰지 않아서 (TF, IDF 행렬을 쓰면 0을 갖는 단어는 항상0이라서 곱해서 0) sparse representation임
목적
문서를 vector화 하기 위한것.
vector하면 내적해서 similarity를 구할수 있기때문에 문서를 vactor화 한다.
문제를 vector 화해서 유사도를 관련문서와(retreiver) 유사도가 높은것을 찾아내기위한것
-> Keyword (답높은 것찾는것)
아래그림)
Dense retreiver
sparse retreiver는 자원이 많이드는 반면,
dense retreiver는 반대임. 효용성이 높음. (
DPR
DENSE PASSAGE RETRIEVER
DPR
DENSE PASSAGE RETRIEVER
BM25(sparse retreiver)DPR 와 별차이없음
F1 score 소개
출처:https://velog.io/@jadon/F1-score%EB%9E%80
출처: https://images.app.goo.gl/1wXmAShHXcnZP6Yz6
아래그림)
F1 Score : 성능지표 (prescision과 recall의 조화평균)
pred: about 6000 hours
label: 6000 hours
precision = 모델이 예측한 답 중에 맞은 것의 비율
= 2/3
recall = 실제 정답 중 모델이 찾은 것의 비율
= 2/2 = 1
3/2 + 1/1 = 5/2
2/ (5/2) = 4/5 => 0.8'transformer' 카테고리의 다른 글
09_few-to-no-labels.ipynb -text의 라벨을 tag하기위한 방법 (0) 2024.08.30 08_model-compression.ipynb (0) 2024.08.26 06_summarization.ipynb (0) 2024.08.07 05_text-generation.ipynb (0) 2024.07.31 04_multilingual-ner.ipynb (0) 2024.07.26