Introducción a la IA y el AA en BigQuery

.

BigQuery ML te permite crear y ejecutar modelos de aprendizaje automático (ML) mediante consultas de GoogleSQL o la Google Cloud consola. Los modelos de BigQuery ML se almacenan en conjuntos de datos de BigQuery, de forma similar a las tablas y las vistas. BigQuery ML también te permite acceder a modelos de Vertex AI y a APIs de IA de Cloud para realizar tareas de inteligencia artificial (IA), como generar texto o traducir automáticamente. Gemini para Google Cloud también ofrece asistencia basada en IA para las tareas de BigQuery. Para ver una lista de las funciones basadas en IA de BigQuery, consulta el resumen de Gemini en BigQuery.

Normalmente, para aplicar aprendizaje automático o IA a grandes conjuntos de datos, se necesita una programación exhaustiva y conocimientos sobre frameworks de aprendizaje automático. Estos requisitos restringen el desarrollo de soluciones a un grupo muy reducido de personas de cada empresa y excluyen a los analistas de datos que entienden los datos, pero tienen conocimientos limitados de aprendizaje automático y experiencia en programación. Sin embargo, con BigQuery ML, los profesionales de SQL pueden usar las herramientas y las habilidades de SQL que ya existen para crear y evaluar modelos, así como para generar resultados a partir de LLMs y APIs de Cloud AI.

Puedes usar las funciones de BigQuery ML de las siguientes formas:

Ventajas de BigQuery ML

BigQuery ML ofrece varias ventajas con respecto a otros enfoques para usar el aprendizaje automático o la IA con un almacén de datos basado en la nube:

  • BigQuery ML democratiza el uso del aprendizaje automático y la IA al permitir que los analistas de datos, los principales usuarios del almacén de datos, creen y ejecuten modelos con las herramientas de inteligencia empresarial y las hojas de cálculo disponibles. Además, estas analíticas pueden guiar la toma de decisiones empresariales en toda la empresa.
  • No es necesario programar una solución de aprendizaje automático o IA con Python o Java. Puedes entrenar modelos y acceder a recursos de IA mediante SQL, un lenguaje que conocen los analistas de datos.
  • BigQuery ML aumenta la velocidad de desarrollo e innovación de los modelos, ya que elimina la necesidad de mover datos del almacén de datos. En su lugar, BigQuery ML aplica el aprendizaje automático a los datos, lo que ofrece las siguientes ventajas:

    • Menor complejidad porque se necesitan menos herramientas.
    • Mayor velocidad de producción, ya que no es necesario mover ni dar formato a grandes cantidades de datos para los frameworks de aprendizaje automático basados en Python con el fin de entrenar un modelo en BigQuery.

    Para obtener más información, consulta el vídeo Cómo acelerar el desarrollo del aprendizaje automático con BigQuery ML.

Si usas la configuración predeterminada de las instrucciones CREATE MODEL y las funciones de inferencia, puedes crear y usar modelos de BigQuery ML aunque no tengas muchos conocimientos sobre aprendizaje automático. Sin embargo, tener conocimientos básicos sobre el ciclo de vida del desarrollo de ML, como la ingeniería de funciones y el entrenamiento de modelos, te ayuda a optimizar tanto tus datos como tu modelo para obtener mejores resultados. Te recomendamos que utilices los siguientes recursos para familiarizarte con las técnicas y los procesos de aprendizaje automático:

IA generativa y modelos preentrenados

Puedes usar las funciones de BigQuery ML para llevar a cabo una serie de tareas de IA generativa.

Modelos admitidos

Un modelo de BigQuery ML representa lo que un sistema de aprendizaje automático ha aprendido de los datos de entrenamiento. En las siguientes secciones se describen los tipos de modelos que admite BigQuery ML. Para obtener más información sobre cómo crear asignaciones de reservas para los distintos tipos de modelos, consulta el artículo Asignar ranuras a cargas de trabajo de BigQuery ML.

