Aprendizaje automático con Python

PythonPythonBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

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.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/DataScienceandMachineLearningGroup(["Data Science and Machine Learning"]) python/DataScienceandMachineLearningGroup -.-> python/machine_learning("Machine Learning") subgraph Lab Skills python/machine_learning -.-> lab-271572{{"Aprendizaje automático con Python"}} end

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.