fbpx
Sigmoidal
  • Home
  • Cursos
  • Pós-Graduação
  • Blog
  • Sobre Mim
  • Contato
Sem Resultado
Ver Todos Resultados
  • English
  • Home
  • Cursos
  • Pós-Graduação
  • Blog
  • Sobre Mim
  • Contato
Sem Resultado
Ver Todos Resultados
Sigmoidal
Sem Resultado
Ver Todos Resultados

Entendendo as árvores de decisão em Machine Learning

ThalesFreitas por ThalesFreitas
fevereiro 23, 2022
em Blog, Machine Learning
1
134
COMPARTILHAMENTOS
4.5k
VIEWS
Publicar no LinkedInCompartilhar no FacebookCompartilhar no Whatsapp

Árvores de decisão (Decision Tree), como o próprio nome sugere, é um dos métodos mais utilizados para a tomada de decisão. Essa abordagem é amplamente utilizada em modelos de machine learning, mas também encontra espaço em outras áreas, como a pesquisa operacional.

Existem vários algoritmos que podem ser utilizados nessas árvores, dentre eles o ID3, C4.5 e o CART. O foco será esta última abordagem, que é a utilizada pelo scikit-learn. Ela se baseia na separação binária (True | False) de condições utilizando os atributos — features — dos dados.

Esses modelos de aprendizado supervisionado são empregados em tarefas tanto de regressão quanto classificação. O objetivo do método é criar uma árvore que aprende com os dados por meio de regras básicas, chamadas de if-then rules. O modelo identifica qual é o melhor atributo para separar os dados utilizando o critério escolhido, que, neste caso, pode ser entropy ou gini.

A imagem abaixo ilustra um exemplo geral dessas árvores e alguns de seus conceitos utilizados:

Dê zoom na imagem e acompanhe os maiores detalhes!

Algumas Vantagens das árvores de decisão:

  • É um modelo intuitivo e simples de interpretar. Além disso, as árvores de decisão podem ser visualizadas.
  • Não necessita de grandes pré-processamento de dados, como a normalização ou escalonamento de dados.
  • Utiliza o modelo conhecido como caixa branca. Ou seja, as decisões que o modelo toma podem ser explicadas e interpretadas.

Desvantagens:

  • Pode criar regras muito complexas, que vão gerar overfitting nos dados.
  • Podem ser instáveis, então pequenas variações podem gerar modelos de árvore completamente diferentes.
  • Para ter predições mais robustas, é aconselhável fazer ensembles.

O objetivo deste artigo é ajudá-lo na compreensão das DecisionTree e avaliar alguns métodos que podem ajudá-lo na interpretação dos seus dados e do seu modelo. Caso tenha interesse, você pode acompanhar o código no Colab.

Neste artigo, iremos utilizar uma base de dados para tarefas de classificação do próprio sklearn, sobre vinhos. Ela tem 178 registros e cerca de treze features.

# importando os dados do toy dataset wine
x,y = load_wine(return_X_y =True, as_frame=True)
# separando em treino e teste
x_train, x_test, y_train, y_test = train_test_split(x,y,random_state=42)

Inicialmente, vamos instanciar nossa árvore com todos os parâmetros default. Utilizaremos o clássico fit para treinar o modelo.https://thalesferraz.medium.com/media/7610e1680b4d1f22ee81ea90a3605012.

Já foi falado muitas vezes que esse modelo é muito fácil de interpretar, e, inclusive, podemos visualizá-lo. Chegou a hora de nosso plot!

Para isso, utilizaremos o método do scikit-learn plot_tree!

# criando o fig e o axes
fig, ax = plt.subplots(figsize=(8,6),dpi=92)
#criando o plot
plot_tree(tree,ax=ax)
#plotando o gráfico
plt.tight_layout();

Eu deixei em um tamanho menor para refletirmos: e se houvesse várias features? Ou seja, várias colunas em nosso dataset? Nossa árvore seria gigantesca!

É por conta disso que existem alguns parâmetros que podemos mudar no plot_tree. Por exemplo, ao setar o max_depth como 2, nós limitamos a visão da profundidade da árvore para 2. As demais profundidades ficam simbolizados como três pontos (…).

Se você der uma olhada na primeira linha de cada quadrado (nó), ele exibe um símbolo X [índice]. Este é o jeito que o modelo entende cada feature. Por exemplo, o x[9] é o nono elemento da nossa lista de atributos:

