Escolar Documentos
Profissional Documentos
Cultura Documentos
No caso dos problemas de regressão essa definição se mantém, e o que define um problema de
regressão é a natureza de , vejamos alguns problemas de regressão na Tabela 1.
https://mdm.claretiano.edu.br/funmaclea-g04120-2020-02-grad-ead/2019/11/01/ciclo-2-algoritmos-para-problemas-de-regressao/ 1/25
16/12/2020 Ciclo 2 – Algoritmos para Problemas de Regressão – Fundamentos de Machine Learning
Em todos os três problemas citados na Tabela 1, a saída é um valor contínuo, que pode estar
delimitado, como por exemplo valores em Reais do seguro ou do combustível dificilmente seria um
valor negativo, mas ainda assim, estão numa faixa de valores contínuos, é justamente essa
característica que nos ajudar a identificar um problema de regressão.
Agora que vimos a principal característica dos problemas de regressão, podemos estudar as
técnicas para atacar tais problemas.
Importante!
É importante lembrar que para os exemplos práticos usaremos a
linguagem Python (Foundation, 2016) e o Scikit-learn, um
framework de aprendizado de máquina em Python (Scikit-learn,
[s.d.]). Podemos usar o Google Colaboratory, o qual é uma
plataforma on-line que usa o Jupyter para rodar diversos frameworks em
Python, inclusive os códigos que veremos no transcorrer de nossos estudos.
Para tanto, veja mais detalhes sobre seu uso aqui.
VAMOS PRATICAR?
PARA EXERCITARMOS A PRÁTICA DA CONSTRUÇÃO DE MODELOS DE
APRENDIZADO DE MÁQUINA, PRECISAMOS DE DADOS ORIUNDOS DE
DOMÍNIOS E PROBLEMAS ESTABELECIDOS. NESSE SENTIDO, O SITE
KAGGLE POSSUI VÁRIAS BASES DE DADOS COM DESCRIÇÕES
DETALHADAS, ALÉM DE CÓDIGOS E SOLUÇÕES USANDO AS MAIS VARIADAS
TÉCNICAS. O VÍDEO INDICADO POSSUI UMA DESCRIÇÃO SOBRE O QUE É, E
COMO USAR O KAGGLE PARA CONSTRUIR SOLUÇÕES USANDO MACHINE
LEARNING. ATENTE-SE QUE É POSSÍVEL HABILITAR NO VÍDEO AS
LEGENDAS EM PORTUGUÊS, CASO SEJA NECESSÁRIO.
Kaggle
REGRESSÃO LINEAR
Na Figura 1 vimos que a função é desconhecida e precisamos de aproximá-la
de maneira que possamos mapear satisfatoriamente em . Tal aproximação na regressão
linear é feita através de uma equação linear, conforme Géron (2019, p. 116) indica a seguir:
https://mdm.claretiano.edu.br/funmaclea-g04120-2020-02-grad-ead/2019/11/01/ciclo-2-algoritmos-para-problemas-de-regressao/ 2/25
16/12/2020 Ciclo 2 – Algoritmos para Problemas de Regressão – Fundamentos de Machine Learning
Onde,
é a quantidade de features.
Vale ressaltar que quando dizemos que precisamos aproximar uma função desconhecida a partir de
uma função linear, precisamos encontrar o vetor de pesos que melhor mapeia os pares
ou seja, cuja a diferença entre que é o valor predito pela equação linear para e,
que é o valor verdadeiro, seja a menor possível.
Para ilustrar esse conceito podemos gerar um conjunto de dados simples e unidimensional que está
representado (pontos em azul) na Figura 10, sendo que temos três funções candidatas (linhas em
vermelho) para aproximar esse conjunto, as quais tem seu próprio vetor .
De fato temos uma infinidade de possíveis vetores candidatos e, portanto, precisamos de uma
forma de escolher a melhor dentre eles, ou seja, precisamos otimizar o vetor de pesos de
maneira à minimizar o erro entre a predição e o verdadeiro.
A maneira mais genérica e imediata para essa otimização é chamada Gradiente Descendente e
será vista na próxima seção.
GRADIENTE DESCENDENTE
A técnica denominada gradiente descendente (gradient descendent) é a técnica mais geral, usada
para encontrar o vetor de pesos , sendo que tal técnica também serve de base para técnicas
subsequentes mais robustas. Gerón (2019, p. 122) aborda de maneira lúdica a ideia do gradiente
descendente com a seguinte história,
https://mdm.claretiano.edu.br/funmaclea-g04120-2020-02-grad-ead/2019/11/01/ciclo-2-algoritmos-para-problemas-de-regressao/ 3/25
16/12/2020 Ciclo 2 – Algoritmos para Problemas de Regressão – Fundamentos de Machine Learning
[...] Suponha que você está perdido nas montanhas em meio à uma densa neblina, e você
só consegue sentir a inclinação do chão abaixo de seus pés. Uma boa estratégia para
chegar à base da montanha é seguir a inclinação do chão para a parte mais baixa.
É realmente assim que o gradiente descendente faz, uma vez que ele procura o ponto mais baixo
na curva de erro um passo de cada vez. De maneira mais concreta podemos iniciar com um valor
aleatoriamente definido para o vetor e vamos alterando esse vetor, um passo de cada vez,
visando diminuir a função de erro, até que o gradiente descendente atinja um valor mínimo.
Podemos ver a ilustração desse conceito na Figura 10.
Notamos que na Figura 10 existe o learning step, que é um valor que dita o tamanho do passo em
direção ao mínimo o gradiente descendente dará. Havemos de notar que, esse é um valor empírico
e juntamente com o valor inicial aleatório pode causar algumas situações, tais como, fazer com que
o erro mínimo seja ultrapassado (Figura 11a), alcançar um mínimo local não satisfatório, ou então,
encontrar um platô que é uma região do espaço de erro, que não apresenta queda em sua
localidade (Figura 11b).
https://mdm.claretiano.edu.br/funmaclea-g04120-2020-02-grad-ead/2019/11/01/ciclo-2-algoritmos-para-problemas-de-regressao/ 4/25
16/12/2020 Ciclo 2 – Algoritmos para Problemas de Regressão – Fundamentos de Machine Learning
Onde,
A partir do erro o gradiente descendente pode calcular o deslocamento que deverá ser feito no vetor
que é a derivada parcial da função de custo, portanto,
Tal cálculo pode ser realizado para todos os elementos do conjunto de treinamento de uma só
vez, o que é chamado de vetor de gradiente (GÉRON, 2019),
A seguir, podemos ver a regressão linear em ação de uma maneira simplificada, vamos usar um
exemplo (SCIKIT-LEARN, [s.d.]), o qual foi adaptado para este ciclo de aprendizagem, onde deve-
https://mdm.claretiano.edu.br/funmaclea-g04120-2020-02-grad-ead/2019/11/01/ciclo-2-algoritmos-para-problemas-de-regressao/ 5/25
16/12/2020 Ciclo 2 – Algoritmos para Problemas de Regressão – Fundamentos de Machine Learning
se aproximar uma função para um conjunto de dados que representa os preços dos imóveis na
cidade de Boston, são 513 imóveis, representados por 13 atributos (features), e a variável alvo que
indica o preço de cada um dos imóveis. Visando um melhor entendimento e representação visual da
aproximação realizada, utilizaremos apenas 1 atributo, bem como a variável alvo, sendo assim,
seremos capazes de representar os resultados em gráficos. O “Código 1” apresenta o código
comentado para resolver o problema usando, na linha 16, o objeto SGDRegressor, o qual
representa uma regressão linear aproximada com o Stochastic Gradient Descendent, que faz o
gradiente descendente de maneira estocástica variando o learning rate a cada passo (GÉRON,
2019).
https://mdm.claretiano.edu.br/funmaclea-g04120-2020-02-grad-ead/2019/11/01/ciclo-2-algoritmos-para-problemas-de-regressao/ 6/25
16/12/2020 Ciclo 2 – Algoritmos para Problemas de Regressão – Fundamentos de Machine Learning
31. plt.show()
https://mdm.claretiano.edu.br/funmaclea-g04120-2020-02-grad-ead/2019/11/01/ciclo-2-algoritmos-para-problemas-de-regressao/ 7/25
16/12/2020 Ciclo 2 – Algoritmos para Problemas de Regressão – Fundamentos de Machine Learning
Ao rodar o código do “Código 1”, podemos ver na Figura 12, o gráfico indicando a aproximação,
realizada na porção do conjunto, usada para testar o desempenho dos coeficientes, onde os pontos
representam os pares , e a linha representa a aproximação realizada.
Destacamos que no caso do objeto SGDRegressor usado no exemplo do “Código 1”, além da
versão estocástica do Gradiente Descendente, é também usado um regularizador L2 por padrão,
evitando, assim, que o modelo apresente um efeito colateral chamado overfitting, o qual ocorre
quando um modelo de aprendizado supervisionado ajusta os parâmetros demasiadamente em
função do conjunto de treinamento, apresentando baixo desempenho ao ser avaliado, por meio do
conjunto de teste.
Veja, para mais detalhes, a documentação do Scikit-Learn voltada para o Stochastic Gradient
Descendent.
https://mdm.claretiano.edu.br/funmaclea-g04120-2020-02-grad-ead/2019/11/01/ciclo-2-algoritmos-para-problemas-de-regressao/ 8/25
16/12/2020 Ciclo 2 – Algoritmos para Problemas de Regressão – Fundamentos de Machine Learning
REGRESSÃO POLINOMIAL
A regressão linear tem como inductive bias uma relação linear
entre as variáveis independentes , e a variável dependente entretanto, quando os dados
são mais complexos e o erro apresentado por uma aproximação linear não é satisfatória, devemos,
então, lançar mão de outras técnicas e estratégias.
Uma dessa técnicas é a regressão polinomial (GÉRON, 2019; apud HASTIE; TIBSHIRANI;
FRIEDMAN, 2009), a qual adiciona valores de potência a cada um dos atributos de e os
considera como novos atributos, treinando, por fim, um modelo de regressão linear conforme visto
no tópico anterior.
Podemos perceber que a geração dos atributos polinomiais age como um pré-processamento dos
dados, ou seja, uma alteração nos dados de maneira que eles possam ser usados por uma
regressão linear. No “Código 2” temos o código que, a partir do conjunto dados de imóveis na
cidade de Boston, relacionando a feature com o target aproxima-os linearmente, mas,
antes, gera atributos polinomiais de 2 ordem, ou seja, através de uma equação quadrática
.
https://mdm.claretiano.edu.br/funmaclea-g04120-2020-02-grad-ead/2019/11/01/ciclo-2-algoritmos-para-problemas-de-regressao/ 9/25
16/12/2020 Ciclo 2 – Algoritmos para Problemas de Regressão – Fundamentos de Machine Learning
https://mdm.claretiano.edu.br/funmaclea-g04120-2020-02-grad-ead/2019/11/01/ciclo-2-algoritmos-para-problemas-de-regressao/ 10/25
16/12/2020 Ciclo 2 – Algoritmos para Problemas de Regressão – Fundamentos de Machine Learning
Na linha 20, do “Código 2”, podemos ver a criação do objeto do Scikit-learn responsável por gerar
os atributos polinomiais de grau 2, e na linha 21 a transformação de para uma forma polinomial
através do método fit_transform. A partir daí, temos a criação do modelo linear (linha 24), bem como
o treinamento (linha 27) usando a transformação polinomial de .
A Figura 14 mostra o gráfico resultante do código do “Código 2”, podemos ver que a curva de
predição apresenta uma forma quadrática, apesar de ter sido aproximada por um modelo linear,
indicando, assim, a influência da transformação polinomial de grau 2 aplicada aos dados.
https://mdm.claretiano.edu.br/funmaclea-g04120-2020-02-grad-ead/2019/11/01/ciclo-2-algoritmos-para-problemas-de-regressao/ 11/25
16/12/2020 Ciclo 2 – Algoritmos para Problemas de Regressão – Fundamentos de Machine Learning
Clique Aqui
O Gradiente Descendente pode ser aplicado a partir de uma função de erro para ajustar
os coeficientes lineares da função aproximada tanto na Regressão Linear quanto na
Regressão Polinomial.
Apenas a regressão polinomial pode ser aplicada em problemas de ordem complexa, não
cabendo em nenhuma hipótese o uso da regressão linear simples.
Neste tópico faremos uma abordagem das (SVR), a partir da perspectiva dos modelos de regressão
linear vistos até agora, e, portanto, deixaremos sua proposta primária no ciclo dedicado a problemas
de classificação.
Até o momento, vimos que os modelos de regressão linear e suas variantes aproximam suas
funções através da minimização do Erro Quadrático Médio, ou seja, o objetivo é minimizar a função:
https://mdm.claretiano.edu.br/funmaclea-g04120-2020-02-grad-ead/2019/11/01/ciclo-2-algoritmos-para-problemas-de-regressao/ 12/25
16/12/2020 Ciclo 2 – Algoritmos para Problemas de Regressão – Fundamentos de Machine Learning
E se, ao invés de nos preocuparmos apenas com o tamanho do erro, nos preocupássemos se o
erro está dentro de uma margem de tolerância? Intuitivamente podemos concluir que ao invés de
atingir um erro mínimo específico, é mais vantajoso e simples aceitar o erro dentro de um limite de
tolerância. Sendo assim, o (SVR) nos dá a possibilidade de trabalharmos sob a perspectivas de
margens de erro de maneira intrínseca ao modelo.
Percebemos que a função de erro deverá ser considerada de maneira diferente, uma vez que,
estamos considerando tratar o erro de forma diferente, portanto, a (SVR) usa a l2-norm de maneira
a minimizar os coeficientes lineares . Entretanto, há uma restrição imposta à função a ser
minimizada, de maneira que,
A Figura 14, a seguir, apresenta uma representação gráfica meramente ilustrativa da aproximação
feita pela (SVR), na qual além da aproximação exata (linha vermelha), há, também, as
aproximações (linhas tracejadas) a partir da margem de tolerância de erro que pode ser modulada.
Visando alcançar maior robustez, o (SVR) adiciona um componente de desvio , que leva em
consideração os pontos que estão fora da região estabelecida pela aproximação com suas
margens, portanto, a função a ser minimizada fica redefinida,
https://mdm.claretiano.edu.br/funmaclea-g04120-2020-02-grad-ead/2019/11/01/ciclo-2-algoritmos-para-problemas-de-regressao/ 13/25
16/12/2020 Ciclo 2 – Algoritmos para Problemas de Regressão – Fundamentos de Machine Learning
Observamos que agora temos um novo hiperparâmetro, denominado C, o qual ao assumir valores
mais altos suaviza a margem (soft margin limits), e assumindo valores mais baixos enrijece a
margem (hard margin limit), teoricamente, tornando a aproximação linear mais difícil (HASTIE,
TIBSHIRANI; FRIEDMAN, 2009).
O “Código 3” utiliza uma (SVR) linear, disponível no Scikit-learn, para estimar o valor de mercado de
imóveis em Boston a partir de suas características.
Vale ressaltar que em problemas que usam Support Vector Machines para regressão, e também
classificação, existe a necessidade de se alterar a escala dos atributos presentes no conjunto de
dados, uma vez que tal técnica é sensível à escala (veja linha 13), no caso os atributos após a
equalização da escala apresentam média 0 e desvio-padrão unitário.
https://mdm.claretiano.edu.br/funmaclea-g04120-2020-02-grad-ead/2019/11/01/ciclo-2-algoritmos-para-problemas-de-regressao/ 14/25
16/12/2020 Ciclo 2 – Algoritmos para Problemas de Regressão – Fundamentos de Machine Learning
Podemos verificar na linha 14 que o SVR usa um kernel linear, entretanto, a capacidade das
Support Vector Machines usarem diferentes tipos de kernel, por exemplo, polinomial, gaussiano ou
sigmoide, elimina a necessidade de mapeamento dos dados para domínios lineares, tal qual
realizado na Regressão Polinomial.
Sendo assim, podemos partir de um exemplo apresentado por Gerón (2019, p. 183) para verificar a
estrutura em árvore, criada pela aplicação de uma DTR, em um conjunto de dados bidimensional
de ordem quadrática, expresso na Figura 15.
https://mdm.claretiano.edu.br/funmaclea-g04120-2020-02-grad-ead/2019/11/01/ciclo-2-algoritmos-para-problemas-de-regressao/ 15/25
16/12/2020 Ciclo 2 – Algoritmos para Problemas de Regressão – Fundamentos de Machine Learning
Podemos usar o código do “Código 4”, a seguir, para submetermos o conjunto de dados em questão
à uma DTR e, assim, obter uma visualização da árvore treinada na linha 5. A Figura 17, a seguir,
mostra a árvore de maneira gráfica, na qual podemos verificar que os nós dela apresentam pontos
de corte nos possíveis valores dados por , causando uma divisão e gerando o caminho. Vamos
considerar que desejamos estimar o valor de para a entrada , sendo assim, iniciando
na raiz da árvore, verificarmos que seu ponto de corte é . Prosseguindo com nosso
raciocínio, vamos tomar o caminho da esquerda (True) na árvore, chegando à um novo ponto de
corte, a saber: ; dessa vez, tomaremos o caminho da direita (False) e
chegaremos ao nó-folha, o qual apresenta o valor estimado para , portanto, os nós-
folha representam a predição de .
1. import os
2. from sklearn.tree import DecisionTreeRegressor
3. from sklearn.tree import export_graphviz
4. tree_reg = DecisionTreeRegressor(max_depth=2)
5. tree_reg.fit(X, y)
https://mdm.claretiano.edu.br/funmaclea-g04120-2020-02-grad-ead/2019/11/01/ciclo-2-algoritmos-para-problemas-de-regressao/ 16/25
16/12/2020 Ciclo 2 – Algoritmos para Problemas de Regressão – Fundamentos de Machine Learning
Prosseguindo com o raciocínio anterior, a árvore estabelece regiões de corte visando aproximar a
função em questão. Logo, usando a árvore para predizer todos os valores de que temos em
mãos, podemos ver a aproximação realizada na Figura 17, a qual é grosseira, uma vez que,
apenas para título de exemplo, geramos uma árvore, limitando sua profundidade a 2 níveis (veja a
linha 4, no “Código 4”) por questões de visualização, logo maiores valores de profundidade levam a
curvas mais ajustadas com o conjunto de dados ao custo de termos o efeito de overfitting. A
profundidade é um dos hiper-parâmetros, que podem ser ajustados, visando regularizar a árvore de
decisão (GÉRON, 2019; HASTIE, TIBSHIRANI e FRIEDMAN, 2009; NORVIG e RUSSELL, 2014).
Com o intuito de avançar em seus estudos, é importante que leia sobre árvores de
decisão na documentação do Scikit-learn, para obter maiores informações sobre
como os parâmetros podem regularizar o aprendizado de árvore de decisão. Boa
leitura!
https://mdm.claretiano.edu.br/funmaclea-g04120-2020-02-grad-ead/2019/11/01/ciclo-2-algoritmos-para-problemas-de-regressao/ 17/25
16/12/2020 Ciclo 2 – Algoritmos para Problemas de Regressão – Fundamentos de Machine Learning
Essa pergunta pode ser respondida através do modelo CART (Classification and Regression of
Decision Tree, no qual a escolha do atributo , bem como o ponto de corte deste é feito
minimizando uma função de custo, mediante uma busca estocástica (BREIMAN, 2017). No caso de
problemas de regressão, a função de custo é uma medida de erro já conhecida, a saber: o Erro
Quadrático Médio.
Onde:
E,
Nas fórmulas que você acabou de ver, o determina a quantidade de amostras disponíveis por
cada corte avaliado. Já o algoritmo CART avalia os valores de , apresentados em , e também
cortes realizados nos atributos presentes no conjunto de dados , escolhendo os que apresentam
os menores valores de erro.
ALGORITMOS DE BOOSTING
Até o momento, vimos várias técnicas de regressão, cada uma com suas próprias
características, bem como conceitos e perspectivas do problema de regressão, para exemplificar
temos: a regressão linear, que é a mais simples das técnicas, pois tenta aproximar linearmente a
função desconhecida; além disso, temos também as Support Vector Regression, as quais buscam
construir uma região de aproximação adicionando fatores de margem e tolerância; por fim,
estudamos as Decision Tree Regression, que tentam, por meio da construção de pontos de corte,
se adaptar ao espaço, onde os pontos estão dispostos.
E se pudéssemos usar todas essas técnicas juntas para realizar a predição de ? Tal qual a Figura
18 mostra, poderíamos submeter nossos dados a diferentes técnicas e consolidar os resultados
https://mdm.claretiano.edu.br/funmaclea-g04120-2020-02-grad-ead/2019/11/01/ciclo-2-algoritmos-para-problemas-de-regressao/ 18/25
16/12/2020 Ciclo 2 – Algoritmos para Problemas de Regressão – Fundamentos de Machine Learning
preditivos de cada uma, em uma predição final, é justamente isso que as técnicas de Ensemble
Learning se propõem a fazer.
Dentre as abordagens de ensemble que temos na literatura, os algoritmos de boosting estão entre
os mais populares, e focam entre combinar vários modelos simplificados, na verdade, modelos
“fracos” para criar um único modelo “forte” e robusto. Por fraco podemos considerar modelos que
apresentam um desempenho logo abaixo do considerado satisfatório (NORVIG; RUSSELL, 2014).
ADABOOST
Nesta técnica de boosting os modelos fracos são adicionados de maneira subsequente com o
intuito de suprir as deficiências apresentadas pelos modelos já existentes no processo de
aprendizado, ou seja, um modelo é adicionado, visando aprender o que seu antecessor não
conseguiu.
https://mdm.claretiano.edu.br/funmaclea-g04120-2020-02-grad-ead/2019/11/01/ciclo-2-algoritmos-para-problemas-de-regressao/ 19/25
16/12/2020 Ciclo 2 – Algoritmos para Problemas de Regressão – Fundamentos de Machine Learning
Clique Aqui
GRADIENT BOOSTING
Este método, geralmente usado com Decision Tree Regressor, usa o Gradiente Descendente para
ajustar os modelos subsequentes a partir da sua função de erro, e envolve três componentes
básicos, a saber:
Função de custo: trata-se de uma função que se estime o erro no processo de treinamento, no
caso de um problema de regressão pode-se utilizar o erro quadrático médio. Uma das vantagens do
Gradient Boosting é que podemos utilizar qualquer função que seja diferenciável.
Modelo de aprendizado: árvores de decisão são usadas como modelos de aprendizado “fraco” no
Gradient Boosting, uma vez que são construídas satisfatoriamente, principalmente quando se
constroem árvores de pouca profundidade, o que configura a árvore de decisão, nesse caso, como
um modelo “fraco”.
Termo aditivo: as árvores de decisão são adicionadas uma por vez, e as existentes não são
modificadas, assim, o gradiente descendente é usado para minimizar o erro quando as árvores são
adicionadas. Ao invés de se alterar um vetor de coeficientes, o gradiente descendente após o
cálculo do erro, adiciona uma árvore ao modelo parametrizando-a na direção certa ao residual deste
erro, ou seja, considerando que haja modelos disponíveis sua construção subsequente é
dada por:
https://mdm.claretiano.edu.br/funmaclea-g04120-2020-02-grad-ead/2019/11/01/ciclo-2-algoritmos-para-problemas-de-regressao/ 20/25
16/12/2020 Ciclo 2 – Algoritmos para Problemas de Regressão – Fundamentos de Machine Learning
Onde é fator obtido para o cálculo residual dado à partir da minimização de uma função de erro
qualquer, usando o Gradiente Descendente. Dessa maneira, os modelos subsequentes são
treinados com foco específico no valor residual ,e não mais, nos valores de .
Clique Aqui
Não obstante, podemos na fase de testes utilizar as mesmas funções de erro como métricas para
verificar tanto quantitativamente, quanto qualitativamente como está o desempenho desses
modelos. Dentre as várias métricas disponíveis podemos destacar (GÉRON, 2019; HASTIE,
TIBSHIRANI e FRIEDMAN, 2009):
1) Erro Absoluto Médio (Mean Absolute Error – MAE): este erro simplesmente considera a média
das distâncias entre o que foi predito, ou seja, a saída da aproximação realizada e a saída
verdadeira , determinada pelo conjunto de dados. É cada uma dessas distâncias que compõem o
erro (veja Figura 21), e, portanto, temos a seguir fórmula: “MAE”, a qual vale lembrar que não é
diferenciável, ou seja, não é aplicada pelo Gradiente Descendente, mas pode ser usada como
indicação qualitativa de erro.
Nesse sentido, uma variação da “MAE”, é o Erro Percentual Absoluto Médio (Mean Absolute
Percentage Error – MAPE), e é dado por,
2) Erro Quadrático Médio (Mean Squared Error – MSE): esta métrica é diferenciável e comumente
usada em regras de aprendizado, tal qual o Gradiente Descendente, e pode também ser usada de
maneira qualitativa, a única diferença para a MAE é que a MSE eleva a distância ao quadrado,
vejamos:
https://mdm.claretiano.edu.br/funmaclea-g04120-2020-02-grad-ead/2019/11/01/ciclo-2-algoritmos-para-problemas-de-regressao/ 21/25
16/12/2020 Ciclo 2 – Algoritmos para Problemas de Regressão – Fundamentos de Machine Learning
A MSE também tem a sua variação denominada Raiz do Erro Quadrático Médio (Root Mean Square
Error – RMSE) representada por,
Por fim, visando verificar se uma regressão é satisfatória, ou seja, se a aproximação é boa o
suficiente, a métrica denominada (coeficiente de determinação) é muito utilizada tanto em
machine learning quanto em estatística e é dada aproximadamente por:
Onde,
A apresenta uma forma percentual, sendo que quanto maior o valor mais bem avaliada é a
aproximação.
https://mdm.claretiano.edu.br/funmaclea-g04120-2020-02-grad-ead/2019/11/01/ciclo-2-algoritmos-para-problemas-de-regressao/ 22/25
16/12/2020 Ciclo 2 – Algoritmos para Problemas de Regressão – Fundamentos de Machine Learning
Ordenar elementos
Regressão
CONSIDERAÇÕES
Nesse segundo ciclo, vimos as principais técnicas de regressão presentes no
aprendizado de máquina, começando pela regressão linear, apesar de ser simples, pode, em adição
a outros recursos, tais como: transformação polinomial, ser útil para o uso em domínios de maior
complexidade. Já as Support Vector Regression trazem a robustez e a regularização necessárias
para gerar uma aproximação capaz de predizer a variável target com desempenho satisfatório. Ao
abordar as Decision Tree Support vimos que é possível construir um modelo hierarquizado, o qual
constrói uma aproximação não linear no espaço do conjunto de dados, e finalmente, estudamos a
combinação desses modelos em abordagens de Boosting.
https://mdm.claretiano.edu.br/funmaclea-g04120-2020-02-grad-ead/2019/11/01/ciclo-2-algoritmos-para-problemas-de-regressao/ 23/25
16/12/2020 Ciclo 2 – Algoritmos para Problemas de Regressão – Fundamentos de Machine Learning
ATIVIDADE NO PORTFÓLIO
OBJETIVO
Construir um modelo de regressão, usando uma Decision Tree
Regressor a partir de determinado conjunto de dados.
DESCRIÇÃO DA ATIVIDADE
A partir do conjunto de dados sobre pacientes com Diabetes
(sklearn.datasets.load_diabetes), identifique o atributos de entrada e o atributo
target , a seguir, construa um modelo de Decision Tree Regression, usando o Scikit-
learn que seja capaz de estimar valores de progressão de diabetes dos pacientes
selecionados para teste, apresentando o desempenho obtido pelo modelo em questão.
Depois de concluir, poste código-fonte no Portfólio.
PONTUAÇÃO
A atividade vale de 0 a 1,0 ponto.
CRITÉRIOS DE AVALIAÇÃO
Na avaliação desta tarefa serão utilizados os seguintes critérios:
Acesse o Portfólio
QUESTÕES ON-LINE
Responder às questões on-line dos Ciclos 1 e 2 na
Sala de Aula Virtual.
PONTUAÇÃO
De 0 a 1,0 ponto.
https://mdm.claretiano.edu.br/funmaclea-g04120-2020-02-grad-ead/2019/11/01/ciclo-2-algoritmos-para-problemas-de-regressao/ 24/25
16/12/2020 Ciclo 2 – Algoritmos para Problemas de Regressão – Fundamentos de Machine Learning
https://mdm.claretiano.edu.br/funmaclea-g04120-2020-02-grad-ead/2019/11/01/ciclo-2-algoritmos-para-problemas-de-regressao/ 25/25