pub fn additive_multi_task_multi<I, L>(
weighted_lists: &[(L, f32)],
config: AdditiveMultiTaskConfig,
) -> Vec<(I, f32)>Expand description
Additive multi-task fusion for 3+ weighted lists.
§Arguments
weighted_lists- Slice of (list, weight) pairs. Each list is normalized independently, then combined using weighted sum.
§Example
use rankops::{additive_multi_task_multi, AdditiveMultiTaskConfig};
let task1 = vec![("d1", 0.9), ("d2", 0.7)];
let task2 = vec![("d1", 0.8), ("d2", 0.6)];
let task3 = vec![("d1", 0.5), ("d2", 0.4)];
let weighted = vec![
(&task1[..], 1.0),
(&task2[..], 2.0),
(&task3[..], 0.5),
];
let config = AdditiveMultiTaskConfig::default();
let fused = additive_multi_task_multi(&weighted, config);