['alcohol', 'malic_acid', 'ash', 'alcalinity_of_ash', 'magnesium',
'total_phenols', 'flavanoids', 'nonflavanoid_phenols',
'proanthocyanins', 'color_intensity', 'hue',
'od280/od315_of_diluted_wines', 'proline']

Ou seja, color_intensity. Por conta disso, para ficar mais legível, podemos acrescentar ao parâmetro feature_names uma lista do nome de nossos atributos. Fazemos isso simplesmente setando feature_names como x_train.columns.

O plot_tree possui muitos outros parâmetros que podem auxiliar na interpretação do modelo. Convido-o a visitar a documentação e a procurar por mais alguns que possam agradá-lo!

No código abaixo, trouxe alguns novos parâmetros e seu plot. Os que estão com # antes não estão sendo considerados no código. Deixei, apenas, caso alguém tenha interesse. Do lado de cada parâmetro, deixei uma explicação simples do seu efeito.

# criando o fig e o axes
fig, ax = plt.subplots(figsize=(12,8),dpi=92)
#criando o plot
plot_tree(tree, # a decision tree que será plotada
          feature_names = x_train.columns, # trará o nome das features utilizadas na primeira linha de cada nó
          ax=ax, # plotamos no axes criado do matplotlib
          precision=1, # precisão dos valores numéricos
          max_depth=2, #  escolhemos a profundidade da árvore
          # proportion = True # retorna a proporção dos valores das amostras
          #fontsize = 20 # mudar o tamanho da fonte
        )
#plotando o gráfico
plt.tight_layout();

Show! Acredito que até agora tudo tenha ficado bem claro.

Porém, uma dúvida pode surgir: como as árvores de decisão fazem a separação considerando o atributo? Por exemplo, de onde ela tirou que color_intensity <= 3.8 é um bom splitting?

Para isso, ela se baseia nos hiperparâmetros das DecisionTrees: criterion, que é o gini por default, e splitter, que é best por default. Ou seja, ela faz a separação buscando reduzir o coeficiente de gini da melhor (best) forma possível.

Utilizando a entropy , o objetivo vai ser aumentar o ganho de informação reduzindo a entropia da próxima profundidade.

Obs.: O coeficiente de gini ou entropy mede a heterogeneidade dos dados. Esta separação busca reduzir esta impureza no próximo ramo (próxima profundidade) como um todo.

Se voltarmos a dar uma olhada em nossas árvores plotadas, vamos observar que ela exibe outros termos: samples e value:

  • samples: é a quantidade de registros daquela amostra.
  • value: quantos registros tem de cada classe naquela amostra.

A DecisionTreeClassifier tem muitos outros hiperparâmetros que podem auxiliar em uma melhor classificação de seu modelo. Novamente, convido-o a visitar a documentação e a procurar por mais alguns que possam ajudá-lo!

No código abaixo, trouxe alguns novos hiperparâmetros. Do lado de cada hiperparâmetro, deixei uma explicação simples do seu efeito no modelo.

tree = DecisionTreeClassifier(
criterion='gini', # gini vem por default, mas podemos optar por entropy
splitter='best', # a estratégia utilizada para fazer a separação de cada nó
# ela também pode ser feita de forma randômica utilizando 'random'
max_depth= None, # a máxima profundida que sua árvore de decisão pode ter
# se for None ela vai buscar a máxima pureza possível
min_samples_split = 2, # o mínimo de registros necessários para que uma separação seja feita
min_samples_leaf = 1, # o mínimo de registros necessários em cada nós-folha (veja a primeira imagem)
max_features = None, # o número de atributos que será considerado durante o split
# None -> seleciona todos os atributos, 'sqrt' -> raiz quadrada do número dos atributos, 'log2' -> log de base 2 do número de atributos
max_leaf_nodes=None, # a quantidade máxima de nós-folha que a árvore pode ter
# se for None ele não limitará o número de nós-folha
min_impurity_decrease=0.0, # o split irá ocorrer em cada nó se o decréscimo da impureza foi maior ou igual a este valor
random_state= 42, # permite o notebook ser reproduzível
# veja mais parâmetros na documentação oficial!
)

Outro método interessante das árvores de decisão é o feature_importances_. Este método traz um score de quais atributos melhor ajudaram o modelo a aprender sobre os dados, baseando-se na redução de impureza trazida por cada atributo.

Para calcular este score, o scikit-learn utiliza o gini importance (este vídeo do Machine Learning Mastery explica detalhadamente os cálculos realizados).

