-
- kmp search based start index & end index
-
- traceback original text ( or decode )
-
- doc_stride provide
- [ ] tokenizer adapted join
- context에서 answer string matching
- char index to input ids candidate 구함
- question + context 에서 input ids 매칭
- control by tokenizer
- dynamic padding, batchsize
- batchsize * padding ^ 2 <= min batchsize * max padding ^ 2
- args: (dataset, max_padding = 384, min_batchsize = 8, Pmul = 64, Bmul = None)# None은 static 하게 사용됨을 의미
- pad 길이 역정렬
- sample pool 부족시 index늘리기 (항상 부족할것 임)
- sample 가능한 목록중 최대길이의 항목은 무조건 사용
- 가장 긴 항목 기준으로 다룰 수 있는 최대 Batchsize 결정
- Batchsize 만큼 sampling ( 가장 긴 pad항목 포함 )
- 적합한 padding 결정후 crop
그런데, 학습상에서 시간이 지남에 대해 단조롭게 pad가 감소하는것은 성능에 영향을 줄수 있으므로, 이렇게 시뮬레이션 된것들의 batch를 묶고, batch간의 순서를 shuffle한다.