aibox.nlp.core.pipeline

Interface básica para pipelines.

Classes

Pipeline(vectorizer, estimator[, ...])

Essa é a interface básica para uma pipeline.

class aibox.nlp.core.pipeline.Pipeline(vectorizer: Vectorizer, estimator: Estimator, postprocessing: Callable[[ndarray], ndarray] | None = None, name: str | None = None)[código-fonte]

Base: object

Essa é a interface básica para uma pipeline.

Parâmetros:
  • vectorizer (Vectorizer) – estratégia de vetorização dessa pipeline. Pode ser treinável ou não.

  • estimator (Estimator) – estimador dessa pipeline.

  • postprocessing (Callable[[np.ndarray], np.ndarray], opcional) – estratégia de pós-processamento das saídas do estimador. Valor padrão é identidade (i.e., no-op). A estratégia de pós-processamento deve respeitar o shape (n_samples,) como entrada e saída. Dtypes podem ser distintos.

  • name (str, opcional) – nome dessa pipeline. Quando não passado, um nome automático é gerado com base nos demais argumentos.

Todas as etapas de uma pipeline são sequenciais, isto é, a saída de uma etapa é entrada para a próxima.

Toda pipeline é composta por 3 componentes:
  1. Vetorizador

  2. Estimador

  3. Pós-processamento

Quando o método fit() é invocado em uma pipeline, o seguinte processo ocorre para cada componente treinável T:

  1. Treinamos T fazendo T.fit(X, y);

  2. Calculamos o novo valor de X = T.predict(X);

  3. Passamos o novo X e o mesmo y para a próxima etapa treinável;

predict(X: list[str] | ndarray[str_], **kwargs) ndarray[código-fonte]

Realiza a predição utilizando os parâmetros atuais da pipeline.

O comportamento desse método não é definido caso seja chamado antes do treinamento (i.e., fit()).

Parâmetros:
  • X (list[str] | ndarray[str_]) – array-like de strings com formato (n_samples, <any>).

  • **kwargs – configurações estras para o estimador ou vetorizador.

Retorna:

array com as predições para cada amostra.

Tipo de retorno:

np.ndarray

fit(X: list[str] | ndarray[str_], y: list[int] | list[float] | ndarray[int32] | ndarray[float32] | Tensor, **kwargs) None[código-fonte]

Realiza o treinamento da pipeline utilizando as entradas X com os targets y.

Parâmetros:
  • X (list[str] | ndarray[str_]) – array-like de strings com formato (n_samples, <any>).

  • y (list[int] | list[float] | ndarray[int32] | ndarray[float32] | Tensor) – array-like com formato (n_samples,).

  • **kwargs – configurações estras para o estimador ou vetorizador.

Tipo de retorno:

None

property vectorizer: Vectorizer

Retorna o vetorizador dessa pipeline.

Retorna:

vetorizador dessa pipeline.

Tipo de retorno:

Vectorizer

property estimator: Estimator

Retorna o estimador utilizado nessa pipeline.

Retorna:

estimador dessa pipeline.

property name: str

Retorna o nome dessa pipeline.

Retorna:

nome da pipeline.

postprocessing(y: ndarray) ndarray[código-fonte]

Método de pós-processamento da pipeline.

Parâmetros:

y (np.ndarray) – array-like com formato (n_samples,).

Retorna:

array com mesmo formato após função de pós-processamento.

Tipo de retorno:

ndarray