hilum

Teoria · Cor e classe · Mascaramento

Quando a reta esconde uma classe.

Com duas classes, o classificador de mínimos quadrados acha a mesma direção que a análise discriminante. Com três ou mais, ele pode apagar uma classe inteira, mesmo bem separada das outras. Esta página demonstra por quê, mostra os remédios e o que se mediu em sementes reais.

Aprofundar · matemática e referências

A matriz indicadora

Suponha n sementes, cada uma descrita por p números, como comprimento, largura e a cor média (L*, a*, b*). Empilhe as descrições numa matriz X de n linhas, com uma primeira coluna de uns para o intercepto. A classe de cada semente vai para a matriz indicadora Y, de n linhas e K colunas: na linha da semente i, a coluna da sua classe vale 1 e as outras valem 0.

Definição

A regressão da matriz indicadora ajusta, por mínimos quadrados, uma função afim por classe, \(\hat f(x)^{\top} = (1, x^{\top})\,\hat B\), com X de posto completo e

\[ \hat B = \arg\min_{B}\ \lVert Y - XB \rVert_F^2 = (X^{\top}X)^{-1}X^{\top}Y, \](1)

e classifica uma semente nova pela regra do maior valor ajustado:

\[ \hat G(x) = \arg\max_{k = 1, \dots, K}\ \hat f_k(x). \](2)

O problema se separa em K regressões comuns, uma por coluna de Y. Cada classe ganha uma função que tenta valer 1 nas suas sementes e 0 nas outras, e a semente nova vai para a classe cuja função dá mais [1]. É o classificador linear mais barato que existe: uma decomposição de X e K produtos.

Lema 1

Se X tem a coluna de uns, \(\sum_{k=1}^{K} \hat f_k(x) = 1\) para todo x.

Demonstração. Cada linha de Y soma 1, então \(Y\mathbf 1_K = \mathbf 1_n\). A coluna de uns é a primeira coluna de X, \(\mathbf 1_n = Xe_1\), e regredir um vetor que já está no espaço das colunas de X devolve ele mesmo: \((X^{\top}X)^{-1}X^{\top}\mathbf 1_n = e_1\). Logo \(\hat B\mathbf 1_K = e_1\) e \((1, x^{\top})\hat B\mathbf 1_K = 1\). ∎

A soma dá 1, mas cada \(\hat f_k\) pode sair negativa ou passar de 1. Não são probabilidades, e a regra (2) não sabe disso [2]. O lema reaparece na demonstração abaixo.

O mascaramento

Ponha três classes numa reta: sementes claras, médias e vermelhas, por exemplo, descritas por um único número x. A figura 1 faz isso com 60 sementes simuladas por classe, sorteadas em torno de −4, 0 e 4. As classes quase não se sobrepõem, e qualquer pessoa traçaria duas fronteiras, uma em −2 e outra em 2.

Reta: base (1, x) · erro 33,3% 011/3 −4 0 4 x prevista Parábola: base (1, x, x²) · erro 2,2% 011/3 −4 0 4 x prevista
SimulaçãoFigura 1. Três classes em uma dimensão, 60 sementes cada, com desvio 1 em torno de −4, 0 e 4. As curvas são os valores ajustados às três indicadoras; a faixa embaixo é a classe prevista, e as três fileiras de traços são as sementes de cada classe. À esquerda, com a base (1, x), a reta da classe do meio fica em 1/3 e nunca é a maior: 33,3% de erro, a classe do meio inteira. À direita, com x² na base, ela vira uma parábola que vence no centro: 2,2% de erro. A análise discriminante linear erra 2,8% nas mesmas sementes.

O fenômeno tem nome, mascaramento, e está descrito com estas mesmas três classes em [1, §4.2]. Nas sementes da figura, as três retas ajustadas valem exatamente 1/3 no mesmo ponto, a média de todas as sementes, e a da classe do meio é quase horizontal (inclinação −0,0003, contra −0,114 e +0,114 das outras). Não é coincidência da simulação.

A demonstração

Proposição

Se as K classes têm o mesmo número de sementes e os seus centros \(\mu_1, \dots, \mu_K\) estão sobre uma mesma reta, a regra (2) com base linear só prevê as duas classes das pontas. As K − 2 classes do meio nunca vencem; no máximo empatam, num conjunto de volume zero.

Demonstração. Escreva o ajuste com a base centrada: \(\hat f_k(x) = \bar y_k + \beta_k^{\top}(x - \bar x)\), em que \(\bar x\) é a média de todas as sementes e \(\bar y_k = n_k/n\) é a fração da classe k. As equações normais dão