É importante ressaltar uma resposta dada por Gilles Louppe, um dos desenvolvedores do scikit-learn, no stack overflow: há muitas maneiras de se calcular a feature importances , não existe um consenso sobre isso. No scikit-learn, optou-se por utilizar o gini importance.

#criando um dicionário com as variáveis
dic = {'score':tree.feature_importances_,'features':x_train.columns}
#criando um dataframe com os dados
df = pd.DataFrame(dic).sort_values('score',ascending=False)
df

E se quisermos exportar nossa árvore de decisão para outras pessoas?

Geralmente, quando utilizamos este tipo de template (com setas, nós etc.), salvamos o arquivo no formato DOT. Conseguimos realizar essa tarefa através do método export_graphviz.

O código abaixo reproduz esse processo:

# exportando uma árvore de decisão em DOT format
export_graphviz(tree, # árvore de decisão a ser exportada
                out_file = 'arvore.dot',  # nome do arquivo output
                feature_names = x_train.columns, # retornar com as features
                precision=2, # número de digitos da precisão
                filled = True, # pinta os nós de acordo com cada classe
                class_names=['class_0','class_1','class_2']) # lista do nome das classes
                #special_characters=False, # quando False ignora os caracteres especiais
                #label = 'root', # as informações das features aparecem apenas na raíz
                #leaves_parallel = True) # faz com que as folhas fiquem paralelas
                #rotate = True); # retorna a árvore na horizontal

Além dos formatos já apresentados, ainda é possível representar as regras de nossa árvore de decisão através de texto, utilizando o módulo export_text.

print(export_text(tree, # árvore de decisão treinada
                  show_weights=True, # retorna o número de amostras de cada classe
                  spacing=5)) # dá um espaçamento entre os nós
|----- feature_9 <= 3.82 
|----- feature_12 <= 1010.00
| |----- feature_2 <= 3.07
| | |----- weights: [0.00, 46.00, 0.00] class: 1
| |----- feature_2 > 3.07
| | |----- weights: [1.00, 0.00, 0.00] class: 0
|----- feature_12 > 1010.00
| |----- weights: [1.00, 0.00, 0.00] class: 0
|----- feature_9 > 3.82
|----- feature_6 <= 1.40
| |----- weights: [0.00, 0.00, 36.00] class: 2
|----- feature_6 > 1.40
| |----- feature_12 <= 724.50
| | |----- feature_0 <= 13.14
| | | |----- weights: [0.00, 7.00, 0.00] class: 1
| | |----- feature_0 > 13.14
| | | |----- weights: [1.00, 0.00, 0.00] class: 0
| |----- feature_12 > 724.50
| | |----- weights: [41.00, 0.00, 0.00] class: 0

Em resumo, era isso. As árvores de decisão são muito utilizadas e pouco compreendidas. Espero que este artigo tenha, vamos dizer assim, clareado algumas ideias e gerado insights para alguns de seus projetos!

Caso tenha algum comentário, dúvida ou sugestão, não hesite em me procurar no LinkedIn. Além disso, você também pode procurar alguns de meus projetos de Data Science no Github.

Compartilhar9Compartilhar54Enviar
Post Anterior

Gerando amostras para modelos de Deep learning no ArcGIS Pro

Próximo Post

Machine Learning no Mundo Real

ThalesFreitas

ThalesFreitas

Relacionado Artigos

Curso de Pós-Graduação em Data Science
Data Science

Vale a pena fazer uma Pós-Graduação em Data Science?

por Carlos Melo
janeiro 20, 2025
Review do Livro “Mãos à obra: Aprendizado de Máquina com Scikit-Learn, Keras & TensorFlow”
Livros

Review do Livro “Mãos à obra: Aprendizado de Máquina com Scikit-Learn, Keras & TensorFlow”

janeiro 18, 2025
Carlos Melo e Sérgio Sacani – Ciência Sem Fim
Youtube

Carlos Melo e Sérgio Sacani – Ciência Sem Fim

por Carlos Melo
janeiro 16, 2025
Carlos Melo da Pós Graduação em Data Science do Sigmoidal
Aeroespacial

Oportunidades no Setor Espacial para Cientistas de Dados

por Carlos Melo
janeiro 15, 2025
Visão Computacional

Processamento de Nuvens de Pontos com Open3D e Python

por Carlos Melo
janeiro 2, 2025
Próximo Post
Machine Learning no Mundo Real

Machine Learning no Mundo Real

