pre-trained Embedding model

하영영·2023년 9월 8일

🎯 졸작 준비자료

목록 보기
5/10

🖐 pre-trained Embedding model 사용하기


  1. 사전 훈련된 Word2Vec 모델 불러오기
    여러 오픈 소스 플랫폼에서 다양한 언어와 도메인에 대한 사전 훈련된 Word2Vec 임베딩을 찾을 수 있습니다. 이 임베딩을 불러옵니다.

  2. 임베딩 층 초기화
    신경망 모델의 첫 번째 층으로 임베딩 층을 추가합니다. 이 층의 가중치를 사전 훈련된 Word2Vec 임베딩으로 초기화합니다.

  3. 학습 가능성 설정
    초기 학습 단계에서 임베딩 층의 가중치를 고정(즉, 학습하지 않도록)하면 과적합의 위험을 줄일 수 있습니다. 일단 모델이 어느 정도 수렴하면, 임베딩 층의 가중치를 학습 가능하게 설정하여 미세 조정할 수 있습니다.

  4. 모델 학습
    나머지 모델 구조를 정의한 후, 작은 데이터셋을 사용하여 모델을 학습시킵니다.

  5. 평가 및 미세 조정
    검증 데이터셋을 사용하여 모델의 성능을 평가합니다. 필요에 따라 모델 구조나 학습률 등의 하이퍼파라미터를 미세 조정합니다.



🙏 (잘못 설계한 점..ㅎㅎ)


사전학습 임베딩 벡터 모델을 잘못된 위치에서 사용하였다...ㅎㅎㅎ

전통적인 방식은 training data를 원-핫 벡터나 정수 인코딩으로 변환하고, 이를 LSTM 모델의 임베딩 레이어의 입력으로 사용하는 것입니다. 이때 임베딩 레이어의 가중치를 사전 학습된 임베딩(예: FastText)으로 초기화하게 됩니다. 이렇게 하면 모델 학습 시 이 임베딩이 미세 조정(fine-tuning)될 수 있습니다.

(나 같은 경우는 사전학습 임베딩 벡터 모델로 training data를 벡터화 하였다..ㅎㅎㅎㅎ)


👋 사전 학습 모델의 fine-tuning 효과 입증 (성능 비교)


기존의 사전 학습된 임베딩만을 사용했을 때와 추가 학습을 진행한 후의 성능을 비교합니다. 분류 정확도나 F1 스코어, ROC AUC와 같은 메트릭을 사용하여 두 모델의 성능 차이를 확인할 수 있습니다.
또한, 학습된 모델을 통해 특정 단어나 문장의 임베딩 벡터를 추출하고, 이를 2D 또는 3D 공간에 시각화하여 변화를 관찰하는 것도 도움이 될 수 있습니다. t-SNE나 PCA 같은 차원 축소 기법을 사용하면 임베딩 벡터의 변화를 직관적으로 파악할 수 있습니다.




😟 조사와 같은 불용어는 제거하되, 문맥은 파악하는 법


  1. Bi-LSTM
  2. Attention 메커니즘
  3. Transformer
  4. 사전학습 모델(GPT, BERT)
  5. 문장 임베딩
    문장 전체를 하나의 벡터로 임베딩 (Doc2Vec, Sent2Vec)










profile
NLP 공부중

0개의 댓글