본문 바로가기

Computer Science/BioNLP

BioNLP(T10316101-01) Lec07. Sequence Models & Attention Mechanism

수업 내용을 요약한 것임을 밝힙니다.


1. 시퀀스 데이터의 정의 및 학습 방법

- 순서가 있다. 시간의 흐름이 있다.

- 과거를 보고 미래를 예측해야 됨.

 

2.LSTM

- cell state + 3 gate

- 입력, 망각, 출력 게이트

- 장기기억에 강하다.

- 그러나 느리고 구조가 복잡하다.

 

LSTM의 발전 

: biLSTM -> RNN -> Transformer

 

3. Attention 구조의 이해

3.1. Search Engin:

query: 사용자가 입력한 검색어(벡터)

key: 특징 벡터

value: key에 매핑된 실제 콘텐츠

-> 병렬 연산이 가능해 빠르다.

 

3.2. Attention mechanism

-attention: 유사도를 계산해 가중합하는 것

-self-attention:

ㄴ 단일 시퀀스 내 모든 토큰간의 상호 관계를 학습

ㄴ 어떤 토큰끼리 연관성이 있는지 문장 내 토큰간의 연관성 파악하기 위함.

-cross-attention: 

ㄴ 서로 다른 시퀀스 간 토큰의 상호 연관성 파악을 위함.

ㄴ Q-K 값을 참고하여 다시 문맥 정보를 상호 교환

-multi-head attention:

여러 개의 어텐션 헤드를 병렬 수행하여 다양한 표현 공간에서 정보 학습 가능

 

-> projection의 개념

 

3.3. Attention Weight Scoring

1. Q-K 벡터 간 내적을 수행하여 사홍 시퀀스 간 유사도를 계산(attention score)

2. softmax 함수를 적용해 점수를 정규화한뒤, 해당 가중치를 value 벡터에 곱해 문맥 벡터를 생성.

(어떤 토큰에 더 집중해야되는지 알게됨)