jijzepttools.blackbox_optimization.factorization_machine# Classes# FactorizationMachine Factorization Machine model FMTrainer Module Contents# class FactorizationMachine(n_features: int, latent_dim: int)# Bases: torch.nn.Module Factorization Machine model `math f(x|w, v) = w0 + Σwi*xi + ΣΣ<vj, vk>xj*xk = w0 + Σwi*xi + 1/2*(Σ(vi*xi)^2 - Σ(vi^2*xi^2)) ` n_features# latent_dim# linear# quad# forward(x)# property v# property w# property w0# class FMTrainer(n_features: int, latent_dim: int, optimizer_params: dict | None = None)# model# fit(x_numpy: numpy.ndarray, y_numpy: numpy.ndarray, n_epochs: int)# predict(x: torch.Tensor) → torch.Tensor# property x# property y# get_qubo() → tuple[numpy.ndarray, float]#