A fronteira de decisão de um classificador é uma linha, superfície, volume ou hipervolume (dependendo da dimensão dos dados) que separa diferentes classes em um espaço de características (ou espaço de entrada). Ela representa a divisão onde o classificador muda sua previsão de uma classe para outra. Em outras palavras, é uma região limite do espaço de entrada de um modelo que , uma vez transposta, resulta em uma mudança de classificação na saída do modelo. As regiões separadas por uma fronteira de decisão são denominadas regiões de decisão. Uma região de decisão é o conjunto de pontos no espaço de características que o classificador atribui à mesma classe. Ela é definida pela fronteira de decisão, que atua como o limite entre as diferentes regiões de decisão. Dentro de uma região de decisão o resultado de classificação de um determinado modelo é sempre o mesmo. As fronteiras de decisão possuem sempre uma dimensão topológica menor que a dimensão de entrada. Tipicamente se o espaço de entrada tiver dimensão $d$, as fronteiras de decisão possuem dimensão $d-1$. As regiões de decisão, normalmente, possuem a mesma dimensão topológica da entrada, ou seja $d$.
Por exemplo, imaginem que temos um sistema muito simples de classificação de pessoas em relação as suas respectivas alturas em metros definido pela seguinte função:
\[
f(h)=
\left\{
\begin{matrix}\text{“tall”}, \quad if \quad h > 1.8 \\
\text{“short”}, \quad if \quad h < 1.8
\end{matrix}
\right.
\]
Neste exemplo, o espaço de entrada tem dimensão d=1. Ou seja, a variável de entrada é um número escalar $h$ tal que $h \in \mathbb{R}^1$. Se alguém tiver mais de 1.8 é classificado como “tall” ou alto. Se tiver menos de 1.8, é classificado como “short” ou baixo. Neste sistema ilustrativo, a fronteira de decisão é o ponto $1.8$, com dimensão $d-1$, ou seja 0. As regiões de decisão são os segmentos de reta $[- \infty , 1.8[$ e $]1.8 , \infty]$, ambos com dimensão $d=1$, ou seja, a mesma do espaço de entrada. Qualquer ponto selecionado aleatoriamente dentro da região $[- \infty , 1.8[$ resultará um uma classificação do tipo “short” pelo classificador $f(\cdot)$. E qualquer ponto escolhido aleatoriamente dentro da região $]1.8 , \infty]$ é classificado como “tall” pelo mesmo classificador.
Esse foi um exemplo para um caso unidimensional $\mathbb{R}^1$ , a ideia pode ser estendida para $\mathbb{R}^n$. Por exemplo, no caso do espaço de entrada ser bidimensional, a fronteira de decisão normalmente é uma linha e as regiões de decisão são áreas. Em problemas com mais de duas dimensões, essa fronteira pode ser um hiperplano ou uma superfície mais complexa.
Alguns pontos importantes sobre fronteiras de decisão:
- Classificadores lineares (como a regressão logística, perceptron ou máquinas de vetores de suporte (SVM) com kernel linear) produzem fronteiras de decisão que são linhas retas ou hiperplanos em dimensões mais altas.
- Classificadores não lineares, como árvores de decisão, redes neurais (MLPs), SVMs com kernel não linear, KNN, etc podem gerar fronteiras de decisão mais complexas e curvilíneas.
A capacidade de um classificador de definir fronteiras de decisão adequadas está diretamente relacionada ao seu desempenho em separar corretamente os dados e fazer previsões precisas.
Em termos simples:
- Uma fronteira de decisão separa diferentes regiões de decisão.
- Uma região de decisão contém todos os pontos do espaço que são classificados da mesma forma (para uma determinada classe).
Características das Regiões de Decisão:
- Dependem do classificador: Diferentes classificadores têm diferentes formas de dividir o espaço. Um classificador linear, como uma regressão logística, terá regiões de decisão separadas por linhas retas ou planos, enquanto classificadores não lineares, como redes neurais ou KNN, podem ter regiões de decisão muito mais complexas.
- Tamanho e forma: As regiões de decisão podem variar em tamanho e forma, dependendo da natureza dos dados e do classificador. Classificadores simples tendem a ter regiões maiores e mais regulares, enquanto classificadores mais flexíveis podem criar regiões menores e mais detalhadas para acomodar melhor a complexidade dos dados.
- Overfitting e regiões complexas: Se um classificador é muito flexível, ele pode criar regiões de decisão extremamente complexas e fragmentadas para acomodar até mesmo pequenas variações estatísticas nos dados de treinamento, o que pode levar a uma sobreajuste ou overfitting.
Exemplo visual:
Abaixo segue alguns exemplos de dados de treinamento e suas respectivas regiões de decisão(áreas coloridas) para dois tipos diferentes de classificadores: classificador de distância mínima e classificador KNN. Na Figura 1, temos um conjunto de instâncias(bolinhas) rotuladas em 4 classes diferentes(cores). Este mesmo conjunto de dados será utilizado nos dois classificadores testados.
Figura 1: Dados de treinamento para um classificador. Um total de 4 classes, vermelho, verde, azul e ciano.
Na Figura 2, temos as regiões de decisão produzidas a partir de um classificador de distância mínima utilizando as instâncias da Figura 1.
Figura 2: Regiões de decisão para um classificador de distância mínima. As instâncias utilizadas para gerar essas fronteiras são as mesmas da Figura 1. As instâncias estão marcadas com “bolinhas”, sendo um total de 4 classes (verde, azul, vermelho e ciano).
Na Figura 3, temos as regiões de decisão produzidas a partir de um classificador KNN, com K=3, utilizando as instâncias da Figura 1.
Figura 3: Fronteira de decisão de um KNN com $K=3$ para as mesmas instâncias utilizadas anteriormente para o classificador de distância mínima.
Nestes exemplos, podemos perceber que mesmo considerando o mesmo conjunto de dados as regiões de decisão produzidas por classificadores diferentes podem ser radicalmente diferentes.
As fronteiras e regiões de decisão ajudam a testar e compreender melhor o que um classificador está fazendo ou “pensando”. A aplicação, teoricamente, pode ser em qualquer espaço de dimensão de entrada. Entretanto, a principal utilidade é para testar sistemas com espaços de entrada bidimensionais de uma forma “visual”. Contudo, isso não é uma limitação tão grande quanto parece. Isso porque muito sistemas de aprendizagem de máquina são projetados e programados para trabalhar em dimensões arbitrárias. Assim, na maioria das vezes que estamos desenvolvendo um sistema podemos testá-lo em duas dimensões e, uma vez funcionando como esperado(o algoritmo), utilizar em aplicações de dimensionalidade mais alta. Esse procedimento minimiza muito os erros de implementação, que são extremamente difíceis de serem percebidos em espaços de entrada de dimensão maior que 2.
Alguns outros posts que estão relacionados com este são:
Como sempre: questões, comentários, sugestões e críticas são bem vindos.
That’s all folks!

Deixe um comentário