early stopping for Python wrapper

This commit is contained in:
Zygmunt Zając 2015-03-30 19:59:09 +02:00
parent 7994858697
commit 39093bc432

View File

@ -578,7 +578,7 @@ def train(params, dtrain, num_boost_round=10, evals=(), obj=None, feval=None):
maximize_score = False
if 'eval_metric' in params:
maximize_metrics = ('auc', 'map', 'ndcg')
if filter( lambda x: params['eval_metric'].startswith(x), maximize_metrics ):
if filter(lambda x: params['eval_metric'].startswith(x), maximize_metrics):
maximize_score = True
if maximize_score:
@ -601,7 +601,7 @@ def train(params, dtrain, num_boost_round=10, evals=(), obj=None, feval=None):
sys.stderr.write(msg + '\n')
score = float(msg.rsplit( ':', 1 )[1])
score = float(msg.rsplit(':', 1)[1])
if (maximize_score and score > best_score) or \
(not maximize_score and score < best_score):
best_score = score