AutoAI para Python

Última actualización: 21 mar 2025
AutoAI para Python

La biblioteca autoai-lib para Python contiene un conjunto de funciones que le ayudarán a interactuar con los experimentos IBM watsonx.ai Runtime AutoAI. Con la biblioteca autoai-lib, puede revisar y editar las transformaciones de datos que se llevan a cabo durante la creación de la interconexión. De forma similar, puede utilizar la biblioteca autoai-ts-libs para interactuar con cuadernos de interconexiones para experimentos de series temporales.

Instalación de autoai-lib o autoai-ts-libs para Python

Siga las instrucciones de Instalación de bibliotecas personalizadas para instalar autoai-lib o autoai-ts-libs.

Utilización de autoai-lib y autoai-ts-libs para Python

Las bibliotecas autoai-lib y autoai-ts-libs para Python contienen funciones que le ayudarán a interactuar con los experimentos de AutoAI. Utilizando la biblioteca autoai-lib , puede revisar y editar las transformaciones de datos que tienen lugar en la creación de interconexiones de clasificación y regresión. Utilizando la biblioteca autoai-ts-libs , puede revisar las transformaciones de datos que tienen lugar en la creación de interconexiones de serie temporal (previsión).

Instalación de autoai-lib y autoai-ts-libs para Python

Siga las instrucciones de Instalación de bibliotecas personalizadas para instalar autoai-lib y autoai-ts-libs.

Configuración del registro a nivel de biblioteca

Puede configurar el registrador de biblioteca autoai_libs según sus necesidades. Por ejemplo, puede definir y adjuntar manejadores o configurar filtros para personalizar detalles de registro como, por ejemplo, el manejo de avisos y errores.

Si no actualiza la configuración, obtendrá el comportamiento predeterminado para el registro. Por ejemplo, los mensajes de aviso de gravedad y superior (es decir, aviso, error y crítico) se imprimirán en stderr (error estándar) sin ningún formato especial. Por ejemplo, los mensajes de aviso se muestran como WARNING sin ningún formato especial. Para obtener más información sobre cómo configurar el registro y ver ejemplos, consulte la documentación de autoai-lib.

Las funciones autoai-lib

El objeto de proyecto instanciado que se crea después de importar la biblioteca autoai-lib expone estas funciones:

autoai_libs.transformers.exportable.NumpyColumnSelector()

Selecciona un subconjunto de columnas de una matriz de numpy

Uso:

autoai_libs.transformers.exportable.NumpyColumnSelector(columns=None)
Opción Descripción
columnas lista de índices de columna a seleccionar

autoai_libs.transformers.exportable.CompressStrings()

Elimina los espacios y los caracteres especiales de las columnas de serie de una matriz X de numpy de entrada.

Uso:

autoai_libs.transformers.exportable.CompressStrings(compress_type='string', dtypes_list=None, misslist_list=None, missing_values_reference_list=None, activate_flag=True)
Opción Descripción
compress_type tipo de compresión de serie. 'string' para eliminar espacios de una serie y 'hash' para crear un hash int. El valor predeterminado es 'string'. 'hash' se utiliza para columnas con series y cat_imp_strategy = 'most_frecuente'
dtypes_list lista que contiene series que indican el tipo de columna de la matriz de numpy de entrada X (entre las series, 'char_str','int_str','float_str','float_num', 'float_int_num','int_num','boolean','Unknown'). Si es None, se descubren los tipos de columna. El valor predeterminado es None.
misslist_list list contiene listas de valores perdidos de cada columna de la matriz X de numpy de entrada. Si es Ninguno, se descubren los valores perdidos de cada columna. El valor predeterminado es None.
missing_values_reference_list lista de referencia de valores perdidos en la matriz X de numpy de entrada
activate_flag que indica que este transformador está activo. Si False, transform(X) genera la matriz X de numpy de entrada sin modificar.

autoai_libs.transformers.exportable.NumpyReplaceMissingValues()

