커뮤니티 대회 교육

2022 Samsung AI Challenge (Materials Discovery)

알고리즘 | 정형 | 회귀 | 물성 | RMSE

  • moneyIcon 상금 : 총 2,100만원
  • 521명 마감

 

사전학습모델을 이용한 NLP로의 접근 방법

2022.08.19 14:52 2,129 조회 language

SMILES정보를 NLP처리하는 방법으로의 접근입니다.
많은 도움이 되기를 바랍니다. 추천 쿡 부탁합니다.~ (굽신굽신)

Ps #1. fold 적용이나, valid 해야해요~
Ps #2. 다른 Tree모델들과 Ensemble 하면 성능 많이 오를 듯 해요.

코드
클로드섀넌
2022.08.25 18:50

모델 선정이랑 하이퍼파라미터 어느정도 손을 보신건가요?
더 큰 모델 써보기도 하고 batch_size 랑 lr 좀 바꿔보고 있는데 리더보드에서 올려주신 노트북 그대로의 모델만큼의 성능을 넘기가 힘드네요 ㄷㄷ

TREX99
2022.08.25 20:20

제가 글을 올리고 몇 가지 추가로 작업한 내용이고, 리더보드 결과입니다.
1. KFold 5-fold 
   - 각 fold 별 3631~2개로 나뉘어 지네요.
2. get_optimizer_params() 함수 수정
  - ["bias", "LayerNorm.bias", "LayerNorm.weight"] 에 대한 decay 적용 (코드는 구글링 하면 나와용~)
3. get_scheduler() 함수 수정
  - get_cosine_schedule_with_warmup() 로 변경했어요...옵션 수치는 아래와 같아요
    get_cosine_schedule_with_warmup(optimizer, num_warmup_steps=0, num_training_steps=num_train_steps, num_cycles=0.5)
4. 모델 훈련할 때 torch.cuda.amp.GradScaler() 를 사용했어요.
  - 요건 torch 사이트 가면 예제가 있으니 참고하셔서....

위와 같이 해서 사전학습모델 seyonec/PubChem10M_SMILES_BPE_180k 사용한 결과와
사전학습모델 pchanda/pretrained-smiles-pubchem10m 사용한 결과 2개를 -1 멱평균을 냈어요.

코드 올려드릴까 했는데..코드가 지저분해서 올리면 욕하실 것 같아요 ㅎㅎㅎ
함 해보시구...잘 안되면 댓글 달아주세요..코드 정리해서 올려드릴께요.

Ps. 비슷한 대회에 제가 Mordred package 를 이용한 features 뽑는 코드가 있는데...거기서 1800여개 feature 뽑아서 CTR이나 FM모델 같은
추천모델에 넣으면 성능 꽤 나오지 싶습니다.

클로드섀넌
2022.08.26 14:34

오오 답글 감사드려요! 위의 사항들 한번 적용해보겠습니다 ㅎㅎ

클로드섀넌
2022.08.26 15:46

아 궁금한게 따로 positional encoding 같은거 사용안하시던데 pretrained transformer 모델 사용할땐 원래 필요없는걸까요?

TREX99
2022.08.26 15:55

넵 !

클로드섀넌
2022.08.27 17:04

감사합니당~~

켈로그
2022.09.10 06:52

사전학습모델의 train set에 대회의 test set 분자가 포함되어 있지는 확인이 되었나요?

TREX99
2022.09.12 00:31

제가 확인하기로는 포함되지 않은 것 같은데...
공부하는 과정에 다양한 접근 방법 중 하나라 생각되어 공유해드린 것인데, 혹시 제가 잘못 확인했을 수 있으니 한번 체크해 보시기 바랍니다. ^^*

로그인이 필요합니다
0 / 1000
이전 글
이전 글이 존재하지 않습니다.
현재 글
사전학습모델을 이용한 NLP로의 접근 방법
대회 - 2022 Samsung AI Challenge (Materials Discovery)
좋아요 27
조회 2,129
댓글 8
3달 전
다음 글
LGBM을 활용한 BASELINE
대회 - 2022 Samsung AI Challenge (Materials Discovery)
좋아요 10
조회 2,262
댓글 1
4달 전