use anyhow::Result;
use ndarray_glm::{Logistic, ModelBuilder};
mod common;
use common::y_x_off_from_csv;
#[test]
fn log_termination_0() -> Result<()> {
let (y, x, off) = y_x_off_from_csv::<bool, f32>("tests/data/log_termination_0.csv")?;
let model = ModelBuilder::<Logistic>::data(&y, &x)
.linear_offset(off)
.build()?;
let fit = model.fit()?;
dbg!(fit.result);
dbg!(fit.n_iter);
Ok(())
}
#[test]
fn log_termination_1() -> Result<()> {
let (y, x, off) = y_x_off_from_csv::<bool, f32>("tests/data/log_termination_1.csv")?;
let model = ModelBuilder::<Logistic>::data(&y, &x)
.linear_offset(off)
.build()?;
let fit = model.fit()?;
dbg!(fit.result);
dbg!(fit.n_iter);
Ok(())
}
#[test]
fn log_regularization() -> Result<()> {
let (y, x, off) = y_x_off_from_csv::<bool, f32>("tests/data/log_regularization.csv")?;
let model = ModelBuilder::<Logistic>::data(&y, &x)
.linear_offset(off)
.build()?;
let fit = model.fit_options().l2_reg(2e-6).fit()?;
dbg!(fit.result);
dbg!(fit.n_iter);
Ok(())
}