Machine Learning com Python

PythonBeginner
Pratique Agora

Introdução

Neste laboratório, você será transportado para uma cidade subaquática futurista, onde assumirá o papel de um caçador de tesouros em águas profundas. Sua missão é usar suas habilidades de machine learning em Python para analisar dados subaquáticos e localizar tesouros escondidos. A cidade subaquática está repleta de artefatos misteriosos e tesouros valiosos esperando para serem descobertos. Seu objetivo é utilizar seu conhecimento de machine learning em Python para desvendar os segredos das profundezas do oceano.

Pré-processamento e Exploração de Dados

Nesta etapa, você começará carregando e pré-processando os dados subaquáticos coletados de vários sensores. Você explorará o conjunto de dados para obter insights sobre o ambiente subaquático e identificar padrões usando as bibliotecas pandas e numpy do Python.

Em ~/project/data_preprocessing.py:

## data_preprocessing.py

import pandas as pd
import numpy as np

## Carrega o conjunto de dados subaquáticos em um DataFrame pandas
underwater_data = pd.read_csv('/home/labex/project/underwater_data.csv')

## Realiza o pré-processamento e exploração de dados
print(underwater_data)

Execute o script:

python data_preprocessing.py

As informações abaixo devem ser exibidas no seu 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

Treinamento e Avaliação do Modelo

Nesta etapa, você utilizará a biblioteca scikit-learn do Python para construir modelos de machine learning para prever as localizações de potenciais tesouros subaquáticos com base nos dados pré-processados. Você treinará e avaliará o desempenho de vários algoritmos de machine learning, como árvores de decisão, florestas aleatórias e máquinas de vetores de suporte (support vector machines).

Em ~/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

## Lê os dados do arquivo "underwater_data.csv"
data = pd.read_csv("/home/labex/project/underwater_data.csv")

## Converte os dados em um array NumPy
data = np.array(data)

## Extrai a matriz de características X e a variável alvo y
X = data[:, :-1]  ## Usa todas as linhas, exceto a última coluna, como a matriz de características X
y = data[:, -1]   ## Usa todas as linhas, a última coluna, como a variável alvo y

## Divide os dados pré-processados em conjuntos de treinamento e teste
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

## Inicializa e treina um regressor de floresta aleatória
model = RandomForestRegressor(n_estimators=100, random_state=42)
model.fit(X_train, y_train)

## Avalia o desempenho do modelo
predictions = model.predict(X_test)
mse = mean_squared_error(y_test, predictions)
print(f"Mean Squared Error: {mse}")

Execute o script:

python model_training.py

As informações abaixo devem ser exibidas no seu terminal:

Mean Squared Error: 1.8009639999999907

Resumo

Neste laboratório, projetamos uma experiência prática para aspirantes a caçadores de tesouros aplicarem técnicas de machine learning em Python na futurística cidade subaquática. Ao pré-processar e explorar dados subaquáticos e treinar modelos de machine learning, você pode descobrir tesouros escondidos e obter insights valiosos sobre a aplicação de machine learning em cenários do mundo real.