\[ \beta_k = S^{-1}\sum_{i=1}^{n}(x_i - \bar x)\,y_{ik} = n_k\,S^{-1}(\mu_k - \bar x), \qquad S = \sum_{i=1}^{n}(x_i - \bar x)(x_i - \bar x)^{\top}, \](3)

porque \(y_{ik}\) só é 1 nas sementes da classe k. Com classes do mesmo tamanho, \(\bar y_k = 1/K\) para todo k, e todas as funções valem 1/K no ponto \(\bar x\). Se os centros estão numa reta, \(\mu_k - \bar x = t_k\,u\) para um vetor fixo u e números \(t_1 \lt t_2 \lt \dots \lt t_K\). Então

\[ \hat f_k(x) = \frac{1}{K} + \frac{n}{K}\,t_k\,s(x), \qquad s(x) = u^{\top}S^{-1}(x - \bar x). \](4)

O lema 1 confere a conta: com classes do mesmo tamanho, a média dos centros é \(\bar x\), logo \(\sum_k t_k = 0\) e as funções (4) somam 1. O número s(x) é o mesmo para todas as classes. Onde \(s(x) \gt 0\), a maior função é a de maior \(t_k\); onde \(s(x) \lt 0\), a de menor \(t_k\); onde \(s(x) = 0\), todas empatam. As classes 2 a K − 1 nunca são a maior. ∎

Repare no que não aparece na conta: a dispersão dentro das classes e a distância entre elas. Classes perfeitamente separadas são mascaradas do mesmo jeito. O que decide é a geometria dos centros e o tamanho das classes. Com tamanhos diferentes, as funções deixam de passar pelo mesmo ponto, e a classe do meio pode vencer numa faixa se for bem maior que as vizinhas. Com o centro do meio fora da reta, o vetor u deixa de ser comum e o argumento cai. O instrumento da próxima seção deixa mexer nas duas coisas.

Os remédios

Mais termos na base

Com a base (1, x, x²), cada \(\hat f_k\) pode ser uma parábola, e a da classe do meio pode subir no centro, como na figura 1. A regra geral é dura: K classes enfileiradas podem pedir termos até o grau K − 1, e em p dimensões isso chega à ordem de \(p^{K-1}\) termos [1, §4.2]. Para três classes, a base quadrática basta.

Análise discriminante linear

A LDA supõe que, dentro de cada classe, os descritores seguem uma normal com centro \(\mu_k\) e a mesma covariância Σ para todas. A regra de Bayes vira o maior de K escores afins,

\[ \delta_k(x) = x^{\top}\Sigma^{-1}\mu_k - \tfrac{1}{2}\,\mu_k^{\top}\Sigma^{-1}\mu_k + \log \pi_k, \](5)

com \(\pi_k\) a fração da classe. A forma é a mesma do mínimo quadrado, mas nada obriga os escores a passar pelo mesmo ponto. Em uma dimensão, com variâncias e frações iguais, as fronteiras caem nos pontos médios entre centros vizinhos, e cada classe fica com o seu intervalo [1, §4.3]. Fisher chegou à direção discriminante por outro caminho, sem supor normalidade: a projeção w que maximiza a razão entre a variância entre as classes e a variância dentro delas, \(w^{\top}S_B\,w \,/\, w^{\top}S_W\,w\) [3].

Regressão logística

A logística multinomial modela as probabilidades diretamente,

\[ P(G = k \mid x) = \frac{\exp(\beta_{k0} + \beta_k^{\top}x)}{\sum_{l=1}^{K}\exp(\beta_{l0} + \beta_l^{\top}x)}, \](6)

e acha os coeficientes por máxima verossimilhança [1, §4.4]. As regiões de decisão também são dadas pelo maior de K funções afins. A diferença está no ajuste: o mínimo quadrado pune também as sementes longe da fronteira e do lado certo, as previsões "certas demais", e isso empurra as fronteiras para o lugar errado [2]. A verossimilhança quase não liga para elas.

Instrumento · três classes no plano

3,5 0,0 ×1,0

Valores ajustados ao longo da reta y = 0

–acerto nas sementes sorteadas
–acerto na classe do meio
–classes que nunca vencem

