Introducción a la IA y el AA en BigQuery
BigQuery ML te permite crear y ejecutar modelos de aprendizaje automático (AA) mediante consultas de Google SQL. Los modelos de BigQuery ML se almacenan en conjuntos de datos de BigQuery, de manera similar a las tablas y vistas. BigQuery ML también te permite acceder a modelos de Vertex AI y APIs de Cloud AI para realizar tareas de inteligencia artificial (IA), como la generación de texto o la traducción automática. Gemini para Google Cloud también proporciona asistencia con tecnología de IA para las tareas de BigQuery. Para ver una lista de las funciones con tecnología de IA en BigQuery, consulta la descripción general de Gemini en BigQuery.
Por lo general, realizar el AA o la IA en conjuntos de datos grandes requiere una programación extensa y conocimiento de los marcos de trabajo de AA. Estos requisitos restringen el desarrollo de soluciones a un grupo muy pequeño de personas dentro de cada empresa y excluyen a los analistas de datos que comprenden los datos, pero tienen conocimiento limitado sobre aprendizaje automático y poca experiencia en programación. Sin embargo, con BigQuery ML, los profesionales de SQL pueden usar herramientas y habilidades de SQL existentes para compilar y evaluar modelos, y generar resultados a partir de LLM y API de Cloud AI.
Puedes trabajar con las capacidades de BigQuery ML si usas lo siguiente:
- La consola de Google Cloud
- La herramienta de línea de comandos de bq
- La API de REST de BigQuery
- Notebooks integrados de Colab en BigQuery
- Herramientas externas como un notebook Jupyter o la plataforma de inteligencia comercial
Ventajas de BigQuery ML
BigQuery ML ofrece varias ventajas sobre otros enfoques en relación con el uso de AA o IA con almacenes de datos basados en la nube:
- BigQuery ML democratiza el uso del AA y la IA gracias a que permite a los analistas de datos y a los usuarios principales de almacenes de datos compilar y ejecutar modelos mediante hojas de cálculo y herramientas de inteligencia comercial existentes. Las estadísticas predictivas pueden guiar la toma de decisiones empresariales en toda la organización.
- No necesita programar una solución de AA o IA con Python o Java. Entrenas modelos y accedes a recursos de IA mediante SQL, un lenguaje familiar para los analistas de datos.
BigQuery ML aumenta la velocidad de innovación y desarrollo del modelo, ya que quita la necesidad de exportar datos desde el almacén de datos. En cambio, BigQuery ML lleva el AA a los datos, lo que ofrece las siguientes ventajas:
- Menor complejidad porque se requieren menos herramientas.
- Mayor velocidad de producción, ya que no es necesario mover y formatear grandes cantidades de datos para frameworks de AA basados en Python a fin de entrenar un modelo en BigQuery.
Para obtener más información, mira el video Cómo acelerar el desarrollo del aprendizaje automático con BigQuery ML.
IA generativa y modelos previamente entrenados
Puedes usar modelos remotos para acceder a los modelos de Vertex AI y las APIs de Cloud AI desde BigQuery ML para realizar las siguientes tareas:
- Generación de texto a través de texto de Vertex AI o modelos multimodales.
- Incorporación de texto o multimodal mediante modelos de incorporación de Vertex AI.
- Procesamiento de lenguaje natural mediante la API de Cloud Natural Language.
- Traducción automática mediante la API de Cloud Translation.
- Procesamiento de documentos a través de la API de Document AI.
- Transcripción de audio a través de la API de Speech-to-Text.
- Visión artificial mediante la API de Cloud Vision.
Modelos compatibles
Un modelo en BigQuery ML representa lo que un sistema de AA aprendió de los datos de entrenamiento. En las siguientes secciones, se describen los tipos de modelos que admite BigQuery ML.
Modelos entrenados de forma interna
Los siguientes modelos están integrados en BigQuery ML:
- El análisis de contribución (versión preliminar) sirve para determinar el efecto de una o más dimensiones en el valor de una métrica determinada. Por ejemplo, ver el efecto de la ubicación de la tienda y la fecha de las ventas en los ingresos de la tienda. Para obtener más información, consulta Descripción general del análisis de contribuciones.
- La regresión lineal se usa para predecir el valor de una métrica numérica para datos nuevos mediante un modelo entrenado en datos remotos similares. Las etiquetas tienen un valor real, lo que significa que no pueden ser infinito positivo o negativo, ni un NaN (no número).
- La regresión logística es para la clasificación de dos o más valores posibles, como si una entrada es
low-value
,medium-value
ohigh-value
. Las etiquetas pueden tener hasta 50 valores únicos. - El agrupamiento en clústeres de k-means se usa para la segmentación de datos. Por ejemplo, este modelo identifica segmentos de clientes. K-means es una técnica de aprendizaje no supervisada, por lo que el entrenamiento de modelos no requiere etiquetas ni datos divididos para el entrenamiento o la evaluación.
- Factorización de matrices para crear sistemas de recomendación de productos. Puedes crear recomendaciones de productos según el historial del comportamiento, las transacciones y las calificaciones de productos de los clientes y, luego, usar esas recomendaciones para que los clientes tengan experiencias personalizadas
- El Análisis de componentes principales (PCA) consiste en procesar los componentes principales y usarlos para realizar un cambio en función de los datos. Por lo general, se usa para la reducción de la dimensionalidad mediante la proyección de cada dato a los primeros componentes principales para obtener datos de menor dimensión y, al mismo tiempo, conservar la mayor variación posible de los datos.
- La serie temporal se usa para realizar previsiones de series temporales. Puedes usar esta función a fin de crear millones de modelos de serie temporal y usarlos para la previsión. El modelo maneja las anomalías, la temporalidad y las festividades de forma automática
No puedes realizar una prueba de validación en las declaraciones CREATE MODEL
para modelos entrenados de forma interna para obtener una estimación de la cantidad de datos que procesarán si los ejecutas.
Modelos entrenados de forma externa
Los siguientes modelos son externos a BigQuery ML y están entrenados en Vertex AI:
- La red neuronal profunda (DNN) se usa para crear redes neuronales profundas basadas en TensorFlow y destinadas a modelos de clasificación y de regresión.
- El algoritmo de amplitud y profundidad es útil para problemas de regresión y clasificación genéricos a gran escala con entradas dispersas (atributos categóricos con un número grande) de valores de atributos posibles, como los sistemas recomendadores, la búsqueda y los problemas de clasificación.
- El Autoencoder se usa para crear modelos basados en TensorFlow que admiten representaciones de datos dispersos. Puedes usar los modelos en BigQuery ML para tareas como la detección de anomalías no supervisada y la reducción de dimensiones no lineal.
- Un árbol con boosting se usa para crear modelos de clasificación y regresión basados en XGBoost.
- Un bosque aleatorio sirve para construir á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 AA supervisado que compila y, además, implementa modelos de clasificación y regresión en datos tabulares a alta velocidad y escala.
No puedes realizar una prueba de validación en las
declaraciones CREATE MODEL
para modelos entrenados de forma externa para obtener una estimación de
la cantidad de datos que procesarán si los ejecutas.
Modelos remotos
Puedes crear
modelos remotos
en BigQuery que usen modelos implementados en Vertex AI.
Para hacer referencia al modelo implementado, especifica el
extremo HTTPS
del modelo en la declaración CREATE MODEL
del modelo remoto.
Las declaraciones CREATE MODEL
para modelos importados no procesan bytes ni generan cargos de BigQuery.
Modelos importados
BigQuery ML te permite importar modelos personalizados que se entrenan fuera de BigQuery y, luego, realizar predicciones dentro de BigQuery. Puedes importar los siguientes modelos en BigQuery desde Cloud Storage:
- Open Neural Network Exchange (ONNX) es un formato estándar abierto para representar modelos de AA. Mediante ONNX, puedes hacer que los modelos entrenados con frameworks de AA populares, como PyTorch y scikit-learn, estén disponibles en BigQuery ML.
- TensorFlow es una biblioteca de software de código abierto gratuita para la inteligencia artificial y el AA. Puedes usar TensorFlow en una variedad de tareas, pero se enfoca en particular en el entrenamiento y la inferencia de redes neuronales profundas. Puedes cargar modelos de TensorFlow entrenados con anterioridad en BigQuery como modelos de BigQuery ML y, luego, realizar predicciones en BigQuery ML.
- TensorFlow Lite es una versión básica de TensorFlow para implementar en dispositivos móviles, microcontroladores y otros dispositivos perimetrales. TensorFlow optimiza los modelos existentes de TensorFlow para reducir el tamaño del modelo y lograr una inferencia más rápida.
- XGBoost es una biblioteca de potenciación de gradiente distribuido y optimizada diseñada para ser muy eficiente, flexible y portátil. Implementa algoritmos de AA en el framework de potenciación de gradientes.
Las declaraciones CREATE MODEL
para modelos importados no procesan bytes ni 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
Descarga el árbol de decisión de la selección de modelos.
BigQuery ML y Vertex AI
BigQuery ML se integra en Vertex AI, que es la plataforma de extremo a extremo para la IA y el AA en Google Cloud. Puedes registrar tus modelos de BigQuery ML en Model Registry para implementarlos en extremos para la predicción en línea. Para obtener más información, consulta lo siguiente:
- Para obtener más información sobre cómo usar los modelos de BigQuery ML con Vertex AI, consulta Administra modelos de BigQuery ML con Vertex AI.
- Si no estás familiarizado con Vertex AI y deseas obtener más información sobre cómo se integra en BigQuery ML, consulta Vertex AI para usuarios de BigQuery.
- Mira el video Cómo simplificar los modelos de IA con Vertex AI y BigQuery ML.
BigQuery ML y Colab Enterprise
Ahora puedes usar notebooks de Colab Enterprise para realizar flujos de trabajo de AA en BigQuery. Los notebooks te permiten usar SQL, Python y otras bibliotecas y lenguajes populares para realizar tus tareas de AA. Para obtener más información, consulta Crea notebooks.
Regiones admitidas
BigQuery ML es compatible con las mismas regiones que BigQuery. Para obtener más información, consulta Ubicaciones de BigQuery ML.
Precios
Se te cobra por los recursos de procesamiento que usas para entrenar modelos y para ejecutar consultas en ellos. El tipo de modelo que creas afecta el lugar donde se entrena el modelo y los precios que se aplican a esa operación. Las consultas a los modelos siempre se ejecutan en BigQuery y usan los precios de procesamiento de BigQuery. Debido a que los modelos remotos realizan llamadas a los modelos de Vertex AI, las consultas a los 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 utilizan funciones de BigQuery ML y declaraciones CREATE MODEL
están sujetas a las cuotas y los límites de los Trabajos de consulta de BigQuery.
Limitaciones
- BigQuery ML no está disponible en la edición Standard.
- BigQuery ML no activa ranuras de ajuste de escala automático. Debes establecer una cantidad de referencia de ranuras para usar BigQuery ML con una edición de BigQuery. Esta limitación solo se aplica a los modelos entrenados de forma externa, no a los modelos entrenados de forma interna. Para obtener más información sobre los tipos de modelos, consulta Modelos compatibles.
¿Qué sigue?
- Para comenzar a usar BigQuery ML, consulta Crea modelos de aprendizaje automático en BigQuery ML.
- Para obtener más información sobre el aprendizaje automático y BigQuery ML, consulta los siguientes recursos:
- Para obtener información sobre MLOps con Model Registry, consulta Administra modelos de BigQuery ML en Vertex AI.