En este tutorial, construimos un sistema de IA de agente avanzado que maneja de forma autónoma el pronóstico de series temporales utilizando la biblioteca DARTS combinada con un modelo de cara de abrazo ligero para el razonamiento. Diseñamos al agente para operar en un ciclo de percepción -condición -acción, donde primero analiza los patrones en los datos, luego selecciona un modelo de pronóstico apropiado, genera predicciones y finalmente explica y visualiza los resultados. Al caminar a través de esta tubería, experimentamos cómo la IA agente puede reunir el modelado estadístico y el razonamiento del lenguaje natural para hacer que el pronóstico sea preciso e interpretable. Mira los códigos completos aquí.
Comenzamos instalando e importando las bibliotecas esenciales, incluidos los dardos para el pronóstico de las series de tiempo, los transformadores para razonamiento y los paquetes de soporte como pandas, numpy y matplotlib. Con estas herramientas en su lugar, configuramos la base para construir y ejecutar nuestro agente de pronóstico autónomo. Mira los códigos completos aquí.
imprimir (f “💭 pensamiento del agente: {pensamiento[:150]} … “) Si análisis[‘has_seasonality’]: self.selected_model = “Naive_Sasonal” razonal = “Estacionalidad detectada – Uso de un modelo estacional ingenuo” Elif float (análisis[‘volatility’])> 0.3: self.selected_model = “exponencial_smoothing” razon = “alta volatilidad – usando suavizado exponencial” else: self.selected_model = “lineal_regression” razon = “tendencia estable – usando regresión lineal” imprime (f “✅ decisión: {razon}”) return Genera pronosticar “” “imprimir (” \ n⚡ fase de acción “) tren, val = self.ts[:-12]self.ts[-12:]
modelo = self.models[self.selected_model]
print (f “🎯 entrenamiento {self.selected_model} …”) model.fit (trenes) self.forecast = model.Predict (horizon) if len (val)> 0: val_pred = model.Predict (len (val)) Accuracy = 100 – Mape (val, val_preed) impresión (F “📊 Validación: {Acurrente: {ACTuracio: .2f}} Generado {Horizon} -Step pronóstico “) return self.forecast defin explicar (self):” “” agente explica sus predicciones “” imprima (“\ n💬 fase de explicación”) pronostice_values = self.forecast.values (). Flatten () hist_values = self.ts.values ().[-1] – Hist_Values[-1]) / hist_values[-1]) * 100 dirección = “aumentar” si cambio> 0 más “disminuir” explicación = f “basado en mi análisis usando {self.selected_model},” \ f “predigo un {abs (cambio) :. 1f}% {dirección} en el siguiente período.” \ F “rango de pronóstico: {prevaleciente_values.min ():. 2f} a {Forecast_Values.max () :. 2f}. print (f “📝 {explicación}”) indic = f “Resumen de pronóstico: {Explicación} Explicar implicaciones:” Summary = Self.llm (indic, max_length = 120)[0][‘generated_text’]
Impresión (F “\ n🤖 Resumen del agente: {Resumen[:200]} … “) Return Explation Def Visualize (self):” “” El agente crea la visualización de su trabajo “” “imprime (” \ n📊 Generación de visualización … “) plt.figure (figSize = (14, 6)) self.ts.plot (etiqueta =” datos históricos “, lw = 2) self.forecast.plot (etiqueta = f’formes Linestyle = “-“) plt.title (‘🤖 🤖 🤖 🤖 🤖 🤖 🤖 agente de la serie temporal del tiempo’, fontSize = 16, fontWeight = “Bold”) plt.xlabel (‘date’, fontSize = 12) plt.ylabel (‘value’, fontsize = 12) plt.legend (loc = “o mejor plt.tight_layout () plt.show ()
Definimos un TimeseriesAgent que piensa con un modelo de cara de abrazo ligera y actúa con una pequeña cartera de modelos de dardos. Percibimos patrones (tendencia, volatilidad, estacionalidad), razón para elegir el mejor modelo, luego entrenar, pronosticar y validar. Finalmente, explicamos la predicción en lenguaje sencillo y visualizamos la historia versus pronóstico. Mira los códigos completos aquí.
🚨 [Recommended Read] VIPE (Video Pose Engine): una herramienta de anotación de video 3D potente y versátil para AI espacial
Creamos una función de ayuda create_sample_data () que genera datos de series de tiempo sintéticas con una tendencia clara, estacionalidad sinusoidal y ruido aleatorio. Esto nos permite simular datos mensuales realistas de 2020 a 2023 para probar y demostrar el flujo de trabajo de pronóstico del agente. Mira los códigos completos aquí.
Definimos la función principal que ejecuta la tubería AI de agente completa. Cargamos datos de series de tiempo sintéticas, dejamos que los patrones de percepción de TimeseriesAgent, la razón para seleccionar el mejor modelo, actuar por capacitación y pronóstico, explicar los resultados y finalmente visualizarlos. Esto completa la percepción autónoma, el razonamiento y el ciclo de acción de extremo a extremo.
En conclusión, vemos cómo un agente autónomo puede analizar los datos de la serie temporal, la razón sobre la selección del modelo, generar pronósticos y explicar sus predicciones en el lenguaje natural. Al combinar los dardos con Huggingface, creamos un marco compacto pero poderoso que no solo produce pronósticos precisos, sino que también comunica claramente las ideas. Completamos el ciclo con visualización, reforzando cómo la IA de agente hace que el pronóstico sea más intuitivo e interactivo.
Mira los códigos completos aquí. No dude en consultar nuestra página de GitHub para obtener tutoriales, códigos y cuadernos. Además, no dude en seguirnos en Twitter y no olvide unirse a nuestro subreddit de 100k+ ml y suscribirse a nuestro boletín. ¡Esperar! ¿Estás en Telegram? Ahora también puedes unirte a nosotros en Telegram.
Asif Razzaq es el CEO de MarktechPost Media Inc .. Como empresario e ingeniero visionario, ASIF se compromete a aprovechar el potencial de la inteligencia artificial para el bien social. Su esfuerzo más reciente es el lanzamiento de una plataforma de medios de inteligencia artificial, MarktechPost, que se destaca por su cobertura profunda de noticias de aprendizaje automático y de aprendizaje profundo que es técnicamente sólido y fácilmente comprensible por una audiencia amplia. La plataforma cuenta con más de 2 millones de vistas mensuales, ilustrando su popularidad entre el público.
🙌 Siga a MarkTechPost: agrégenos como una fuente preferida en Google.