0% acharam este documento útil (0 voto)
47 visualizações11 páginas

Otimização de Árvores de Decisão

Este documento discute estratégias para otimizar algoritmos de árvores de decisão para lidar com grandes conjuntos de dados, como amostragem eficiente, paralelização do treinamento e poda da árvore. O objetivo é melhorar a eficiência computacional e o desempenho do modelo ao lidar com dados volumosos.

Enviado por

Miriam Muzingo
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PPTX, PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
47 visualizações11 páginas

Otimização de Árvores de Decisão

Este documento discute estratégias para otimizar algoritmos de árvores de decisão para lidar com grandes conjuntos de dados, como amostragem eficiente, paralelização do treinamento e poda da árvore. O objetivo é melhorar a eficiência computacional e o desempenho do modelo ao lidar com dados volumosos.

Enviado por

Miriam Muzingo
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PPTX, PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 11

TEMA:

OTIMIZAÇÃO DE ALGORITMOS
DE ÁRVORES DE DECISÃO PARA
GRANDES CONJUNTOS DE DADOS.

1
INTEGRANTES:
TARIANA FERREIRA Nº-42565
BROLIN SEBASTIÃO Nº -27445
ELIAS ZIMBETI Nº 27592
JOAQUIM MAZEMBA Nº-42595
MIRIAMA MUZINGU Nº-43262
ANDREA PEDRO Nº-40460
ADÃO CARLOS Nº-41612

2
A otimização de algoritmos de árvores de decisão para grandes conjuntos de
dados refere-se ao processo de aplicar técnicas e estratégias com o objetivo de
melhorar a eficiência e o desempenho desses algoritmos ao lidar com conjuntos
de dados volumosos.
As árvores de decisão são modelos de aprendizado de máquina amplamente
utilizados para problemas de classificação e regressão. No entanto, quando
aplicados a grandes conjuntos de dados, podem enfrentar desafios relacionados à
escalabilidade e tempo de processamento.
A otimização desses algoritmos envolve o uso de abordagens como redução da
INTRODUÇÃO dimensionalidade, amostragem do conjunto de dados, poda da árvore, utilização
de algoritmos otimizados para grandes conjuntos de dados, paralelização do
treinamento, implementação eficiente e balanceamento de classes. Essas
estratégias visam melhorar a eficiência computacional, reduzir o tempo de
treinamento e manter ou melhorar o desempenho preditivo do modelo.
Ao otimizar algoritmos de árvores de decisão para grandes conjuntos de dados, é
possível lidar de forma mais eficaz com problemas complexos e aproveitar ao
máximo o potencial desses modelos em cenários de dados volumosos.

3
* uma árvore de decisão é um modelo de aprendizado de máquina que toma decisões com base
em testes realizados em atributos específicos de um conjunto de dados.

1. Escolha do Atributo de Decisão


A escolha é feita com base em critérios como ganho de informação, índice de Gini ou entropia.
O objetivo é encontrar o atributo que melhor separa as classes ou reduz a impureza nos
subconjuntos resultantes.

2. Divisão dos Dados


FUNCIONAMENTO O conjunto de dados é dividido em subconjuntos com base no valor do atributo
escolhido. Cada subconjunto corresponde a um ramo na árvore.

3. Criação de Nós Internos


Os nós internos representam testes de decisão. Cada nó interno contém uma condição
sobre um atributoleva a um ou mais ramos, correspondendo a diferentes valores
possíveis desse atributo.

4
Recursividade:
O processo é repetido recursivamente para cada subconjunto criad
1. ID3 (Iterative Dichotomiser 3): é um dos primeiros algoritmos

2. C4.5: é uma evolução do ID3. Ele utiliza a razão de ganho em

3. CART: é um algoritmo versátil que pode ser usado tanto para p

Algoritmos de árvores
de decisão mais comuns:

5
Random Forests: Random Forests são baseadas em árvores de
Decisão e constroem várias árvores e combinam seus resultados
para melhorar a precisão e evitar overfitting.