Si se da una matriz de numpy y una lista de referencia de sus valores perdidos, sustituye los valores perdidos por un valor especial (normalmente un valor perdido especial como np.nan).

Uso:

autoai_libs.transformers.exportable.NumpyReplaceMissingValues(missing_values, filling_values=np.nan)
Opción Descripción
missing_values lista de referencia de valores perdidos
filling_values valor especial que se asigna a valores desconocidos

autoai_libs.transformers.exportable.NumpyReplaceUnknownValues()

Si se da una matriz de numpy y una lista de referencia de valores conocidos para cada columna, sustituye los valores que no forman parte de una lista de referencia por un valor especial (normalmente np.nan). Este método se utiliza normalmente para eliminar etiquetas para las columnas de un conjunto de datos de prueba que no se ha visto en las columnas correspondientes del conjunto de datos de entrenamiento.

Uso:

autoai_libs.transformers.exportable.NumpyReplaceUnknownValues(known_values_list=None, filling_values=None, missing_values_reference_list=None)
Opción Descripción
known_values_list lista de referencia de listas de valores conocidos para cada columna
filling_values valor especial que se asigna a valores desconocidos
missing_values_reference_list lista de referencia de valores perdidos

autoai_libs.transformers.exportable.boolean2float()

Convierte una matriz booleana NumPy a flotantes, sustituyendo los valores que faltan por unos. También cambia el tipo de matriz de 'objet' a 'float'.

Uso:

autoai_libs.transformers.exportable.boolean2float(activate_flag=True)
Opción Descripción
activate_flag que indica que este transformador está activo. Si False, transform(X) genera la matriz X de numpy de entrada sin modificar.

autoai_libs.transformers.exportable.CatImputer()

Este transformador es un envoltorio para imputador categórico. Internamente, actualmente utiliza skaprende SimpleImputer

Uso:

autoai_libs.transformers.exportable.CatImputer(strategy, missing_values, sklearn_version_family=global_sklearn_version_family, activate_flag=True)
Opción Descripción
strategy serie, opcional, valor predeterminado=”mean”. La estrategia de imputación para valores perdidos.
-mean: sustituir utilizando la media a lo largo de cada columna. Sólo se puede utilizar con datos numéricos.
- median:replace utilizando la mediana a lo largo de cada columna. Sólo se puede utilizar con datos numéricos.
- most_frequent:replace utilizando el valor más frecuente de cada columna. Se utiliza con series o datos numéricos.
- constant:sustituir por fill_value. Se puede utilizar con series o datos numéricos.
missing_values número, serie, np.nan (valor predeterminado) o None. El marcador de los valores perdidos. Se imputan todas las apariciones de missing_values.
sklearn_version_family str que indica la versión de skaprende para compatibilidad con versiones anteriores con las versiones 019 y 020dev. Actualmente no se utiliza. El valor predeterminado es None.
activate_flag que indica que este transformador está activo. Si False, transform(X) genera la matriz X de numpy de entrada sin modificar.

autoai_libs.transformers.exportable.CatEncoder()

Este método es un derivador para el codificador categórico. Si el parámetro de codificación es 'ordinal', internamente utiliza actualmente sklearn OrdinalEncoder. Si el parámetro de codificación es 'onehot', o 'onehot-dense' internamente utiliza sklearn OneHotEncoder

Uso:

