Peer session

한 일

  • 배철환
    • CROHME 작업 중 -> INKML 파일을 JPG로 변환하는 코드 완성
    • 이제 할 것은 외부 데이터의 라벨링을 우리꺼랑 비교해서 넣어주기
    • CSTR 기준 Adam 계열은 좋지 않은 퍼포먼스를 보임
      • 논문에서 제시한대로 Adadelta를 줘야 할 듯 + 추가로 스케쥴러
      • 10에폭 기준 스케쥴러를 주지 않았을 때 보다 train - val 차이가 많이 줄어듬 (거의 비슷비슷)
        • 그래도 더 지켜봐야 함
  • 서준배
    • dim증가한것이 약간의 증가는 있었음
      • 0.7278 -> 0.7361
    • dim 조금씩 증가시키면서 확인
  • 임기홍
    • AIDA 추가 해서 모델 돌렸지만 0.7077 -> 0.7124
    • Math expression 이 좀 긴 데이터를 찾고싶은데 짧은거나 Symbol 밖에 안나옴
      • 긴 데이터를 어떻게 만들까?
      • 기존데이터를 Augmentation하는 것으로 넘어가야할꺼같음
      • { } \left \right 짝 틀린케이스 없음.
  • 김현우
    • 준배님 코드 + AdamW + lr 1e-4 + 가로 -> 세로 + rotate 15 + 100 epochs
  • 조호성
    • adaptive + defrom 적용해봄.
    • attention 기반 모델 앙상블할때 도움이 될까해서 하는중
    • 바꿔볼만한 것이 모델부분에서는 feature 추출하는부분? 말고 또 있을까
  • 윤준호
    • epoch 181 제출해봄. 0.7190 달성.
    • GT - PR 비교해볼 때 괄호 하나가 안 맞아서 sentence 예측 자체가 틀린 걸로 나오는 경우가 종종 있었음
      • 괄호쌍이 맞지 않는 것들을 후처리로 맞춰줄 수 있지 않을까?
      • (철환님) 괄호쌍이 맞는 것 / 안 맞는 것 binary feature 생성해서 loss에 더해주는 방법은?
      • (호성님) self-attention은 문장 내 맥락 맞는 쌍을 잘 찾는 걸로 아는데, CNN 단에서 feature 뽑는 과정에서 괄호를 못 잡아낸 걸 수 있을 것 같음. input_size를 키워 feature_map을 크게 해보는 것도 좋을듯.
    • beam search 찾아봤는데 rnn 예시들에서처럼 단순히 독립적인 word prediction list를 받아서 확률을 계산할 게 아니라, self-attention에서는 한 token이 선택될 때 다음 token들의 확률이 어떻게 바뀌는지를 계산하면서 동시에 beam search를 해야하는 것 같음. 또한, 단순히 후보들을 k개 뽑아 최대 확률을 선택한다고 해도 최적임을 보장할 수 없기 때문에 language model 등으로 학습해서 beam search와 결합해서 사용하는 예시가 있었음.
      • 구현하기 쉽지 않을 것 같음.
      • 구현한다고 해도 시간 복잡도가 굉장히 증가할 것 같음.

해볼 일

  • SATRN
    • 1) adaptive2d + AdamW + lr 1e-4 + 가로 -> 세로 + rotate 15 + 100 epochs(현우님)
    • 2) aida dataset + adaptive2d
    • 3) adaptive2d + deformable(호성님)
  • CSTR
    • 1) 데이터 추가, 괄호 loss
  • 괄호쌍 맞는지에 대한 loss 계산해서 CEloss에 더해주는 방법 구현

고려할 것

괄호 규칙

  • 같은 괄호인데 left가 있고 없는게 존재한다 함
    '\\left\\{': 2711,
    '{': 209606,
    
    • ‘\left{’
    • ‘\left[’
    • ‘\left(‘
  • 아래첨자 괄호
    lim_{a->0}
    \lim_{a\leftarrow 0}
    
  • 입력하는 이미지 크기를 늘리면 좀더 attention하는게 늘어나지 않을까
    • 128 x 128에서 더 늘리기
    • 메모리 늘어난다