hplt-project/sacremoses

Python port of Moses tokenizer, truecaser and normalizer

해결하는 문제

Sacremoses는 자연어 처리(NLP) 작업을 위한 텍스트 전처리를 표준화된 방식으로 제공합니다. 일관되지 않은 텍스트 형식 문제를 해결하기 위해 토큰화, 디토큰화, 정규화 및 '트루케이스' 처리 도구를 제공하여 머신러닝 모델에 입력되기 전에 데이터가 깨끗하고 일관되게 유지되도록 합니다.

작동 방식

이 라이브러리는 여러 텍스트 처리 작업을 수행할 수 있는 Python API와 명령줄 인터페이스(CLI)를 제공합니다:

  • 토큰화 및 디토큰화: 텍스트를 개별 토큰(단어, 구두점 등)으로 분할하고, 원래 문장을 재구성할 수 있는 역과정을 제공합니다.
  • 트루케이싱: 훈련된 모델을 기반으로 텍스트를 가장 가능성이 높은 대소문자로 변환하는 과정입니다 (예: "THE ADVENTURES OF SHERLOCK HOLMES" → "the adventures of Sherlock Holmes").
  • 정규화: 구두점 처리, 제어 문자 제거, 숫자 또는 따옴표 정규화 등을 통해 텍스트를 정리합니다.
  • 파이프라인: CLI를 통해 이러한 명령어를 연결하여 (예: 정규화 → 토큰화 → 트루케이스) 단일 실행 파이프라인에서 여러 단계를 처리할 수 있습니다.

대상 사용자

기계 번역 및 기타 텍스트 기반 AI 모델의 학습 또는 평가를 위해 대규모 데이터셋을 준비해야 하는 NLP 연구자 및 개발자에게 적합합니다.

주요 특징

  • 포괄적인 도구 세트: 하나의 패키지 안에 토큰화, 디토큰화, 트루케이싱, 정규화 기능을 모두 포함합니다.
  • CLI 파이프라인 지원: 명령줄을 통해 여러 전처리 단계를 연결하여 효율적인 데이터 처리가 가능합니다.
  • 학습 가능한 트루케이서: 텍스트 파일에서 사용자 정의 트루케이스 모델을 훈련할 수 있는 기능을 포함합니다.
  • 다중 프로세싱: CLI에서 -j 플래그를 지원하여 여러 CPU 코어를 사용해 처리 속도를 높일 수 있습니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트