Closed dselivanov closed 7 years ago
In fact no segfault when I set normalize = F
.
The bugs for normalize=T
have been fixed, and some new functions have been added. Please install the latest version and have a try.
library(FMwR)
load("~/Downloads/fwmr_segfault.rds")
solver = ALS.solver(alpha_0 = 1.0,
gamma_0 = 1.0,
beta_0 = 1.0,
mu_0 = 0.0,
alpha = 1.0,
w0_mean_0 = 1.0)
m_fm_train = fm.matrix(train$m, as.numeric(train$y), feature_names = as.character(1:ncol(train$m)))
m_fm_test = fm.matrix(test$m, as.numeric(test$y), feature_names = as.character(1:ncol(train$m)))
control_lst = list(track.control(step_size = 1),
solver.control(solver = solver, max_iter = 10),
model.control(L1.w1 = 10, L2.w1 = 10, L1.v = 1, factor.number = 2))
fm.set_threads(2)
fm_fit = fm.train(m_fm_train, normalize = T, control = control_lst)
fm_track <- fm.track(fm_fit, m_fm_train, m_fm_test, evaluate.metric = "ACC")
plot(fm_track)
best_fit <- fm.select(fm_fit, trace = fm_track, drop.trace = T)
fm_pred <- predict(best_fit, normalize = T, m_fm_test)
table(m_fm_test$labels, fm_pred > 0.5)
thanks! works now.
Got segmentation fault (
fwmr_segfault.rds
data file to reproduce is here).segmentation fault for
ALS
,MCMC
solvers with any number of threads.