분석시각화 대회 코드 공유 게시물은
내용 확인 후
좋아요(투표) 가능합니다.
SBERT baseline [public 0.85364]
SentenceTransformers 라이브러리를 이용한 베이스 라인입니다. https://www.sbert.net
라이브러리에서 권장하는 bi-encoder 학습방법입니다.
하이퍼파라미터는 별도로 테스트 하지 않고 낮은 epoch로 학습했습니다.
라이브러리에서 제공하는 여러 학습방법 loss등이 있으니 여러가지 수정해보시는것도 좋을 것 같습니다.
모델은 microsoft/codereviewer 모델을 사용했습니다. https://huggingface.co/microsoft/codereviewer
별도의 리소스 제한이 없기에 최종적으론 하나문장(cross-encoder)를 사용하는게 더 좋을것 같습니다.
sentence-transformers 2.5.1
huggingface-hub 0.17.3
입니다
No sentence-transformers model found with name microsoft/codereviewer. Creating a new one with MEAN pooling.
Special tokens have been added in the vocabulary, make sure the associated word embeddings are fine-tuned or trained.
Special tokens have been added in the vocabulary, make sure the associated word embeddings are fine-tuned or trained.
이렇게 뜨더라고요.. 혹시 해결방법을 아시나요? 환경은 윈도우나 리눅스에서 돌려봐도 똑같아서요
단순 warning이면 상관없습니다. 코드 예제에서도 같은 워닝 발생했습니다
무시하셔도 되는 오류입니다. microsoft/codereviewer 모델을 불러왔을 때 sentence transformers 모델로 구조를 바꿔주기 위해 layer를 추가한 것입니다.
확인해보니
SentenceTransformer(
(0): Transformer({'max_seq_length': None, 'do_lower_case': False}) with Transformer model: T5EncoderModel
(1): Pooling({'word_embedding_dimension': 768, 'pooling_mode_cls_token': False, 'pooling_mode_mean_tokens': True, 'pooling_mode_max_tokens': False, 'pooling_mode_mean_sqrt_len_tokens': False, 'pooling_mode_weightedmean_tokens': False, 'pooling_mode_lasttoken': False, 'include_prompt': True})
)
불러온 transformer(codereviewer)모델 이후에 pooling layer가 추가되었네요. pooling layer부분은 새롭게 추가되어 기존에 불러온 가중치가 아닌 새로운 랜덤 가중치이기 때문에 학습과정을 통해 이 부분을 학습시켜야 좋은 성능을 낼 수 있을 것 같습니다.
+) 생각해보니 pooling layer면 가중치가 따로 없을 것 같긴 하네요
혹시 gpu 상태가..?
runpod
RTX 3090 24 GB VRAM 이었던걸로 기억합니다
데이콘(주) | 대표 김국진 | 699-81-01021
통신판매업 신고번호: 제 2021-서울영등포-1704호
서울특별시 영등포구 은행로 3 익스콘벤처타워 901호
이메일 dacon@dacon.io | 전화번호: 070-4102-0545
Copyright ⓒ DACON Inc. All rights reserved
혹시 sentence_transformers의 버전과 huggingface_hub의 버전이 어떻게 되나요?