classe 1, círculos classe do meio, triângulos classe 3, quadrados. Cada nuvem tem 60 sementes simuladas com desvio 1 (a do meio, 60 vezes o tamanho escolhido), e o centro de cada nuvem fica exatamente onde os controles mandam. A linha tracejada é a reta y = 0, que passa pelos centros das pontas. Com a classe do meio na reta e do mesmo tamanho, a reta de mínimos quadrados nunca a escolhe, por maior que seja a separação. Tire-a da reta, aumente o seu tamanho ou troque de método e veja ela voltar. Simulação

Duas classes

Com K = 2, o mascaramento não tem onde acontecer: não existe classe do meio. E há um resultado mais forte. Com duas classes, o vetor de coeficientes dos mínimos quadrados é proporcional a \(\hat\Sigma^{-1}(\hat\mu_2 - \hat\mu_1)\), a direção da LDA; muda só o ponto de corte [1, exercício 4.2].

A figura 2 confere isso com as 1.614 sementes reais de orquídea da página Cor e classe, descritas pela cor média (L*, a*, b*) dentro do polígono do rótulo. O cosseno entre a direção dos mínimos quadrados e a da LDA deu 1,0000000000. Os coeficientes, na ordem (L*, a*, b*), são −0,025, 0,108 e 0,013: quase todo o peso fica em a*, o vermelho.

0,0 0,5 1,0 1,5 regra: maior valor ajustado (corte em 0,5) valor ajustado para a classe viável, f̂ (L*, a*, b*)
Dados reaisFigura 2. Valor ajustado para a classe viável, por mínimos quadrados sobre (L*, a*, b*), nas 1.614 sementes de orquídea no tetrazólio. Barras cheias em ciano: rótulo viável. Barras tracejadas em magenta: rótulo inviável. A linha marca a regra do maior valor, que com duas classes é cortar em 0,5.

A regra do maior valor concorda com o rótulo em 92,8% das sementes. Deixando um recorte de fora por vez e ajustando nos outros 37, mínimos quadrados e LDA concordam em 1.493 das 1.614 (92,5%) e a logística em 1.501 (93,0%). Com duas classes os três métodos empatam, e o teto é o descritor. Usando só a*, os mínimos quadrados chegam a 1.504 (93,2%): L* e b* médios não acrescentam nada aqui.

SVD e condicionamento

Para resolver (1), não se monta \(X^{\top}X\). Com a decomposição em valores singulares \(X = U\Sigma V^{\top}\),

\[ \hat B = V\,\Sigma^{+}\,U^{\top}Y, \qquad \hat Y = X\hat B = UU^{\top}Y, \](7)

e os valores ajustados são a projeção ortogonal de Y no espaço das colunas de X. O motivo é numérico. O número de condição da matriz das equações normais é o quadrado do de X,

\[ \kappa(X^{\top}X) = \kappa(X)^2, \qquad \kappa(X) = \sigma_{\max}/\sigma_{\min}, \](8)

e a conta perde perto de \(\log_{10}\kappa\) dígitos de precisão [4]. No conjunto público de arroz com 106 descritores por grão [5], κ(X) é 101.526 e κ(XᵀX) passa de 10¹⁰: montar as equações normais joga fora perto de 10 dos 16 dígitos da precisão dupla. No feijão seco, com 16 descritores [6], são 2.230 contra 4,97 milhões. Na orquídea com (L*, a*, b*) crus, 878 contra 7,7 × 10⁵; com as colunas centradas e padronizadas, κ(X) cai para 3,4.

A expansão quadrática cobra aqui. Quando x não muda de sinal, x e x² andam quase juntos e o condicionamento piora; centrar antes de elevar ao quadrado ajuda. O instrumento acima resolve cada ajuste por QR, que tem a mesma vantagem da SVD de não passar por \(X^{\top}X\). O que a SVD diz sobre as direções dos próprios dados está em PCA, SVD e a semente média.

Em 88 espécies

O mascaramento é um resultado de livro com classes simuladas. Com sementes de verdade, ele aparece? Em seis conjuntos com 2 a 7 classes, entre eles o arroz [5], o feijão [6] e a soja com defeitos [9], os mínimos quadrados ficaram a no máximo 3 pontos da LDA e da logística, sem classe apagada. Ele apareceu num conjunto público de 88 espécies de sementes forrageiras, com 4.496 imagens [7], descritas por 12 descritores medidos nas imagens. O mesmo conjunto foi cortado em 2, 5, 10, 20, 40 e 88 espécies, com os mesmos descritores.

