일본어 후리가나 생성의 문맥 문제 해결하기

일본어를 읽는 것은 학습자에게 독특한 도전 과제입니다. 하나의 한자나 복합어가 문맥에 따라 여러 가지 유효한 읽기 방식을 가질 수 있기 때문입니다. 단순한 사전 기반 도구는 일반적인 단어는 처리할 수 있지만, 문법적 역할이나 의미에 따라 모양은 같지만 발음이 다른 '동형이의어(homographs)'에서는 실패하는 경우가 많습니다.

EZFurigana는 이 특정 문제를 해결하기 위해 설계된 새로운 도구입니다. 단순한 조회를 넘어 하이브리드 엔진을 구현함으로써, PDF, 이미지, 전자책을 포함한 다양한 형식에서 정확하고 문맥을 인식하는 후리가나(루비 텍스트)를 제공하는 것을 목표로 합니다.

기술적 아키텍처: 하이브리드 접근 방식

제작자에 따르면, 이 시스템은 단일 알고리즘에 의존하지 않고 다양한 언어적 시나리오에서 최대의 정확도를 보장하기 위해 계층화된 하이브리드 엔진을 사용합니다.

1. 토큰화 및 기본 분석

핵심적으로, 이 도구는 강력한 형태소 분석기인 Sudachi를 사용합니다. Sudachi는 텍스트 토큰화, 기본형 식별, 품사(POS) 결정, 각 토큰에 대한 후보 읽기 방식 제공과 같은 초기 작업을 처리합니다.

2. 사전 확장 및 규칙 기반 로직

결과를 정교화하기 위해, 시스템은 복합어와 관용구에 대해 확장된 사전 범위를 사용합니다. 또한 다음과 같은 일본어의 특수한 언어적 특징을 처리하기 위해 사용자 정의 규칙을 활용합니다:

  • 수사 및 접미사: 무엇을 세는지에 따라 올바른 읽기 방식을 보장합니다.
  • Rendaku: 순차적 연탁(복합어의 두 번째 요소의 첫 자음이 유성음화되는 현상)을 관리합니다.
  • 구문 재정의(Phrase overrides): 사전이 자주 오인하는 일반적인 구절에 대한 하드코딩된 수정 사항입니다.

3. ModernBERT를 활용한 신경망 폴백(Fallback)

가장 어려운 사례, 특히 문맥 의존도가 매우 높은 144개의 대상 단어의 경우, 시스템은 ModernBERT를 폴백으로 사용합니다. 이를 통해 엔진은 사전이 구분할 수 없는 읽기 방식 사이에서 결정하기 위해 주변 문장 구조를 '이해'할 수 있습니다.

예를 들어, 시스템은 다음과 같은 차이를 구분하도록 설계되었습니다:

  • 市場: Ichiba (시장) vs. Shijou (시장/금융 시장)
  • 人気: Ninki (인기) vs. Hitoke (사람의 기척)
  • 最中: Saichuu (한창 ~하는 중) vs. Sanaka (한가운데) vs. Monaka (모나카 과자)

벤치마킹 및 실제 성능

품질을 유지하기 위해, 개발자는 7,500개의 일본어 문장으로 구성된 LLM 지원 벤치마크를 활용합니다. 현재 테스트 결과에 따르면 1,000개 토큰당 약 12개의 잘못된 읽기 방식이 발생하는 오류율을 보입니다입니다. 공식적인 학술 연구는 아니지만, 이 회귀 벤치마크를 통해 개발자는 모델을 반복 개선하고 사용자에게 도달하기 전에 오류를 잡아낼 수 있습니다.

정교함에도 불구하고, 실제 사용 사례를 통해 일본어의 내재된 어려움이 드러납니다. Hacker News의 사용자들은 시스템이 여전히 어려워하는 몇 가지 엣지 케이스를를 다음과 같이 지적했습니다:

  • 미묘한 문맥: 한 사용자는 "今日の日本社会では" (오늘날의 일본 사회에서는)라는 문장에서, 도구가 今日를 konnichi (오늘/격식) 또는 kyou (오늘/비격식)로 읽는 데 어려움을 겪을 수 있다고 언급했습니다.
  • 오독: 다른 사용자는 "如何程"가 ika-hodo 대신 dou-hodo로 읽혔다고 발견했습니다.
  • 토큰화 오류: "田中さんは今何をしている" (다나카 씨는 지금 무엇을 하고 있습니까?)라는 문장에서 "今何"가 konna ni로 잘못 읽힌 사례가 인용되었습니다.

학습자를 위한 주요 기능

기술적 엔진을 외에, EZFurigana는 언어 습득을 위해 특별히 맞춤화된 몇 가지 기능을 포함합니다:

  • JLPT 필터링: 사용자는 일본어 능력 시험(N5~N1)을 기준으로 필터를 설정할 수 있습니다. 예를 들어 N3 수준으로 설정하면, 도구는 N3 수준 이상의 한자만 후리가나를 제공하며, 학습자가 이미 알고 있어야 할 더 간단한 N5/N4 수준의 한자를 읽는 연습을를 위해 강제합니다.
  • 다양한 형식 지원: 이 도구는 다양한 입력(PDF, EPUB, SRT 자막, 이미지)과 출력(HTML, TXT, Anki-ready 플래시카드)을 지원하여, 일상적인 읽기 연습을 것을 위해 일상적인 워크플로우에 통합하기에 다재다능한 도구입니다.
  • 개인정보 보호 우선 설계: 진입 장벽을 낮추기 위해, 이 도구는 회원가입이 필요 없으며 업로드된 파일은 24시간 이내에 자동으로 삭제됩니다.

앞으로의 방향

개발자가 언급했듯이, "가장 어려운 남은 사례"는 인명, 지명, 희귀 어휘 및 도메인 특화 용어입니다. 이러한 용어어는 원어민조차도 매우 어려워하며 종종 언어적 패턴만으로는 부족하고 외부 지식 베이스가 필요합니다.

사용자 보고 오류를 지속적으로 수집하는 것은 ModernBERT 폴백과 사용자 정의 규칙 세트를 개선하는 주요 동력으로 작용하며, 이를 통해 도구를 일본어 학습자들을 위한 진정으로 원활한 읽기 경험을를 위해 더욱 발전시켜 나갈 것입니다.

Sources