autoai_libs.transformers.exportable.CatEncoder(encoding, categories, dtype, handle_unknown, sklearn_version_family=global_sklearn_version_family, activate_flag=True)
Opción Descripción
encoding str, 'onehot', 'onehot-dense' u 'ordinal'. El tipo de codificación a utilizar (el valor predeterminado es 'ordinal')
'onehot': codifique las características utilizando un esquema one-hot aka one-of-K (o también denominado codificación 'dummy'). Esta codificación crea una columna binaria para cada categoría y devuelve una matriz dispersa.
'onehot-dense': igual que 'onehot' pero devuelve una matriz densa en lugar de una matriz dispersa.
'ordinal': codifica las características como enteros ordinales. El resultado es una sola columna de enteros (0 a n_categories-1) por característica.
categories 'auto' o una lista de listas/matrices de valores. Categorías (valores exclusivos) por característica:
'auto': Determinar categorías automáticamente a partir de los datos de entrenamiento.
list : categories[i] contiene las categorías que se esperan en la columna ith. Las categorías pasadas deben estar ordenadas y no pueden mezclar cadenas y valores numéricos. Las categorías utilizadas se pueden encontrar en el atributo encoder.categories_.
dtype tipo de número, np.float64 predeterminado. dtype de resultados deseado.
handle_unknown 'error' (valor predeterminado) o 'ignore'. Si se debe indicar un error o ignorar que una característica categórica desconocida está presente durante la transformación (el valor predeterminado es indicarlo). Cuando este parámetro se establece en 'ignore' y se encuentra una categoría desconocida durante la transformación, las columnas codificadas en caliente resultantes para esta característica son todas ceros. En la transformación inversa, una categoría desconocida se indica como Ninguno. No se permite ignorar las categorías desconocidas para encoding='ordinal'.
sklearn_version_family str que indica la versión de skaprende para compatibilidad con versiones anteriores con las versiones 019 y 020dev. Actualmente no se utiliza. El valor predeterminado es None.
activate_flag que indica que este transformador está activo. Si False, transform(X) genera la matriz X de numpy de entrada sin modificar.

autoai_libs.transformers.exportable.float32_transform()

Transforma una matriz de numpy de float64 a float32.

Uso:

autoai_libs.transformers.exportable.float32_transform(activate_flag=True)
Opción Descripción
activate_flag que indica que este transformador está activo. Si False, transform(X) genera la matriz X de numpy de entrada sin modificar.

autoai_libs.transformers.exportable.FloatStr2Float()

Si se da la matriz X de numpy y la dtypes_list que denota los tipos de sus columnas, sustituye las columnas de series que representan flotantes (tipo 'float_str' en dtypes_list) por columnas de flotantes y sustituye los valores perdidos por np.nan.

Uso:

autoai_libs.transformers.exportable.FloatStr2Float(dtypes_list, missing_values_reference_list=None, activate_flag=True)
Opción Descripción
dtypes_list list contiene series que denotan el tipo de cada columna de la matriz X de numpy de entrada (las series están entre 'char_str', 'int_str', 'float_str', 'float_num', 'float_int_num', 'int_num', 'Boolean', 'Unknown').
missing_values_reference_list lista de referencia de valores perdidos
activate_flag que indica que este transformador está activo. Si False, transform(X) genera la matriz X de numpy de entrada sin modificar.

autoai_libs.transformers.exportable.NumImputer()

Este método es un derivador para el imputador numérico.

Uso:

autoai_libs.transformers.exportable.NumImputer(strategy, missing_values, activate_flag=True)
Opción Descripción
strategy num_imp_strategy: string, opcional (default = "mean "). La estrategia de imputación:
-Si es "media", sustituya los valores perdidos utilizando la media a lo largo del eje.
-Si es "mediana", sustituya los valores perdidos utilizando la mediana a lo largo del eje.
-Si es "most_frecuente", sustituya los valores perdidos utilizando el valor más frecuente a lo largo del eje.
missing_values entero, o “NaN”, opcional (valor predeterminado=”NaN”). El marcador de los valores perdidos. Todas las apariciones de missing_values se imputan
Para valores perdidos codificados como np.nan, utilice el valor de cadena “NaN”
activate_flag: bandera que indica que este transformador está activo. Si False, transform(X) genera la matriz X de numpy de entrada sin modificar.

autoai_libs.transformers.exportable.OptStandardScaler()

Este parámetro es un derivador para el escalado de variables numéricas. Actualmente utiliza sklearn StandardScaler internamente.