Modelos entrenados internamente

Los siguientes modelos están integrados en BigQuery ML:

  • El análisis de contribución sirve para determinar el efecto de una o varias dimensiones en el valor de una métrica determinada. Por ejemplo, puede ver el efecto de la ubicación de la tienda y la fecha de venta en los ingresos de la tienda. Para obtener más información, consulta el artículo Introducción al análisis de contribución.
  • La regresión lineal se usa para predecir el valor de una métrica numérica de datos nuevos mediante un modelo entrenado con datos remotos similares. Las etiquetas son valores reales, lo que significa que no pueden ser infinito positivo, infinito negativo ni NaN (Not a Number).
  • La regresión logística sirve para clasificar dos o más valores posibles; por ejemplo, determinar si un valor de entrada es low-value, medium-value o high-value. Las etiquetas pueden tener hasta 50 valores únicos.
  • Agrupamiento en clúster de k-medias se usa para segmentar datos. Por ejemplo, este modelo identifica segmentos de clientes. K-means es una técnica de aprendizaje no supervisado, por lo que el entrenamiento del modelo no requiere etiquetas ni datos divididos para el entrenamiento o la evaluación.
  • La factorización de matriz se usa para crear sistemas de recomendación de productos. Puedes crear recomendaciones de productos a partir del historial de comportamiento de los clientes, las transacciones y las valoraciones de los productos, y luego usar esas recomendaciones para ofrecer experiencias de cliente personalizadas.
  • El análisis de componentes principales (ACP) es el proceso de calcular los componentes principales y usarlos para cambiar la base de los datos. Se suele usar para reducir la dimensionalidad proyectando cada punto de datos solo en los primeros componentes principales para obtener datos de menor dimensión y, al mismo tiempo, conservar la mayor parte posible de la variación de los datos.
  • Series temporales se usa para hacer previsiones de series temporales y detectar anomalías. Los modelos de serie temporal ARIMA_PLUS y ARIMA_PLUS_XREG ofrecen varias opciones de ajuste y gestionan automáticamente las anomalías, la estacionalidad y los festivos.

    Si no quieres gestionar tu propio modelo de previsión de series temporales, puedes usar la función AI.FORECAST con el modelo de series temporales TimesFM (vista previa) integrado de BigQuery ML para hacer previsiones.

Puede hacer una prueba de las instrucciones CREATE MODEL de los modelos entrenados internamente para obtener una estimación de la cantidad de datos que procesarán si las ejecuta.

Modelos entrenados de forma externa

Los siguientes modelos son externos a BigQuery ML y se entrenan en Vertex AI:

  • Red neuronal profunda (DNN): se usa para crear redes neuronales profundas basadas en TensorFlow para modelos de clasificación y regresión.
  • Wide & Deep es útil para problemas genéricos de regresión y clasificación a gran escala con entradas dispersas (características categóricas con un gran número de valores de características posibles), como sistemas de recomendación, búsqueda y problemas de clasificación.
  • Autoencoder se usa para crear modelos basados en TensorFlow con la ayuda de representaciones de datos dispersos. Puedes usar los modelos de BigQuery ML para tareas como la detección de anomalías no supervisada y la reducción de la dimensionalidad no lineal.
  • Árboles de refuerzo: se usa para crear modelos de clasificación y regresión basados en XGBoost.
  • Bosque aleatorio se usa para construir varios árboles de decisión de métodos de aprendizaje para clasificación, regresión y otras tareas durante el entrenamiento.
  • AutoML es un servicio de aprendizaje automático supervisado que crea y despliega modelos de clasificación y regresión en datos tabulares a gran velocidad y escala.

No puedes hacer una prueba de las instrucciones CREATE MODEL de los modelos entrenados externamente para obtener una estimación de la cantidad de datos que procesarán si las ejecutas.

Modelos remotos

