Skip to main content

stratified_sample_ner

Function stratified_sample_ner 

Source
pub fn stratified_sample_ner(
    cases: &[(String, Vec<GoldEntity>)],
    target_size: usize,
    seed: u64,
    type_mapper: Option<&TypeMapper>,
) -> Vec<(String, Vec<GoldEntity>)>
Expand description

Stratified sampling with entity type awareness.

Groups cases by their primary entity type and samples proportionally from each group to maintain the original type distribution.

§Arguments

  • cases - Input test cases
  • target_size - Maximum cases to return
  • seed - Random seed for reproducibility
  • type_mapper - Optional mapper for normalizing domain-specific types

§Example

use anno_eval::eval::sampling::stratified_sample_ner;
use anno_eval::eval::datasets::GoldEntity;
use anno::EntityType;

let cases = vec![
    ("John works at Apple".into(), vec![
        GoldEntity::new("John", EntityType::Person, 0),
    ]),
];

let sample = stratified_sample_ner(&cases, 100, 42, None);