def liblinear_svc(name, C=None, loss=None, penalty=None, dual=None, tol=None, multi_class=None, fit_intercept=None, intercept_scaling=None, class_weight=None, random_state=None, verbose=False): def _name(msg): return '%s.%s_%s' % (name, 'linear_svc', msg) """ The combination of penalty='l1' and loss='l1' is not supported penalty='l2' and ploss='l1' is only supported when dual='true' penalty='l1' is only supported when dual='false' """ loss_penalty_dual = hp.choice(_name('loss_penalty_dual'), [('l1', 'l2', True), ('l2', 'l2', True), ('l2', 'l1', False), ('l2', 'l2', False)]) rval = scope.sklearn_LinearSVC( C=_svc_C(name + '.liblinear') if C is None else C, loss=loss_penalty_dual[0] if loss is None else loss, penalty=loss_penalty_dual[1] if penalty is None else penalty, dual=loss_penalty_dual[2] if dual is None else dual, tol=_svc_tol(name + '.liblinear') if tol is None else tol, multi_class=hp.choice( _name('multi_class'), ['ovr', 'crammer_singer']) if multi_class is None else multi_class, fit_intercept=hp.choice( _name('fit_intercept'), [True, False]) if fit_intercept is None else fit_intercept, random_state=_random_state(_name('rstate'), random_state), verbose=verbose, ) return rval
def liblinear_svc(name, C=None, loss=None, penalty=None, dual=None, tol=None, multi_class=None, fit_intercept=None, intercept_scaling=None, class_weight=None, random_state=None, verbose=False): def _name(msg): return '%s.%s_%s' % (name, 'linear_svc', msg) """ The combination of penalty='l1' and loss='l1' is not supported penalty='l2' and ploss='l1' is only supported when dual='true' penalty='l1' is only supported when dual='false' """ loss_penalty_dual = hp.choice(_name('loss_penalty_dual'), [('l1', 'l2', True), ('l2', 'l2', True), ('l2', 'l1', False), ('l2', 'l2', False)]) rval = scope.sklearn_LinearSVC( C=_svc_C(name + '.liblinear') if C is None else C, loss=loss_penalty_dual[0] if loss is None else loss, penalty=loss_penalty_dual[1] if penalty is None else penalty, dual=loss_penalty_dual[2] if dual is None else dual, tol=_svc_tol(name + '.liblinear') if tol is None else tol, multi_class=hp.choice(_name('multi_class'), ['ovr', 'crammer_singer']) if multi_class is None else multi_class, fit_intercept=hp.choice(_name('fit_intercept'), [True, False]) if fit_intercept is None else fit_intercept, random_state=_random_state(_name('rstate'), random_state), verbose=verbose, ) return rval
def liblinear_svc(name, C=None, loss=None, penalty=None, dual=None, tol=None, multi_class=None, fit_intercept=True, intercept_scaling=None, class_weight='choose', random_state=None, verbose=False, max_iter=1000): def _name(msg): return '%s.%s_%s' % (name, 'linear_svc', msg) loss_penalty_dual = _svm_loss_penalty_dual(_name('loss_penalty_dual')) rval = scope.sklearn_LinearSVC( C=_svm_C(_name('C')) if C is None else C, loss=loss_penalty_dual[0] if loss is None else loss, penalty=loss_penalty_dual[1] if penalty is None else penalty, dual=loss_penalty_dual[2] if dual is None else dual, tol=_svm_tol(_name('tol')) if tol is None else tol, multi_class=(hp.choice(_name('multiclass'), ['ovr', 'crammer_singer']) if multi_class is None else multi_class), fit_intercept=fit_intercept, intercept_scaling=(_svm_int_scaling(_name('intscaling')) if intercept_scaling is None else intercept_scaling), class_weight=(_class_weight(_name('clsweight')) if class_weight == 'choose' else class_weight), random_state=_random_state(_name('rstate'), random_state), verbose=verbose, max_iter=max_iter, ) return rval