Puedes crear modelos remotos en BigQuery que usen modelos desplegados en Vertex AI. Para hacer referencia al modelo desplegado, especifica el endpoint HTTPS del modelo en la instrucción CREATE MODEL del modelo remoto.

Las instrucciones CREATE MODEL de los modelos remotos no procesan ningún byte y no generan cargos de BigQuery.

Modelos importados

BigQuery ML te permite importar modelos personalizados que se han entrenado fuera de BigQuery y, después, hacer predicciones en BigQuery. Puedes importar los siguientes modelos a BigQuery desde Cloud Storage:

  • Open Neural Network Exchange (ONNX) es un formato estándar abierto para representar modelos de aprendizaje automático. Con ONNX, puedes hacer que los modelos entrenados con frameworks de aprendizaje automático populares, como PyTorch y scikit-learn, estén disponibles en BigQuery ML.
  • TensorFlow es una biblioteca de software de código abierto gratuita para el aprendizaje automático y la inteligencia artificial. Puedes usar TensorFlow en una gran variedad de tareas, pero se centra especialmente en el entrenamiento y la inferencia de redes neuronales profundas. Puedes cargar modelos de TensorFlow entrenados previamente en BigQuery como modelos de BigQuery ML y, a continuación, hacer predicciones en BigQuery ML.
  • TensorFlow Lite es una versión ligera de TensorFlow que se puede implementar en dispositivos móviles, microcontroladores y otros dispositivos periféricos. TensorFlow optimiza los modelos de TensorFlow para reducir su tamaño y acelerar la inferencia.
  • XGBoost es una biblioteca de refuerzo de gradiente distribuida y optimizada que se ha diseñado para ser muy eficiente, flexible y portátil. Implementa algoritmos de aprendizaje automático en el framework Gradient Boosting.

Las instrucciones CREATE MODEL de los modelos importados no procesan ningún byte y no generan cargos de BigQuery.

En BigQuery ML, puedes usar un modelo con datos de varios conjuntos de datos de BigQuery para el entrenamiento y la predicción.

Guía de selección de modelos

Este árbol de decisiones asigna modelos de aprendizaje automático a las acciones que quieres llevar a cabo. Descarga el árbol de decisión de selección de modelo.

BigQuery ML y Vertex AI

BigQuery ML se integra con Vertex AI, que es la plataforma integral de IA y aprendizaje automático en Google Cloud. Puedes registrar tus modelos de BigQuery ML en Model Registry para desplegarlos en puntos finales y hacer predicciones online. Para obtener más información, consulta lo siguiente:

BigQuery ML y Colab Enterprise

Ahora puedes usar cuadernos de Colab Enterprise para realizar flujos de trabajo de aprendizaje automático en BigQuery. Los cuadernos te permiten usar SQL, Python y otras bibliotecas y lenguajes populares para llevar a cabo tus tareas de aprendizaje automático. Para obtener más información, consulta el artículo Crear cuadernos.

Regiones disponibles

BigQuery ML se admite en las mismas regiones que BigQuery. Para obtener más información, consulta las ubicaciones de BigQuery ML.

Precios

Se te cobra por los recursos de computación que usas para entrenar modelos y para ejecutar consultas en ellos. El tipo de modelo que crees influye en el lugar donde se entrena el modelo y en los precios que se aplican a esa operación. Las consultas en modelos siempre se ejecutan en BigQuery y usan los precios de computación de BigQuery. Como los modelos remotos hacen llamadas a modelos de Vertex AI, las consultas a modelos remotos también generan cargos de Vertex AI.

Se te cobra por el almacenamiento que usan los modelos entrenados según los precios de almacenamiento de BigQuery.

Para obtener más información, consulta los precios de BigQuery ML.

Cuotas

Además de los límites específicos de BigQuery ML, las consultas que usan funciones y CREATE MODEL instrucciones de BigQuery ML están sujetas a las cuotas y los límites de las tareas de consulta de BigQuery.

Limitaciones

Siguientes pasos