Acerto 2 5 10 20 40 88 número de classes K (escala log) Classes que nunca vencem 2 5 10 20 40 88 número de classes K (escala log) 0,00 0,25 0,50 0,75 1,00 mínimos quadrados logística 25% 50% 0% 0% 0% 10% 28% 51%
Dados reaisFigura 3. Acerto e classes que nunca vencem, conforme o número de espécies K. Medidas do projeto sobre o conjunto público de 88 espécies [7]; nenhuma imagem do conjunto é reproduzida aqui.
Espécies KMínimos quadradosLogísticaRazãoNunca previstas
20,9170,9430,9730%
50,7580,8260,9180%
100,5610,6710,8360%
200,4160,6060,68710%
400,2980,4740,62928%
880,1590,3410,46651%

Tabela 1. Acerto por número de espécies e a razão entre os dois métodos. A última coluna é a fração de espécies que os mínimos quadrados nunca dão como resposta.

Se faltasse informação nos descritores, os dois métodos cairiam juntos. Não caem: a razão entre eles vai de 0,973 a 0,466, e em K = 88 metade das espécies nunca é a resposta dos mínimos quadrados. A perda é do método. A tabela 2 confirma pelo remédio: mudar só a base, sem mudar um descritor, fecha quase toda a distância para a logística.

Em K = 88ColunasAcertoEspécies que nunca vencem
Mínimos quadrados, base linear130,14645 de 88
LDA120,268–
Mínimos quadrados, base quadrática910,3377 de 88
Logística120,340–

Tabela 2. Os remédios em K = 88. Esta tabela vem de outra rodada da mesma medida, em que a base linear deu 0,146 em vez do 0,159 da tabela 1. As 91 colunas são os 12 descritores, os seus quadrados e produtos dois a dois, mais o intercepto.

A cor desfaz o mascaramento

Num conjunto com imagens de 65 espécies de forrageiras, com 775 sementes inteiras, a mesma conta foi feita com dois jogos de descritores. Só com 7 descritores de forma, o acerto foi 0,223 e 12 das 65 espécies (18%) nunca venceram. Com forma e cor, 27 descritores, o acerto foi 0,487 e só 2 espécies (3%) ficaram apagadas.

A proposição explica por que isso não é só "mais descritores ajudam". O mascaramento nasce de centros enfileirados nas poucas direções que os descritores oferecem. Descritores de forma andam muito juntos: área, perímetro e diâmetros medem quase o mesmo tamanho, e no feijão os 16 descritores têm posto efetivo 7, a 99% da energia. As espécies se enfileiram nessas poucas direções, e as do meio somem. A cor acrescenta direções que o contorno não tem, como a matiz e a dispersão da cor, e tira classes da reta. É o controle "tirar a classe do meio da reta" do instrumento, feito com dados.

Fica uma ressalva. A previsão de que a classe apagada é justamente a do meio não pôde ser testada aqui. Com forma e cor sobram só 2 espécies apagadas, pouco demais para comparar posições.

A forma também não decide as classes que a norma pede. No arroz [5], os 106 descritores dão 0,997 de acerto; só cor e textura, 0,994; só forma, 0,955. No trigo durum fotografado numa esteira [8], com 4.970 objetos em três classes, só a forma reconhece 93,8% dos vítreos, 82,3% dos amiláceos e 52,6% da matéria estranha, que é justamente a classe da pureza. Na soja com defeitos [9], cinco classes, a forma acerta 0,358 e forma com cor, 0,707. No trigo, juntar a cor reduz o viés da pureza estimada de 6,41 para 2,15 pontos percentuais acima da verdadeira, e o número de grãos em que o viés passa a pesar mais que o sorteio sobe de 31 para 274.

O teto do descritor

Um conjunto público de soja depois do tetrazólio [10] traz metades de sementes escaneadas a 1.200 dpi, classificadas por tipo de dano (mecânico, percevejo, umidade ou nenhum) e intensidade, e publica centenas de descritores globais de cor e textura por imagem, sem as imagens. O projeto mediu cinco coisas nele.

  1. Com até 10 sementes por classe, mínimos quadrados, LDA, logística e floresta aleatória empatam, a menos de 0,03. Os mínimos quadrados puros param de melhorar quando o número de sementes chega perto do de descritores; as versões encolhidas, como ridge e LDA regularizada, resolvem.
  2. A acurácia simples engana: 79% contra 77,3% de quem chuta sempre "sem dano". O acerto balanceado é 0,66.
  3. Trocar de lote derruba o acerto balanceado de 0,66 para perto de 0,50, o acaso. Validação por sorteio de sementes infla o número.
  4. Rotular algumas sementes do lote novo ajuda pouco: o lote antigo só acrescenta até umas 5 sementes rotuladas, e mesmo assim só 0,03.
  5. O teto, perto de 0,67, não sobe com mais sementes.