Uso:

autoai_libs.transformers.exportable.OptStandardScaler(use_scaler_flag=True, num_scaler_copy=True, num_scaler_with_mean=True, num_scaler_with_std=True)
Opción Descripción
num_scaler_copy booleano, opcional, valor predeterminado True. Si es False, intente evitar una copia y, en su lugar, realice el escalado en el sitio. No se garantiza que esta acción funcione siempre. Con in situ, por ejemplo, si los datos no son una matriz NumPy o una matriz CSR scipy.sparse , es posible que se devuelva una copia.
num_scaler_with_mean booleano, True de forma predeterminada. Si es True, centra los datos antes del escalado. Se genera una excepción cuando se intenta en matrices dispersas porque centrarlas implica crear una matriz densa, que en casos de uso comunes es probable que sea demasiado grande para caber en la memoria.
num_scaler_with_std booleano, True de forma predeterminada. Si es True, escala los datos a la variación de unidad (o de forma equivalente, desviación estándar de unidad).
use_scaler_flag Booleano, distintivo que indica que este transformador está activo. Si False, transform(X) genera la matriz X de numpy de entrada sin modificar. El valor predeterminado es True.

autoai_libs.transformers.exportable.NumpyPermuteArray()

Reorganiza columnas o filas de una matriz numpy basándose en una lista de índices.

Uso:

autoai_libs.transformers.exportable.NumpyPermuteArray(permutation_indices=None, axis=None)
Opción Descripción
permutation_indices lista de índices basados en qué columnas se reordenan
axis 0 permute a lo largo de las columnas. 1 permute a lo largo de las filas.

Transformación de características

Estos métodos se aplican a las transformaciones de características que se describen en Detalles de implementación de AutoAI.

autoai_libs.cognito.transforms.transform_utils.TA1(fun, name=None, datatypes=None, feat_constraints=None, tgraph=None, apply_all=True, col_names=None, col_dtypes=None)

Para las funciones sin estado unarias, como cuadrado o registro, utilice TA1.

Uso:

autoai_libs.cognito.transforms.transform_utils.TA1(fun, name=None, datatypes=None, feat_constraints=None, tgraph=None, apply_all=True, col_names=None, col_dtypes=None)
Opción Descripción
fun el puntero de función
name un nombre de serie que identifica de forma exclusiva este transformador de otros
datatypes una lista de tipos de datos que son una entrada válida para la función de transformador (numérico, flotante, int, etc.)
feat_constraints todas las restricciones, que debe satisfacer una columna para que se considere una entrada válida para esta transformación
tgraph el objeto tgraph debe ser el TGraph inicial () . Este parámetro es opcional y puede pasar Ninguno, pero esto puede dar como resultado que no se detecten algunas ineficiencias debido a la falta de almacenamiento en memoria caché.
apply_all utilice solo applyAll = True. Significa que el transformador enumera todas las características (o conjuntos de características) que coinciden con los criterios especificados y aplica la función proporcionada a cada uno.
col_names nombres de las columnas de características de una lista
col_dtypes lista de los tipos de datos de las columnas de características

autoai_libs.cognito.transforms.transform_utils.TA2()

Para funciones binarias sin estado, como sum o product, utilice TA2.

Uso:

