% If you use this code, please cite % Sanjar Karaev, Pauli Miettinen and Jilles Vreeken, "Getting to Know the Unknown Unknowns: % Destructive-Noise Resistant Boolean Matrix Factorization". Proceedings of SIAM % International Conference on Data Mining (SDM15). 2015. % -------------------------------------------------------------------------- % % To start please first run 'setpath' command. % -------------------------------------------------------------------------- % For a given binary matrix A Nassau finds its Boolean decomposition into % factors [B, C] by heuristically minimizing the description length. % % -------------------------------------------------------------------------- % Usage: % [B, C] = Nassau(A) % [B, C] = Nassau(A, param1, value1, ..., paramN, valueN) % Optional parameters: % verbose: 1 - on, 0 off % n_full_cycles # full round robin updates of the blocks. % cyclic_interval how often to run cyclic updates during block % finding stage % MAX_ITERS_WITHOUT_IMPROVEMENT how many blocks can we add without % improving the objective % DLmeasure encoding to use, options: DtMtypedXor, % DtMnaiveXor, typedXor % init_temp Initial temperature for the simulated % annealing (0 <= init_temp <= 1) % mult_factor multiplicative update to th temperature % cand_gen how to generate candidates, options: % orginal - use column of the input matrix, % asso - use Asso candidates % random_walks - generate from random walks % file_id save intermediate results to % ./results/file_id (no saving by default) % tau thresholding parameter when using Asso % candidates % save_cand save candidates for this matrix, 1 - save, % 0 - not (default) % cyclic_updates periodically run cyclic updates during % the block finding stage, 1 - yes % (default), 0 - not % expand_factors before cyclic updates, pad the factors % with % some empty blocks to allow room for % improvement, 1 - yes (default), 0 - not % error_nnz use 0-1 error as the score, 1 - yes, % 0 - not (default) % cand_ratio do not generate all candidates, but only % fraction (0 < cand_ratio <= 1), 1 -default % accept_all_cands do not remove candidates even if they % have to many or to few 1s, 1 - yes, % 0 - not (default) % -------------------------------------------------------------------------- % The SYNTH command reruns all the synthetic experiments %