def __init__(self, opt_path=None, *args, **kwargs): Algo.__init__(self, *args, **kwargs) BPRMFOption.__init__(self, *args, **kwargs) Evaluable.__init__(self, *args, **kwargs) Serializable.__init__(self, *args, **kwargs) Optimizable.__init__(self, *args, **kwargs) if opt_path is None: opt_path = BPRMFOption().get_default_option() self.logger = log.get_logger('BPRMF') self.opt, self.opt_path = self.get_option(opt_path) self.obj = CyBPRMF() assert self.obj.init(bytes(self.opt_path, 'utf-8')),\ 'cannot parse option file: %s' % opt_path self.data = None data = kwargs.get('data') data_opt = self.opt.get('data_opt') data_opt = kwargs.get('data_opt', data_opt) if data_opt: self.data = buffalo.data.load(data_opt) self.data.create() elif isinstance(data, Data): self.data = data self.logger.info('BPRMF(%s)' % json.dumps(self.opt, indent=2)) if self.data: self.logger.info(self.data.show_info()) assert self.data.data_type in ['matrix']
def __init__(self, opt_path=None, *args, **kwargs): Algo.__init__(self, *args, **kwargs) ALSOption.__init__(self, *args, **kwargs) Evaluable.__init__(self, *args, **kwargs) Serializable.__init__(self, *args, **kwargs) Optimizable.__init__(self, *args, **kwargs) if opt_path is None: opt_path = ALSOption().get_default_option() self.logger = log.get_logger('ALS') self.opt, self.opt_path = self.get_option(opt_path) if self.opt.accelerator and not inited_CUALS: self.logger.error("ImportError CuALS, no cuda library exists.") raise RuntimeError() self.obj = CuALS() if self.opt.accelerator else CyALS() assert self.obj.init(bytes( self.opt_path, 'utf-8')), 'cannot parse option file: %s' % opt_path self.data = None data = kwargs.get('data') data_opt = self.opt.get('data_opt') data_opt = kwargs.get('data_opt', data_opt) if data_opt: self.data = buffalo.data.load(data_opt) self.data.create() elif isinstance(data, Data): self.data = data self.logger.info('ALS(%s)' % json.dumps(self.opt, indent=2)) if self.data: self.logger.info(self.data.show_info()) assert self.data.data_type in ['matrix']
def __init__(self, opt_path=None, *args, **kwargs): Algo.__init__(self, *args, **kwargs) W2VOption.__init__(self, *args, **kwargs) Evaluable.__init__(self, *args, **kwargs) Serializable.__init__(self, *args, **kwargs) Optimizable.__init__(self, *args, **kwargs) if opt_path is None: opt_path = W2VOption().get_default_option() self.logger = log.get_logger('W2V') self.opt, self.opt_path = self.get_option(opt_path) self.obj = CyW2V() assert self.obj.init(bytes(self.opt_path, 'utf-8')), 'cannot parse option file: %s' % opt_path self.data = None data = kwargs.get('data') data_opt = self.opt.get('data_opt') data_opt = kwargs.get('data_opt', data_opt) if data_opt: self.data = buffalo.data.load(data_opt) assert self.data.data_type == 'stream' self.data.create() elif isinstance(data, Data): self.data = data self.logger.info('W2V(%s)' % json.dumps(self.opt, indent=2)) if self.data: self.logger.info(self.data.show_info()) assert self.data.data_type in ['stream'] self._vocab = aux.Option({'size': 0, 'index': None, 'inv_index': None, 'scale': None, 'dist': None, 'total_word_count': 0})
def __init__(self, opt_path=None, *args, **kwargs): Algo.__init__(self, *args, **kwargs) WARPOption.__init__(self, *args, **kwargs) Evaluable.__init__(self, *args, **kwargs) Serializable.__init__(self, *args, **kwargs) Optimizable.__init__(self, *args, **kwargs) if opt_path is None: opt_path = WARPOption().get_default_option() self.logger = log.get_logger('WARP') self.opt, self.opt_path = self.get_option(opt_path) # TODO:GPU Implementation if self.opt.accelerator is True: raise NotImplementedError( "GPU version WARP is not implemented yet") self.obj = CyWARP() assert self.obj.init(bytes(self.opt_path, 'utf-8')),\ 'cannot parse option file: %s' % opt_path self.data = None data = kwargs.get('data') data_opt = self.opt.get('data_opt') data_opt = kwargs.get('data_opt', data_opt) if data_opt: self.data = buffalo.data.load(data_opt) self.data.create() elif isinstance(data, Data): self.data = data self.logger.info('WARP(%s)' % json.dumps(self.opt, indent=2)) if self.data: self.logger.info(self.data.show_info()) assert self.data.data_type in ['matrix']
def __init__(self, opt_path=None, *args, **kwargs): Algo.__init__(self, *args, **kwargs) CFROption.__init__(self, *args, **kwargs) Evaluable.__init__(self, *args, **kwargs) Serializable.__init__(self, *args, **kwargs) Optimizable.__init__(self, *args, **kwargs) if opt_path is None: opt_path = CFROption().get_default_option() self.logger = log.get_logger('CFR') # put options into cython class with type assertion # see comments on options.py for the description of each parameter self.opt, self.opt_path = self.get_option(opt_path) self.obj = CyCFR() # check the validity of option self.is_valid_option(self.opt) assert self.obj.init(self.opt_path.encode( "utf8")), "putting parameter to cython object failed" # ensure embedding matrix is initialzed for preventing segmentation fault self.is_initialized = False self.data = None data = kwargs.get('data') data_opt = self.opt.get('data_opt') data_opt = kwargs.get('data_opt', data_opt) if data_opt: assert data_opt.data.internal_data_type == "matrix", \ f"internal data type is {data_opt.data.internal_data_type}, not matrix" self.data = buffalo.data.load(data_opt) assert self.data.data_type == 'stream' self.data.create() elif isinstance(data, Data): self.data = data self.logger.info('CFR ({})'.format(json.dumps(self.opt, indent=2))) if self.data: self.logger.info(self.data.show_info()) assert self.data.data_type in ['stream']