autoai_libs.cognito.transforms.transform_utils.TA2(fun, name, datatypes1, feat_constraints1, datatypes2, feat_constraints2, tgraph=None, apply_all=True, col_names=None, col_dtypes=None)
Opción Descripción
fun el puntero de función
name: un nombre de serie que identifica de forma exclusiva este transformador de otros
datatypes1 una lista de tipos de datos, cualquiera de los cuales son entradas válidas (primer parámetro) para la función de transformador (numérico, flotante, int, etc.)
feat_constraints1 todas las restricciones, que debe satisfacer una columna para que se considere una entrada válida (primer parámetro) para esta transformación
datatypes2 una lista de tipos de datos que son entradas válidas (segundo parámetro) para la función de transformador (numérico, flotante, int, etc.)
feat_constraints2 todas las restricciones, que debe satisfacer una columna para que se considere una entrada válida (segundo parámetro) para esta transformación
tgraph el objeto tgraph debe ser el TGraph de invocación () . Tenga en cuenta que este parámetro es opcional y que puede pasar Ninguno, pero eso da como resultado algunas ineficiencias que faltan debido a la falta de almacenamiento en memoria caché
apply_all utilice solo applyAll = True. Significa que el transformador enumera todas las características (o conjuntos de características) que coinciden con los criterios especificados y aplica la función proporcionada a cada uno.
col_names nombres de las columnas de características de una lista
col_dtypes lista de los tipos de datos de las columnas de características

autoai_libs.cognito.transforms.transform_utils.TB1()

Para transformaciones unarias basadas en estado (con ajuste/transformación), por ejemplo el recuento frecuente.

Uso:

autoai_libs.cognito.transforms.transform_utils.TB1(tans_class, name, datatypes, feat_constraints, tgraph=None, apply_all=True, col_names=None, col_dtypes=None)
Opción Descripción
tans_class una clase que implementa fit( ) y transform( ) de acuerdo con la definición de función de transformación
name un nombre de serie que identifica de forma exclusiva este transformador de otros
datatypes lista de tipos de datos que son una entrada válida para la función de transformador (numérico, flotante, int, etc.)
feat_constraints todas las restricciones, que debe satisfacer una columna para que se considere una entrada válida para esta transformación
tgraph el objeto tgraph debe ser el TGraph de invocación () . Tenga en cuenta que esto es opcional y que puede pasar Ninguno, pero eso da como resultado algunas ineficiencias que faltan debido a la falta de almacenamiento en memoria caché
apply_all utilice solo applyAll = True. Significa que el transformador enumera todas las características (o conjuntos de características) que coinciden con los criterios especificados y aplica la función proporcionada a cada uno.
col_names nombres de las columnas de características de una lista.
col_dtypes lista de los tipos de datos de las columnas de características.

autoai_libs.cognito.transforms.transform_utils.TB2()

Para utilizar transformaciones binarias basadas en estado (con fit/transform), por ejemplo group-by.

Uso:

autoai_libs.cognito.transforms.transform_utils.TB2(tans_class, name, datatypes1, feat_constraints1, datatypes2, feat_constraints2, tgraph=None, apply_all=True)
Opción Descripción
tans_class una clase que implementa fit( ) y transform( ) según la definición de la función de transformación
name un nombre de serie que identifica de forma exclusiva este transformador de otros
datatypes1 una lista de tipos de datos que son entradas válidas (primer parámetro) para la función de transformador (numérico, flotante, int, etc.)
feat_constraints1 todas las restricciones, que debe satisfacer una columna para que se considere una entrada válida (primer parámetro) para esta transformación
datatypes2 una lista de tipos de datos que son entradas válidas (segundo parámetro) para la función de transformador (numérico, flotante, int, etc.)
feat_constraints2 todas las restricciones, que debe satisfacer una columna para que se considere una entrada válida (segundo parámetro) para esta transformación
tgraph el objeto tgraph debe ser el TGraph de invocación () . Este parámetro es opcional y puede pasar Ninguno, pero eso da como resultado algunas ineficiencias que faltan debido a la falta de almacenamiento en memoria caché
apply_all utilice solo applyAll = True. Significa que el transformador enumera todas las características (o conjuntos de características) que coinciden con los criterios especificados y aplica la función proporcionada a cada uno.

autoai_libs.cognito.transforms.transform_utils.TAM()

Para una transformación que se aplique a nivel de datos, como PCA, utilice TAM.

Uso:

