-
[개발일지] Transformer로 긴 문서 학습시키기개발일지 2021. 7. 14. 21:29728x90
Transformer 기반의 모델들로 자연어 처리를 하다보면 가장 큰 문제는 바로
긴 문장/문서를 input으로 받을 때이다.
아무리 gpu 메모리가 크더라도 결국에 한계는 생기는 법.
이럴 때 하는 방법들은 transformer input 최대길이를 L이라고 할때,
1. 앞의 L까지만 자르기
2. 중간의 L부분만 자르기
3. 마지막 L부분만 자르기
4. L로 조각낸뒤 각각을 돌려 나온 embedding을 평균내기
이렇게 간단한 방법들일 것이다.
1,2,3은 의외로 성능이 괜찮게 나온다고도 하는데.. 그래도 확실히 문제점이 보이는 방법들이다.
자른곳이 아닌 곳에 원하는 데이터가 있다면? 난감해진다.
어떻게든 모든 문장을 또는 원하는 문장이 input에 들어가야 한다.
쭉 찾아보다가 논문하나를 발견했다.
https://keg.cs.tsinghua.edu.cn/jietang/publications/NIPS20-Ding-et-al-CogLTX.pdf
cogLTX 라는 방법인데, 쭉 훑어보니 모든 문장을 사용하는 방법이더라.
쭉 읽어보고 테스트를 거친 후 괜찮다면 리뷰를 해 볼 생각이다.
'개발일지' 카테고리의 다른 글
[openAL] #2. 음악 재생하기 (0) 2021.10.06 [openAL] #1. 설치하기 (0) 2021.10.04 [개발일지] T5 학습시키기(2) - tokenizer 만들기 (bpe, byte pair encoding) (0) 2021.07.10 [개발일지] T5 학습시키기(1) - 데이터 준비 (0) 2021.07.10 [개발일지] Colab Pro 결제 (0) 2021.04.03