O último item é o que importa. O tetrazólio é lido pela posição e pela extensão do dano no embrião [11], e um descritor global, que soma o embrião inteiro, joga fora o onde. Nenhum classificador recupera o que o descritor não guardou. Na página Cor e classe, a figura 4 mostra o mesmo limite com dois embriões de cor média igual.

No SeedCounter

No SeedCounter

A classe de cada semente é proposta pela máquina e conferida por você, com as classes do seu protocolo. Cada semente sai no CSV com as medidas de forma e de cor média, uma linha por semente, e é com essa tabela que as contas desta página se refazem: mínimos quadrados, LDA ou logística, com os descritores que você escolher. Antes de juntar muitas classes num classificador linear, vale olhar se as do meio aparecem nas previsões.

Onde falha

A proposição pede classes do mesmo tamanho e centros exatamente numa reta; dados reais ficam perto disso, não em cima, e o mascaramento real é parcial. Os números de 88 e de 65 espécies são de descritores medidos pelo projeto em conjuntos públicos, com uma partição de treino e teste; outra partição muda as casas decimais. A expansão quadrática cresce rápido: com 26 descritores, a base quadrática passa de 370 colunas, e com poucas sementes por classe ela decora em vez de aprender. E nenhum dos métodos daqui substitui a conferência: a concordância é com rótulos, que também são leituras.

Dados

Figura 1 e instrumento: simulação, calculada no navegador. Figura 2: conjunto "Sementes de Orquídeas" v8, Roboflow Universe (universe.roboflow.com/sementes-de-orqudea/sementes-de-orquideas), licença CC BY 4.0. Figura 3 e tabelas: medidas do projeto sobre os conjuntos públicos citados pelas referências dos artigos; nenhuma imagem desses conjuntos é reproduzida.

Referências

  1. Hastie T., Tibshirani R., Friedman J. (2009). The Elements of Statistical Learning, 2ª ed., capítulo 4. Springer. doi:10.1007/978-0-387-84858-7
  2. Bishop C.M. (2006). Pattern Recognition and Machine Learning, §4.1.3, 184–186. Springer.
  3. Fisher R.A. (1936). The use of multiple measurements in taxonomic problems. Annals of Eugenics 7(2), 179–188. doi:10.1111/j.1469-1809.1936.tb02137.x
  4. Trefethen L.N., Bau D. (1997). Numerical Linear Algebra. SIAM. doi:10.1137/1.9780898719574
  5. Koklu M., Cinar I., Taspinar Y.S. (2021). Classification of rice varieties with deep learning methods. Computers and Electronics in Agriculture 187, 106285. doi:10.1016/j.compag.2021.106285
  6. Koklu M., Ozkan I.A. (2020). Multiclass classification of dry beans using computer vision and machine learning techniques. Computers and Electronics in Agriculture 174, 105507. doi:10.1016/j.compag.2020.105507
  7. Yuan M., Lv N., Dong Y., Hu X., Lu F., Zhan K., Shen J., Wu X., Zhu L., Xie Y. (2024). A dataset for fine-grained seed recognition. Scientific Data 11, 344. doi:10.1038/s41597-024-03176-5
  8. Kaya E., Saritas İ. (2019). Towards a real-time sorting system: identification of vitreous durum wheat kernels using ANN based on their morphological, colour, wavelet and gaborlet features. Computers and Electronics in Agriculture 166, 105016. doi:10.1016/j.compag.2019.105016
  9. Lin W., Fu Y., Xu P., Liu S., Ma D., Jiang Z., Zang S., Yao H., Su Q. (2023). Soybean image dataset for classification. Data in Brief 48, 109300. doi:10.1016/j.dib.2023.109300
  10. Pereira D.F., Bugatti P.H., Lopes F.M., Souza A.L.S.M., Saito P.T.M. (2019). Contributing to agriculture by using soybean seed data from the tetrazolium test. Data in Brief 23, 103652. doi:10.1016/j.dib.2018.12.090
  11. Moore R.P. (1985). Handbook on Tetrazolium Testing. International Seed Testing Association, Zurique.

Classes que você define, sementes que você confere.

Monte as classes do seu protocolo no SeedCounter e leve a tabela por semente para as contas desta página.

Abrir o SeedCounter