Instructions to use openlionai/magnitool with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Keras
How to use openlionai/magnitool with Keras:
# Available backend options are: "jax", "torch", "tensorflow". import os os.environ["KERAS_BACKEND"] = "jax" import keras model = keras.saving.load_model("hf://openlionai/magnitool") - Notebooks
- Google Colab
- Kaggle
| license: cc-by-nc-sa-4.0 | |
| pipeline_tag: tabular-regression | |
| # 🌎 Red Neuronal Sísmica de y para Chile (2021 - 2026) | |
| Este repositorio contiene un modelo de Inteligencia Artificial desarrollado en Python utilizando **TensorFlow (Keras)** enfocado en predecir la **Magnitud** (Escala Richter) de eventos sísmicos en todo el territorio chileno, basándose exclusivamente en coordenadas geográficas y profundidad. | |
| El modelo fue entrenado utilizando un dataset de **5.800 sismos** extraídos directamente de los servicios del **USGS** correspondientes a los últimos 6 años de actividad tectónica en Chile (enero 2020 - junio 2026). | |
| --- | |
| ## 📊 Arquitectura y Rendimiento del Modelo | |
| El modelo consiste en una Red Neuronal Densa (Sequential) optimizada para regresión: | |
| * **Capa de Entrada:** Recibe la Latitud, Longitud y Profundidad (escaladas). | |
| * **Capas Ocultas:** 3 capas densas (64, 32, 16 neuronas) con funciones de activación `ReLU`. | |
| * **Capa de Salida:** 1 neurona lineal para la estimación de la Magnitud exacta. | |
| ### Curva de Aprendizaje y Precisión | |
| El entrenamiento fue optimizado mediante **Early Stopping**, deteniéndose automáticamente al alcanzar el punto de máxima generalización para evitar el sobreajuste del modelo. | |
| * **Métrica de Error (MAE):** `~0.22` | |
| * **Significado:** En promedio, la IA predice la magnitud de un sismo con un margen de error de apenas $\pm 0.2$ puntos en la escala de Richter. | |
|  | |
| --- | |
| ## 🗂️ Archivos en este Repositorio | |
| Para que el sistema de predicción funcione correctamente, se necesitan dos componentes fundamentales incluidos aquí: | |
| 1. `magnitool.keras`: El cerebro de la red neuronal con los pesos y conexiones óptimas entrenadas. | |
| 2. `escalador.pkl`: El objeto `StandardScaler` de Scikit-Learn que normaliza las entradas del usuario antes de pasarlas a la IA (crucial debido a las grandes diferencias numéricas entre coordenadas y profundidades de hasta 300 km en zonas como Socaire o Calama). | |
| --- | |
| ## 🚀 Cómo usar este Modelo en Python | |
| Puedes descargar y ejecutar este modelo dinámicamente desde el Hub utilizando el siguiente script: | |
| ```python | |
| import numpy as np | |
| import tensorflow as tf | |
| import joblib | |
| from huggingface_hub import hf_hub_download | |
| # 1. Descargar componentes desde Hugging Face | |
| repo_id = "openlionai/magnitool" | |
| ruta_escalador = hf_hub_download(repo_id=repo_id, filename="escalador.pkl") | |
| ruta_modelo = hf_hub_download(repo_id=repo_id, filename="modelo_chile.keras") | |
| escalador = joblib.load(ruta_escalador) | |
| modelo = tf.keras.models.load_model(ruta_modelo) | |
| ``` | |
| Puedes calcular la magnitud de un sismo con el siguiente comando: | |
| ```python | |
| # Formato: [Latitud, Longitud, Profundidad_km] | |
| # Ejemplo: Un sismo en el mar frente a la costa de la zona central | |
| datos = np.array([[-33.0, -72.0, 15.0]]) | |
| sismo_escalado = escalador.transform(datos) | |
| prediccion_magnitud = modelo_chile.predict(sismo_escalado) | |
| print("\n==============================================") | |
| print(f"📍 Datos del Sismo-> Lat: {datos[0][0]}, Lon: {datos[0][1]}, Prof: {datos[0][2]} km") | |
| print(f"🔮 La IA calcula que su magnitud será de: {prediccion_magnitud[0][0]:.2f}") | |
| print("==============================================") |