0Pricing
Learn AI with Python · Aula

SVMs para regressão (SVR)

Tubo epsilon do SVR, nu-SVR e comparação entre SVR e regressão linear em dados não lineares.

SVMs para regressão (SVR) é uma aula grátis de Learn AI with Python no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Learn AI with Python, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Learn AI with Python inclui 4 aulas no total.

SVMs também podem fazer regressão

A ideia de margem também se aplica à regressão. A Regressão por Vetores de Suporte (SVR) ajusta uma função mantendo as previsões dentro de uma faixa de tolerância e ignorando erros pequenos.

O tubo insensível ao épsilon

SVR traça um tubo insensível ao épsilon ao redor da função prevista. Os pontos dentro do tubo contribuem com perda zero; apenas os pontos externos são penalizados. Isso concentra o modelo nos erros relevantes.

Por que um tubo ajuda

Ao ignorar pequenas variações, SVR evita ajustar-se excessivamente ao ruído e produz um ajuste mais suave e robusto. Pequenas oscilações dentro da tolerância simplesmente não afetam o modelo.

Uso básico de SVR

SVR é semelhante a SVC e aceita as mesmas funções de núcleo. RBF é o padrão comum para regressão não linear.

from sklearn.svm import SVR

model = SVR(kernel="rbf", C=100, epsilon=0.1, gamma="scale")
model.fit(Xtr, ytr)
print(model.score(Xte, yte))

O parâmetro épsilon

epsilon define a largura do tubo. Um épsilon maior significa uma faixa mais larga, menos vetores de suporte e um modelo mais simples. Um épsilon menor ajusta-se mais precisamente aos dados.

from sklearn.svm import SVR

wide = SVR(epsilon=1.0)   # tolerant, simpler
tight = SVR(epsilon=0.01) # fits closely

O parâmetro C em SVR

Assim como na classificação, C controla a penalização dos pontos fora do tubo. Um C maior pune mais esses erros, produzindo um ajuste mais rígido; um C menor aplica mais regularização, resultando em uma curva mais suave.

from sklearn.svm import SVR

flexible = SVR(C=1000)  # fits training closely
smooth = SVR(C=0.1)     # more regularized

épsilon versus C: dois controles diferentes

Lembre-se da distinção: épsilon controla a largura do tubo (quanto erro ignorar), enquanto C controla a penalização dos erros que ficam fora do tubo. Ajuste ambos.

O escalonamento também é importante para SVR

Assim como todas as SVMs, SVR depende de distâncias e é sensível à escala. Sempre padronize as características e considere também escalonar o alvo para obter um treinamento estável.

from sklearn.pipeline import make_pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.svm import SVR

pipe = make_pipeline(StandardScaler(), SVR(kernel="rbf"))
pipe.fit(Xtr, ytr)

Ajuste de SVR

Faça uma busca em grade sobre C, gamma e epsilon para encontrar o melhor ajuste. Use uma métrica de regressão, como o erro quadrático médio negativo, para a pontuação.

from sklearn.model_selection import GridSearchCV
from sklearn.svm import SVR

param = {
    "C": [1, 10, 100],
    "gamma": [0.01, 0.1, 1],
    "epsilon": [0.01, 0.1, 0.5],
}
gs = GridSearchCV(SVR(), param, cv=5, scoring="neg_mean_squared_error")
gs.fit(Xtr, ytr)

A variante NuSVR

NuSVR substitui epsilon por nu (entre 0 e 1), que controla diretamente a fração de vetores de suporte e de erros de treinamento, oferecendo uma parametrização alternativa que algumas pessoas consideram mais fácil de compreender.

from sklearn.svm import NuSVR

model = NuSVR(nu=0.5, C=100, kernel="rbf")
model.fit(Xtr, ytr)

Quando usar SVR

SVR funciona bem em conjuntos de dados pequenos ou médios, com padrões não lineares e quando a robustez ao ruído é importante. Para dados muito grandes, prefira modelos lineares ou reforço por gradiente, que se adaptam melhor a essa escala.

Verificação rápida

Teste os seus conhecimentos sobre SVR.

Recapitulação

Recapitulação: SVR ajusta uma função dentro de um tubo insensível ao épsilon, no qual os pontos internos têm custo zero. epsilon define a largura do tubo (quanto maior, mais simples), enquanto C penaliza os pontos externos. Sempre escale as características, ajuste C/gamma/epsilon e considere NuSVR como uma parametrização alternativa.

Perguntas Frequentes

A aula “SVMs para regressão (SVR)” é grátis?

Sim — o texto completo de “SVMs para regressão (SVR)” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Learn AI with Python, atualize para CoddyKit PRO. O curso de Learn AI with Python inclui 4 aulas no total.

O que vou aprender em “SVMs para regressão (SVR)”?

Tubo epsilon do SVR, nu-SVR e comparação entre SVR e regressão linear em dados não lineares. Você pratica Learn AI with Python com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Learn AI with Python?

Nenhuma experiência prévia é necessária. Learn AI with Python no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.

Quanto tempo leva a aula “SVMs para regressão (SVR)”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Learn AI with Python?

Sim. Cada aula de Learn AI with Python inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Teoria de SVM: margens e vetores de suporte
  2. Truque do kernel: RBF, polinomial e sigmoide
  3. SVMs para classificação com sklearn
  4. SVMs para regressão (SVR)
← Voltar para Learn AI with Python