Skip to main content

Module evaluate

Module evaluate 

Source
Expand description

§Evaluation Module

형태소 분석 정확도 측정 인프라

§주요 기능

  • Token Accuracy: 토큰 단위 정확도
  • Sentence Accuracy: 문장 단위 완전 일치율
  • POS Accuracy: 품사 태그 정확도
  • Precision/Recall/F1: 토큰 기준
  • 품사별 정확도 리포트

§예제

use mecab_ko_core::evaluate::{evaluate_dataset, TestDataset};
use mecab_ko_core::tokenizer::Tokenizer;

let mut tokenizer = Tokenizer::new().unwrap();
let dataset = TestDataset::from_tsv("data/eval/sample.tsv").unwrap();
let result = evaluate_dataset(&mut tokenizer, &dataset);

println!("Token Accuracy: {:.2}%", result.token_accuracy * 100.0);
println!("F1 Score: {:.3}", result.f1_score);

Structs§

DualMetricResult
이중 메트릭 평가 결과 (Sprint 124)
EojeolSurfaceResult
어절 surface-only 메트릭 결과 (Sprint 133 P2).
EvaluationResult
평가 결과
GoldSentence
정답 문장
GoldToken
정답 토큰
PosStats
품사별 통계
TestDataset
테스트 데이터셋

Enums§

EvaluateError
평가 에러 타입

Constants§

TAG_EQUIVALENCE_GROUPS
POS 태그 동치 그룹 — Conservative (Sprint 125 + 126).
TAG_EQUIVALENCE_GROUPS_PRACTICAL
POS 태그 동치 그룹 — Practical (Sprint 126 P1).

Functions§

evaluate_dataset
데이터셋 평가
evaluate_dataset_dual
이중 메트릭 평가 (strict 모드, 기본).
evaluate_dataset_dual_lenient
이중 메트릭 평가 (lenient 모드, Sprint 125).
evaluate_dataset_dual_per_eojeol
이중 메트릭 평가 — per-eojeol 어절 + strict POS/surface (편의 함수).
evaluate_dataset_dual_per_eojeol_with_match
이중 메트릭 평가 — per-eojeol 알고리즘 (Sprint 128 P1+P2).
evaluate_dataset_dual_with_match
이중 메트릭 평가 (POS + surface 비교 함수 주입, Sprint 128 P2).
evaluate_dataset_dual_with_pos_match
이중 메트릭 평가 (POS 비교 함수 주입, Sprint 125).
evaluate_dataset_eojeol_surface_only
어절 surface-only 평가 (strict, 편의 함수).
evaluate_dataset_eojeol_surface_only_with_match
어절 surface-only 평가 (Sprint 133 P2, 검색/인덱싱 use case).
evaluate_dataset_sejong
세종 코퍼스 호환 모드로 데이터셋 평가 (strict 기본).
evaluate_dataset_sejong_lenient
세종 호환 모드 평가 (lenient, Sprint 125).
evaluate_dataset_sejong_with_match
세종 호환 모드 평가 (POS + surface 비교 함수 주입, Sprint 128 P2).
evaluate_dataset_sejong_with_pos_match
세종 호환 모드 평가 (POS 비교 함수 주입, Sprint 125).
evaluate_tokens
토큰 리스트 평가
evaluate_tokens_aligned
Greedy alignment 기반 토큰 평가 (strict 기본).
evaluate_tokens_aligned_with_match
Greedy alignment 기반 토큰 평가 (POS + surface 비교 함수 주입, Sprint 128 P2).
evaluate_tokens_aligned_with_pos_match
Greedy alignment 기반 토큰 평가 (POS 비교 함수 주입, Sprint 125).
pos_eq_strict
엄격(strict) POS 비교 — 기본 동작.
pos_tags_equivalent
두 POS 태그가 conservative 동치 그룹 기준 동일한지 확인 (Sprint 125+126).
pos_tags_equivalent_practical
두 POS 태그가 practical 동치 그룹 기준 동일한지 확인 (Sprint 126 P1).
surface_eq_canonical
Canonical surface 비교 (Sprint 128 P2).
surface_eq_canonical_lenient
Canonical + inflectional ending normalization (Sprint 128 P2 + Sprint 134 P3).
surface_eq_strict
엄격(strict) surface 비교 — 기본 동작.

Type Aliases§

PosMatchFn
POS 일치 판단 함수 타입 (Sprint 125).
Result
평가 결과 타입
SurfaceMatchFn
Surface 일치 판단 함수 타입 (Sprint 128 P2).