Pular para o conteúdo principal
Versões: 0.5.x

sanitizers

Funções utilitárias para validação e tratamento de parâmetros.

Módulo: aisp.utils.sanitizers
Importação: from aisp.utils import sanitizers

Funções

sanitize_choice

def sanitize_choice(value: T, valid_choices: Iterable[T], default: T) -> T:
...

Retorna o valor se estiver presente no conjunto de opções válidas; caso contrário, retorna o valor padrão.

Parâmetros

NomeTipoPadrãoDescrição
valueT-O valor a ser verificado.
valid_choicesIterable[T]-Uma coleção de opções válidas.
defaultT-O valor padrão a ser retornado se 'value' não estiver em 'valid_choices'.

Returns

TipoDescrição
TO valor original, se válido, ou o valor padrão, se não.

sanitize_param

def sanitize_param(value: T, default: T, condition: Callable[[T], bool]) -> T:
...

Retorna o valor se ele satisfizer a condição especificada; caso contrário, retorna o valor padrão.

Parâmetros

NomeTipoPadrãoDescrição
valueT-O valor a ser verificado.
defaultT-O valor padrão a ser retornado se a condição não for satisfeita.
conditionCallable[[T], bool]-Uma função que recebe um valor e retorna um booleano, determinando se o valor é válido.

Returns

TipoDescrição
TO valor original se a condição for satisfeita, ou o valor padrão se não for.

sanitize_seed

def sanitize_seed(seed: Any) -> Optional[int]:
...

Retorna a semente se for um inteiro não negativo; caso contrário, retorna Nenhum.

Parâmetros

NomeTipoPadrãoDescrição
seedAny-O valor da seed a ser validado.

Returns

TipoDescrição
Optional[int]A seed original se for um inteiro não negativo, ou None se for inválido.

sanitize_bounds

def sanitize_bounds(
bounds: Any, problem_size: int
) -> Dict[str, npt.NDArray[np.float64]]:
...

Valida e normaliza os limites das características.

Parâmetros

NomeTipoPadrãoDescrição
boundsAny-Os limites de entrada, que devem ser None ou um dicionário com as chaves 'low' e 'high'.
problem_sizeint-O tamanho esperado para as listas de limites normalizadas, correspondente ao número de features do problema.

Returns

TipoDescrição
Dict[str, list]Dicionário {'low': [low_1, ..., low_N], 'high': [high_1, ..., high_N]}.

Exceções

ExceçãoDescrição
TypeErrorSe bounds não for None nem um dicionário com as chaves 'low'/'high', ou se os valores não forem numéricos.
ValueErrorSe os iteráveis fornecidos tiverem tamanho incorreto.