def fit_and_validate(self): ''' Returns training & testing log loss ''' X_train, X_test = self._pick_examples() # shorthand Y_train = self.Y_train Y_test = self.Y_test self.clf.fit(X_train, Y_train) if self.scoring == 'accuracy': a_train = metrics.accuracy_score(Y_train, self.clf.predict(X_train)) a_test = np.array( []) if isEmpty(Y_test) else metrics.accuracy_score( Y_test, self.clf.predict(X_test)) return a_train, a_test else: #log_loss # get probabilities self._proba_train = self.clf.predict_proba(X_train) self._proba_test = self.clf.predict_proba(X_test) return metrics.log_loss(Y_train, self.proba_train), np.array( []) if isEmpty(Y_test) else metrics.log_loss( Y_test, self.proba_test)
def _pick_examples(self): ''' If we have scaled examples - pick them, else pick X_train, X_test ''' return (self.X_train, self.X_test) \ if isEmpty(self.X_train_scaled) or isEmpty(self.X_test_scaled) \ else (self.X_train_scaled, self.X_test_scaled)
def fit_and_validate(self): ''' Returns training & testing log loss ''' X_train, X_test = self._pick_examples() # shorthand Y_train = self.Y_train Y_test = self.Y_test self.clf.fit(X_train, Y_train) if self.scoring == 'accuracy': a_train = metrics.accuracy_score(Y_train, self.clf.predict(X_train)) a_test = np.array([]) if isEmpty(Y_test) else metrics.accuracy_score(Y_test, self.clf.predict(X_test)) return a_train, a_test else: #log_loss # get probabilities self._proba_train = self.clf.predict_proba(X_train) self._proba_test = self.clf.predict_proba(X_test) return metrics.log_loss(Y_train, self.proba_train), np.array([]) if isEmpty(Y_test) else metrics.log_loss(Y_test, self.proba_test)
def fit_and_validate(self): ''' Returns training & testing log loss ''' X_train, X_test = self._pick_examples() # shorthand Y_train = self.Y_train Y_test = self.Y_test self.clf.fit(X_train, Y_train) # get probabilities self._proba_train = self.clf.predict_proba(X_train) self._proba_test = self.clf.predict_proba(X_test) return metrics.log_loss(Y_train, self.proba_train), np.array([]) if isEmpty(Y_test) else metrics.log_loss(Y_test, self.proba_test)
def fit_and_validate(self): ''' Returns training & testing log loss ''' X_train, X_test = self._pick_examples() # shorthand Y_train = self.Y_train Y_test = self.Y_test self.clf.fit(X_train, Y_train) # get probabilities self._proba_train = self.clf.predict_proba(X_train) self._proba_test = self.clf.predict_proba(X_test) return metrics.log_loss(Y_train, self.proba_train), np.array( []) if isEmpty(Y_test) else metrics.log_loss( Y_test, self.proba_test)