autoai_libs.cognito.transforms.transform_utils.TAM(tans_class, name, tgraph=None, apply_all=True, col_names=None, col_dtypes=None)
Opción Descripción
tans_class una clase que implementa fit( ) y transform( ) de acuerdo con la definición de función de transformación
name un nombre de serie que identifica de forma exclusiva este transformador de otros
tgraph el objeto tgraph debe ser el TGraph de invocación () . Este parámetro es opcional y puede pasar Ninguno, pero eso da como resultado algunas ineficiencias que faltan debido a la falta de almacenamiento en memoria caché
apply_all utilice solo applyAll = True. Significa que el transformador enumera todas las características (o conjuntos de características) que coinciden con los criterios especificados y aplica la función proporcionada a cada uno.
col_names nombres de las columnas de características de una lista
col_dtypes lista de los tipos de datos de las columnas de características

autoai_libs.cognito.transforms.transform_utils.TGen()

TGen es un derivador general y se puede utilizar para la mayoría de las funciones (aunque podría no ser más eficiente).

Uso:

autoai_libs.cognito.transforms.transform_utils.TGen(fun, name, arg_count, datatypes_list, feat_constraints_list, tgraph=None, apply_all=True, col_names=None, col_dtypes=None)
Opción Descripción
fun el puntero de función
name un nombre de serie que identifica de forma exclusiva este transformador de otros
arg_count número de entradas a la función, en este ejemplo es 1, para binario, es 2, y así sucesivamente
datatypes_list una lista de listas de arg_count que corresponden a los tipos de datos de entrada aceptables para cada parámetro. En el ejemplo anterior, desde `arg_count=1``, el resultado es una lista dentro de la lista externa y contiene un único tipo denominado 'numeric'. En otro caso, podría ser un caso específico 'int' o incluso más específico 'int64'.
feat_constraints_list una lista de listas arg_count que corresponden a algunas restricciones que se pueden imponer en la selección de las características de entrada
tgraph el objeto tgraph debe ser el TGraph de invocación () . Tenga en cuenta que este parámetro es opcional y que puede pasar Ninguno, pero eso da como resultado algunas ineficiencias que faltan debido a la falta de almacenamiento en memoria caché
apply_all utilice solo applyAll = True. Significa que el transformador enumera todas las características (o conjuntos de características) que coinciden con los criterios especificados y aplica la función proporcionada a cada uno.
col_names nombres de las columnas de características de una lista
col_dtypes lista de los tipos de datos de las columnas de características

autoai_libs.cognito.transforms.transform_utils.FS1()

Selección de características, tipo 1 (mediante la correlación por pairwise entre cada característica y destino).

Uso:

autoai_libs.cognito.transforms.transform_utils.FS1(cols_ids_must_keep, additional_col_count_to_keep, ptype)
Opción Descripción
cols_ids_must_keep número de serie de las columnas que se deben conservar independientemente de la importancia de sus características
additional_col_count_to_keep número de columnas que se deben conservar
ptype clasificación o regresión

autoai_libs.cognito.transforms.transform_utils.FS2()

Selección de características, tipo 2.

Uso:

autoai_libs.cognito.transforms.transform_utils.FS2(cols_ids_must_keep, additional_col_count_to_keep, ptype, eval_algo)
Opción Descripción
cols_ids_must_keep número de serie de las columnas que se deben conservar independientemente de la importancia de sus características
additional_col_count_to_keep número de columnas que se deben conservar
ptype clasificación o regresión

Las funciones autoai-ts-libs

La combinación de transformadores y estimadores se diseñan y eligen para cada conducto mediante el sistema AutoAI de serie temporal. Cambiar los transformadores o los estimadores en el cuaderno de interconexión generado puede causar resultados inesperados o incluso un error. No le recomendamos que cambie el cuaderno para las interconexiones generadas, por lo que actualmente no ofrecemos la especificación de las funciones para la biblioteca autoai-ts-libs .

Más información

Selección de un modelo de AutoAI

Tema padre: Guardar un cuaderno generado de AutoAI