deeppavlov/models/spelling_correction/levenshtein/levenshtein_searcher.py
def distance(self, first, second, return_transduction = False):
        """
        Вычисляет трансдукцию минимальной стоимости,
        отображающую first в second

        Аргументы:
        -----------
        first : string
        second : string
            Верхний и нижний элементы трансдукции

        return_transduction : bool (optional, default=False)
            следует ли возвращать трансдукцию минимального веса
            (см. возвращаемое значение)

        Возвращает:
        -----------
        (final_cost, transductions) : tuple(float, list)
            если return_transduction=True, то возвращает
            минимальную стоимость трансдукции, переводящей first в second
            и список трансдукций с данной стоимостью

        final_cost : float
            если return_transduction=False, то возвращает
            минимальную стоимость трансдукции, переводящей first в second
        """
        if return_transduction:
            add_pred = (lambda x, y: (y == np.inf or x < y))
        else:
            add_pred = (lambda x, y: (y == np.inf or x <= y))
        clear_pred = (lambda x, y: (y < np.inf and x < y))
        update_func = lambda x, y: min(x, y)
        costs, backtraces = self._fill_levenshtein_table(first, second,
                                                        update_func, add_pred, clear_pred)
        final_cost = costs[-1][-1]
        if final_cost == np.inf:
            transductions = [None]
        elif return_transduction:
            transductions = self._backtraces_to_transductions(first, second, backtraces,
                                                              final_cost, return_cost=False)
        if return_transduction:
            return final_cost, transductions
        else:
            return final_cost
def distance(self, first, second, return_transduction = False):
        """
        Вычисляет трансдукцию минимальной стоимости,
        отображающую first в second

        Аргументы:
        -----------
        first : string
        second : string
            Верхний и нижний элементы трансдукции

        return_transduction : bool (optional, default=False)
            следует ли возвращать трансдукцию минимального веса
            (см. возвращаемое значение)

        Возвращает:
        -----------
        (final_cost, transductions) : tuple(float, list)
            если return_transduction=True, то возвращает
            минимальную стоимость трансдукции, переводящей first в second
            и список трансдукций с данной стоимостью

        final_cost : float
            если return_transduction=False, то возвращает
            минимальную стоимость трансдукции, переводящей first в second
        """
        if return_transduction:
            add_pred = (lambda x, y: (y == np.inf or x < y))
        else:
            add_pred = (lambda x, y: (y == np.inf or x <= y))
        clear_pred = (lambda x, y: (y < np.inf and x < y))
        update_func = lambda x, y: min(x, y)
        costs, backtraces = self._fill_levenshtein_table(first, second,
                                                        update_func, add_pred, clear_pred)
        final_cost = costs[-1][-1]
        if final_cost == np.inf:
            transductions = [None]
        elif return_transduction:
            transductions = self._backtraces_to_transductions(first, second, backtraces,
                                                              final_cost, return_cost=False)
        if return_transduction:
            return final_cost, transductions
        else:
            return final_cost
def distance ( self , first , second , return_transduction = False ) : if return_transduction : add_pred = ( lambda x , y : ( y == np . inf or x < y ) ) else : add_pred = ( lambda x , y : ( y == np . inf or x <= y ) ) clear_pred = ( lambda x , y : ( y < np . inf and x < y ) ) update_func = lambda x , y : min ( x , y ) costs , backtraces = self . _fill_levenshtein_table ( first , second , update_func , add_pred , clear_pred ) final_cost = costs [ - 1 ] [ - 1 ] if final_cost == np . inf : transductions = [ None ] elif return_transduction : transductions = self . _backtraces_to_transductions ( first , second , backtraces , final_cost , return_cost = False ) if return_transduction : return final_cost , transductions else : return final_cost
Вычисляет трансдукцию минимальной стоимости,
        отображающую first в second

        Аргументы:
        -----------
        first : string
        second : string
            Верхний и нижний элементы трансдукции

        return_transduction : bool (optional, default=False)
            следует ли возвращать трансдукцию минимального веса
            (см. возвращаемое значение)

        Возвращает:
        -----------
        (final_cost, transductions) : tuple(float, list)
            если return_transduction=True, то возвращает
            минимальную стоимость трансдукции, переводящей first в second
            и список трансдукций с данной стоимостью

        final_cost : float
            если return_transduction=False, то возвращает
            минимальную стоимость трансдукции, переводящей first в second
Вычисляет трансдукцию минимальной стоимости отображающую first в second