first implementation of IRBM, haven't test on dataset