Gradient Boosted Trees: Este não é um algoritmo único, mas


que utiliza um conjunto de árvores de decisão fracas.
A ideia é treinar árvores sequencialmente, onde cada nova
Algoritmos de árvore corrige os erros das anteriores.

árvores de XGBoost (Extreme Gradient Boosting): Uma implementação


eficiente do algoritmo de Gradient Boosted Trees, conhecida por
decisão mais sua velocidade e desempenho superior.

comuns: Decision Stump: Um caso especial de árvore de decisão que


consiste em apenas um nó de decisão e duas folhas. Pode ser usado
como um componente em algoritmos mais complexos.

CHAID (Chi-squared Automatic Interaction Detection): Similar ao


C4.5, o CHAID é usado para árvores de decisão em problemas de
classificação e regressão, mas utiliza o teste qui-quadrado para dividir os
dados
6
Algumas estratégias específicas para
otimizar árvores de decisão em grandes
conjuntos de dados:

• Amostragem Eficiente: Algoritmos de Aprendizado Incremental:


• Utilize técnicas de amostragem eficientes, como amostragem Considere o uso de algoritmos de aprendizado incremental
aleatória ou amostragem estratificada, para reduzir o tamanho que permitem atualizações incrementais do modelo à
do conjunto de dados sem perder representatividade. Isso medida que novos dados chegam. Isso é especialmente útil
pode acelerar o generalização do modelo. para conjuntos de dados em constante crescimento.
Paralelização do Treinamento:
• Explore implementações paralelas ou distribuídas do
algoritmo de árvore de decisão para aproveitar o poder de
processamento de sistemas distribuídos. Muitas
bibliotecas de machine learning oferecem suporte a
treinamento paralelo.

7
Algumas estratégias específicas para
otimizar árvores de decisão em grandes
conjuntos de dados:

Poda (Pruning) Eficiente:


Aplique técnicas de poda eficientes para reduzir o tamanho
Profundidade da Árvore:
da árvore após o treinamento. A poda pode eliminar ramos
desnecessários, reduzindo a complexidade da árvore sem
Controle a profundidade da árvore de
decisão. Árvores comprometer a qualidade do modelo.

muito profundas podem levar a um


aumento Algoritmos de Aprendizado Incremental:
significativo no tempo de treinamento. Considere o uso de algoritmos de aprendizado incremental
que permitem atualizações incrementais do modelo à
medida que novos dados chegam.

8
ALGORITMO
• from sklearn.ensemble import RandomForestClassifier
• from sklearn.model_selection import train_test_split
• from sklearn.metrics import accuracy_score
• dados_clima = {
• 'Temperatura': [25, 28, 22, 18, 30, 24, 26, 20, 29],
• 'Chuva': [0, 5, 10, 2, 0, 3, 0, 15, 1],
• 'Passeio': ['Sim', 'Sim', 'Não', 'Não', 'Sim', 'Sim', 'Sim', 'Não', 'Sim']
• }
• import pandas as pd
• df = pd.DataFrame(dados_clima)
• X = df[['Temperatura', 'Chuva']]
• y = df['Passeio']
• X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
• rf_model = RandomForestClassifier(n_estimators=100, random_state=42)
• rf_model.fit(X_train, y_train)
• predictions_rf = rf_model.predict(X_test)
• accuracy_rf = accuracy_score(y_test, predictions_rf)
• print(f'Decisão de Passeio usando Random Forest: {accuracy_rf}')

9
Conclusão

• Em resumo, a otimização de algoritmos de árvores de decisão


para grandes conjuntos de dados envolve uma combinação
de abordagens, desde a manipulação eficiente dos dados até
a escolha criteriosa de hiperparâmetros. Ao empregar
estratégias eficazes de otimização, é possível criar modelos
mais escaláveis, eficientes e capazes de lidar com os desafios
apresentados por conjuntos de dados extensos.

10
OBRIGADO

Você também pode gostar