Comentários 1

  1. Rafael says:
    2 anos atrás

    Pode me tirar uma dúvida, por favor?

    O nó raiz no scikit-learn gera sempre apenas 2 ramos, um para a esquerda e outro para a direita, não importando a quantidade de instâncias que haja na variável escolhida. Como e porque ele faz a divisão em apenas 2 grupos? Pergunto isso pelo fato de que, ao estudarmos os algoritmos (entropia e gini), os ramos sempre são na quantidade de instâncias existentes.

    Obrigado pela atenção!

    Responder

Deixe um comentário Cancelar resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Pós-Graduação em Data Science Pós-Graduação em Data Science Pós-Graduação em Data Science

Mais Populares

  • Introdução ao MediaPipe e Pose Estimation

    Introdução ao MediaPipe e Pose Estimation

    463 compartilhamentos
    Compartilhar 185 Tweet 116
  • ORB-SLAM 3: Tutorial Completo para Mapeamento 3D e Localização em Tempo Real

    394 compartilhamentos
    Compartilhar 158 Tweet 99
  • Equalização de Histograma com OpenCV e Python

    118 compartilhamentos
    Compartilhar 47 Tweet 30
  • Geometria da Formação de Imagens: Matrizes, Transformações e Sistemas de Coordenadas

    373 compartilhamentos
    Compartilhar 149 Tweet 93
  • Processamento de Nuvens de Pontos com Open3D e Python

    35 compartilhamentos
    Compartilhar 14 Tweet 9
  • Em Alta
  • Comentários
  • Mais Recente
Como Tratar Dados Ausentes com Pandas

Como Tratar Dados Ausentes com Pandas

agosto 13, 2019
Como usar o DALL-E 2 para gerar imagens a partir de textos

Como usar o DALL-E 2 para gerar imagens a partir de textos

dezembro 25, 2022
Introdução ao MediaPipe e Pose Estimation

Introdução ao MediaPipe e Pose Estimation

julho 15, 2023

ORB-SLAM 3: Tutorial Completo para Mapeamento 3D e Localização em Tempo Real

abril 10, 2023
Como Analisar Ações da Bolsa com Python

Como Analisar Ações da Bolsa com Python

15
Setembro Amarelo: Análise do Suicídio no Brasil, com Data Science

Setembro Amarelo: Análise do Suicídio no Brasil, com Data Science

13
Como Aprender Data Science?

Como Aprender Data Science?

9
Qual o Cenário de Data Science no Brasil hoje?

Qual o Cenário de Data Science no Brasil hoje?

8
DeepSeek vazamento de dados de usuários

DeepSeek: Vazamento de dados expõe dados de usuários

fevereiro 1, 2025
DeepSeek R1 vs OpenAI o1 – Qual é o Melhor Modelo de IA

DeepSeek R1 vs OpenAI o1 – Qual é o Melhor Modelo de IA?

janeiro 25, 2025
Trump Anuncia Investimento de US$ 500 Bilhões em Infraestrutura de IA

Trump Anuncia Investimento de US$ 500 Bilhões em Infraestrutura de IA

janeiro 22, 2025
Trump revoga decreto de Biden sobre regulação de Inteligência Artificial

Trump revoga decreto de Biden sobre regulação de Inteligência Artificial

janeiro 21, 2025

Seguir

  • 🚀 NOVA PÓS EM VISÃO COMPUTACIONAL!

Seja especialista em Visão Computacional e Deep Learning! 

✔️ 400h de conteúdo
✔️ Curso reconhecido pelo MEC
✔️ Foco em prática e projetos reais

💡 1 CURSO, 2 CARREIRAS
Atue como Machine Learning Engineer E Computer Vision Engineer! 

📅 Aula de lançamento: 1º de junho, 20h

📍 Link na bio. Ative o lembrete e participe!

#computervision #machinelearning #datascience
  • Geo4D apresenta uma nova abordagem para reconstrução 4D monocular de cenas dinâmicas, reutilizando modelos de difusão de vídeo. 

🌀 A técnica dispensa sensores múltiplos ou dados reais — treinando apenas com dados sintéticos e generalizando bem em zero-shot. Isso é possível porque modelos de difusão capturam priors temporais e espaciais consistentes. 

O método prevê múltiplas modalidades geométricas: mapas de pontos, profundidade e raios. Em seguida, utiliza um algoritmo leve de alinhamento multi-modal para fundi-las de forma coerente. Esse processo acontece em janelas deslizantes, permitindo reconstruções 4D contínuas e robustas mesmo em vídeos longos.

