WorksApplications/Sudachi
A Japanese Tokenizer for Business
Sudachi – 일본어 형태소 분석기
Sudachi는 Java로 작성된 일본어 토크나이저 / 형태소 분석기입니다. 원시 일본어 텍스트를 입력받아 형태소 시퀀스와 함께 품사 태그, 사전(기본)형, 읽기, 그리고 선택적인 추가 정보를 출력합니다. 이 프로젝트는 세 가지 핵심 작업에 집중합니다:
- Segmentation – 세 가지 선택 가능한 모드(A = 최소 단위, B = 중간 단위, C = 개체명 스타일 단위)를 사용하여 문장을 단어(또는 하위 단어)로 분할합니다.
- POS tagging – 상세한 품사 레이블을 할당합니다.
- 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
- Installation –
docs/tutorial.md의 튜토리얼을 따라 사전 빌드된 사전을 다운로드하고 JAR를 실행하십시오. - Command-line usage – 예시:
옵션에는echo 東京都へ行く | java -jar sudachi.jar -m A # short-unit split-t(공백 구분 출력),-a(추가 필드),--print-reading, 그리고--systemDict를 통한 사전 선택이 포함됩니다. - Library usage – Maven 의존성을 추가하십시오:
그 다음 Java API(Javadoc 참조)를 사용하여 프로그래밍 방식으로 토크나이징을 수행하십시오.<dependency> <groupId>com.worksap.nlp</groupId> <artifactId>sudachi</artifactId> <version>0.5.3</version> </dependency>
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 plugin –
WorksApplications/elasticsearch-sudachi를 통해 전체 텍스트 검색 통합을 지원합니다. - Python / Rust ports –
WorksApplications/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 파이프라인, 그리고 정확한 정확한 일본어 단어 분할 및 품사 태깅이 필요한 모든 애플리케이션에 적합합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트