pub fn l1_normalize(data: &Array2<f64>) -> Result<Array2<f64>>
L1 normalization - normalize each sample (row) to unit L1 norm Each row will sum to 1, useful for probability-like features