Nos benchmarks, o Geo4D superou métodos SOTA como MonST3R em estimativa de profundidade e alcançou bons resultados em pose de câmera. Uma prova do poder de integrar visão computacional e modelos generativos. 🧠

Se curtiu a ideia, deixa seu like e fortalece o post!

Fonte: Zeren Jiang

#machinelearning #computervision #datascience
  • 📸 Reconstrução 3D do Arco do Triunfo com Gaussian Splatting, a partir de um único vídeo

A técnica usada é o Gaussian Splatting, uma abordagem moderna de renderização neural que substitui malhas e voxels por distribuições gaussianas no espaço 3D.

Esses pontos flutuantes carregam cor, opacidade e variância, permitindo uma renderização ultrarrápida e detalhada - ideal para aplicações em realidade aumentada, mapeamento urbano e digital twins.

Diferente dos métodos tradicionais, esse modelo ajusta diretamente os parâmetros das gaussianas, tornando o processo leve e eficiente, inclusive em tempo real.

📌 Fonte: Bohdan Vodianyk

#ComputerVision #VisãoComputacional #MachineLearning #GaussianSplatting
  • Você ainda acredita que resolver as top-150 questões do LeetCode é suficiente para ser aprovado em uma entrevista de Machine Learning Engineer ou Computer Vision Engineer?

Talvez já tenha sido… alguns anos atrás.

Hoje, no entanto, empresas que seguem o padrão de avaliação das FAANG - como Meta (Facebook), Apple, Amazon, Netflix e Google - vêm exigindo muito mais do que apenas conhecimento em algoritmos e estrutura de dados.

✅ Espera-se domínio em ML System Design
✅ Clareza ao comunicar trade-offs técnicos
✅ Experiência real em colocar modelos de machine learning em produção

Passar pela etapa de screening é só o começo.

Se você quer realmente se destacar, aqui estão 3 livros essenciais para estudar com estratégia! Arraste o carrossel para conferir a lista.

📌 Comente se você incluiria algum outro título.
📤 Compartilhe com um colega que também está se preparando.

#machinelearning #computervision #datascience
  • 🚀 NASA testa novo laser 3D para medir ventos e melhorar previsões meteorológicas

Desde o outono de 2024, a NASA tem utilizado um instrumento avançado chamado Aerosol Wind Profiler (AWP) para medir ventos em 3D com alta precisão.

Montado em uma aeronave especial, o AWP usa pulsos de laser para detectar velocidade e direção dos ventos, além da concentração de aerossóis (poeira, fumaça, sal marinho etc).

Esses dados são valiosos para modelos de Machine Learning aplicados à previsão do tempo, detecção de anomalias e simulação atmosférica.

📊 Oportunidades diretas para ML:

🔹 Treinamento supervisionado: previsões mais precisas usando dados reais de velocidade e direção dos ventos em múltiplas altitudes.

🔹 Modelagem de séries temporais: LSTMs e Transformers podem capturar padrões em sistemas complexos como furacões.

🔹 Data fusion: integração de sensores distintos (AWP, HALO, dropsondes) é um problema clássico resolvido com ML multimodal.

🔹 Assimilação de dados: ML pode atuar em tempo real para corrigir modelos físicos via técnicas híbridas (physics-informed ML).

Se você trabalha com IA, clima ou sensoriamento remoto, esse é o tipo de dado que muda o jogo!
  • Cada passo te aproxima do que realmente importa. Quer continuar avançando?

🔘 [ ] Agora não
🔘 [ ] Seguir em frente 🚀
  • 🇺🇸 Green Card por Habilidade Extraordinária em Data Science e Machine Learning

Após nossa mudança para os EUA, muitas pessoas me perguntaram como consegui o Green Card tão rapidamente. Por isso, decidi compartilhar um pouco dessa jornada.

O EB-1A é um dos vistos mais seletivos para imigração, sendo conhecido como “The Einstein Visa”, já que o próprio Albert Einstein obteve sua residência permanente através desse processo em 1933.

Apesar do apelido ser um exagero moderno, é fato que esse é um dos vistos mais difíceis de conquistar. Seus critérios rigorosos permitem a obtenção do Green Card sem a necessidade de uma oferta de emprego.

Para isso, o aplicante precisa comprovar, por meio de evidências, que está entre os poucos profissionais de sua área que alcançaram e se mantêm no topo, demonstrando um histórico sólido de conquistas e reconhecimento.

