Importar as Bibliotecas Necessárias e Carregar o Conjunto de Dados
Nesta etapa, você aprenderá como importar as bibliotecas necessárias e carregar o conjunto de dados iris. Siga os passos abaixo para completar esta etapa:
Em iris_classification_svm.py, importe as bibliotecas necessárias, incluindo aquelas para carregar o conjunto de dados, dividir os dados, criar o modelo SVM e avaliar seu desempenho.
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.svm import SVC
from sklearn.metrics import accuracy_score, classification_report
Carregue os dados iris de sklearn.datasets e divida o conjunto de dados em conjuntos de treinamento e teste. O conjunto de dados é dividido usando uma proporção de 80-20 para treinamento e teste, com uma semente aleatória de 42 para reprodutibilidade.
## Continue in the same file
def load_and_split_data() -> tuple:
"""
Returns:
tuple: [X_train, X_test, y_train, y_test]
"""
iris = load_iris()
X, y = iris.data, iris.target
X_train, X_test, y_train, y_test = train_test_split(
X, y, test_size=0.2, random_state=42
)
return X_train, X_test, y_train, y_test
Este código carrega o conjunto de dados Iris e o divide em conjuntos de treinamento e teste para fins de aprendizado de máquina. Aqui está uma análise de cada parte:
- Importando as bibliotecas necessárias:
sklearn.datasets é usado para carregar conjuntos de dados, incluindo o conjunto de dados Iris.
sklearn.model_selection fornece utilitários para dividir conjuntos de dados em conjuntos de treinamento e teste.
sklearn.svm contém classes para Máquinas de Vetores de Suporte (Support Vector Machines - SVM), um tipo de algoritmo de aprendizado de máquina.
sklearn.metrics inclui ferramentas para avaliar o desempenho de modelos, como acurácia (accuracy) e relatórios de classificação (classification reports).
- Definição da Função: Uma função chamada
load_and_split_data é definida. Esta função realiza as seguintes tarefas:
- Carrega o conjunto de dados Iris:
load_iris() é uma função fornecida por sklearn.datasets que carrega o conjunto de dados de flores Iris, que é um conjunto de dados popular para tarefas de classificação. Ele contém medições de 150 flores de íris de três espécies diferentes.
- Separação de Dados: O conjunto de dados é separado em características (
X) e rótulos alvo (y). Neste caso, X seriam as medições de 4 dimensões das flores de íris, e y seriam os rótulos das espécies correspondentes (0, 1 ou 2).
- Divisão dos Dados:
train_test_split de sklearn.model_selection é usado para dividir os dados em subconjuntos de treinamento e teste. O parâmetro test_size=0.2 significa que 20% dos dados serão usados para teste, enquanto os 80% restantes serão usados para treinamento. random_state=42 garante a reprodutibilidade da divisão; usar a mesma semente (42 aqui) produzirá a mesma divisão toda vez que o código for executado.
- Valores de Retorno: A função retorna uma tupla contendo
X_train, X_test, y_train e y_test, que são os conjuntos de características e alvos para os dados de treinamento e teste.