def select(self, label_index, unlabel_index, eval_cost=False, model=None, **kwargs):
    "Query from oracles. Return the index of selected instance and oracle.\n\n        Parameters\n        ----------\n        label_index: {list, np.ndarray, IndexCollection}\n            The indexes of labeled samples.\n\n        unlabel_index: {list, np.ndarray, IndexCollection}\n            The indexes of unlabeled samples.\n\n        eval_cost: bool, optional (default=False)\n            To evaluate the cost of oracles or use the cost provided by oracles.\n\n        model: object, optional (default=None)\n            Current classification model, should have the 'predict_proba' method for probabilistic output.\n            If not provided, LogisticRegression with default parameters implemented by sklearn will be used.\n\n        n_neighbors: int, optional (default=10)\n            How many neighbors of the selected instance will be used\n            to evaluate the oracles.\n\n        Returns\n        -------\n        selected_instance: int\n            The index of selected instance.\n\n        selected_oracle: int or str\n            The index of selected oracle.\n            If a list is given, the index of oracle will be returned.\n            If a Oracles object is given, the oracle name will be returned.\n        "
    if (model is None):
        model = LogisticRegression(solver='liblinear')
        model.fit(self.X[label_index], self.y[label_index])
    (pred_unlab, _) = _get_proba_pred(self.X[unlabel_index], model)
    n_neighbors = min(kwargs.pop('n_neighbors', 10), (len(self._ini_ind) - 1))
    return self.select_by_prediction_mat(label_index, unlabel_index, pred_unlab, n_neighbors=n_neighbors, eval_cost=eval_cost)
Query from oracles. Return the index of selected instance and oracle.

Parameters
----------
label_index: {list, np.ndarray, IndexCollection}
    The indexes of labeled samples.

unlabel_index: {list, np.ndarray, IndexCollection}
    The indexes of unlabeled samples.

eval_cost: bool, optional (default=False)
    To evaluate the cost of oracles or use the cost provided by oracles.

model: object, optional (default=None)
    Current classification model, should have the 'predict_proba' method for probabilistic output.
    If not provided, LogisticRegression with default parameters implemented by sklearn will be used.

n_neighbors: int, optional (default=10)
    How many neighbors of the selected instance will be used
    to evaluate the oracles.

Returns
-------
selected_instance: int
    The index of selected instance.

selected_oracle: int or str
    The index of selected oracle.
    If a list is given, the index of oracle will be returned.
    If a Oracles object is given, the oracle name will be returned.
def select(self, label_index, unlabel_index, eval_cost=False, model=None, **kwargs):
    "Query from oracles. Return the index of selected instance and oracle.\n\n        Parameters\n        ----------\n        label_index: {list, np.ndarray, IndexCollection}\n            The indexes of labeled samples.\n\n        unlabel_index: {list, np.ndarray, IndexCollection}\n            The indexes of unlabeled samples.\n\n        eval_cost: bool, optional (default=False)\n            To evaluate the cost of oracles or use the cost provided by oracles.\n\n        model: object, optional (default=None)\n            Current classification model, should have the 'predict_proba' method for probabilistic output.\n            If not provided, LogisticRegression with default parameters implemented by sklearn will be used.\n\n        n_neighbors: int, optional (default=10)\n            How many neighbors of the selected instance will be used\n            to evaluate the oracles.\n\n        Returns\n        -------\n        selected_instance: int\n            The index of selected instance.\n\n        selected_oracle: int or str\n            The index of selected oracle.\n            If a list is given, the index of oracle will be returned.\n            If a Oracles object is given, the oracle name will be returned.\n        "
    if (model is None):
        model = LogisticRegression(solver='liblinear')
        model.fit(self.X[label_index], self.y[label_index])
    (pred_unlab, _) = _get_proba_pred(self.X[unlabel_index], model)
    n_neighbors = min(kwargs.pop('n_neighbors', 10), (len(self._ini_ind) - 1))
    return self.select_by_prediction_mat(label_index, unlabel_index, pred_unlab, n_neighbors=n_neighbors, eval_cost=eval_cost)