issues
search
njs03332
/
ml_study
3
stars
0
forks
source link
2022/01/28 - 2022/02/10
#18
Open
danbi5228
opened
2 years ago
danbi5228
commented
2 years ago
2월 10일 pm 9:00
다음 진도
유리님: 5.3
선미님: 6.2
단비님: 4.3
njs03332
commented
2 years ago
5.2 예제: CBOW 임베딩 학습하기
CBOW 분류 작업: CBOW 임베딩을 학습하기 위한 분류 작업 (다중 분류 작업)
nn.Embedding 층 - 임베딩 행렬을 캡슐화하는 파이토치 모듈
이 층을 사용해 토큰의 정수 ID를 신경망 계산에 사용되는 벡터로 매핑
옵티마이저는 모델 가중치를 업데이트할 때 이 벡터값도 업데이트해서 손실을 최소화
모델은 이 과정에서 해당 작업에 가장 유용한 방식으로 단어를 임베딩하는 법을 배움
5.2.1 프랑켄슈타인 데이터셋
CBOW 모델 최적화를 위해 데이터셋을 윈도의 시퀀스로 표현함
이를 위해 각 문장의 토큰 리스트를 순회하며 지정된 크기의 윈도로 묶음
이 때 윈도 길이가 2라면, 길이가 2보다 작은 윈도는 적절하게 패딩됨
164p. 0으로 패딩
5.2.3 CBOWClassifier 모델
세 가지 핵심 단계
Embedding 층을 사용해 문맥의 단어를 나타내는 인덱스를 각 단어에 대한 벡터로 만듦
전반적인 문맥을 감지하도록 벡터를 결합
이 예에서는 더하지만, 최댓값/평균값/다층 퍼셉트론 등 다양한 방법을 사용할 수 있음
Linear 층에서 문맥 벡터를 사용해 예측 벡터를 계산
이 예측 벡터는 전체 어휘 사전에 대한 확률 분포
예측 벡터에서 가장 큰 값이 타깃 단어에 대한 예측을 나타냄