WFST 엔진 구현 및 토큰 파싱 로직 설계

Source

  • Field Notes/ReturnZero/Daily Notes/Day 394. 2022-07-29.md

Summary

WFST(Weighted Finite State Transducer) 엔진 구현 중 TSV 파싱 및 토큰 처리 로직의 순서와 재귀적 구조에 대한 고민을 기록함. 공백 처리, 사전(Dictionary) 키워드 유니온화, 옵셔널(Optional) 키워드 클로저화 간의 적용 순서와 무한 루프/중복 문제를 해결하기 위해 구간별 처리 및 재귀적 FST 빌드 함수(build_token_fst) 설계를 시도함.

Key Points

  • WFST 엔진 구현 및 사전 기능 추가 진행 중
  • TSV 파싱 시 탭 기반 토큰 추출 및 슬래시 기반 토큰 분할 시도
  • 공백 클로저, 사전 키워드 유니온, 옵셔널 키워드 클로저 간의 적용 순서로 인한 로직 복잡성 및 잠재적 무한 루프 문제 인식
  • 문자열을 일반문자열, 딕셔너리 키워드, 옵셔널 키워드로 구간 분할하여 처리하는 재귀적 FST 빌드 전략 제안
  • pynini 라이브러리를 활용한 클로저 및 유니온 연산 적용 고려