Introducción
En este laboratorio, serás transportado a una ciudad submarina futurista donde asumirás el papel de un cazador de tesoros submarinos. Tu misión es utilizar habilidades de aprendizaje automático de Python para analizar datos submarinos y localizar tesoros escondidos. La ciudad submarina está llena de artefactos misteriosos y tesoros valiosos esperando ser descubiertos. Tu objetivo es utilizar tus conocimientos de aprendizaje automático de Python para desentrañar los secretos de las profundidades oceánicas.
Preprocesamiento y exploración de datos
En este paso, comenzarás cargando y preprocesando los datos submarinos recolectados por varios sensores. Explorarás el conjunto de datos para obtener información sobre el entorno submarino e identificar patrones utilizando las bibliotecas de pandas y numpy de Python.
En ~/project/data_preprocessing.py:
## data_preprocessing.py
import pandas as pd
import numpy as np
## Carga el conjunto de datos submarino en un DataFrame de pandas
underwater_data = pd.read_csv('/home/labex/project/underwater_data.csv')
## Realiza el preprocesamiento y la exploración de datos
print(underwater_data)
Ejecuta el script:
python data_preprocessing.py
La información siguiente debe mostrarse en tu terminal:
sensor1 sensor2 sensor3 sensor4
0 1.2 3.4 5.6 2.1
1 2.3 4.5 6.7 3.2
2 3.4 5.6 7.8 4.3
Entrenamiento y evaluación del modelo
En este paso, utilizarás la biblioteca de scikit-learn de Python para construir modelos de aprendizaje automático para predecir las ubicaciones de posibles tesoros submarinos basados en los datos preprocesados. Entrenarás y evaluarás el rendimiento de varios algoritmos de aprendizaje automático, como árboles de decisión, bosques aleatorios y máquinas de vectores de soporte.
En ~/project/model_training.py:
## model_training.py
import numpy as np
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestRegressor
from sklearn.metrics import mean_squared_error
## Lee los datos del archivo "underwater_data.csv"
data = pd.read_csv("/home/labex/project/underwater_data.csv")
## Convierte los datos a una matriz de NumPy
data = np.array(data)
## Extrae la matriz de características X y la variable objetivo y
X = data[:, :-1] ## Utiliza todas las filas, excepto la última columna como la matriz de características X
y = data[:, -1] ## Utiliza todas las filas, la última columna como la variable objetivo y
## Divide los datos preprocesados en conjuntos de entrenamiento y prueba
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
## Inicializa y entrena un regresor de bosque aleatorio
model = RandomForestRegressor(n_estimators=100, random_state=42)
model.fit(X_train, y_train)
## Evalúa el rendimiento del modelo
predictions = model.predict(X_test)
mse = mean_squared_error(y_test, predictions)
print(f"Error cuadrático medio: {mse}")
Ejecuta el script:
python model_training.py
La información siguiente debe mostrarse en tu terminal:
Error cuadrático medio: 1.8009639999999907
Resumen
En este laboratorio, diseñamos una experiencia práctica para los aspirantes a cazadores de tesoros para aplicar técnicas de aprendizaje automático de Python en la ciudad submarina futurista. Al preprocesar y explorar datos submarinos y entrenar modelos de aprendizaje automático, puedes descubrir tesoros escondidos y obtener valiosos conocimientos sobre la aplicación del aprendizaje automático en escenarios del mundo real.



