WorksApplications/Sudachi

A Japanese Tokenizer for Business

Sudachi – 일본어 형태소 분석기

Sudachi는 Java로 작성된 일본어 토크나이저 / 형태소 분석기입니다. 원시 일본어 텍스트를 입력받아 형태소 시퀀스와 함께 품사 태그, 사전(기본)형, 읽기, 그리고 선택적인 추가 정보를 출력합니다. 이 프로젝트는 세 가지 핵심 작업에 집중합니다:

  1. Segmentation – 세 가지 선택 가능한 모드(A = 최소 단위, B = 중간 단위, C = 개체명 스타일 단위)를 사용하여 문장을 단어(또는 하위 단어)로 분할합니다.
  2. POS tagging – 상세한 품사 레이블을 할당합니다.
  3. Normalization – 철자 변형, 스크립트 차이, 오타 및 축약형을 통일합니다.

Why Sudachi?

  • Multiple-length segmentation을 통해 세밀한(A), 중간(B), 또는 개체 중심(C) 분할 사이를 전환할 수 있으며, 이는 검색, NLP 파이프라인 또는 다운스트림 모델에 유용합니다.
  • Large lexicon은 UniDic과 NEologd 확장을 기반으로 구축되었으며, 메모리 대 커버리지의 균형을 맞추기 위해 세 가지 사전 패키지(small, core, full)를 제공합니다.
  • Plugin architecture를 통해 핵심 코드를 변경하지 않고도 사용자 정의 입력 정규화, OOV 처리, 단어 연결 규칙 및 경로 수정을 가능하게 합니다.
  • User dictionaries는 런타임에 추가할 수 있어 도메인별 어휘를 사용할 수 있습니다.
  • Integration: 명령줄 도구, Maven 호환 Java 라이브러리, Elasticsearch용 컴패니언 플러그인, 그리고 Python 및 Rust 포트가 제공됩니다.

Getting Started

  1. Installationdocs/tutorial.md의 튜토리얼을 따라 사전 빌드된 사전을 다운로드하고 JAR를 실행하십시오.
  2. Command-line usage – 예시:
    echo 東京都へ行く | java -jar sudachi.jar -m A   # short-unit split
    
    옵션에는 -t (공백 구분 출력), -a (추가 필드), --print-reading, 그리고 --systemDict를 통한 사전 선택이 포함됩니다.
  3. Library usage – Maven 의존성을 추가하십시오:
    <dependency>
      <groupId>com.worksap.nlp</groupId>
      <artifactId>sudachi</artifactId>
      <version>0.5.3</version>
    </dependency>
    
    그 다음 Java API(Javadoc 참조)를 사용하여 프로그래밍 방식으로 토크나이징을 수행하십시오.

Plugins & Extensibility

Sudachi는 여러 가지 기성 플러그인(문자 정규화, 장음 정규화, 요미가나 제거, 단일 문자 OOV 처리, MeCab 호환 OOV, 억제 규칙, 숫자 정규화 등)을 제공합니다. 새로운 플러그인은 입력 텍스트, 미지근한 단어(unknown-word) 처리, 단어 연결 비용, 또는 출력 경로 조정 등 모든 처리 단계에 훅(hook)을 걸 수 있도록 작성할 수 있습니다.

Comparison to Other Japanese Tokenisers

Feature Sudachi MeCab Kuromoji
Multiple segmentation lengths Limited
Built-in normalisation (script, misspelling) Limited
User-dictionary stacking
Memory efficiency (shared mmap) Good Poor Good
Accuracy Good Good Good
Speed Good Excellent Good

Ecosystem

  • Elasticsearch pluginWorksApplications/elasticsearch-sudachi를 통해 전체 텍스트 검색 통합을 지원합니다.
  • Python / Rust portsWorksApplications/sudachi.rs는 다른 언어 생태계에 대한 네이티브 바인딩을 제공합니다.
  • Community – 개발자와 사용자를 위한 Slack 워크스페이스가 있습니다.

License & Citation

Sudachi는 Apache License 2.0 하에 출시됩니다. 연구에 사용한다면, LREC 2018 논문 *“Sudachi: a Japanese Tokenizer for Business”*를 인용하십시오 (README에 BibTeX가 제공됩니다).


In a nutshell: Sudachi는 유연한 토크나이징 모드, 풍부한 사전 리소스, 그리고 플러그인 시스템을 제공하는 성숙하고 확장 가능한 일본어 형태소 분석기입니다. 검색 엔진, NLP 파이프라인, 그리고 정확한 정확한 일본어 단어 분할 및 품사 태깅이 필요한 모든 애플리케이션에 적합합니다.

관련

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