Conheço duas abordagens para fazer LDA, a abordagem bayesiana e a abordagem de Fisher .
Suponha que tenhamos os dados , onde é o preditor dimensional e é a variável dependente de classes.x p y K
Pela abordagem bayesiana , calculamos o posterior e como Como dito nos livros, suponha que seja gaussiano, agora temos a função discriminante para a ésima classe como , posso ver que é linear função de , portanto, para todas as classes , temos funções discriminantes lineares.p(x|yk)k f k ( x )
No entanto, pela abordagem de Fisher , tentamos projetar para espaço dimensional para extrair os novos recursos que minimizam a variação dentro da classe e maximizam a variação entre classes , digamos que a matriz de projeção seja com cada coluna sendo uma projeção direção. Essa abordagem é mais como uma técnica de redução de dimensão .( K - 1 )
Minhas perguntas são
(1) Podemos fazer redução de dimensão usando a abordagem bayesiana? Quero dizer, podemos usar a abordagem bayesiana para fazer a classificação encontrando as funções discriminantes que dão o maior valor para o novo , mas essas funções discriminantes ser usadas para projetar para subespaço dimensional inferior ? Assim como a abordagem de Fisher .x * f k ( x ) X
(2) Como e as duas abordagens se relacionam? Não vejo nenhuma relação entre eles, porque um parece ser capaz de fazer a classificação com o valor , e o outro visa principalmente a redução de dimensão.
ATUALIZAR
Graças a @amoeba, de acordo com o livro da ESL, encontrei o seguinte:
e esta é a função discriminante linear, derivada do teorema de Bayes e assumindo que todas as classes têm a mesma matriz de covariância . E essa função discriminante é a mesma que que escrevi acima.f k ( x )
Posso usar como a direção na qual projetar , a fim de reduzir a dimensão? Não tenho certeza disso, já que no AFAIK, a redução de dimensão é alcançada através da análise de variância entre os mesmos . x
ATUALIZAR NOVAMENTE
Na seção 4.3.3, é assim que essas projeções derivam:
e, é claro, assume uma covariância compartilhada entre classes, que é a matriz de covariância comum (para covariância dentro da classe) , certo? Meu problema é como computo esse partir dos dados? Como eu teria diferentes matrizes de covariância dentro da classe se tentar calcular partir dos dados. Então, eu tenho que agrupar a covariância de todas as classes para obter uma comum?K W
fonte
Respostas:
Fornecerei apenas uma resposta informal curta e encaminhá-lo-á à seção 4.3 de Os elementos do aprendizado estatístico para obter detalhes.
Atualização: "Os Elementos" abrangem detalhadamente exatamente as perguntas que você está fazendo aqui, incluindo o que você escreveu na atualização. A seção relevante é 4.3 e, em particular, 4.3.2-4.3.3.
Um insight importante é que as equações simplificam consideravelmente se alguém assumir que todas as classes têm covariância idêntica [ Update: se você assumiu isso o tempo todo, isso pode ter sido parte do mal-entendido] . Nesse caso, os limites de decisão se tornam lineares, e é por isso que esse procedimento é chamado de análise discriminante linear, LDA.
É preciso algumas manipulações algébricas para perceber que, nesse caso, as fórmulas se tornam exatamente equivalentes ao que Fisher elaborou usando sua abordagem. Pense nisso como um teorema matemático. Veja o livro de Hastie para todas as contas.
Se por "abordagem bayesiana" você quer dizer lidar com diferentes matrizes de covariância em cada classe, então não. Pelo menos, não será uma redução linear da dimensionalidade (ao contrário do LDA), por causa do que escrevi acima.
fonte