O EB-1A valoriza não apenas um único feito, mas uma trajetória consistente de excelência e liderança, destacando o conjunto de realizações ao longo da carreira.

No meu caso específico, após escrever uma petição com mais de 1.300 páginas contendo todas as evidências necessárias, tive minha solicitação aprovada pelo USCIS, órgão responsável pela imigração nos Estados Unidos.

Fui reconhecido como um indivíduo com habilidade extraordinária em Data Science e Machine Learning, capaz de contribuir em áreas de importância nacional, trazendo benefícios substanciais para os EUA.

Para quem sempre me perguntou sobre o processo de imigração e como funciona o EB-1A, espero que esse resumo ajude a esclarecer um pouco mais. Se tiver dúvidas, estou à disposição para compartilhar mais sobre essa experiência! #machinelearning #datascience
  • 🚀Domine a tecnologia que está revolucionando o mundo.

A Pós-Graduação em Visão Computacional & Deep Learning prepara você para atuar nos campos mais avançados da Inteligência Artificial - de carros autônomos a robôs industriais e drones.

🧠 CARGA HORÁRIA: 400h
💻 MODALIDADE: EAD
📅 INÍCIO DAS AULAS: 29 de maio

Garanta sua vaga agora e impulsione sua carreira com uma formação prática, focada no mercado de trabalho.

Matricule-se já!

#deeplearning #machinelearning #visãocomputacional
  • Green Card aprovado! 🥳 Despedida do Brasil e rumo à nova vida nos 🇺🇸 com a família!
  • Haverá sinais… aprovado na petição do visto EB1A, visto reservado para pessoas com habilidades extraordinárias!

Texas, we are coming! 🤠
  • O que EU TENHO EM COMUM COM O TOM CRUISE??

Clama, não tem nenhuma “semana” aberta. Mas como@é quinta-feira (dia de TBT), olha o que eu resgatei!

Diretamente do TÚNEL DO TEMPO: Carlos Melo &Tom Cruise!
  • Bate e Volta DA ITÁLIA PARA A SUÍÇA 🇨🇭🇮🇹

Aproveitei o dia de folga após o Congresso Internacional de Astronáutica (IAC 2024) e fiz uma viagem “bate e volta” para a belíssima cidade de Lugano, Suíça.

Assista ao vlog e escreve nos comentários se essa não é a cidade mais linda que você já viu!

🔗 LINK NOS STORIES
  • Um paraíso de águas transparentes, e que fica no sul da Suíça!🇨🇭 

Conheça o Lago de Lugano, cercado pelos Alpes Suíços. 

#suiça #lugano #switzerland #datascience
  • Sim, você PRECISA de uma PÓS-GRADUAÇÃO em DATA SCIENCE.
  • 🇨🇭Deixei minha bagagem em um locker no aeroporto de Milão, e vim aproveitar esta última semana nos Alpes suíços!
  • Assista à cobertura completa no YT! Link nos stories 🚀
Instagram Youtube LinkedIn Twitter
Sigmoidal

O melhor conteúdo técnico de Data Science, com projetos práticos e exemplos do mundo real.

Seguir no Instagram

Categorias

  • Aeroespacial
  • Artigos
  • Blog
  • Carreira
  • Cursos
  • Data Science
  • Deep Learning
  • Destaques
  • Entrevistas
  • IA Generativa
  • Livros
  • Machine Learning
  • Notícias
  • Python
  • Teoria
  • Tutoriais
  • Visão Computacional
  • Youtube

Navegar por Tags

camera calibration carreira chatgpt cientista de dados cnn computer vision Cursos dados desbalanceados data science data science na prática decision tree deep learning gpt-3 histograma IA generativa image formation inteligência artificial jupyter kaggle keras machine learning matplotlib mnist nft openai opencv overfitting pandas profissão python redes neurais redes neurais convolucionais regressão linear regressão logística salário scikit-learn seaborn sklearn tensorflow titanic tutorial visão computacional vídeo youtube árvore de decisão

© 2024 Sigmoidal - Aprenda Data Science, Visão Computacional e Python na prática.

Welcome Back!

Login to your account below

Forgotten Password?

Retrieve your password

Please enter your username or email address to reset your password.

Log In

Add New Playlist

Sem Resultado
Ver Todos Resultados
  • Home
  • Cursos
  • Pós-Graduação
  • Blog
  • Sobre Mim
  • Contato
  • English

© 2024 Sigmoidal - Aprenda Data Science, Visão Computacional e Python na prática.